* feat(utils): add support for V1BaseModel in serialize_field
Add support for V1BaseModel instances in the serialize_field function by
checking for a "to_json" method. If the method is not present, return the
attribute values as a dictionary.
* refactor: Update field serializer function and error handling in build_flow function
* feat: Add logging and session imports to endpoints.py
Import logging and session modules for better error handling and database interaction in endpoints.py.
* refactor: Improve custom component parameter handling in update endpoint
* feat: Add parse_value function to parse values based on input type
Add a new function `parse_value` to `utils.py` that parses values based on the input type provided. The function handles different input types such as 'IntInput' and 'FloatInput' to ensure proper parsing.
* feat: Refactor custom_component_update() to use parse_value utility function
Use parse_value utility function to handle different input types and empty values in custom_component_update() for better readability and maintainability.
* fix: Add exception handling for missing langchain_anthropic package
* refactor: Move import statement for get_starter_projects_dump in get_starter_projects
* chore: Modify logger to use error level for exception in directory_reader
* refactor: Simplify log configuration logic in Graph class
* feat(tracing): Refactor _end_traces method to be async and use asyncio.to_thread.
This is an attempt to avoid blocking the build loop
Update OpenAIModel.py- Fix can not set temperature to 0 bug.
As when the input temperature is 0, the condition would become False , so this expressing set it to 0.1, it become impossible to set it to 0.
* 📝 (langflow): Add support for configuring auto saving interval for Langflow
📝 (langflow): Update ConfigResponse and Settings to include auto_saving_interval
📝 (frontend): Update useGetConfigQuery and useSaveConfig to handle auto_saving_interval
📝 (frontend): Update useAutoSaveFlow and flowsManagerStore to handle auto saving interval
* 📝 (util.py): add support for setting auto_saving_interval in update_settings function to allow customization of auto-saving interval
* 🐛 (users.py): Fix issue where user password was not being updated correctly
📝 (constants.ts, authContext.tsx, index.tsx): Add LANGFLOW_REFRESH_TOKEN constant and update related code to support refresh token functionality
📝 (userManagementModal/index.tsx): Update form reset logic and handle input values correctly
📝 (LoginPage/index.tsx, LoginAdminPage/index.tsx): Update login function to include refresh token parameter
📝 (components/index.ts, auth.ts): Update inputHandlerEventType to support boolean values
✨ (auto-login-off.spec.ts): Add end-to-end test for user login functionality with auto_login set to false, CRUD operations for users, and verification of user flows visibility based on permissions.
* ✨ (auto-login-off.spec.ts): improve test description for better clarity and understanding
📝 (auto-login-off.spec.ts): add comments to clarify the purpose of intercepting requests and performing CRUD operations
* 🐛 (users.py): fix comparison of password to check for None using 'is not None' instead of '!= None' for better accuracy
* feat: nltk text splitter support
* feat: add doc link to nltk text splitter
* [autofix.ci] apply automated fixes
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* refactor: Improve post-processing of return type in type extraction.
* feat: Add support for Union[int, Sequence[str]] in post_process_type.
* refactor(langflow): Simplify return type extraction in CustomComponent.
* Refactor: Remove 'Sequence' and 'list' type options in starter projects.
* test: fix assertion
---------
Co-authored-by: italojohnny <italojohnnydosanjos@gmail.com>
* enhancement: Update PythonCodeStructuredTool to create inputs automatically and accept global variables
* [autofix.ci] apply automated fixes
* feat: Create a tool to search using SearXNG
* [autofix.ci] apply automated fixes
* refactor: reorganize imports and type annotations in PythonCodeStructuredTool.py for clarity and consistency
* refactor: clean up imports and enhance type annotations in SearXNGTool.py for improved readability and type safety
* refactor: Improved PythonCodeStructuredTool to allow arguments to have any types
* refactor: Formatted and refactored SearXNGTool
* refactor: Allowed RunnableExecutor to stream output and changed its build method to asynchronous.
* fix: correct indentation issue in PythonCodeStructuredTool
* fix: correct type for int and float inputs when updating custom component
* [autofix.ci] apply automated fixes
* fix: change Tool to StructuredTool due to arguments in SearXNGTool
* refactor(endpoints.py): remove duplicate imports of loguru and sqlmodel to improve code readability and maintainability
---------
Co-authored-by: Haseong Kim <dynaferkim@gmail.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
* feat(api): Add endpoint to get list of starter projects with error handling.
* feat: Add test for getting starter projects with valid API key.
* [autofix.ci] apply automated fixes
* refactor(langflow): Update function name from get_all_graphs_dump to get_starter_projects_dump.
* bug: fixes route collision
* bug: fixes serialization
* chore: move endpoint to new file
* [autofix.ci] apply automated fixes
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: italojohnny <italojohnnydosanjos@gmail.com>
* 🐛 (ComposioAPI.py): Fix issue where build_config was not being updated correctly when api_key is not empty
* 🐛 (GenericNode/index.tsx): Fix potential null pointer exception by adding non-null assertion operator to info property access
✨ (generalBugs-shard-11.spec.ts): Add end-to-end tests to ensure users can use ComposIO without api_key error and connect tools successfully
* feat: Add ComponentTool to convert a Component to a Tool
* test(component): add unit test for ComponentTool with ChatInput input.
* feat: Add method to convert Component to ComponentTool.
* feat: Add unit test for ChatInput to Tool conversion.
* chore: add comment
* test: fix assertion
---------
Co-authored-by: italojohnny <italojohnnydosanjos@gmail.com>
* feat: Add function to create input schema from list of input types.
* feat: Add unit tests for creating input schemas.
* refactor(io): Improve input schema creation logic.
* refactor(schema): Simplify eval call in create_input_schema function.
* fix: Change ValueError to TypeError in create_input_schema to reflect correct exception.
* refactor: refactor create_input_schema to accept a list of input instances.
* feat: Add basic prompting graph function.
* feat: Add blog writer starter project function.
* feat(langflow): Add document QA starter project.
* feat: Add memory chatbot graph function to create chatbot with memory component.
* feat: Add hierarchical tasks agent graph to handle sequential tasks.
* feat: Add a function to create a sequential tasks agent with specific tasks.
* feat: Add vector_store_rag module with ingestion and RAG graphs.
* Refactor: Update the hierarchical task agent to use builder methods for agents and models.
* feat: Refactor sequential tasks agent to utilize build_model and build_output methods.
* refactor: Rename functions in blog_writer, document_qa, and vector_store_rag to end with "_graph".
* feat: Add new graphs to starter projects __init__.py.
* feat: Add complex agent graph setup with prompts, tools, and agents.
* refactor: Add complex agent graph to starter projects.
* feat: Add starter project graphs and dump retrieval functions.
* test: Refactor test_directory_without_mocks method with temporary directory for testing purposes.
* feat: Add auto save feature in Langflow run function.
* feat: Add auto_save field to ConfigResponse model.
* refactor: Move logger import to the top in __main__.py and update auto save option help message.
* refactor: Update variable names for auto save to auto saving.
* feat: Add optional description attribute to Graph class and handle description in serialization.
* refactor: Remove 'type' field from NodeData class.
* refactor: Set default graph name if not provided.
* fix: mypy error typeddict-item
---------
Co-authored-by: italojohnny <italojohnnydosanjos@gmail.com>
* refactor: Extract method to set params from normal edge in Vertex class.
* feat: Add method to retrieve value from template dict in Vertex class.
* feat: Add handling for cycle and contract edge targets in ComponentVertex build method.
* refactor: Update result retrieval logic in ComponentVertex class.
* refactor: Add condition to check flow_id before creating log transactions.
* refactor: Add missing `Edge` import and cast `cast` in types.py for better typing.
* refactor: improve function structure in _build_results
* fix: remove function call that overrides Component.outputs
* refactor: Add handling for outputs in __getattr__ method.