* 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.
* 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>
⚡️ 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>
* 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>
* 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>
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>
* 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.
* 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.
* 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
* 🐛 (custom_component.py): fix user_id assignment to convert it to UUID type for consistency and correctness
* [autofix.ci] apply automated fixes
* 🐛 (custom_component.py): fix potential bug by checking if self.user_id is a string before converting it to UUID
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* Update sqlmodel dependency to version 0.0.20 in pyproject.toml
* Handle UUID conversion for message IDs in memory update logic
* Refactor Alembic migrations to use `sa.inspect` and update GUID to Uuid type
* refactor: Change flow_id parameter type from str to uuid.UUID in graph building functions
* refactor: Ensure UUID handling for flow_id and user_id across various services and models
* refactor: improve UUID handling and graph caching for compatibility with sqlmodel 0.0.20
* fix: update message assertion in component events test
* chore: update sqlmodel dependency to version 0.0.22 in uv.lock and pyproject.toml
* fix: enhance flow_id validation to ensure valid UUID format in MessageBase model
* fix: add error handling for cache directory cleanup
* refactor: improve flow_id type handling in message storage
* refactor: enhance flow_id handling in message functions to support UUID type
* refactor: integrate Properties into message creation in component event tests
* update test durations
* fix: correct flow_id parameter in database query
* refactor: update session_id and flow_id parameters to support UUID type across message handling functions and models
* fix: handle message data update in SQLModel update method
* refactor: improve flow_id assignment in message update method to enhance UUID handling
* feat: Restructure Youtube Transcripts component
- Changed the return type of the `build_youtube_transcripts` method from `Data` to `Message`.
- Updated the output name from "Data" to "Transcription" to reflect the new return type.
- Modified the return statements in `build_youtube_transcripts` to return `Message` objects instead of `Data`.
Co-authored-by: Vinícios Batista da Silva <vinicios.batsi@gmail.com>
* test(youtube-transcripts): enhance test stability by updating component ID and improving interaction checks
- Modified the component id in the test script to match the changes in the Youtube Transcripts component
Co-authored-by: Vinícios Batista da Silva <vinicios.batsi@gmail.com>
* fix: Fixed lint on line 180-181
Co-authored-by: Vinícios Batista da Silva <vinicios.batsi@gmail.com>
---------
Co-authored-by: Eric Hare <ericrhare@gmail.com>
* refactor(openai): remove deprecated output_schema and redundant output_parser parameters
* refactor(openai): remove output_schema and output_parser parameters
Following @ogabrielluiz's review feedback to properly handle removed inputs:
1. Remove output_schema parameter:
- Remove from inputs list
- Remove output_schema_dict conversion in build_model
- Remove output_schema_dict usage in json_mode logic
- Remove output_schema_dict usage in structured_output
2. Remove output_parser parameter:
- Remove from inputs list (no code references to clean up as it wasn't being used)
This ensures we don't have any lingering references to removed parameters.
* [autofix.ci] apply automated fixes
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>