NSZ 2.1 Changelog:
- 98 commits worth of changes since v2.0
- Added pip support
- Added Nuitka standalone windows build support
- Enhanced File Existing Check #20
- Skip already compressed/decompressed files by default
- --overwrite
- --rm-old-version
- Extracting TitleIDs and Versions from filename if possible (#17 and #19)
- The titleID checking is now immensely faster than when extracting from Cnmt
- --parseCnmt to get TitleID/version from Cnmt if not extractable from filename
- Otherwise it falls back to simple filename checking which is much faster
- Batch error handling with tracebacks (#16)
- Some debugging codes to find out erroneous files
- Prevent batch process raising errors
- Batch error handling with tracebacks
- The --thread option now works even for solid compression however the progress bar still has some visual glitches
- NSP/NSZ file hash verification now uses the hashes inside Cnmt instead of the nca filename (#22)
- Fixed decompression memory leak (#21)
- The memory leak only occurs for dctx.stream_reader and was fixed by switching to the simple decompressing API which makes more sense for block decompression anyways
- Improved pageReadSize calculation speed by using math instead of a while loop
- Added option --remove-source that deletes the source file after compression or decompression (#24)
- For this we finally properly closed file containers too
- Fix huge compression memory leak (#13)
- Fixed wrong working directory when starting nut.py from a different directory (#18)
- Improved exception handling during TitleID/Version extraction
- Added support for prod.keys
- Reorganized file structure
- Fixed keys.txt path to always be the folder containing nsz.py
- Fixed default thread amount to be cpu_count()
- Implemented python version checking to prevent python from showing the users confusing compatibility related exceptions
- Compatible and tested with Python 3.6 and later
- General system stability improvements to enhance the user's experience.