Releases: thegraydot/mpqcli
Releases · thegraydot/mpqcli
v0.10.0
Added
- Compact subcommand to compress MPQ archive after creation/editing
- Support passing multiple files to the
addandremovesubcommands - Support reading file paths from stdin in the
addandremovesubcommands - Support adding entire directories with the
addsubcommand - Add an update flag to the
addsubcommand to skip files whose archived size matches the on-disk size
Fixed
extractcommand now reports an error when the output directory cannot be created- Path traversal guard in
extractuses fully resolved paths, closing a potential bypass - Crash when reading strong signatures from malformed or truncated archives
- Docker glibc image updated to ubuntu:24.04
- Adding files is now ordered and operating system agnostic
addsubcommand now returns non-zero exit codes on failure- Error messages now include StormLib error codes
- Duplicate error messages removed
- Makefile build targets corrected in
CONTRIBUTING.md
Changed
--filename-in-archiveand--directory-in-archivereplaced by a unified--pathflag- The path flag on add now acts as an archive path prefix when a directory is given
Thanks
- Thanks to @sjoblomj for the contributions in this release
Dev (Pre-release)
Commit: 1bd17e0
v0.9.9
Fixed
- Potential path traversal attack in extract subcommand
- Empty MPQ archive name when directory supplied with trailing slash
- Bug where MPQ internal files were added with create command
- Signature being added automatically when not requested
- Potential DWORD overflow in
AddFiles
v0.9.8
Added
- The
createsubcommand now supports a single file - The
addandcreatesubcommands have additional arguments for specifiying the file location in the MPQ archive (name-in-archiveanddir-in-archive) - The
addsubcommand can now overwrite existing files if requested (overwrite)
Fixed
- Several memory leaks
Thanks
- Thanks to @sjoblomj for adding more features and fixes in this release
v0.9.7
Added
- Game profile support for
createandaddsubcommands via-g/--gameoption - Game profiles for Diablo, StarCraft, Warcraft, WoW, and more
- Game setting override options for
createsubcommand - Compression override options for
addsubcommand - Support for unfamiliar/unknown locales via raw hex LCID
- Additional built-in locales:
ptBR,esMX,ptPT
Fixed
- Subcommands now properly verify locale before operating on files
- Error messages now include locale context in
remove,extract, andread - MPQ archives are now properly closed across all subcommands
- Non-zero exit codes returned on failure in
extractandremove listsubcommand now shows long output when properties are requested
Changed
- Improved locale printing and display throughout
Thanks
- A big thank you to @sjoblomj for adding so many features in this release
v0.9.6
Added
- Proper support for locales in MPQ files
Fixed
- Fixed bug where MPQ signature only printed on success
v0.9.5
Changed
- Long (detailed) list format to output ISO 8601 timestamps
Fixed
- Message prefix format consistency
v0.9.4
Added
- Filename added to program output
- Added simple wrapper around verify command
Fixed
- Show help menu when no arguments provided
v0.9.3
Added
- Support for
addsubcommand to have path inside MPQ archive
Fixed
- Bug in
addsubcommand when exceeding max file count
v0.9.2
Fixed
- Bug in
createsubcommand resulting in incorrect max file count