Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-devpi-process for 
openSUSE:Factory checked in at 2026-08-22 21:35:28
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-devpi-process (Old)
 and      /work/SRC/openSUSE:Factory/.python-devpi-process.new.1258 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-devpi-process"

Sat Aug 22 21:35:28 2026 rev:6 rq:1372958 version:1.2.0

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/python-devpi-process/python-devpi-process.changes    
    2026-03-18 16:52:41.738492613 +0100
+++ 
/work/SRC/openSUSE:Factory/.python-devpi-process.new.1258/python-devpi-process.changes
      2026-08-22 21:37:35.196314984 +0200
@@ -1,0 +2,13 @@
+Fri Aug 21 20:52:15 UTC 2026 - Dirk Müller <[email protected]>
+
+- update to 1.2.0:
+  * Add permissions to workflows
+  * Move SECURITY.md to .github/SECURITY.md
+  * Add missing .github config files
+  * Standardize .github files to .yaml suffix
+  * ci(workflows): add zizmor security auditing
+  * fix(type): resolve ty 0.0.25 type errors
+  * Replace prettier with mdformat and yamlfmt
+  * ci(github): test against Python 3.15
+
+-------------------------------------------------------------------

Old:
----
  devpi_process-1.1.1.tar.gz

New:
----
  devpi_process-1.2.0.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-devpi-process.spec ++++++
--- /var/tmp/diff_new_pack.ejta3V/_old  2026-08-22 21:37:36.045345334 +0200
+++ /var/tmp/diff_new_pack.ejta3V/_new  2026-08-22 21:37:36.046345369 +0200
@@ -25,9 +25,8 @@
 %bcond_with test
 %endif
 %{?sle15_python_module_pythons}
-%define skip_python39 1
 Name:           python-devpi-process%{psuffix}
-Version:        1.1.1
+Version:        1.2.0
 Release:        0
 Summary:        Programmatic API to create and use a devpi server process
 License:        MIT

++++++ devpi_process-1.1.1.tar.gz -> devpi_process-1.2.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/devpi_process-1.1.1/.github/FUNDING.yaml 
new/devpi_process-1.2.0/.github/FUNDING.yaml
--- old/devpi_process-1.1.1/.github/FUNDING.yaml        2020-02-02 
01:00:00.000000000 +0100
+++ new/devpi_process-1.2.0/.github/FUNDING.yaml        2020-02-02 
01:00:00.000000000 +0100
@@ -1 +1,3 @@
-tidelift: pypi/devpi-process
+github: gaborbernat
+tidelift: "pypi/devpi-process"
+thanks_dev: u/gh/gaborbernat
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/devpi_process-1.1.1/.github/dependabot.yaml 
new/devpi_process-1.2.0/.github/dependabot.yaml
--- old/devpi_process-1.1.1/.github/dependabot.yaml     2020-02-02 
01:00:00.000000000 +0100
+++ new/devpi_process-1.2.0/.github/dependabot.yaml     2020-02-02 
01:00:00.000000000 +0100
@@ -4,3 +4,5 @@
     directory: "/"
     schedule:
       interval: "daily"
+    cooldown:
+      default-days: 7
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/devpi_process-1.1.1/.github/workflows/check.yaml 
new/devpi_process-1.2.0/.github/workflows/check.yaml
--- old/devpi_process-1.1.1/.github/workflows/check.yaml        2020-02-02 
01:00:00.000000000 +0100
+++ new/devpi_process-1.2.0/.github/workflows/check.yaml        2020-02-02 
01:00:00.000000000 +0100
@@ -7,11 +7,11 @@
   pull_request:
   schedule:
     - cron: "0 8 * * *"
-
 concurrency:
   group: check-${{ github.ref }}
   cancel-in-progress: true
-
+permissions:
+  contents: read
 jobs:
   test:
     runs-on: ubuntu-latest
@@ -19,6 +19,8 @@
       fail-fast: false
       matrix:
         env:
+          - "3.15"
+          - "3.15t"
           - "3.14"
           - "3.13"
           - "3.12"
@@ -28,13 +30,14 @@
           - dev
           - pkg_meta
     steps:
-      - uses: actions/checkout@v6
+      - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # 
v7.0.0
         with:
           fetch-depth: 0
+          persist-credentials: false
       - name: Install the latest version of uv
-        uses: astral-sh/setup-uv@v7
+        uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # 
v8.3.2
         with:
-          enable-cache: true
+          enable-cache: false
           cache-dependency-glob: "pyproject.toml"
           github-token: ${{ secrets.GITHUB_TOKEN }}
       - name: Install tox
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/devpi_process-1.1.1/.github/workflows/release.yaml 
new/devpi_process-1.2.0/.github/workflows/release.yaml
--- old/devpi_process-1.1.1/.github/workflows/release.yaml      2020-02-02 
01:00:00.000000000 +0100
+++ new/devpi_process-1.2.0/.github/workflows/release.yaml      2020-02-02 
01:00:00.000000000 +0100
@@ -2,31 +2,31 @@
 on:
   push:
     tags: ["*"]
-
+permissions:
+  contents: read
 env:
   dists-artifact-name: python-package-distributions
-
 jobs:
   build:
     runs-on: ubuntu-latest
     steps:
-      - uses: actions/checkout@v6
+      - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # 
v7.0.0
         with:
           fetch-depth: 0
+          persist-credentials: false
       - name: Install the latest version of uv
-        uses: astral-sh/setup-uv@v7
+        uses: astral-sh/setup-uv@11f9893b081a58869d3b5fccaea48c9e9e46f990 # 
v8.3.2
         with:
-          enable-cache: true
+          enable-cache: false
           cache-dependency-glob: "pyproject.toml"
           github-token: ${{ secrets.GITHUB_TOKEN }}
       - name: Build package
         run: uv build --python 3.14 --python-preference only-managed --sdist 
--wheel . --out-dir dist
       - name: Store the distribution packages
-        uses: actions/upload-artifact@v6
+        uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a 
# v7
         with:
           name: ${{ env.dists-artifact-name }}
           path: dist/*
-
   release:
     needs:
       - build
@@ -38,11 +38,11 @@
       id-token: write
     steps:
       - name: Download all the dists
-        uses: actions/download-artifact@v7
+        uses: 
actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8
         with:
           name: ${{ env.dists-artifact-name }}
           path: dist/
       - name: Publish to PyPI
-        uses: pypa/[email protected]
+        uses: 
pypa/gh-action-pypi-publish@cef221092ed1bacb1cc03d23a2d87d1d172e277b # v1.14.0
         with:
           attestations: true
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/devpi_process-1.1.1/.markdownlint.yaml 
new/devpi_process-1.2.0/.markdownlint.yaml
--- old/devpi_process-1.1.1/.markdownlint.yaml  2020-02-02 01:00:00.000000000 
+0100
+++ new/devpi_process-1.2.0/.markdownlint.yaml  2020-02-02 01:00:00.000000000 
+0100
@@ -3,6 +3,5 @@
   headers: false
   line_length: 120
   tables: false
-
 MD046:
   style: fenced
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/devpi_process-1.1.1/.pre-commit-config.yaml 
new/devpi_process-1.2.0/.pre-commit-config.yaml
--- old/devpi_process-1.1.1/.pre-commit-config.yaml     2020-02-02 
01:00:00.000000000 +0100
+++ new/devpi_process-1.2.0/.pre-commit-config.yaml     2020-02-02 
01:00:00.000000000 +0100
@@ -5,34 +5,47 @@
       - id: end-of-file-fixer
       - id: trailing-whitespace
   - repo: https://github.com/python-jsonschema/check-jsonschema
-    rev: 0.36.2
+    rev: 0.37.4
     hooks:
       - id: check-github-workflows
         args: ["--verbose"]
   - repo: https://github.com/codespell-project/codespell
-    rev: v2.4.1
+    rev: v2.4.3
     hooks:
       - id: codespell
         additional_dependencies: ["tomli>=2.2.1"]
   - repo: https://github.com/tox-dev/tox-toml-fmt
-    rev: "v1.7.2"
+    rev: "v1.9.3"
     hooks:
       - id: tox-toml-fmt
   - repo: https://github.com/tox-dev/pyproject-fmt
-    rev: "v2.16.2"
+    rev: "v2.25.3"
     hooks:
       - id: pyproject-fmt
   - repo: https://github.com/astral-sh/ruff-pre-commit
-    rev: "v0.15.2"
+    rev: "v0.15.22"
     hooks:
       - id: ruff-format
       - id: ruff
         args: ["--fix", "--unsafe-fixes", "--exit-non-zero-on-fix"]
-  - repo: https://github.com/rbubley/mirrors-prettier
-    rev: "v3.8.1"
+  - repo: https://github.com/google/yamlfmt
+    rev: "v0.21.0"
     hooks:
-      - id: prettier
-        args: ["--print-width=120", "--prose-wrap=always"]
+      - id: yamlfmt
+  - repo: local
+    hooks:
+      - id: mdformat
+        name: mdformat
+        entry: mdformat --wrap 120
+        language: python
+        types: [markdown]
+        additional_dependencies:
+          - mdformat-gfm>=1
+          - mdformat-ruff>=0.1.3
+  - repo: https://github.com/zizmorcore/zizmor-pre-commit
+    rev: v1.27.0
+    hooks:
+      - id: zizmor
   - repo: meta
     hooks:
       - id: check-hooks-apply
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/devpi_process-1.1.1/PKG-INFO 
new/devpi_process-1.2.0/PKG-INFO
--- old/devpi_process-1.1.1/PKG-INFO    2020-02-02 01:00:00.000000000 +0100
+++ new/devpi_process-1.2.0/PKG-INFO    2020-02-02 01:00:00.000000000 +0100
@@ -1,6 +1,6 @@
 Metadata-Version: 2.4
 Name: devpi-process
-Version: 1.1.1
+Version: 1.2.0
 Summary: devpi process provides a programmatic API to create and use a devpi 
server process
 Project-URL: Homepage, https://github.com/tox-dev/devpi-process#readme
 Project-URL: Source, https://github.com/tox-dev/devpi-process
@@ -23,6 +23,7 @@
 Classifier: Programming Language :: Python :: 3.12
 Classifier: Programming Language :: Python :: 3.13
 Classifier: Programming Language :: Python :: 3.14
+Classifier: Programming Language :: Python :: 3.15
 Classifier: Topic :: Software Development :: Libraries
 Classifier: Topic :: Software Development :: Testing
 Classifier: Topic :: Utilities
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/devpi_process-1.1.1/pyproject.toml 
new/devpi_process-1.2.0/pyproject.toml
--- old/devpi_process-1.1.1/pyproject.toml      2020-02-02 01:00:00.000000000 
+0100
+++ new/devpi_process-1.2.0/pyproject.toml      2020-02-02 01:00:00.000000000 
+0100
@@ -38,6 +38,7 @@
   "Programming Language :: Python :: 3.12",
   "Programming Language :: Python :: 3.13",
   "Programming Language :: Python :: 3.14",
+  "Programming Language :: Python :: 3.15",
   "Topic :: Software Development :: Libraries",
   "Topic :: Software Development :: Testing",
   "Topic :: Utilities",
@@ -68,7 +69,7 @@
   "pytest-cov>=7",
 ]
 type = [
-  "ty>=0.0.17",
+  "ty>=0.0.19",
   { include-group = "test" },
 ]
 lint = [
@@ -81,8 +82,8 @@
 ]
 
 [tool.hatch]
-build.hooks.vcs.version-file = "src/devpi_process/_version.py"
 version.source = "vcs"
+build.hooks.vcs.version-file = "src/devpi_process/_version.py"
 
 [tool.black]
 line-length = 120
@@ -127,7 +128,10 @@
 count = true
 
 [tool.pyproject-fmt]
-max_supported_python = "3.14"
+max_supported_python = "3.15"
+
+[tool.ty]
+environment.python-version = "3.14"
 
 [tool.coverage]
 run.parallel = true
@@ -146,6 +150,3 @@
 report.omit = []
 html.show_contexts = true
 html.skip_covered = false
-
-[tool.ty]
-environment.python-version = "3.14"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/devpi_process-1.1.1/src/devpi_process/__init__.py 
new/devpi_process-1.2.0/src/devpi_process/__init__.py
--- old/devpi_process-1.1.1/src/devpi_process/__init__.py       2020-02-02 
01:00:00.000000000 +0100
+++ new/devpi_process-1.2.0/src/devpi_process/__init__.py       2020-02-02 
01:00:00.000000000 +0100
@@ -9,7 +9,7 @@
 import sysconfig
 from contextlib import closing
 from pathlib import Path
-from subprocess import PIPE, Popen, run  # noqa: S404
+from subprocess import PIPE, Popen, run  # 
ruff:ignore[suspicious-subprocess-import]
 from threading import Thread
 from typing import IO, TYPE_CHECKING, cast
 
@@ -26,7 +26,7 @@
 
 
 def _check_call(cmd: list[str]) -> None:
-    run(cmd, check=True, capture_output=True)  # noqa: S603
+    run(cmd, check=True, capture_output=True)  # 
ruff:ignore[subprocess-without-shell-equals-true]
 
 
 class Index:
@@ -48,7 +48,7 @@
 
     @property
     def url(self) -> str:
-        """:return: the URL to the index server"""
+        """The URL to the index server."""
         return f"{self._server_url}/{self.name}/+simple/"
 
     def use(self) -> None:
@@ -75,7 +75,7 @@
     def __init__(
         self,
         path: Path,
-        with_root_pypi: bool = False,  # noqa: FBT001, FBT002
+        with_root_pypi: bool = False,  # 
ruff:ignore[boolean-type-hint-positional-argument, 
boolean-default-value-positional-argument]
         start_args: Sequence[str] | None = None,
     ) -> None:
         """
@@ -90,7 +90,7 @@
         self._start_args: Sequence[str] = [] if start_args is None else 
start_args
 
         self.host, self.port = "localhost", _find_free_port()
-        self._passwd = "".join(random.choices(string.ascii_letters, k=8))  # 
noqa: S311
+        self._passwd = "".join(random.choices(string.ascii_letters, k=8))  # 
ruff:ignore[suspicious-non-cryptographic-random-usage]
 
         scripts_dir = sysconfig.get_path("scripts")
         if scripts_dir is None:
@@ -113,7 +113,7 @@
 
     @property
     def user(self) -> str:
-        """:return: username of the index server"""
+        """Username of the index server."""
         return "root"
 
     def __enter__(self) -> Self:
@@ -134,7 +134,7 @@
         # 2. start the server
         cmd = [self._server, "--serverdir", server_at, "--port", 
str(self.port)]
         cmd.extend(self._start_args)
-        self._process = Popen(cmd, stdout=PIPE, universal_newlines=True)  # 
noqa: S603
+        self._process = Popen(cmd, stdout=PIPE, universal_newlines=True)  # 
ruff:ignore[subprocess-without-shell-equals-true]
         stdout = self._drain_stdout()
         for line in stdout:  # pragma: no branch # will always loop at least 
once
             if "serving at url" in line:
@@ -153,7 +153,7 @@
         stdout = cast("IO[str]", process.stdout)
         while True:
             if process.poll() is not None:  # pragma: no cover
-                print(f"devpi server with pid {process.pid} at 
{self._server_dir} died")  # noqa: T201
+                print(f"devpi server with pid {process.pid} at 
{self._server_dir} died")  # ruff:ignore[print]
                 break
             yield stdout.readline()
 
@@ -201,7 +201,7 @@
 
     @property
     def url(self) -> str:
-        """:return: url to the index server"""
+        """URL to the index server."""
         return f"http://{self.host}:{self.port}";
 
     def __repr__(self) -> str:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/devpi_process-1.1.1/src/devpi_process/_version.py 
new/devpi_process-1.2.0/src/devpi_process/_version.py
--- old/devpi_process-1.1.1/src/devpi_process/_version.py       2020-02-02 
01:00:00.000000000 +0100
+++ new/devpi_process-1.2.0/src/devpi_process/_version.py       2020-02-02 
01:00:00.000000000 +0100
@@ -1,5 +1,6 @@
-# file generated by setuptools-scm
+# file generated by vcs-versioning
 # don't change, don't track in version control
+from __future__ import annotations
 
 __all__ = [
     "__version__",
@@ -10,25 +11,14 @@
     "commit_id",
 ]
 
-TYPE_CHECKING = False
-if TYPE_CHECKING:
-    from typing import Tuple
-    from typing import Union
-
-    VERSION_TUPLE = Tuple[Union[int, str], ...]
-    COMMIT_ID = Union[str, None]
-else:
-    VERSION_TUPLE = object
-    COMMIT_ID = object
-
 version: str
 __version__: str
-__version_tuple__: VERSION_TUPLE
-version_tuple: VERSION_TUPLE
-commit_id: COMMIT_ID
-__commit_id__: COMMIT_ID
+__version_tuple__: tuple[int | str, ...]
+version_tuple: tuple[int | str, ...]
+commit_id: str | None
+__commit_id__: str | None
 
-__version__ = version = '1.1.1'
-__version_tuple__ = version_tuple = (1, 1, 1)
+__version__ = version = '1.2.0'
+__version_tuple__ = version_tuple = (1, 2, 0)
 
 __commit_id__ = commit_id = None
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/devpi_process-1.1.1/tests/demo_pkg_inline/build.py 
new/devpi_process-1.2.0/tests/demo_pkg_inline/build.py
--- old/devpi_process-1.1.1/tests/demo_pkg_inline/build.py      2020-02-02 
01:00:00.000000000 +0100
+++ new/devpi_process-1.2.0/tests/demo_pkg_inline/build.py      2020-02-02 
01:00:00.000000000 +0100
@@ -50,8 +50,8 @@
 
 def build_wheel(
     wheel_directory: str,
-    metadata_directory: str | None = None,  # noqa: ARG001
-    config_settings: None = None,  # noqa: ARG001
+    metadata_directory: str | None = None,  # 
ruff:ignore[unused-function-argument]
+    config_settings: None = None,  # ruff:ignore[unused-function-argument]
 ) -> str:
     base_name = f"{name}-{version}-py{sys.version_info[0]}-none-any.whl"
     path = Path(wheel_directory) / base_name
@@ -62,14 +62,14 @@
 
 
 def get_requires_for_build_wheel(
-    config_settings: None = None,  # noqa: ARG001
+    config_settings: None = None,  # ruff:ignore[unused-function-argument]
 ) -> list[str]:
     return []  # pragma: no cover # only executed in non-host pythons
 
 
 def build_sdist(
     sdist_directory: str,
-    config_settings: None = None,  # noqa: ARG001
+    config_settings: None = None,  # ruff:ignore[unused-function-argument]
 ) -> str:
     result = f"{name}-{version}.tar.gz"
     with tarfile.open(str(Path(sdist_directory) / result), "w:gz") as tar:
@@ -86,6 +86,6 @@
 
 
 def get_requires_for_build_sdist(
-    config_settings: None = None,  # noqa: ARG001
+    config_settings: None = None,  # ruff:ignore[unused-function-argument]
 ) -> list[str]:
     return []  # pragma: no cover # only executed in non-host pythons
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/devpi_process-1.1.1/tests/test_devpi_process.py 
new/devpi_process-1.2.0/tests/test_devpi_process.py
--- old/devpi_process-1.1.1/tests/test_devpi_process.py 2020-02-02 
01:00:00.000000000 +0100
+++ new/devpi_process-1.2.0/tests/test_devpi_process.py 2020-02-02 
01:00:00.000000000 +0100
@@ -14,7 +14,7 @@
 
 
 def test_version() -> None:
-    import devpi_process  # noqa: PLC0415
+    import devpi_process  # ruff:ignore[import-outside-top-level]
 
     assert devpi_process.__version__ is not None
 
@@ -69,5 +69,7 @@
 
 def test_create_server_start_args(tmp_path: Path) -> None:
     with IndexServer(tmp_path, start_args=["--offline-mode"]) as server:
-        assert server._process is not None  # noqa: SLF001
-        assert server._process.args[-1] == "--offline-mode"  # type: 
ignore[index] # noqa: SLF001
+        assert server._process is not None  # 
ruff:ignore[private-member-access]
+        args = server._process.args  # ruff:ignore[private-member-access]
+        assert isinstance(args, list)
+        assert args[-1] == "--offline-mode"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/devpi_process-1.1.1/tox.toml 
new/devpi_process-1.2.0/tox.toml
--- old/devpi_process-1.1.1/tox.toml    2020-02-02 01:00:00.000000000 +0100
+++ new/devpi_process-1.2.0/tox.toml    2020-02-02 01:00:00.000000000 +0100
@@ -1,5 +1,5 @@
 requires = [ "tox>=4.34.1", "tox-uv>=1.29" ]
-env_list = [ "3.14", "3.13", "3.12", "3.11", "3.10", "fix", "pkg_meta", "type" 
]
+env_list = [ "3.15", "3.14", "3.13", "3.12", "3.11", "3.10", "3.15t", "fix", 
"pkg_meta", "type" ]
 skip_missing_interpreters = true
 
 [env_run_base]
@@ -14,7 +14,7 @@
     "python",
     "-m",
     "pytest",
-    { replace = "posargs", extend = true, default = [
+    { replace = "posargs", default = [
       "--cov",
       "{env_site_packages_dir}{/}devpi_process",
       "--cov",
@@ -31,7 +31,7 @@
       "--junitxml",
       "{work_dir}{/}junit.{env_name}.xml",
       "tests",
-    ] },
+    ], extend = true },
   ],
 ]
 

Reply via email to