Commit graph

15,258 commits

Author SHA1 Message Date
Gabriel Luiz Freitas Almeida
b8346a0afa
Refactor: Remove unused imports across multiple frontend components (#6232)
* refactor: Remove unused imports across multiple frontend components

* update outdated components

---------

Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
2025-02-18 19:51:38 +00:00
Jordan Frazier
45bac3714a
feat: add db driver env variable (#5967)
* Add option to disable prepared statements

* [autofix.ci] apply automated fixes

* use generic connection driver env var

* simplify and allow usage for sqlite

* allow pool class to be set to kwargs

* simplify pool class selection

* [autofix.ci] apply automated fixes

* use reflection to get poolclass

* rebase fixes

* [autofix.ci] apply automated fixes

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

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-02-18 17:03:07 +00:00
Gabriel Luiz Freitas Almeida
25ac555e8f
refactor: Improve API key decryption error logging (#6193)
refactor: improve API key decryption error handling and logging
2025-02-18 15:32:14 +00:00
Cristhian Zanforlin Lousa
73d2b2f9af
chore: fix capitalization of "Open Playground" in default shortcuts (#6687)
 (constants.ts): capitalize the display name and name of the "Open Playground" shortcut for consistency and better readability
2025-02-18 14:59:25 +00:00
Raphael Valdetaro
19ed8bfc5f
feat: Add YouTube Video Analysis Template (#6245)
* feat: Add YouTube Video Analysis Template

* feat: enhance YouTube analysis metadata with description, icon and tags

* fix: add routing validation component for URL and YouTube input

* remove: duplicated youtube analysis.json from starter projects

* refactor: improve descriptions and formatting in YouTube Analysis JSON

* fix: update YouTube Analysis starter project API key configuration

---------

Co-authored-by: Mendon Kissling <59585235+mendonk@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-02-18 14:57:01 +00:00
Gabriel Luiz Freitas Almeida
1530e61669
feat: add functionality to stream or poll events from the build process (#5940)
* refactor: simplify TaskService by removing Celery integration

* refactor: enhance AnyIO backend task management and error handling

* refactor: restructure flow building process and enhance event handling

* feat: implement QueueService for managing job queues and tasks

* feat: Add QueueService for managing job queues and task lifecycle

* feat!: Enhance flow building with QueueService integration for job management

* revert changes to async session

* feat: Integrate QueueService into lifespan management for task handling

* refactor: Enhance QueueService with robust lifecycle management and cleanup mechanisms

* refactor: Simplify docstring for get_queue_service function

* refactor: Update import statements in queue factory for clarity

* test: Improve chat endpoint tests with comprehensive build flow scenarios

* refactor: Streamline flow build event generation and queue management

* refactor: Improve flow build process with modular event handling and URL parameter management

* test: Enhance loop component tests with flow build and event handling utilities

* fix: Improve transaction logging with null flow_id handling and debug logging

* fix: Remove unnecessary db.refresh() in transaction logging

* feat: Add polling mode for build events with optional streaming

* feat: Add event delivery configuration option to settings

* feat: Implement polling for build events with configuration-driven streaming

* refactor: Enhance queue cleanup with improved logging and error handling

* test: Improve build event stream assertion with detailed error reporting

* test: Add benchmark test for build flow polling mechanism

* refactor: Remove redundant end event in flow event generation

* test: Update test_component_tool_with_api_key to use async flow

* Convert test method to async
* Update graph start method to use async_start()
* Add client parameter to test method
* Modify tool retrieval to use async method

* test: Add session ID generation in agent component test

* fix: Enhance error handling in LCAgentComponent for ExceptionWithMessageError

Add null checks to prevent potential AttributeError when handling agent message deletion

* test: Refactor test assertion for model name options in agent component

Simplify the assertion for checking "sonnet" in model name options by extracting the options to a variable first

* refactor: Improve type hints and imports in AnyIOTaskResult

* Add `__future__` import for type annotations
* Use conditional import for `Callable` and `TracebackType`
* Explicitly type `_traceback` attribute with `TracebackType | None`

* fix: Add null checks for event task in build events streaming

* refactor: Extract build and disconnect handling into separate modules

This commit separates the build and disconnect handling logic from the chat API module into dedicated files:

- Created `langflow/api/build.py` to house the flow generation and vertex building logic
- Created `langflow/api/disconnect.py` to manage the custom streaming response with disconnect handling
- Removed duplicate code from `langflow/api/v1/chat.py`
- Improved code organization and modularity

* refactor: Extract flow build and event handling methods in build API

This commit introduces two new methods in the build API to improve code organization and reusability:

- `start_flow_build()`: Centralizes the logic for creating a queue and starting a flow build task
- `get_flow_events_response()`: Handles retrieving flow events for both streaming and polling modes

The changes simplify the chat API endpoint implementations and reduce code duplication

* refactor: Deprecate /task endpoint and add informative error message

This commit marks the /task endpoint as deprecated and raises an HTTP 400 error with a clear message indicating the endpoint will be removed in a future version. The changes improve API clarity and guide users towards the recommended /run endpoint.

* refactor: Update log_transaction function return type annotation

Modify the return type hint for log_transaction to allow for potential None return, improving type safety and clarity in the transactions logging method.

* feat: Add configurable event delivery streaming option

Introduce support for configurable event delivery mode (streaming/polling) across frontend components:

- Add `shouldStreamEvents()` method in NodeStatus and IOModal
- Update flowStore to accept a `stream` parameter
- Modify buildFlowVerticesWithFallback to use the stream parameter directly
- Remove hardcoded polling logic in buildUtils

* fix: Add null check for flow_id in log_transaction function

Prevent logging transactions without a flow_id by returning None, ensuring data integrity and avoiding potential database errors

* chore: Update changes-filter to include chat API path

* fix: Add error handling and null checks in flow transaction deletion

Improve robustness of transaction and vertex build deletion by:
- Adding a null check for flow_id in delete_transactions_by_flow_id
- Wrapping deletion operations in try-except blocks to prevent failures
- Logging debug messages for any deletion errors

* fix: Remove redundant commit in vertex builds deletion

Remove unnecessary db.commit() from delete_vertex_builds_by_flow_id to prevent duplicate commits and simplify database transaction handling

* fix: Improve transaction logging with debug message and return value

Move debug logging from CRUD layer to utils to provide more context about logged transactions and ensure proper error handling

* fix: Improve error handling and transaction cleanup in active_user fixture

Enhance user and transaction cleanup process in test fixture by:
- Adding separate try-except blocks for transaction/vertex build deletion and user deletion
- Adding debug logging for potential errors during cleanup
- Ensuring proper session commits for each operation

* propagate parent task CancelledError instead of supressing it

Co-authored-by: Christophe Bornet <cbornet@hotmail.com>

* refactor: Rename queue service to job queue service

Restructure job queue management by:
- Renaming QueueService to JobQueueService
- Moving queue-related files to a new job_queue directory
- Updating import paths and service type references
- Enhancing job queue service with more robust async job management

* fix: Correct ServiceType enum reference for job queue service

Update the service type constant to match the recently renamed JobQueueService, ensuring consistent service type referencing across the application.

* refactor: Enhance JobQueueService with comprehensive logging and documentation

Improve the JobQueueService implementation by:
- Adding detailed docstrings with clear explanations of methods and attributes
- Implementing comprehensive logging throughout the service
- Enhancing error handling and logging for queue and task management
- Providing more context in log messages for debugging and monitoring

* docs: Improve stop method docstring for JobQueueService

Enhance the documentation for the stop method by:
- Providing a more detailed and precise description of the shutdown process
- Clarifying the steps involved in gracefully stopping the service
- Improving the explanation of resource cleanup and task cancellation

* fix: Properly handle task cancellation and propagate exceptions in JobQueueService

* fix: Enhance error handling and raise appropriate exceptions in JobQueueService methods

* improve docstring

Co-authored-by: Christophe Bornet <cbornet@hotmail.com>

* fix: Remove redundant exception raises in JobQueueService methods and improve cleanup logic

* fix: Improve logging during job cleanup and handle exceptions more appropriately

* feat: add utility to run tests with multiple event delivery modes

* feat: integrate withEventDeliveryModes utility in multiple test files

* refactor: replace status code assertions with httpx codes for clarity

* remove noqa comment and change argument name

Co-authored-by: Christophe Bornet <cbornet@hotmail.com>

* refactor: streamline event polling logic in get_flow_events_response

* refactor: use getattr for safer session attribute access

Co-author: @cbornet

* feat: add is_started method to JobQueueService

* refactor: modify JobQueueService start method and main.py queue service initialization

* feat: add ready state and teardown method to JobQueueService

* refactor: simplify job queue cleanup logic in JobQueueService

* refactor: improve error logging in active_user fixture

* refactor: improve AnyIO task management with TaskGroup and CancelScope

* refactor: Implement LimitedBackgroundTasks for controlled vertex build logging (#6312)

* feat: implement LimitedBackgroundTasks for controlled vertex build logging

* refactor: replace BackgroundTasks with LimitedBackgroundTasks in build_flow endpoint

* refactor: improve task cancellation error handling in JobQueueService

* refactor: Rename LimitedBackgroundTasks to LimitVertexBuildBackgroundTasks

* feat: Add EventDeliveryType enum for event delivery methods

* feat: Add polling constants for endpoint and streaming status

* refactor: Update buildFlowVerticesWithFallback to use polling constants

* refactor: Update event delivery handling to use EventDeliveryType enum

* [autofix.ci] apply automated fixes

* fix: Improve error handling for cancelled build tasks

Refactor generate_flow_events to properly handle and propagate CancelledError
- Remove unnecessary task creation and manual cancellation
- Directly await _build_vertex instead of creating a separate task
- Improve exception logging for cancelled tasks
- Ensure CancelledError is raised instead of being silently handled

* fix: trigger event_manager.on_end after error handling in generate_flow_events

---------

Co-authored-by: Christophe Bornet <cbornet@hotmail.com>
Co-authored-by: anovazzi1 <otavio2204@gmail.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-02-18 14:24:39 +00:00
JamalBoustani
868cc4df76
feat: add Olivya's 'Place Call' component (#5917)
* Fixing failed unit tests for Olivya's 'Place Call' component

* Revert "Fixing failed unit tests for Olivya's 'Place Call' component"

This reverts commit abc62c9b9d14129d31b2c73ca0c68b2aba9be0a0.

* Fixing failed unit tests for Olivya's 'Place Call' component

* Update src/backend/base/langflow/components/olivya/olivya.py

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

* Update src/backend/base/langflow/components/olivya/olivya.py

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

* Remove unused logging import in Olivya component

---------

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-02-18 13:45:22 +00:00
Lucas Oliveira
cbff0fed99
fix: fixed scroll to outer layer on json viewer (#6664)
Added scroll on whole json view
2025-02-18 13:10:56 +00:00
Lucas Oliveira
f08e353c7c
fix: add old Data to Message name to metadata to improve search (#6636)
* Added legacy name to parse data

* Changed starter projects to use new parse data code

* [autofix.ci] apply automated fixes

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

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-02-18 12:51:56 +00:00
tianzhipeng
0513bf92a8
fix: clean duplicate call _cleanup_inputs (#6679)
clean: delete duplicate call _cleanup_inputs

duplicate, _cleanup_inputs have been call in _start_traces, no need call twice
2025-02-18 12:18:27 +00:00
Cristhian Zanforlin Lousa
c3305e4bd5
fix: Adjust flow cascade deletion and improve flow delete message UI (#6667)
* 🐛 (utils.py): fix cascade delete flow function to correctly delete related entities in the database and handle exceptions properly

*  (grid/index.tsx): Update descriptionModal to differentiate between component and flow types for better user experience
 (list/index.tsx): Update descriptionModal to differentiate between component and flow types for better user experience

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-02-18 12:08:35 +00:00
Eric
94952c0524
fix: update store_message to avoid crash (#6117) 2025-02-18 00:14:51 +00:00
Gabriel Luiz Freitas Almeida
63a78a832f
fix: add TableInput validation for single dict and Data instances (#6136)
* fix: enhance TableInput validation to support single dict and Data instances

* [autofix.ci] apply automated fixes

* fix: Improve TableInput validation error handling

Change TypeError to ValueError for Pydantic validation to ensure proper error catching. Added noqa comments to suppress linting warnings about error type.

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Ítalo Johnny <italojohnnydosanjos@gmail.com>
2025-02-17 22:13:21 +00:00
Lucas Oliveira
4d793371cc
fix: removed default max length for serialize function (#6674)
* Removed default max length of serialize function

* [autofix.ci] apply automated fixes

* Fix default value

---------

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-02-17 21:51:01 +00:00
Abhishek Patil
ccf71b875e
feat: add gmail agent template using composio (#6503)
* feat: add gmail agent template

* Update Gmail Agent.json
2025-02-17 21:50:46 +00:00
Lucas Oliveira
1912b08232
fix: changed serializations to use serialize function to not compromise json structure (#6673)
* Changed truncate_json to serialize to not lose json structure

* Removed truncate_json and its tests

* [autofix.ci] apply automated fixes

* Added max_length and max_items to serialize calls

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-02-17 21:45:44 +00:00
Edwin Jose
c9153b0d82
fix: inconsistent text table result for Message Type output (#6633)
* Update component.py

* 🐛 (loop-component.spec.ts): fix clicking on incorrect element in test causing failure

* 🔧 (freeze-path.spec.ts): Remove redundant clicks on "Close" button in multiple test cases to improve test efficiency
🔧 (freeze.spec.ts): Remove redundant clicks on "Close" button in multiple test cases to improve test efficiency

---------

Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-02-17 20:36:39 +00:00
Lucas Oliveira
3bb27bb51b
fix: adjust edge position to not overlay handles on select (#6666)
* Fixed edge to start at left and right sides of handle

* Fixed neon to be the same size of default handle

* Fixed source and targets Y to work on loop edges as well
2025-02-17 19:26:03 +00:00
Desiree Sng
f14dc092f2
feat: Add templates with AgentQL Component (#6248)
* Add templates with AgentQL Component

* Add one more template with AgentQL Component

* [autofix.ci] apply automated fixes

* refactor: update News Aggregator template to include API key instructions and improve layout

* price-deal-finder

* Revert "price-deal-finder"

This reverts commit ff7d2c5e6d41129bf61927a0a010702ad71c6265.

* price-deal-updates

* Remove research paper chatbot template

* feat: Add tags to Price Deal Finder starter project

---------

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Mendon Kissling <59585235+mendonk@users.noreply.github.com>
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
2025-02-17 18:32:40 +00:00
dependabot[bot]
f2c75dec8e
build(deps): bump dompurify from 3.2.3 to 3.2.4 in /src/frontend (#6661)
Bumps [dompurify](https://github.com/cure53/DOMPurify) from 3.2.3 to 3.2.4.
- [Release notes](https://github.com/cure53/DOMPurify/releases)
- [Commits](https://github.com/cure53/DOMPurify/compare/3.2.3...3.2.4)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-17 15:15:31 +00:00
anovazzi1
af59056604
feat: Add session ID support to tracing service (#5820)
* feat: Add session ID support to tracing service

This commit adds support for setting the session ID in the tracing service. Two methods have been modified:
- In the `Graph` class, the `set_session_id` method has been added to set the ID of the current session.
- In the `ArizePhoenixTracer` class, the `__init__` method has been modified to accept a `session_id` parameter and store it.

These changes enable the tracing service to associate traces with specific sessions, improving trace management and analysis.

* refactor: Improve tracing session ID handling in Graph class

- Rename `set_session_id()` method to `set_tracing_session_id()`
- Add null check for tracing service when setting session ID
- Enhance method to only set session ID when tracing service is available

---------

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-02-17 14:50:14 +00:00
Christophe Bornet
23244fe8c2
fix: Fix some swallowed CancelledError (#6625)
Fix some swallowed CancelledError

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-02-17 14:29:41 +00:00
Gabriel Luiz Freitas Almeida
c7e2e1eca8
feat: Add desktop flag to VersionPayload schema (#6487)
* feat: Add desktop flag to VersionPayload schema

* feat: Add method to detect Langflow Desktop environment
2025-02-17 14:29:19 +00:00
brian-ogrady
d88474783c
fix: Fixing API endpoint in HF Component (#6346)
* Fixing API endpoint in HF Component, adding unit test

* [autofix.ci] apply automated fixes

* Adding __init__.[y

* Removing unit tests, covered by another PR

---------

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-02-17 14:29:12 +00:00
Gabriel Luiz Freitas Almeida
e1fb90074c
chore: Enhance Locust load testing and optimize database settings (#6265)
* feat: Enhance Locust load testing for Langflow run endpoint

Refactor locustfile to provide more robust and configurable load testing:
- Add dynamic configuration via environment variables
- Improve error handling and logging
- Implement realistic flow run simulation
- Add connection and timeout handling
- Support API key authentication
- Enhance stats tracking and error reporting

* fix: Improve transaction logging error handling and performance

- Add `no_autoflush` context to prevent unnecessary database operations
- Change transaction logging error from exception to error level logging
- Simplify error handling in log_transaction function

* chore: Add Locust to development dependencies

Update project dependencies by adding Locust (version 2.32.9) to the development requirements, supporting load testing capabilities

* feat: Optimize database connection settings for improved performance and scalability

- Increase default pool_size from 10 to 20 for better connection handling
- Adjust max_overflow to 40 to support higher concurrent connections
- Extend db_connect_timeout from 20 to 30 seconds
- Add pool_recycle and echo settings to db_connection_settings
- Enhance documentation for database connection settings, highlighting SQLite limitations

* feat: Add Locust load testing configuration to Makefile

- Introduce comprehensive Locust load testing target with configurable parameters
- Support flexible testing scenarios with customizable users, spawn rate, and host
- Enable headless and interactive testing modes
- Add environment variable support for API key, flow ID, and other testing parameters
- Provide sensible default values for load testing configuration

* refactor: Remove unused retry configuration in Locust load testing

- Remove RETRY_DELAY and MAX_RETRIES environment variables
- Simplify FlowRunUser configuration by eliminating unused retry settings
- Maintain existing wait time configuration for load testing

* feat: Enforce FLOW_ID requirement for Locust load testing

- Add mandatory validation for FLOW_ID environment variable
- Raise a clear ValueError if FLOW_ID is not provided
- Remove default flow ID to ensure explicit configuration
- Improve load testing configuration robustness

* feat: Add configurable request timeout for Locust load testing

- Introduce `locust_request_timeout` parameter in Makefile
- Update locustfile to use configurable request timeout from environment variable
- Set dynamic connection and network timeout based on REQUEST_TIMEOUT
- Improve request handling with flexible timeout configuration

* revert change to database connection retry
2025-02-17 14:26:36 +00:00
Cristhian Zanforlin Lousa
28c4e7365c
test: add database-loaded API keys and outdated component detection for starter templates (#6615)
* add outdated starter projects tests

* add api keys loaded from db values

*  (Custom Component Generator.spec.ts): add initialGPTsetup function to setup GPT integration
📝 (Custom Component Generator.spec.ts): update test to handle existing API key and log a message if API key is already added
2025-02-17 14:26:11 +00:00
Lucas Oliveira
b9f0572995
fix: address weird column displacement when resizing columns (#6240)
* updated colResizeDefault to be shift

* Made last column not resize less than the maximum amount

---------

Co-authored-by: anovazzi1 <otavio2204@gmail.com>
2025-02-17 13:55:17 +00:00
Edwin Jose
61479b95ca
feat: Add Template Financial Report Parser for demo of Structured Output Component (#6493)
* Create Financial Report Parser.json

* fix: enable loading from database and set default API key for Financial Report Parser

* refactor: update descriptions and improve layout in Financial Report Parser template

---------

Co-authored-by: anovazzi1 <otavio2204@gmail.com>
Co-authored-by: Mendon Kissling <59585235+mendonk@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-02-17 13:41:33 +00:00
Gabriel Luiz Freitas Almeida
d462a9478e
ci: Update Codeflash workflow to continue on error (#6658)
chore: update codeflash workflow to continue on error
2025-02-17 13:22:43 +00:00
Cristhian Zanforlin Lousa
f2fbcfa579
feat: add DataToDataFrame component for converting Data objects (#6112)
*  (data_to_dataframe.py): add a new component to convert Data objects into a DataFrame for easier data manipulation and analysis.

* [autofix.ci] apply automated fixes

* 📝 (data_to_dataframe.py): improve documentation for the build_dataframe method to explain the process of building a DataFrame from Data objects

*  (test_data_to_dataframe.py): Add unit tests for DataToDataFrameComponent to ensure proper construction of DataFrame from Data objects with various fields and configurations.

*  (test_data_to_dataframe.py): Refactor test_data_to_dataframe.py to use pandas module instead of turtle for DataFrame operations
♻️ (test_data_to_dataframe.py): Refactor test_data_to_dataframe.py to improve readability and consistency in DataFrame testing assertions

* [autofix.ci] apply automated fixes

* 🔧 (test_data_to_dataframe.py): improve variable naming for better readability and consistency in test cases

* [autofix.ci] apply automated fixes

*  (test_data_to_dataframe_component.py): Add unit tests for DataToDataFrameComponent to ensure correct behavior and functionality.

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-02-17 13:22:01 +00:00
Edwin Jose
78b4d16098
feat: Add Meeting Summary Template using Assembly AI and OpenAI (#6498)
* Create Meeting Summary.json

* fix: update Meeting Summary.json to enable loading from database and set default API key value

* fix: update Meeting Summary.json to refine descriptions and adjust layout dimensions

---------

Co-authored-by: anovazzi1 <otavio2204@gmail.com>
Co-authored-by: Mendon Kissling <59585235+mendonk@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-02-17 13:15:31 +00:00
anovazzi1
70655a5ea1
fix: improve output check (#6638)
* fix: simplify output check and add debug logging in ContentDisplay component

* fix: remove unnecessary console log in ContentDisplay component
2025-02-17 13:11:59 +00:00
Edwin Jose
a7869d291b
feat: tool mode to firecrawl components (#6235)
tool mode to firecrawl

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-02-17 13:10:22 +00:00
github-actions[bot]
dfbe578a74
chore: update test durations (#6655)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-02-17 12:37:19 +00:00
Cristhian Zanforlin Lousa
8c74ead3e8
feat: add SaveToFile component for DataFrame, Data and Message exports (#6114)
*  (save_to_file.py): Add a new component 'SaveToFileComponent' to save DataFrames, Data, or Messages to various file formats. This component allows users to select the input type, file format, and file path for saving the data.

* [autofix.ci] apply automated fixes

* 🔧 (save_to_file.py): refactor variable names for better readability and consistency
🐛 (save_to_file.py): handle unsupported input types and formats by raising ValueErrors with informative error messages

* [autofix.ci] apply automated fixes

*  (test_save_to_file_component.py): Add unit tests for the SaveToFileComponent to ensure proper saving of data to various file formats and handling of different input types.

* [autofix.ci] apply automated fixes

* 📝 (save_to_file.py): Add support for handling different types of message text in the SaveToFileComponent class to ensure proper saving to file
🔧 (test_save_to_file_component.py): Refactor test cases in the SaveToFileComponent test file for better readability and maintainability

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-02-17 12:35:57 +00:00
Dmitry
4e9231ce8b
docs: Added a link to the Russian README. (#6306)
* Update README.ES.md

* Update README.KR.md

* Update README.PT.md

* Update README.ja.md

* Update README.md

* Update README.zh_CN.md

---------

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-02-17 12:32:44 +00:00
Dmitry
6c15bc9849
docs: Added a Proper Russian README Translation Create README.RU.md (#6303)
Added a Proper Russian README Translation Create README.RU.md

I’ve translated the README into Russian to make it more accessible. The translation stays true to the original while ensuring clarity and natural flow 🚀
2025-02-17 12:15:05 +00:00
Cristhian Zanforlin Lousa
ca8c5e1e57
test: Add validation for error handling in custom components and utility function (#6634)
 (validate-raise-errors-components.spec.ts): add test to validate error messages on popups when an error is raised in custom components
📝 (add-custom-component.ts): add utility function to add custom components in tests for easier testing and validation of error messages
2025-02-17 12:07:57 +00:00
Deon Sanchez
c902fb9e11
feat: Generic Callback Dialog Input for Custom Component (#6236)
* force dialog

* Reimplement backend dialog

* Update astradb.py

* Clean up dropdown options

* Remove unused import

* [autofix.ci] apply automated fixes

* Update astradb.py

* Ruff fixes

* Update Vector Store RAG.json

* [autofix.ci] apply automated fixes

* fix: Conditionally render custom option dialog in dropdown

*  (NodeDialogComponent/index.tsx): Add support for passing 'name' prop to NodeDialog component to improve customization and flexibility
📝 (NodeDialogComponent/index.tsx): Update comments and remove unused import to improve code readability and maintainability
🔧 (dropdownComponent/index.tsx): Pass 'name' prop to Dropdown component to enhance customization and flexibility

*  Refactor NodeDialog component to improve state management and payload handling

* Update astradb.py

* [autofix.ci] apply automated fixes

*  Enhance NodeDialog and Dropdown components with improved payload handling and type safety

* Add DB creation functionality

* First version of create

* Update astradb.py

* Fix ruff errors

* Update Vector Store RAG.json

* [autofix.ci] apply automated fixes

* Update astradb.py

* [autofix.ci] apply automated fixes

* Update astradb.py

* [autofix.ci] apply automated fixes

* Update astradb.py

* Update astradb.py

* Update astradb.py

* Update Vector Store RAG.json

* [autofix.ci] apply automated fixes

* Update astradb.py

* [autofix.ci] apply automated fixes

* feat: Enhance dropdown and node dialog with loading states and improved UX

* refactor: Improve error handling in NodeDialog component

* refactor: Update default excluded keys in dropdown metadata filter

* [autofix.ci] apply automated fixes

* refactor: Update Vector Store RAG starter project JSON with formatting and connection ID corrections

* Hide fields that aren't relevant yet

* [autofix.ci] apply automated fixes

* Update Vector Store RAG.json

* [autofix.ci] apply automated fixes

* Update astradb.py

* feat: Improve dropdown component with loading states and enhanced UX

* Update astradb.py

* [autofix.ci] apply automated fixes

* Update astradb.py

* Simon feedback

* [autofix.ci] apply automated fixes

* feat: Enhance dropdown and UI components with status indicators and loading states

* refactor: Update dropdown metadata filtering to exclude 'icon' key

* fix: Conditionally render dropdown icon when available

* fix: Improve dropdown icon rendering with null checks

* chore: Remove debug console log in dropdown component

* Add support for icons in the dropdowns

* Update astradb.py

* Update Vector Store RAG.json

* [autofix.ci] apply automated fixes

* feat: Enhance dropdown status display and color handling

* feat: Add auto-close functionality to node dialog and expand status color handling

* feat: Add real-time template refresh for node dialog fields

* refactor: Improve node dialog component state management and naming

* Async for create collection

* [autofix.ci] apply automated fixes

* Dynamic provider list generation

* Update astradb.py

* [autofix.ci] apply automated fixes

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

* Update astradb.py

* [autofix.ci] apply automated fixes

---------

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-02-15 02:10:12 +00:00
Gabriel Luiz Freitas Almeida
b8d2e63221
fix: Update default URL in URL component test (#6637)
test: Update default URL in URL component test
2025-02-14 21:50:38 +00:00
Gabriel Luiz Freitas Almeida
c62ac0b702
chore: Update codeflash config to ignore components (#6340)
chore: update codeflash config to ignore components
2025-02-14 21:38:16 +00:00
Edwin Jose
a1967bc472
feat: adds metadata and batch_index to batch_run (#6318)
* Update batch_run.py

* updates to test component and fixes formatting

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: anovazzi1 <otavio2204@gmail.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-02-14 21:04:50 +00:00
Lucas Oliveira
ec5259a0fc
fix: updates color of inactive buttons on table component (#6315)
Updated color of disabled buttons on table component
2025-02-14 20:33:14 +00:00
Cristhian Zanforlin Lousa
d4c04c89fe
tests: Improve Error Handling and Update Element Test IDs in filterEdge-shard-1.spec.ts (#6632)
 (filterEdge-shard-1.spec.ts): Update test to log an error message if an element is not visible during the test execution.
2025-02-14 20:07:28 +00:00
Lucas Oliveira
45e2f739d5
fix: adds edge filtering only to parameters not hidden (#6270)
Adds advanced filter to only filter by showing fields on click of edge
2025-02-14 16:59:56 +00:00
Cristhian Zanforlin Lousa
0a631a68c2
fix: Update path filters, test tags and backend processing (#6613)
*  (tests): update tag value from "@starter-project" to "@starter-projects" for consistency across test files.

* 📝 (changes-filter.yaml): add new path "src/backend/base/langflow/custom/**" to starter-projects section
♻️ (changes-filter.yaml): remove path "src/backend/base/langflow/components/**" from components section and add it to starter-projects section
♻️ (changes-filter.yaml): add new path "src/backend/base/langflow/custom/**" to components section

* 🐛 (component.py): fix a bug where the status was not being returned when there is only one output in the component

* 🔧 (ci.yml): Expand path filter outputs for more comprehensive CI testing

* fix docstring placement

*  (group.spec.ts): update click event modifiers to use "ControlOrMeta" for better cross-platform compatibility

*  (changes-filter.yaml): add new directory "src/backend/base/langflow/graph/" to starter-projects for processing in the build pipeline.

* 🔄 Refactor graph data structures from sets to lists for performance and compatibility

* 🔧 Optimize RunnableVerticesManager predecessor checks and type hints

---------

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-02-14 11:20:08 -03:00
Mike Fortman
0fbe1b0d09
feat: Add new tracking events for flow and data load executions (#6492)
* add new events

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-02-13 23:14:51 +00:00
Edwin Jose
79f91e3ac1
feat: add template for loop component: ArXiv search result Translator (#6260)
* Create LoopTemplate.json

* Update LoopTemplate.json

* refactor: Remove unused tag "all-templates" from LoopTemplate.json

* refactor: Update LoopTemplate.json description and adjust dimensions for improved clarity

* add-title

---------

Co-authored-by: anovazzi1 <otavio2204@gmail.com>
Co-authored-by: Mendon Kissling <59585235+mendonk@users.noreply.github.com>
2025-02-13 21:16:53 +00:00
Edwin Jose
b38b6aa601
fix: inconsistent text table result for Message Type output, setting message.text as default status instead of Table as self.status (#6319)
* update message output to display only the text

* Update component.py

* Update component.py

* [autofix.ci] apply automated fixes

* Update src/backend/base/langflow/custom/custom_component/component.py

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

---------

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-02-13 20:49:47 +00:00
Mendon Kissling
a4a70d4aea
docs: ui improvements (#6317)
* use-yarn-not-npm

* swap-api-menu-items

* fix-errors

* force-sidebar-open

* increase-custom-css-values
2025-02-13 19:59:12 +00:00