From 5a38851c6b9df9d8d6ecfc735e3d8b1a4719fe5a Mon Sep 17 00:00:00 2001 From: Fabian Joswig Date: Mon, 27 Jul 2026 21:26:12 +0200 Subject: [PATCH 1/5] [ci] Add free threaded python interpreter 3.14t to pytest action --- .github/workflows/pytest.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pytest.yml b/.github/workflows/pytest.yml index 86a05519..80c1d732 100644 --- a/.github/workflows/pytest.yml +++ b/.github/workflows/pytest.yml @@ -17,7 +17,7 @@ jobs: fail-fast: false matrix: os: [ubuntu-latest] - python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"] + python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.14t"] include: - os: macos-latest python-version: "3.12" From 45858d0244d946f74c5d15e618575d9f5bf75071 Mon Sep 17 00:00:00 2001 From: Fabian Joswig Date: Mon, 27 Jul 2026 21:32:46 +0200 Subject: [PATCH 2/5] [ci] Return to pre 0.16 ruff behaviour --- pyerrors/correlators.py | 9 ++------- pyerrors/obs.py | 3 +-- pyproject.toml | 2 +- 3 files changed, 4 insertions(+), 10 deletions(-) diff --git a/pyerrors/correlators.py b/pyerrors/correlators.py index a8d2361e..b9a4f440 100644 --- a/pyerrors/correlators.py +++ b/pyerrors/correlators.py @@ -727,9 +727,7 @@ def m_eff(self, variant='log', guess=1.0): if variant == 'log': newcontent = [] for t in range(self.T - 1): - if ((self.content[t] is None) or (self.content[t + 1] is None)) or (self.content[t + 1][0].value == 0): - newcontent.append(None) - elif self.content[t][0].value / self.content[t + 1][0].value < 0: + if ((self.content[t] is None) or (self.content[t + 1] is None)) or (self.content[t + 1][0].value == 0) or self.content[t][0].value / self.content[t + 1][0].value < 0: newcontent.append(None) else: newcontent.append(self.content[t] / self.content[t + 1]) @@ -741,9 +739,7 @@ def m_eff(self, variant='log', guess=1.0): elif variant == 'logsym': newcontent = [] for t in range(1, self.T - 1): - if ((self.content[t - 1] is None) or (self.content[t + 1] is None)) or (self.content[t + 1][0].value == 0): - newcontent.append(None) - elif self.content[t - 1][0].value / self.content[t + 1][0].value < 0: + if ((self.content[t - 1] is None) or (self.content[t + 1] is None)) or (self.content[t + 1][0].value == 0) or self.content[t - 1][0].value / self.content[t + 1][0].value < 0: newcontent.append(None) else: newcontent.append(self.content[t - 1] / self.content[t + 1]) @@ -872,7 +868,6 @@ def set_prange(self, prange): raise ValueError("Start and end point must define a range in the interval 0,T") self.prange = prange - return def show(self, x_range=None, comp=None, y_range=None, logscale=False, plateau=None, fit_res=None, fit_key=None, ylabel=None, save=None, auto_gamma=False, hide_sigma=None, references=None, title=None): """Plots the correlator using the tag of the correlator as label if available. diff --git a/pyerrors/obs.py b/pyerrors/obs.py index 69a05bdf..8e6fc757 100644 --- a/pyerrors/obs.py +++ b/pyerrors/obs.py @@ -364,7 +364,6 @@ def _compute_drho(i, e_name=e_name, w_max=w_max, e_N=e_N): self.ddvalue = 0.0 else: self.ddvalue = np.sqrt(self.ddvalue) / self._dvalue - return gm = gamma_method @@ -1303,7 +1302,7 @@ def _compute_scalefactor_missing_rep(obs): options = { 'base_step': 0.1, 'step_ratio': 2.5} - for key in options.keys(): + for key in options: kwarg = kwargs.get(key) if kwarg is not None: options[key] = kwarg diff --git a/pyproject.toml b/pyproject.toml index a78c2bc0..26a56cb0 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -6,7 +6,7 @@ build-backend = "setuptools.build_meta" target-version = "py310" [tool.ruff.lint] -extend-select = ["E", "W", "I", "B", "PIE", "PLE", "PLW", "UP", "NPY", "RUF"] +select = ["E", "W", "I", "B", "PIE", "PLE", "PLW", "UP", "NPY", "RUF"] ignore = [ "F403", # star imports in __init__ files are intentional "E501", # line too long From d5162dd28092725a56e16b549ea74f6feaf53c01 Mon Sep 17 00:00:00 2001 From: Fabian Joswig Date: Mon, 27 Jul 2026 21:36:38 +0200 Subject: [PATCH 3/5] [ci] Add back ruff pyflake checks and allow 3.14t to fail --- .github/workflows/pytest.yml | 1 + pyproject.toml | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/pytest.yml b/.github/workflows/pytest.yml index 80c1d732..55f9281e 100644 --- a/.github/workflows/pytest.yml +++ b/.github/workflows/pytest.yml @@ -13,6 +13,7 @@ on: jobs: pytest: runs-on: ${{ matrix.os }} + continue-on-error: ${{ matrix.python-version == '3.14t' }} strategy: fail-fast: false matrix: diff --git a/pyproject.toml b/pyproject.toml index 26a56cb0..02507dad 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -6,7 +6,7 @@ build-backend = "setuptools.build_meta" target-version = "py310" [tool.ruff.lint] -select = ["E", "W", "I", "B", "PIE", "PLE", "PLW", "UP", "NPY", "RUF"] +select = ["E", "W", "I", "B", "PIE", "PLE", "PLW", "UP", "NPY", "RUF", "F"] ignore = [ "F403", # star imports in __init__ files are intentional "E501", # line too long From 708c6237981649c8746e502ed2374f23fad1a702 Mon Sep 17 00:00:00 2001 From: Fabian Joswig Date: Mon, 27 Jul 2026 21:56:13 +0200 Subject: [PATCH 4/5] [ci] undo pytest change, bump ruff runner version --- .github/workflows/pytest.yml | 3 +-- .github/workflows/ruff.yml | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/workflows/pytest.yml b/.github/workflows/pytest.yml index 55f9281e..86a05519 100644 --- a/.github/workflows/pytest.yml +++ b/.github/workflows/pytest.yml @@ -13,12 +13,11 @@ on: jobs: pytest: runs-on: ${{ matrix.os }} - continue-on-error: ${{ matrix.python-version == '3.14t' }} strategy: fail-fast: false matrix: os: [ubuntu-latest] - python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.14t"] + python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"] include: - os: macos-latest python-version: "3.12" diff --git a/.github/workflows/ruff.yml b/.github/workflows/ruff.yml index c4d5d7f1..34e97a0b 100644 --- a/.github/workflows/ruff.yml +++ b/.github/workflows/ruff.yml @@ -10,6 +10,6 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v6 - - uses: astral-sh/ruff-action@v3 + - uses: astral-sh/ruff-action@v4 with: src: "./pyerrors" From 2618a2e1b1b28ae3058433519528285c4d0b783f Mon Sep 17 00:00:00 2001 From: Fabian Joswig Date: Mon, 27 Jul 2026 21:59:08 +0200 Subject: [PATCH 5/5] [ci] Explicitly bump ruff action version --- .github/workflows/ruff.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ruff.yml b/.github/workflows/ruff.yml index 34e97a0b..e747bb2b 100644 --- a/.github/workflows/ruff.yml +++ b/.github/workflows/ruff.yml @@ -10,6 +10,6 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v6 - - uses: astral-sh/ruff-action@v4 + - uses: astral-sh/ruff-action@v4.1.0 with: src: "./pyerrors"