Commit graph

6,519 commits

Author SHA1 Message Date
Sebastián Estévez
a04e5f56b8
feat: update sql component to support toolkit (#7652)
* update sql component

* cache

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

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

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

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

* [autofix.ci] apply automated fixes

* fix: sql query component (#7700)

* feat: Sql toolkit tests (#7842)

Co-authored-by: Edwin Jose <edwin.jose@datastax.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: Gustavo Costa <gsantosaero@gmail.com>
2025-05-06 16:08:33 +00:00
Garrett George
986c4bcf24
Feature: Adds additional azure openai api versions (#7105)
* Adds additional azure openai api versions

* [autofix.ci] apply automated fixes

---------

Co-authored-by: Garrett George <ggeorge@pros.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-05-06 13:58:57 +00:00
Jordan Frazier
e0ae3f69c2
fix: wait on loguru to flush async logs from services (#7908)
Allow loguru to flush async logs from services
2025-05-06 00:05:03 +00:00
Jordan Frazier
2c6ea9c98f
fix: truncate transaction and vertex messages (#7893)
* add pyinstrument and fastapi wrapper

* Truncate vertex build responses

* Truncate vertex response and transactions

* [autofix.ci] apply automated fixes

* Update test for vertex response structure to reflect new truncation logic

* Refactor profiling middleware to use environment variable for configuration

* Update test for vertex response structure to correct truncation logic

* move pyinstrument to dev dependencies

* Update serialization test to include max_items parameter for list truncation

* remove profiling from this PR, fix constants

* [autofix.ci] apply automated fixes

* Add asyncio configuration options to pyproject.toml

---------

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-05-06 00:03:13 +00:00
Gabriel Luiz Freitas Almeida
304e28b48a
feat: event polling can process more than one event at a time (#7858)
* refactor: enhance event polling to retrieve all available events and return in NDJSON format

Updated the event polling logic to collect all available events from the queue instead of just one. The response format has been changed to NDJSON, allowing multiple events to be returned in a single response. Improved error handling for timeouts by returning an empty response instead of raising an error.

* refactor: improve NDJSON event processing in build polling

Enhanced the event polling logic to handle NDJSON responses by processing multiple events in a single fetch. Updated the response handling to read the response as text, split it into individual JSON objects, and process each event accordingly. This change improves the efficiency of event handling and maintains a consistent polling interval.

* fix: change event list type from list[str] to list in get_flow_events_response

* refactor: enhance event stream consumption with timeout and error handling

Updated the consume_and_assert_stream function to include a timeout for processing events and improved error handling for JSON parsing failures. Added logging for better debugging and tracking of processed events. Adjusted the event validation logic to ensure both the first and last expected events are present.

* refactor: enhance event polling logic with improved limits and JSON validation

Updated the event polling mechanism to include configurable limits for total events and empty polls, along with a timeout for requests. Enhanced JSON validation for individual events and added logging for better debugging of polling behavior. This refactor aims to improve robustness and maintainability of the event consumption process.

* refactor: update polling interval and streamline event handling

Modified the polling interval constant to improve responsiveness and adjusted event handling logic in the get_flow_events_response function to simplify the processing of event values. This change enhances the efficiency of event consumption and maintains a consistent approach to handling NDJSON responses.

* refactor: simplify event retrieval in get_flow_events_response

Removed unused event_id and put_time variables from the event retrieval logic in the get_flow_events_response function. This change streamlines the code and enhances readability while maintaining the functionality of event handling.

* refactor: update consume_and_assert_stream to use asyncio.wait_for for timeout handling

Modified the consume_and_assert_stream function to utilize asyncio.wait_for for managing timeouts in event processing. This change improves compatibility with Python 3.10 and enhances the robustness of the event consumption logic while maintaining existing functionality.
2025-05-05 22:20:04 +00:00
Lucas Oliveira
75deddd102
fix: re-add name and description editing on tool mode except for Composio, fix MCP server code (#7901)
* Changed backend to contain readonly props for tools

* Show name editing for not readonly tools

* Fixed edit-tools test

* Updated command to use "uvx" instead of "npx" for stability

* Fixed mcp code for authentication on auto_login=false

* removed args from component desc

* [autofix.ci] apply automated fixes

* making tool mode inputs the priority.

* fix: Clean up comments and whitespace in component_tool.py

* Fix column name

* update the dispaly name in composio

* fix format

*  (get-started-progress.tsx): add data-testid attribute to improve testability and accessibility
🔧 (user-progress-track.spec.ts): update test assertions to use the new data-testid attribute for get started progress title

---------

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>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
2025-05-05 21:20:19 +00:00
Bar Nuri
21f9182a82
fix: flow_runner better run_id and support stream (#7892)
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-05-05 19:16:07 -03:00
Edwin Jose
c5306643bb
fix: anthropic Model component base url empty issue (#7872)
* Update anthropic.py

* updates to templates

* [autofix.ci] apply automated fixes

* update the templates

* Refactor Anthropic API URL handling to use a constant. Introduced DEFAULT_ANTHROPIC_API_URL in anthropic_constants.py and updated references in anthropic.py for improved maintainability and clarity.

* [autofix.ci] apply automated fixes

* Refactor AnthropicModelComponent to streamline API URL handling. Removed unnecessary base_url checks and ensured consistent use of DEFAULT_ANTHROPIC_API_URL for improved clarity and maintainability.

* [autofix.ci] apply automated fixes

* Fix base_url check in update_build_config to ensure key existence before accessing value

* [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-05-05 19:23:57 +00:00
Edwin Jose
99d9a52bd9
fix: Deprecate Google Components (#7880)
deprecate components
2025-05-05 19:02:46 +00:00
github-actions[bot]
463ce105f0
chore: update test durations (#7896)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
2025-05-05 09:08:23 -03:00
Rahul Shah
164d931bbd
fix: correct typo in pretty-logs property (#7886)
Typo property pretty logs
2025-05-05 00:33:20 +00:00
Gabriel Luiz Freitas Almeida
910720db00
feat: Change default event delivery method to streaming (#7851)
feat: change default event delivery method from polling to streaming
2025-05-05 00:25:59 +00:00
Gabriel Luiz Freitas Almeida
a388126ea4
chore: Bump version numbers for langflow and langflow-base to 1.4.0 and 0.4.0 respectively (#7867) 2025-05-02 18:07:04 +00:00
Edwin Jose
a904db6220
fix: Agent execution time duration display in streaming mode (#7852)
* Update events.py

* timer compotation update

* clean up

* add time elapsed for streaming

* [autofix.ci] apply automated fixes

* Update events.py

* preliminary fix

* Update src/backend/base/langflow/schema/message.py

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

* Update src/backend/base/langflow/schema/message.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-05-02 17:23:07 +00:00
Edwin Jose
eba76ecc57
fix: run flow multiple execution in tool mode (#7873)
* disable dataframe and data output in tool mode

* Update src/backend/base/langflow/base/tools/run_flow.py

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-05-02 17:10:58 +00:00
Gabriel Luiz Freitas Almeida
28445d0a70
fix: update templates containing Agent and Tool components (#7860)
* refactor: Update Simple Agent configuration and enhance tool integration

- Changed source and target handles to improve data flow between components.
- Updated input types for better compatibility with new data structures.
- Enhanced tool metadata and descriptions for clarity.
- Adjusted layout dimensions and properties for improved UI consistency.
- Updated agent and tool identifiers to reflect recent changes in the system.

* refactor: Update Invoice Summarizer project configuration and component identifiers

- Changed component IDs and source/target handles for improved data flow.
- Updated tool and agent identifiers to align with recent system changes.
- Adjusted layout properties and descriptions for better clarity and consistency.
- Enhanced metadata for tools and components to facilitate better integration.

* refactor: Update Pokédex Agent configuration and component identifiers

- Changed component IDs and source/target handles to enhance data flow.
- Updated input types and tool identifiers for improved compatibility with recent system changes.
- Enhanced layout properties and descriptions for better clarity and consistency.
- Adjusted metadata for tools and components to facilitate better integration.

* refactor: Update Search Agent configuration for improved compatibility

- Removed input types for the OpenAI API Key to streamline configuration.
- Added new model options including "gpt-4.1", "gpt-4.1-mini", and "gpt-4.1-nano" for enhanced flexibility.
- Updated default model value to "gpt-4.1" for better alignment with current capabilities.

* refactor: Update Financial Agent configuration and component identifiers

- Changed component IDs and source/target handles to enhance data flow.
- Updated tool and agent identifiers for improved compatibility with recent system changes.
- Adjusted layout properties and descriptions for better clarity and consistency.
- Enhanced metadata for tools and components to facilitate better integration.

* refactor: Update Gmail Agent configuration for improved model options

- Removed input types for the OpenAI API Key to streamline the configuration.
- Added new model options including "gpt-4.1", "gpt-4.1-mini", "gpt-4.1-nano", and "o1" for enhanced flexibility.
- Updated default model value to "gpt-4.1" for better alignment with current capabilities.

* refactor: Update Invoice Summarizer project configuration for improved clarity

- Standardized formatting of source and target handles for consistency.
- Adjusted score representation for better readability.
- Removed unnecessary hidden properties to streamline configuration.
- Enhanced metadata for components to facilitate better integration.

* refactor: Standardize source and target handles in agent configurations

- Updated formatting of source and target handles in both Pokédex and Simple Agent configurations for improved consistency.
- Removed unnecessary hidden properties to streamline the configuration.
- Enhanced metadata for components to facilitate better integration and clarity.

* refactor: Streamline OpenAI API Key configuration and enhance model options

- Removed input types for the OpenAI API Key to simplify the configuration.
- Added new model options including "gpt-4.1", "gpt-4.1-mini", "gpt-4.1-nano", and "o1" for increased flexibility.
- Updated default model value to "gpt-4.1" for better alignment with current capabilities.

* refactor: Simplify OpenAI API Key configuration and expand model options

- Removed input types for the OpenAI API Key to streamline the configuration.
- Added new model options "gpt-4.1", "gpt-4.1-mini", "gpt-4.1-nano", and "o1" for enhanced flexibility.
- Updated default model value to "gpt-4.1" for better alignment with current capabilities.

* refactor: Update YouTube Analysis project configuration for improved model options

- Removed input types for the OpenAI API Key to simplify the configuration.
- Added new model options "gpt-4.1", "gpt-4.1-mini", "gpt-4.1-nano", and "o1" for enhanced flexibility.
- Updated default model value to "gpt-4.1-mini" for better alignment with current capabilities.

* fix: update tools in Travel Planning Agents

* update mutateTemplate to be debounced by nodeId

* update fetch data on mount to fetch node data if its tool mode

* Update mutateTemplate instances to contain nodeId

* update starter projects to use gpt-4.1-mini model

* fix: update test expectation for Portfolio Website Code Generator

---------

Co-authored-by: Lucas Oliveira <lucas.edu.oli@hotmail.com>
Co-authored-by: Lucas Oliveira <62335616+lucaseduoli@users.noreply.github.com>
2025-05-02 16:51:42 +00:00
Edwin Jose
2fa6d868a1
fix: Streaming for anthropic models in Agents (#7871)
* fix streaming for anthropic models and optimise the _extract_output_text

* Update src/backend/base/langflow/base/agents/events.py

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* fix: improve handling of AIMessageChunk state and output text extraction

* fix: change ValueError to TypeError in output text extraction

* fix: ensure output text is appended only if it is valid and agent message text is a string

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-05-02 14:49:44 +00:00
Nicholas Freybler
7c0beedcab
fix: voice mode progress reliability (#7830)
* progress update nudge

* progress update nudge

* nick's fix

* progress toggle

* typo

* fix auth and ws thread safety

* [autofix.ci] apply automated fixes

* fix deadlock

* delete commented function

* fix duplicate events

* [autofix.ci] apply automated fixes

* merge

* clean up log_event

* queues not locks

* response ids for 11L flow

* async bug

* Fix awaits

* ElevenLabsResponse -> Response

* queues not locks

* response_q

* comment

* small fix

* ♻️ (voice_mode.py): refactor code to use individual tasks and gather them for concurrent execution instead of TaskGroup for better readability and error handling.

* mypy

---------

Co-authored-by: phact <estevezsebastian@gmail.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Cristhian Zanforlin Lousa <cristhian.lousa@gmail.com>
2025-05-01 00:37:49 +00:00
Jordan Frazier
e18b55042e
fix: transaction logging of pandas dataframes (#7716)
* Fix transaction logging of pandas dataframes

* cleaner class check

* ruff

* ruff

* [autofix.ci] apply automated fixes

* update serialization logic to skip json format

* adds a custom run response to serialize dfs too?

* just use runresponse

* [autofix.ci] apply automated fixes

* remove customrunresponse

* Fix fastapi type

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-04-30 21:51:47 +00:00
Cristhian Zanforlin Lousa
9191d7a1f1
ffix: Update Gmail test to assert direct result_field return instead of full data dictionary (nightly fix) (#7866) 2025-04-30 16:03:25 -03:00
Cristhian Zanforlin Lousa
cf5dba11df
fix: Enhance Gmail API Component with Field Extraction, Add Flow Locking, and Improve Test Stability (#7864)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Cristhian Zanforlin Lousa <cristhian.lousa@gmail.com>
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>
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-04-30 15:21:28 -03:00
Lucas Oliveira
9c0dcac270
fix: update texts on mcp component and tab, fix icons not updating (#7850)
* Update texts about mcp

* Change generic icon when name changes

* Remove unused imports

* Updated tests
2025-04-29 20:39:07 +00:00
Deon Sanchez
e1608d143f
fix: update NestedDictInput value type to remove unnecessary Data option (#7437)
Co-authored-by: Jordan Frazier <122494242+jordanrfrazier@users.noreply.github.com>
2025-04-29 19:13:34 +00:00
Edwin Jose
e7f817bbff
feat: deprecate Gmail Loader Component (#7844)
Update gmail.py
2025-04-29 18:34:07 +00:00
Edwin Jose
c80cb3f35e
feat: Add MCP Server Settings to projects, rename Folder to Project (#7741)
Co-authored-by: Lucas Oliveira <lucas.edu.oli@hotmail.com>
Co-authored-by: deon-sanchez <deon.sanchez@datastax.com>
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: Eric Hare <ericrhare@gmail.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
Co-authored-by: Cristhian Zanforlin Lousa <cristhian.lousa@gmail.com>
Co-authored-by: phact <estevezsebastian@gmail.com>
2025-04-29 14:14:55 -03:00
Vitalii Mostipaka
7f5d7a5320
feat: add new models to OLLAMA_EMBEDDING_MODELS and OLLAMA_TOOL_MODELS_BASE (#7586)
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
2025-04-29 06:40:32 +00:00
Bar Nuri
e50476b30a
feat: ability to run flow without langflow server (#7507)
* flow-runner

* flow-runner

* flow-runner - fix lint

* Update flow_runner.py

* [autofix.ci] apply automated fixes

* Update flow_runner.py

* [autofix.ci] apply automated fixes

* Update flow_runner.py

* [autofix.ci] apply automated fixes

* Update flow_runner.py

* [autofix.ci] apply automated fixes

* CR

* Add docs and require sessionid

* fix lint

* [autofix.ci] apply automated fixes

* refactor: simplify flow ID handling and update class docstring

* refactor: update flow runner import to experimental version

* removed obsolete test

* remove test that use io

* remove another io test

---------

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: Jordan Frazier <jordan.frazier@datastax.com>
Co-authored-by: Jordan Frazier <122494242+jordanrfrazier@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-04-29 05:59:00 +00:00
Jeffrey Carpenter
4610bc3eb4
feat: NV-ingest image extraction and authentication support (#7795)
* nv-ingest auth workaround

* nv-ingest local dependency

* workaround for RestClient

* use forked nv-ingest-client with auth/url improvements

* update to nv-ingest-client 20250422

* image extraction

* fix splitter options

* improving defaults

* review feedback fixes

* [autofix.ci] apply automated fixes

* ruff fixes

* require base url

* [autofix.ci] apply automated fixes

* add check for empty segment

* Remove html from list of supported

* Use hardcoded list of supported types

* prayer to lint gods

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Jordan Frazier <jordan.frazier@datastax.com>
Co-authored-by: Jordan Frazier <122494242+jordanrfrazier@users.noreply.github.com>
2025-04-29 04:38:57 +00:00
Edwin Jose
0a628e1fb1
fix: Dict Input Validation issue in Dynamic Components (#7754)
* Update inputs.py

* update dict validation approach

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-04-29 04:33:27 +00:00
Abhishek Patil
2ea2bb01ed
feat: Add Composio Google Calendar component (#7662)
* feat: add google calendar component

* feat: add Composio Google Calendar Component

* fix: update field names to use '_' as separator & remove init

* fix: update field names to use '_' as separator & remove init

* feat: add google calendar test file & minor improvements

* fix: format

* fix: format

---------

Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
2025-04-29 03:52:05 +00:00
Ali Saleh
93e8b3e8c5
revert: Traces Export Headers For Arize & Phoenix Integration (#7825)
Co-authored-by: Eric Hare <ericrhare@gmail.com>
Co-authored-by: Lucas Oliveira <62335616+lucaseduoli@users.noreply.github.com>
2025-04-28 23:34:31 +00:00
Lucas Oliveira
b1217f96fe
feat: new tool mode dialog and UI (#7647)
* Add tools input to the backend

* Add tools type

* Add tools component to parameter render

* Added tools to langflow supported types

* Add tools modal

* Instantiate tools component in parameter render

* Removed div when there is not any visible actions

* Added margin

* Add ComboBoxItem and ListItem components for enhanced selection UI

* Update ComboBoxItem to display item description and enhance ToolsModal layout

* Refactor ToolsModal header styling for improved layout and icon padding

* Enhance ComboBoxItem layout and styling; update ToolsModal size and class for better responsiveness

* Changed display name

* Adds truncate for badges

* Adds custom styling for table used for Tools modal

* Added Tools modal with AgGrid

* Changed button

* made name and description editable

* Parse values for saving

* Add focused row without triggering checkbox click

* [autofix.ci] apply automated fixes

* Added types for tools modal

* added toolsTable with sidebar on toolsModal

* Added changes to work with MCP

* update component.py to add display name and display description in tool mode

* removed editing directly

* Fixed editing

* removed to upper case

* Make editing apply filters

* Adds design changes for MCP

* Adds new design and null check

* 📝 (frontend): add data-testid attribute to elements for testing purposes
🔧 (frontend): update data-testid attribute values for consistency and clarity in testing
 (frontend): update tests to use correct selectors and improve test coverage for editing tools functionality

*  (edit-tools.spec.ts): update test to use a more reliable method for checking visibility of an element

*  (edit-tools.spec.ts): add "@components" tag to the test to categorize it under components for better organization and filtering in test suites.

* Updated design with new design

* update padding

* send args to tools data

* Implemented showing arguments passed to LLM in tool mode

* add componentg name to description

* update package lock

* fixed tests

* fixed backend test

* fixed backend test

* fixed formatting

* Fixed frontend tests

* updated font sizes for badges on actions and styling on sortable list

* Update tool mode design

* added tooltips for info

* tool name update

* Update component_tool.py

* styling utils

* default values change

* fixed tools test

* fix format issues

---------

Co-authored-by: deon-sanchez <deon.sanchez@datastax.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: Cristhian Zanforlin Lousa <cristhian.lousa@gmail.com>
2025-04-28 23:24:48 +00:00
Edwin Jose
6019b3ee06
fix: cleanup worker test stability (#7826)
* Update test_temp_flow_cleanup.py

fix: component cleanup test

* [autofix.ci] apply automated fixes

* Update test_temp_flow_cleanup.py

The test seems so flaky and unpredictable, hence proceeding with a mock patch of langflow.services.task.temp_flow_cleanup.logger

* Update test_temp_flow_cleanup.py

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-04-28 21:20:53 +00:00
Gabriel Luiz Freitas Almeida
bc1ee21ee9
fix: streaming now works on Agent and ChatOutput (#7833)
* fix: add event handling for AI message chunks in stream processing

* fix: integrate serialization in LangFuse and LangSmith tracers for improved data handling
2025-04-28 20:56:41 +00:00
Jordan Frazier
5f96d18fb1
fix: text access in file component (#7798)
Fix text access in file component
2025-04-28 17:52:42 +00:00
Abhishek Patil
c5c1d33478
feat: add Composio Slack component (#7751)
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
2025-04-28 15:54:10 +00:00
Edwin Jose
8433d72ba3
feat: deprecate combine text and update templates (#7690)
* update template to use prompt

* [autofix.ci] apply automated fixes

*  (generalBugs-shard-5.spec.ts): introduce new function addLegacyComponents to handle legacy components in tests

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
2025-04-28 14:21:47 +00:00
Ali Saleh
2bf21f6b3d
fix: Traces Export & Logs Type Casting For Arize & Phoenix Integration (#7693)
* fix: Traces Export & Logs Type Casting For Arize & Phoenix Integration

* fix: Conditionally Set OTEL Headers for Arize Tracing

---------

Co-authored-by: Eric Hare <ericrhare@gmail.com>
2025-04-25 16:07:31 +00:00
Gabriel Luiz Freitas Almeida
3407fecc79
chore: Increase timeout for codspeed workflow and fix typo in configuration (#7598)
* fix: correct typo in pyproject.toml timeout configuration

Updated the timeout_method key in the pytest.ini_options section from 'tiemout_method' to 'timeout_method' for proper functionality.

* chore: increase timeout for codspeed workflow to 600 seconds

Updated the codspeed workflow configuration to extend the timeout limit, ensuring more robust execution during CI processes.

* fix: Update assertion in TestGraphRAGComponent to use set comparison for improved clarity and performance

* fix: Change pytest timeout method from thread to signal for improved reliability
2025-04-25 15:34:12 +00:00
github-actions[bot]
bec701789c
chore: update test durations (#7722)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
2025-04-25 10:49:00 -03:00
Cristhian Zanforlin Lousa
eed7dee8bf
fix: display errors when webhook background tasks fail (#7572)
* 📝 (base.py): improve naming convention for task names in Graph class
🔧 (base.py): add error logging functionality in _execute_tasks method
🔧 (utils.py): update data parameter type in log_vertex_build function
🔧 (index.tsx): remove unused setCurrentFlow function call in StoreCardComponent
🔧 (use-get-builds-polling-mutation.ts): add error handling and display logic for build failures
🔧 (flowSidebarComponent/index.tsx): make showLegacy prop optional in FlowSidebarComponentProps interface
🔧 (index.tsx): remove commented out code related to branding in FlowPage component

* [autofix.ci] apply automated fixes

* fix: update URL construction in CopyFieldAreaComponent to handle undefined endpointName

- Modified the URL construction logic to use currentFlow.id when endpointName is not provided, ensuring a valid URL is always generated.

* 🔧 (base.py): add error logging method for vertex build failures

- Introduced `_log_vertex_build_from_exception` method to handle and log exceptions during vertex building, improving error reporting and output structure.
- Updated `_execute_tasks` method to utilize the new logging method for better exception handling.

* 🐛 (use-get-builds-polling-mutation.ts): fix error display count to only show errors once per build failure instead of multiple times

* 📝 (embedding_model.py): improve formatting of the info message for the 'dimensions' input to enhance readability and clarity

* [autofix.ci] apply automated fixes

* fix: add webhook component handling in task execution

---------

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-04-24 22:18:49 +00:00
Gabriel Luiz Freitas Almeida
c34b30718e
fix: remove incorrect use of logging that caused log spam (#7763)
fix: use correct logger and remove blanket logging config

* 🔧 (mcp.py, url.py, watsonx.py, langwatch.py, mem0_chat_memory.py, models/watsonx.py, schema.py): Remove standard logging and integrate loguru for enhanced logging functionality and consistency across components.
2025-04-24 21:09:40 +00:00
Lucas Oliveira
3b660c26a3
fix: make dropdown not repeat values on update, update mcp component (#7779)
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
2025-04-24 13:01:43 -03:00
Sebastián Estévez
c161a2e68d
fix: support mcp env vars and nested inputs (#7772)
* env vars for mcp

* support nested mcp schemas

* [autofix.ci] apply automated fixes

* Update mcp_component.py

* [autofix.ci] apply automated fixes

* Update mcp_component.py

* Update mcp_component.py

* fix lint and mypy

* fix tests

---------

Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-04-24 04:40:16 +00:00
Cristhian Zanforlin Lousa
a8ae17b86d
feat: add observable UX for community interaction tracking (#7512)
*  (model.py): add UserOptin class to manage user opt-in actions for better organization and extensibility
♻️ (model.py): refactor User model to include user_optin field as a dictionary to store opt-in actions for users

* [autofix.ci] apply automated fixes

* change name optins

* [autofix.ci] apply automated fixes

*  (add_optins_column_to_user.py): Add optins column to the user table to store user preferences
♻️ (model.py): Refactor UserOptin class to BaseModel for better type hinting and add optins field to User model with default values and proper typing

* [autofix.ci] apply automated fixes

* 🐛 (add_optins_column_to_user.py): fix an issue where the optins column was not being added if it already existed in the user table

*  (empty-page.tsx): Add new page EmptyPageCommunity to display community information and actions
 (main-page.tsx): Add new page CollectionPage to manage collections and folders
🔧 (routes.tsx): Update import path for CollectionPage to point to the new main-page file

*  (background-gradient.tsx): Add a new component BackgroundGradient to create a visually appealing background gradient effect for UI elements
📝 (empty-page.tsx): Refactor EmptyPageCommunity component to use the newly added BackgroundGradient component for GitHub and Discord sections to enhance visual appeal and consistency

* 📝 (tasks.mdc): Add concise task management protocol for sequential mode to improve task organization and execution
 (frontend): Introduce DotBackgroundDemo component for creating a visually appealing dot background effect
♻️ (frontend): Refactor BackgroundGradient component to improve gradient styling and border consistency
🔧 (frontend): Update motion import in background-gradient.tsx to use framer-motion instead of motion/react
🔧 (icons): Add missing newline at the end of Anthropic icon file
🔧 (empty-page.tsx): Adjust styling classes and z-index to improve layout and visual hierarchy in EmptyPageCommunity component

*  (empty-page.tsx): add githubBg image import to use as background image for GitHub link
♻️ (empty-page.tsx): refactor positioning and styling of GitHub link elements for better alignment and readability

* 🔧 refactor(server.ts): change port variable case from lowercase port to uppercase PORT to improve semantics
 refactor(server.ts): add support for process.env.PORT environment variable to be able to run app on a configurable port

* 📝 (AccountMenu/index.tsx): Update imports and remove unused code for better organization and performance
🔧 (use-get-version.ts): Add functionality to refresh the latest version in darkStore after fetching version data
♻️ (darkStore.ts): Add refreshLatestVersion function to update the latest version in darkStore
📝 (dark/index.ts): Add latestVersion field and refreshLatestVersion function to DarkStoreType for better state management

*  (AccountMenu/index.tsx): Add constants for Discord, Docs, GitHub, and Twitter URLs for better maintainability and reusability
📝 (constants.ts): Update Twitter URL to a new value for consistency with other URLs
📝 (TwitterX): Add new TwitterX icon and component for use in the application
📝 (styleUtils.ts): Import and use the new TwitterXIcon in the list of node icons
📝 (utils.ts): Update formatNumber function to handle undefined input values for better error handling

* [autofix.ci] apply automated fixes

* 📝 (add_optins_column_to_user.py): Update down_revision to '1b8b740a6fa3' for consistency
🔧 (AccountMenu/index.tsx): Adjust classNameSize prop value to 'w-[272px]' for styling consistency
🔧 (HeaderMenu/index.tsx): Update HeaderMenuItems component to accept classNameSize prop for dynamic styling
🔧 (langflow-counts.tsx): Adjust styling for better visual consistency and spacing
🔧 (index.tsx): Update className for Bell icon to include text-muted-foreground and strokeWidth
🔧 (get-started-progress.tsx): Update styling and spacing for better visual consistency
🔧 (header-buttons.tsx): Add Separator component for visual separation in HeaderButtons component

* 🔧 (AccountMenu/index.tsx): Adjust padding in AccountMenu component for better alignment and spacing. Fix ThemeButtons positioning for improved layout.

*  (appHeaderComponent/index.tsx): Add support for managing flows and folders in the app header component
📝 (get-started-progress.tsx): Update heading tag to improve semantics
📝 (empty-page.tsx): Update text content in empty page to provide clearer instructions and information

*  (background-gradient.tsx): Add support for dynamic border radius in BackgroundGradient component
🔧 (empty-page.tsx): Remove BackgroundGradient import and replace it with EnhancedBeamEffect component
🔧 (empty-page.tsx): Update styles and classes for EnhancedBeamEffect component and adjust layout
 (enchanced-beam-effect.tsx): Create EnhancedBeamEffect component to add enhanced beam effect to UI components

*  (frontend): update text content and button labels in empty page component for better user experience
📝 (frontend): add data-testid attributes for testing purposes in various components
🔧 (frontend): add new test file for user progress tracking feature with Playwright tests

*  (AccountMenu/index.tsx): Add Admin Page button for admin users in the account menu component
🔧 (user-progress-track.spec.ts): Add utility function addNewUserAndLogin to facilitate adding and logging in new users for testing purposes

* [autofix.ci] apply automated fixes

* 🐛 (get-started-progress.tsx): fix calculation of percentage to ensure it does not exceed 100%

*  (empty-page.tsx): Add Lucide ExternalLink component for external links and update styling for external link icons
♻️ (empty-page.tsx): Refactor CSS classes for external link icons to improve readability and maintainability
📝 (index.css): Add custom CSS variable for Discord color
📝 (tailwind.config.mjs): Add Discord color to Tailwind CSS custom colors

* [autofix.ci] apply automated fixes

* add logo png

*  (index.tsx): Add z-50 class to improve stacking context in CardsWrapComponent
 (empty-page.tsx): Add text-center class to center text elements in EmptyPageCommunity
 (empty-page.tsx): Adjust spacing and alignment in EmptyPageCommunity for better layout and readability

* 🐛 (AccountMenu/index.tsx): fix condition to show admin options only when isAdmin is true and autoLogin is false

* 🔧 (alertDropDown/index.tsx): update z-index value in PopoverContent class to z-50 for proper stacking order

* 🔧 (index.tsx): update z-index value to improve the stacking order of the component on the page

* ♻️ (index.tsx): refactor classNames in CardsWrapComponent to improve readability and maintainability

* 🐛 (empty-page.tsx): fix data-testid attribute value to match the updated element name for better consistency and clarity
🐛 (user-progress-track.spec.ts): fix test cases to match the updated data-testid attribute value for the main page title element to ensure accurate testing and assertions

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-04-22 23:26:33 +00:00
Edwin Jose
5f998407ad
feat: add component utils functions for dynamic input actions (#7748)
* Create component_utils.py

* Update component_utils.py

* update utils to utils folder

* fix ruff format issues.

* [autofix.ci] apply automated fixes

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

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Cristhian Zanforlin Lousa <cristhian.lousa@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-04-22 19:19:46 +00:00
Edwin Jose
cbfd23dfb2
fix: Embedding model component format issues (#7733)
* fix format issues

* [autofix.ci] apply automated fixes

* Update embedding_model.py

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-04-22 16:25:42 +00:00
Edwin Jose
b48e57a223
fix: improve composio gmail component stability (#7673)
* tool change check

* optimised logic

* Update composio_base.py

* update to the init logic

* Update gmail_composio.py

* update default tool logic

* Update src/backend/base/langflow/base/composio/composio_base.py

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

* Update test_gmail.py

---------

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-04-22 15:14:56 +00:00
Gabriel Luiz Freitas Almeida
71d1f06f2e
feat: add deprecation warning for AUTO_LOGIN (#7691)
* feat: Update API key authentication logic and add deprecation warning

- Introduced a deprecation warning for the upcoming change in v1.5 regarding AUTO_LOGIN authentication, which will require a valid API key or JWT.
- Modified the authentication logic to check for API key or JWT in query parameters or headers before falling back to superuser credentials.
- Enhanced the clarity of authentication requirements for users integrating with Langflow.

* fix: Update deprecation warning message for API key authentication
2025-04-17 22:31:14 +00:00
Rodrigo Nader
eff2a30489
feat: add EmbeddingModelComponent for generating embeddings (#7204)
* feat: add EmbeddingModelComponent for generating embeddings

- Introduced a new EmbeddingModelComponent to generate embeddings using specified providers, starting with OpenAI.
- Updated the __init__.py file to include the new component in the exports.
- The component includes various input fields for configuration, such as provider selection, model name, API key, and additional parameters.

* update the tests.

---------

Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
2025-04-17 18:55:31 +00:00