Skip to content

2.2.0 release #159

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
May 19, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 11 additions & 8 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ jobs:
run: |
# Extract version from __init__.py
# This supports any valid PEP 440 version including pre-releases (e.g., 2.1.0a1)
VERSION=$(python -c "exec(open('primer3/__init__.py').read()); print(__version__)")
VERSION=$(sed -n "s/^__version__ = '\(.*\)'/\1/p" primer3/__init__.py)
echo "version=${VERSION}" >> $GITHUB_OUTPUT
echo "Base version from __init__.py: ${VERSION}"

Expand Down Expand Up @@ -76,6 +76,7 @@ jobs:
uses: actions/checkout@v4

- name: Configure version
shell: bash
run: |
# Get base version from validate job
BASE_VERSION="${{ needs.validate-version.outputs.version }}"
Expand All @@ -98,7 +99,7 @@ jobs:
sed -i.bak "s/version=.*,/version='${VERSION}',/" setup.py

- name: Build wheels
uses: pypa/cibuildwheel@v2.22.0
uses: pypa/cibuildwheel@v2.23.3
env:
CIBW_PROJECT_REQUIRES_PYTHON: "==${{ matrix.python-version }}.*"
CIBW_SKIP: "{*-musllinux_*,pp*}" # Skip musl linux and PyPy versions
Expand All @@ -108,12 +109,12 @@ jobs:
MACOSX_DEPLOYMENT_TARGET: "10.14"
CIBW_BEFORE_BUILD: >-
python -m pip install --upgrade pip &&
python -m pip install "Cython==3.0.12" pytest "setuptools>=67.1.0" wheel build &&
cd {project} &&
python -m pip install -e .
python -m pip install -e ".[dev]"
CIBW_TEST_COMMAND_MACOS: "pytest {project}/tests/test_thermoanalysis.py -v"
CIBW_TEST_COMMAND_LINUX: "pytest {project}/tests/test_thermoanalysis.py -v"
CIBW_TEST_COMMAND_WINDOWS: "pytest {project}\\tests\\test_thermoanalysis.py"
CIBW_BUILD_VERBOSITY: 1

- name: Upload wheel artifacts
uses: actions/upload-artifact@v4
Expand All @@ -130,6 +131,7 @@ jobs:
uses: actions/checkout@v4

- name: Configure version
shell: bash
run: |
# Get base version from validate job
BASE_VERSION="${{ needs.validate-version.outputs.version }}"
Expand Down Expand Up @@ -190,17 +192,18 @@ jobs:

- name: Publish to PyPI
if: inputs.is_test == false
uses: pypa/gh-action-pypi-publish@v1.8.11
uses: pypa/gh-action-pypi-publish@v1.12.4
with:
password: ${{ secrets.PRIMER3_PYPI_API_TOKEN }}
verify_metadata: true
verify-metadata: true
verbose: true

- name: Publish to TestPyPI
if: inputs.is_test == true
uses: pypa/gh-action-pypi-publish@v1.8.11
uses: pypa/gh-action-pypi-publish@v1.12.4
with:
password: ${{ secrets.PRIMER3_TEST_PYPI_API_TOKEN }}
repository-url: https://test.pypi.org/legacy/
verify_metadata: true
verify-metadata: true
verbose: true
skip-existing: false
6 changes: 6 additions & 0 deletions CHANGES
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
# Changelog

## Version 2.2.0 (May 19, 2025)

- Test improvements (determinism + increased coverage)
- Sanitize `calc_tm` input (see issue #115)
- Modernize build system & release process (see issue #154)

## Version 2.1.0 (February 26, 2025)

- Support for python 3.13
Expand Down
2 changes: 1 addition & 1 deletion primer3/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@
from typing import List

# Per PEP-440 https://peps.python.org/pep-0440/#public-version-identifiers
__version__ = '2.1.0'
__version__ = '2.2.0'
__author__ = 'Ben Pruitt, Nick Conway'
__copyright__ = (
'Copyright 2014-2025, Ben Pruitt & Nick Conway; 2014-2018 Wyss Institute'
Expand Down
10 changes: 5 additions & 5 deletions tests/thermo_standard_values.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"metadata": {
"generation_timestamp": "2025-05-19T09:05:52.910774",
"primer3_py_version": "2.1.0",
"generation_timestamp": "2025-05-19T18:52:05.599355",
"primer3_py_version": "2.2.0",
"primer3_lib_version": "libprimer3 release 2.6.1",
"python_version": "3.11.5 (main, Sep 11 2023, 08:31:25) [Clang 14.0.6 ]",
"platform": {
Expand All @@ -13,13 +13,13 @@
"dependencies": {
"setuptools": "75.8.0",
"wheel": "0.38.4",
"Cython": "not installed",
"pre-commit": "3.4.0",
"Cython": "3.1.1",
"pre-commit": "3.5.0",
"pytest": "7.4.0",
"tomli": "2.0.1"
},
"git_info": {
"branch": "feat/deterministic_tests",
"branch": "2.2.0-staging",
"latest_tag": "v2.1.0"
}
},
Expand Down
Loading