From 9ffece961ee474fc68fb2853b02035532d85ee14 Mon Sep 17 00:00:00 2001 From: JavierAlbaM Date: Tue, 17 Mar 2026 18:25:48 -0400 Subject: [PATCH 1/5] Updated dependencies and bumped version --- pyxdsm/__init__.py | 2 +- setup.py | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/pyxdsm/__init__.py b/pyxdsm/__init__.py index 3a5935a..ef6497d 100644 --- a/pyxdsm/__init__.py +++ b/pyxdsm/__init__.py @@ -1 +1 @@ -__version__ = "2.3.1" +__version__ = "2.3.2" diff --git a/setup.py b/setup.py index ea8d36a..4135a36 100644 --- a/setup.py +++ b/setup.py @@ -26,7 +26,8 @@ "pyxdsm", ], package_data={"pyxdsm": ["*.tex"]}, - install_requires=["numpy>=1.21"], + python_requires=">=3.11", + install_requires=["numpy>=1.25"], python_requires=">=3", classifiers=[ "Operating System :: OS Independent", From 4813b2897b5aed676473dbb6c47fba250ea7e584 Mon Sep 17 00:00:00 2001 From: JavierAlbaM Date: Wed, 18 Mar 2026 16:43:33 -0400 Subject: [PATCH 2/5] Removed conflicting python_requires entry --- setup.py | 1 - 1 file changed, 1 deletion(-) diff --git a/setup.py b/setup.py index 4135a36..4b97280 100644 --- a/setup.py +++ b/setup.py @@ -28,7 +28,6 @@ package_data={"pyxdsm": ["*.tex"]}, python_requires=">=3.11", install_requires=["numpy>=1.25"], - python_requires=">=3", classifiers=[ "Operating System :: OS Independent", "Programming Language :: Python", From 51b0564e1c3b0355f9f54c75213870b250e67d48 Mon Sep 17 00:00:00 2001 From: JavierAlbaM Date: Wed, 18 Mar 2026 17:08:59 -0400 Subject: [PATCH 3/5] Updated test version requirements --- .github/workflows/test.yaml | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 6cd15d9..2cb23db 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -16,11 +16,8 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: [3.9, 3.11] - numpy-version: ["~=1.21.0", "~=1.26.0"] - exclude: - - python-version: 3.11 - numpy-version: "~=1.21.0" + python-version: [3.11, 3.12] + numpy-version: ["~=1.25", "~=2.3"] steps: - uses: actions/checkout@v5 - name: Set up Python ${{ matrix.python-version }} From b1c1056aa942fceb4539da35dcc97f76f62e020d Mon Sep 17 00:00:00 2001 From: JavierAlbaM Date: Thu, 19 Mar 2026 11:13:47 -0400 Subject: [PATCH 4/5] Changed find_executables to shutil.which to work with Python 3.12 --- tests/test_xdsm.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/tests/test_xdsm.py b/tests/test_xdsm.py index 9a2def3..e68aff8 100644 --- a/tests/test_xdsm.py +++ b/tests/test_xdsm.py @@ -4,7 +4,6 @@ import tempfile import subprocess from pyxdsm.XDSM import XDSM, OPT, FUNC, SOLVER, LEFT, RIGHT -from numpy.distutils.exec_command import find_executable basedir = os.path.dirname(os.path.abspath(__file__)) @@ -44,7 +43,7 @@ def test_examples(self): self.assertTrue(os.path.isfile(f + ".tikz")) self.assertTrue(os.path.isfile(f + ".tex")) # look for the pdflatex executable - pdflatex = find_executable("pdflatex") is not None + pdflatex = shutil.which("pdflatex") is not None # if no pdflatex, then do not assert that the pdf was compiled self.assertTrue(not pdflatex or os.path.isfile(f + ".pdf")) subprocess.run(["python", "mat_eqn.py"], check=True) From 611aedc4227c1ae964479757b00ec7c74479c719 Mon Sep 17 00:00:00 2001 From: JavierAlbaM Date: Thu, 19 Mar 2026 11:22:18 -0400 Subject: [PATCH 5/5] Changed assertEquals to assertEqual to work with Python 3.12 --- tests/test_xdsm.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/test_xdsm.py b/tests/test_xdsm.py index e68aff8..6e89b70 100644 --- a/tests/test_xdsm.py +++ b/tests/test_xdsm.py @@ -59,7 +59,7 @@ def test_connect(self): try: x.connect("D1", "D2", r"\mathcal{R}(y_1)", "foobar") except ValueError as err: - self.assertEquals(str(err), "label_width argument must be an integer") + self.assertEqual(str(err), "label_width argument must be an integer") else: self.fail("Expected ValueError")