NSZ v5.0.0 is the first official NSZ release for 2 years and 8 months (958 days). So much changed and improved in the meantime. Thanks to now using PyCryptodome's AES implementation NSZ got much faster and less resource intensive. In addition to a lot of new features and improvements there where some major bugs fixed that in rare cases could cause corrupted output during block decompression and XCZ decompression - the NSZ/XCZ file itself is unaffected and will properly decompress using NSZ v5.0.0. Sorry that it took so much time for there to be another release - expect more frequent releases in the future.
What's Changed
- Check for None when calling ExtractTitleIDAndVersion in GameList by @Avasam in #168
- fix breaking pipeline with VerificationErrors by @einsweniger in #170
- add master_key_11 key hash by @wzsx150 in #177
- Update Keys.py by @dnsBlah in #185
- Use raw strings for regexp by @drizzt in #184
- fix read size in BlockDecompressorReader and add IndependentNczDecompressorConcise by @scturtle in #191
- Disable "press enter" prompt when not a terminal by @andrewrabert in #192
- Ticketless support + Ticketless multicontent support + Automation Script files by @ElektroStudios in #196
- Avoid adding padding to already padded PFS0 header by @connesc in #197
- Update Keys.py by @dnsBlah in #199
- Restore No-intro compliance for --fix-padding by @connesc in #201
- Machine readable output and hint for fixing progress reporting by @Clearmist in #202
- Allow NSP header to align to 16 bytes by @ZeppLu in #209
- fix ncz block decompression when BlockSize is a multiple of decompressedSize by @ITotalJustice in #211
- Library improvements by @a1ex4 in #212
- fix typo on undupe that cause issue when using priority lists by @Xefir in #213
- Fix Title usage by @drizzt in #215
- Fix Xcz decompressing partition overwritting by @Furoryan in #217
- feat(keys): support XDG config directory lookup by @mateconpizza in #226
- feat: add Docker containerization with multi-architecture support by @jparrill in #216
- Add --keys option for custom keys file location by @luketanti in #221
- Support both .nsp and .nsz file extensions for Fs.Nsp by @seiya-git in #230
- Bug fix + master key update by @luketanti in #227
- Add for_nutPrint argument to parse method for flexible help by @seiya-git in #231
- Optimize aes128.py by using PyCryptodome's AES implementation by @seiya-git in #232
- More build options and bug fixes by @Clearmist in #234
- Crash fixes, toolchain fixes, and code cleanup (oh my!) by @Brycey92 in #235
- Improvements to use nsz as a library by @a1ex4 in #236
- Add more tests to Azure pipeline by @Brycey92 in #238
- Improved DPI scaling and fixed many DPI scaling issues and added DPI scaling settings by @nicoboss
New Contributors
- @Avasam made their first contribution in #168
- @einsweniger made their first contribution in #170
- @wzsx150 made their first contribution in #177
- @dnsBlah made their first contribution in #185
- @scturtle made their first contribution in #191
- @andrewrabert made their first contribution in #192
- @ElektroStudios made their first contribution in #196
- @connesc made their first contribution in #197
- @Clearmist made their first contribution in #202
- @ZeppLu made their first contribution in #209
- @ITotalJustice made their first contribution in #211
- @a1ex4 made their first contribution in #212
- @Xefir made their first contribution in #213
- @Furoryan made their first contribution in #217
- @mateconpizza made their first contribution in #226
- @jparrill made their first contribution in #216
- @luketanti made their first contribution in #221
- @Brycey92 made their first contribution in #235
Full Changelog: 4.6.1...5.0.0