Commit graph

61 commits

Author SHA1 Message Date
Eric Pinzur
da4208dcc9
feat: generate custom coverage config to omit legacy and external compoents (#9221)
* feat: generate custom coverage config to omit legacy and external components

* lint

* fix components config

* also remove deactivated componenets

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-07-30 04:46:19 +00:00
Eric Pinzur
65a977cba2
feat: added code coverage reporting (#9081)
* added code coverage reporting

* fix issues

* more cleanup

* fix action configs

* cleanup token debug

* added comments to codecov.yml config

---------

Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
2025-07-21 14:03:34 +00:00
Edwin Jose
a88829a9d6
feat(api): add special handling for _mcp_servers file uploads and improve tests (#8847)
* update

* [autofix.ci] apply automated fixes

* refactor: update file query logic and enhance error logging in file deletion

* refactor: enhance error handling and improve code clarity in MCP server list retrieval

* refactor: improve type hinting and code clarity in MCP servers file tests

* fix: handle potential None value for server configuration file in async server list retrieval

* Update test_files.py

* fix: autofix.ci / Update Starter Projects (pull_request)

* chore: Add API key environment variables to CI workflows

* Updated .github/workflows/ci.yml and .github/workflows/python_test.yml to include OPENAI_API_KEY, ANTHROPIC_API_KEY, and other relevant API keys as environment variables for CI jobs.

---------

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: Lucas Oliveira <62335616+lucaseduoli@users.noreply.github.com>
Co-authored-by: Carlos Coelho <80289056+carlosrcoelho@users.noreply.github.com>
Co-authored-by: italojohnny <italojohnnydosanjos@gmail.com>
2025-07-04 16:20:04 +00:00
Gabriel Luiz Freitas Almeida
6403a8f564
fix(graph): fixes bug that caused simple flows with Loop to fail (#8809)
* fix: improve predecessors check for loop component

- Enhanced the handling of cycle vertices to prevent infinite loops by ensuring that a vertex can only run if all pending predecessors have completed.
- Updated conditions for the first execution of cycle vertices to allow running only if all pending predecessors are also cycle vertices.
- This refactor improves the robustness of the vertex management system in asynchronous workflows.

* fix: update _mark_branch method to return visited vertices and refine predecessor mapping

* fix: prevent duplicate item dependencies in LoopComponent

* feat: add loop connection handling in Component class

- Introduced methods to process loop feedback connections, allowing components to connect outputs to loop-enabled inputs.
- Implemented checks to validate loop connections and ensure proper handling of callable methods from other components.
- Enhanced the edge creation logic to support special loop feedback edges targeting outputs instead of inputs.

* fix: enhance name overlap validation in FrontendNode

- Updated the validate_name_overlap method to exclude outputs that allow loops from the overlap check.
- Improved error message to include the display name of the component, along with detailed lists of input and output names for better debugging.

* fix: correct condition for executing cycle vertices in RunnableVerticesManager

- Updated the logic to ensure that a cycle vertex can only execute if it is a loop and all pending predecessors are cycle vertices. This change enhances the robustness of the vertex management system in asynchronous workflows.

* feat: implement comprehensive loop flow for URL processing

- Added a new loop flow that processes multiple URLs through a series of components including URLComponent, SplitTextComponent, LoopComponent, ParserComponent, PromptComponent, OpenAIModelComponent, StructuredOutputComponent, and ChatOutput.
- Enhanced the StructuredOutputComponent to include a detailed system prompt and refined output schema to ensure proper JSON formatting.
- Introduced a test case to validate the creation and execution of the loop flow, ensuring all components are correctly integrated and the expected execution order is maintained.

* refactor: enhance loop target handling in Component and Edge classes

- Introduced LoopTargetHandleDict to better manage loop target structures in the Component and Edge classes.
- Updated the Component class to utilize type casting for loop target handles, improving type safety.
- Refactored the Edge class to accommodate the new loop target handling, ensuring compatibility with existing edge structures.
- Removed deprecated message handling methods from the Component class to streamline the codebase and improve maintainability.

* test: skip OpenAI model integration test if API key is not set

- Added a conditional skip to the test_build_model_integration_reasoning method to prevent execution when the OPENAI_API_KEY environment variable is not set, ensuring tests run only in appropriate environments.

* [autofix.ci] apply automated fixes

* chore: add required secrets for OpenAI and Anthropic APIs in CI workflows

* Updated ci.yml to include OPENAI_API_KEY and ANTHROPIC_API_KEY secrets.
* Modified python_test.yml to mark these secrets as required for workflow execution.

* fix: update OPENAI_API_KEY check in test_loop.py to handle dummy values

* Modified the condition in the pytest skipif decorator to also skip tests when OPENAI_API_KEY is set to "dummy", ensuring more robust test execution.

* refactor: streamline component setup in test_loop.py

* Removed redundant comments and improved formatting for component initialization in the loop_flow function.
* Added missing system_prompt to StructuredOutputComponent to resolve "Multiple structured outputs" error.
* Updated test_loop_flow to ensure it tests the graph creation with proper loop feedback connection.

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-07-03 14:39:09 +00:00
Deepankar Mahapatro
5734735e2d
test: add pyleak for task and event loop block detections (#8802)
* test: add pyleak for task and event loop block detections

* test: add pyleak for task and event loop block detections

* ci: add env variables for verbose logging

* chore: dummy sleep to shwocase error

* chore: dummy sleep to showcase error

* chore: remove dummy sleep
2025-07-01 13:07:25 +00:00
Jordan Frazier
b77351331d
fix: replace instances of 127.0.0.1 to localhost (#8536)
* Replace instances of 127.0.0.1 to localhost

* fix some replace-all issues

* fix some replace-all issues

* update starterprojects

* Upgrade uvlock
2025-06-16 15:54:04 +00:00
Gabriel Luiz Freitas Almeida
b378eb81d0
chore(ci): replace local uv setup action with astral-sh/setup-uv@v6 (#8491)
* 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
2025-06-11 18:56:04 +00:00
Gabriel Luiz Freitas Almeida
bdc7587930
ci: fix uv cache in CI workflows (#8319) 2025-06-03 09:50:18 -03:00
Gabriel Luiz Freitas Almeida
62aef0b8ed
chore: Ensure consistent version extraction for langflow-base in workflows (#7352)
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.
2025-03-31 09:34:28 -03:00
Gabriel Luiz Freitas Almeida
85b2818ea0
ci: Add pytest-rerunfailures for improved test reliability (#6852)
* chore: Add pytest-rerunfailures plugin for test reliability

* ci: Update unit tests workflow with pytest-rerunfailures
2025-02-26 19:34:55 +00:00
Christophe Bornet
0886bdad16
feat: Use pyproject standardized dependency-groups (#6689)
* 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>
2025-02-20 20:19:45 +00:00
Christophe Bornet
41edba73c9
feat: Add support for Python 3.13 (#6685) 2025-02-20 18:13:21 +00:00
Christophe Bornet
a4355caabe
feat: Fix Python versions used in CI (#6725)
fix: Fix Python versions used in CI
2025-02-20 11:15:05 +00:00
dependabot[bot]
cee3d2a9ea
build(deps):(deps): bump astral-sh/setup-uv from 4 to 5 (#6060)
Bumps [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) from 4 to 5.
- [Release notes](https://github.com/astral-sh/setup-uv/releases)
- [Commits](https://github.com/astral-sh/setup-uv/compare/v4...v5)

---
updated-dependencies:
- dependency-name: astral-sh/setup-uv
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2025-02-03 15:25:29 +00:00
Gabriel Luiz Freitas Almeida
30bcf5ecb4
ci: Update Python version defaults in CI workflows (#5911) 2025-01-24 03:32:04 -08:00
Ítalo Johnny
f22cf01d5c
ci: adds verbosity to the backend unit tests output (#5775) 2025-01-19 23:21:24 +00:00
Gabriel Luiz Freitas Almeida
03d64d21b4
ci: Update Python version matrix in CI workflows to exclude 3.13 (#5305)
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.
2024-12-17 04:07:31 -08:00
Gabriel Luiz Freitas Almeida
cebf4b103b
ci: Add Python version input to setup-uv action and update workflow configuration (#5288)
* 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.
2024-12-17 01:48:50 +00:00
Gabriel Luiz Freitas Almeida
f6d4c204da
ci: Update GitHub Actions workflow to include Python 3.13 (#5240)
* 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
2024-12-13 17:28:42 +00:00
Gabriel Luiz Freitas Almeida
c6b1eaba60
feat: add support for Python 3.13 (#5238)
* 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.
2024-12-12 12:24:43 -08:00
dependabot[bot]
6f8eaf3c13
build(deps): bump astral-sh/setup-uv from 3 to 4 (#4975)
build(deps):(deps): bump astral-sh/setup-uv from 3 to 4

Bumps [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv) from 3 to 4.
- [Release notes](https://github.com/astral-sh/setup-uv/releases)
- [Commits](https://github.com/astral-sh/setup-uv/compare/v3...v4)

---
updated-dependencies:
- dependency-name: astral-sh/setup-uv
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-02 12:35:28 +00:00
Gabriel Luiz Freitas Almeida
87e5b86f48
ci: Update TypeScript test workflow for improved Playwright integration (#4781)
* 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
2024-11-25 21:16:30 +00:00
Sebastián Estévez
4f27dbd918
chore: speed up whl install in cli tests with uv (#4764)
uv for whl install
2024-11-21 17:19:18 +00:00
Gabriel Luiz Freitas Almeida
b25726a015
chore: Update langflow-base dependency to version 0.1.0 (#4581)
Update langflow-base dependency to version 0.1.0 in pyproject.toml
2024-11-13 21:46:59 +00:00
Ítalo Johnny
19301b1cce
ci: stop backend unit tests on first failure (#4466)
ci: stop backend unit tests on first failure
2024-11-08 13:23:25 +00:00
Gabriel Luiz Freitas Almeida
6ca864931d
ci: add pytest failure annotations (#4324)
* 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
2024-10-30 09:29:24 -03:00
Jordan Frazier
4a574da0c0
ci: fix release workflows for uv (#4053) 2024-10-07 21:41:19 +00:00
Jordan Frazier
06eebb5ca8
ci: small nightly fixes (#3993)
* Add back correct checkout steps

* fix directory
2024-10-02 16:36:55 +00:00
Jordan Frazier
e19d90bd6c
ci: fix releases with uv (#3971)
* 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>
2024-10-02 05:37:04 -07:00
Sebastián Estévez
fbb097dc4c
chore: uv to replace poetry (#3900)
* 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>
2024-09-25 13:40:30 -07:00
Jordan Frazier
a7d1449e9d
ci: tag fixes and robustness to workflow failures (#3838) 2024-09-17 18:03:48 -07:00
Jordan Frazier
7b3e51f769
ci: create a nightly build workflow (#3553)
* test poetry install

* Add nightly builds workflow

* remove old comments and fix poetry

* remove old debug statement

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-09-05 19:13:04 +00:00
Nicolò Boschi
96872f3aa5
chore: refactor and add components integration tests (#3607)
* improve inegration tests

* add fixes

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2024-09-02 15:21:47 +02:00
Gabriel Luiz Freitas Almeida
5e2d9b2c22
ci: add python-versions input parameter to workflow (#3511)
* ci: Add python-versions input parameter to workflow

* build: Update CI workflow with additional Python versions and default values.

* ci: Update default Python versions in matrix configuration

* build: Fix python version matrix generation in workflow
2024-08-22 18:49:42 +00:00
Gabriel Luiz Freitas Almeida
93e0ffb05e
ci: allow specifying python versions and limit ci to 3.10 only (#3388)
* ci(python-test): Add ability to specify Python versions to test.

* ci: Specify Python version 3.10 for backend tests.

* build: Require python-versions input in workflow file.
2024-08-16 11:28:35 -07:00
Gabriel Luiz Freitas Almeida
4d1c8ad92a
ci: add version check in workflow to skip jobs for unreleased versions of langflow-base (#3244)
feat: add version check in workflow to skip jobs for unreleased versions of langflow-base
2024-08-08 08:04:36 -07:00
Gabriel Luiz Freitas Almeida
bb1bc5c2df
feat: add dump and dumps methods to Graph (#3202)
* 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.
2024-08-05 21:00:46 +00:00
Gabriel Luiz Freitas Almeida
8ece1cadf6
ci: update nick-fields/retry dependency to v3 (#3206)
fix: update nick-fields/retry dependency to v3
2024-08-05 20:48:11 +00:00
Gabriel Luiz Freitas Almeida
1304f852db
ci(workflows): implement retry logic in python_test workflow for unit tests (#3145)
* 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
2024-08-01 19:07:13 +00:00
Nicolò Boschi
569869e211
ci: improve test jobs titles (#3065) 2024-07-30 05:19:14 -07:00
Nicolò Boschi
4136961155
fix: strict langchain integrations dep (#3063)
* fix: strict langchain vertexai dep

* fix: strict langchain vertexai dep

* fix: strict langchain vertexai dep

* [autofix.ci] apply automated fixes

* chore: update langchain-google-genai dependency to version 1.0.8

* more locks

* ci: improve test jobs titles

* openai 0.1.18

* openai 0.1.17

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
2024-07-30 12:11:58 +00:00
Jordan Frazier
ae3439c40b
ci: add astra integration tests to CI (#2643)
* 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
2024-07-16 17:38:17 -07:00
Gabriel Luiz Freitas Almeida
b811dcc34c
chore: move test-cli job to run separately from unit tests (#2712) 2024-07-15 13:33:30 -07:00
Gabriel Luiz Freitas Almeida
4268ee4d56
chore: Update python_test.yml to include splitCount and group arguments in make unit_tests command (#2709) 2024-07-15 16:13:26 -03:00
Gabriel Luiz Freitas Almeida
34c1a4d469
fix: add timeout for unit tests workflows (#2613)
fix: add timeout for unit tests and test CLI in Python workflow
2024-07-09 19:08:39 -07:00
Gabriel Luiz Freitas Almeida
a3bf1c4502
ci: update CI workflows and add CI workflow (#2498)
* 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>
2024-07-03 08:24:35 -07:00
Gabriel Luiz Freitas Almeida
15ae185ead
chore: update cancel-in-progress flag in Python and TypeScript test workflows (#2492) 2024-07-02 14:21:29 -07:00
Gabriel Luiz Freitas Almeida
8d1e4ff059
ci: add 'test' job to run Typescript and Python tests (#2489)
* 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.
2024-07-02 12:40:57 -07:00
Nicolò Boschi
2787bec4fb
ci: skip tests with openai key required (#2477)
* ci: skip tests with openai key required

* ci: skip tests with openai key required

* ci: skip tests with openai key required

* [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>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-02 06:20:13 -07:00
Gabriel Luiz Freitas Almeida
26a71e1c36
ci: add auto_merge_enabled to PR activity types and concurrency settings (#2471)
* 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
2024-07-01 18:45:15 -07:00