Commit graph

16,022 commits

Author SHA1 Message Date
Mendon Kissling
43b65b59ce
docs: contributing page links (#8316)
* add-contributing-links

* style

* correct-url

* Apply suggestions from code review

Co-authored-by: KimberlyFields <46325568+KimberlyFields@users.noreply.github.com>

* link-names

---------

Co-authored-by: KimberlyFields <46325568+KimberlyFields@users.noreply.github.com>
2025-06-04 17:57:42 +00:00
Ítalo Johnny
227a091211
fix: apikey lock issue and add option to disable tracking (#8361)
* fix(api-key): avoid row-level locks by disabling usage tracking

* [autofix.ci] apply automated fixes

* chore: move parameter handling to settings service

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-06-04 17:05:55 +00:00
Mendon Kissling
5abb545c4d
docs: add typescript client (#8195)
* install

* run-flow-complete

* unneeded-const

* extend-starter-example

* cleanup

* more-cleanup

* response-tabs

* Apply suggestions from code review

Co-authored-by: Phil Nash <philnash@gmail.com>

* cleanup

* update-logging-example

* remove-line-and-reduce-padding

* remove-tab

* logging-example-updated-for-0.3.0

* clarify-quickstart

* Update docs/docs/Develop/Clients/typescript-client.md

* style-review

* spelling

* link-clarity

---------

Co-authored-by: Phil Nash <philnash@gmail.com>
2025-06-04 13:33:56 +00:00
Gabriel Luiz Freitas Almeida
8925c86853
fix: Add os.stat to blocklist for _load_revisions in alembic script (#8365) 2025-06-04 09:08:32 -03:00
Eric Hare
9aaca68687
fix: Refactor a few more components to proper folders (#8324)
* fix: Refactor a few more components to proper folders

* Rename action for load files

* [autofix.ci] apply automated fixes

* Update tests for new naming

* Update video_file.py

* Update video_file.py

* Update video_file.py

* Update test_batch_run_component.py

* Move unit tests

* Update test_structured_output_component.py

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Yuqi Tang <yuqi.tang@datastax.com>
2025-06-03 23:35:46 +00:00
Edwin Jose
644bc87eca
fix: api request component curl mode error (#8353)
* Update api_request.py

* Update api_request.py

* [autofix.ci] apply automated fixes

* Update Pokédex Agent.json

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Eric Hare <ericrhare@gmail.com>
2025-06-03 23:04:40 +00:00
Yuqi Tang
7feba692b1
fix: Revert Typescript Shards (#8359)
revert typescript shards
2025-06-03 22:27:02 +00:00
Eric Hare
4d1112386f
feat: Add Google as an option for genai (#8358) 2025-06-03 22:02:59 +00:00
Edwin Jose
7e5126dcd6
ref: Deprecate pass message component (#8351)
* Update pass_message.py

* Update src/backend/base/langflow/components/logic/pass_message.py

Co-authored-by: Eric Hare <ericrhare@gmail.com>

---------

Co-authored-by: Eric Hare <ericrhare@gmail.com>
Co-authored-by: Yuqi Tang <yuqi.tang@datastax.com>
2025-06-03 21:59:23 +00:00
Mike Fortman
c4ca2bb1da
fix: only allow custom vals and options to be in the options list (#8356)
* only allow customvals and options to be in the options list

*  (general-bugs-dropdown-select-not-in-list.spec.ts): add additional test cases to cover dropdown selection functionality and ensure correct behavior in the frontend application

---------

Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
2025-06-03 21:19:01 +00:00
Edwin Jose
68f4905e2a
fix: change LoopComponent data input to DataFrame type and update display name (#8297)
* Update loop.py

* [autofix.ci] apply automated fixes

* Update loop-component.spec.ts

* change dataframe input name to inputs

* [autofix.ci] apply automated fixes

* 🐛 (typescript_test.yml): increase the maximum shard count to 40 to improve test distribution and efficiency

* 🔧 (typescript_test.yml): adjust optimal shard count calculation to use a maximum of 10 shards instead of 40 for better test distribution
🐛 (loop-component.spec.ts): fix getByTestId selector to match the updated element ID for testing purposes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Yuqi Tang <yuqi.tang@datastax.com>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
2025-06-03 19:49:24 +00:00
Edwin Jose
5174c0638d
ref: ConditionalRouter Initialization with Case Sensitivity and renaming inputs (#8337)
* Update conditional_router.py

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-06-03 18:58:53 +00:00
Yuqi Tang
c5ec3f65e9
fix: Remove id generator (#8325)
* remove id generator

* fix test

* [autofix.ci] apply automated fixes

* update test

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
2025-06-03 17:59:49 +00:00
Yuqi Tang
07284891cb
feat: Update components input/output display name and descriptions (#8284)
* create an IO bundle

* Update styleUtils.ts

* [autofix.ci] apply automated fixes

* change folder names

* [autofix.ci] apply automated fixes

* Update test_endpoints.py

* refactor: update test IDs for input/output components in specs

* test: update test IDs for chat input/output components in decisionFlow.spec.ts

* test: update test IDs for input/output components in generalBugs-shard-5.spec.ts

* Update styleUtils.ts

* fix input and output

* update input and output

* 🐛 (typescript_test.yml): increase the maximum shard count to 40 to improve test distribution and efficiency

* fix FE Tests Input output component Ids

* [autofix.ci] apply automated fixes

*  (filterEdge-shard-1.spec.ts): update test to log error message when element is not visible before asserting visibility

*  (notifications.spec.ts): update test selectors for better clarity and consistency in the notifications feature test suite

* fix conflicts

* update json

* update jsons

* update test chat output

* fix tests

* fix fe tests

* update test

* update json

* [autofix.ci] apply automated fixes

* fix tests

* fix tests

* [autofix.ci] apply automated fixes

* update tests

* update test

* [autofix.ci] apply automated fixes

* fix tests

* fix format

* [autofix.ci] apply automated fixes

* fix test

---------

Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: deon-sanchez <deon.sanchez@datastax.com>
Co-authored-by: Deon Sanchez <69873175+deon-sanchez@users.noreply.github.com>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
2025-06-03 17:52:21 +00:00
Abhishek Patil
f835a6b4dd
feat: Add Composio Outlook component (#7987)
* feat: add Composio Outlook component

* feat: add Composio Outlook component

* feat: add outlook test file

* chore: remove file

* fix: format

* fix: add result_field to improve toolcall response

* Update src/frontend/src/icons/outlook/outlook.jsx

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

---------

Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-06-03 16:28:24 +00:00
Gabriel Luiz Freitas Almeida
c0c08841ce
ci(docker): update Buildx setup to use BuildKit container backend (#8320) 2025-06-03 13:18:49 -03:00
Gabriel Luiz Freitas Almeida
f21d23fb58
perf: Optimize JobQueueService for performance and clarity improvements (#6690)
* ️ Speed up method `JobQueueService.create_queue` by 630% in PR #5940 (`refactor-build-flow`)
Certainly! To optimize the provided `JobQueueService` class to run faster, we should ensure the code efficiency in creating event managers and handling queues. We can speed up the process by making the following changes.

1. Remove redundant logger calls if they don't provide essential debugging or monitoring information.
2. Inline `create_default_event_manager` function to avoid redundant function calls while ensuring that the `EventManager` setup remains efficient.
3. Ensure faster dictionary access and error message handling.

Here is the rewritten and optimized code.

In this optimization.
1. The `create_queue` method was streamlined to reduce redundancy checks and fewer logger messages.
2. The `create_default_event_manager` function is integrated directly as `_create_default_event_manager` private method within the class.
3. Utilized list iteration instead of multiple function calls to register events efficiently in the `EventManager`.

These changes aim to maintain functionality while improving performance where possible, particularly in the setup process.

* fix: improve error messages in JobQueueService for better clarity

* [autofix.ci] apply automated fixes

* refactor: Relax event type constraint in EventManager

Change event type from a strict literal to a more flexible string type, allowing for greater extensibility in event registration

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes

* fix: update send_event method to use str for event_type

* fix: change event_type parameter to str and handle invalid types in create_event_by_type

* fix: Add noqa comment to suppress linting warning for access_host assignment

---------

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>
2025-06-03 15:57:25 +00:00
Gabriel Luiz Freitas Almeida
8fb9750a7b
fix: Fix Anthropic output processing and update dependency (#8283)
* chore: update langchain-anthropic dependency to version 0.3.14 and adjust revision in uv.lock

* fix: add workaround for handling function calling in Anthropic output processing

* Fix indentation

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

* fix: remove duplicate error message in _extract_output_text function

* fix: update _build_llm_model to handle missing attributes gracefully

* fix: handle max_tokens default value and improve error handling in AnthropicModelComponent

* fix: enhance input handling in Component class to manage deepcopy errors

* fix: add 'no_blockbuster' marker to pytest configuration for improved test control

* fix: refactor agent component tests to include all OpenAI and Anthropic models, improving validation and error reporting

* fix: update agent components to include pydantic validation and improve error handling across multiple starter projects

* fix: set default max_tokens value in AnthropicModelComponent and improve API URL handling

* fix: enhance error reporting in AgentComponent tests by capturing exceptions and response discrepancies for all Anthropic models

* chore: update package versions in uv.lock, including alembic, arize-phoenix-otel, bce-python-sdk, boto3-stubs, botocore-stubs, tornado, and others for improved compatibility and features

* fix: update agent components across multiple starter projects to include new imports and improve error handling

* fix: streamline max_tokens handling in AnthropicModelComponent for improved clarity and robustness

* [autofix.ci] apply automated fixes

* fix: update artifacts_raw type to allow None for better flexibility

* fix: initialize artifacts_raw as an empty dict if None to prevent errors

* fix: specify type for similarity_score to enhance type safety and clarity

* fix: refactor JSON parsing to improve variable naming and clarity

* fix: skip flaky test in Portfolio Website Code Generator until stabilized

---------

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: Edwin Jose <edwin.jose@datastax.com>
2025-06-03 14:58:13 +00:00
dependabot[bot]
ae6f3429f0
build(deps): bump esbuild from 0.21.5 to 0.25.0 in /src/frontend (#6257)
Bumps [esbuild](https://github.com/evanw/esbuild) from 0.21.5 to 0.25.0.
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG-2024.md)
- [Commits](https://github.com/evanw/esbuild/compare/v0.21.5...v0.25.0)

---
updated-dependencies:
- dependency-name: esbuild
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
2025-06-03 13:59:04 +00:00
Lucas Oliveira
fe423d9e59
fix: changed host to be localhost on exhibition if host is 0.0.0.0 (#8335)
changed host to be localhost on exhibition if host is 0.0.0.0
2025-06-03 13:01:30 +00:00
Gabriel Luiz Freitas Almeida
bdc7587930
ci: fix uv cache in CI workflows (#8319) 2025-06-03 09:50:18 -03:00
Dexter192
9191773957
fix: Allow upload limit increase in kubernetes deployment (#7664)
* Add nginx body size upload limit config

* Add nginx body size upload limit config

* Rename env variable to match existing max upload

* Rename env variable to match existing max upload

* Add export of Max_file_size_upload variable

* Add unit to max body size

* Remove unit from default assignment

* Apply comments and move config to default nginx conf template

---------

Co-authored-by: daniel.kaestner <daniel.kaestner@cas.de>
Co-authored-by: Dexter192 <DanielKaestner@otlook.de>
2025-06-03 11:53:08 +00:00
yihong
61e345a029
fix: wrong command in Makefile since drop poetry (#6745)
* fix: wrong command in Makefile since drop poetry

Signed-off-by: yihong0618 <zouzou0208@gmail.com>

* fix: address comments

Signed-off-by: yihong0618 <zouzou0208@gmail.com>

* fix: update Makefile to use uvx for codespell commands

---------

Signed-off-by: yihong0618 <zouzou0208@gmail.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-06-03 11:33:31 +00:00
dependabot[bot]
7e1452149c
chore(deps): bump tar-fs from 2.1.2 to 2.1.3 in /src/frontend (#8332)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-03 08:36:21 -03:00
Gabriel Luiz Freitas Almeida
a276c2de48
fix: Refactor MCP API to fix value truncation (#8298)
* refactor: Simplify flow execution and update input handling in MCP API

- Replaced `InputValueRequest` with `SimplifiedAPIRequest` for cleaner input management.
- Updated flow execution logic to utilize `simple_run_flow`, enhancing clarity and performance.
- Removed unnecessary background task handling and streamlined progress updates.
- Improved message collection from flow outputs, ensuring robust handling of results.

* fix: Add error handling for tool execution in MCP API

- Implemented a try-except block around the flow execution to catch and handle exceptions gracefully.
- Enhanced message collection logic to ensure that errors during tool execution are communicated back as text content.
- Improved robustness of the `handle_call_tool` function by ensuring all potential errors are captured and reported.

* fix: Improve error messaging in tool execution for MCP API

- Updated error handling in the `handle_call_tool` function to provide more descriptive error messages.
- Changed the error message format to include the flow name, enhancing clarity for debugging purposes.
- Ensured that all exceptions during tool execution are captured and reported as text content.

* refactor: Enhance message and result handling in handle_call_tool

- Improved the logic for processing outputs in the `handle_call_tool` function to handle messages and results more comprehensively.
- Streamlined the collection of text content from both messages and results, ensuring all relevant outputs are captured.
- Enhanced robustness by ensuring that all outputs are processed, regardless of their structure.

* refactor: Improve progress notification handling in handle_call_tool

- Updated the logic for progress task creation in the `handle_call_tool` function to ensure it only initializes when progress notifications are enabled and a progress token is present.
- Enhanced the cancellation and exception handling of the progress task to prevent potential errors when it is not created.
- Improved overall robustness of the function by ensuring that progress updates are managed correctly based on the current context.

* refactor: Streamline flow execution and message handling in ProjectMCPServer

- Replaced `InputValueRequest` with `SimplifiedAPIRequest` for improved input management.
- Updated flow execution to utilize `simple_run_flow`, enhancing clarity and performance.
- Refined progress notification handling to ensure tasks are only created when necessary.
- Improved message collection from flow outputs, ensuring robust handling of both messages and results.
- Enhanced error handling during tool execution to provide clearer feedback on failures.

* refactor: enhance progress update handling in ProjectMCPServer

Updated the send_progress_updates function to accept a progress token as an argument, improving its flexibility. Adjusted the task cancellation logic to use asyncio.gather for better exception handling. This change aims to streamline progress notifications when enabled.

* refactor: add group_outputs property to message configurations in starter projects
2025-06-02 21:32:31 +00:00
Lucas Oliveira
0896f51983
fix: added truncation length as constant and reduced it to 100 (#8321)
* Added truncation items as constant and reduced it to 100

* Added truncation test to regression

* get max items length from config

* changed typo in backend
2025-06-02 21:30:11 +00:00
Gabriel Luiz Freitas Almeida
4a0279f56f
refactor: update NVIDIA System-Assist client initialization and error handling (#8278)
* refactor: Improve NVIDIA System-Assist client initialization and error handling

- Updated the `maybe_register_rise_client` method to enhance error handling and remove unnecessary context management.
- Clarified the component description to specify Windows-only support.
- Improved input prompt information with an example for better user guidance.

* refactor: use constant for rise_initialized key in NvidiaSystemAssistComponent

Replaced hardcoded string with a constant for the rise_initialized key to improve code readability and maintainability.
2025-06-02 20:38:39 +00:00
Edwin Jose
360836800d
feat: add convert component with dynamic output support (#7773)
* Create convertor.py

* [autofix.ci] apply automated fixes

* convert component

* [autofix.ci] apply automated fixes

* add Type_conversion base class with dispatchers for performance based conversion

* fix lint issues

* add type_convertor test

* [autofix.ci] apply automated fixes

* update tests

* fix tests

* update with auto conversion methods

* update function to component file

* feat: enhance input validation for Data, DataFrame, and Message types

* test: add unit tests for DataInput, MessageInput, and DataFrameInput data conversion

* updated changes to use type classes

* [autofix.ci] apply automated fixes

* add convert logic

* update converts

* Update converter.py

* [autofix.ci] apply automated fixes

* revert converter.py

* Update inputs.py

* Update test_inputs.py

* update to logic

* Update test_type_convertor_component.py

* update converter

* [autofix.ci] apply automated fixes

* refactor: rename conversion functions for clarity

Updated function names for converting inputs to Message, Data, and DataFrame types to improve readability and consistency. The changes include renaming `get_message_converter` to `convert_to_message`, `get_data_converter` to `convert_to_data`, and `get_dataframe_converter` to `convert_to_dataframe`. Additionally, added a check for dictionary input in the data conversion function.

* fix: add TYPE_CHECKING for conditional imports in message.py

Introduced TYPE_CHECKING to optimize imports for the DataFrame type, ensuring that the import only occurs during type checking. This change enhances performance and maintains compatibility with static type checkers.

* refactor: simplify data conversion methods in Message class

Removed unnecessary parameters from the `to_data` and `to_dataframe` methods in the Message class, enhancing clarity and reducing complexity. The methods now directly use instance attributes, improving code readability and maintainability.

* refactor: enhance DataFrame methods for clarity and type safety

Updated the `to_data` and `to_message` methods in the DataFrame class to improve clarity and type safety. The `to_data` method now directly converts the DataFrame to a Data object without parameters, and the `to_message` method uses the instance's data directly. Added TYPE_CHECKING for conditional imports to optimize performance and maintain compatibility with static type checkers.

* refactor: streamline Data class methods for improved clarity

Refactored the `to_message` and `to_dataframe` methods in the Data class to eliminate unnecessary parameters and directly utilize instance attributes. This change enhances code readability and maintainability while ensuring type safety with the appropriate imports for Message and DataFrame. Additionally, updated the logic to access instance data more intuitively.

* refactor: simplify conversion method calls by removing redundant arguments

* rename test file

* refactor: remove obsolete test file for data conversion

* refactor: add support for converting dictionary to DataFrame

---------

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: Carlos Coelho <80289056+carlosrcoelho@users.noreply.github.com>
Co-authored-by: Yuqi Tang <yuqi.tang@datastax.com>
2025-06-02 20:06:56 +00:00
Gabriel Luiz Freitas Almeida
d50c90522e
fix: correct loop component dependencies (#8091)
* feat: Minimal experiment with zipping pre- and post-loop lists

Update test JSON to demonstrate a simple workflow using custom components for sequence generation and zipping, with a loop component to process the data. The changes include:

- Replaced previous components with custom components
- Added a sequence maker component
- Added a zipper component
- Configured loop component to work with the new components
- Updated flow description and last tested version

* feat: Refactor Loop Test workflow with enhanced component interactions

Update LoopTest.json to demonstrate a more complex data processing workflow:
- Modify MyZipper component to return Message instead of Data
- Update Loop component's stop condition logic
- Adjust node positions and connections
- Upgrade last tested version to 1.2.0

* test: Enhance Loop Component Test with JSON Parsing and Assertion

Add more robust testing for the Loop component by:
- Parsing TextOutput event from the response
- Extracting and parsing JSON data
- Adding detailed assertions to verify loop output
- Improving test coverage for loop component interactions

* refactor: simplify LoopTest.json structure and update node definitions

- Reduced the size of LoopTest.json by removing unnecessary edges and nodes.
- Updated node definitions for `ParseData` and `MessagetoData` components to enhance clarity and maintainability.
- Adjusted connections between nodes to reflect the new structure, ensuring proper data flow.
- Improved documentation within the JSON structure for better understanding of component functionalities.

* feat: add method to retrieve incoming edge by target parameter

- Implemented `get_incoming_edge_by_target_param` method in both `Component` and `Vertex` classes to facilitate the retrieval of source vertex IDs for incoming edges targeting specific parameters.
- Enhanced performance by caching outgoing and incoming edges in the `Vertex` class to avoid redundant calculations.

* feat: add dependency update method in LoopComponent

- Introduced `update_dependency` method to manage dependencies for the next iteration in the loop.
- Refactored existing logic to ensure proper handling of current items and loop termination conditions.
- Enhanced code clarity and maintainability by restructuring the flow of data processing within the loop.

* [autofix.ci] apply automated fixes

* refactor: update message assertions in TestLoopComponentWithAPI for accuracy

* feat: enhance LoopTest.json structure and component definitions

- Expanded the LoopTest.json file to include additional nodes and edges, improving the representation of component interactions.
- Updated definitions for `MyZipper`, `LoopComponent`, `MessagetoData`, and `ChatOutput` to enhance clarity and functionality.
- Introduced new properties and methods in components to support better data handling and processing.
- Improved documentation within the JSON structure for better understanding of component functionalities and usage.

* feat: add ran_at_least_once tracking to RunnableVerticesManager

- Introduced a new set, `ran_at_least_once`, to track vertices that have been executed at least once.
- Updated serialization methods to include the new property for state management.
- Enhanced logic in `all_predecessors_are_fulfilled` to prevent infinite loops for loop vertices that have already run.

* fix: add error handling for missing vertex in Component class

* refactor: improve variable naming and enhance readability in TestLoopComponentWithAPI

* feat: track vertex execution in run_manager by adding ran_at_least_once tracking

* feat: Enhance LoopComponent with dependency management and improved item output handling

- Added a method to update dependencies for the LoopComponent to ensure proper execution order.
- Improved item output logic to handle stopping conditions more effectively and update dependencies for subsequent runs.
- Refactored the item_output method to streamline the flow of data processing and context management.

* [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: Eric Hare <ericrhare@gmail.com>
2025-06-02 19:56:48 +00:00
Lucas Oliveira
d3d06be8e5
feat: add one click install to mcp servers on specific clients (#8271)
* Added endpoint to add servers to local backend

* Add install mcp query

* Fixed mcp projects to receive body schema

* Added patch install to mcp server tab

* feat: adds new Edit Details popover, removes flow menu, fixes nav alignment, adds new Flow Status overlay (#8087)

* Updated flow settings component size

* Added FlowSettingsComponent to contain modal content

* Removed unused imports

* Changed Flow Settings Modal to use new component

* Changed Flow Menu styling, removing Saved and context menu, and adding a direct click to edit flow info

* Removed unused styling

* Updated nav position and truncation

* updated alert styling

* Added z index to header

* Added flow settings coming from the bottom

* Changed flow settings to not crash when there is no flow

* Removed unused imports

* Implemented flow details using popover

* Removed onClick

* Changed canvas controls position and color

* Changed panel tooltip side and classes

* Added log canvas component

* Added children to flow logs modal

* Added log canvas component into page

* Changed position and shadow of canvas controls

* removed endpoint name from edit flow settings

* added endpoint name change into tweaks modal

* Added endpoint editing to tweaks

* Implemented storing the error in the flowBuildStatus

* Updated type

* Added Flow Building Component

* Added Flow Building Component implementation

* Added red color

* Added past build flow params

* Implemented design of flowBuildingComponent

* Implemented build error storing on flowStore

* Implemented build error on flow store

* Changed notifications test

* Set build error as null when building

* Reset build error when exiting flow

* Changed from error to buildError

* Changed flowStore to have buildInfo instead of buildError

* Changed flowBuildingComponent to have buildInfo and display successful builds

* Added handleDismissed instead of setting dismissed as true

* Updated tests to current Update implementation

* Updated tests to remove click on built successfully

* Updated tests and data-testid to match new Flow Name editing behavior

* fixed auto login test

* Fixed edit-flow-name test and save changes on node

* fixed tests

* Changed Share to Publish and added test ids

* added Rename Flow util for tests

* Changed tests to use new RenameFlow

* Fixed auto save off

* Added data test id to flow building component

* Removed pulsing from Name Invalid

* Made name editable but not saveable when invalid

* Added character name reached on description

* Added transition on pencil

* Modularized alert store to separate notification history and notifications

* Added errors to notification history

* Fixed flow building component position and update all components

* Fixed animations

* Fixed animation

* Added same animation to Update All Components

* Updated animations to make update only appear when flow building is not appearing

* fix flow settings test

* Fixed build status not being redefined

*  (UpdateAllComponents/index.tsx): Refactor containerVariants to CONTAINER_VARIANTS for consistency and readability
📝 (visual-variants.ts): Add visual variants for buttons and time in flowBuildingComponent
♻️ (flowBuildingComponent/index.tsx): Import visual variants from separate file for better organization and maintainability

* Fixed offset width of time

---------

Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>

* fix: fix regex on mcp server tab test (#8175)

* Fixed MCP Server Tab Test

* Fixed mcp server tab test

* Added timeout to test

* Added retry to mcp server tab test

* docs: cookie-banner-link (#8179)

cookie-banner-link

* fix: removed fit view that caused duck duck go test to fail (#8178)

fixed duck duck go test to not fail

* feat: Enhance API request component (#8070)

* update the api request component

* [autofix.ci] apply automated fixes

* update the component

* Update test_api_request_component.py

* [autofix.ci] apply automated fixes

* remove MODE_CONFIG unused variable

* [autofix.ci] apply automated fixes

* use normalize function

* Update template

* Update test_api_request_component.py

* UI test fix

* selector fix

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Yuqi Tang <yuqi.tang@datastax.com>
Co-authored-by: Mike Fortman <michael.fortman@datastax.com>

* docs: system assist component (#8089)

* sidebars

* initial-content

* more

* update

* trailing-spaces

* example

* standardize-naming

* shorten-introduction-and-remove-client

* Apply suggestions from code review

Co-authored-by: April I. Murphy <36110273+aimurphy@users.noreply.github.com>

* Update docs/docs/Integrations/Nvidia/integrations-nvidia-system-assist.md

---------

Co-authored-by: April I. Murphy <36110273+aimurphy@users.noreply.github.com>

* docs: deploy langflow with caddyfile and docker compose (#8120)

* initial-content

* not-json

* clarify-public key

* more-accessible-name-and-context

* exit-session

* fix: simplify GetStartedProgress percentage calculation logic (#8183)

🐛 (get-started-progress.tsx): fix calculation of totalPercentage to correctly display progress bar percentage
💡 (get-started-progress.tsx): refactor logic to calculate totalPercentage based on user opt-ins and flows

* fix: set cursor to text in text fields (#8173)

Fixed cursor being default in input fields

* feat: add datastax components bundle (#8184)

* feat: add datastax components bundle

* Update __init__.py

* Remove old astra assistants folder

* Remove old tools

* Update __init__.py

* Update test_assistants_components.py

---------

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

* feat: updated components header styling (#8085)

* Removed unused styles

* Updated node icon to follow design

* Updated node name to follow design and include Beta

* Removed Beta from node status

* Removed unused classes and parameters from GenericNode

* Changed node description padding on input

* Changed paddings and gaps

* removed unused classes

* Added accent purple foreground color to Experimental

* Fixed classes and gaps in generic node

* Fixed node name gaps

* Fixed node status classes and styling

* Removed unused classes and changed run-bg size

* Changed test to use new test id

* Changed Node Name to have beta tooltip

* Changed Build Failed icon to be a circle alert

* Changed Node Status gap and conditions to show spacings correctly

* Changed padding to not change height of other components

* Changed nodeStatus to show validation on small node

* Changed classes to show correct spacing and overflow

* Changed description size

* Fixed description text size

* Fixed input margin

* Fixed description editing not appearing when no description is available

* Fixed status not breaking words

* Updated colors

* Updated node output color

* [autofix.ci] apply automated fixes

* Changed duration style in chat

* Re-added output color

* Updated timeout on mcp server tab test

* Added more timeout to mcp server tab test

* fixed loop component test

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* ref: SQL component (#8185)

* update sql

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* feat: Loop uplift dataframe input and output (#8177)

* tests cases

* update to loop

* Update component.py

* 📝 (LoopTemplate.json): update value of a configuration key from "OPENAI_API_KEY" to "ANTHROPIC_API_KEY" in order to reflect the correct API key being used

* update json test loop

* add dataframe support for the loop component

* [autofix.ci] apply automated fixes

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

* fix: starter project

* update loop component and tests

* [autofix.ci] apply automated fixes

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

* update logic

* Update loop_basic.py

* Update Research Translation Loop.json

* fix lint

* format fix

* [autofix.ci] apply automated fixes

* reverting changes in component and vertex base

* [autofix.ci] apply automated fixes

* fix lint errors

* [autofix.ci] apply automated fixes

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

* update in the loop templates and component

* [autofix.ci] apply automated fixes

* Update Research Translation Loop.json

* update tests

* update the code and deprecate the old loop

* [autofix.ci] apply automated fixes

* Update loop_basic.py

* WIP FIX Loop Tests

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes

*  (loop-component.spec.ts): Update test cases to use more descriptive names for components and actions for better clarity and understanding.

*  (loop-component.spec.ts): refactor loop component tests to improve readability and maintainability by updating test selectors and removing redundant test steps

* update

* Update loop-component.spec.ts

* Update Research Translation Loop.json

* Update Research Translation Loop.json

* Update Research Translation Loop.json

* Update Research Translation Loop.json

* loop test fix

---------

Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
Co-authored-by: Rodrigo <rodrigosilvanader@gmail.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: italojohnny <italojohnnydosanjos@gmail.com>
Co-authored-by: Mike Fortman <michael.fortman@datastax.com>

* fix: fixes nightly tests (#8194)

* fix: mcp test when there are a lot of flows (#8197)

* Added cursor and claude in icons

* Added one click install to cursor and claude

* Changed design of mcp server tab page

* Added function to get local platform

* Added platform specific installer json on mcp server tab

* Added FA icons for windows and linux

* Added icons to tabs

* Added endpoint to check for installed MCP servers

* Added use get installed MCP servers

* Changed to get installed

* Use installed MCP servers on server

* Correct instalation for windows and WSL

* Fixed code not selecting

* refactor: use session_scope for database session management in install_mcp_config

* refactor: change logger level from info to debug for WSL and Windows detection in install_mcp_configg

* refactor: replace subprocess with asyncio for WSL IP address retrieval in install_mcp_config

* refactor: streamline project MCP server handling and improve SSE connection management in mcp_projects.py

* refactor: remove unnecessary user dependency from project endpoints in mcp_projects.py

* refactor: unify database session management using session_scope in mcp_projects.py

* refactor: enhance project tool listing and logging in mcp_projects.py by using session_scope and changing logger level to debug

* refactor: simplify WSL detection logic in install_mcp_config by removing unnecessary variable and streamlining conditions

* Removed unused console.log

* Implemented check if Langflow is running on local machine

* Fixed backend to generate an error if trying to install from not local

* Added error handling to frontend and changed loading

* Fix check of macos

* Refactored mcp server tab test to work with new changes

* Fixed test to pass with Windows selected and check the status of Linux too

* [autofix.ci] apply automated fixes

* Changed wait for timeout for wait for selector

* Fixed path.open

* Refactor test_update_project_mcp_settings to use session_scope for database service mock

* Refactor tests in test_mcp_projects.py to utilize session_scope for database session management, improving consistency and readability.

* Updated wsl to uvx

---------

Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
Co-authored-by: Mendon Kissling <59585235+mendonk@users.noreply.github.com>
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Yuqi Tang <yuqi.tang@datastax.com>
Co-authored-by: Mike Fortman <michael.fortman@datastax.com>
Co-authored-by: April I. Murphy <36110273+aimurphy@users.noreply.github.com>
Co-authored-by: Eric Hare <ericrhare@gmail.com>
Co-authored-by: Rodrigo <rodrigosilvanader@gmail.com>
Co-authored-by: italojohnny <italojohnnydosanjos@gmail.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-06-02 19:21:02 +00:00
Raphael Valdetaro
21af370e5b
Ref: LLMRouterComponent with Advanced OpenRouter Integration (#8220)
* Refactor: LLMRouterComponent with Advanced OpenRouter Integration and Detailed Output

* [autofix.ci] apply automated fixes

* feat: refactor LLM Router with OpenRouter API integration and enhanced routing logic - Add OpenRouter API integration for model specifications fetching - Implement intelligent model name mapping and caching system - Add structured outputs (selected_model_info, routing_decision) - Improve error handling with specific exception types - Add constants for magic values and enhanced judge LLM prompts - Add fallback mechanism and fix all linting issues

* fix: resolve final linting issues in LLM Router - Fix E501: Break long log message into multiple lines - Fix BLE001: Replace generic Exception with specific exceptions (AttributeError, IndexError)

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
2025-06-02 18:11:26 +00:00
Deon Sanchez
5c40410f00
refactor: improve output selection logic and edge updating in GenericNode (#8254)
* refactor: improve output selection logic and edge updating in GenericNode

* feat: enhance output rendering logic for loop and conditional components

* feat: add group_outputs flag to output components for enhanced display control

* feat: enhance output handling by adding support for hidden outputs in NodeOutputs component

* fix: update display output logic to handle tool mode correctly

* fix: improve output selection logic in NodeOutputs component

* refactor: simplify output selection logic in OutputComponent and GenericNode

* refactor: remove commented code and clean up unused memoization in various components

* refactor: clean up NodeOutputs component by removing commented code and simplifying output logic

* [autofix.ci] apply automated fixes

* feat: add group_outputs field to test_output in schema tests

* test: Skip grouped components output preview test and add wait times for stability

* fix: remove 'group_outputs' property from multiple starter project JSON files

* Revert starter_projects folder to main branch state

* Revert starter_projects folder to match origin/main exactly

* Re-sync starter_projects folder with main branch after merge conflict

* Add "group_outputs" property to various agent configurations

* test: skip progress tracking test for admin users

* test: enable progress tracking for admin users and improve component interaction

* test: remove redundant dropdown interaction and enhance multi-select functionality

---------

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-06-02 18:03:26 +00:00
Edwin Jose
b03ce1ca3d
ref: move memories category to bundles (#8281)
* Update styleUtils.ts

* Update filterEdge-shard-1.spec.ts
2025-06-02 17:42:18 +00:00
Lucas Oliveira
3bb0779fd6
fix: makes action title follow the flow name after editing to old title (#8293)
* Set names and descriptions as empty to get from flow name when empty instead of assigning the immediate name

* Changed to compare already parsed values

* changed parseString to return empty when the string is empty or have only spaces
2025-06-02 17:36:40 +00:00
Edwin Jose
dada8417a5
ref: Prompt Category Icon Update (#8308)
Update styleUtils.ts
2025-06-02 17:10:14 +00:00
Gabriel Luiz Freitas Almeida
29ef98722b
tests: Update Pokedex Agent test expectations (#8318) 2025-06-02 11:23:36 -03:00
github-actions[bot]
7258032bbd
chore: update test durations (#8314)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
2025-06-02 09:53:36 -03:00
Yuqi Tang
5de7f8af4a
fix: remove data to dataframe and message to data (#8303)
remove data to dataframe and message to data
2025-05-30 23:51:49 +00:00
Edwin Jose
5e9994bf85
ref: Python Interpreter component (#8307)
Update python_repl_core.py
2025-05-30 23:13:00 +00:00
Yuqi Tang
80c6897c93
fix: tool name change (#8302)
* tool  name changes

* tool  name changes

* revert URL

* reset structured output

* [autofix.ci] apply automated fixes

* fix test make_api_request name

* change tool name test

---------

Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-05-30 23:10:13 +00:00
Edwin Jose
da3542e901
ref: prompt and parser component (#8305)
* update prompt component

* template update

* update parser

* [autofix.ci] apply automated fixes

* update in template

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-05-30 22:53:46 +00:00
Yuqi Tang
5699e66b92
fix: sql database description and change query field to multiline (#8306)
fix sql database description and change query field to multiline
2025-05-30 22:40:05 +00:00
Yuqi Tang
f1775440a5
fix: batch run description, output, and beta badge (#8304)
* remove data to dataframe and message to data

* fix batch run component
2025-05-30 22:22:23 +00:00
Edwin Jose
fd73cdcd7e
ref: URL and File components with Dataframe output (#8117)
* url component update.

* update to url component and tests

* Make directory component legacy

* Only output dataframe from file component

* Update base_file.py

* Update description and output

* [autofix.ci] apply automated fixes

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

* Deprecate Processing Components.

* Move Tool and CQL Astra to bundle

* Comprehensive improvements to Save to File

* [autofix.ci] apply automated fixes

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

* Clean up description, dont unlink file

* Remove print statement

* fix: Clean up the text output of the URL component (#8158)

* Clean text output from url component

* [autofix.ci] apply automated fixes

* Update data.py

* Make a visible function

* URL component cleaning refactor

* Update data.py

* [autofix.ci] apply automated fixes

* Update with chat output fixes and template updates

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes

* Fix linting issues

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* revert datastax component bundle

* Restore the two tools as well

* Two more template updates

* Update Vector Store RAG.json

* Update Vector Store RAG.json

* Update __init__.py

* Update directory.py

* Update url.py

* [autofix.ci] apply automated fixes

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

* Update test_basic_prompting.py

* Unit test updates

* Fix unit tests one more time

* Fix conversion in safe convert

* Update chat.py

* Temporary disabling of save to file tests

* [autofix.ci] apply automated fixes

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

* Fix some more unit tests

* Update test_split_text_component.py

* [autofix.ci] apply automated fixes

* Update test_url_component.py

* Update file component outputs in tests

* Fix starter projects with old data to message

* Update test_split_text_component.py

* fix slider inputs

* Update data.py

* [autofix.ci] apply automated fixes

* Update data.py

* 🐛 (typescript_test.yml): increase the maximum shard count to 40 to improve test distribution and performance

* Rename safe file component

* [autofix.ci] apply automated fixes

* Make sure we import the right save to file

* 🔧 (freeze.spec.ts): update test description to match the changed element's test ID
🔧 (Blog Writer.spec.ts): add click event to test file input element
🔧 (edit-tools.spec.ts): update assertion to check if rowsCount is greater than 2 instead of 3
🔧 (loop-component.spec.ts): add import statement for uploadFile function
🔧 (tool-mode.spec.ts): update targetPosition coordinates for dragTo action
🔧 (chatInputOutputUser-shard-1.spec.ts): update test description to match the changed element's test ID

*  (stop-building.spec.ts): update click target for better test coverage and accuracy
 (fileUploadComponent.spec.ts): adjust drag target position and update click targets for improved testing flow and coverage

* 🐛 (typescript_test.yml): adjust the maximum shard count to 10 to prevent excessive parallelization and improve test performance

* Two url component types

* Update ruff formatting

* [autofix.ci] apply automated fixes

* Revert name of method

* 🐛 (typescript_test.yml): increase the maximum shard count to 40 to improve test distribution and performance

*  (freeze.spec.ts): update test to use correct testid for element
 (stop-building.spec.ts): update test to use correct testid for element
 (loop-component.spec.ts): update test to use correct testid for element
 (chatInputOutputUser-shard-1.spec.ts): update tests to use correct testid for element

*  (freeze.spec.ts, stop-building.spec.ts, loop-component.spec.ts, chatInputOutputUser-shard-1.spec.ts): update test selectors to match changes in the frontend UI, improving test reliability and maintainability.

*  (stop-building.spec.ts): update test to use correct testId for clicking element
 (loop-component.spec.ts): update test to use correct testId for clicking element
 (chatInputOutputUser-shard-1.spec.ts): update multiple tests to use correct testId for clicking element

* 📝 (freeze.spec.ts): update test selector to match the correct element on the page for better test accuracy

* 🔧 (typescript_test.yml): adjust optimal shard count calculation to ensure a maximum of 10 shards for test execution
🔧 (chatInputOutputUser-shard-1.spec.ts): update test selectors to match changes in the frontend output structure for integration tests

*  (chatInputOutputUser-shard-1.spec.ts): update test selectors for better clarity and consistency in the integration tests.

---------

Co-authored-by: Eric Hare <ericrhare@gmail.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
2025-05-30 21:56:14 +00:00
Gabriel Luiz Freitas Almeida
631bd49e14
chore: Remove CodSpeed workflow and pytest-codspeed from dependencies (#8299) 2025-05-30 16:09:11 -03:00
Mike Fortman
7ab495171a
refactor: Organize model lists to support metadata (#8268)
* add model metadata

* add new anthropic models

* templates

* [autofix.ci] apply automated fixes

* stylel fix

* whitespace

* move models to a list

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-05-30 18:13:06 +00:00
Edwin Jose
dc222d93f5
feat: create an IO Category (#8229)
* create an IO bundle

* Update styleUtils.ts

* [autofix.ci] apply automated fixes

* change folder names

* [autofix.ci] apply automated fixes

* Update test_endpoints.py

* refactor: update test IDs for input/output components in specs

* test: update test IDs for chat input/output components in decisionFlow.spec.ts

* test: update test IDs for input/output components in generalBugs-shard-5.spec.ts

* Update styleUtils.ts

* 🐛 (typescript_test.yml): increase the maximum shard count to 40 to improve test distribution and efficiency

* fix FE Tests Input output component Ids

* [autofix.ci] apply automated fixes

*  (filterEdge-shard-1.spec.ts): update test to log error message when element is not visible before asserting visibility

*  (notifications.spec.ts): update test selectors for better clarity and consistency in the notifications feature test suite

* 🐛 (typescript_test.yml): adjust the maximum shard count to 10 to prevent exceeding the limit and optimize test execution.

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: deon-sanchez <deon.sanchez@datastax.com>
Co-authored-by: Deon Sanchez <69873175+deon-sanchez@users.noreply.github.com>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
2025-05-30 17:58:34 +00:00
Mendon Kissling
6582f06a21
docs: improve tasks for v2 uploads (#8259)
* improve-instructions-for-v2-file-upload

* clarify-tweak
2025-05-30 17:16:24 +00:00
Deon Sanchez
0ba2beecbc
refactor: Update Dropdown items to be in sync with other drop-downs (#8232)
* fix: simplify deploy dropdown styles and improve accessibility

* fix: adjust dropdown menu offsets for improved alignment

* fix: Update dropdown minimum width for better layout
2025-05-30 16:47:13 +00:00
Lucas Oliveira
4db7ea16d2
fix: add error handling when node stops existing before update completes (#8291)
Added error handling when node is not existent
2025-05-30 16:09:41 +00:00