This release adds 3 notable features for engineering teams evaluating rollout.
✓ No known CVEs patched in this version
Summary
AI summaryBroad release touches @desertwitch, Other work, New features, and main.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Feature | Medium |
Adds optional manifest cache for verify, repair, and info operations. Adds optional manifest cache for verify, repair, and info operations. Source: llm_adapter@2026-05-21 Confidence: high |
— |
| Feature | Medium |
Introduces exit code 143 for interrupted operations due to SIGINT or SIGTERM. Introduces exit code 143 for interrupted operations due to SIGINT or SIGTERM. Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Performance | Medium |
Includes performance improvements around filesystem scanning and enumeration. Includes performance improvements around filesystem scanning and enumeration. Source: llm_adapter@2026-05-21 Confidence: high |
— |
| Bugfix | Medium |
Fixes cache pointer dereference issue in encode. Fixes cache pointer dereference issue in encode. Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Bugfix | Medium |
Prevents negative count guard in cache operations. Prevents negative count guard in cache operations. Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Bugfix | Medium |
Ensures repair updates cache even if not saving data. Ensures repair updates cache even if not saving data. Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Bugfix | Medium |
Checks bundle for zero size before processing. Checks bundle for zero size before processing. Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Bugfix | Medium |
Verifies existence before attempting to lock files. Verifies existence before attempting to lock files. Source: llm_adapter@2026-05-21 Confidence: low |
— |
Full changelog
- This version adds an optional manifest cache for
verify,repairandinfooperations. - This version introduces exit code
143for operations interrupted due toSIGINTorSIGTERM. - This version includes several performance improvements around filesystem scanning and enumeration.
Changelog
New features
- 3be9fd97d052b88fbf92a286804996da15f5dd21: feat(cache): add job meta struct (@desertwitch)
- 74b1df6376e4ba3a47bddd4e0a741fb09d84c002: feat(info): switch to meta (@desertwitch)
- b7a0d7e63e0227bf489112a21853b20ec5c1f07d: feat(info): use metadata cache (@desertwitch)
- 50f6bcbd53a036fb6f8f32169e52c57665e01053: feat(main): add --cache for verify, repair, info (@desertwitch)
- 425bf028158acb173bbbf1e69770cb44024fe3f3: feat(main): add --mprof (@desertwitch)
- 2468cdadfc033115bed633bf3d9a73ffaa56df80: feat(main): exit with code 143 on signal (@desertwitch)
- 55594b7a4062db584035b7a1d92d882503bda535: feat(repair): use cache (@desertwitch)
- d662dc4914256c364f6d08e49dcfefc201a62d42: feat(verify): add metadata caching (@desertwitch)
- 9ca753b1d2959ee0866ed00901461b2856a30ba3: feat: cache ignore-file syscalls (@desertwitch)
Bug fixes
- f70c49c4e1578a7e6e4fcd46e0965d747dcf9f9b: fix(cache): deref pointer for encode (@desertwitch)
- 7da34678e9906fa0f1c19bb01c19d64629f8a98d: fix(cache): guard negative count (@desertwitch)
- 02fdf58e45d3d566dad33b5a9136978424c55ec2: fix(repair): update cache despite not saving (@desertwitch)
- e2814921701e7dc199c2f770492d1a0e2258864e: fix: check bundle for zero size (@desertwitch)
- 6681e9b56007ffdc6d36e563c280abe7daa81349: fix: check existence before locking (@desertwitch)
Other work
- 515249abb31bbb39619ec07c4d4c2a7c539a8756: chore(bundle): keep symlink to specification (@desertwitch)
- 0686c189a23f630111bd0749b9a5ea1caaf175c9: chore(cache): refactor (@desertwitch)
- cea1bda46a32057bcbde6481115320b841e0c360: chore(config): reword cache comment (@desertwitch)
- 4c1bc276bb7add263fb8b09cfa1f89adddf3cbfc: chore(docs): add performance section (@desertwitch)
- 027f420dfb25c64091669f250d2ca357fbff3d4f: chore(docs): add space consumed by cache (@desertwitch)
- a98fd5b7ecadaf6bf22daaa1bcb1204f73abdea6: chore(docs): amend go version (@desertwitch)
- b12635167a8e70ea0cae82adaba5a13cfdc7b629: chore(docs): clarify interrupt exit code (@desertwitch)
- 4538adbd0d84b32edebd06f5e0bb3c6bf63b0af1: chore(docs): move bundle specification (@desertwitch)
- 0363cdd81c517fe78f830aeff831e9eb1cfb70f7: chore(docs): revise version unreadable rule (@desertwitch)
- 39bfc9c7d402a7a50583d82338e0c3ef308d856b: chore(docs): reword version unreadable rule (@desertwitch)
- 5499319270b637626ae3807ad2d584823fd8bc82: chore(main): clarify --cache usage (@desertwitch)
- d051d29b6db59ad3ce70fd44ac1c30053343a352: chore(main): make error returns consistent (@desertwitch)
- 40f5b814ca6afdb3f28fe9b50a2f6e5754a09bda: chore(main): move interrupt exit logic to schema (@desertwitch)
- ffbea01e796c96efdde2d3f332f0f88914eb90d5: chore(schema): update cache interfaces (@desertwitch)
- f98713caf4366b0df9c130d64dea5585f9f01408: chore(verify): filter not created in enumerate (@desertwitch)
- 207aa2e22ce30df6ae7cf107556e420afea8e70d: chore(verify): take job meta for logger (@desertwitch)
- c88dc8987a0350b6fa82c475795ceac12d9efe7f: chore: adapt tests for cache (@desertwitch)
- 0b7f2d1aac798a7cba5a0da948972a8ab3182880: chore: add cache-related tests (@desertwitch)
- d7ec01d3229fde20a74e9d0f449afca45f9897d9: chore: add gob cache structures (@desertwitch)
- ce6c958d5774a7a406b9db95033522d2c3bbe26e: chore: add more cache-related tests (@desertwitch)
- c32674a4cba7121da2b5e3a1cf27d16e1d83e82d: chore: allow go 1.26.0 and higher (@desertwitch)
- bfacab6611a82a45e61513a56444484d731fab42: chore: cache improvements (@desertwitch)
- 142e089c6d8475638e0caaab38473407c3325085: chore: error message wording (@desertwitch)
- 5f9ddc17703728222a91e66a8735a760cbcaac8e: chore: linting and logging (@desertwitch)
- 31e0369667c9a7a3ab63ebb66ef20b2fb03ee553: chore: minor improvements (@desertwitch)
- ea1bd6728757a9aeecaf6ea90c12999deb9b5d8a: chore: minor refactors (@desertwitch)
- efae33ed4cbcf35cfc30244553ec003abdeee9ad: chore: reduce logger allocs (@desertwitch)
- 9ed81660ba230246eb5bec388ccf03b8e139e7d8: chore: reduce lstat calls (@desertwitch)
- 89f224169bcdbc66ee06034088b8d70d59693e72: chore: upgrade golang.org/x/text (@desertwitch)
Thank you for choosing par2cron to protect your valuable data. :yellow_heart:
Most users will want the linux_amd64 package (see installation instructions in QUICKGUIDE).
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About desertwitch/par2cron
All releases →Related context
Related tools
Beta — feedback welcome: [email protected]