* chore: action params naming
* chore: remove comments
* chore: replaced MessageTextInput field with StrInput
* feat: add google calendar component
* feat: replaced loops with hardcoded display-name action-enum mapping to improve performance
* chore: format
* fix: add type ignore for action_key in getattr call
* feat: add google sheets component
* fix: format google calendar utils
* feat: add google meet Component
* chore: minor improvement
* chore: format & lint
* fix: google meet component
* feat: add GitHub component
* fix: format
* fix: lint
* fix: typo
* feat: add Slack Component
* fix: format
* fix: rest bool value to None
* chore: disabled slack tools temporarily
* fix: add condition to set list variables to None in when action is changed
* chore: capitalise display names
* fix: update list issues field to MessateTextInput
* fix: format/lint in slack component
* fix: google calendar logo
* fix: revert setting bool field to None
* feat: composio-core & composio-core version bump to 0.7.10
* fix: minor bugs
* feat: add accepted values to AccessType field in google meet component
* feat: add accepted values for entry point access field in Google meet component
* fix: Google Calendar display names
* feat: replace list with nested list for batch update field in Google sheets
* fix: display name in Google sheets
* fix: format
* fix: titlecase display name in google meet component
* feat: set advaced to true for advanced fields
* feat: add condition to skip empty list fields in execute_action
* chore: improve display names GitHub Component
* fix: slack component display names & minor enhancements
* feat: update condition to skip empty fields while executing action
* feat: fix google calendar field description
* feat: update googlemeet component to use new inputs & composio base class
* chore: update googlemeet component filename
* feat: update github component to use new inputs & composio base class
* feat: update google calendar to use new inputs & composio base class
* feat: update google sheets component to use new inputs & Composio base class
* feat: update slack component to use new inputs & Composio base class
* fix: format
* chore: cleanup un-used code
* chore: format
* feat: add missing fields & actions
* chore: fix typo
* feat: rm other components
* feat: improve error message format & revert composio libs bump
* chore: revert uv.lock file
* update tests
* fix: remove duplicate action field in GMAIL_FETCH_EMAILS
* fix: remove unused code
* fix: add ignore statement
---------
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
* added toggle_disable option
* made toggle be disabled when toggle_disable is true
* added logic to disable toggle when choosing hybrid search
* Updated starter projects
* Fixed toggle_disable to be optional
* fixed toggle disable to remove toggle
* ✅ (intComponent.spec.ts): update test assertions to match expected behavior after changes in the component's functionality
---------
Co-authored-by: Carlos Coelho <80289056+carlosrcoelho@users.noreply.github.com>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
* fix: update Gmail icon to Google and improve ListSelectionComponent styles
* fix: remove unnecessary info and improve required field handling in Composio components
* style: update ListSelectionComponent and SortableListItem for improved layout and styling
* fix: enhance ListSelectionComponent and SortableListComponent to support search functionality
* style: adjust height and padding in SortableListItem for better visual consistency
* ✅ (intComponent.spec.ts): update test assertions to match expected behavior after changes in the component's functionality
---------
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
* chore: update package versions to 1.3.3 and 0.3.3
- Bump langflow version to 1.3.3 in pyproject.toml and uv.lock.
- Update langflow-base version to 0.3.3 in its pyproject.toml and uv.lock.
* chore: bump langflow version to 1.3.3 in package.json and package-lock.json
refactor: Update event delivery mechanism in build_flow_and_stream function
Modified the build_flow_and_stream function to utilize the new event delivery type, STREAMING, for improved event handling. The function now returns a response from get_flow_events_response, enhancing the clarity and robustness of the event streaming process.
Co-authored-by: Cristhian Zanforlin Lousa <cristhian.lousa@gmail.com>
* feat: Add new OpenAI model versions to constants
Added "gpt-4.1", "gpt-4.1-mini", and "gpt-4.1-nano" to the list of OpenAI model names in openai_constants.py to support the latest model updates.
* feat: Add new OpenAI model options to starter projects
Included "gpt-4.1", "gpt-4.1-mini", and "gpt-4.1-nano" in the options for various starter project configurations to support the latest model updates across multiple JSON files.
---------
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
Co-authored-by: Carlos Coelho <80289056+carlosrcoelho@users.noreply.github.com>
* add _check_file_format
* [autofix.ci] apply automated fixes
* change to __adjust_file_path_with_format
* [autofix.ci] apply automated fixes
* Refactor and enhance tests for _adjust_file_path_with_format method
- Added parameterized tests to verify correct file extension handling for various formats.
- Ensured existing extensions are preserved and incorrect extensions are handled appropriately.
- Included a test for expanding the home directory symbol '~' in file paths.
- Removed outdated tests related to _check_file_format method.
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
* fix: ensure foreign key constraints are only dropped if they exist in upgrade script
* Updated the upgrade function to check for the existence of foreign key constraint names before attempting to drop them in the message, transaction, and vertex_build tables, enhancing robustness and preventing potential errors during migration.
* refactor: streamline foreign key constraint removal in upgrade script
* Simplified the upgrade function by directly dropping foreign key constraints for the message, transaction, and vertex_build tables without checking for their existence, enhancing code clarity and maintainability.
* feat: introduce naming convention for database constraints in Alembic environment
* Added a naming convention dictionary to standardize the naming of indexes, unique constraints, check constraints, foreign keys, and primary keys in the Alembic migration environment, enhancing consistency and clarity in database schema management.
* refactor: enhance foreign key constraint management in upgrade and downgrade scripts
* Updated the upgrade function to recreate the message, transaction, and vertex_build tables without foreign key constraints, preserving data integrity during migration.
* Improved the downgrade function to restore these tables with the appropriate foreign key constraints, ensuring consistency in the database schema.
* Introduced a naming convention for database constraints to standardize naming across migrations.
* refactor: update table schema in Alembic migration for improved data handling
* Modified the schema for the message, transaction, and vertex_build tables to enhance data integrity by changing column types and adding new fields.
* Updated data insertion queries to use quoted identifiers, preventing potential issues with SQL keywords.
* Ensured that the upgrade and downgrade functions maintain consistency in the database schema during migrations.
* refactor: enhance data insertion logic in Alembic migration scripts
* Updated data insertion queries for the message, transaction, and vertex_build tables to explicitly list columns and filter out rows with NULL IDs, improving data integrity during migrations.
* Utilized window functions to ensure uniqueness of build_id across different database systems, enhancing compatibility and robustness.
* Maintained consistency in upgrade and downgrade functions to ensure seamless schema transitions.
* Revert "Revert "fix: published flows now can add rows to the database" (#7571)"
This reverts commit a8d2fccd1c.
fix: standardize endpoint paths in files API
Updated the file API routes to include trailing slashes for consistency. This change affects the upload, list, and delete endpoints, ensuring they all follow the same URL structure.
* create Amazon bundle
* Update s3_bucket_uploader.py
* update FE tests
* [autofix.ci] apply automated fixes
* ✅ (dropdownComponent.spec.ts): update test selectors to match the updated component names for better test accuracy
✅ (keyPairListComponent.spec.ts): update test selectors to match the updated component names for better test accuracy
* Update filterEdge-shard-1.spec.ts
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
* 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
* fix: update test URL in loop-component.spec.ts to reflect correct reference
Changed the URL in the test case from "Artificial_intelligence" to "Human_intelligence" to ensure accurate testing of the loop component functionality.
* update FE tests
* [autofix.ci] apply automated fixes
---------
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* ssl-support: Enable SSL for local development to simulate a production-like environment. This would allow testing features requiring SSL during development, third party integrations, and allowing easier SSL integration without WAFs and reverse proxies
* rebase
* rebase fixes
---------
Co-authored-by: lpetkov <lpetkov@pros.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
Co-authored-by: Jordan Frazier <122494242+jordanrfrazier@users.noreply.github.com>
Co-authored-by: Jordan Frazier <jordan.frazier@datastax.com>
* fix: update type hints in BatchRunComponent for improved clarity and consistency
* fix: add type casting in BatchRunComponent for improved type safety
* [autofix.ci] apply automated fixes
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* fix: add File model to module exports in database models
* fix: remove unused relationships and imports in database models
* fix: remove foreign key constraints from message, transaction, and vertex_build tables
* fix the issue where `build_public_tmp` does not support `EVENT_DELIVERY=direct`
* fix: modify `build_public_tmp` to conform to the latest design
* [autofix.ci] apply automated fixes
* fix: Delete debugging logs
* fix: Delete debugging logs
* fix: Delete debugging logs
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
* refactor: update BatchRunComponent to enhance functionality and usability
- Added TOML formatting for rows when no specific column is set.
- Updated display names and descriptions for clarity.
- Introduced an output column name option for customizable model response storage.
- Improved metadata handling and error management.
- Refactored row creation to include original columns and enhanced metadata.
* [autofix.ci] apply automated fixes
* fix: ruff errors
* [autofix.ci] apply automated fixes
* fix: component tests
* [autofix.ci] apply automated fixes
* Update src/backend/base/langflow/components/helpers/batch_run.py
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
* [autofix.ci] apply automated fixes
* [autofix.ci] apply automated fixes (attempt 2/3)
* ♻️ (batch_run.py): refactor type annotations to use Hashable for dictionary keys to improve type safety and compatibility with different types of keys
* youtube fix
* 🔧 (batch_run.py): remove unnecessary StrInput import and update MessageTextInput import to improve code cleanliness and remove redundancy
* 📝 (batch_run.py): Update import statement to include Hashable from collections.abc for better readability and maintainability
📝 (Youtube Analysis.json): Update display name from "Batch Results" to "DataFrame" for better clarity and consistency
* [autofix.ci] apply automated fixes
* [autofix.ci] apply automated fixes (attempt 2/3)
* uv ruff fixes
* [autofix.ci] apply automated fixes
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: italojohnny <italojohnnydosanjos@gmail.com>
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
Co-authored-by: Cristhian Zanforlin Lousa <cristhian.lousa@gmail.com>
Co-authored-by: Carlos Coelho <80289056+carlosrcoelho@users.noreply.github.com>
* Add Query Input and Mixin on backend
* Adds Query on supported types
* Adds types for query modal and component
* Adds size for new query modal
* Adds query modal
* Adds query component
* Adds query component on parameter render
* [autofix.ci] apply automated fixes
* ✨ (switch-case-size.ts): Update height value to 'h-fit' for 'small-query' case to improve responsiveness
✨ (queryInputComponent.spec.ts): Add unit test for user interaction with query input component, including updating code and testing functionality
* Fixed handle not working on Query Input
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
* Removed msg from nvidia_ingest
* Added default file picker timeout
* Use bigger timeout for file picker
* Added condition to only say that file was uploaded successfully if there are files
fix: ignore ConnectionError in NVIDIA model component in case there's no internet connection
- Added logging for connection issues when accessing the NVIDIA API.
- Implemented exception handling for ConnectionError, MaxRetryError, and NameResolutionError to improve robustness and user feedback.
* feat: add new event delivery method "direct"
- Updated event_delivery options in ConfigResponse and Settings to include "direct".
- Modified build_flow function to utilize settings_service for conditional event handling.
- Improved flow processing by returning job_id or event responses based on delivery method.
* feat: implement direct event delivery method on the frontend
- Updated buildFlow function to include eventDelivery parameter, allowing for "direct" event delivery mode.
- Modified NodeStatus and IOModal components to utilize the new eventDelivery setting.
- Expanded flowStore and buildUtils to support event delivery options, improving flexibility in event handling.
- Added "direct" option to event delivery types in enums for better configurability.
- Updated tests to cover new event delivery modes.
* fix: change default event delivery method to "polling"
- Updated the default value of event_delivery in Settings from "direct" to "polling" to align with intended behavior.
- Ensured documentation reflects the change in default settings for clarity on event delivery options.
* Update src/frontend/src/controllers/API/api.tsx
* Update src/frontend/src/utils/buildUtils.ts
* Update src/frontend/src/utils/buildUtils.ts
* Update src/frontend/src/utils/buildUtils.ts
* feat: add event delivery validation for multi-worker environments
- Introduced a new field validator for the `event_delivery` setting to enforce "direct" delivery when the number of workers exceeds one.
- This change ensures compatibility with multi-worker setups, improving the robustness of event handling in the application.
* feat: add warning for multi-worker event delivery
- Added a warning log in the Settings class to notify users when a multi-worker environment is detected, indicating that "direct" event delivery will be used. This enhances visibility and understanding of event handling behavior in such setups.
* refactor: remove "direct" from event delivery modes in tests
- Updated the event delivery modes in the withEventDeliveryModes utility to exclude "direct", aligning with recent changes in event handling behavior.
- This change simplifies the testing setup and ensures consistency with the current application logic.
---------
Co-authored-by: Cristhian Zanforlin Lousa <cristhian.lousa@gmail.com>
* old composio Gmail component
* Update gmail_composio.py
* [autofix.ci] apply automated fixes
* Removed input types from secret input
* Changed starter projects
* Update gmail_composio.py
* composio base
* [autofix.ci] apply automated fixes
* updated composio with multi output
* [autofix.ci] apply automated fixes
* fix lint errors
* [autofix.ci] apply automated fixes
* Added sortableList and connect to frontend types constant
* Added AuthInput to backend and frontend constant
* Added auth input to InputTypes and added show = false by default
* fix: Update Composio icon (#7407)
fix: update Composio icon dimensions and simplify SVG structure
* Fix amber color
* Fix button and voice assistant button to use correct design and colors
* Fixed button design to include bg
* remove bg definition from voice assistant
* Added auth input to composio base
* Added helper text to sortable list
* Add unlink icon
* Add node connection button
* Changed to isPolling
* [autofix.ci] apply automated fixes
* Added auth tooltip
* Added auth tooltip to mixinn
* Add auth mixin to input
* update the field visibility
* Fixed disconnect
* Update composio_base.py
* Updated node status to show correct statuses
* Added handling for API errors and disconnections
* limit to dataframe output
* add basic tests for base and gmail component
* fix lint errors
* 📝 (test files): Remove unnecessary blank lines to improve code readability and consistency.
* Add result_field to GMAIL_FETCH_EMAILS action and change how result key is used
* fix: Add validation for result structure in ComposioGmailAPIComponent
* fix: Ensure result is a list of dicts before converting to DataFrame in ComposioBaseComponent
* feat: Introduce get_result_field option for Gmail actions to control result retrieval behavior
* Fixed status not updating in real time
* Added default API value to Composio
* Made sortableList only be openable if no helper text is present
* fix: Update validation logic in ComposioGmailAPIComponent to incorporate get_result_field option for improved result handling
* Fixed bug where pre-filled Global Variable didn't trigger login
* refactor: Remove commented-out output definitions in ComposioBaseComponent for cleaner code
* refactor: Clean up ComposioGmailAPIComponent by removing outdated comments for improved readability
* ✨ (NodeStatus/index.tsx): refactor getConnectionButtonClasses and getConnectionIconClasses functions to improve code readability and maintainability
* ♻️ (NodeStatus/index.tsx): refactor getConnectionButtonClasses and getConnectionIconClasses functions to use arrow function syntax for better readability and maintainability
* 🔧 (NodeStatus/index.tsx): define constants POLLING_TIMEOUT and POLLING_INTERVAL for better readability and maintainability
* ✨ (ListSelectionComponent): Add dataTestId prop to ListItem component for better testing
📝 (NodeStatus): Refactor data-testid value to be dynamically generated based on node status
📝 (searchBarComponent): Add data-testid attribute to search input for testing purposes
📝 (sortableListComponent): Add data-testid attribute to button for opening list selection
♻️ (utils.ts): Add testIdCase function to convert string to snake_case for test ids
📝 (composio.spec.ts): Add various test cases for interacting with composio component
* ✨ (test_gmail.py): add MagicMock import to fix missing dependency for testing
🔧 (test_gmail.py): refactor execute_action method to return a structure compatible with component's logic
♻️ (test_gmail.py): refactor _build_wrapper method to return a mock for the toolset
✨ (test_gmail.py): add patching for _actions_data to ensure correct structure for GMAIL_FETCH_EMAILS
🔧 (test_gmail.py): refactor execute_action method to return mock data for testing as_dataframe method
🔧 (test_gmail.py): refactor as_dataframe method to handle mock email data and verify DataFrame content
🔧 (test_gmail.py): refactor execute_action method to return mock data for testing update_build_config method
🔧 (secretKeyModal/index.tsx): remove unused imports and clean up the file structure
* [autofix.ci] apply automated fixes
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Lucas Oliveira <lucas.edu.oli@hotmail.com>
Co-authored-by: Deon Sanchez <69873175+deon-sanchez@users.noreply.github.com>
Co-authored-by: Lucas Oliveira <62335616+lucaseduoli@users.noreply.github.com>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
* chore: Add trustcall dependency to pyproject.toml
* fix: Update bind_tools method to include optional tool_choice parameter for enhanced flexibility in tool binding
* refactor: Update StructuredOutputComponent to utilize create_extractor for structured output and enhance result handling
* Replaced direct call to with_structured_output with create_extractor for improved flexibility.
* Added handling for "responses" in result to ensure proper data extraction.
* Introduced is_last_pydantic_output_parser method to check parser type in structured output processing.
* test: Add comprehensive tests for StructuredOutputComponent with OpenAI and NVIDIA models
* Implemented multiple test cases for StructuredOutputComponent using real OpenAI and NVIDIA models.
* Added tests for simple, complex, and nested schemas to validate structured output extraction.
* Included error handling tests to ensure proper response to model limitations and API errors.
* Utilized pytest for conditional test execution based on environment variables for API keys.
* refactor: Update JSON starter projects to include StructuredOutputComponent with enhanced input and output handling
* Integrated StructuredOutputComponent into Financial Report Parser and Portfolio Website Code Generator starter projects.
* Updated input fields to include detailed descriptions and requirements for structured output generation.
* Ensured consistent schema definitions and improved error handling for model limitations.
* Enhanced documentation for better clarity on component usage and expected outputs.
* [autofix.ci] apply automated fixes
* refactor: Remove unused PydanticOutputParser method from StructuredOutputComponent
* Deleted is_last_pydantic_output_parser method as it was no longer necessary for structured output processing.
* Cleaned up the code to enhance maintainability and readability.
* refactor: Update JSON starter projects to enhance StructuredOutputComponent integration
* Refactored Financial Report Parser and Portfolio Website Code Generator to streamline the StructuredOutputComponent.
* Removed unused PydanticOutputParser method to improve code clarity and maintainability.
* Enhanced input descriptions and requirements for structured output generation.
* Improved error handling and documentation for better user guidance.
* [autofix.ci] apply automated fixes
* refactor: Simplify response handling in StructuredOutputComponent
* Updated the response extraction logic to use the walrus operator for cleaner code.
* Improved readability by replacing the previous conditional check with a more concise approach.
* Ensured consistent handling of structured output results.
* [autofix.ci] apply automated fixes
* refactor: Remove unnecessary TYPE_CHECKING import and simplify type casting in StructuredOutputComponent
* Eliminated the TYPE_CHECKING import for improved clarity.
* Simplified the type casting of the language model in the response extraction logic.
* Enhanced code readability and maintainability.
* [autofix.ci] apply automated fixes
* [autofix.ci] apply automated fixes
* refactor: reorder response handling in StructuredOutputComponent for clarity
* refactor: unify StructuredOutputComponent code across multiple starter projects for consistency
* Standardized the implementation of StructuredOutputComponent in Financial Report Parser, Image Sentiment Analysis, Market Research, and Portfolio Website Code Generator.
* Enhanced code clarity and maintainability by ensuring uniformity in input and output definitions across these components.
* refactor: update build_structured_output method in StructuredOutputComponent to include text_key
* Modified the build_structured_output method to return a Data object with a text_key for improved clarity in output structure.
* Ensured consistency across various starter projects by aligning the output format of StructuredOutputComponent.
* [autofix.ci] apply automated fixes
* 🔧 (structured_output.py): refactor create_extractor function to support structured data extraction in a specific format specified by schema_name
💡 (structured_output.py): add tool_description variable to provide a description for the structured data extraction tool
* [autofix.ci] apply automated fixes
* [autofix.ci] apply automated fixes (attempt 2/3)
* ♻️ (structured_output.py): refactor code to simplify the creation of extractor with tools parameter and remove unnecessary tool_description and schema_name variables.
* [autofix.ci] apply automated fixes
* ✨ (structured_output.py): enhance documentation by adding a dynamic docstring to the output model creation, improving clarity on the schema's purpose.
* ✨ (structured_output.py): update structured output component across multiple starter projects to enhance consistency and clarity in output schema definitions. Improved documentation and dynamic docstring integration for better understanding of the structured data extraction process.
* 🔧 (typescript_test.yml): enhance test command by adding retries to Playwright tests for improved stability and reliability during CI runs. Cleaned up whitespace for better readability.
* feat: add sample resume for testing and update test to use new file
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Cristhian Zanforlin Lousa <cristhian.lousa@gmail.com>