Commit graph

16,525 commits

Author SHA1 Message Date
Lucas Oliveira
d366ce33fa
fix: add dropdown click to general bugs test (#9549)
Fixed test missing dropdown click
2025-08-26 14:34:58 -03:00
Phil Nash
1eae241b25
feat: enable real-time refresh for Base URL input in ChatOllamaComponent (#9346)
Co-authored-by: Sebastián Estévez <estevezsebastian@gmail.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-08-26 14:08:37 -03:00
Mike Fortman
a483d55b8c
feat: add new segmented sidebar (#9355)
* add new segmented sidebar

* add mcp menu

* switch back to floating trigger

* update icon and trigger

* open close and search handling

* improving search...almost there

* mcp empty state

* header updates

* search, header improvement + tests

* code quality improvement

* cleanup

* test fixes

* pr comment reset search val

* better ff wrap header

* cleanup

* test fix

* test fix

* merge fix

* test fix

* add mcp sidebar group tests + test fix

* test fix

* fix side bar test
2025-08-26 11:32:03 -05:00
Gabriel Luiz Freitas Almeida
933198d8be
feat: add static dependency analysis module and update metadata handling (#9192)
* feat: add dependency analysis utilities for custom components

- Introduced `dependency_analyzer.py` to analyze and classify dependencies in Python code.
- Implemented functions to extract import information and categorize dependencies as standard library, local, or external.
- Enhanced `build_component_metadata` to include dependency analysis results in component metadata.
- Added unit tests to validate the functionality of the dependency analysis features.

* refactor: streamline dependency analysis by filtering out stdlib and local imports

- Updated `dependency_analyzer.py` to focus on external dependencies only, removing standard library and local imports from analysis results.
- Simplified the `DependencyInfo` class by eliminating unnecessary attributes and adjusting the deduplication logic.
- Modified `build_component_metadata` to reflect changes in dependency structure, removing counts for stdlib and local dependencies.
- Enhanced unit tests to validate the new filtering behavior and ensure no duplicates in external dependencies.

* feat: update starter project metadata with dependency information

- Added dependency sections to multiple starter project JSON files, specifying required packages and their versions.
- Included `langflow` version `1.5.0.post1` and other relevant dependencies such as `orjson`, `fastapi`, and `pydantic` across various projects.
- Enhanced project metadata to improve clarity on external dependencies for better maintainability and user guidance.

* ️ Speed up function `_classify_dependency` by 7,582% in PR #9192 (`add-deps-metadata`) (#9193)

Co-authored-by: codeflash-ai[bot] <148906541+codeflash-ai[bot]@users.noreply.github.com>

* fix: ensure distribution version is returned correctly in `_get_distribution_version`

- Updated `_get_distribution_version` function to return the distribution version after successfully retrieving it, addressing a potential issue where `None` could be returned prematurely.

* fix: improve distribution version lookup in `_get_distribution_version`

* fix: handle distribution version lookup exceptions more gracefully

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* fix(apply_tweaks): skip tweaks to code field and log warning (#9467)

* fix: add security warning for overriding code field in tweaks

* test: add tests for preventing code field overrides in tweaks

* ref: Refactor vectorstore components structure (#9486)

* Refactor vectorstore components structure

Moved vectorstore components for Chroma, ClickHouse, Couchbase, DataStax, Elastic, Milvus, MongoDB, Pinecone, Qdrant, Supabase, Upstash, Vectara, and Weaviate into dedicated subfolders with __init__.py files for each. Updated Redis vectorstore implementation to reside in redis.py and removed the old vectorstores/redis.py. Adjusted starter project JSONs and frontend constants to reflect new module paths and sidebar entries for these vectorstores.

* Refactor vectorstore components and add lazy imports

Moved Datastax-related files from vectorstores to a dedicated datastax directory. Added lazy import logic to __init__.py files for chroma, clickhouse, couchbase, elastic, milvus, mongodb, pinecone, qdrant, supabase, upstash, vectara, and weaviate components. Cleaned up vectorstores/__init__.py to only include local and faiss components, improving modularity and import efficiency.

* [autofix.ci] apply automated fixes

* Refactor vectorstore components structure

Moved FAISS, Cassandra, and pgvector components to dedicated subdirectories with lazy-loading __init__.py files. Updated imports and references throughout the backend and frontend to reflect new locations. Removed obsolete datastax Cassandra component. Added new sidebar bundle entries for FAISS, Cassandra, and pgvector in frontend constants and style utilities.

* Add lazy imports and Redis chat memory component

Refactored the Redis module to support lazy imports for RedisIndexChatMemory and RedisVectorStoreComponent, improving import efficiency. Added a new redis_chat.py file implementing RedisIndexChatMemory for chat message storage and retrieval using Redis.

* Fix vector store astra imports

* Revert package lock changes

* More test fixes

* Update test_vector_store_rag.py

* Update test_dynamic_imports.py

* Update vector_store_rag.py

* Update test_dynamic_imports.py

* Refactor the cassandra chat component

* Fix frontend tests for bundle

* Mark Local DB as legacy

* Update inputComponent.spec.ts

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Eric Hare <ericrhare@gmail.com>
Co-authored-by: Carlos Coelho <80289056+carlosrcoelho@users.noreply.github.com>

* feat: add dependencies metadata to starter projects

* feat: add caching for packages_distributions to improve performance

* refactor: update test descriptions and remove unused imports in metadata tests

---------

Co-authored-by: codeflash-ai[bot] <148906541+codeflash-ai[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
Co-authored-by: Eric Hare <ericrhare@gmail.com>
Co-authored-by: Carlos Coelho <80289056+carlosrcoelho@users.noreply.github.com>
2025-08-25 23:32:44 +00:00
Deon Sanchez
15edb5ad14
feat: Canvas toolbar update and enhancement (#9239)
* feat: Add EditorConfig and Prettier configuration files for consistent code formatting

- Introduced .editorconfig to enforce coding styles across various file types.
- Added .prettierrc for Prettier configuration to standardize code formatting.
- Updated settings.json to define tab sizes and formatting options for different languages.
- Enhanced canvasControlsComponent with a new dropdown for control buttons, improving UI interaction.
- Refactored logCanvasControlsComponent and MemoizedComponents for better structure and consistency.

* [autofix.ci] apply automated fixes

* feat: Enhance canvas controls with keyboard shortcuts and dropdown functionality

- Introduced keyboard shortcuts for zooming in, zooming out, fitting view, and resetting zoom.
- Refactored DropdownControlButton to improve accessibility and usability.
- Updated CanvasControls to handle keyboard events for enhanced user interaction.
- Added helper function to format zoom percentage for better display.
- Improved structure and readability of the canvas controls component.

* [autofix.ci] apply automated fixes

* feat: Introduce CanvasControlsDropdown and HelpDropdown components

- Added new dropdown components for canvas controls and help functionalities.
- Refactored CanvasControls to utilize the new dropdowns, enhancing UI interaction.
- Improved keyboard shortcut handling for zoom and view adjustments.
- Streamlined component structure for better maintainability and readability.

* refactor: Update dropdown components and styles in canvasControls

- Removed unused ShadTooltip import from dropdowns.tsx.
- Adjusted padding and margin styles for DropdownControlButton and CanvasControlsDropdown for improved layout.
- Enhanced button styles in MemoizedComponents for consistency.
- Cleaned up class names in CanvasControls for better readability.

* feat: Enhance HelpDropdown with navigation and external links

- Added functionality to open documentation and desktop download links in new tabs.
- Integrated navigation for shortcuts settings within the HelpDropdown.
- Cleaned up commented-out code for better readability and maintainability.

* [autofix.ci] apply automated fixes

* feat: Add tests for CanvasControls and Dropdown components

- Introduced unit tests for CanvasControls, verifying rendering and keyboard shortcut handling.
- Added tests for CanvasControlsDropdown and HelpDropdown, ensuring proper functionality and interaction.
- Implemented mocks for external dependencies to isolate component behavior during testing.
- Enhanced test coverage for dropdown interactions and navigation features.

* refactor: Simplify Jest setup by removing unused polyfills and mocks

- Removed unnecessary polyfills for ResizeObserver and IntersectionObserver from the Jest setup file.
- Cleaned up the window.open mock to streamline the testing environment.

* feat: Enhance FlowMenu and EditFlowSettings components

- Reintroduced memoization and hotkey handling in FlowMenu for improved performance.
- Updated EditFlowSettings to include locking functionality with a switch component, enhancing user control over flow settings.
- Adjusted layout and styling for better user experience in the EditFlowSettings component.

* [autofix.ci] apply automated fixes

* feat: Implement locking functionality in FlowSettingsComponent

- Added state management for the locked property in FlowSettingsComponent.
- Updated EditFlowSettings to disable input fields based on the locked state.
- Enhanced the flow submission logic to include the locked status when saving changes.

* [autofix.ci] apply automated fixes

* chore: Remove EditorConfig and Prettier configuration files

- Deleted .editorconfig and .prettierrc files to streamline project configuration.
- Updated .cursor/settings.json to enable biome without specific editor settings for various file types.

* chore: Update biome settings in .cursor/settings.json

- Removed the biome.enabled property to simplify configuration.
- Retained the biome.configurationPath for continued functionality.

* feat: Enhance dropdown functionality with toggle options and bug report link

- Added a toggle feature to the DropdownControlButton for enabling smart guides.
- Introduced a new BUG_REPORT_URL constant for reporting issues.
- Updated HelpDropdown to utilize the new toggle functionality and link for bug reporting.
- Cleaned up imports and adjusted component props for better usability.

* fix: Correct onClick handling in DropdownControlButton component

- Updated the onClick prop to directly use the provided onClick function instead of a conditional.
- Adjusted the handleOnNewValue prop in ToggleShadComponent to ensure proper toggle functionality.

* [autofix.ci] apply automated fixes

* feat: Introduce CanvasControls and dropdown components for enhanced canvas interaction

- Added CanvasControls component to manage canvas interactions and state based on flow lock status.
- Implemented CanvasControlsDropdown and HelpDropdown for zoom and help functionalities, respectively.
- Created DropdownControlButton for reusable dropdown actions with keyboard shortcuts.
- Removed deprecated dropdowns and refactored related tests to align with new component structure.
- Introduced utility functions for zoom percentage formatting and modifier key detection.

* refactor: Clean up imports and enhance HelpDropdown functionality

- Removed redundant imports in FlowMenu and HelpDropdown components.
- Refactored HelpDropdown to utilize Zustand for managing helper line state.
- Improved readability by adjusting component structure and formatting.

* Revert "Merge branch 'lfoss-1889' of https://github.com/langflow-ai/langflow into lfoss-1889"

This reverts commit 896436ac53986702dd162151e7fdb770689751c7, reversing
changes made to 475c2fa027211021557ff37bd056627be896b59c.

* [autofix.ci] apply automated fixes

* Reapply "Merge branch 'lfoss-1889' of https://github.com/langflow-ai/langflow into lfoss-1889"

This reverts commit 4e971f81e4d2e01a75bfc855467d60536d668eb4.

* fix proxy

* test: Enhance testing for canvas controls and dropdown components

- Updated CanvasControls test to verify state management and rendering.
- Added comprehensive tests for CanvasControlsDropdown, including zoom functionality and keyboard shortcuts.
- Introduced tests for utility functions in canvasUtils, ensuring correct zoom formatting and modifier key detection.
- Created tests for DropdownControlButton, validating rendering, click handling, and toggle functionality.
- Refactored Dropdowns test to remove CanvasControlsDropdown references and streamline imports.

* [autofix.ci] apply automated fixes

* refactor: reorganize imports and optimize state selection in FlowMenu component

- Moved import statements for memo, useMemo, useRef, and useState to the correct position.
- Updated currentFlow state selection to use useShallow for improved performance.

* [autofix.ci] apply automated fixes

* refactor: reorganize imports and enhance DropdownControlButton functionality

- Moved import statements for React and other components to appropriate locations.
- Added externalLink prop to DropdownControlButton for improved link handling.
- Updated HelpDropdown to utilize externalLink prop for relevant buttons.
- Refined HeaderMenuItemLink styles for better visual consistency.

* [autofix.ci] apply automated fixes

* test: enhance accessibility features in DropdownControlButton tests

- Added role, tabIndex, aria-checked, and aria-label attributes for improved accessibility.
- Implemented keyboard interaction handling for Enter and Space keys to trigger value changes.

* [autofix.ci] apply automated fixes

* refactor: reorganize imports and enhance FlowMenu state management

- Moved import statements for React hooks to the correct position.
- Updated state selection to include isFlowLocked for improved clarity and performance.
- Refined usage of currentFlow state properties in the MenuBar component.

* [autofix.ci] apply automated fixes

* test: add Flow Lock feature tests for locking and unlocking flows

- Implemented tests to verify the locking and unlocking functionality of flows, including UI changes and state persistence.
- Ensured that inputs are enabled/disabled correctly based on the lock state and that the appropriate lock/unlock icons are displayed in the settings.

* [autofix.ci] apply automated fixes

* test: Update selectors in various specs to use canvas_controls_dropdown

Replaced instances of 'fit_view' selector with 'canvas_controls_dropdown' in multiple test files to ensure proper interaction with the canvas controls. This change enhances the reliability of the tests by targeting the correct UI elements.

* [autofix.ci] apply automated fixes

* test: Refactor auto-login-off.spec.ts and rename-flow.ts for improved readability and functionality

Updated the auto-login-off.spec.ts file to enhance code clarity by adjusting formatting and ensuring proper selector usage. Additionally, modified the rename-flow.ts utility to include hover actions for better user interaction simulation during tests. These changes aim to improve test reliability and maintainability.

* test: Enhance interaction with canvas controls in multiple specs

Added interactions with the 'canvas_controls_dropdown' in various test files to improve test reliability and ensure proper UI element targeting. This update includes adjustments in auto-login-off.spec.ts, customComponentAdd.spec.ts, tableInputComponent.spec.ts, stop-button-playground.spec.ts, and generalBugs-shard-7.spec.ts, enhancing the overall functionality of the tests.

* fixed tests

* test: Enhance interaction with canvas controls across multiple specs

Added interactions with the 'canvas_controls_dropdown' in various test files to improve test reliability and ensure proper UI element targeting. This update includes adjustments in tweaksTest.spec.ts, user-flow-state-cleanup.spec.ts, and several integration tests, enhancing the overall functionality of the tests.

* [autofix.ci] apply automated fixes

* test: Further enhance interactions with canvas controls in multiple specs

Added additional clicks on the 'canvas_controls_dropdown' in stop-building.spec.ts, promptModalComponent.spec.ts, minimize.spec.ts, and generalBugs-shard-11.spec.ts to improve test reliability and ensure proper UI element targeting. This update continues to enhance the overall functionality of the tests.

* [autofix.ci] apply automated fixes

* test: Improve interactions with canvas controls in various specs

Added multiple clicks on the 'canvas_controls_dropdown' across several test files, including playground.spec.ts, decisionFlow.spec.ts, and generalBugs-shard-5.spec.ts, to enhance test reliability and ensure accurate UI element targeting. This update continues to refine the overall functionality of the tests.

* [autofix.ci] apply automated fixes

* test: Enhance canvas control interactions across multiple specs

Added additional clicks on the 'canvas_controls_dropdown' in various test files, including generalBugs-shard-5.spec.ts, linkComponent.spec.ts, tabComponent.spec.ts, flowPage.spec.ts, stop-button-playground.spec.ts, and general-bugs-truncate-results.spec.ts. This update aims to improve test reliability and ensure accurate interactions with the UI elements.

* [autofix.ci] apply automated fixes

* test: Refine canvas control interactions in various specs

Added additional clicks on the 'canvas_controls_dropdown' across multiple test files, including similarity.spec.ts, fileUploadComponent.spec.ts, sliderComponent.spec.ts, tableInputComponent.spec.ts, and minimize.spec.ts. This update aims to enhance test reliability and ensure accurate interactions with UI elements, continuing the effort to improve overall test functionality.

* [autofix.ci] apply automated fixes

* test: Refine canvas control interactions in loop-component.spec.ts

Added additional clicks on the 'canvas_controls_dropdown' to enhance test reliability and ensure accurate interactions with UI elements. This update continues the effort to improve overall test functionality.

* [autofix.ci] apply automated fixes

* test: Update lock-flow interactions for improved reliability

Refactored interactions in lock-flow.spec.ts to replace 'lock_unlock' clicks with more specific actions on 'flow_name' and 'lock-flow-switch'. Added necessary clicks on 'canvas_controls_dropdown' and ensured UI updates are properly awaited. This enhances the reliability of the test by ensuring accurate interactions with UI elements.

* [autofix.ci] apply automated fixes

* test: Enhance flow-lock.spec.ts for improved test reliability

Added a wait timeout to ensure UI elements are fully rendered before interactions. Updated the test structure for better clarity and consistency in verifying the flow lock feature, ensuring accurate expectations for lock icon visibility.

* [autofix.ci] apply automated fixes

* test: Add unit tests for various components and improve Jest setup

- Introduced unit tests for FlowMenu, HeaderMenu, CanvasControlsDropdown, EditFlowSettings, LogCanvasControls, and MemoizedComponents to enhance test coverage.
- Updated jest.setup.js with global module stubs to prevent ESM/context issues in unit tests, ensuring smoother test execution.
- Improved test reliability by mocking necessary components and avoiding direct imports that could lead to context issues during testing.

* [autofix.ci] apply automated fixes

* test: Refactor flow-lock and starter-projects tests for improved reliability

- Updated flow-lock.spec.ts to replace click interactions with keyboard actions for toggling the lock switch, enhancing test stability.
- Improved assertions for input states using toBeEnabled and toBeDisabled for clearer intent.
- Increased timeout for waiting on UI elements in starter-projects.spec.ts to ensure proper rendering before interactions, reducing flakiness in tests.

* [autofix.ci] apply automated fixes

* test: Refactor file upload component tests for consistency and readability

- Simplified arrow function syntax in evaluateHandle calls for better clarity.
- Standardized formatting of test expectations to enhance readability.
- Ensured consistent use of timeout options across various assertions to improve test reliability.

* test: Update CanvasControlsDropdown test to improve accessibility

- Replaced div with button in the DropdownMenu mock to enhance accessibility.
- Added aria attributes to the button for better screen reader support and user experience.

* [autofix.ci] apply automated fixes

* feat: Refactor FlowSettingsComponent for improved functionality and testing

- Introduced helper functions to manage flow updates and validation logic.
- Enhanced state management for save button enable/disable conditions.
- Added comprehensive unit tests for FlowSettingsComponent to ensure expected behavior and edge cases.
- Improved code readability and maintainability through restructuring and modularization.

* [autofix.ci] apply automated fixes

* feat: Refactor HelpDropdown component for improved structure and maintainability

- Extracted HelpDropdownView as a separate component to enhance readability and separation of concerns.
- Updated HelpDropdown to utilize the new HelpDropdownView, simplifying its logic.
- Added unit tests for HelpDropdownView to ensure functionality and interaction correctness.
- Improved code organization and modularity for better maintainability.

* [autofix.ci] apply automated fixes

* refactor: streamline code style and improve readability in starter-projects.spec.ts

- Simplified arrow function syntax by removing parentheses where not needed.
- Enhanced conditional logic for handling visibility of elements in the test flow.
- Improved overall code organization for better maintainability.

* [autofix.ci] apply automated fixes

* test: enhance flow lock feature tests for reliability and clarity

- Updated test selectors for consistency and improved readability.
- Replaced keyboard interaction with direct click for enabling the lock switch to reduce flakiness.
- Added conditional check for the save button to ensure it is enabled before clicking.
- Improved wait times for UI elements to enhance test stability.
- Cleaned up code structure for better maintainability.

* [autofix.ci] apply automated fixes

* test: improve flow lock feature test reliability

- Added a conditional check to ensure the lock switch is in the correct state after clicking.
- Enhanced test stability by incorporating an additional click if the state is not as expected.

* test: refine starter-projects.spec.ts for improved clarity and efficiency

- Removed unnecessary wait for the fit_view selector to streamline the test flow.
- Simplified the logic for clicking the fit_view button, enhancing readability and reducing redundancy.

* [autofix.ci] apply automated fixes

* test: further refine starter-projects.spec.ts for consistency and readability

- Simplified arrow function syntax by removing unnecessary parentheses.
- Enhanced code clarity by standardizing the structure of test assertions and interactions.
- Improved overall test flow by ensuring consistent formatting and reducing redundancy.

* [autofix.ci] apply automated fixes

* revert

* revert

* test: enhance readability and consistency in starter-projects.spec.ts and Text Sentiment Analysis.spec.ts

- Simplified arrow function syntax by removing unnecessary parentheses.
- Standardized test assertions and interactions for improved clarity.
- Adjusted text analysis assertion to ensure it checks for a minimum length of 50 characters.
- Added a wait for selector in the starter-projects.spec.ts to ensure proper element visibility before interaction.

* [autofix.ci] apply automated fixes

* refactored starter projects test

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Lucas Oliveira <62335616+lucaseduoli@users.noreply.github.com>
Co-authored-by: Lucas Oliveira <lucas.edu.oli@hotmail.com>
2025-08-25 22:03:52 +00:00
Lucas Oliveira
bd1bec6224
fix: set mcp_composer feature as true by default (#9522)
* Set mcp composer feature flag as default true

* Add env var to .env.example
2025-08-25 21:03:57 +00:00
Jordan Frazier
a642691fb1
feat: encrypt oauth auth settings at rest (#9490)
* encrypt oauth auth settings at rest

* [autofix.ci] apply automated fixes

* Fix rebase changes and add env to env server config

* Correctly unmask secretstr before encryption

* update mcp-composer args

* [autofix.ci] apply automated fixes

* ruff

* ruff

* ruff

* [autofix.ci] apply automated fixes

* ruff

* catch invalidtoken error

* ruff

* [autofix.ci] apply automated fixes

* ruff

* [autofix.ci] apply automated fixes

* ruff

* ruff

* [autofix.ci] apply automated fixes

* ruff

* [autofix.ci] apply automated fixes

* fix test

* [autofix.ci] apply automated fixes

* remove oauth mention in server config

* [autofix.ci] apply automated fixes

* ruff

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-08-25 20:33:49 +00:00
April I. Murphy
9ae41d6251
docs: New theme colors, minimized footer, and slight style changes for readability of certain elements (#9250)
* fix anchor

* footer changes

* remove ifm-background-color

* apply pure back and pure white themes

* thematic link colors

* remove search box redesign to commit it separately

* re-add search box redesign

* remove extra blank line

* change heading font size slightly

* basic tab styling

* navbar-box-shadow

---------

Co-authored-by: Mendon Kissling <59585235+mendonk@users.noreply.github.com>
2025-08-25 19:58:55 +00:00
Deon Sanchez
24ec2bd299
refactor: Add create knowledge button (#9520)
* refactor: Simplify KnowledgeBaseEmptyState component and integrate handleCreateKnowledge function into KnowledgeBasesTab

- Refactored KnowledgeBaseEmptyState to accept handleCreateKnowledge as a prop, removing internal logic for flow creation.
- Updated KnowledgeBasesTab to implement handleCreateKnowledge, enhancing the flow creation process and improving component interaction.

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-08-25 19:09:47 +00:00
Edwin Jose
749768fdb7
feat: enhance structured output handling with new input fields (#9483)
* feat(agent): enhance structured output handling with new input fields and validation

- Added  and  inputs to the AgentComponent for improved structured output formatting.
- Introduced  method to streamline agent setup and memory data retrieval.
- Enhanced  method to support structured output validation against a defined schema.
- Implemented error handling for JSON parsing and validation, ensuring robust output processing.

This update improves the flexibility and reliability of the agent's structured response capabilities.

* feat(agent): enhance structured output handling with new input fields and validation

- Added `format_instructions` and `output_schema` inputs to the AgentComponent for improved structured output formatting.
- Introduced `get_agent_requirements` method to streamline agent setup and memory data retrieval.
- Enhanced `json_response` method to support structured output validation against a defined schema.
- Implemented error handling for JSON parsing and validation, ensuring robust output processing.

This update improves the flexibility and reliability of the agent's structured response capabilities.

* feat(agent): add new input fields for enhanced agent configuration

- Introduced , , and  inputs to the AgentComponent for improved agent configuration and interaction.
- Updated the handling of combined instructions to ensure clarity in agent behavior and output formatting.
- Enhanced JSON schema extraction process with clearer instructions for better structured output.

This update enhances the flexibility and usability of the agent component, allowing for more tailored interactions.

* feat(agent): add new input fields for enhanced agent configuration

- Introduced `agent_llm`, `system_prompt`, and `n_messages` inputs to the AgentComponent for improved agent configuration and interaction.
- Updated the handling of combined instructions to ensure clarity in agent behavior and output formatting.
- Enhanced JSON schema extraction process with clearer instructions for better structured output.

This update enhances the flexibility and usability of the agent component, allowing for more tailored interactions.

* template udpate

* test update

* refactor(tests): streamline mocking of get_agent_requirements in test_agent_component

- Consolidated the mocking of the `get_agent_requirements` method in multiple test cases for improved readability and consistency.
- Simplified the instantiation of `MockResult` objects to enhance clarity in test setup.

This refactor enhances the maintainability of the test code by reducing redundancy.

* [autofix.ci] apply automated fixes

* add new logging

* [autofix.ci] apply automated fixes

* update templates

* Update test_agent_component.py

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Carlos Coelho <80289056+carlosrcoelho@users.noreply.github.com>
2025-08-25 19:01:30 +00:00
Edwin Jose
ae274a3e6d
ref: Refactor vectorstore components structure (#9486)
* Refactor vectorstore components structure

Moved vectorstore components for Chroma, ClickHouse, Couchbase, DataStax, Elastic, Milvus, MongoDB, Pinecone, Qdrant, Supabase, Upstash, Vectara, and Weaviate into dedicated subfolders with __init__.py files for each. Updated Redis vectorstore implementation to reside in redis.py and removed the old vectorstores/redis.py. Adjusted starter project JSONs and frontend constants to reflect new module paths and sidebar entries for these vectorstores.

* Refactor vectorstore components and add lazy imports

Moved Datastax-related files from vectorstores to a dedicated datastax directory. Added lazy import logic to __init__.py files for chroma, clickhouse, couchbase, elastic, milvus, mongodb, pinecone, qdrant, supabase, upstash, vectara, and weaviate components. Cleaned up vectorstores/__init__.py to only include local and faiss components, improving modularity and import efficiency.

* [autofix.ci] apply automated fixes

* Refactor vectorstore components structure

Moved FAISS, Cassandra, and pgvector components to dedicated subdirectories with lazy-loading __init__.py files. Updated imports and references throughout the backend and frontend to reflect new locations. Removed obsolete datastax Cassandra component. Added new sidebar bundle entries for FAISS, Cassandra, and pgvector in frontend constants and style utilities.

* Add lazy imports and Redis chat memory component

Refactored the Redis module to support lazy imports for RedisIndexChatMemory and RedisVectorStoreComponent, improving import efficiency. Added a new redis_chat.py file implementing RedisIndexChatMemory for chat message storage and retrieval using Redis.

* Fix vector store astra imports

* Revert package lock changes

* More test fixes

* Update test_vector_store_rag.py

* Update test_dynamic_imports.py

* Update vector_store_rag.py

* Update test_dynamic_imports.py

* Refactor the cassandra chat component

* Fix frontend tests for bundle

* Mark Local DB as legacy

* Update inputComponent.spec.ts

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Eric Hare <ericrhare@gmail.com>
Co-authored-by: Carlos Coelho <80289056+carlosrcoelho@users.noreply.github.com>
2025-08-25 18:12:49 +00:00
Gabriel Luiz Freitas Almeida
4939801b91
fix(apply_tweaks): skip tweaks to code field and log warning (#9467)
* fix: add security warning for overriding code field in tweaks

* test: add tests for preventing code field overrides in tweaks
2025-08-25 18:10:58 +00:00
Gabriel Luiz Freitas Almeida
8caa5d9225
test: switch to settings-driven cached type API; relax assertions (#9518)
* fix: update import for get_and_cache_all_types_dict and adjust test to use it

* fix: update tests to log component counts without failing for CI compatibility

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-08-25 17:26:48 +00:00
Hamza Rashid
60229628a7
docs(graph): fix typo in comment (#9436)
* docs(graph): fix typo in comment

* [autofix.ci] apply automated fixes

---------

Co-authored-by: April I. Murphy <36110273+aimurphy@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-08-25 17:22:58 +00:00
Lucas Oliveira
795c62ae22
feat: adds api key functionality onto mcp composer (#9498)
* Added API key generation message, removed API key field from backend

* Added api key generation to mcp server tab

* Generate API key if project is configured to have API key auth

* removed isautologin logic

* Updated logic on frontend for when feature flag is disbalewd

* Added should generate api key on backend

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* Changed line clamp of success message

* Added reinstall notice to auth modal

* Changed mcp auth on mcp_projects, allow reinstall on clients

* Allow reinstall of clients

* [autofix.ci] apply automated fixes

* Changed copies

* Removed unused logger

* [autofix.ci] apply automated fixes

* Added type annotation

* Added removed servers type annotation

* Passed unauthorized to test

* Fixed mcp projects to use already existing auth when not api key and not auth_settings

* Updated tests to use user_test_project

* Updated typing

* updated token

* Removed part that unauthenticated if no token is available

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-08-25 17:13:07 +00:00
Ryan Michael
bc82d99907
Initial document describing the Langflow release process. (#9500)
Co-authored-by: Ryan Michael <ryanmichael@Ryans-MacBook-Pro.local>
2025-08-25 10:44:48 -04:00
Arvydas Jonusonis
43812ceda6
fix: incorrect Perplexity API parameter names (#9278)
Co-authored-by: Arvydas Jonusonis <arvydas@jonusonis.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
Co-authored-by: April I. Murphy <36110273+aimurphy@users.noreply.github.com>
2025-08-25 11:01:07 -03:00
Jordan Frazier
bbb0838dda
build: add structlog dep to base package (#9516)
Add structlog dep to base package
2025-08-25 09:59:34 -04:00
Yuqi Tang
d3abfb5b39
fix: change template test to run every time (#9489)
change template test to run every time
2025-08-22 20:41:36 +00:00
Lucas Oliveira
2f9f80f7b6
fix: file upload test (#9502)
* fix: file upload test

* Updated test
2025-08-22 20:10:40 +00:00
Gabriel Luiz Freitas Almeida
877638bbda
fix: move Docling worker to base module and update imports (#9471)
refactor: move docling_worker import to docling_utils for better organization

Co-authored-by: Ítalo Johnny <italojohnnydosanjos@gmail.com>
2025-08-22 18:58:12 +00:00
Gabriel Luiz Freitas Almeida
a1629a7553
feat: migrate from loguru to structlog (#9321)
* refactor: Enhance logging configuration with structured logging and buffer support

* feat: Add structlog dependency for enhanced logging support

* refactor: Update ruff dependency to version 0.12.7 and remove unused pylint references

* Refactor logging imports to use langflow.logging.logger

- Replaced instances of loguru logger with langflow.logging.logger across multiple files.
- Updated logging calls to use asynchronous methods where applicable (e.g., await logger.awarning).
- Ensured consistent logging practices throughout the codebase by standardizing the logger import.

* refactor: Add missing docstring rule to ruff configuration

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* [autofix.ci] apply automated fixes

* fix: update logger calls to use async methods in DatabaseService

* fix: update logger calls to use async methods in initialize_database and session_getter

* fix: update logger calls to use async methods in LangflowRunnerExperimental

* fix: update logger calls to use async methods across various services

* Refactor logging to use asynchronous logger methods across multiple components

- Updated logging calls in  to use async logger methods for error handling and debugging.
- Modified  to utilize async logging for error messages during file deletion.
- Changed logging in , , and other agent-related files to use async methods for error and debug messages.
- Refactored logging in various components including , , , and others to ensure consistent use of async logging.
- Updated , , and  to replace synchronous logging with asynchronous counterparts.
- Ensured all logging changes maintain the original message structure while enhancing performance with async capabilities.

* [autofix.ci] apply automated fixes

* fix: update logger calls to use async methods in various components

* feat: add InterceptHandler to route standard logging messages to structlog

* refactor: remove async_file parameter from logger configuration

* fix: correct log level mapping and enhance log rotation validation

* refactor: remove unused logging import and streamline schema imports

* Refactor logging in AssemblyAI components and other modules to use exc_info for better error tracing

- Updated logging statements in AssemblyAI components (e.g., assemblyai_get_subtitles, assemblyai_lemur, assemblyai_list_transcripts, etc.) to use logger.debug with exc_info=True for improved error context.
- Modified logging in various helper and utility functions to enhance error reporting.
- Ensured consistent logging practices across the codebase for better maintainability and debugging.

* refactor: remove InterceptHandler from logger configuration to avoid recursion

* refactor: enhance test coverage for logger module with comprehensive test cases

* refactor: add rule to ignore mutable objects without __hash__ method in linter

* fix various lint issues

* refactor: update function signatures to improve clarity and consistency

* refactor: streamline import statements and enhance response handling in voice mode

* refactor: simplify lifespan cleanup logic

* refactor: remove unused caplog fixture and improve graph test clarity

* fix: specify logger type as BoundLogger for clarity

* [autofix.ci] apply automated fixes

* refactor: remove unused logger and correct return statement in arun_flow_from_json

* refactor: update logger usage to support async methods in tests

* fix: correct datetime bounds for hypothesis strategies to avoid timezone issues

* fix: update warning message for invalid string input type in tests

* refactor: simplify message handling tests by removing database session mocks

* refactor: remove redundant comment from test_max_size function in test_logger.py

* fix: update patch target for DEV setting in remove_exception_in_production test

* fix: update patch target for DEV setting in remove_exception_in_production test

* fix: update patching of DEV setting in remove_exception_in_production tests to use module import

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-08-22 17:56:07 +00:00
Sandesh R
3ecf9640b7
feat: Added Traceloop SDK for collecting traces and metrics from Langflow (#9317)
* Added Traceloop SDK for colecting traces and metrics from Langflow

* [autofix.ci] apply automated fixes

* added test case for traceloop

* Revert "[autofix.ci] apply automated fixes"

This reverts commit 3a68113f0de65b2397ac88d1fc2cae8f786adbd7.

* Updated logic for verifying returned callbacks list length

* [autofix.ci] apply automated fixes

* api key strip validation and updated logger warning

* Add graceful fallback for Traceloop LangChain callback handler

* Removed TraceloopLangChainCallbackHandler

* default URL moved to configuration constant

* add Timeout Protection to add trace method

* add resource cleanup method for traceloop

* fix(tracing): unify span lifecycle and fix async mismatch in TraceloopTracer

- Remove incorrect asyncio.wait_for usage on synchronous method
- Store active spans in _span_map to properly end them in end_trace
- Prevent duplicate unrelated spans for same component
- Use trace.get_tracer_provider().force_flush() for correct flushing
- Add explicit close() method for manual flush at shutdown
- Enforce HTTPS in TRACELOOP_BASE_URL validation
- Improve reliability of cleanup in __del__

* stable uv.lock from upstream/main

* Fix: ensure type-safe metadata handling

* Block PYMYSQL intrumentor and relaxed https constraint

* fix(tracing): handle invalid input/output type conversion for traceloop attributes

* fix: Reduced cognitive complexity of get_trace_as_metadata method

* fix: organize child spans under single root span and added type conversion methods

* fix: Linting and formatting

* uv.lock reset to upstream main

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Sandesh R <sandesh@ibm.com>
2025-08-22 16:37:24 +00:00
Ítalo Johnny
2f06fa9d4d
fix: preserve user-selected model when updating available options (#9495) 2025-08-22 16:35:26 +00:00
Gabriel Luiz Freitas Almeida
72ad30ede3
build: add .dockerignore and move docling from runtime to dev deps (#9469)
* feat: add .dockerignore to exclude build artifacts and environment files

* feat: move docling to main dependencies and remove docling extra
2025-08-22 14:00:37 +00:00
Uday Sidagana
8af190902c
fix: Composio base to handle dataframe response correctly (#9427)
* fix: df handling

* fix: format

---------

Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
2025-08-22 09:56:47 +00:00
Eric Hare
462b630de4
feat: Add support for advanced parsing with docling in the File Component (#9398)
* Docling support for file component

* Name as previous

* Update logic of file path value

* [autofix.ci] apply automated fixes

* Fix two errors in linting

* Latest file component updates

* [autofix.ci] apply automated fixes

* Ruff updates

* [autofix.ci] apply automated fixes

* Clean up error handling

* Fix ruff issue

* Update src/backend/base/langflow/components/data/file.py

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* [autofix.ci] apply automated fixes

* Clean up message for advanced parsing

* [autofix.ci] apply automated fixes

* Update file.py

* [autofix.ci] apply automated fixes

* Update file.py

* [autofix.ci] apply automated fixes

* Update file.py

* [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>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-08-22 04:58:37 +00:00
Mike Fortman
fd9f8c5711
refactor: Update MCP composer auth to just api and oauth (#9487)
* Update auth to just api and oauth

* schema push

* pr comment fix
2025-08-21 20:57:04 -05:00
Eric Hare
59937ee9e7
feat: Make knowledge bases user-stored and support global vars (#9458)
* feat: Make knowledge bases user-stored

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* Fix ruff error

* [autofix.ci] apply automated fixes

* Reuse code

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* Don't show options by default

* [autofix.ci] apply automated fixes

* Pass in the Langflow API key if set

* [autofix.ci] apply automated fixes

* Update files.py

* [autofix.ci] apply automated fixes

* Properly handle secret retrieval

* [autofix.ci] apply automated fixes

* Update src/backend/base/langflow/base/data/kb_utils.py

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* Update src/backend/base/langflow/base/data/kb_utils.py

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* Update src/backend/base/langflow/components/data/kb_ingest.py

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* Feedback from review

* [autofix.ci] apply automated fixes

* Fix other uses of incorrect user

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* Feedback from review 2

* [autofix.ci] apply automated fixes

* Update kb_ingest.py

* [autofix.ci] apply automated fixes

* Update tests

* [autofix.ci] apply automated fixes

* Update kb_ingest.py

* [autofix.ci] apply automated fixes

* Fix mypy issues

* [autofix.ci] apply automated fixes

* Update kb_utils.py

* Update test_kb_ingest.py

* Fix tests

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-08-21 23:30:54 +00:00
Eric Hare
2475e5a254
feat: Move Vector Stores to Bundle (#9475)
* feat: Move Vector Stores to Bundle

* [autofix.ci] apply automated fixes

* Update src/frontend/src/icons/vectorstores/index.tsx

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Update tests for new sidebar layout

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-08-21 20:51:34 +00:00
Eric Hare
a44130d3c3
fix: Manage multi-region databases and better handle lexical search in Astra DB (#9385)
* Fix display of reranker and lexical terms

* API endpoint selection enabled

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* Update src/backend/base/langflow/components/vectorstores/astradb.py

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Update src/backend/base/langflow/components/vectorstores/astradb.py

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* [autofix.ci] apply automated fixes

* Update astradb.py

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-08-21 19:08:47 +00:00
Deon Sanchez
3cd9ba688e
refactor: Update KnowledgeBaseEmptyState component text and structure (#9456)
* refactor: Update KnowledgeBaseEmptyState component text and structure

- Changed header text from "No knowledge bases" to "Welcome to Knowledge Base!" for improved user engagement.
- Updated description to clarify the action of creating a knowledge base.
- Renamed button text from "Create Knowledge" to "New Knowledge Base" for consistency and clarity.
- Reorganized imports for better readability.

* [autofix.ci] apply automated fixes

* grammar

* fix: Reintroduce useParams import and enhance KnowledgeBaseEmptyState description

- Added missing import for useParams from react-router-dom.
- Updated description text to specify "reusable knowledge bases" for clarity.

* [autofix.ci] apply automated fixes

* fix: Update KnowledgeBaseEmptyState button text for clarity

- Changed button text from "New Knowledge Base" to "New Knowledge Base template" to provide clearer context for users.

* feat: Add Array.prototype.toSorted polyfill and update tests for BundleItem and SidebarBundles components

- Implemented a polyfill for Array.prototype.toSorted to ensure compatibility in Jest environment.
- Updated tests for BundleItem to reflect that the component should render even when dataFilter has no items.
- Adjusted SidebarBundles tests to confirm correct rendering behavior with empty dataFilter and provided dataFilter scenarios.

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-08-21 18:13:56 +00:00
github-actions[bot]
34d411c1bb
docs: OpenAPI spec version upgraded from 1.5.0.post1 to 1.5.0.post2 (#9430)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
Co-authored-by: Mendon Kissling <59585235+mendonk@users.noreply.github.com>
2025-08-21 17:54:37 +00:00
bingchuan
74080df2af
fix: Use Runnable's asynchronous methods to prevent blocking (#9466)
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-08-21 14:16:00 -03:00
Mendon Kissling
8c74c98b8d
docs: clarify adding custom packages to REPL component (#9450)
clarify-custom-packages
2025-08-21 16:44:38 +00:00
Mendon Kissling
5099ffcab8
docs: custom component directory requires an init.py file (#9447)
* add-init-py-to-examples

* add-troubleshooting

* remove-extra-comment
2025-08-21 16:41:39 +00:00
Jason Liu
43119d0d18
fix: use correct import for EventManager (#9408)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-08-21 09:18:43 -03:00
Ítalo Johnny
ea918df11d
refactor(docling): extract processing logic to separate worker process (#9393)
* refactor(docling): extract processing logic to separate worker process

- Move Docling processing to dedicated worker function
- Preserve all original pipeline configuration logic
- Maintain support for standard and VLM pipelines
- Keep complete OCR engine configuration
- Add proper error handling for multiprocessing context

* Update src/backend/base/langflow/components/docling/__init__.py

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Update src/backend/base/langflow/components/docling/__init__.py

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* [autofix.ci] apply automated fixes

* Update src/backend/base/langflow/components/docling/__init__.py

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Update src/backend/base/langflow/components/docling/docling_inline.py

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* [autofix.ci] apply automated fixes

* feat: add process monitoring and timeout handling

* fix: ruff check

* feat: add graceful signal handling to docling worker

* friendlier error message

* Swallow stack trace on interrupt

* [autofix.ci] apply automated fixes

* fix: ruff error

* fix: mypy error

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Jordan Frazier <jordan.frazier@datastax.com>
2025-08-20 16:56:21 +00:00
Eric Hare
e63e879af6
fix: Use the identifier column as hash if available (#9405)
* fix: Use the identifier column as hash if available

* Update kb_ingest.py

* [autofix.ci] apply automated fixes

* Update src/backend/base/langflow/components/data/kb_ingest.py

Co-authored-by: Edwin Jose <edwin.jose@datastax.com>

* [autofix.ci] apply automated fixes

* [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>
2025-08-19 21:21:41 +00:00
Eric Hare
0b78ccd4de
fix: Adjust uniqueness constraint on file names (#9014)
* fix: Adjust uniqueness constraint on file names

* Update 1cb603706752_modify_uniqueness_constraint_on_file_.py

* Update 1cb603706752_modify_uniqueness_constraint_on_file_.py

* Update 1cb603706752_modify_uniqueness_constraint_on_file_.py

* Update 1cb603706752_modify_uniqueness_constraint_on_file_.py

* Add index on user id

* Update 1cb603706752_modify_uniqueness_constraint_on_file_.py

* Update 1cb603706752_modify_uniqueness_constraint_on_file_.py

* Update model.py

* Update 1cb603706752_modify_uniqueness_constraint_on_file_.py

* Add duplicate check on upgrade

* Update 1cb603706752_modify_uniqueness_constraint_on_file_.py

* Update 1cb603706752_modify_uniqueness_constraint_on_file_.py

* Update 1cb603706752_modify_uniqueness_constraint_on_file_.py

* Add aiosqlite as dep

* Fix authentication for non-super user envs

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* Fix mypy issues

* Update News Aggregator.json

* Update save_file.py

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-08-19 20:50:18 +00:00
Edwin Jose
fbb0012045
fix: silent error fix in KB components (#9433)
* silent error fix

* silent error fix

* Raise value error if configured column is not available

* [autofix.ci] apply automated fixes

* Remove silent error tests with option gone

* Update test_kb_ingest.py

---------

Co-authored-by: Eric Hare <ericrhare@gmail.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-08-19 20:03:54 +00:00
Lucas Oliveira
bb01fd00fc
fix: remove duplicate embeddings category, refactor render code (#9446)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-08-19 15:33:28 -03:00
jeevi cao
a973e747cb
feat: set default utc timezone for postgresql in DatabaseService (#8112)
Co-authored-by: tianzhipeng <tzpabc@gmail.com>
2025-08-18 16:31:05 -03:00
Yuqi Tang
ec7579d578
feat: Add exception telemetry (#9194)
* add template tests

* remove files

* adding validate flow build

* add validate endpoint and flow execution

* Update .github/workflows/template-tests.yml

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Update src/backend/base/langflow/utils/template_validation.py

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* [autofix.ci] apply automated fixes

* change workflow running

* add ci

* fix test

* fix test

* delete when push

* fix: Exclude template tests from unit test bundle

Template tests are already run separately in CI via the test-templates job.
This change prevents duplicate execution and eliminates timeout failures
in the unit test suite by excluding slow template execution tests.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* fix: Exclude template tests from unit test bundle

Template tests are already run separately in CI via the test-templates job.
This change prevents duplicate execution and eliminates timeout failures
in the unit test suite by excluding slow template execution tests.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* fix: Exclude template tests from unit test bundle

Template tests are already run separately in CI via the test-templates job.
This change prevents duplicate execution and eliminates timeout failures
in the unit test suite by excluding slow template execution tests.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* fix: Remove remaining merge conflict markers

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* fix: Improve validate.py unit tests to eliminate CI failures

Fixed 4 failing tests in test_validate.py:
- test_code_with_syntax_error: Better error message handling for syntax errors
- test_raises_error_for_missing_function: Handle StopIteration along with ValueError
- test_creates_simple_class: Use optional constructor parameter to avoid TypeError
- test_handles_validation_error: Use proper ValidationError constructor from pydantic_core
- test_creates_context_with_langflow_imports: Remove invalid module patching
- test_creates_mock_classes_on_import_failure: Use proper import mocking

All 50 validate tests now pass consistently, improving CI stability.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* enhance: Add comprehensive edge case tests for template_validation.py

Added 6 additional test cases to improve coverage of template_validation.py:
- test_validate_stream_exception: Tests Graph.validate_stream() exception handling
- test_code_validation_other_exceptions: Tests TypeError/KeyError/AttributeError handling
- test_vertices_sorted_without_end_vertex_events: Tests variable usage tracking
- test_vertex_count_tracking: Tests vertex_count increment paths
- test_empty_lines_in_stream: Tests empty line handling in event streams
- test_event_stream_validation_exception: Tests exception handling in _validate_event_stream

These tests target the remaining 7 uncovered lines to maximize coverage percentage.
Total tests: 40 (all passing)

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* feat: Add telemetry for unhandled exceptions

Add comprehensive exception telemetry to capture and send unhandled
exceptions to Scarf analytics for better error tracking and debugging.

Features:
- ExceptionPayload schema with type, message, context, and stack hash
- TelemetryService.log_exception() method for exception logging
- Integration in FastAPI exception handlers and lifespan events
- Stack trace hashing for grouping similar exceptions
- Respects existing do_not_track privacy settings

Context tracking:
- "handler" - exceptions in HTTP request processing
- "lifespan" - exceptions during app startup/shutdown

Sends data to: https://langflow.gateway.scarf.sh/exception

Includes comprehensive unit and integration tests covering all
functionality and edge cases.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* fix: Improve exception telemetry implementation

- Replace MD5 with SHA256 for better security practices
- Use contextlib.suppress instead of try-except-pass patterns
- Fix telemetry_service scope issue in lifespan function
- Improve test exception handling to follow best practices
- All linting checks now pass with proper code style

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* refactor the exception logging

* [autofix.ci] apply automated fixes

* update comment

* use mock url

* fix: remove telemetry logging for lifespan cancellation during shutdown

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-08-18 17:28:13 +00:00
Abhishek Patil
f6e6edbc37
feat: update Composio components (#8868)
Co-authored-by: Uday-sidagana <uday.sidgana@gmail.com>
Co-authored-by: Uday Sidagana <udaysidagana@Mac.lan>
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
Co-authored-by: Uday Sidagana <129588963+Uday-sidagana@users.noreply.github.com>
2025-08-18 12:57:13 -03:00
Mike Fortman
590682d748
refactor: flowSidebarComponents folder structure refactor and add test coverage (#9383)
* refactor and test coverage

* code issue cleanup

* test and coverage fixes

* fix test + pr comments

* cleanup

* test debugging

* cleanup

* try again

* No logs

* fix test
2025-08-18 09:52:07 -05:00
Gabriel Luiz Freitas Almeida
2c405f77e7
feat(utils): add code hash generation and module name in Custom Components (#9107)
* refactor: update _generate_code_hash function and enhance module name handling

- Removed the class_name parameter from _generate_code_hash for improved clarity and simplicity.
- Added a new function, get_module_name_from_display_name, to generate module names from display names in snake_case.
- Updated build_custom_component_template_from_inputs to use the new module name generation logic when module_name is None.
- Enhanced error handling in code hash generation to log exceptions appropriately.
- Updated unit tests to reflect changes in the _generate_code_hash function and to verify the new module name generation functionality.

* fix: enhance module name handling and error logging in build_custom_component_template

- Added logic to derive module names from display names when not provided, improving metadata accuracy.
- Refined error handling for code hash generation, ensuring exceptions are logged appropriately for better debugging.

* test: add comprehensive unit tests for metadata generation in custom components

- Introduced multiple tests to ensure that the `build_custom_component_template` function consistently generates metadata, including module names and code hashes, across various scenarios.
- Verified that metadata is correctly returned when module names are provided or omitted, and that code hashes change with component code modifications.
- Included tests for handling unicode characters in component code to ensure robustness in metadata generation.

* test: update unit tests to use Component class for metadata generation

- Refactored test cases to replace the CustomComponent with the new Component class, ensuring consistency in testing metadata addition in template builders.
- Adjusted mock component attributes to align with the updated class structure, enhancing clarity and maintainability of the tests.

* test: add unit tests for custom component metadata retrieval and consistency

- Introduced new tests for the /custom_component endpoint to verify that it returns accurate metadata, including module names and code hashes.
- Ensured that identical component code produces consistent metadata across multiple requests, enhancing the reliability of the custom component functionality.

* refactor: improve error logging in code hash generation

- Updated error logging in `build_custom_component_template_from_inputs` and `build_custom_component_template` to use debug level with exception context, enhancing clarity for debugging while reducing log noise.
- This change aims to provide more detailed insights during error occurrences without cluttering the error logs.
2025-08-18 13:56:29 +00:00
April I. Murphy
cfb29134bb
docs: Update, refresh, and expand Vector Store and Processing component documentation (#9407)
* fix anchors

* type convert and structured output components

* vector store intro and flow example

* reorg some vector search components by provider

* still on vector stores

* vector store example and outputs

* finish vector store page

* corrections to astra db vector store

* start split text component

* save file and smart function

* llm router

* parser

* still on dataframe

* finish datafram ops

* remove-extra-kv-pair-and-clarify-serialization-from-python

---------

Co-authored-by: Mendon Kissling <59585235+mendonk@users.noreply.github.com>
2025-08-18 13:46:47 +00:00
April I. Murphy
e0816e58a2
docs: Correct the instructions for additional language models that aren't built-in to the primary Language Model component. (#9406)
* fix language about bundled models

* Apply suggestions from code review

---------

Co-authored-by: Mendon Kissling <59585235+mendonk@users.noreply.github.com>
2025-08-18 13:29:47 +00:00
psy42a
93517fa3b6
fix: mask Component Secrets in trace logs (#8204)
Co-authored-by: psy42a <17905361+psy42a@users.noreply.github.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>
2025-08-18 10:11:12 -03:00