* chore: remove setup-uv action configuration file as it is no longer needed
* chore: update setup-uv action to use the official action across all workflows
* chore: disable cache pruning in all workflows to improve build stability
* chore: update Python version to 3.13 and add pre-release description in workflows
fix: ensure consistent version extraction for langflow-base in workflows
Updated version extraction commands in multiple workflow files to consistently use 'head -n 1' for retrieving the first occurrence of the langflow-base version. This change improves reliability in version detection across docker-build, nightly_build, python_test, release_nightly, and release workflows.
* Use pyproject standardized dependency-groups
* fix: update Python version requirement to support up to 3.14
---------
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
ci: Update Python versions in GitHub Actions workflows to remove 3.13
- Modified the Python version matrix in both `nightly_build.yml` and `python_test.yml` to exclude Python 3.13, ensuring compatibility and streamlining the testing process.
- This change enhances the clarity of the supported Python versions in the CI configuration.
* feat: add input for Python version in setup-uv action
* Introduced a new input parameter 'python-version' to allow users to specify the Python version for the setup-uv action, defaulting to 3.12.
* Updated the action to use the new input instead of relying on a version file.
* fix: update Python version setup in GitHub Actions workflow
* Changed the Python version setup in the GitHub Actions workflow to use a matrix input instead of a version file, enhancing flexibility and allowing for dynamic version specification.
* This change applies to both the main job and the test job in the workflow configuration.
* chore: update Python version in GitHub Actions workflow to 3.12
* Changed the Python version setup in the GitHub Actions workflow from using a version file to directly specifying Python 3.12, ensuring consistency and clarity in the environment configuration.
* chore: add environment variables for OpenAI and Astra DB in GitHub Actions workflow
* Introduced new environment variables for OPENAI_API_KEY, ASTRA_DB_API_ENDPOINT, and ASTRA_DB_APPLICATION_TOKEN in the store_pytest_durations.yml workflow file to enhance integration capabilities and secure access to necessary APIs.
* chore: add Python 3.13 to GitHub Actions workflow matrix
* chore: update GitHub Actions workflow to include Python 3.13 in the testing matrix
* Add Python 3.13 to nightly build test matrix
* chore: update Python version requirement and remove deprecated dependencies in pyproject.toml files
* Updated Python version requirement to allow up to 3.14 in both main and base pyproject.toml files.
* Removed deprecated dependencies: cohere and pyautogen from the main dependencies list.
* chore: update Python version requirements and add support for Python 3.13 in uv.lock
* Updated the required Python version to allow up to 3.14.
* Adjusted resolution markers for Python versions to include 3.13.
* Added markers for the 'typing-extensions' dependency to restrict it for Python versions below 3.13.
* Included additional wheel files for various packages to support Python 3.13 compatibility.
* Update Python version requirements in README files to support Python 3.13
* Update Python version in GitHub Actions workflow to 3.13
* Update Python version in GitHub Actions workflows to include 3.13
* Update installation documentation to support Python 3.13 and clarify troubleshooting steps
* revert changes to docs until we release
* chore: add ag2 dependency and update uv.lock for Python 3.13 compatibility
* Added ag2 version 0.3.2 and 0.5.2 to pyproject.toml and uv.lock with appropriate resolution markers for Python versions.
* Included flaml version 2.3.2 in uv.lock to ensure compatibility with the new ag2 dependency.
* Updated dependency specifications to support Python 3.13 and above.
* Update TypeScript test workflow to improve Playwright caching and containerization
- Add container image for Playwright to ensure consistent environment
- Modify Playwright version retrieval to use `npm ls` for accuracy
- Enhance caching strategy with restore keys for Playwright binaries
- Refactor Playwright installation steps to handle dependencies based on cache status
* Remove Playwright container image specification from GitHub Actions workflow
* Add GitHub Action to install Playwright with caching support
- Created a new composite GitHub Action `install-playwright` to install Playwright and its dependencies with caching.
- Updated `typescript_test.yml` workflow to use the new `install-playwright` action, simplifying the installation process and ensuring efficient use of cache.
- The action supports specifying a working directory and selecting browsers to install.
* Remove redundant Playwright caching steps from GitHub Actions workflow
* Update Playwright version extraction logic in GitHub Action
- Modify script to read `package.json` directly for Playwright version.
- Support both `dependencies` and `devDependencies` for version retrieval.
- Remove caret and tilde symbols from version string.
* Optimize Node.js setup and caching in GitHub Actions workflow
* Set UV_CACHE_DIR environment variable in GitHub workflows
* Refactor SignUpPage to import InputComponent from the core components directory
* Set default test suites to an empty array in TypeScript test workflow
* Fix conditional logic in TypeScript test workflow for release builds
* Fix syntax error in conditional statement in GitHub Actions workflow
* Add pytest-github-actions-annotate-failures to dependencies in pyproject.toml
* feat: add --exclude-warning-annotations option to pytest commands in Makefile
* feat: add pytest-github-actions-annotate-failures to dev dependencies in pyproject.toml and uv.lock
* Add PYTEST_RUN_PATH environment variable to GitHub Actions workflow
* Remove '--exclude-warning-annotations' option from pytest commands in Makefile
* Update scripts
* update the base dep in uv deps
* update nightly scripts
* Add uv creds for publish
* skip tests for now
* fix version
* only build the wheel
* try again
* add uv to python run
* [autofix.ci] apply automated fixes
* use uv cache
* more version fixe
* fixing versions
* fix base version
* Try no frozen?
* skip everything to try docker build
* tag
* frozen
* separate script for updating uv dep
* [autofix.ci] apply automated fixes
* hardcoded versions
* hardcoded versions
* add version to editable package
* build project before docker file runs
* try again
* fix uv patht o build
* don't know why this would mkae a difference
* debug statements
* debug statements
* debug statements
* change path to whl 🤷
* manually move the wheel...
* make dir
* try no sources
* add back tests
* refactor uv to action
* add uv action
* Update nightly build workflow to include uv lock files in version update commit
* Update lint-py workflow to use specific ref for setup-uv action
* Add checkout step to style-check-py GitHub Actions workflow
* Remove redundant GitHub ref syntax in lint-py.yml workflow
* Update lint-py.yml to use specific ref for setup-uv action
* Update action.yml: standardize quotes and remove redundant checkout step
* Add checkout step to GitHub Actions workflows for specific ref handling
- Introduced `actions/checkout@v4` step to multiple workflows to ensure code is checked out at a specific ref.
- Updated `.github/workflows/docker-build.yml`, `.github/workflows/release_nightly.yml`, `.github/workflows/lint-py.yml`, and `.github/workflows/style-check-py.yml` to include the new checkout step.
- Ensured credentials are persisted during the checkout process.
* Add checkout step to Python test workflow with specific ref
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
* uv sync works
* fist stab at Makefile
* uv treatment for langflow-base
* sqlmodel to 0.0.18
* add reinstall_backend to Makefile
* makefile - reinstall_backend fix and unit_test dependency
* fix dev dependencies
* fix dev dependencies
* fix dev dependencies
* lock
* Makefile
* [autofix.ci] apply automated fixes
* Update Makefile
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
* delete update_dependencies
* fix lint
* Remove Poetry lock check from GitHub Actions workflow
* Switch to 'uv' for dependency management and caching in style-check workflow
* Update style-check workflow to use '--only-dev' flag for Ruff check
* Integrate 'uv' package setup and caching in GitHub Actions workflows
* Update version check in GitHub Actions to use 'uv tree' for langflow-base
* Remove redundant poetry environment setup in GitHub Actions workflow
* Add step to minimize uv cache in GitHub Actions workflow
* Update GitHub Actions workflow to use 'uv' for dependency management and caching
* Remove redundant script execution from build_langflow target in Makefile
* [autofix.ci] apply automated fixes
* Switch build system from Poetry to Hatchling and update dependencies
- Replace `poetry-core` with `hatchling` in build-system requirements
- Update `langflow-base` dependency to version `0.0.96`
- Add `tool.hatch.build.targets.wheel` configuration
- Adjust `tool.uv.sources` paths for `langflow-frontend` and `langflow-base`
* update lock
* Switch build system from Poetry to Hatchling in pyproject.toml
* Add langchain-unstructured dependency 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>
* feat(utils.py): add escape_json_dump function to escape JSON strings for Edge dictionaries
* refactor(Output): streamline add_types method to prevent duplicate entries in types list for improved type management
* feat(data.py): add classmethod decorator to validate_data for enhanced validation logic when checking data types
* feat(setup.py): implement retry logic for loading starter projects to enhance robustness against JSON decode errors
* fix(input_mixin.py): improve model_config formatting and update field_type alias for clarity and consistency in field definitions
* feat(types.py): refactor vertex constructors to use NodeData and add input/output methods for better component interaction
* feat(schema.py): add NodeData and Position TypedDicts for improved type safety and structure in vertex data handling
* feat(base.py): update Vertex to use NodeData type and add to_data method for better data management and access
* refactor(schema.py): update TargetHandle and SourceHandle models to include model_config attribute
* Add TypedDict classes for graph schema serialization in `schema.py`
* Refactor `Edge` class to improve handle validation and data handling
- Consolidated imports and removed redundant `BaseModel` definitions for `SourceHandle` and `TargetHandle`.
- Added `valid_handles`, `target_param`, and `_target_handle` attributes to `Edge` class.
- Enhanced handle validation logic to distinguish between dictionary and string types.
- Introduced `to_data` method to return edge data.
- Updated attribute names to follow consistent naming conventions (`base_classes`, `input_types`, `field_name`).
* Refactor `Edge` class to improve handle validation and data handling
* Refactor: Standardize attribute naming and add `to_data` method in Edge class
- Renamed attributes to use snake_case consistently (`baseClasses` to `base_classes`, `inputTypes` to `input_types`, `fieldName` to `field_name`).
- Added `to_data` method to return `_data` attribute.
- Updated validation methods to use new attribute names.
* Refactor: Update Edge class to consistently use snake_case for attributes and improve validation logic for handles
* Refactor: Change node argument type in add_node and _create_vertex methods to NodeData for better type safety and clarity
* Refactor: Implement JSON serialization for graph data with `dumps` and `dump` methods, enhancing data export capabilities
* Refactor: Add pytest fixtures for ingestion and RAG graphs, enhance test structure for better clarity and organization
* Refactor: Add pytest fixtures for memory_chatbot_graph tests and improve test structure
* Refactor: Remove unused methods in ComponentVertex class to streamline code and improve readability
* Refactor: Remove unnecessary line in ComponentVertex class to enhance code clarity and maintainability
* Refactor: Update import path for DefaultPromptField to improve code organization and maintainability in api_utils.py
* Refactor: Update import path for DefaultPromptField to enhance code organization and maintainability in prompt.py
* fix: Remove fixture in test_memory_chatbot.py that blocked db setup
* Refactor: Add durations path for unit tests to improve test reporting
* Refactor: Add splitting algorithm option for unit tests
* Add async option to Makefile for unit tests and update GitHub Actions workflow
- Introduced `async` variable in Makefile to conditionally run unit tests with or without parallel execution.
- Updated `unit_tests` target in Makefile to handle `async` flag.
- Modified GitHub Actions workflow to set `async=false` for unit tests.
* feat(workflows): add NODE_VERSION to python_test workflow for Node.js setup
Enhanced the CI workflow by including Node.js setup with version 21 to support JavaScript components
* fix(workflows): implement retry logic in python_test workflow for unit tests
Added a retry mechanism to enhance test reliability in CI workflow
* Add astra integration tests to CI
* Add astra integration tests to CI
* revert whitespace changes
* update filter
* Swap to using a scheduled job rather than filter
* chore(workflows): update lint-js.yml and lint-py.yml workflows to include support for workflow_call and workflow_dispatch events with optional branch input for checkout
* chore(docs_test.yml): update workflow triggers to include workflow_call and workflow_dispatch events
* ci(python_test.yml): update workflow to trigger on workflow_dispatch event and add support for optional branch input parameter to checkout specific branch for testing
* chore(typescript_test.yml): remove unnecessary pull_request event types to streamline workflow configuration
* feat(ci.yml): add CI workflow for automated testing and linting of backend, frontend, and documentation code
* chore: update release.yml to include CI workflow for automated testing and linting
* chore(typescript_test.yml): remove unnecessary 'if: always()' condition from merge-reports job
* chore(ci): add typescript_test.yml to the list of files included in the frontend job for CI workflow
* chore(ci.yml): fix typo in file path for typescript_test.yml in the frontend job of CI workflow
* chore(ci.yml): update path-filter job in CI workflow to include frontend tests and fix typo in file path for typescript_test.yml
* chore(ci.yml): add concurrency configuration to improve workflow efficiency
fix(ci.yml): include tests output in the filter paths job to run frontend tests when needed
* chore(ci.yml): update CI workflow to remove lint-frontend job
* chore(ci.yml): restructure CI workflow to improve readability and maintainability
feat(ci.yml): add separate jobs for frontend tests, backend linting, and docs build to enhance testing coverage
feat(ci.yml): introduce a final job 'CI Success' to check the status of all previous jobs and provide a summary of the CI pipeline execution
* ci(ci.yml): add dependencies between jobs to ensure proper execution order and avoid unnecessary runs
* chore(ci.yml): reformat YAML file for better readability and consistency in indentation
feat(ci.yml): add support for running backend tests, frontend tests, linting backend code, and testing docs build in CI workflow
feat(ci.yml): introduce a final step 'CI Success' to check the status of all previous jobs and exit with appropriate code based on their results
* chore(ci.yml): Remove concurrency configuration and cancel-in-progress option from lint-js, lint-py, python_test, and style-check-py workflows
* chore(ci.yml): Update pull_request event types in js_autofix.yml workflow to remove auto_merge_enabled
* chore: Remove concurrency configuration and cancel-in-progress option from typescript_test.yml workflow
* refactor: change add store key inside test
* ♻️ (tests): remove hardcoded API key and use environment variable
✅ (tests): add environment variable check to skip tests if not set
* ✅ (store-shard-2.spec.ts): add test skip condition for STORE_API_KEY
✨ (store-shard-2.spec.ts): implement test for sharing component with API key
* ✅ (store-shard-2.spec.ts): update navigation step in end-to-end test to click "My Collection" instead of going to home page
---------
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
* chore: update workflow_dispatch in Python and TypeScript test workflows
* feat(release.yml): add a new 'test' job to run Typescript and Python tests before releasing Langflow Main to ensure code quality and stability. Update dependencies to include Typescript and Python test workflows.
* ci: add auto_merge_enabled to pr activity types
* fix (auto-update.yml): remove 'dev' branch from trigger to run workflow on 'main' branch pushes only
fix (js_autofix.yml): remove unnecessary push trigger for 'main' branch in workflow to run on specific file changes only
* ci: Update concurrency settings in CI workflows
* ✨ (typescript_test.yml): add workflow_dispatch event to trigger workflow manually with branch input parameter
🔧 (typescript_test.yml): update workflow to checkout code from the specified branch when triggered manually
* 📝 (lint-py.yml): update linting workflow to trigger on specific pull request events and checks requested action
📝 (lint-py.yml): add a specific job to run Mypy for static type checking in the linting workflow
* 🔧 (python_test.yml): update pull_request event types and branches to trigger on more actions for better test coverage and integration
* chore: update linting workflows to include dev branch in merge_group
* Update README.md
Add 1.0 banner
* Update README.md
* chore: update package versions in pyproject.toml files
* Refactor "created_at" column type for consistency and fix cancel middleware (#2316)
* chore: update linting workflows to include dev branch in merge_group
* Update README.md
Add 1.0 banner
* Update README.md
* chore: update package versions in pyproject.toml files
* refactor: update "created_at" column type to use the "sa" module for consistency
* Update README.md
Add 1.0 banner
* chore: Remove unused import in ToolCallingAgent.py
* fix: adapt RequestCancelledMiddleware to handle cancelled requests
* chore: Remove unused import in test_helper_components.py
* refactor: Declare queue variable with explicit type in RequestCancelledMiddleware
---------
Co-authored-by: Rodrigo Nader <rodrigosilvanader@gmail.com>
* chore: Update AstraDB.py imports and method signature for search_documents
* chore: Update package versions in pyproject.toml files
* chore: Update run-name in release.yml for Langflow Release
* fix: add call to _add_documents_to_vector_store in AstraDB component
* chore: Fix missing parentheses in RequestCancelledMiddleware
* chore: Update pydantic-settings and tenacity versions
The commit updates the versions of the `pydantic-settings` and `tenacity` packages in the `poetry.lock` file. The `pydantic-settings` version is updated from 2.3.3 to 2.3.4, and the `tenacity` version is updated from 8.4.1 to 8.4.2.
* Update README.md
Add 1.0 banner
* fix fetch data to work even with autologin true
* format code
* deactivate stop button until we have a better solution (#2337)
* consistent auth error status code
* [Fix] unhandled http errors in background tasks (#2326)
* handle exceptions for background task
* revert changes that is not related to this HTTP handler exception
* Refactor model GoogleGenerativeAIModel (#2251)
* refactor model GoogleGenerativeAIModel
* adds model options
---------
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
* Fix .env values not being honored in CLI (#2336)
* chore: Update launch.json to include environment file
The launch.json file was updated to include the environment file path for the "run" command in the "Python: Flask" configuration. This change ensures that the necessary environment variables are loaded when running the backend base of Langflow frontend. The previous configuration had the environment variables set in the "env" field, but it has been removed as it is redundant with the new environment file inclusion.
* chore: Update dotenv import and environment variable handling
This commit updates the import statement for the `dotenv` module in the `__main__.py` file. It adds the `dotenv_values` function to the import statement to enable loading environment variables from a file. Additionally, it introduces a new section of code that maps environment variables to their corresponding variables and types, allowing for more flexible and dynamic configuration. The commit also updates the `run` function to update variables based on environment variables, if they are present. This change improves the handling of environment variables and enhances the configurability of the application.
* deactivate stop button until we have a better solution (#2337)
* consistent auth error status code
* [Fix] unhandled http errors in background tasks (#2326)
* handle exceptions for background task
* revert changes that is not related to this HTTP handler exception
* Refactor model GoogleGenerativeAIModel (#2251)
* refactor model GoogleGenerativeAIModel
* adds model options
---------
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
---------
Co-authored-by: ming luo <itestmycode@gmail.com>
Co-authored-by: Ítalo Johnny <italojohnnydosanjos@gmail.com>
* Update GitHub Actions workflows and dependencies (#2341)
* chore: Add GitHub Actions workflow for testing documentation build
* Fix server start command in GitHub Actions workflows
* chore: Bump langflow and langflow-base versions
* chore: Update GitHub Actions workflow for docs_test
* chore: Update typing import in __main__.py
* Fix user authentication and authorization issues (#2343)
---------
Co-authored-by: Rodrigo Nader <rodrigosilvanader@gmail.com>
Co-authored-by: anovazzi1 <otavio2204@gmail.com>
Co-authored-by: ming luo <itestmycode@gmail.com>
Co-authored-by: Ítalo Johnny <italojohnnydosanjos@gmail.com>