Skip to content

build(deps): update portalocker requirement from >=3.2.0 to >=4.1.0 - #152

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/pip/portalocker-gte-4.1.0
Open

build(deps): update portalocker requirement from >=3.2.0 to >=4.1.0#152
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/pip/portalocker-gte-4.1.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Aug 6, 2026

Copy link
Copy Markdown
Contributor

Updates the requirements on portalocker to permit the latest version.

Release notes

Sourced from portalocker's releases.

v4.1.0

4.1.0:

  • Documentation release. No runtime behaviour changed; the only edits to executable code replaced two ... bodies on the abstract LockBase.acquire/LockBase.release stubs with docstrings.
  • Every module, class, function, private helper and dunder method in the package now carries a Google-style docstring. ruff's pydocstyle rules are enabled for portalocker/ with no exemptions
  • Added seven narrative guides: quickstart, lock types, platform behaviour, Redis locks, the combine CLI, troubleshooting, and a 3.x to 4.0.0 migration guide. The API reference moved under docs/api/ and a changelog page was added
  • docs/platforms.rst documents the advisory-versus-mandatory distinction, flock versus lockf, msvcrt versus pywin32, and the networked-filesystem caveats that cause most locking confusion
  • docs/cli.rst documents the combiner's ASCII-only requirement on portalocker/*.py, README.rst and LICENSE, which was previously only discoverable by reading __main__.py
  • Doctests now run for docs/*.rst and README.rst as well as the package, so every documented example is executed on each supported platform and interpreter. No # doctest: +SKIP remains anywhere
  • Fixed the README telling readers to unlock a filehandle it had already closed, which raised ValueError: I/O operation on closed file
  • Fixed the README demonstrating BoundedSemaphore without a name, which the library itself deprecates in favour of NamedBoundedSemaphore
  • Removed the obsolete Python 2 installation section from the README
Changelog

Sourced from portalocker's changelog.

4.1.0:

  • Documentation release. No runtime behaviour changed; the only edits to executable code replaced two ... bodies on the abstract LockBase.acquire/LockBase.release stubs with docstrings.
  • Every module, class, function, private helper and dunder method in the package now carries a Google-style docstring. ruff's pydocstyle rules are enabled for portalocker/ with no exemptions
  • Added seven narrative guides: quickstart, lock types, platform behaviour, Redis locks, the combine CLI, troubleshooting, and a 3.x to 4.0.0 migration guide. The API reference moved under docs/api/ and a changelog page was added
  • docs/platforms.rst documents the advisory-versus-mandatory distinction, flock versus lockf, msvcrt versus pywin32, and the networked-filesystem caveats that cause most locking confusion
  • docs/cli.rst documents the combiner's ASCII-only requirement on portalocker/*.py, README.rst and LICENSE, which was previously only discoverable by reading __main__.py
  • Doctests now run for docs/*.rst and README.rst as well as the package, so every documented example is executed on each supported platform and interpreter. No # doctest: +SKIP remains anywhere
  • Fixed the README telling readers to unlock a filehandle it had already closed, which raised ValueError: I/O operation on closed file
  • Fixed the README demonstrating BoundedSemaphore without a name, which the library itself deprecates in favour of NamedBoundedSemaphore
  • Removed the obsolete Python 2 installation section from the README

4.0.0:

  • Fixed open_atomic() replacing a destination created while its context was open on POSIX; publication now raises FileExistsError and preserves the concurrent winner (#114)
  • Python 3.10 or later is now required; Python 3.9 (EOL) support dropped
  • pywin32 is no longer installed by default on Windows; the msvcrt-based locker is the default and works dependency-free for exclusive locks. Shared locks on Windows require portalocker[win32], and an informative ImportError is raised otherwise (#104)
  • POSIX lock exceptions now populate .strerror and pass the message as a second positional argument, matching the Windows exception contract. This changes the str() output of these exceptions on POSIX from the bare OSError text to a 2-tuple repr
  • LockBase is now generic over the acquire return type (typing-only change; downstream Lock subclasses are unaffected)
  • Added PidFileLock for pidfile-based locking (#106)
  • Added PidFileLock.fail_closed() for ownership-only contexts; contention raises AlreadyLocked before entering the body and exposes the competing PID through AlreadyLocked.holder_pid when readable (#118)
  • Packaging switched to the uv_build backend; releases are published to PyPI through GitHub Actions Trusted Publishing
  • python -m portalocker combine: --output-file now opens lazily;

... (truncated)

Commits
  • 5bf95b2 bumped the version to 4.1.0 and documented the release in the changelog
  • 505156d Merge branch 'feature/elaborate-documentation' into develop
  • 16772fd Bump the actions group with 5 updates (#134)
  • 430e863 Update uv-build requirement in the actions group (#133)
  • 2436b0b gave the redis doctests the timeout their contention scenarios need
  • 62ca97f documented the whole package and added seven narrative guides
  • cf1e80d 4.0.0:
  • 4172e4b Merge pull request #132 from wolph/release/4.0.0-integration
  • 34fa2ee fix: address release review feedback
  • 42a0d85 Merge master into develop before v4.0.0
  • Additional commits viewable in compare view

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Updates the requirements on [portalocker](https://github.com/wolph/portalocker) to permit the latest version.
- [Release notes](https://github.com/wolph/portalocker/releases)
- [Changelog](https://github.com/wolph/portalocker/blob/develop/CHANGELOG.rst)
- [Commits](wolph/portalocker@v3.2.0...v4.1.0)

---
updated-dependencies:
- dependency-name: portalocker
  dependency-version: 4.1.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file python Pull requests that update Python code labels Aug 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file python Pull requests that update Python code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants