Bug fixes
- Contended
FileLockandSoftFileLockacquisitions now raiseTimeoutwhen elapsed time reaches the requested timeout. A clock that landed exactly on the deadline previously left a waiter retrying with zero-length sleeps indefinitely (#922) by @gaborbernat.
Packaging
- Every wheel now carries a PEP 770 CycloneDX SBOM in its
.dist-info/sbomsdirectory, written at build time by python-sbom (#921) by @gaborbernat.