Skip to content

test(cli): carry ZIP module-archive contract tests forward from #1256 - #1292

Merged
joshrotenberg merged 3 commits into
mainfrom
test/module-archive-contracts
Oct 23, 2026
Merged

joshrotenberg merged 3 commits into
mainfrom
test/module-archive-contracts

Conversation

@joshrotenberg

Copy link
Copy Markdown
Collaborator

Summary

#1265 took only the Rustls lockfile patch from #1245's branch, so the ZIP 9 work from #1256 that doesn't depend on the YAML backend was left behind there. This carries it forward before #1245 is closed:

  • crates/redisctl/tests/module_archive_contracts.rs: nine offline contract tests for enterprise module package and inspect. They check inspect's JSON output (so_file, valid, has_subdirectories), UTF-8 and CP437 name decoding, the corrupt-CRC and invalid-archive failures, metadata validation before packaging, and that inspect never extracts. The file is copied unchanged from 3739629.
  • docs/docs/enterprise/commands/index.md: the "Module archives" section from build(deps): replace the unmaintained YAML backend #1256, which documents the ZIP 6 to 9 filename-decoding change. Also copied unchanged.
  • docs/docs/developer/architecture.md: the last serde_yaml reference in the tree, now serde_norway.

There are no source changes. These tests are the only coverage of the zstd 0.14 and lzma-rust2 0.22 codec bumps that came with zip 9, and of the accepted name-decoding behavior.

Testing

On the branch, rebased onto main at e74cae0:

  • cargo fmt --all -- --check: clean.
  • cargo clippy -p redisctl --all-features --tests -- -D warnings: clean. The full --all-targets --all-features run was also clean before the rebase.
  • cargo test -p redisctl --all-features --test module_archive_contracts: 9 passed.

#1265 took only the Rustls lockfile patch from #1245's branch, which left
#1256's ZIP 9 contract suite and module-archive docs stranded there. The
nine tests check inspect's JSON contract, UTF-8 and CP437 name decoding,
CRC and invalid-archive failures, and that inspect never extracts. They
pass unchanged against zip 9.0.5.

Also fixes the last serde_yaml reference in the developer docs.
@joshrotenberg
joshrotenberg merged commit 29d47b4 into main Oct 23, 2026
22 checks passed
@joshrotenberg
joshrotenberg deleted the test/module-archive-contracts branch October 23, 2026 04:18
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.

1 participant