From 025999dadaaac13c485a7e8466f3f66cbcb346b6 Mon Sep 17 00:00:00 2001 From: Geoffrey Bolmier Date: Tue, 21 May 2024 00:09:17 -0400 Subject: [PATCH 01/11] Upgrade pytest to 8.2.1 --- poetry.lock | 36 ++++++++++++++++++------------------ pyproject.toml | 2 +- 2 files changed, 19 insertions(+), 19 deletions(-) diff --git a/poetry.lock b/poetry.lock index a675335667..f3177398f9 100644 --- a/poetry.lock +++ b/poetry.lock @@ -13,13 +13,13 @@ files = [ [[package]] name = "annotated-types" -version = "0.6.0" +version = "0.7.0" description = "Reusable constraint types to use with typing.Annotated" optional = false python-versions = ">=3.8" files = [ - {file = "annotated_types-0.6.0-py3-none-any.whl", hash = "sha256:0641064de18ba7a25dee8f96403ebc39113d0cb953a01429249d5c7564666a43"}, - {file = "annotated_types-0.6.0.tar.gz", hash = "sha256:563339e807e53ffd9c267e99fc6d9ea23eb8443c08f112651963e24e22f84a5d"}, + {file = "annotated_types-0.7.0-py3-none-any.whl", hash = "sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53"}, + {file = "annotated_types-0.7.0.tar.gz", hash = "sha256:aff07c09a53a08bc8cfccb9c85b05f1aa9a2a6f23728d790723543408344ce89"}, ] [[package]] @@ -2308,13 +2308,13 @@ pyyaml = ">=5.1" [[package]] name = "mkdocs-material" -version = "9.5.23" +version = "9.5.24" description = "Documentation that simply works" optional = false python-versions = ">=3.8" files = [ - {file = "mkdocs_material-9.5.23-py3-none-any.whl", hash = "sha256:ffd08a5beaef3cd135aceb58ded8b98bbbbf2b70e5b656f6a14a63c917d9b001"}, - {file = "mkdocs_material-9.5.23.tar.gz", hash = "sha256:4627fc3f15de2cba2bde9debc2fd59b9888ef494beabfe67eb352e23d14bf288"}, + {file = "mkdocs_material-9.5.24-py3-none-any.whl", hash = "sha256:e12cd75954c535b61e716f359cf2a5056bf4514889d17161fdebd5df4b0153c6"}, + {file = "mkdocs_material-9.5.24.tar.gz", hash = "sha256:02d5aaba0ee755e707c3ef6e748f9acb7b3011187c0ea766db31af8905078a34"}, ] [package.dependencies] @@ -3317,13 +3317,13 @@ diagrams = ["jinja2", "railroad-diagrams"] [[package]] name = "pytest" -version = "7.4.4" +version = "8.2.1" description = "pytest: simple powerful testing with Python" optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "pytest-7.4.4-py3-none-any.whl", hash = "sha256:b090cdf5ed60bf4c45261be03239c2c1c22df034fbffe691abe93cd80cea01d8"}, - {file = "pytest-7.4.4.tar.gz", hash = "sha256:2cf0005922c6ace4a3e2ec8b4080eb0d9753fdc93107415332f50ce9e7994280"}, + {file = "pytest-8.2.1-py3-none-any.whl", hash = "sha256:faccc5d332b8c3719f40283d0d44aa5cf101cec36f88cde9ed8f2bc0538612b1"}, + {file = "pytest-8.2.1.tar.gz", hash = "sha256:5046e5b46d8e4cac199c373041f26be56fdb81eb4e67dc11d4e10811fc3408fd"}, ] [package.dependencies] @@ -3331,11 +3331,11 @@ colorama = {version = "*", markers = "sys_platform == \"win32\""} exceptiongroup = {version = ">=1.0.0rc8", markers = "python_version < \"3.11\""} iniconfig = "*" packaging = "*" -pluggy = ">=0.12,<2.0" -tomli = {version = ">=1.0.0", markers = "python_version < \"3.11\""} +pluggy = ">=1.5,<2.0" +tomli = {version = ">=1", markers = "python_version < \"3.11\""} [package.extras] -testing = ["argcomplete", "attrs (>=19.2.0)", "hypothesis (>=3.56)", "mock", "nose", "pygments (>=2.7.2)", "requests", "setuptools", "xmlschema"] +dev = ["argcomplete", "attrs (>=19.2)", "hypothesis (>=3.56)", "mock", "pygments (>=2.7.2)", "requests", "setuptools", "xmlschema"] [[package]] name = "pytest-xdist" @@ -3770,13 +3770,13 @@ files = [ [[package]] name = "requests" -version = "2.31.0" +version = "2.32.1" description = "Python HTTP for Humans." optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "requests-2.31.0-py3-none-any.whl", hash = "sha256:58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f"}, - {file = "requests-2.31.0.tar.gz", hash = "sha256:942c5a758f98d790eaed1a29cb6eefc7ffb0d1cf7af05c3d2791656dbd6ad1e1"}, + {file = "requests-2.32.1-py3-none-any.whl", hash = "sha256:21ac9465cdf8c1650fe1ecde8a71669a93d4e6f147550483a2967d08396a56a5"}, + {file = "requests-2.32.1.tar.gz", hash = "sha256:eb97e87e64c79e64e5b8ac75cee9dd1f97f49e289b083ee6be96268930725685"}, ] [package.dependencies] @@ -5138,4 +5138,4 @@ testing = ["big-O", "jaraco.functools", "jaraco.itertools", "jaraco.test", "more [metadata] lock-version = "2.0" python-versions = "^3.9" -content-hash = "44171f65a1084b6f80ee723431af4c5bffd1f4094599d2bf13d386af38ecfde6" +content-hash = "ca8660c61709481351fb807a177a4eb8681c90734835bbfd74d65eddf2fc59f0" diff --git a/pyproject.toml b/pyproject.toml index cf0d80b095..8efde7721e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -39,7 +39,7 @@ gym = "^0.26.2" matplotlib = "^3.0.2" mypy = "^1.6.1" pre-commit = "^3.5.0" -pytest = "^7.4.2" +pytest = "^8.2.1" ruff = "^0.1.1" scikit-learn = "^1.3.1" sqlalchemy = "^2.0.22" From 87a0d84bf89ed87802ceb1fdb37db06cdd9c4846 Mon Sep 17 00:00:00 2001 From: Geoffrey Bolmier Date: Tue, 18 Jun 2024 09:07:25 -0400 Subject: [PATCH 02/11] Downgrade the unit-tests workflow runner image From `ubuntu-latest` to `ubuntu-20.04` --- .github/workflows/unit-tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/unit-tests.yml b/.github/workflows/unit-tests.yml index 0d7c00e016..8985df4475 100644 --- a/.github/workflows/unit-tests.yml +++ b/.github/workflows/unit-tests.yml @@ -12,7 +12,7 @@ jobs: run: strategy: matrix: - os: [ubuntu-latest] + os: [ubuntu-20.04] python-version: ["3.12", "3.11", "3.10"] runs-on: ${{ matrix.os }} From efe33c0a3631882454a2d5f71567e4aef2afd11f Mon Sep 17 00:00:00 2001 From: Geoffrey Bolmier Date: Tue, 18 Jun 2024 09:20:02 -0400 Subject: [PATCH 03/11] Upgrade the unit-tests workflow runner image From `ubuntu-20.04` to `ubuntu-24.04` --- .github/workflows/unit-tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/unit-tests.yml b/.github/workflows/unit-tests.yml index 8985df4475..9fb1cd13db 100644 --- a/.github/workflows/unit-tests.yml +++ b/.github/workflows/unit-tests.yml @@ -12,7 +12,7 @@ jobs: run: strategy: matrix: - os: [ubuntu-20.04] + os: [ubuntu-24.04] python-version: ["3.12", "3.11", "3.10"] runs-on: ${{ matrix.os }} From eb36cb3e93d12f89662e11a4e0df5ea4f79c39df Mon Sep 17 00:00:00 2001 From: Geoffrey Bolmier Date: Tue, 18 Jun 2024 16:40:28 -0400 Subject: [PATCH 04/11] Fix unit-tests workflow --- .github/workflows/unit-tests.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/unit-tests.yml b/.github/workflows/unit-tests.yml index 9fb1cd13db..2ac51cc3a2 100644 --- a/.github/workflows/unit-tests.yml +++ b/.github/workflows/unit-tests.yml @@ -12,7 +12,7 @@ jobs: run: strategy: matrix: - os: [ubuntu-24.04] + os: [ubuntu-latest] python-version: ["3.12", "3.11", "3.10"] runs-on: ${{ matrix.os }} @@ -23,7 +23,7 @@ jobs: - name: Build River uses: ./.github/actions/install-env with: - python-version: "3.12" + python-version: ${{ matrix.python-version }} - name: Cache River datasets uses: actions/cache@v3 @@ -37,6 +37,9 @@ jobs: path: ~/scikit_learn_data key: ${{ runner.os }} + - name: Update Rust + run: rustup update + - name: Download datasets run: | poetry run python -c "from river import datasets; datasets.CreditCard().download(); datasets.Elec2().download(); datasets.SMSSpam().download()" From a9f82beae57145a68137daaf86afe20dd0f83682 Mon Sep 17 00:00:00 2001 From: Geoffrey Bolmier Date: Tue, 18 Jun 2024 16:55:04 -0400 Subject: [PATCH 05/11] Run unit-tests workflow only with Python 3.12 --- .github/workflows/unit-tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/unit-tests.yml b/.github/workflows/unit-tests.yml index 2ac51cc3a2..2af8aaa7a9 100644 --- a/.github/workflows/unit-tests.yml +++ b/.github/workflows/unit-tests.yml @@ -13,7 +13,7 @@ jobs: strategy: matrix: os: [ubuntu-latest] - python-version: ["3.12", "3.11", "3.10"] + python-version: ["3.12"] runs-on: ${{ matrix.os }} From d36483187702615d60ea6a73d8a5689c930b45c0 Mon Sep 17 00:00:00 2001 From: Geoffrey Bolmier Date: Tue, 18 Jun 2024 17:17:41 -0400 Subject: [PATCH 06/11] Update Rust in install-env workflow --- .github/actions/install-env/action.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/actions/install-env/action.yml b/.github/actions/install-env/action.yml index 719b9793db..5bf508c3aa 100644 --- a/.github/actions/install-env/action.yml +++ b/.github/actions/install-env/action.yml @@ -16,6 +16,10 @@ runs: - name: Check out repository uses: actions/checkout@v3 + - name: Update Rust + shell: bash + run: rustup update + - name: Set up Python id: set-up-python uses: actions/setup-python@v4 From 4b66347bc0d4f3c561a5aacf33aabfedcd858c96 Mon Sep 17 00:00:00 2001 From: Geoffrey Bolmier Date: Mon, 24 Jun 2024 13:08:10 -0400 Subject: [PATCH 07/11] Remove rust updates --- .github/actions/install-env/action.yml | 4 ---- .github/workflows/unit-tests.yml | 3 --- 2 files changed, 7 deletions(-) diff --git a/.github/actions/install-env/action.yml b/.github/actions/install-env/action.yml index 5bf508c3aa..719b9793db 100644 --- a/.github/actions/install-env/action.yml +++ b/.github/actions/install-env/action.yml @@ -16,10 +16,6 @@ runs: - name: Check out repository uses: actions/checkout@v3 - - name: Update Rust - shell: bash - run: rustup update - - name: Set up Python id: set-up-python uses: actions/setup-python@v4 diff --git a/.github/workflows/unit-tests.yml b/.github/workflows/unit-tests.yml index 2af8aaa7a9..2b35e9d5ce 100644 --- a/.github/workflows/unit-tests.yml +++ b/.github/workflows/unit-tests.yml @@ -37,9 +37,6 @@ jobs: path: ~/scikit_learn_data key: ${{ runner.os }} - - name: Update Rust - run: rustup update - - name: Download datasets run: | poetry run python -c "from river import datasets; datasets.CreditCard().download(); datasets.Elec2().download(); datasets.SMSSpam().download()" From 5850f7fbad656147267e7d475fc4ec1227e17d3a Mon Sep 17 00:00:00 2001 From: Geoffrey Bolmier Date: Mon, 24 Jun 2024 13:09:35 -0400 Subject: [PATCH 08/11] Install GCC 13 in the install-env action --- .github/actions/install-env/action.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.github/actions/install-env/action.yml b/.github/actions/install-env/action.yml index 719b9793db..7a2e85be81 100644 --- a/.github/actions/install-env/action.yml +++ b/.github/actions/install-env/action.yml @@ -16,6 +16,13 @@ runs: - name: Check out repository uses: actions/checkout@v3 + - name: Install GCC 13 + shell: bash + run: | + sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y + sudo apt-get update -y + sudo apt-get install gcc-13 + - name: Set up Python id: set-up-python uses: actions/setup-python@v4 From 41e3f69e9f551cc35e45c9a071de7951b5532099 Mon Sep 17 00:00:00 2001 From: Geoffrey Bolmier Date: Mon, 24 Jun 2024 13:27:36 -0400 Subject: [PATCH 09/11] Do not load cached virtual env --- .github/actions/install-env/action.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/.github/actions/install-env/action.yml b/.github/actions/install-env/action.yml index 7a2e85be81..8a21a2fb14 100644 --- a/.github/actions/install-env/action.yml +++ b/.github/actions/install-env/action.yml @@ -42,16 +42,16 @@ runs: virtualenvs-in-project: true installer-parallel: true - - name: Load cached virtual env - id: cached-poetry-dependencies - uses: actions/cache@v3 - with: - path: .venv - key: venv-${{ runner.os }}-${{ steps.set-up-python.outputs.python-version }}-${{ hashFiles('**/poetry.lock') }} + # - name: Load cached virtual env + # id: cached-poetry-dependencies + # uses: actions/cache@v3 + # with: + # path: .venv + # key: venv-${{ runner.os }}-${{ steps.set-up-python.outputs.python-version }}-${{ hashFiles('**/poetry.lock') }} - name: Install dependencies shell: bash - if: steps.cached-poetry-dependencies.outputs.cache-hit != 'true' + # if: steps.cached-poetry-dependencies.outputs.cache-hit != 'true' run: poetry install --no-interaction --no-ansi --no-root - name: Build From 9ff4d05f688529ebba7942e5148b5badeb3a86bf Mon Sep 17 00:00:00 2001 From: Geoffrey Bolmier Date: Mon, 24 Jun 2024 13:32:21 -0400 Subject: [PATCH 10/11] Increment poetry install cache key --- .github/actions/install-env/action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/actions/install-env/action.yml b/.github/actions/install-env/action.yml index 8a21a2fb14..0bbf8473c7 100644 --- a/.github/actions/install-env/action.yml +++ b/.github/actions/install-env/action.yml @@ -33,7 +33,7 @@ runs: uses: actions/cache@v3 with: path: ~/.local # the path depends on the OS - key: poetry-1 # increment to reset cache + key: poetry-2 # increment to reset cache - name: Install poetry uses: snok/install-poetry@v1 From b7a0f2ee875433410b589680edc1c128b005fcbd Mon Sep 17 00:00:00 2001 From: Geoffrey Bolmier Date: Mon, 24 Jun 2024 13:42:15 -0400 Subject: [PATCH 11/11] Add GCC and GFortran 9 and 13 to install-env --- .github/actions/install-env/action.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/actions/install-env/action.yml b/.github/actions/install-env/action.yml index 0bbf8473c7..1846adb65a 100644 --- a/.github/actions/install-env/action.yml +++ b/.github/actions/install-env/action.yml @@ -16,12 +16,12 @@ runs: - name: Check out repository uses: actions/checkout@v3 - - name: Install GCC 13 + - name: Install GCC and GFortran 9 and 13 shell: bash run: | sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y sudo apt-get update -y - sudo apt-get install gcc-13 + sudo apt-get install gcc-9 gcc-13 gfortran-9 gfortran-13 -y - name: Set up Python id: set-up-python @@ -33,7 +33,7 @@ runs: uses: actions/cache@v3 with: path: ~/.local # the path depends on the OS - key: poetry-2 # increment to reset cache + key: poetry-3 # increment to reset cache - name: Install poetry uses: snok/install-poetry@v1