Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-fasteners for
openSUSE:Factory checked in at 2025-09-30 17:34:54
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-fasteners (Old)
and /work/SRC/openSUSE:Factory/.python-fasteners.new.11973 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-fasteners"
Tue Sep 30 17:34:54 2025 rev:15 rq:1307758 version:0.20
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-fasteners/python-fasteners.changes
2025-08-08 15:10:46.497405193 +0200
+++
/work/SRC/openSUSE:Factory/.python-fasteners.new.11973/python-fasteners.changes
2025-09-30 17:35:24.371652943 +0200
@@ -1,0 +2,11 @@
+Mon Sep 29 11:18:04 UTC 2025 - Dirk Müller <[email protected]>
+
+- update to 0.20:
+ * InterProcessLock now catches OSError and handles
+ BlockingIOError correctly.
+ * Remove support for python 3.8, python 3.9 and pypy 3.9. It
+ should still work,
+ * but is no longer tested.
+ * Add support for python 3.12, 3.13 and pypy 3.11.
+
+-------------------------------------------------------------------
Old:
----
python-fasteners-0.19-gh.tar.gz
New:
----
python-fasteners-0.20-gh.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-fasteners.spec ++++++
--- /var/tmp/diff_new_pack.Rrddm9/_old 2025-09-30 17:35:25.715709647 +0200
+++ /var/tmp/diff_new_pack.Rrddm9/_new 2025-09-30 17:35:25.719709816 +0200
@@ -18,7 +18,7 @@
%{?sle15_python_module_pythons}
Name: python-fasteners
-Version: 0.19
+Version: 0.20
Release: 0
Summary: A python package that provides useful locks
License: Apache-2.0
++++++ python-fasteners-0.19-gh.tar.gz -> python-fasteners-0.20-gh.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/fasteners-0.19/.github/workflows/build_docs.yml
new/fasteners-0.20/.github/workflows/build_docs.yml
--- old/fasteners-0.19/.github/workflows/build_docs.yml 2023-09-19
19:12:20.000000000 +0200
+++ new/fasteners-0.20/.github/workflows/build_docs.yml 1970-01-01
01:00:00.000000000 +0100
@@ -1,51 +0,0 @@
-name: GitHub Pages
-
-on:
- push:
- branches: [ main ]
- pull_request:
-
-jobs:
- deploy:
- runs-on: ubuntu-20.04
- concurrency:
- group: ${{ github.workflow }}-${{ github.ref }}
- steps:
- - uses: actions/checkout@v2
-
- - name: Setup Python
- uses: actions/setup-python@v2
- with:
- python-version: '3.8'
-
- - name: Upgrade pip
- run: |
- # install pip=>20.1 to use "pip cache dir"
- python3 -m pip install --upgrade pip
-
- - name: Get pip cache dir
- id: pip-cache
- run: echo "::set-output name=dir::$(pip cache dir)"
-
- - name: Cache dependencies
- uses: actions/cache@v2
- with:
- path: ${{ steps.pip-cache.outputs.dir }}
- key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }}
- restore-keys: |
- ${{ runner.os }}-pip-
-
- - name: Install dependencies
- run: python3 -m pip install -r ./requirements-docs.txt
-
- - name: Install itself
- run: python3 -m pip install -e .
-
- - run: mkdocs build
-
- - name: Deploy
- uses: peaceiris/actions-gh-pages@v3
- if: ${{ github.ref == 'refs/heads/main' }}
- with:
- github_token: ${{ secrets.GITHUB_TOKEN }}
- publish_dir: ./site
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/fasteners-0.19/.github/workflows/run_tests.yml
new/fasteners-0.20/.github/workflows/run_tests.yml
--- old/fasteners-0.19/.github/workflows/run_tests.yml 2023-09-19
19:12:20.000000000 +0200
+++ new/fasteners-0.20/.github/workflows/run_tests.yml 2025-08-11
12:20:49.000000000 +0200
@@ -16,19 +16,15 @@
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
- python-version: [3.8, 3.9, '3.10', '3.11', 'pypy3.9', 'pypy3.10']
+ python-version: ['3.10', '3.11', '3.12', '3.13', 'pypy-3.10',
'pypy-3.11']
steps:
- - uses: actions/checkout@v2
- - name: Set up Python ${{ matrix.python-version }}
- uses: actions/setup-python@v4
+ - uses: actions/checkout@v4
+
+ - name: Install uv
+ uses: astral-sh/setup-uv@v6
with:
python-version: ${{ matrix.python-version }}
- - name: Install dependencies
- run: |
- python -m pip install --upgrade pip
- python -m pip install .
- python -m pip install -r requirements-test.txt
+
- name: Test with pytest
- run: |
- pytest tests/
+ run: uv run --group test pytest tests/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/fasteners-0.19/.readthedocs.yaml
new/fasteners-0.20/.readthedocs.yaml
--- old/fasteners-0.19/.readthedocs.yaml 2023-09-19 19:12:20.000000000
+0200
+++ new/fasteners-0.20/.readthedocs.yaml 2025-08-11 12:20:49.000000000
+0200
@@ -3,14 +3,14 @@
version: 2
build:
- os: ubuntu-22.04
+ os: ubuntu-24.04
tools:
- python: "3.11"
+ python: "3.13"
+ jobs:
+ install:
+ - pip install .
+ - pip install --groups docs
mkdocs:
configuration: mkdocs.yml
fail_on_warning: false
-
-python:
- install:
- - requirements: requirements-docs.txt
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/fasteners-0.19/CHANGELOG.md
new/fasteners-0.20/CHANGELOG.md
--- old/fasteners-0.19/CHANGELOG.md 2023-09-19 19:12:20.000000000 +0200
+++ new/fasteners-0.20/CHANGELOG.md 2025-08-11 12:20:49.000000000 +0200
@@ -4,6 +4,12 @@
## [Unreleased]
+## [0.20]
+ - InterProcessLock now catches OSError and handles BlockingIOError correctly.
+ - Remove support for python 3.8, python 3.9 and pypy 3.9. It should still
work,
+ but is no longer tested.
+ - Add support for python 3.12, 3.13 and pypy 3.11.
+
## [0.19]
- Add `.acquire_read_lock`, `.release_read_lock`, `.acquire_write_lock`, and
`.release_write_lock` methods to the inter thread `ReaderWriterLock` as
was
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/fasteners-0.19/README.md new/fasteners-0.20/README.md
--- old/fasteners-0.19/README.md 2023-09-19 19:12:20.000000000 +0200
+++ new/fasteners-0.20/README.md 2025-08-11 12:20:49.000000000 +0200
@@ -2,7 +2,6 @@
=========
[](https://readthedocs.org/projects/fasteners/?badge=latest)
-[](https://pypi.python.org/pypi/fasteners/)
[](https://pypi.python.org/pypi/fasteners/)
Cross-platform locks for threads and processes.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/fasteners-0.19/fasteners/process_lock.py
new/fasteners-0.20/fasteners/process_lock.py
--- old/fasteners-0.19/fasteners/process_lock.py 2023-09-19
19:12:20.000000000 +0200
+++ new/fasteners-0.20/fasteners/process_lock.py 2025-08-11
12:20:49.000000000 +0200
@@ -83,7 +83,7 @@
def _try_acquire(self, blocking, watch):
try:
self.trylock()
- except IOError as e:
+ except (IOError, OSError) as e:
if e.errno in (errno.EACCES, errno.EAGAIN):
if not blocking or watch.expired():
return False
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/fasteners-0.19/fasteners/version.py
new/fasteners-0.20/fasteners/version.py
--- old/fasteners-0.19/fasteners/version.py 2023-09-19 19:12:20.000000000
+0200
+++ new/fasteners-0.20/fasteners/version.py 2025-08-11 12:20:49.000000000
+0200
@@ -17,7 +17,7 @@
# License for the specific language governing permissions and limitations
# under the License.
-_VERSION = "0.19"
+_VERSION = "0.20"
def version_string():
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/fasteners-0.19/publish.md
new/fasteners-0.20/publish.md
--- old/fasteners-0.19/publish.md 2023-09-19 19:12:20.000000000 +0200
+++ new/fasteners-0.20/publish.md 2025-08-11 12:20:49.000000000 +0200
@@ -1,26 +1,23 @@
1. Update the change log:
- CHANGELOG
+ CHANGELOG.md
2. Update the version number:
- setup.cfg
+ pyproject.toml
fasteners/version.py
-4. Make sure that the working directory is clean.
-
+3. Make sure that the working directory is clean.
4. Build:
- source venv/bin/activate
- python -m build
+ uv run --group build python -m build
5. Inspect the packages manually.
-
6. Upload:
- twine upload dist/*
+ uv run --group build twine upload dist/*
7. Tag the git repo.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/fasteners-0.19/pyproject.toml
new/fasteners-0.20/pyproject.toml
--- old/fasteners-0.19/pyproject.toml 2023-09-19 19:12:20.000000000 +0200
+++ new/fasteners-0.20/pyproject.toml 2025-08-11 12:20:49.000000000 +0200
@@ -1,3 +1,57 @@
+[project]
+name = "fasteners"
+version = "0.20"
+description = "A python package that provides useful locks"
+readme = { file = "README.md", content-type = "text/markdown; charset=UTF-8" }
+requires-python = ">=3.6"
+keywords = ["lock", "thread", "process", "fasteners"]
+license = "Apache-2.0"
+authors = [{ name = "Joshua Harlow" }]
+maintainers = [{ name = "Paulius Šarka" }]
+classifiers = [
+ "Development Status :: 5 - Production/Stable",
+ "Intended Audience :: Developers",
+ "Operating System :: POSIX :: Linux",
+ "Operating System :: Microsoft :: Windows",
+ "Operating System :: MacOS",
+ "Programming Language :: Python :: 3",
+ "Programming Language :: Python :: 3.10",
+ "Programming Language :: Python :: 3.11",
+ "Programming Language :: Python :: 3.12",
+ "Programming Language :: Python :: 3.13",
+ "Programming Language :: Python :: Implementation :: PyPy",
+ "Topic :: Utilities",
+]
+
+[project.urls]
+Homepage = "https://github.com/harlowja/fasteners"
+
+[dependency-groups]
+test = [
+ "diskcache",
+ "eventlet",
+ "more_itertools",
+ "pytest",
+]
+docs = [
+ "mkdocs",
+ "mkdocstrings[python] >= 0.18",
+ "mkdocs-material",
+]
+build = [
+ "build",
+ "twine",
+]
+
+[tool.uv.dependency-groups.docs]
+requires-python = ">=3.12"
+
+[tool.uv.dependency-groups.build]
+requires-python = ">=3.12"
+
[build-system]
requires = ["setuptools", "wheel"]
build-backend = "setuptools.build_meta"
+
+[tool.setuptools.packages.find]
+exclude = ["tests", "tests_eventlet"]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/fasteners-0.19/requirements-docs.txt
new/fasteners-0.20/requirements-docs.txt
--- old/fasteners-0.19/requirements-docs.txt 2023-09-19 19:12:20.000000000
+0200
+++ new/fasteners-0.20/requirements-docs.txt 1970-01-01 01:00:00.000000000
+0100
@@ -1,3 +0,0 @@
-mkdocs
-mkdocstrings[python] >= 0.18
-mkdocs-material
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/fasteners-0.19/requirements-pkg.txt
new/fasteners-0.20/requirements-pkg.txt
--- old/fasteners-0.19/requirements-pkg.txt 2023-09-19 19:12:20.000000000
+0200
+++ new/fasteners-0.20/requirements-pkg.txt 1970-01-01 01:00:00.000000000
+0100
@@ -1,2 +0,0 @@
-build
-twine
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/fasteners-0.19/requirements-test.txt
new/fasteners-0.20/requirements-test.txt
--- old/fasteners-0.19/requirements-test.txt 2023-09-19 19:12:20.000000000
+0200
+++ new/fasteners-0.20/requirements-test.txt 1970-01-01 01:00:00.000000000
+0100
@@ -1,4 +0,0 @@
-diskcache
-eventlet
-more_itertools
-pytest
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/fasteners-0.19/setup.cfg new/fasteners-0.20/setup.cfg
--- old/fasteners-0.19/setup.cfg 2023-09-19 19:12:20.000000000 +0200
+++ new/fasteners-0.20/setup.cfg 1970-01-01 01:00:00.000000000 +0100
@@ -1,40 +0,0 @@
-[metadata]
-name = fasteners
-version = 0.19
-url = https://github.com/harlowja/fasteners
-
-author = Joshua Harlow
-maintainer = Paulius Šarka
-
-description = A python package that provides useful locks
-long_description = file:README.md
-long_description_content_type = text/markdown; charset-UTF-8
-keywords = lock thread process fasteners
-
-classifiers =
- Development Status :: 4 - Beta
- Intended Audience :: Developers
- License :: OSI Approved :: Apache Software License
- Operating System :: POSIX :: Linux
- Operating System :: Microsoft :: Windows
- Operating System :: MacOS
- Programming Language :: Python :: 3
- Programming Language :: Python :: 3.6
- Programming Language :: Python :: 3.7
- Programming Language :: Python :: 3.8
- Programming Language :: Python :: 3.9
- Programming Language :: Python :: 3.10
- Programming Language :: Python :: Implementation :: PyPy
- Topic :: Utilities
-
-license = Apache-2.0
-license_files = LICENSE
-
-[options]
-packages = find:
-python_requires = >=3.6
-
-[options.packages.find]
-exclude =
- tests
- tests_eventlet
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/fasteners-0.19/tests/test_eventlet.py
new/fasteners-0.20/tests/test_eventlet.py
--- old/fasteners-0.19/tests/test_eventlet.py 2023-09-19 19:12:20.000000000
+0200
+++ new/fasteners-0.20/tests/test_eventlet.py 2025-08-11 12:20:49.000000000
+0200
@@ -5,6 +5,7 @@
import concurrent.futures
from multiprocessing import get_context
+import pytest
def _test_eventlet_spawn_n_bug():
"""Both threads run at the same time thru the lock"""
@@ -50,6 +51,7 @@
assert FINISHED.wait(1) == 'finished'
[email protected](reason="This bug is no longer triggered in recent versions
of eventlet")
def test_eventlet_spawn_n_bug():
with
concurrent.futures.ProcessPoolExecutor(mp_context=get_context('spawn')) as
executor:
f = executor.submit(_test_eventlet_spawn_n_bug)