Skip to content

drop OBJ_VERSION_NO_HEADER_AAD (pack object format v1) support, fixes #9973 - #10362

Open
ThomasWaldmann wants to merge 1 commit into
borgbackup:masterfrom
ThomasWaldmann:drop-objv1-9973
Open

drop OBJ_VERSION_NO_HEADER_AAD (pack object format v1) support, fixes #9973#10362
ThomasWaldmann wants to merge 1 commit into
borgbackup:masterfrom
ThomasWaldmann:drop-objv1-9973

Conversation

@ThomasWaldmann

Copy link
Copy Markdown
Member

Fixes #9973.

RepoObj.parse() / parse_meta() accepted two pack object format versions: OBJ_VERSION_NO_HEADER_AAD (0x01, only ever written by 2.0.0b22) and OBJ_VERSION_HEADER_AAD (0x02, what format() writes since b23). We don't owe compatibility across betas, so the 0x01 fallback is gone before rc1:

  • repoobj.py: OBJ_VERSION_NO_HEADER_AAD removed, SUPPORTED_OBJ_VERSIONS is now (OBJ_VERSION_HEADER_AAD,), the version-dependent AAD selection in parse() / parse_meta() is gone (header AAD + slot tag always). Comments and the object_validator docstring updated accordingly.
  • repoobj_test.py: test_version1_object_without_header_aad_still_readable removed.
  • docs/internals/packs.rst: the 0x01 paragraph and the "0x01 still readable" table entry removed.

A 0x01 object now fails with unsupported object version: 1 (the existing version check), same as any other unknown version.

Full test suite passes locally (one unrelated TestTimeoutTimer timing flake under -n auto, passes alone).

🤖 Generated with Claude Code

…orgbackup#9973

Format version 0x01 was only ever written by borg 2.0.0b22 (before that
there were no packs, b23 and later write 0x02). We don't owe compatibility
across betas, so parse()/parse_meta() now accept only OBJ_VERSION_HEADER_AAD.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@codecov

codecov Bot commented Sep 12, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 88.04%. Comparing base (11d7d10) to head (0fc165b).
⚠️ Report is 7 commits behind head on master.
✅ All tests successful. No failed tests found.

Additional details and impacted files
@@            Coverage Diff             @@
##           master   #10362      +/-   ##
==========================================
+ Coverage   87.93%   88.04%   +0.11%     
==========================================
  Files         103      103              
  Lines       18893    18912      +19     
  Branches     2917     2919       +2     
==========================================
+ Hits        16613    16651      +38     
+ Misses       1583     1569      -14     
+ Partials      697      692       -5     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Drop OBJ_VERSION_NO_HEADER_AAD (pack object format v1) support before rc1

1 participant