From eb5faaad24e88f0f733b37084d7d4635fabe8ed3 Mon Sep 17 00:00:00 2001 From: Radovan Zivkovic Date: Thu, 12 Dec 2024 13:03:19 +0100 Subject: [PATCH 01/12] prepared release of version 3.6.21.dev1 --- CHANGELOG.mdx | 7 +++++++ pyproject.toml | 2 +- rasa/version.py | 2 +- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.mdx b/CHANGELOG.mdx index a97640d0772b..bdb301981a69 100644 --- a/CHANGELOG.mdx +++ b/CHANGELOG.mdx @@ -16,6 +16,13 @@ https://github.com/RasaHQ/rasa/tree/main/changelog/ . --> +## [3.6.21.dev1] - 2024-12-12 + +Rasa 3.6.21.dev1 (2024-12-12) + +No significant changes. + + ## [3.6.20] - 2024-04-18 Rasa 3.6.20 (2024-04-18) diff --git a/pyproject.toml b/pyproject.toml index 0944c09460d6..1d259097f685 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -9,7 +9,7 @@ exclude = "((.eggs | .git | .pytest_cache | build | dist))" [tool.poetry] name = "rasa" -version = "3.6.20" +version = "3.6.21.dev1" description = "Open source machine learning framework to automate text- and voice-based conversations: NLU, dialogue management, connect to Slack, Facebook, and more - Create chatbots and voice assistants" authors = [ "Rasa Technologies GmbH ",] maintainers = [ "Tom Bocklisch ",] diff --git a/rasa/version.py b/rasa/version.py index 2e1490a6a8c3..d6f0fdbcec6f 100644 --- a/rasa/version.py +++ b/rasa/version.py @@ -1,3 +1,3 @@ # this file will automatically be changed, # do not add anything but the version number here! -__version__ = "3.6.20" +__version__ = "3.6.21.dev1" From e5d42e5251148f04a6e16b47ce379033caded061 Mon Sep 17 00:00:00 2001 From: Radovan Zivkovic Date: Thu, 12 Dec 2024 13:23:27 +0100 Subject: [PATCH 02/12] Update poetry install GitHub action --- .github/workflows/continous-integration.yml | 65 ++++++++++++--------- 1 file changed, 36 insertions(+), 29 deletions(-) diff --git a/.github/workflows/continous-integration.yml b/.github/workflows/continous-integration.yml index 00f2f8aab5f8..87ea7ede237a 100644 --- a/.github/workflows/continous-integration.yml +++ b/.github/workflows/continous-integration.yml @@ -132,14 +132,12 @@ jobs: - name: Install poetry 🦄 if: needs.changes.outputs.backend == 'true' - uses: Gr1N/setup-poetry@15821dc8a61bc630db542ae4baf6a7c19a994844 # v8 + uses: snok/install-poetry@93ada01c735cc8a383ce0ce2ae205a21c415379b with: - poetry-version: ${{ env.POETRY_VERSION }} - - - name: Inject setuptools into poetry's runtime environment - if: needs.changes.outputs.backend == 'true' - run: | - poetry self add setuptools + version: ${{ env.POETRY_VERSION }} + virtualenvs-create: true + virtualenvs-in-project: true + installer-parallel: true - name: Load Poetry Cached Libraries ⬇ id: cache-poetry @@ -278,14 +276,12 @@ jobs: - name: Install poetry 🦄 if: needs.changes.outputs.backend == 'true' - uses: Gr1N/setup-poetry@15821dc8a61bc630db542ae4baf6a7c19a994844 # v8 + uses: snok/install-poetry@93ada01c735cc8a383ce0ce2ae205a21c415379b with: - poetry-version: ${{ env.POETRY_VERSION }} - - - name: Inject setuptools into poetry's runtime environment - if: needs.changes.outputs.backend == 'true' - run: | - poetry self add setuptools + version: ${{ env.POETRY_VERSION }} + virtualenvs-create: true + virtualenvs-in-project: true + installer-parallel: true - name: Prevent race condition in poetry build # More context about race condition during poetry build can be found here: @@ -440,14 +436,12 @@ jobs: - name: Install poetry 🦄 if: needs.changes.outputs.backend == 'true' - uses: Gr1N/setup-poetry@15821dc8a61bc630db542ae4baf6a7c19a994844 # v8 + uses: snok/install-poetry@93ada01c735cc8a383ce0ce2ae205a21c415379b with: - poetry-version: ${{ env.POETRY_VERSION }} - - - name: Inject setuptools into poetry's runtime environment - if: needs.changes.outputs.backend == 'true' - run: | - poetry self add setuptools + version: ${{ env.POETRY_VERSION }} + virtualenvs-create: true + virtualenvs-in-project: true + installer-parallel: true - name: Load Poetry Cached Libraries ⬇ id: cache-poetry @@ -678,9 +672,12 @@ jobs: - name: Install poetry 🦄 if: needs.changes.outputs.backend == 'true' - uses: Gr1N/setup-poetry@15821dc8a61bc630db542ae4baf6a7c19a994844 # v8 + uses: snok/install-poetry@93ada01c735cc8a383ce0ce2ae205a21c415379b with: - poetry-version: ${{ env.POETRY_VERSION }} + version: ${{ env.POETRY_VERSION }} + virtualenvs-create: true + virtualenvs-in-project: true + installer-parallel: true - name: Load Poetry Cached Libraries ⬇ id: cache-poetry @@ -765,9 +762,12 @@ jobs: - name: Install poetry 🦄 if: needs.changes.outputs.backend == 'true' - uses: Gr1N/setup-poetry@15821dc8a61bc630db542ae4baf6a7c19a994844 # v8 + uses: snok/install-poetry@93ada01c735cc8a383ce0ce2ae205a21c415379b with: - poetry-version: ${{ env.POETRY_VERSION }} + version: ${{ env.POETRY_VERSION }} + virtualenvs-create: true + virtualenvs-in-project: true + installer-parallel: true - name: Load Poetry Cached Libraries ⬇ id: cache-poetry @@ -873,9 +873,12 @@ jobs: - name: Install poetry 🦄 if: needs.changes.outputs.backend == 'true' - uses: Gr1N/setup-poetry@15821dc8a61bc630db542ae4baf6a7c19a994844 # v8 + uses: snok/install-poetry@93ada01c735cc8a383ce0ce2ae205a21c415379b with: - poetry-version: ${{ env.POETRY_VERSION }} + version: ${{ env.POETRY_VERSION }} + virtualenvs-create: true + virtualenvs-in-project: true + installer-parallel: true - name: Load Poetry Cached Libraries ⬇ id: cache-poetry @@ -1232,9 +1235,13 @@ jobs: shell: bash - name: Install poetry 🦄 - uses: Gr1N/setup-poetry@15821dc8a61bc630db542ae4baf6a7c19a994844 # v8 + if: needs.changes.outputs.backend == 'true' + uses: snok/install-poetry@93ada01c735cc8a383ce0ce2ae205a21c415379b with: - poetry-version: ${{ env.POETRY_VERSION }} + version: ${{ env.POETRY_VERSION }} + virtualenvs-create: true + virtualenvs-in-project: true + installer-parallel: true - name: Copy Segment write key to the package env: From 83cfbf945500791483150d65eddcf117b78057b6 Mon Sep 17 00:00:00 2001 From: Radovan Zivkovic Date: Thu, 12 Dec 2024 13:31:18 +0100 Subject: [PATCH 03/12] Store coverage results separately for each os and python version --- .github/workflows/continous-integration.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/continous-integration.yml b/.github/workflows/continous-integration.yml index 87ea7ede237a..a3b39171a720 100644 --- a/.github/workflows/continous-integration.yml +++ b/.github/workflows/continous-integration.yml @@ -394,9 +394,9 @@ jobs: if: needs.changes.outputs.backend == 'true' && matrix.os == 'ubuntu-22.04' uses: actions/upload-artifact@b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 #v4.4.3 with: - name: ${{ matrix.test }}-coverage + name: ${{ matrix.test }}-${{ matrix.python-version }}-${{ matrix.os }}-coverage path: | - ${{ github.workspace }}/${{ matrix.test }}-coverage + ${{ github.workspace }}/${{ matrix.test }}-${{ matrix.python-version }}-${{ matrix.os }}-coverage test-flaky: name: Run Flaky Tests @@ -543,9 +543,9 @@ jobs: if: needs.changes.outputs.backend == 'true' && matrix.os == 'ubuntu-22.04' uses: actions/upload-artifact@b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 #v4.4.3 with: - name: ${{ matrix.test }}-coverage + name: ${{ matrix.test }}-${{ matrix.python-version }}-${{ matrix.os }}-coverage path: | - ${{ github.workspace }}/${{ matrix.test }}-coverage + ${{ github.workspace }}/${{ matrix.test }}-${{ matrix.python-version }}-${{ matrix.os }}-coverage upload_coverage_reports: name: Upload coverage reports to codeclimate From b72c9390062dc0ba24f67200aab0e5877a7b8699 Mon Sep 17 00:00:00 2001 From: Radovan Zivkovic Date: Wed, 8 Jan 2025 10:29:50 +0100 Subject: [PATCH 04/12] Enable CI run on Windows --- .github/workflows/continous-integration.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/continous-integration.yml b/.github/workflows/continous-integration.yml index a3b39171a720..0e0cc2e648db 100644 --- a/.github/workflows/continous-integration.yml +++ b/.github/workflows/continous-integration.yml @@ -231,6 +231,9 @@ jobs: test: name: Run Tests + defaults: + run: + shell: bash if: github.ref_type != 'tag' runs-on: ${{ matrix.os }} timeout-minutes: 60 From fb5308aab92c8ba2b1d3fea9f05dde5b040237e3 Mon Sep 17 00:00:00 2001 From: Radovan Zivkovic Date: Wed, 8 Jan 2025 10:33:22 +0100 Subject: [PATCH 05/12] Update Gr1N/setup-poetry action --- .github/workflows/continous-integration.yml | 59 +++++---------------- 1 file changed, 14 insertions(+), 45 deletions(-) diff --git a/.github/workflows/continous-integration.yml b/.github/workflows/continous-integration.yml index 0e0cc2e648db..99ae844c6cd7 100644 --- a/.github/workflows/continous-integration.yml +++ b/.github/workflows/continous-integration.yml @@ -131,13 +131,9 @@ jobs: shell: bash - name: Install poetry 🦄 - if: needs.changes.outputs.backend == 'true' - uses: snok/install-poetry@93ada01c735cc8a383ce0ce2ae205a21c415379b + uses: Gr1N/setup-poetry@48b0f77c8c1b1b19cb962f0f00dff7b4be8f81ec #v9 with: - version: ${{ env.POETRY_VERSION }} - virtualenvs-create: true - virtualenvs-in-project: true - installer-parallel: true + poetry-version: ${{ env.POETRY_VERSION }} - name: Load Poetry Cached Libraries ⬇ id: cache-poetry @@ -231,9 +227,6 @@ jobs: test: name: Run Tests - defaults: - run: - shell: bash if: github.ref_type != 'tag' runs-on: ${{ matrix.os }} timeout-minutes: 60 @@ -278,13 +271,9 @@ jobs: shell: bash - name: Install poetry 🦄 - if: needs.changes.outputs.backend == 'true' - uses: snok/install-poetry@93ada01c735cc8a383ce0ce2ae205a21c415379b + uses: Gr1N/setup-poetry@48b0f77c8c1b1b19cb962f0f00dff7b4be8f81ec #v9 with: - version: ${{ env.POETRY_VERSION }} - virtualenvs-create: true - virtualenvs-in-project: true - installer-parallel: true + poetry-version: ${{ env.POETRY_VERSION }} - name: Prevent race condition in poetry build # More context about race condition during poetry build can be found here: @@ -438,13 +427,9 @@ jobs: shell: bash - name: Install poetry 🦄 - if: needs.changes.outputs.backend == 'true' - uses: snok/install-poetry@93ada01c735cc8a383ce0ce2ae205a21c415379b + uses: Gr1N/setup-poetry@48b0f77c8c1b1b19cb962f0f00dff7b4be8f81ec #v9 with: - version: ${{ env.POETRY_VERSION }} - virtualenvs-create: true - virtualenvs-in-project: true - installer-parallel: true + poetry-version: ${{ env.POETRY_VERSION }} - name: Load Poetry Cached Libraries ⬇ id: cache-poetry @@ -674,13 +659,9 @@ jobs: shell: bash - name: Install poetry 🦄 - if: needs.changes.outputs.backend == 'true' - uses: snok/install-poetry@93ada01c735cc8a383ce0ce2ae205a21c415379b + uses: Gr1N/setup-poetry@48b0f77c8c1b1b19cb962f0f00dff7b4be8f81ec #v9 with: - version: ${{ env.POETRY_VERSION }} - virtualenvs-create: true - virtualenvs-in-project: true - installer-parallel: true + poetry-version: ${{ env.POETRY_VERSION }} - name: Load Poetry Cached Libraries ⬇ id: cache-poetry @@ -764,13 +745,9 @@ jobs: shell: bash - name: Install poetry 🦄 - if: needs.changes.outputs.backend == 'true' - uses: snok/install-poetry@93ada01c735cc8a383ce0ce2ae205a21c415379b + uses: Gr1N/setup-poetry@48b0f77c8c1b1b19cb962f0f00dff7b4be8f81ec #v9 with: - version: ${{ env.POETRY_VERSION }} - virtualenvs-create: true - virtualenvs-in-project: true - installer-parallel: true + poetry-version: ${{ env.POETRY_VERSION }} - name: Load Poetry Cached Libraries ⬇ id: cache-poetry @@ -875,13 +852,9 @@ jobs: shell: bash - name: Install poetry 🦄 - if: needs.changes.outputs.backend == 'true' - uses: snok/install-poetry@93ada01c735cc8a383ce0ce2ae205a21c415379b + uses: Gr1N/setup-poetry@48b0f77c8c1b1b19cb962f0f00dff7b4be8f81ec #v9 with: - version: ${{ env.POETRY_VERSION }} - virtualenvs-create: true - virtualenvs-in-project: true - installer-parallel: true + poetry-version: ${{ env.POETRY_VERSION }} - name: Load Poetry Cached Libraries ⬇ id: cache-poetry @@ -1238,13 +1211,9 @@ jobs: shell: bash - name: Install poetry 🦄 - if: needs.changes.outputs.backend == 'true' - uses: snok/install-poetry@93ada01c735cc8a383ce0ce2ae205a21c415379b + uses: Gr1N/setup-poetry@48b0f77c8c1b1b19cb962f0f00dff7b4be8f81ec #v9 with: - version: ${{ env.POETRY_VERSION }} - virtualenvs-create: true - virtualenvs-in-project: true - installer-parallel: true + poetry-version: ${{ env.POETRY_VERSION }} - name: Copy Segment write key to the package env: From b56edd1163fb0a14569b966455da6e370d4e255b Mon Sep 17 00:00:00 2001 From: Radovan Zivkovic Date: Wed, 8 Jan 2025 10:54:18 +0100 Subject: [PATCH 06/12] Use different GitHub actions to install poetry on ubuntu and windows --- .github/workflows/continous-integration.yml | 63 +++++++++++++++++---- 1 file changed, 51 insertions(+), 12 deletions(-) diff --git a/.github/workflows/continous-integration.yml b/.github/workflows/continous-integration.yml index 99ae844c6cd7..b81a256246f4 100644 --- a/.github/workflows/continous-integration.yml +++ b/.github/workflows/continous-integration.yml @@ -131,9 +131,13 @@ jobs: shell: bash - name: Install poetry 🦄 - uses: Gr1N/setup-poetry@48b0f77c8c1b1b19cb962f0f00dff7b4be8f81ec #v9 + if: needs.changes.outputs.backend == 'true' + uses: snok/install-poetry@93ada01c735cc8a383ce0ce2ae205a21c415379b with: - poetry-version: ${{ env.POETRY_VERSION }} + version: ${{ env.POETRY_VERSION }} + virtualenvs-create: true + virtualenvs-in-project: true + installer-parallel: true - name: Load Poetry Cached Libraries ⬇ id: cache-poetry @@ -270,7 +274,17 @@ jobs: echo "POETRY_VERSION=$(scripts/poetry-version.sh)" >> $GITHUB_ENV shell: bash - - name: Install poetry 🦄 + - name: Install poetry (Ubuntu) 🦄 + if: needs.changes.outputs.backend == 'true' && matrix.os == 'ubuntu-22.04' + uses: snok/install-poetry@93ada01c735cc8a383ce0ce2ae205a21c415379b + with: + version: ${{ env.POETRY_VERSION }} + virtualenvs-create: true + virtualenvs-in-project: true + installer-parallel: true + + - name: Install poetry (Windows) 🦄 + if: needs.changes.outputs.backend == 'true' && matrix.os == 'windows-2019' uses: Gr1N/setup-poetry@48b0f77c8c1b1b19cb962f0f00dff7b4be8f81ec #v9 with: poetry-version: ${{ env.POETRY_VERSION }} @@ -426,7 +440,17 @@ jobs: echo "POETRY_VERSION=$(scripts/poetry-version.sh)" >> $GITHUB_ENV shell: bash - - name: Install poetry 🦄 + - name: Install poetry (Ubuntu) 🦄 + if: needs.changes.outputs.backend == 'true' && matrix.os == 'ubuntu-22.04' + uses: snok/install-poetry@93ada01c735cc8a383ce0ce2ae205a21c415379b + with: + version: ${{ env.POETRY_VERSION }} + virtualenvs-create: true + virtualenvs-in-project: true + installer-parallel: true + + - name: Install poetry (Windows) 🦄 + if: needs.changes.outputs.backend == 'true' && matrix.os == 'windows-2019' uses: Gr1N/setup-poetry@48b0f77c8c1b1b19cb962f0f00dff7b4be8f81ec #v9 with: poetry-version: ${{ env.POETRY_VERSION }} @@ -659,9 +683,13 @@ jobs: shell: bash - name: Install poetry 🦄 - uses: Gr1N/setup-poetry@48b0f77c8c1b1b19cb962f0f00dff7b4be8f81ec #v9 + if: needs.changes.outputs.backend == 'true' + uses: snok/install-poetry@93ada01c735cc8a383ce0ce2ae205a21c415379b with: - poetry-version: ${{ env.POETRY_VERSION }} + version: ${{ env.POETRY_VERSION }} + virtualenvs-create: true + virtualenvs-in-project: true + installer-parallel: true - name: Load Poetry Cached Libraries ⬇ id: cache-poetry @@ -745,9 +773,13 @@ jobs: shell: bash - name: Install poetry 🦄 - uses: Gr1N/setup-poetry@48b0f77c8c1b1b19cb962f0f00dff7b4be8f81ec #v9 + if: needs.changes.outputs.backend == 'true' + uses: snok/install-poetry@93ada01c735cc8a383ce0ce2ae205a21c415379b with: - poetry-version: ${{ env.POETRY_VERSION }} + version: ${{ env.POETRY_VERSION }} + virtualenvs-create: true + virtualenvs-in-project: true + installer-parallel: true - name: Load Poetry Cached Libraries ⬇ id: cache-poetry @@ -852,9 +884,13 @@ jobs: shell: bash - name: Install poetry 🦄 - uses: Gr1N/setup-poetry@48b0f77c8c1b1b19cb962f0f00dff7b4be8f81ec #v9 + if: needs.changes.outputs.backend == 'true' + uses: snok/install-poetry@93ada01c735cc8a383ce0ce2ae205a21c415379b with: - poetry-version: ${{ env.POETRY_VERSION }} + version: ${{ env.POETRY_VERSION }} + virtualenvs-create: true + virtualenvs-in-project: true + installer-parallel: true - name: Load Poetry Cached Libraries ⬇ id: cache-poetry @@ -1211,9 +1247,12 @@ jobs: shell: bash - name: Install poetry 🦄 - uses: Gr1N/setup-poetry@48b0f77c8c1b1b19cb962f0f00dff7b4be8f81ec #v9 + uses: snok/install-poetry@93ada01c735cc8a383ce0ce2ae205a21c415379b with: - poetry-version: ${{ env.POETRY_VERSION }} + version: ${{ env.POETRY_VERSION }} + virtualenvs-create: true + virtualenvs-in-project: true + installer-parallel: true - name: Copy Segment write key to the package env: From 3c47d7eae9e93ef57ab4f728b0beb154385d4b49 Mon Sep 17 00:00:00 2001 From: Vlada Anicic Date: Thu, 19 Dec 2024 12:59:48 +0100 Subject: [PATCH 07/12] Bump GitHub Actions runner OS version to ubuntu-24.04 --- .github/workflows/automatic-pr-update.yml | 2 +- .github/workflows/ci-docs-tests.yml | 6 +-- .github/workflows/ci-github-actions.yml | 2 +- .../ci-model-regression-on-schedule.yml | 10 ++--- .github/workflows/ci-model-regression.yml | 14 +++--- .github/workflows/continous-integration.yml | 44 +++++++++---------- .../workflows/dependabot-batch-updater.yml | 2 +- .github/workflows/documentation.yml | 10 ++--- .github/workflows/nightly_release.yml | 6 +-- .github/workflows/rasa-install-cron-check.yml | 2 +- .github/workflows/security-scans.yml | 6 +-- .github/workflows/semgrep-check.yml | 2 +- .github/workflows/spellcheck.yml | 2 +- 13 files changed, 54 insertions(+), 54 deletions(-) diff --git a/.github/workflows/automatic-pr-update.yml b/.github/workflows/automatic-pr-update.yml index 4842a120451b..6621d5985d04 100644 --- a/.github/workflows/automatic-pr-update.yml +++ b/.github/workflows/automatic-pr-update.yml @@ -7,7 +7,7 @@ jobs: # thats's all. single step is needed - if PR is mergeable according to # branch protection rules it will be merged automatically mergepal: - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 if: github.repository == 'RasaHQ/rasa' steps: diff --git a/.github/workflows/ci-docs-tests.yml b/.github/workflows/ci-docs-tests.yml index 7a5da8f35554..c4a76704c9d3 100644 --- a/.github/workflows/ci-docs-tests.yml +++ b/.github/workflows/ci-docs-tests.yml @@ -16,7 +16,7 @@ env: jobs: changes: name: Check for file changes - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 outputs: docs: ${{ steps.filter.outputs.docs }} steps: @@ -29,7 +29,7 @@ jobs: test_documentation: name: Test Documentation - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 needs: [changes] if: needs.changes.outputs.docs == 'true' @@ -100,7 +100,7 @@ jobs: documentation_lint: name: Documentation Linting Checks - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 needs: [changes] if: needs.changes.outputs.docs == 'true' diff --git a/.github/workflows/ci-github-actions.yml b/.github/workflows/ci-github-actions.yml index 4f354bc1aa43..161c0b027b0f 100644 --- a/.github/workflows/ci-github-actions.yml +++ b/.github/workflows/ci-github-actions.yml @@ -14,7 +14,7 @@ env: jobs: test: name: Run Tests - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 #missing matrix strategy: fail-fast: false diff --git a/.github/workflows/ci-model-regression-on-schedule.yml b/.github/workflows/ci-model-regression-on-schedule.yml index b4463fd67a62..5ac4710cf288 100644 --- a/.github/workflows/ci-model-regression-on-schedule.yml +++ b/.github/workflows/ci-model-regression-on-schedule.yml @@ -17,7 +17,7 @@ env: jobs: read_test_configuration: name: Reads tests configuration - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 outputs: matrix: ${{ steps.set-matrix.outputs.matrix }} matrix_length: ${{ steps.set-matrix.outputs.matrix_length }} @@ -53,7 +53,7 @@ jobs: deploy_runner_gpu: name: Deploy Github Runner - GPU needs: read_test_configuration - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - name: Checkout @@ -503,7 +503,7 @@ jobs: combine_reports: name: Combine reports - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 needs: - model_regression_test_gpu if: always() && needs.model_regression_test_gpu.result == 'success' @@ -542,7 +542,7 @@ jobs: analyse_performance: name: Analyse Performance - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 if: always() && github.event_name == 'schedule' needs: - model_regression_test_gpu @@ -691,7 +691,7 @@ jobs: needs: - deploy_runner_gpu - model_regression_test_gpu - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: diff --git a/.github/workflows/ci-model-regression.yml b/.github/workflows/ci-model-regression.yml index 84f6d34a5392..3e65fcec2ebd 100644 --- a/.github/workflows/ci-model-regression.yml +++ b/.github/workflows/ci-model-regression.yml @@ -27,7 +27,7 @@ jobs: read_test_configuration: name: Reads tests configuration if: ${{ github.repository == 'RasaHQ/rasa' && contains(github.event.pull_request.labels.*.name, 'status:model-regression-tests') }} - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 outputs: matrix: ${{ steps.set-matrix.outputs.matrix }} matrix_length: ${{ steps.set-matrix.outputs.matrix_length }} @@ -158,7 +158,7 @@ jobs: deploy_runner_gpu: name: Deploy Github Runner - GPU needs: read_test_configuration - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 if: ${{ contains(github.event.pull_request.labels.*.name, 'runner:gpu') && github.repository == 'RasaHQ/rasa' && contains(github.event.pull_request.labels.*.name, 'status:model-regression-tests') && needs.read_test_configuration.outputs.configuration_id != '' }} steps: @@ -492,7 +492,7 @@ jobs: - read_test_configuration env: ACCELERATOR_TYPE: "CPU" - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 strategy: max-parallel: 3 matrix: ${{fromJson(needs.read_test_configuration.outputs.matrix)}} @@ -733,7 +733,7 @@ jobs: combine_reports: name: Combine reports - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 needs: - model_regression_test_cpu - model_regression_test_gpu @@ -790,7 +790,7 @@ jobs: set_job_success_status: name: Set job success status - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 needs: - combine_reports if: ${{ always() && needs.combine_reports.result == 'success' }} @@ -807,7 +807,7 @@ jobs: add_comment_results: name: Add a comment with the results - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 needs: - combine_reports if: ${{ always() && needs.combine_reports.result == 'success' }} @@ -901,7 +901,7 @@ jobs: needs: - deploy_runner_gpu - model_regression_test_gpu - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 if: ${{ always() && needs.deploy_runner_gpu.result != 'skipped' && contains(github.event.pull_request.labels.*.name, 'runner:gpu') && contains(github.event.pull_request.labels.*.name, 'status:model-regression-tests') }} steps: diff --git a/.github/workflows/continous-integration.yml b/.github/workflows/continous-integration.yml index b81a256246f4..bce88f21690c 100644 --- a/.github/workflows/continous-integration.yml +++ b/.github/workflows/continous-integration.yml @@ -44,7 +44,7 @@ env: jobs: changes: name: Check for file changes - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 outputs: # Both of the outputs below are strings but only one exists at any given time backend: ${{ steps.changed-files.outputs.backend || steps.run-all.outputs.backend }} @@ -87,7 +87,7 @@ jobs: # Runs on pushes to main exclusively name: Wait for docs tests if: github.ref_type != 'tag' - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 needs: [changes] steps: @@ -110,7 +110,7 @@ jobs: quality: name: Code Quality if: github.ref_type != 'tag' - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 needs: [changes] steps: @@ -208,7 +208,7 @@ jobs: changelog: name: Check for changelog - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - name: Checkout git repository 🕝 @@ -247,7 +247,7 @@ jobs: - test-full-model-training - test-other-unit-tests - test-performance - os: [ubuntu-22.04, windows-2019] + os: [ubuntu-24.04, windows-2019] python-version: [3.8, 3.9, "3.10"] steps: @@ -325,7 +325,7 @@ jobs: run: poetry config virtualenvs.in-project true - name: Install Dependencies (Linux) 📦 - if: needs.changes.outputs.backend == 'true' && matrix.os == 'ubuntu-22.04' + if: needs.changes.outputs.backend == 'true' && matrix.os == 'ubuntu-24.04' # Poetry intermittently fails to install dependency if it is not PEP 517 compliant # This is a workaround for that issue run: | @@ -353,7 +353,7 @@ jobs: make prepare-tests-windows-gha - name: Add github workflow problem matchers - if: needs.changes.outputs.backend == 'true' && matrix.python-version == 3.7 && matrix.os == 'ubuntu-22.04' + if: needs.changes.outputs.backend == 'true' && matrix.python-version == 3.7 && matrix.os == 'ubuntu-24.04' # only annotate based on test runs on ubuntu: otherwise # all errors will be duplicated for each python / os combination # therefore, we only enable for the one where most tests are run @@ -372,7 +372,7 @@ jobs: Set-ItemProperty 'HKLM:\System\CurrentControlSet\Control\FileSystem' -Name 'LongPathsEnabled' -value 0 - name: Install ddtrace on Linux - if: needs.changes.outputs.backend == 'true' && matrix.os == 'ubuntu-22.04' + if: needs.changes.outputs.backend == 'true' && matrix.os == 'ubuntu-24.04' run: poetry run pip install -U 'ddtrace<2.0.0' - name: Install ddtrace on Windows @@ -397,7 +397,7 @@ jobs: shell: bash # bash shell is a way to make code run for both Linux and Windows - name: Store coverage reports - if: needs.changes.outputs.backend == 'true' && matrix.os == 'ubuntu-22.04' + if: needs.changes.outputs.backend == 'true' && matrix.os == 'ubuntu-24.04' uses: actions/upload-artifact@b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 #v4.4.3 with: name: ${{ matrix.test }}-${{ matrix.python-version }}-${{ matrix.os }}-coverage @@ -413,7 +413,7 @@ jobs: strategy: fail-fast: false matrix: - os: [ubuntu-22.04, windows-2019] + os: [ubuntu-24.04, windows-2019] python-version: [3.8, 3.9, "3.10"] steps: @@ -484,7 +484,7 @@ jobs: run: poetry config virtualenvs.in-project true - name: Install Dependencies (Linux) 📦 - if: needs.changes.outputs.backend == 'true' && matrix.os == 'ubuntu-22.04' + if: needs.changes.outputs.backend == 'true' && matrix.os == 'ubuntu-24.04' run: | sudo apt-get -y install libpq-dev make install-full | tee .output @@ -508,7 +508,7 @@ jobs: make prepare-tests-windows-gha - name: Add github workflow problem matchers - if: needs.changes.outputs.backend == 'true' && matrix.python-version == 3.7 && matrix.os == 'ubuntu-22.04' + if: needs.changes.outputs.backend == 'true' && matrix.python-version == 3.7 && matrix.os == 'ubuntu-24.04' # only annotate based on test runs on ubuntu: otherwise # all errors will be duplicated for each python / os combination # therefore, we only enable for the one where most tests are run @@ -527,7 +527,7 @@ jobs: Set-ItemProperty 'HKLM:\System\CurrentControlSet\Control\FileSystem' -Name 'LongPathsEnabled' -value 0 - name: Install ddtrace on Linux - if: needs.changes.outputs.backend == 'true' && matrix.os == 'ubuntu-22.04' + if: needs.changes.outputs.backend == 'true' && matrix.os == 'ubuntu-24.04' run: poetry run pip install -U 'ddtrace<2.0.0' - name: Install ddtrace on Windows @@ -552,7 +552,7 @@ jobs: shell: bash # bash shell is a way to make code run for both Linux and Windows - name: Store coverage reports - if: needs.changes.outputs.backend == 'true' && matrix.os == 'ubuntu-22.04' + if: needs.changes.outputs.backend == 'true' && matrix.os == 'ubuntu-24.04' uses: actions/upload-artifact@b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 #v4.4.3 with: name: ${{ matrix.test }}-${{ matrix.python-version }}-${{ matrix.os }}-coverage @@ -562,7 +562,7 @@ jobs: upload_coverage_reports: name: Upload coverage reports to codeclimate if: github.ref_type != 'tag' - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 # Always upload results even if tests failed needs: - test @@ -614,7 +614,7 @@ jobs: integration_test: name: Run Non-Sequential Integration Tests if: github.ref_type != 'tag' - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 timeout-minutes: 60 needs: [changes] env: @@ -739,7 +739,7 @@ jobs: broker_integration_test: name: Run Broker Integration Tests if: github.ref_type != 'tag' - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 timeout-minutes: 60 needs: [changes] env: @@ -840,7 +840,7 @@ jobs: sequential_integration_test: name: Run Sequential Integration Tests if: github.ref_type != 'tag' - runs-on: ubuntu-20.04 + runs-on: ubuntu-24.04 timeout-minutes: 60 needs: [changes] env: @@ -941,7 +941,7 @@ jobs: build_docker_base_images_and_set_env: name: Build Docker base images and setup environment - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 outputs: base_image_hash: ${{ steps.check_image.outputs.base_image_hash }} base_mitie_image_hash: ${{ steps.check_image.outputs.base_mitie_image_hash }} @@ -1124,7 +1124,7 @@ jobs: docker: name: Build Docker - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 needs: [changes, build_docker_base_images_and_set_env] env: IMAGE_TAG: ${{ needs.build_docker_base_images_and_set_env.outputs.image_tag }} @@ -1226,7 +1226,7 @@ jobs: deploy: name: Deploy to PyPI - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 # deploy will only be run when there is a tag available if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags') && github.repository == 'RasaHQ/rasa' @@ -1305,7 +1305,7 @@ jobs: send_slack_notification_for_release_on_failure: name: Notify Slack & Publish Release Notes - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 # run this job when the workflow is triggered by a tag push if: always() && github.repository == 'RasaHQ/rasa' && github.ref_type == 'tag' needs: diff --git a/.github/workflows/dependabot-batch-updater.yml b/.github/workflows/dependabot-batch-updater.yml index 2065260d3bfc..dd08a4cf6c7c 100644 --- a/.github/workflows/dependabot-batch-updater.yml +++ b/.github/workflows/dependabot-batch-updater.yml @@ -6,7 +6,7 @@ on: jobs: update_dependencies: - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 name: Update dependencies steps: - uses: RasaHQ/dependabot-batch-updater@f049cbb0bbd3754bcb5ab154a79f00cd780fc633 # v1.0 diff --git a/.github/workflows/documentation.yml b/.github/workflows/documentation.yml index 076f44d0c612..224bc01da6f4 100644 --- a/.github/workflows/documentation.yml +++ b/.github/workflows/documentation.yml @@ -30,7 +30,7 @@ env: jobs: changes: name: Check for file changes - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 # don't run this for pull requests of forks if: github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name == 'RasaHQ/rasa' outputs: @@ -59,7 +59,7 @@ jobs: evaluate_release_tag: name: Evaluate release tag - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 # don't run this for main branches of forks and on documentation branch if: github.repository == 'RasaHQ/rasa' && github.ref != 'refs/heads/documentation' && github.event_name != 'pull_request' outputs: @@ -100,7 +100,7 @@ jobs: prebuild_docs: name: Prebuild Docs - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 needs: [evaluate_release_tag] # don't run this for main branches of forks, would fail anyways if: github.repository == 'RasaHQ/rasa' && needs.evaluate_release_tag.outputs.build_docs == 'true' && github.ref != 'refs/heads/documentation' && github.event_name != 'pull_request' @@ -189,7 +189,7 @@ jobs: preview_docs: name: Preview Docs - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 needs: [changes] # don't run this for pull requests from forks if: github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name == 'RasaHQ/rasa' @@ -285,7 +285,7 @@ jobs: publish_docs: name: Publish Docs - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 # don't run this for main branches of forks; only run on documentation branch if: github.repository == 'RasaHQ/rasa' && github.ref == 'refs/heads/documentation' diff --git a/.github/workflows/nightly_release.yml b/.github/workflows/nightly_release.yml index c7639d0cbf16..772f06a8a48a 100644 --- a/.github/workflows/nightly_release.yml +++ b/.github/workflows/nightly_release.yml @@ -9,7 +9,7 @@ on: jobs: run_script_and_tag_nightly_release: name: Run release script and tag a new nightly release - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 outputs: tag_name: ${{ steps.set_tagname.outputs.tag_name }} @@ -52,7 +52,7 @@ jobs: deploy: name: Deploy to PyPI - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 # deploy will only be run when there is a tag available needs: run_script_and_tag_nightly_release # only run after all other stages succeeded @@ -112,7 +112,7 @@ jobs: docker: name: Build Docker - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 needs: run_script_and_tag_nightly_release env: GCLOUD_VERSION: "297.0.1" diff --git a/.github/workflows/rasa-install-cron-check.yml b/.github/workflows/rasa-install-cron-check.yml index 91fa6eb6ee1d..2cc143c35681 100644 --- a/.github/workflows/rasa-install-cron-check.yml +++ b/.github/workflows/rasa-install-cron-check.yml @@ -14,7 +14,7 @@ jobs: strategy: matrix: os: - [ubuntu-22.04, ubuntu-18.04, macos-latest, windows-2019, windows-2022] + [ubuntu-24.04, ubuntu-18.04, macos-latest, windows-2019, windows-2022] python-version: [3.8, 3.9, '3.10'] fail-fast: false diff --git a/.github/workflows/security-scans.yml b/.github/workflows/security-scans.yml index b4cbf69cc92f..5ae74653b87f 100644 --- a/.github/workflows/security-scans.yml +++ b/.github/workflows/security-scans.yml @@ -11,7 +11,7 @@ concurrency: jobs: changes: name: Check for file changes - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 outputs: backend: ${{ steps.filter.outputs.backend }} docker: ${{ steps.filter.outputs.docker }} @@ -26,7 +26,7 @@ jobs: trivy: name: Detecting hardcoded secrets - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c with: @@ -75,7 +75,7 @@ jobs: bandit: name: Detect python security issues - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 needs: [changes] steps: diff --git a/.github/workflows/semgrep-check.yml b/.github/workflows/semgrep-check.yml index 846f92494b26..0e6665738406 100644 --- a/.github/workflows/semgrep-check.yml +++ b/.github/workflows/semgrep-check.yml @@ -14,7 +14,7 @@ jobs: # User-definable name of this GitHub Actions job: name: Semgrep Workflow Security Scan # If you are self-hosting, change the following `runs-on` value: - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 container: # A Docker image with Semgrep installed. Do not change this. diff --git a/.github/workflows/spellcheck.yml b/.github/workflows/spellcheck.yml index 4f90d2724ca9..3359884634e9 100644 --- a/.github/workflows/spellcheck.yml +++ b/.github/workflows/spellcheck.yml @@ -7,7 +7,7 @@ on: jobs: spellcheck: name: Typo CI (GitHub Action) - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 timeout-minutes: 4 if: "!contains(github.event.head_commit.message, '[ci skip]')" steps: From dd0a917abf793bef25dd513f9caab12c7da949c2 Mon Sep 17 00:00:00 2001 From: Radovan Zivkovic Date: Wed, 8 Jan 2025 11:14:18 +0100 Subject: [PATCH 08/12] Check for Ubuntu 24.04 when installing poetry --- .github/workflows/continous-integration.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/continous-integration.yml b/.github/workflows/continous-integration.yml index bce88f21690c..5093e6dd88b2 100644 --- a/.github/workflows/continous-integration.yml +++ b/.github/workflows/continous-integration.yml @@ -275,7 +275,7 @@ jobs: shell: bash - name: Install poetry (Ubuntu) 🦄 - if: needs.changes.outputs.backend == 'true' && matrix.os == 'ubuntu-22.04' + if: needs.changes.outputs.backend == 'true' && matrix.os == 'ubuntu-24.04' uses: snok/install-poetry@93ada01c735cc8a383ce0ce2ae205a21c415379b with: version: ${{ env.POETRY_VERSION }} @@ -441,7 +441,7 @@ jobs: shell: bash - name: Install poetry (Ubuntu) 🦄 - if: needs.changes.outputs.backend == 'true' && matrix.os == 'ubuntu-22.04' + if: needs.changes.outputs.backend == 'true' && matrix.os == 'ubuntu-24.04' uses: snok/install-poetry@93ada01c735cc8a383ce0ce2ae205a21c415379b with: version: ${{ env.POETRY_VERSION }} From 78a562a2819f11e73980a1559e9eb7ed6b0364b1 Mon Sep 17 00:00:00 2001 From: Radovan Zivkovic Date: Wed, 8 Jan 2025 11:22:12 +0100 Subject: [PATCH 09/12] Update ubuntu source index before installing packages necessary for tests --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 62367bc17c4f..a58eda4a3939 100644 --- a/Makefile +++ b/Makefile @@ -127,7 +127,7 @@ prepare-tests-macos: brew install wget graphviz || true prepare-tests-ubuntu: - sudo apt-get -y install graphviz graphviz-dev python-tk + sudo apt-get update && sudo apt-get -y install graphviz graphviz-dev python3-tk prepare-tests-windows: choco install wget graphviz From 24e16fa9be8088a250f6c2ce070b96d0b106888f Mon Sep 17 00:00:00 2001 From: Radovan Zivkovic Date: Wed, 8 Jan 2025 11:39:41 +0100 Subject: [PATCH 10/12] Update zookeeper and kafka container setup using docker compose --- .github/workflows/continous-integration.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/continous-integration.yml b/.github/workflows/continous-integration.yml index 5093e6dd88b2..e08f22f7b655 100644 --- a/.github/workflows/continous-integration.yml +++ b/.github/workflows/continous-integration.yml @@ -821,7 +821,7 @@ jobs: - name: Run kafka and zookeeper containers for integration testing if: needs.changes.outputs.backend == 'true' run: | - docker-compose -f tests_deployment/docker-compose.kafka.yml up -d + docker compose -f tests_deployment/docker-compose.kafka.yml up -d - name: Test Code with Services 🩺 if: needs.changes.outputs.backend == 'true' @@ -835,7 +835,7 @@ jobs: - name: Stop kafka and zookeeper containers for integration testing if: needs.changes.outputs.backend == 'true' run: | - docker-compose -f tests_deployment/docker-compose.kafka.yml down + docker compose -f tests_deployment/docker-compose.kafka.yml down sequential_integration_test: name: Run Sequential Integration Tests From f2b62632b9da48b562aa36eec36064fe8d78b4f8 Mon Sep 17 00:00:00 2001 From: Radovan Zivkovic Date: Wed, 8 Jan 2025 11:53:14 +0100 Subject: [PATCH 11/12] Disable docs check --- .github/workflows/ci-docs-tests.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci-docs-tests.yml b/.github/workflows/ci-docs-tests.yml index c4a76704c9d3..366fe1cdb0f8 100644 --- a/.github/workflows/ci-docs-tests.yml +++ b/.github/workflows/ci-docs-tests.yml @@ -31,7 +31,7 @@ jobs: name: Test Documentation runs-on: ubuntu-24.04 needs: [changes] - if: needs.changes.outputs.docs == 'true' + if: needs.changes.outputs.docs == 'true' && false # disabled as docs are moved out in new versions steps: - name: Checkout git repository 🕝 @@ -102,7 +102,7 @@ jobs: name: Documentation Linting Checks runs-on: ubuntu-24.04 needs: [changes] - if: needs.changes.outputs.docs == 'true' + if: needs.changes.outputs.docs == 'true' && false # disabled as docs are moved out in new versions steps: - name: Checkout git repository 🕝 From df98291ac07485ca36f333593cf3faf3da2082ba Mon Sep 17 00:00:00 2001 From: Radovan Zivkovic Date: Wed, 8 Jan 2025 12:19:41 +0100 Subject: [PATCH 12/12] Fix tests code coverage processing --- .github/workflows/continous-integration.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/continous-integration.yml b/.github/workflows/continous-integration.yml index e08f22f7b655..bf8798cfa1f2 100644 --- a/.github/workflows/continous-integration.yml +++ b/.github/workflows/continous-integration.yml @@ -402,7 +402,7 @@ jobs: with: name: ${{ matrix.test }}-${{ matrix.python-version }}-${{ matrix.os }}-coverage path: | - ${{ github.workspace }}/${{ matrix.test }}-${{ matrix.python-version }}-${{ matrix.os }}-coverage + ${{ github.workspace }}/test_coverage test-flaky: name: Run Flaky Tests @@ -557,7 +557,7 @@ jobs: with: name: ${{ matrix.test }}-${{ matrix.python-version }}-${{ matrix.os }}-coverage path: | - ${{ github.workspace }}/${{ matrix.test }}-${{ matrix.python-version }}-${{ matrix.os }}-coverage + ${{ github.workspace }}/test_coverage upload_coverage_reports: name: Upload coverage reports to codeclimate @@ -582,7 +582,7 @@ jobs: if: needs.changes.outputs.backend == 'true' uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 #v4.1.8 with: - path: ${{ github.workspace }}/tests_coverage + path: ${{ github.workspace }}/test_coverage - name: Merge all reports if: needs.changes.outputs.backend == 'true'