From 99c4150487c98d0a161d5d9e9b6fe557c44beeee Mon Sep 17 00:00:00 2001 From: "Thomas S. Binns" Date: Mon, 30 Dec 2024 16:33:38 +0000 Subject: [PATCH] [MAINT] Prepare for v1.1.1 release (#29) --- .github/workflows/release.yml | 56 +++++++++++++++++++++++++++++++ .github/workflows/unit_tests.yml | 10 +++--- CITATION.cff | 2 +- changelog.md | 18 ++++------ docs/source/_static/versions.json | 6 ++-- docs/source/conf.py | 2 +- pyproject.toml | 2 +- 7 files changed, 73 insertions(+), 23 deletions(-) create mode 100644 .github/workflows/release.yml diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..18003d9 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,56 @@ +# Upload a Python Package using Twine when a release is created + +name: Build +on: + release: + types: [published] + push: + branches: + - main + pull_request: + branches: + - main + +permissions: + contents: read + +jobs: + package: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: '3.10' + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install build twine + - name: Build package + run: python -m build --sdist --wheel + - name: Check package + run: twine check --strict dist/* + - name: Check env vars + run: | + echo "Triggered by: ${{ github.event_name }}" + - uses: actions/upload-artifact@v4 + with: + name: dist + path: dist + + # PyPI on release + pypi: + needs: package + environment: release + runs-on: ubuntu-latest + if: github.event_name == 'release' + permissions: + id-token: write + steps: + - uses: actions/download-artifact@v4 + with: + name: dist + path: dist + - name: Publish to PyPI + uses: pypa/gh-action-pypi-publish@release/v1 diff --git a/.github/workflows/unit_tests.yml b/.github/workflows/unit_tests.yml index c52bc83..c23d6dc 100644 --- a/.github/workflows/unit_tests.yml +++ b/.github/workflows/unit_tests.yml @@ -24,13 +24,13 @@ jobs: - os: ubuntu-latest python-version: "3.10" - os: ubuntu-latest - python-version: "3.12" + python-version: "3.13" - os: macos-13 # Intel - python-version: "3.12" + python-version: "3.13" - os: macos-14 # arm64 - python-version: "3.12" + python-version: "3.13" - os: windows-latest - python-version: "3.12" + python-version: "3.13" env: TZ: Europe/Berlin FORCE_COLOR: true @@ -70,7 +70,7 @@ jobs: env: MKL_NUM_THREADS: '1' PYTHONUNBUFFERED: '1' - PYTHON_VERSION: '3.12' + PYTHON_VERSION: '3.13' steps: - uses: actions/checkout@v4 - uses: pyvista/setup-headless-display-action@main diff --git a/CITATION.cff b/CITATION.cff index 4ce010c..156d566 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -8,7 +8,7 @@ authors: given-names: "Timon" orcid: "https://orcid.org/0000-0003-3011-2612" title: "PyPARRM" -version: 1.1.0 +version: 1.1.1 doi: 10.5281/zenodo.8360751 date-released: 2023-06-15 url: "https://github.com/neuromodulation/PyPARRM/tree/main" diff --git a/changelog.md b/changelog.md index 3163f16..cb1c265 100644 --- a/changelog.md +++ b/changelog.md @@ -1,21 +1,15 @@ # PyPARRM Changelog -## [Version 1.2.0dev](https://pyparrm.readthedocs.io/en/main/index.html) +## [Version 1.2dev](https://pyparrm.readthedocs.io/en/main/index.html) -##### Enhancements -- Updated test coverage. - -##### Documentation -- Updated the development section & API format. -

- -## [Version 1.1.0](https://pyparrm.readthedocs.io/en/1.1.0/index.html) +## [Version 1.1](https://pyparrm.readthedocs.io/en/1.1.1/index.html) ##### Enhancements - Improved the speed for filtering data with many samples. - Added options for specifying the time range, time resolution, and frequency range when using the filter parameter explorer. - Updated the filter parameter explorer controls. - +- Reduced memory usage. + ##### Documentation - Updated the installation and development sections. - Added a new example showing the use of PARRM with ECoG and LFP data. @@ -26,6 +20,6 @@ - Fixed a bug where division by (close to) zero returned invalid filters.

-## [Version 1.0.0](https://pyparrm.readthedocs.io/en/1.0.0/index.html) +## [Version 1.0](https://pyparrm.readthedocs.io/en/1.0.0/index.html) -- Initial release. \ No newline at end of file +- Initial release. diff --git a/docs/source/_static/versions.json b/docs/source/_static/versions.json index ceed3f0..7a2182d 100644 --- a/docs/source/_static/versions.json +++ b/docs/source/_static/versions.json @@ -5,9 +5,9 @@ "url": "https://pyparrm.readthedocs.io/en/main/" }, { - "name": "1.1.0", - "version": "1.1.0", - "url": "https://pyparrm.readthedocs.io/en/1.1.0/" + "name": "1.1.1", + "version": "1.1.1", + "url": "https://pyparrm.readthedocs.io/en/1.1.1/" }, { "name": "1.0.0", diff --git a/docs/source/conf.py b/docs/source/conf.py index 775aca6..5899d4c 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -16,7 +16,7 @@ project = "PyPARRM" copyright = "2023, Thomas S. Binns" author = "Thomas S. Binns" -release = "1.2.0dev" +release = "1.1.1" # -- General configuration --------------------------------------------------- # https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration diff --git a/pyproject.toml b/pyproject.toml index f185cf1..24b7606 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -14,7 +14,7 @@ description = "A Python port of the PARRM algorithm" name = "pyparrm" readme = "README.md" requires-python = ">=3.10" -version = "1.2.0dev" +version = "1.1.1" [project.optional-dependencies] dev = ["pybispectra[doc]", "pybispectra[lint]", "pybispectra[test]"]