./devel/py-flufl.lock, NFS-safe file locking with timeouts for POSIX systems

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 7.1.1nb3, Package name: py311-flufl.lock-7.1.1nb3, Maintainer: pkgsrc-users

The `flufl.lock` library provides an NFS-safe file-based locking
algorithm influenced by the GNU/Linux `open(2)` manpage, under
the description of the `O_EXCL` option.


Required to run:
[devel/py-setuptools] [lang/python37]

Required to build:
[pkgtools/cwrappers]

Master sites:

Filesize: 32.243 KB

Version history: (Expand)


CVS history: (Expand)


   2023-10-28 21:57:26 by Thomas Klausner | Files touched by this commit (516) | Package updated
Log message:
python/wheel.mk: simplify a lot, and switch to 'installer' for installation

This follows the recommended bootstrap method (flit_core, build, installer).

However, installer installs different files than pip, so update PLISTs
for all packages using wheel.mk and bump their PKGREVISIONs.
   2023-06-10 09:44:28 by Thomas Klausner | Files touched by this commit (1)
Log message:
py-flufl.lock: and add another missing dependency.

Ride bump
   2023-06-10 09:40:32 by Thomas Klausner | Files touched by this commit (1)
Log message:
py-flufl.lock: add missing dependency on py-psutil

Bump PKGREVISION.
   2023-05-11 22:43:23 by Mark Davies | Files touched by this commit (2)
Log message:
py-flufl.lock: fixup wrong WHEEL_INFODIR
   2023-05-08 22:53:31 by Mark Davies | Files touched by this commit (4) | Package updated
Log message:
py-flufl.lock: update to version 7.1.1

7.1.1 (2022-09-03)
Improvements to the GitLab CI integration.

7.1 (2022-08-27)
Add support for Python 3.11.
Update to pdm 1.3.
Update all dependencies eagerly.

7.0 (2022-01-11)
Fix spurious log messages when not breaking the lock.
Use modern package management by adopting pdm and pyproject.toml,
and dropping setup.py and setup.cfg.
Build the docs with Python 3.8.
Update to version 3.0 of Sybil.
Adopt the Furo documentation theme.
Add a favicon and logos to the published documentation.
Use importlib.metadata.version() as a better way to get the package
version number for the documentation.
Drop Python 3.6 support.
Update Windows GitLab runner to include Python 3.10.
Update copyright years.

6.0 (2021-08-18)
Added a default_timeout argument to the Lock constructor, which can be
used in the context manager syntax as well.
When a Lock uses a lock file that already exists and does not appear to
be a lock file (i.e. because its contents are ill-formatted), do a better
job of not clobbering that file.
Improve some QA by re-adding diff-cover, Gitlab SAST during CI, and
testing on Python 3.10 beta (except for Windows)
The master branch is renamed to main.

5.1 (2021-05-28)
Added a py.typed file to satisfy type checkers.

5.0.5 (2021-02-12)
I blue it!

5.0.4 (2021-01-01)
Update copyright years.
Include test/__init__.py and docs/__init__.py.

5.0.3 (2020-10-22)
Rename top-level tests/ directory to test/

5.0.2 (2020-10-21)
Minor housekeeping and cleanups.
Add some missing licensing text.
Don’t install the tests and docs directories at the top of site-packages
Fix the Windows CI tests.
Add an index to the documentation.

5.0.1 (2020-08-21)
Reorganized docs and tests out of the code directory.
Fix Read The Docs presentation.

5.0 (2020-08-20)
Breaking change - The following methods have been removed: Lock.transfer_to(),
Lock.take_possession(), Lock.disown(). These were crufty, undocumented APIs
used in older versions of Mailman and were not sustainable.
Added official support for Python 3.9.
Improvements to the documentation, including a better API reference and a
“theory of operation” page that gives more implementation technical details.
Boosted test coverage to 100%.

4.0 (2020-06-30)
API:
Breaking change - In Lock.refresh() and Lock.unlock() the unconditionally flag
is now a keyword-only argument.
Breaking change - Removed Lock.__del__() and Lock.finalize(). It’s impossible
to make __del__() work properly, and this is obsoleted by context manager protocol
support anyway. Since finalize() only existed to help with __del__() and its
functionality is identical to .unlock(unconditionally=True), this method is
also removed.
Added a Lock.expiration property.
Added a Lock.lockfile property.
Added a Lock.state property and the LockState enum.
In all APIs, the lifetime parameter can now also be an integer number of seconds,
in addition to the previously allowed datetime.timedelta. The lifetime property
always gives you a datetime.timedelta.
The API is now properly type annotated.
Some library-defined exceptions support exception chaining.
Behavior:
Getting the repr() of a lock no longer refreshes it
Other:
Add support for Python 3.7 and 3.8; drop support for Python 3.4 and 3.5.
We now run the test suite on both Linux and Windows.
The LICENSE file is now included in the sdist tarball.
API documentation is now built automatically.
Numerous quality improvements and modernizations.
   2022-01-04 21:55:40 by Thomas Klausner | Files touched by this commit (1595)
Log message:
*: bump PKGREVISION for egg.mk users

They now have a tool dependency on py-setuptools instead of a DEPENDS
   2021-10-26 12:20:11 by Nia Alarie | Files touched by this commit (3016)
Log message:
archivers: Replace RMD160 checksums with BLAKE2s checksums

All checksums have been double-checked against existing RMD160 and
SHA512 hashes

Could not be committed due to merge conflict:
devel/py-traitlets/distinfo

The following distfiles were unfetchable (note: some may be only fetched
conditionally):

./devel/pvs/distinfo pvs-3.2-solaris.tgz
./devel/eclipse/distinfo eclipse-sourceBuild-srcIncluded-3.0.1.zip
   2021-10-07 15:44:44 by Nia Alarie | Files touched by this commit (3017)
Log message:
devel: Remove SHA1 hashes for distfiles