Repository navigation
Comparing changes
Open a pull request
base repository: tox-dev/filelock
base: 4.2.9
head repository: tox-dev/filelock
compare: 4.2.10
- 12 commits
- 94 files changed
- 2 contributors
Commits on Nov 4, 2026
-
π· ci: run release notes before PyPI publish (#909)
The publish job only waited on the build jobs, so a release could reach PyPI while the `notes` job failed, leaving no GitHub Release. simplint 0.4.0 hit exactly that. Publish now also waits for the notes job, so a notes failure stops the upload. ## Changes - `publish` needs `[tag-build, github-notes]` - gw `tox-dev/github-workflows` pins in this workflow moved to 6.5.5 (`13381289334b15375958be7f7438f3c3d860e575`).
Configuration menu - View commit details
-
Copy full SHA for 69fc1ac - Browse repository at this point
Copy the full SHA 69fc1acView commit details -
π· ci: reduce macOS runner use (#910)
macOS runners are capped and shared across tox-dev, and 836 macOS jobs got no runner in 7 days. This PR keeps macOS coverage in proportion to the macOS-specific code in each repo and moves the rest to a weekly run. - Superseded pull request runs now cancel. Pushes to `main` run to completion. - macOS keeps 3.15 and 3.15t on every event. The other six macOS rows run on the existing Monday cron (`0 6 * * 1`). - The daily cron moves from `0 8 * * *` to `17 0 * * *`. The `exclude` expression drops the extra macOS rows unless the event is the Monday cron. The macOS `darwin` branches in the lock code (`renamex_np`, `sysctl`) stay covered on every event.
Configuration menu - View commit details
-
Copy full SHA for 04260bd - Browse repository at this point
Copy the full SHA 04260bdView commit details
Commits on Nov 6, 2026
-
π fix(type): annotate lock for ty 0.0.99 (#913)
[ty 0.0.99](https://github.com/astral-sh/ty/releases/tag/0.0.99) broke the `type` env on main. Inside a function, a variable annotated with a bare `Final` and assigned the result of a generic call now infers as `Unknown`. The lock built from `lock_type(...)` in the non-bool `blocking` test hit this, so the `invalid-argument-type` ignore on the next line no longer matched anything and `--error-on-warning` failed on the unused ignore. The lock is now annotated `Final[BaseFileLock]`. ty sees the real type again and the ignore suppresses the error it was written for.
Configuration menu - View commit details
-
Copy full SHA for 179df40 - Browse repository at this point
Copy the full SHA 179df40View commit details -
π· ci: dry-run the release in the PR gate (#911)
A pull request could merge green and still break the next release. Release preparation assembles under rules no pull request check applied: [prek](https://github.com/j178/prek) hooks install with packages from the last seven days held back, fragments link to their pull requests, and the changelog builds and formats. [simplint#55](gaborbernat/simplint#55) merged with every check green, and the [next release failed](https://github.com/gaborbernat/simplint/actions/runs/42183854370) while installing its hooks. π¦ The required gate now runs this repository's own prepare workflow as a dry run, through the `dry-run` input added in [github-workflows 6.6.0](tox-dev/github-workflows#53). The dry run uses the same inputs and the same assembly as a real release and skips the push job. A pull request that would break the release now fails its gate instead. The dry run needs no App key, and it has its own concurrency group, so it never queues behind a real release. Releases dispatched by hand behave as before.
Configuration menu - View commit details
-
Copy full SHA for 1581e39 - Browse repository at this point
Copy the full SHA 1581e39View commit details -
Configuration menu - View commit details
-
Copy full SHA for b57bd7b - Browse repository at this point
Copy the full SHA b57bd7bView commit details -
π· ci: run every hook under the cooldown (#914)
A pull request could merge green and still break the scheduled maintenance pull requests. pre-commit.ci builds hook environments from the newest releases, while the maintenance jobs build them with packages from the last seven days held back, so a hook bumped to a younger release, or one that rewrites files when built fresh, only fails there. π§Ή The required gate now runs every hook over the whole tree under that cutoff, through the shared `cooled-hooks` workflow added in [github-workflows 6.7.0](tox-dev/github-workflows#57), so the pull request fails instead. Release preparation moves to the same 6.7.0 pin.
Configuration menu - View commit details
-
Copy full SHA for 7f0351d - Browse repository at this point
Copy the full SHA 7f0351dView commit details
Commits on Nov 7, 2026
-
π§Ή ci: pin shared workflows to 6.7.1 (#915)
The cooled hook run applied the seven-day cutoff to the hooks themselves, so a hook that calls `uv run` re-resolved its project under the cutoff and failed. [github-workflows 6.7.1](tox-dev/github-workflows#58) builds hook environments under the cutoff and runs the hooks with the normal environment; this moves the shared workflow pins to it. π§Ή
Configuration menu - View commit details
-
Copy full SHA for 4e116d1 - Browse repository at this point
Copy the full SHA 4e116d1View commit details -
π§Ή ci: pin shared workflows to 6.7.2 (#916)
A pull request that bumps a pre-commit hook to a release younger than seven days failed the `Hooks under the cooldown` check, although the bump is deliberate. [github-workflows 6.7.2](tox-dev/github-workflows#59) admits each exact hook pin up to its upload time while the release is inside the cooldown window; dependencies, ranges and newer releases stay cooled. This moves the shared workflow pins to it. π§Ή The shared changelog check now requires a `# expires YYYY-MM-DD` comment directly above each Nab cutoff exception, so the existing exception gets one.
Configuration menu - View commit details
-
Copy full SHA for bfd7360 - Browse repository at this point
Copy the full SHA bfd7360View commit details
Commits on Nov 8, 2026
-
Configuration menu - View commit details
-
Copy full SHA for 8b6a40d - Browse repository at this point
Copy the full SHA 8b6a40dView commit details
Commits on Nov 9, 2026
-
π fix(api): expire at the exact timeout (#922)
[U-Boot's buildman process-limit test](https://github.com/u-boot/u-boot/blob/main/tools/buildman/test.py#L834) can leave a contended filelock retrying at its timeout boundary when the test's virtual clock stops advancing ([#920](#920)). A caller waiting for that lock now receives `Timeout` at the deadline. The shared acquisition path decides when a wait has expired for both Unix and soft locks. It still attempts to acquire a lock before checking the deadline, so an available lock can be acquired with a zero timeout.
Configuration menu - View commit details
-
Copy full SHA for 2e1eaaa - Browse repository at this point
Copy the full SHA 2e1eaaaView commit details -
π¦ build(sbom): ship a PEP 770 SBOM in wheels (#921)
Each wheel now carries a [PEP 770](https://peps.python.org/pep-0770/) SBOM, a CycloneDX document in `.dist-info/sboms/` that lists what the wheel holds and the tools that built it, so scanners and auditors can read its contents without unpacking or guessing. π¦ [python-sbom](https://github.com/tox-dev/python-sbom), a hatchling build hook, writes the SBOM after hatchling writes the wheel. `[tool.python-sbom]` names tox-dev as the supplier. The release build installs the build requirements from the lock with hashes, so the hook and its dependencies join the `build` group. python-sbom 0.1.2 is younger than the seven-day cooldown, so `[tool.nab]` carries an exception that expires on 2026-11-15.
Configuration menu - View commit details
-
Copy full SHA for e824091 - Browse repository at this point
Copy the full SHA e824091View commit details -
Configuration menu - View commit details
-
Copy full SHA for f9e5621 - Browse repository at this point
Copy the full SHA f9e5621View commit details
This comparison is taking too long to generate.
Unfortunately it looks like we canβt render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff 4.2.9...4.2.10