feat: parallel compression, finalize cmd, and PKI improvements#6
Draft
aronwk-aaron wants to merge 4 commits into
Draft
feat: parallel compression, finalize cmd, and PKI improvements#6aronwk-aaron wants to merge 4 commits into
aronwk-aaron wants to merge 4 commits into
Conversation
…ents - Add parallel compression using rayon with configurable thread count (-j) and compression level (-c), defaulting to fastest (level 1) - Add `finalize` subcommand for post-processing cache: filters trunk manifest, generates frontend.txt, copies patcher.ini, and creates version/index/hotfix manifests - Improve PKI config parsing with support for dir spec format (directory=recursive=filter) and locale-aware pack generation - Normalize virtual paths to lowercase for case-insensitive consistency - Use local path dependency for assembly-pack to pick up compression changes - Improve error context in pack subcommand with per-file error messages Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Author
|
need to thoroughly test this |
Author
|
and wait on the assembly changes to be merged so I can point the cargo toml at the new git version |
The compression field on Converter now takes Option<u32> instead of Option<Compression>, removing the need to import flate2's type. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Xiphoseer
reviewed
Jun 23, 2026
Xiphoseer
left a comment
Contributor
There was a problem hiding this comment.
Most of this looks reasonable to me. It'd be nice to implement manifest writing on https://assembly.lu-dev.net/assembly_pack/txt/manifest/struct.Manifest.html
…cale - Rename flush_pending to compress_pending for clarity since all compression happens there, not just flushing a buffer - Rewrite detect_locale to use iterator-based char extraction instead of vec indexing, avoiding potential panics on non-ASCII input Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Read the PKI file to find which packs have "front" in their name, collect the CRCs of files in those packs, and include only matching trunk entries in frontend.txt. This is more accurate than glob-matching file paths and automatically stays in sync with the pack definitions. Replaces --frontend-patterns with --frontend-pack-pattern (default: "front"). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
-j) and compression level (-c, default 1 for fastest)finalizesubcommand for post-processing the cache: filters trunk manifest, generates frontend.txt, copies patcher.ini, and creates version/index/hotfix manifestsdirectory=recursive=filter), locale-aware pack generation that routes_loc\xx_xxfiles to separate locale packsassembly-packto pick up the configurable compression change (depends on LUDevNet/Assembly PR)Dependencies
Cargo.tomlcurrently uses apath = "../Assembly/modules/pack"dependency which should be updated to a version/git dependency before mergeTest plan
lupdate cachewith-c 1and-c 9to verify compression levels worklupdate cache -j 4to verify thread limiting workslupdate finalizeto verify manifest generation🤖 Generated with Claude Code