NanaZip 3.0 (3.0.996.0)
I'm excited to announce that we've released the NanaZip 3.0 which is now available for download. I think users will love the changes from this version. Here are some screenshots for the NanaZip 3.0 main window.
I don't want to say anything for this release except the following notices because the screenshots can mention a lot.
NanaZip will be not only a simple 7-Zip fork anymore, the relationship between NanaZip and 7-Zip is more like Chromium and WebKit because I think most of the changes I will do for NanaZip have no chance of being accepted by Igor Pavlov. But NanaZip will still keep the Core Library and Self Extracting Executables implementation synchronized to the latest 7-Zip mainline implementation. This is why I rewrote and split the implementation of the Core Library and the Self Extracting Executable to the separate NanaZip.Core project. The other parts will be modernized as soon as possible. Also, I think I will try to make the modernized 7-Zip Plugin SDK with 100% C++/WinRT style in the future because Igor Pavlov changes a lot in every release, and we need a more simplified way to develop plugins for 7-Zip and NanaZip.
NanaZip has introduced the Preinstall Support. Read #398 for more information.
NanaZip provides a $99.99 Sponsor Edition addon to the Microsoft Store to attract more sponsors and contributors. It's free for NanaZip source code repository contributors and NanaZip sponsors who sponsored before March 30, 2024. The only difference for NanaZip Sponsor Edition is showing "❤️ Appreciate your sponsorship ❤️" button instead of "☕ Sponsor NanaZip ☕" button in the NanaZip's toolbar like the Visual Studio administrator mode. I hope every NanaZip user is happier than before. Here are some imaginative examples. Read https://github.com/M2Team/NanaZip/blob/main/Documents/SponsorEdition.md for more information.
NanaZip 3.0 and onwards will have two distribution flavors called NanaZip and NanaZip Classic. So, the 32-bit x86 support for the NanaZip packaged version is removed because supported 32-bit x86 Windows versions don't support running on 32-bit only x86 processors. But NanaZip 3.0 does not have the Classic flavor yet because it's not ready. Although we only chose Windows as the major platform for the NanaZip project supported because Windows has maintained a good and proven ABI and compatibility, and stands out in the whole history. But we also care about the non-Windows platform. Read https://github.com/M2Team/NanaZip#differences-between-nanazip-and-nanazip-classic and https://github.com/M2Team/NanaZip#system-requirements for more information.
Finally, I want to say sorry to people who want to change the icons and toolbar in the NanaZip main window. Recently, the NanaZip main window's menu bar and toolbar have been replaced by the new XAML-based toolbar, and it uses font icons from Segoe MDL2 Assets.
Release Notes
- Notes
- NanaZip 3.0 and onwards will have two distribution flavors called NanaZip and NanaZip Classic. But NanaZip 3.0 does not have the Classic flavor yet because it's not ready. Read https://github.com/M2Team/NanaZip#differences-between-nanazip-and-nanazip-classic for more information.
- The 32-bit x86 support for NanaZip packaged version is removed because supported 32-bit x86 Windows versions don't support running on 32-bit only x86 processors.
- NanaZip 3.0 and onwards will have NanaZip Sponsor Edition. Read https://github.com/M2Team/NanaZip/blob/main/Documents/SponsorEdition.md for more information.
- NanaZip has introduced the Preinstall Support. Read #398 for more information.
- Features
- Introducing dark mode support for all GUI components.
- Introducing the Mica support. You will enjoy the full window immersive Mica support for all GUI components if you are using dark mode with HDR disabled. (Thanks to Andarwinux.)
- Synchronize the 7-Zip mainline implementations to 24.05. (https://github.com/ip7z/7zip/releases/tag/24.05) (Thanks to Igor Pavlov. Noticed by AVMLOVER-4885955 and PopuriAO29.)
- Make NanaZip Self Extracting Executable stubs use 7-Zip mainline Zstandard decoder instead of Zstandard official's for reducing the size for binaries.
- Use 7-Zip mainline Zstandard decoder instead of Zstandard official decoder for NanaZip.Core project.
- Remove 7-Zip mainline XXH64 Hash handler for NanaZip.Core because we have the xxHash-based implementation in NanaZip.Codecs. It will have much better performance, especially for non-x86 targets.
- Implement the new toolbar and use it to replace the old menubar and old toolbar.
- Refresh the UI layout for About Dialog via following other Nana series project design.
- Add the SM3 HASH algorithm from GmSSL. (https://github.com/guanzhi/GmSSL)
- Improvements
- Rewrite and split the implementation of the Core Library and the Self Extracting Executable to the separate NanaZip.Codecs and NanaZip.Core projects. Read #336 for more information.
- Ensure the implementation of Core Library and the Self Extracting Executable supports Windows Vista RTM (Build 6000.16386).
- Reduce the binary size for the Self Extracting Executables.
- Synchronize the 7-Zip ZS implementations to the latest master branch. (mcmilk/7-Zip-zstd@79b2c78)
- Synchronize Zstandard and builtin xxHash implementations to v1.5.6. (https://github.com/facebook/zstd/releases/tag/v1.5.6)
- Synchronize Brotli implementations to v1.1.0. (https://github.com/google/brotli/releases/tag/v1.1.0)
- Synchronize the RHash implementation to the latest master branch which is after v1.4.4. (rhash/RHash@d916787)
- Synchronize the BLAKE3 implementation to latest master which is after 1.5.1. (BLAKE3-team/BLAKE3@0816bad)
- Update to Git submodule version of Mile.Project.Windows. (https://github.com/ProjectMile/Mile.Project.Windows)
- Update Mile.Windows.Helpers to 1.0.558. (https://github.com/ProjectMile/Mile.Windows.Helpers/tree/1.0.558.0)
- Update Mile.Xaml to 2.2.944. (https://github.com/ProjectMile/Mile.Xaml/releases/tag/2.2.944.0)
- Use Mile.Windows.Internal package. (https://github.com/ProjectMile/Mile.Windows.Internal)
- Use Mile.Detours package. (https://github.com/ProjectMile/Mile.Detours)
- Use modern IFileDialog for folder picker dialog. (Contributed by reflectronic.)
- Launch directly to the settings page of association for NanaZip. (Contributed by AndromedaMelody.)
- Show NanaZip in Drives' ContextMenu. (Contributed by AndromedaMelody.)
- Sync file extension support from https://github.com/mcmilk/7-Zip-zstd.
- Add other methods to compression dialog. (mcmilk/7-Zip-zstd@cf29d0c)
- Reorder initialization in constructor matching to member declaration order. (mcmilk/7-Zip-zstd@8b011d2)
- Fix selectable uppercase / lowercase hash formatting. (mcmilk/7-Zip-zstd@4fae369)
- Update russian translation. (Contributed by Blueberryy.)
- Update Polish translation. (Contributed by ChuckMichael.)
- Add mitigation policy of disabling child process creation for command line version of NanaZip. (Contributed by dinhngtu.)
- Add Explorer Patcher DLL blocking for NanaZip File Manager for reenabling mitigation policy of blocking loading unexpected libraries from remote sources at runtime for the main thread of NanaZip File Manager without the stability issues. (Contributed by dinhngtu.)
- Fixes
- Fix issue in IEnumExplorerCommand::Next for shell extension. (Thanks to cnbluefire.)
- Other adjustments for project development.
Download
-
MSIX Package: NanaZip_3.0.996.0.msixbundle
- SHA-256: ED96913B9CC93C6A344567D54C88463E6E280C27632E7806AC021C2D7ED7C305
-
License XML: NanaZip_3.0.996.0.xml
- SHA-256: EE2AE8616A3F41FC52A42D051D3A4550372BF88D743376E7E32D3723DCE5747A
-
Debug Symbols: NanaZip_3.0.996.0_DebugSymbols.7z
- SHA-256: A71C502BC895026DDE4F4423673916FDD8D0770DECF136CCC90D73EC9EDE8EDB
Kenji Mouri