* feat: Add flow build cancellation endpoint and support
Implement new functionality to cancel ongoing flow build jobs:
- Add `cancel_flow_build` function in build.py to handle job cancellation
- Create new `/build/{job_id}/cancel` endpoint in chat.py
- Introduce `CancelFlowResponse` schema for cancellation response
- Implement robust error handling and logging for job cancellation process
* [autofix.ci] apply automated fixes
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* feat: Enhance edge update logic with robust node reconciliation and type handling
Improves the `update_edges_with_latest_component_versions` function by:
- Adding comprehensive node reconciliation for missing nodes
- Implementing more robust type and handle matching
- Improving error logging and edge state tracking
- Adding detailed docstring explaining the function's complex logic
- Handling edge cases with null or missing node data
- Enhancing type conversion and handle escaping mechanisms
* refactor: update edge data
🔧 (.gitattributes): mark *.wav files as binary to prevent line ending conversions
♻️ (UpdateAllComponents/index.tsx): refactor code to use separate functions for resetting and starting edges update reference to improve readability and maintainability
* Added Null, Undefined and Bool rendering to table
* Handling formatter to come from the backend in table definitions
* Added validator to make type as formatter and vice versa
* Added boolean case to show badge
* Added Toggle Cell Editor
* Supress Row Click Selection on Table node component
* ADd boolean as type for formatter
* Adds Boolean formatter type to show toggle editor
* run format_backend
* ✅ (tableInputComponent.spec.ts): update unit test for table input component to use new methods for interacting with elements and improve readability and maintainability of the test code.
---------
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
* ✨ (Research Translation Loop.spec.ts): add integration test for Research Translation Loop functionality in the frontend to ensure proper functionality and behavior.
* ✨ (Price Deal Finder.spec.ts): Add integration test for Price Deal Finder feature
📝 (Price Deal Finder.spec.ts): Document test cases and setup for Price Deal Finder feature
♻️ (Research Translation Loop.spec.ts): Refactor test setup and add missing test case for Research Translation Loop feature
* add tests to new started projects
* update the templates and add error handling
* [autofix.ci] apply automated fixes
* updated changes
* update to template from main
* Update split_text.py
* Add validation for text key in DataFrame setter
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
* fix: Update vector store template dialog order
* Update Vector Store RAG.json
* Update Vector Store RAG.json
* Restore OPENAI_API_KEY as default in VSR
* Update Vector Store RAG.json
* Update Vector Store RAG.json
---------
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
* 📝 (loop.py): Improve code readability and semantics by updating the return condition in the LoopComponent class
📝 (data.py): Enhance the data_to_text_list function to handle various data structures and ensure consistent text formatting
📝 (LoopTemplate.json): Update the LoopComponent class description and method implementations for better clarity and maintainability
📝 (test_data_to_text_list.py): Add unit tests to cover different scenarios and edge cases for the data_to_text_list function
* [autofix.ci] apply automated fixes
* 📝 (langflow): Add noqa comments to ignore linting rule A005 for specific files in the project. Fix type annotations and improve error handling in data.py module. Add noqa comments to ignore linting rule A005 for specific files in the project.
* ✅ (test_data_to_text_list.py): update parameter names in pytest.mark.parametrize to improve readability and maintainability
* 🐛 (data.py): refactor error message handling in data_to_text_list function to improve readability and maintainability
* [autofix.ci] apply automated fixes
* Update src/backend/base/langflow/helpers/data.py
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
* ♻️ (data.py): refactor data_to_text_list function to simplify the logic and improve readability by removing unnecessary if conditions and updating the format_dict directly from data_obj.data.
* ✅ (test_data.py): refactor test_data_to_text_list function to handle defaultdict behavior and improve test coverage
* ✅ (loop-component.spec.ts): update test expectation to match the correct number of occurrences of "modified_value" in the output
* ✅ (Memory Chatbot.spec.ts): add assertion to check if the concatenated text length is greater than 20 to ensure the chatbot response is meaningful
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
* 🔧 (UpdateAllComponents/index.tsx): refactor the logic to track the number of edges before update and update component status for better error handling and user notification.
* ♻️ (UpdateAllComponents/index.tsx): refactor variable names for better readability and semantics
* fix: updated ChatOutput component not working with streaming enabled (#6744)
fixes: 69df913a14
Updated to handle the forgotten Generator case for self.input_value (encountered when streaming is enabled).
Overhauled the chat.py under outputs to (mostly) pass strict type checking, something which could have prevented this bug.
Only this file has been changed. The only type errors in this file are in the safe_convert function and are due to problems in other files.
To prevent further problems in the future, the project should work towards enabling strict type checking permanently after fixing the vast number of type problems.
* [autofix.ci] apply automated fixes
* [autofix.ci] apply automated fixes (attempt 2/3)
* update templates and make sure they support streaming without making breaking chnages
* update templates
* [autofix.ci] apply automated fixes
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
* feat: Add loading state and skeleton UI for FlowPage sidebar
* fix: Improve UI components with minor styling and z-index adjustments
* refactor: Simplify SkeletonGroup component and update FlowPage sidebar loading state
* refactor: Adjust SkeletonGroup rendering and FlowPage sidebar styling
* refactor: Remove z-index from PageComponent loading state
* refactor: Update FlowPage sidebar skeleton height class
* fix: Update Docker build workflow to use Wandalen/wretry.action for improved reliability
* fix: Remove attempt limit and delay from Docker build workflow
* fix: Add comment to clarify provenance setting in Docker build workflow
* Use pyproject standardized dependency-groups
* fix: update Python version requirement to support up to 3.14
---------
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
* 🐛 (loop.py): Fix logic in LoopComponent to correctly evaluate if loop should stop based on current index and data length
📝 (LoopTemplate.json): Update output_types to be arrays for consistency and readability in LoopTemplate JSON file
* 🐛 (loop.py): fix logic in stop condition to correctly evaluate if loop should stop or continue based on current index and data length
* [autofix.ci] apply automated fixes
* ✅ (loop-component.spec.ts): update test expectation to match the correct number of occurrences of "modified_value" in the output
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
✨ (PageComponent/index.tsx): Refactor UpdateAllComponents rendering logic to improve readability and maintainability
🔧 (UpdateAllComponents/index.tsx): Add error messages as constants for better code organization and reusability
♻️ (UpdateAllComponents/index.tsx): Refactor UpdateAllComponents to use useRef and useMemo hooks for better performance and edge case handling
* update to support dataframe
* [autofix.ci] apply automated fixes
* [autofix.ci] apply automated fixes (attempt 2/3)
* Update split_text.py
* [autofix.ci] apply automated fixes
* [autofix.ci] apply automated fixes
* update names
* Update src/backend/base/langflow/schema/dataframe.py
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
* [autofix.ci] apply automated fixes
* update to template
* update review changes
* Update Vector Store RAG.json
* fix lint errors
* fix tests
* 📝 (freeze.spec.ts): update test description to match the actual element being tested for better clarity and accuracy
* ✨ (stop-button-playground.spec.ts): improve test reliability by specifying target position for drag action to prevent flakiness
* ✅ (logs.spec.ts): increase timeout from 1000ms to 3000ms for better test reliability
✅ (stop-building.spec.ts): update test selector from "handle-splittext-shownode-data inputs-left" to "handle-splittext-shownode-input documents-left" for accurate testing
✅ (starter-projects.spec.ts): add a 1000ms timeout before asserting visibility of an element for better test stability
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
* ci: Update GitHub Actions workflow to use Yarn instead of npm
* chore(deps): Update terser and terser-webpack-plugin dependencies in yarn.lock
* chore(deps): Update Docusaurus dependencies to version 3.7.0