From 3c11a94d50de5f28a91e975a8faa372889d9ba32 Mon Sep 17 00:00:00 2001 From: Jan David Fischbach <92856893+jan-david-fischbach@users.noreply.github.com> Date: Mon, 14 Oct 2024 13:52:58 +0200 Subject: [PATCH 01/14] Update tests.yml to allow manual execution --- .github/workflows/tests.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index fc8f22485..133f09a13 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -4,6 +4,7 @@ on: push: branches: - main + workflow-dispatch: jobs: tests: From 712e3dcfc49ba9e5c8791268cdf33f7f40ce5ed8 Mon Sep 17 00:00:00 2001 From: Jan David Fischbach <92856893+jan-david-fischbach@users.noreply.github.com> Date: Mon, 14 Oct 2024 13:54:07 +0200 Subject: [PATCH 02/14] typo --- .github/workflows/tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 133f09a13..ac5392aa2 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -4,7 +4,7 @@ on: push: branches: - main - workflow-dispatch: + workflow_dispatch: jobs: tests: From a0278afb99434da1d80b2d549d392c4ef1c8a5a4 Mon Sep 17 00:00:00 2001 From: Jan David Fischbach Date: Mon, 14 Oct 2024 17:01:33 +0200 Subject: [PATCH 03/14] Set up first regression tests --- conftest.py | 15 +++++- pyproject.toml | 5 +- setup.cfg | 4 +- tests/datadir/.gitignore | 1 + tests/datadir/test_many.csv | 2 + tests/unit/test_special.py | 91 ++++++++----------------------------- 6 files changed, 42 insertions(+), 76 deletions(-) create mode 100644 tests/datadir/.gitignore create mode 100644 tests/datadir/test_many.csv diff --git a/conftest.py b/conftest.py index 98f53fab8..cad567192 100644 --- a/conftest.py +++ b/conftest.py @@ -4,7 +4,7 @@ subpackage. """ import pytest - +import pathlib def pytest_addoption(parser): """Add option '--runslow' and '--rungmsh'.""" @@ -14,6 +14,8 @@ def pytest_addoption(parser): parser.addoption( "--rungmsh", action="store_true", default=False, help="run tests needing gmsh" ) + parser.addini("datadir", "my own datadir for pytest-regressions") + parser.addini("original_datadir", "my own original_datadir for pytest-regressions") def pytest_configure(config): @@ -36,3 +38,14 @@ def pytest_collection_modifyitems(config, items): for item in items: if "gmsh" in item.keywords: item.add_marker(skip_slow) + +@pytest.fixture() +def original_datadir(request) -> pathlib.Path: + config = request.config + return config.rootpath / config.getini('datadir') + + +@pytest.fixture() +def datadir(request) -> pathlib.Path: + config = request.config + return config.rootpath / config.getini('datadir') \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml index 35278bbc5..f9c0eccff 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ requires = [ "wheel", "Cython", "numpy", - "scipy>=1.6", + "scipy>=1.14.1", "setuptools_scm>=6.2" ] build-backend = "setuptools.build_meta" @@ -22,3 +22,6 @@ archs = ["auto64"] skip = ["pp*", "*musllinux*"] test-command = "python -m pytest {project}/tests/unit || cd ." test-extras = ["test", "io"] + +[tool.pytest.ini_options] +datadir = "tests/datadir" diff --git a/setup.cfg b/setup.cfg index 9800fcda2..07947ab67 100644 --- a/setup.cfg +++ b/setup.cfg @@ -40,7 +40,7 @@ packages = install_requires = numpy - scipy >= 1.6 + scipy >= 1.14.1 [options.extras_require] coverage = @@ -53,6 +53,8 @@ io = h5py test = pytest + pytest-regressions + pandas [sdist] formats = zip, gztar diff --git a/tests/datadir/.gitignore b/tests/datadir/.gitignore new file mode 100644 index 000000000..5f98a4491 --- /dev/null +++ b/tests/datadir/.gitignore @@ -0,0 +1 @@ +*.obtained.* \ No newline at end of file diff --git a/tests/datadir/test_many.csv b/tests/datadir/test_many.csv new file mode 100644 index 000000000..26d1b10a6 --- /dev/null +++ b/tests/datadir/test_many.csv @@ -0,0 +1,2 @@ +,zero_negreal,zero_negreal_branch,half_real,half_complex,neg_complex,half_negreal,half_negreal_branch,one_real,one_complex,incgamma,exp1 +0,(-9.933832570625416-3.141592653589793j),(-9.933832570625416+3.141592653589793j),0.14758251320409649,(-0.01415763494202476+0.05873166523866827j),(-3.1094577033439155e-09-9.738493560673314e-10j),(1.7724538509055159-14.626171384019086j),(1.7724538509055159+14.626171384019086j),0.22313016014842982,(-0.08846104456538201+0.10242208005667372j),(0.006575211740583065+0.02614382370007995j),(0.006575211740583065+0.02614382370007995j) diff --git a/tests/unit/test_special.py b/tests/unit/test_special.py index 01850ae3b..cd3403470 100644 --- a/tests/unit/test_special.py +++ b/tests/unit/test_special.py @@ -4,6 +4,7 @@ import treams.special as sc import treams.special.cython_special as cs +from pytest_regressions.num_regression import NumericRegressionFixture def isclose(a, b, rel_tol=1e-09, abs_tol=0.0): @@ -15,71 +16,23 @@ def isclose(a, b, rel_tol=1e-09, abs_tol=0.0): class TestIncgamma: - def test_zero_real(self): - assert isclose(sc.incgamma(0, 1.5), 0.10001958240663263, rel_tol=EPSSQ) - - ## Failing ## - def test_exp1(self): - assert isclose( - ssc.exp1(2 + 4j), - 0.006575211740584215 + 0.0261438237000811j, - rel_tol=EPSSQ, - ) - - ## Failing ## - def test_zero_complex(self): - assert isclose( - sc.incgamma(0, 2 + 4j), - 0.006575211740584215 + 0.0261438237000811j, - rel_tol=EPSSQ, - ) - - def test_zero_negreal(self): - assert isclose( - sc.incgamma(0, -3 + 0.0j), - -9.933832570625414 - 3.141592653589793j, - rel_tol=EPSSQ, - ) - - def test_zero_negreal_branch(self): - assert isclose( - sc.incgamma(0, complex(-3, -0.0)), - -9.933832570625414 + 3.141592653589793j, - rel_tol=EPSSQ, - ) - - def test_half_real(self): - assert isclose(sc.incgamma(0.5, 1.5), 0.1475825132040964, rel_tol=EPSSQ) - - def test_half_complex(self): - assert isclose( - sc.incgamma(0.5, 2 + 4j), - -0.01415763494202471 + 0.058731665238669344j, - rel_tol=EPSSQ, - ) - - def test_half_negreal(self): - assert isclose( - sc.incgamma(0.5, -3 + 0.0j), - 1.7724538509055152 - 14.626171384019093j, - rel_tol=EPSSQ, - ) - - def test_half_negreal_branch(self): - assert isclose( - sc.incgamma(0.5, complex(-3, -0.0)), - 1.7724538509055152 + 14.626171384019093j, - rel_tol=EPSSQ, - ) - - def test_one_real(self): - assert isclose(sc.incgamma(1, 1.5), 0.22313016014842982, rel_tol=EPSSQ) - - def test_one_complex(self): - assert isclose( - sc.incgamma(1, 2 + 4j), - -0.08846104456538201 + 0.10242208005667372j, - rel_tol=EPSSQ, + def test_many(self, num_regression: NumericRegressionFixture): + num_regression.check( + { + 'zero_negreal': sc.incgamma(0, -3 + 0.0j), + 'zero_negreal_branch': sc.incgamma(0, complex(-3, -0.0)), + 'half_real': sc.incgamma(0.5, 1.5), + 'half_complex': sc.incgamma(0.5, 2 + 4j), + 'neg_complex': sc.incgamma(-10, 2 + 4j), + 'half_negreal': sc.incgamma(0.5, -3 + 0.0j), + 'half_negreal_branch': sc.incgamma(0.5, complex(-3, -0.0)), + 'one_real': sc.incgamma(1, 1.5), + 'one_complex': sc.incgamma(1, 2 + 4j), + 'incgamma': sc.incgamma(0, 1.5), + 'exp1': ssc.exp1(2 + 4j), + 'incgamma': sc.incgamma(0, 2 + 4j) + }, + default_tolerance=dict(atol=1e-7, rtol=EPSSQ) ) def test_one_negreal(self): @@ -111,14 +64,6 @@ def test_ten_negreal_branch(self): def test_neg_real(self): assert isclose(sc.incgamma(-10, 1.5), 0.0003324561166899859, rel_tol=EPSSQ) - ## Failing ## - def test_neg_complex(self): - assert isclose( - sc.incgamma(-10, 2 + 4j), - -3.109457703343637e-9 - 9.73849356067146e-10j, - rel_tol=EPSSQ, - ) - def test_neg_negreal(self): assert isclose( sc.incgamma(-10, -3 + 0.0j), From a8bafa046ab4a99f3dcf2411a6b677a974b05604 Mon Sep 17 00:00:00 2001 From: Jan David Fischbach Date: Tue, 15 Oct 2024 14:07:41 +0200 Subject: [PATCH 04/14] remove scipy version requirement -> Python>=3.10 compiles against scipy>=1.14.1 others compile against old version install requires should take care of making sure the corresponding scipy version is installed --- pyproject.toml | 2 +- setup.cfg | 7 ++----- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index f9c0eccff..f26254f9b 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ requires = [ "wheel", "Cython", "numpy", - "scipy>=1.14.1", + "scipy", "setuptools_scm>=6.2" ] build-backend = "setuptools.build_meta" diff --git a/setup.cfg b/setup.cfg index 07947ab67..6f6cb6717 100644 --- a/setup.cfg +++ b/setup.cfg @@ -15,10 +15,6 @@ classifiers = Operating System :: POSIX :: Linux Natural Language :: English Programming Language :: Python - Programming Language :: Python :: 3 - Programming Language :: Python :: 3 :: Only - Programming Language :: Python :: 3.8 - Programming Language :: Python :: 3.9 Programming Language :: Python :: 3.10 Programming Language :: Python :: 3.11 Programming Language :: Python :: 3.12 @@ -40,7 +36,8 @@ packages = install_requires = numpy - scipy >= 1.14.1 + scipy >= 1.6 ; python<=3.9 + scipy >= 1.14.1 ; python>=3.10 [options.extras_require] coverage = From cd7dfc2d5ad5d4c0f8878b385b53551098d7d29d Mon Sep 17 00:00:00 2001 From: Jan David Fischbach Date: Tue, 15 Oct 2024 14:38:23 +0200 Subject: [PATCH 05/14] syntax of the dependency specification --- setup.cfg | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/setup.cfg b/setup.cfg index 6f6cb6717..3e4f0b31a 100644 --- a/setup.cfg +++ b/setup.cfg @@ -36,8 +36,8 @@ packages = install_requires = numpy - scipy >= 1.6 ; python<=3.9 - scipy >= 1.14.1 ; python>=3.10 + scipy >= 1.6;python_version<='3.9' + scipy >= 1.14.1;python_version>='3.10' [options.extras_require] coverage = From 836bb8989c8fa2ba18bd8c7cb45049ee8653f762 Mon Sep 17 00:00:00 2001 From: Jan David Fischbach Date: Tue, 15 Oct 2024 14:56:37 +0200 Subject: [PATCH 06/14] TEST: Increase tolerance for regressions in incgamma, rename testcases --- tests/datadir/test_many.csv | 4 ++-- tests/unit/test_special.py | 10 +++++++--- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/tests/datadir/test_many.csv b/tests/datadir/test_many.csv index 26d1b10a6..adada4496 100644 --- a/tests/datadir/test_many.csv +++ b/tests/datadir/test_many.csv @@ -1,2 +1,2 @@ -,zero_negreal,zero_negreal_branch,half_real,half_complex,neg_complex,half_negreal,half_negreal_branch,one_real,one_complex,incgamma,exp1 -0,(-9.933832570625416-3.141592653589793j),(-9.933832570625416+3.141592653589793j),0.14758251320409649,(-0.01415763494202476+0.05873166523866827j),(-3.1094577033439155e-09-9.738493560673314e-10j),(1.7724538509055159-14.626171384019086j),(1.7724538509055159+14.626171384019086j),0.22313016014842982,(-0.08846104456538201+0.10242208005667372j),(0.006575211740583065+0.02614382370007995j),(0.006575211740583065+0.02614382370007995j) +,zero_negreal,zero_negreal_branch,half_real,half_complex,neg_complex,half_negreal,half_negreal_branch,one_real,one_complex,zero_real,zero_complex,exp1 +0,(-9.933832570625416-3.141592653589793j),(-9.933832570625416+3.141592653589793j),0.14758251320409649,(-0.01415763494202476+0.05873166523866827j),(-3.1094577033439155e-09-9.738493560673314e-10j),(1.7724538509055159-14.626171384019086j),(1.7724538509055159+14.626171384019086j),0.22313016014842982,(-0.08846104456538201+0.10242208005667372j),0.10001958240663265,(0.006575211740583065+0.02614382370007995j),(0.006575211740583065+0.02614382370007995j) diff --git a/tests/unit/test_special.py b/tests/unit/test_special.py index cd3403470..77589a779 100644 --- a/tests/unit/test_special.py +++ b/tests/unit/test_special.py @@ -28,10 +28,14 @@ def test_many(self, num_regression: NumericRegressionFixture): 'half_negreal_branch': sc.incgamma(0.5, complex(-3, -0.0)), 'one_real': sc.incgamma(1, 1.5), 'one_complex': sc.incgamma(1, 2 + 4j), - 'incgamma': sc.incgamma(0, 1.5), + 'zero_real': sc.incgamma(0, 1.5), + 'zero_complex': sc.incgamma(0, 2 + 4j), 'exp1': ssc.exp1(2 + 4j), - 'incgamma': sc.incgamma(0, 2 + 4j) - }, + }, tolerances={ + 'neg_complex': dict(atol=1e-7, rtol=1e-11), #mild regressions in scipy + 'zero_complex': dict(atol=1e-7, rtol=1e-11), + 'exp1': dict(atol=1e-7, rtol=1e-11), + }, default_tolerance=dict(atol=1e-7, rtol=EPSSQ) ) From 07b5541842e151bc977f030e3b895e59cf40ce69 Mon Sep 17 00:00:00 2001 From: Jan David Fischbach Date: Tue, 15 Oct 2024 15:05:08 +0200 Subject: [PATCH 07/14] TEST: tolerance for problematic cases of incgamma increased to 1e-10 --- tests/unit/test_special.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/unit/test_special.py b/tests/unit/test_special.py index 77589a779..7fc98a319 100644 --- a/tests/unit/test_special.py +++ b/tests/unit/test_special.py @@ -32,9 +32,9 @@ def test_many(self, num_regression: NumericRegressionFixture): 'zero_complex': sc.incgamma(0, 2 + 4j), 'exp1': ssc.exp1(2 + 4j), }, tolerances={ - 'neg_complex': dict(atol=1e-7, rtol=1e-11), #mild regressions in scipy - 'zero_complex': dict(atol=1e-7, rtol=1e-11), - 'exp1': dict(atol=1e-7, rtol=1e-11), + 'neg_complex': dict(atol=1e-7, rtol=1e-10), #mild regressions in scipy + 'zero_complex': dict(atol=1e-7, rtol=1e-10), + 'exp1': dict(atol=1e-7, rtol=1e-10), }, default_tolerance=dict(atol=1e-7, rtol=EPSSQ) ) From ff9d7a20f8c7f526464f405b56cc15d2343eb5bd Mon Sep 17 00:00:00 2001 From: Jan David Fischbach Date: Tue, 15 Oct 2024 15:22:53 +0200 Subject: [PATCH 08/14] TEST: Switch to numpy regressions to handle complex numbers properly --- tests/datadir/test_many.csv | 2 -- tests/datadir/test_many.npz | Bin 0 -> 2526 bytes tests/unit/test_special.py | 18 ++++++++++-------- 3 files changed, 10 insertions(+), 10 deletions(-) delete mode 100644 tests/datadir/test_many.csv create mode 100644 tests/datadir/test_many.npz diff --git a/tests/datadir/test_many.csv b/tests/datadir/test_many.csv deleted file mode 100644 index adada4496..000000000 --- a/tests/datadir/test_many.csv +++ /dev/null @@ -1,2 +0,0 @@ -,zero_negreal,zero_negreal_branch,half_real,half_complex,neg_complex,half_negreal,half_negreal_branch,one_real,one_complex,zero_real,zero_complex,exp1 -0,(-9.933832570625416-3.141592653589793j),(-9.933832570625416+3.141592653589793j),0.14758251320409649,(-0.01415763494202476+0.05873166523866827j),(-3.1094577033439155e-09-9.738493560673314e-10j),(1.7724538509055159-14.626171384019086j),(1.7724538509055159+14.626171384019086j),0.22313016014842982,(-0.08846104456538201+0.10242208005667372j),0.10001958240663265,(0.006575211740583065+0.02614382370007995j),(0.006575211740583065+0.02614382370007995j) diff --git a/tests/datadir/test_many.npz b/tests/datadir/test_many.npz new file mode 100644 index 0000000000000000000000000000000000000000..b0b317ad7ee7012899e3fa899bf4c8474f892fc7 GIT binary patch literal 2526 zcmWIWW@gc4U|`??Vnv2SIm>qZhXMfx5r(SNqWt*0)byg%#2mf6f=WgP0fq@cl^_rT zp%`Yr5q~8uaPmaJv4FMnCPmGOS(3MOLEhw?jAiQBrh7o~|Ocgz2Z$EGw?9TvHhI7T=4C|5<&CU8N+}sZP5{j)5Tn#Z`~q%Z0*RC64B* z_@tu5yyOhJInD~*aovpfgkg^31v)MxF()k^IlMZc;pB}!ywVn;2bWMemf#X$T<7`f zdfvafniFzp!4%4TiyP(=P~?GKlANDgkdsSZoymyN>bpkg1U;b|+`7BiYlcxFvbg1H0~Jiz1= zPxIhO@4nmQzCG)$adpbKp5*NZ?9d#=UdgWqa}>M;r@5=zl(*ea+rN5K`h(za`c_t_ z(TgTzS8)J?Dz&1(kak59HrFsR=`y3%bD;VQRF?@ra}kJYU<8rqwO)WXs%}ty1k)`J z(f|bwjMIQDWZg(b3A!PmdIMA?fT{;xr~x3VfzcS~2$Wg`T`Q=dhuM$n`n@o%NHLDC z8&n`;*B#6RwHT>*M%N80IAOX`{r(b7Hy*!(3OG>V1@b!&$kR~Jz}UvjfKuF{TMsId zVAk`)v;pY`Mm`pZPCPyb6&=`vd@)cnN&q)E^tUw+pIC&Tz0b}ABm Date: Tue, 15 Oct 2024 16:03:43 +0200 Subject: [PATCH 09/14] TEST: use old numpy for doctests (format difference) and install gmsh --- .github/workflows/doctests.yml | 2 +- setup.cfg | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/doctests.yml b/.github/workflows/doctests.yml index 05c65469f..b9b4eed08 100644 --- a/.github/workflows/doctests.yml +++ b/.github/workflows/doctests.yml @@ -16,7 +16,7 @@ jobs: with: python-version: '3.11' - name: Build treams - run: python -m pip install -e . + run: python -m pip install "numpy<2" -e . - name: Run doctests run: | python -m pip install treams[docs,io] diff --git a/setup.cfg b/setup.cfg index 3e4f0b31a..253686c85 100644 --- a/setup.cfg +++ b/setup.cfg @@ -48,6 +48,7 @@ docs = sphinx io = h5py + gmsh test = pytest pytest-regressions From b9380f2e9076a1786cf7ca6ea8400b6e23c050ff Mon Sep 17 00:00:00 2001 From: Jan David Fischbach Date: Tue, 15 Oct 2024 16:12:36 +0200 Subject: [PATCH 10/14] MAINT: only deploy coverage report for one python version (3.11) --- .github/workflows/tests.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index ac5392aa2..75f86f3ab 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -44,6 +44,7 @@ jobs: rm htmlcov/.gitignore - name: Deploy report + if: ${{ matrix.python-version == '3.11' }} uses: s0/git-publish-subdir-action@develop env: REPO: self From d9e78c772cc74157e29d28fa5179c6acda29430e Mon Sep 17 00:00:00 2001 From: Jan David Fischbach Date: Tue, 15 Oct 2024 16:35:53 +0200 Subject: [PATCH 11/14] TEST: format output in doctests to avoid problems with rounding error. Install dependencies for gmsh --- .github/workflows/doctests.yml | 6 ++++-- docs/gettingstarted.rst | 4 ++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.github/workflows/doctests.yml b/.github/workflows/doctests.yml index b9b4eed08..51a843b1b 100644 --- a/.github/workflows/doctests.yml +++ b/.github/workflows/doctests.yml @@ -16,8 +16,10 @@ jobs: with: python-version: '3.11' - name: Build treams - run: python -m pip install "numpy<2" -e . + run: python -m pip install "numpy<2" -e .[docs,io] + - name: Install requirements for gmsh + run: | + apt-get -y install libglu1 libxcursor-dev libxft2 libxinerama1 libfltk1.3-dev libfreetype6-dev libgl1-mesa-dev - name: Run doctests run: | - python -m pip install treams[docs,io] sphinx-build -b doctest docs docs/_build/doctest diff --git a/docs/gettingstarted.rst b/docs/gettingstarted.rst index 18a56b49a..20a7f2aa4 100644 --- a/docs/gettingstarted.rst +++ b/docs/gettingstarted.rst @@ -21,7 +21,7 @@ Import *treams*, create T-matrices and start calculating. >>> import treams >>> tm = treams.TMatrix.sphere(1, .6, 1, [4, 1]) - >>> tm.xs_ext_avg - 0.3072497765576123 + >>> f"{tm.xs_ext_avg:.4f}" + '0.3072' More detailed examples are given in :doc:`intro`. From 11a5ff54afdcec4f65d47d018994780a346d90fb Mon Sep 17 00:00:00 2001 From: Jan David Fischbach Date: Tue, 15 Oct 2024 17:04:42 +0200 Subject: [PATCH 12/14] MAINT: Forgot to update package index --- .github/workflows/doctests.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/doctests.yml b/.github/workflows/doctests.yml index 51a843b1b..0243d7ef2 100644 --- a/.github/workflows/doctests.yml +++ b/.github/workflows/doctests.yml @@ -19,7 +19,8 @@ jobs: run: python -m pip install "numpy<2" -e .[docs,io] - name: Install requirements for gmsh run: | - apt-get -y install libglu1 libxcursor-dev libxft2 libxinerama1 libfltk1.3-dev libfreetype6-dev libgl1-mesa-dev + sudo apt-get update + sudo apt-get -y install libglu1 libxcursor-dev libxft2 libxinerama1 libfltk1.3-dev libfreetype6-dev libgl1-mesa-dev - name: Run doctests run: | - sphinx-build -b doctest docs docs/_build/doctest + TZ=UTC sphinx-build -b doctest docs docs/_build/doctest From 31e6b9d4f2288c06c1ed2d02fda6b1a479fe3bf4 Mon Sep 17 00:00:00 2001 From: Jan David Fischbach Date: Tue, 15 Oct 2024 17:23:58 +0200 Subject: [PATCH 13/14] MAINT: run CI on pull requests --- .github/workflows/doctests.yml | 1 + .github/workflows/tests.yml | 1 + 2 files changed, 2 insertions(+) diff --git a/.github/workflows/doctests.yml b/.github/workflows/doctests.yml index 0243d7ef2..f197b8caa 100644 --- a/.github/workflows/doctests.yml +++ b/.github/workflows/doctests.yml @@ -1,6 +1,7 @@ name: doctests on: + pull_request: push: branches: - main diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 75f86f3ab..94b0437d9 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -1,6 +1,7 @@ name: tests on: + pull_request: push: branches: - main From 3fa1d653616a1d4785e24b4c47c8c134fe4a615b Mon Sep 17 00:00:00 2001 From: Jan David Fischbach Date: Mon, 28 Oct 2024 17:03:45 +0100 Subject: [PATCH 14/14] Update tests to include python 3.13 --- .github/workflows/tests.yml | 2 +- setup.cfg | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 94b0437d9..2631d6c26 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -13,7 +13,7 @@ jobs: strategy: max-parallel: 3 matrix: - python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] + python-version: ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] permissions: pull-requests: write contents: write diff --git a/setup.cfg b/setup.cfg index 253686c85..24d7180f8 100644 --- a/setup.cfg +++ b/setup.cfg @@ -18,6 +18,7 @@ classifiers = Programming Language :: Python :: 3.10 Programming Language :: Python :: 3.11 Programming Language :: Python :: 3.12 + Programming Language :: Python :: 3.13 Programming Language :: Cython Programming Language :: Python :: Implementation :: CPython Topic :: Scientific/Engineering