* refactor: add create_stream_tokens_event_manager for handling streaming events
* feat: integrate EventManager into run_graph_internal for enhanced event handling
- Added EventManager import and parameter to run_graph_internal function.
- Updated function call to include event_manager for improved event management during graph execution.
* feat: enhance Graph class with event_manager parameter
- Added event_manager parameter to multiple methods in the Graph class to facilitate better event management during graph execution.
- Updated process and run methods to include event_manager, ensuring it is passed through to relevant function calls.
- Improved documentation for methods to reflect the new event_manager parameter.
* feat: implement streaming support in flow execution with EventManager integration
- Added support for streaming responses in the simplified_run_flow endpoint, allowing real-time event handling during flow execution.
- Introduced consume_and_yield and run_flow_generator functions to manage event consumption and client communication.
- Integrated EventManager for enhanced event tracking, including success and error notifications.
- Updated endpoint documentation to reflect new streaming capabilities and parameters.
- Improved error handling and logging for better debugging and client disconnection management.
* refactor: remove request logging from simplified_run_flow endpoint
- Removed the logging of the request object in the simplified_run_flow function to streamline logging and reduce verbosity.
- This change enhances the clarity of logs by focusing on essential information during flow execution.
* feat: improve gitloader component
* [autofix.ci] apply automated fixes
* feat(git.py): refactor GitLoaderComponent to support asynchronous operations and improve temporary directory management
- Convert methods to async to enhance performance with file operations.
- Implement async context manager for handling temporary clone directories.
- Update binary file check and content filtering to be asynchronous.
* fix(git.py): enhance GitLoaderComponent with improved file filtering and binary check
- Refactor file filtering logic to utilize fnmatch for pattern matching.
- Introduce a new method to check for binary files based on null byte detection.
- Update content filtering to handle exceptions more gracefully.
- Modify temporary directory cleanup to use rmdir instead of remove for better directory management.
- Adjust load_documents method to utilize asyncio.to_thread for lazy loading of documents.
* refactor(git.py): enhance GitLoaderComponent with improved file filtering and binary check
- Refactor binary file check to be synchronous and handle exceptions more gracefully.
- Introduce new methods for checking file patterns and content patterns, allowing for more flexible filtering.
- Consolidate filtering logic into a single method for better maintainability.
- Update load_documents method to run lazy loading in a separate thread for improved performance.
* feat(tests): add unit tests for GitLoaderComponent file filtering and binary detection
- Introduced new test suite for GitLoaderComponent, including tests for binary file detection and file pattern matching.
- Implemented temporary file creation for testing various file types and permissions.
- Added tests for combined filtering functionality, ensuring robust handling of file and content patterns.
* refactor(git.py): improve pattern handling and content filtering in GitLoaderComponent
- Refactored pattern handling to use a more descriptive variable name `pattern_list` for clarity.
- Enhanced content filtering by ensuring proper encoding when reading file content.
- Updated regex validation to include a test string check for better error handling.
- Removed unnecessary comments to streamline the code and improve readability.
* fix: exception TypeError
TypeError: object async_generator can't be used in 'await' expression
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
Co-authored-by: italojohnny <italojohnnydosanjos@gmail.com>
chore: Update Dockerfiles to use COPY instead of ADD run apt-get upgrade
- Replaced ADD commands with COPY for better clarity and consistency across Dockerfiles.
- Added apt-get upgrade and clean commands to reduce image size and ensure packages are up to date.
- Updated user creation commands to include necessary cleanup steps.
- Ensured all Dockerfiles follow a similar structure for maintainability.
* Call __enter__ to make current langwatch trace available globally so users can more easily add more context to it, like final input and output. This means also skipping setting the root_span input and output if already set
* Update LangWatch logo
* 🐛 (newChatView.tsx): fix issue where chat value was not being cleared when tab is hidden
* 🔧 (newChatView.tsx): refactor setting chat value to handle additional condition for better logic clarity
* feat(conditional-router): rename 'matches regex' to 'regex'
- Simplify the operator name in the ConditionalRouter component
- Update dropdown options for better UX
- Maintain existing functionality while using more concise naming
* [autofix.ci] apply automated fixes
---------
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* fix: fetch composio apps list dynamically
* Ensure apps only get loaded once API key is entered
* Add comment
* typo fix
---------
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
* fix uncessary renders on chat
* 📝 (chat-view.tsx): optimize rendering performance by memoizing ChatMessage component and using memoized version for chat history items
* ♻️ (chat-view.tsx): refactor memoized ChatMessage component to include additional props for improved performance and accuracy
* Fixed HandleTooltipComponent to use the type instead of passed color
* Fixed handle colors to use the connected edge color
* Changed color of generic handle
* Fixed edge color when clicking for generic handles
* Updated sidebar filter to contain more than one type
* fixed gradient generalBugs
* Added Minimized field to backend to make component start as minimized
* Added minimized as true to chat components
* Added showNode default value as the opposite of minimized
* Changed starter projects to new components
* [autofix.ci] apply automated fixes
* [autofix.ci] apply automated fixes (attempt 2/3)
* Fixed Freeze and DecisionFlow tests
* Fixed other tests that involved chatoutput and chatinput
* Restored tests that didnt fail
* Fixed stop playground test
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* ✨ (flowSidebarComponent/index.tsx): reorganize imports and remove unnecessary comments for better code readability and maintainability
♻️ (flowSidebarComponent/index.tsx): refactor filtering logic to improve performance and readability
🔧 (flowSidebarComponent/index.tsx): update variable names and state management for better clarity and consistency
💡 (flowSidebarComponent/index.tsx): add comments and organize code structure for easier understanding and future development
📝 (flowSidebarComponent/index.tsx): refactor useEffect hooks to improve code readability and maintainability
📝 (flowSidebarComponent/index.tsx): refactor drag handling function to use useCallback for better performance
📝 (flowSidebarComponent/index.tsx): refactor bundle and category checks to use useMemo for better performance
* ♻️ (flowSidebarComponent/index.tsx): Remove unnecessary comments and optimize code readability by removing redundant comments and improving code structure.
* package-lock
* Fixed FlowHeader model validator, adding data and removing it if flow is not a component
* [autofix.ci] apply automated fixes
* Fixed flowheader to use fieldvalidator instead of modelvalidator
* [autofix.ci] apply automated fixes
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* refactor: Update documentation links and restructure starter projects to use cases
* feat: Add new redirects for use cases in Docusaurus configuration
* lint
* force-menu-collapse
* change-usecase-to-tutorial
* convert flow ids to uuids when loading from dir
* Edit a migration file to check for foreign key existence
* [autofix.ci] apply automated fixes
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* refactor: Simplify agent input text content construction
* Change HUMAN to Input
---------
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
* feat(component): enhance merge data with standard operations
- Add standard merge operations (concatenate, append, merge, join)
- Add operation selection via dropdown
- Return DataFrame output type
- Implement separate merge strategies
* style(component): improve merge data formatting
- Add MIN_INPUTS_REQUIRED constant
- Use descriptive DataFrame variable names
- Move return statement to else block
- Use list comprehension for better performance
- Fix unused loop variable
- Improve overall code formatting
* [autofix.ci] apply automated fixes
* Update src/backend/base/langflow/components/processing/merge_data.py
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
* refactor: adjust merge_data operations to use langflow.schema.DataFrame
* Update Merge Data component name and description
* [autofix.ci] apply automated fixes
* refactor: enhance data merging logic in DataMergerComponent
- Improved type hinting for combined data structures to enhance code clarity.
- Streamlined the concatenation and merging operations to ensure consistent handling of string and object types.
- Updated the logic to correctly append values to lists when merging data inputs, improving data integrity in the merging process.
* revert merge data changes
* add data merger component
* refactor: remove DataMergerComponent and clean up imports
- Deleted the DataMergerComponent to streamline the processing components.
- Updated the __init__.py file to reflect the removal of the DataMergerComponent from the exports.
* refactor: enhance MergeDataComponent with new merge operations
- Introduced a new enum, MergeOperation, to define various data merging strategies: CONCATENATE, APPEND, MERGE, and JOIN.
- Updated the merge_data method to return a DataFrame instead of a list of Data objects, improving data handling.
- Enhanced input validation to ensure a minimum number of data inputs are provided.
- Streamlined the merging logic to support different operations, improving flexibility and usability of the component.
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
* 📝 (newChatMessage.tsx): add event listener to handle tab visibility change and update state accordingly
📝 (newChatMessage.tsx): remove event listener when component unmounts to prevent memory leaks
* ✨ (use-tab-visibility.tsx): introduce custom hook useTabVisibility to track tab visibility changes in the browser
📝 (newChatMessage.tsx, newChatView.tsx): import and use useTabVisibility hook to handle tab visibility changes and update chat behavior accordingly
* 📝 (newChatMessage.tsx): remove duplicate import of useTabVisibility and update import path
📝 (newChatView.tsx): remove duplicate import of useTabVisibility and update import path
✨ (use-tab-visibility.tsx): create a new custom hook to track tab visibility changes in the browser
* reducing to smaller components
* 📝 (frontend): remove unused imports and clean up code in various files to improve code readability and maintainability
* 📝 (editMessage/index.tsx): Rename EditMessage component to MarkdownField for better clarity and consistency
📝 (newChatMessage.tsx): Replace EditMessage component with MarkdownField component for rendering chat messages with markdown support
📝 (newChatView.tsx): Add conditional rendering to display a message when no chat messages are fetched
✨ (chatViewWrapper/index.tsx): Add messageFetched prop to ChatView component to handle messages fetching status and improve component functionality.
* prompt viedw
* Refactor chat view component and remove unused prop
* [autofix.ci] apply automated fixes
---------
Co-authored-by: anovazzi1 <otavio2204@gmail.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* feat: add OpenRouter component for multi-provider model access
- Add OpenRouter integration with provider-based model selection
- Support dynamic model fetching from OpenRouter API
- Implement temperature and max tokens controls
- Add site URL and app name for rankings
- Include model tooltips with context length and descriptions
* fix: restore SambaNova component in models __init__.py
* refactor: simplify OpenRouter build_model method
* [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>
* refactor: Rename store message component to message store
* [autofix.ci] apply automated fixes
* refactor: Rename store message component to message store
* [autofix.ci] apply automated fixes
* [autofix.ci] apply automated fixes
* fix: restore StoreMessage name for backwards compatibility
* fix(core): rename store_message.py for compatibility
- Restore original filename to maintain system compatibility
- Ensure consistent file naming across codebase
* fix(ui): correct output message display name
- Update Output display_name from "Stored Messages" to "Stored Message"
- Maintain consistency in singular/plural naming conventions
* refactor: rename message_store to store_message in helpers module
- Updated import statement in __init__.py to reflect the new module name for MessageStoreComponent.
- This change improves clarity and consistency in the component naming convention.
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
* ✨ (csv.py): Add support for passing Pandas kwargs to the CSV agent for more customization and flexibility.
* 📝 (csv.py): mark 'is_list' attribute as True for the 'Pandas Kwargs' parameter to indicate it can accept a list of values
* fix: AstraDBCQLToolComponent
Tool part is working fine but the direct Data output fails cause of partition key issue
* Ruff fix
* [autofix.ci] apply automated fixes
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* refactor: streamline imports and enhance flow header response handling in flows.py
- Consolidated import statements for better readability.
- Updated the response structure in the function to utilize for improved data validation and consistency.
* refactor: enhance FlowHeader model with detailed field descriptions and validation
- Updated FlowHeader model to include field descriptions for better clarity and documentation.
- Introduced a model validator to ensure data integrity before processing.
- Streamlined import statements for improved readability.
---------
Co-authored-by: Lucas Oliveira <62335616+lucaseduoli@users.noreply.github.com>