* chore: update weaviate-client version and add pydantic-ai dependency in pyproject.toml
- Updated weaviate-client from version 4.9.6 to 4.10.2.
- Added pydantic-ai dependency with a minimum version of 0.0.12.
* chore: update pydantic version in pyproject.toml from 2.7.0 to 2.10.0
* chore: update package versions and add new dependencies
- Added eval-type-backport version 0.2.0.
- Added griffe version 1.5.1 with colorama as a dependency.
- Updated grpcio-health-checking and grpcio-tools from version 1.62.3 to 1.68.1.
- Updated pydantic_core from version 2.18.4 to 2.27.1.
- Updated weaviate-client from version 4.9.6 to 4.10.2.
* chore: update pydantic version in dependency files
- Updated pydantic version from 2.10.0 to 2.10.1 in both uv.lock and pyproject.toml to ensure compatibility with the latest features and fixes.
chore: Update changes-filter.yaml to include new lock files and project structure
- Added 'uv.lock' and 'src/backend/base/uv.lock' to the changes filter.
- Included 'src/backend/base/pyproject.toml' for tracking changes in the base directory.
- Adjusted paths to ensure proper monitoring of relevant files in the backend.
ci: Update Python versions in GitHub Actions workflows to remove 3.13
- Modified the Python version matrix in both `nightly_build.yml` and `python_test.yml` to exclude Python 3.13, ensuring compatibility and streamlining the testing process.
- This change enhances the clarity of the supported Python versions in the CI configuration.
* fix: Clean up the list of params in AstraDB
* Clean up some more parameters
* Update Vector Store RAG.json
* [autofix.ci] apply automated fixes
* Update Vector Store RAG.json
* [autofix.ci] apply automated fixes
* Update Vector Store RAG.json
* Update astradb.py
* [autofix.ci] apply automated fixes
* Update Vector Store RAG.json
* [autofix.ci] apply automated fixes
* Update Vector Store RAG.json
* [autofix.ci] apply automated fixes
* Error if no file provided
* Fix base file value to be empty
* [autofix.ci] apply automated fixes
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* feat: add input for Python version in setup-uv action
* Introduced a new input parameter 'python-version' to allow users to specify the Python version for the setup-uv action, defaulting to 3.12.
* Updated the action to use the new input instead of relying on a version file.
* fix: update Python version setup in GitHub Actions workflow
* Changed the Python version setup in the GitHub Actions workflow to use a matrix input instead of a version file, enhancing flexibility and allowing for dynamic version specification.
* This change applies to both the main job and the test job in the workflow configuration.
* chore: update Python version in GitHub Actions workflow to 3.12
* Changed the Python version setup in the GitHub Actions workflow from using a version file to directly specifying Python 3.12, ensuring consistency and clarity in the environment configuration.
* chore: add environment variables for OpenAI and Astra DB in GitHub Actions workflow
* Introduced new environment variables for OPENAI_API_KEY, ASTRA_DB_API_ENDPOINT, and ASTRA_DB_APPLICATION_TOKEN in the store_pytest_durations.yml workflow file to enhance integration capabilities and secure access to necessary APIs.
chore: fix audit vulnerabilities
- Updated "shadcn-ui" from version 0.8.0 to 0.9.4.
- Upgraded "@swc/cli" from version 0.3.12 to 0.5.2.
- Various other dependency updates and removals in package-lock.json to ensure compatibility and improve performance.
These changes enhance the project's dependency management and ensure the latest features and fixes are included.
⚡️ Speed up function `find_last_node` by 29,891%
Certainly! We can optimize the existing code by minimizing the checks inside the loop and improving the lookup operations. Here's an optimized version of the program.
### Explanation.
1. **Set for Fast Lookup**: We first create a set of all source IDs from the edges. This is efficient because checking for membership in a set is on average O(1) time complexity.
2. **Iterate Through Nodes**: We loop through each node and check if its ID is not in the set of source IDs. If a node's ID is not found in the set, it means this node has no outgoing edges and is the "last node".
This approach ensures we only iterate over the edges once to create the set and then do a fast lookup for each node, improving the overall efficiency.
Co-authored-by: codeflash-ai[bot] <148906541+codeflash-ai[bot]@users.noreply.github.com>
* ci: Update TypeScript test workflow to improve output logging
- Enhanced logging in the TypeScript test workflow by modifying the output of the changes filter to use JSON formatting for better readability.
- Added logging for the release input to provide clearer context during the build process.
* ci: Enable Langflow deactivated tracing in TypeScript test workflow
- Added LANGFLOW_DEACTIVE_TRACING environment variable set to "true" in the TypeScript test workflow configuration to enhance debugging capabilities.
* Update store_message.py
update stored message to give out only the latest message
* Update store_message.py
* Update store_message.py
* Update store_message.py
update with error handling
This pull request includes several changes to the langflow project, focusing on deprecating the agent_description feature and enhancing the tools' metadata handling. The most important changes include marking the agent_description as deprecated, updating the tools' metadata management, and adding tags to tools.
* fix: revert response return type to Message for compatibility
* Change the max_iterations and case_sensitive advanced options
* feat: add regex matching and real-time refresh functionality
* Refactor evaluate_condition method to use elif statements for clarity
- Changed if statements to elif in the evaluate_condition method to improve readability and indicate mutually exclusive conditions.
- Removed redundant advanced=True line from BoolInput for case sensitivity.
* [autofix.ci] apply automated fixes
* Format code using make format
- Applied code formatting to ensure consistency and adherence to style guidelines.
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Eric Hare <ericrhare@gmail.com>
* refactor: Add field validation options to TableOptions
* refactor: Add field validation options and trigger text/icon to TableMixin
* refactor: Add field validation options and trigger text/icon to TableMixin
* refactor: Add field validation options and trigger text/icon to TableMixin
* update table trigger for toolmode usage
* Refactor table trigger and field validation options
- Updated the table trigger for toolmode usage
- Added field validation options and trigger text/icon to TableMixin
- Modified TableOptions to block certain actions and hide options
* Refactor TableOptionsTypeAPI field names for blocking actions
* Refactor TableOptions default values for blocking actions
* Refactor TableOptions default values for blocking actions
* Refactor TableOptions component to include tableOptions prop
* Refactor table selection and pagination options
* Refactor TOOL_TABLE_SCHEMA to disable sorting and filtering for the "name" and "description" fields
* Refactor TableOptions to allow blocking hiding of fields
* Refactor TableModal and TableNodeComponent to include support for block hiding columns
* Refactor Column model to include support for different edit modes
* Refactor TableOptions to include support for field parsers
* Refactor TableOptions to include support for field parsers and blocking hiding of fields
* Refactor TableOptions to include support for inline editing of fields
* Refactor App.css to style large text inputs and text areas in AgGrid
* update types
* Update table modal to prevent closing the the modal while editing cell
* Refactor string manipulation utilities to support parsing and transforming strings based on specified field parsers
* add inline input support
* Refactor TextModal component to remove close button in the footer
* add field parser in context
* format code
* format code
* Add disable_edit field to Column class
* Refactor TableNodeComponent to exclude columns with disable_edit field from being editable
* [autofix.ci] apply automated fixes
* Fix casing in selector text for "Open table" in tableInputComponent tests
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
✨ (appHeaderComponent/index.tsx): Refactor AppHeader component to use AlertDropdown for notifications and improve user interaction with notifications tab
✅ (notifications.spec.ts): Add end-to-end test for user interaction with notifications tab in the frontend application
* Put back some sync methods for backward compatibility.
* [autofix.ci] apply automated fixes
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
✨ (nodeToolbarComponent/index.tsx): add new props 'cancelText', 'confirmationText', 'size', 'icon', and 'index' to enhance customization and functionality of the NodeToolbarComponent
* ✨ (NodeDescription/index.tsx): Memoize Markdown component and description rendering for performance optimization
♻️ (NodeOutputfield/index.tsx): Memoize HandleRenderComponent and Handle instance with useMemo and memo for performance optimization
✨ (RenderInputParameters/index.tsx): Add new component RenderInputParameters to render input parameters with memoization for improved performance
📝 (GenericNode/index.tsx): Remove unused imports and functions, refactor sortToolModeFields to be exported, and optimize key generation and memoization for NodeOutputField component
📝 (flowSidebarComponent/index.tsx): Refactor event handlers to use useCallback for better performance
📝 (nodeToolbarComponent/index.tsx): Refactor event handlers to use useCallback for better performance and readability
* ♻️ (NodeDescription/index.tsx): Remove unnecessary comments and improve code readability by removing redundant comments
♻️ (NodeOutputfield/index.tsx): Remove unnecessary comments and improve code readability by removing redundant comments
♻️ (RenderInputParameters/index.tsx): Remove unnecessary comments and improve code readability by removing redundant comments
♻️ (index.tsx): Remove unnecessary comments and improve code readability by removing redundant comments
* ✅ (decisionFlow.spec.ts): add @workflow tag to the test case for better categorization and organization.
* 📝 (GenericNode/index.tsx): Organize imports and update component import for better code structure and readability
📝 (GenericNode/index.tsx): Refactor renderOutputs function to improve code readability and maintainability
📝 (GenericNode/index.tsx): Refactor renderOutputParameter function to use OutputParameter component for consistency
📝 (GenericNode/index.tsx): Refactor output rendering logic to use OutputParameter component for better code structure
📝 (sidebarDraggableComponent/index.tsx): Update logic to remove cursor element only if it exists to prevent errors
* ✨ (NodeOutputParameter/index.tsx): Add a new component for rendering output parameters in the frontend to improve modularity and reusability.
* 🔧 (index.tsx): Remove unnecessary conditional rendering for addNewInput button and simplify the logic for onClick event handler to improve code readability and maintainability.
* ✨ (button-input-list.tsx): Add a new component ButtonInputList to handle button input list functionality in the frontend
📝 (get-class-name.ts): Create a helper function getButtonClassName to generate button class names based on disabled state
📝 (get-test-id.ts): Create a helper function getTestId to generate unique test ids for input list buttons
🔄 (index.tsx): Refactor InputListComponent to use the new ButtonInputList component for handling button input list functionality in the frontend
AgentQL is a query language and a set of supporting developer tools designed to identify web elements and their data using natural language and return them in the shape you define.
Added AgentQL data extraction component. See: https://docs.agentql.com/rest-api/api-reference
This pull request introduces a new component, AgentQL, to both the backend and frontend of the project. The changes include the implementation of the AgentQL component, its integration into the frontend, and the addition of a new icon for AgentQL.
* feat: Add AgentQL integration
* upd: Update the logo
* upd: Update field type
* upd: Address feedback + better error handling
* upd: Change DictInput type & mark 'advanced' fields
* upd: Update wording
* upd: Update wording
---------
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
* chore: add Python 3.13 to GitHub Actions workflow matrix
* chore: update GitHub Actions workflow to include Python 3.13 in the testing matrix
* Add Python 3.13 to nightly build test matrix
* feat: add ModelProvidersDict TypedDict and update MODEL_PROVIDERS_DICT type annotation
- Introduced ModelProvidersDict as a TypedDict to define the structure for model provider configurations.
- Updated MODEL_PROVIDERS_DICT to use the new TypedDict for improved type safety and clarity.
- Enhanced code readability and maintainability by specifying input types for model providers.
* fix: prevent duplicate logging of SQLite pragmas in DatabaseService
- Added a flag to track whether SQLite pragmas have been logged to avoid redundant log entries.
- Improved logging efficiency by ensuring that the debug message for setting pragmas is only logged once per session.
* ci: add synchronize event to PR label workflow
* feat: add nightly build status check to CI workflow
* ci: rename job to 'Check Nightly Status' in CI workflow
* chore: update Python version requirement and remove deprecated dependencies in pyproject.toml files
* Updated Python version requirement to allow up to 3.14 in both main and base pyproject.toml files.
* Removed deprecated dependencies: cohere and pyautogen from the main dependencies list.
* chore: update Python version requirements and add support for Python 3.13 in uv.lock
* Updated the required Python version to allow up to 3.14.
* Adjusted resolution markers for Python versions to include 3.13.
* Added markers for the 'typing-extensions' dependency to restrict it for Python versions below 3.13.
* Included additional wheel files for various packages to support Python 3.13 compatibility.
* Update Python version requirements in README files to support Python 3.13
* Update Python version in GitHub Actions workflow to 3.13
* Update Python version in GitHub Actions workflows to include 3.13
* Update installation documentation to support Python 3.13 and clarify troubleshooting steps
* revert changes to docs until we release
* chore: add ag2 dependency and update uv.lock for Python 3.13 compatibility
* Added ag2 version 0.3.2 and 0.5.2 to pyproject.toml and uv.lock with appropriate resolution markers for Python versions.
* Included flaml version 2.3.2 in uv.lock to ensure compatibility with the new ag2 dependency.
* Updated dependency specifications to support Python 3.13 and above.
🐛 (use-patch-update-flow.ts): change 'locked' property to optional by using '?' to match interface definition
📝 (index.tsx): add 'asChild' prop to Button component to pass it down as a prop to the child component
* refactor(langflow): Update JSON serialization in build_flow and log_vertex_build
* Refactor JSON serialization in build_flow and log_vertex_build functions
* Refactor JSON serialization in build_flow and log_vertex_build functions
* fix: enhance user_id validation in CustomComponent to ensure correct UUID handling
* Added type checks for user_id to ensure it is either a string or a UUID before conversion.
* Improved error handling by raising TypeError for invalid user_id types.
* fix: update flow_id and session_id types to UUID in monitor endpoint
* fix: convert flow_id to UUID type before adding messages
* fix: convert flow_id string to UUID when storing message
* fix: update session_id type to string in get_messages endpoint for improved type consistency
* ♻️ (index.tsx): Remove unused getRandomKeyByssmm function to clean up code and improve maintainability
📝 (index.tsx): Update key prop in SidebarMenuItem component to use index instead of getRandomKeyByssmm function for better performance and readability
* 📝 (select-options.tsx): Refactor SelectOptions component to improve readability and maintainability by restructuring the JSX elements and adding proper classNames
📝 (index.tsx): Introduce state for hoveredFolderId to track the currently hovered folder in the SideBarFoldersButtonsComponent for better user interaction and visual feedback. Update SidebarMenuItem to include onMouseEnter and onMouseLeave events to set and clear the hoveredFolderId state respectively. Update SidebarMenuButton className to conditionally apply background color based on the hoveredFolderId state.