From 27b79ad0747fd0c225dd813b49c6e34dfc3d284b Mon Sep 17 00:00:00 2001 From: Markus Binsteiner Date: Fri, 19 Apr 2024 13:39:14 +0200 Subject: [PATCH] chore: sync project template --- .cruft.json | 2 +- .github/workflows/build-darwin.yaml | 12 ++- .github/workflows/build-linux.yaml | 121 +++++++++++++++++---------- .github/workflows/build-windows.yaml | 10 ++- ci/conda/conda-pkg-patch.yaml | 4 +- pyproject.toml | 4 +- 6 files changed, 101 insertions(+), 52 deletions(-) diff --git a/.cruft.json b/.cruft.json index de00d26..74ff80a 100644 --- a/.cruft.json +++ b/.cruft.json @@ -1,6 +1,6 @@ { "template": "https://github.com/DHARPA-Project/kiara_plugin.develop.git", - "commit": "61841496d46e8ce4f79da1126443524bde03f977", + "commit": "29494cbc7b4f042d1780806a7baf3fe90e344f24", "checkout": null, "context": { "cookiecutter": { diff --git a/.github/workflows/build-darwin.yaml b/.github/workflows/build-darwin.yaml index f5fa4a9..e477b4b 100644 --- a/.github/workflows/build-darwin.yaml +++ b/.github/workflows/build-darwin.yaml @@ -11,13 +11,19 @@ jobs: runs-on: macos-11 strategy: matrix: - python_version: ["3.8", "3.9", "3.10", "3.11"] + python_version: ["3.8", "3.9", "3.10", "3.11", "3.12"] steps: - name: "Set up Python ${{ matrix.python_version }}" - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: "${{ matrix.python_version }}" - - uses: actions/checkout@v3 + - name: pip cache + id: pip-cache + uses: actions/cache@v4 + with: + path: ~/.cache/pip + key: ${{ runner.os }}-pip-${{ matrix.python_version }} + - uses: actions/checkout@v4 - name: install kiara_plugin.onboarding run: pip install -U .[dev_testing] - name: display installed kiara and module package versions diff --git a/.github/workflows/build-linux.yaml b/.github/workflows/build-linux.yaml index e614c0a..d505eb3 100644 --- a/.github/workflows/build-linux.yaml +++ b/.github/workflows/build-linux.yaml @@ -21,10 +21,16 @@ jobs: python_version: ["3.8", "3.9", "3.10", "3.11", "3.12"] steps: - name: "Set up Python ${{ matrix.python_version }}" - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: "${{ matrix.python_version }}" - - uses: actions/checkout@v3 + - name: pip cache + id: pip-cache + uses: actions/cache@v4 + with: + path: ~/.cache/pip + key: ${{ runner.os }}-pip-${{ matrix.python_version }} + - uses: actions/checkout@v4 - name: install kiara_plugin.onboarding run: pip install -U .[dev_testing] - name: display installed kiara and module package versions @@ -68,10 +74,16 @@ jobs: python_version: ["3.8", "3.9", "3.10", "3.11", "3.12"] steps: - name: "Set up Python ${{ matrix.python_version }}" - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: "${{ matrix.python_version }}" - - uses: actions/checkout@v3 + - name: pip cache + id: pip-cache + uses: actions/cache@v4 + with: + path: ~/.cache/pip + key: $${{ runner.os }}-pip-${{ matrix.python_version }} + - uses: actions/checkout@v4 - name: install kiara_plugin.onboarding run: pip install -U .[dev_testing] - name: Test with mypy @@ -80,38 +92,40 @@ jobs: linting-linux: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Install Python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: - python-version: "3.11" + python-version: "3.12" - name: pip cache id: pip-cache - uses: actions/cache@v3 + uses: actions/cache@v4 with: path: ~/.cache/pip - key: ${{ runner.os }}-pip-${{ hashFiles('**/setup.*') }} + key: ${{ runner.os }}-pip-3.12 - name: Install dependencies run: | python -m pip install --upgrade pip pip install -U ruff # Include `--format=github` to enable automatic inline annotations. - name: Run Ruff - run: ruff --output-format=github src/ + run: ruff check --output-format=github src/ build_python_package: name: build python package runs-on: ubuntu-latest - needs: - - test-linux - - mypy-linux - - linting-linux steps: - - name: Set up Python 3.11 - uses: actions/setup-python@v4 + - name: Set up Python 3.12 + uses: actions/setup-python@v5 + with: + python-version: "3.12" + - name: pip cache + id: pip-cache + uses: actions/cache@v4 with: - python-version: "3.11" - - uses: actions/checkout@v3 + path: ~/.cache/pip + key: ${{ runner.os }}-pip-3.12 + - uses: actions/checkout@v4 with: fetch-depth: 0 - name: install pip @@ -130,8 +144,7 @@ jobs: runs-on: ubuntu-latest needs: - build_python_package - env: - GEMFURY_PUSH_TOKEN: ${{ secrets.GEMFURY_PUSH_TOKEN }} + - build_conda_package permissions: id-token: write # IMPORTANT: this permission is mandatory for trusted publishing steps: @@ -143,39 +156,63 @@ jobs: - name: publish to PyPI # make sure you have pypi trusted publishing configured for this repo uses: pypa/gh-action-pypi-publish@release/v1 - build_and_release_conda_package: + build_conda_package: name: conda package build (and upload if release) runs-on: ubuntu-latest + steps: + - name: "Set up Python 3.12" + uses: actions/setup-python@v5 + with: + python-version: "3.12" + - name: pip cache + id: pip-cache + uses: actions/cache@v4 + with: + path: ~/.cache/pip + key: ${{ runner.os }}-pip-3.12 + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + - name: install kiara_plugin.develop + run: pip install kiara_plugin.develop + - name: build conda package + run: kiara build conda pkg --channel dharpa --channel conda-forge --patch-data ci/conda/conda-pkg-patch.yaml --output-folder build-dir . + - name: upload artifacts + uses: actions/upload-artifact@v4 + with: + name: conda-pkgs + path: build-dir/ + + release_conda_package: + name: publish python package to anaconda + if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags') + runs-on: ubuntu-latest needs: - test-linux - mypy-linux - linting-linux + - build_python_package + - build_conda_package steps: - - name: "Set up Python 3.11" - uses: actions/setup-python@v4 + - name: "Set up Python 3.12" + uses: actions/setup-python@v5 with: - python-version: "3.11" + python-version: "3.12" - name: pip cache id: pip-cache - uses: actions/cache@v3 + uses: actions/cache@v4 with: path: ~/.cache/pip - key: ${{ runner.os }}-pip-${{ hashFiles('**/setup.*') }} - - uses: actions/checkout@v3 + key: ${{ runner.os }}-pip-3.12 + - name: install kiara_plugin.develop + run: pip install kiara_plugin.develop + - name: Retrieve build distributions + uses: actions/download-artifact@v4 with: - fetch-depth: 0 - - name: install kiara - run: pip install kiara - - name: install required plugin packages - run: pip install git+https://github.com/DHARPA-Project/kiara_plugin.develop.git@develop - - name: build conda package - if: ${{ ( github.ref == 'refs/heads/develop') }} - run: kiara conda build-package --patch-data ci/conda/conda-pkg-patch.yaml . - - name: extract tag name - run: echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV - - name: build & publish conda package - if: ${{ startsWith(github.ref, 'refs/tags/') }} - run: kiara conda build-package --publish --user dharpa --token ${{ secrets.ANACONDA_PUSH_TOKEN }} --patch-data ci/conda/conda-pkg-patch.yaml . + name: conda-pkgs + path: build-dir/ + - name: release conda package + run: kiara build conda publish --user dharpa --channel dharpa --token ${{ secrets.ANACONDA_PUSH_TOKEN }} build-dir merge_tag_to_main: name: merge current tag to main branch @@ -183,9 +220,9 @@ jobs: if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags') needs: - release_python_package - - build_and_release_conda_package + - release_conda_package steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 0 - run: git config --global user.email "markus@frkl.io" diff --git a/.github/workflows/build-windows.yaml b/.github/workflows/build-windows.yaml index c8ca1d3..f8abc4d 100644 --- a/.github/workflows/build-windows.yaml +++ b/.github/workflows/build-windows.yaml @@ -11,10 +11,16 @@ jobs: python_version: ["3.8", "3.9", "3.10", "3.11", "3.12"] steps: - name: "Set up Python ${{ matrix.python_version }}" - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: "${{ matrix.python_version }}" - - uses: actions/checkout@v3 + - name: pip cache + id: pip-cache + uses: actions/cache@v4 + with: + path: ~/.cache/pip + key: ${{ runner.os }}-pip-${{ matrix.python_version }} + - uses: actions/checkout@v4 - name: install kiara_plugin.onboarding run: pip install -U .[dev_testing] - name: Test with pytest diff --git a/ci/conda/conda-pkg-patch.yaml b/ci/conda/conda-pkg-patch.yaml index 449b25f..28205ad 100644 --- a/ci/conda/conda-pkg-patch.yaml +++ b/ci/conda/conda-pkg-patch.yaml @@ -1,11 +1,11 @@ channels: - - conda-forge - dharpa + - conda-forge host_requirements: - pip - python - - setuptools<=63 + - setuptools - setuptools_scm test: diff --git a/pyproject.toml b/pyproject.toml index 2c7f526..5829b08 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -47,8 +47,8 @@ classifiers = [ "Programming Language :: Python :: 3.12" ] dependencies = [ - "kiara>=0.5.10rc10,<0.6.0", - "kiara_plugin.core_types>=0.5.0,<0.6.0", + "kiara>=0.5.10,<0.6.0", + "kiara_plugin.core_types>=0.5.1,<0.6.0", "httpx>=0.23.0", "pyzenodo3>=1.0.2", "PyGithub>=1.58.0",