X-Git-Url: https://wimlib.net/git/?p=wimlib;a=blobdiff_plain;f=NEWS;h=2417af7411227b48560f7178e9467ea28407a02d;hp=2198d08ab1a2a20c537e21213a7c1e446f2e5ae4;hb=ae3d6ff16ece0fdf302cfe3ce0204d6ba172adf9;hpb=472366c8db7cef3eaad9eea3c08048b726db525e diff --git a/NEWS b/NEWS index 2198d08a..2417af74 100644 --- a/NEWS +++ b/NEWS @@ -1,61 +1,241 @@ -Version 1.7.1-BETA: +Version 1.8.3-BETA: + Fixed a bug with libntfs-3g extraction present since v1.8.1. Sometimes, + some Microsoft software would not correctly recognize data in the + resulting filesystem. Users of the (UNIX-only) NTFS-3g based WIM + extraction support should not use wimlib v1.8.1 or wimlib v1.8.2. - Made a minor change to the LZMS compressor and decompressor to fix an - incompatibility with the Microsoft implementation. In the unlikely - event that you created an LZMS-compressed WIM with wimlib v1.7.0 or - earlier and a checksum error is reported when extracting files from it - with wimlib v1.7.1, decompress it with v1.7.0 then compress it with - v1.7.1. + Made some small improvements to the compression algorithms. - The performance of LZX compression in its default settings has been - improved by a further 5-10%. + Improved handling of WIM XML data and added two new API functions: + wimlib_get_image_property() and wimlib_set_image_property(). - The default compression mode for wimcapture is now LZX compression in - its default mode, which is the same as '--compress=maximum'. + Several improvements to System Compression (compact mode) support: - You can now specify an optional integer compression level to the - '--compress' or '--solid-compress' options; e.g. '--compress=lzx:75'. - Currently, the default level in all cases is 50. This capability - deprecates the '--compress-slow' (or '--recompress-slow') option to - several wimlib-imagex commands. + wof.sys (or wofadk.sys) is now automatically attached to the + target volume if needed. + + Compact-mode extractions now work correctly with wofadk.sys on + older versions of Windows. + + For compatibility with the Windows bootloader, the requested + compression format now is overridden on certain files. + +Version 1.8.2: + This release primarily contains various minor bug fixes and + improvements, including: + + Improved handling of deep directory structures. + + Fixed a bug where on 32-bit systems, the library could enter an + infinite loop if a WIM file was malformed in a specific way. + + Added a workaround for a case where libntfs-3g may report + duplicate streams in an NTFS file. + + Windows symbolic links and junctions in mounted WIM images are + now automatically rewritten to be valid in the mounted location. + + Reparse point fixes: correctly handle the "ReparseReserved" + field, and correctly handle "empty" (data-less) reparse points. + + On Windows, wimlib now acquires SeManageVolumePrivilege, which + is needed to create externally backed files using the + "wofadk.sys" driver. + + Improved validation of filenames. + + Improved LZMS decompression speed. + + The configure script now honors alternate pkg-config settings. + + Links have been updated to point to the new website. + + In addition, experimental support has been added for compressing + extracted files using System Compression on Windows 10. This + functionality is available through the new '--compact' option to + 'wimapply' and 'wimextract' as well as new library flags. + +Version 1.8.1: + Fixed a bug in the LZX decompressor: malicious input data could cause + out of bounds writes to memory (since wimlib v1.2.2). + + The output of the 'wiminfo' command now consolidates various boolean + flags (such as "Relative path junction") into a single line. + + A file can now have both an unnamed data stream ("file contents") and a + reparse point stream. Such files can exist as a result of the use of + certain Windows features, such as offline storage, including "OneDrive". + wimlib will now store and restore both streams on Windows as well as in + NTFS-3g mode. Microsoft's WIMGAPI also has this behavior. + + On Windows, named data streams of encrypted files are no longer stored + twice in WIM archives. + + On Windows, named data streams are now correctly extracted to existing + "readonly" directories. Before, an error would be reported. + + On Windows, it is now possible to do a "WIMBoot mode" extraction with + non-standalone WIMs such as delta WIMs. + + On Windows, when doing an extraction in "WIMBoot mode", files larger + than 4 gigabytes are now never extracted as externally backed. This + works around a bug in Microsoft's "WOF" driver. + + The '--enable-verify-compression' configure option has been removed. If + you want to verify a WIM file, use the 'wimverify' program. + + The way the "file count", "directory count", "total bytes", and "hard + link bytes" image statistics (stored in the WIM XML data) is calculated + has been slightly changed. + + In mounted WIM images, the disk usage provided for each file (st_blocks) + is now the compressed size rather than the uncompressed size. + + The performance of the NTFS-3g and Windows capture modes has been + slightly improved. + + On UNIX-like systems, symbolic links whose targets contain the backslash + character are now handled correctly (losslessly). + +Version 1.8.0: + Improved the LZX compressor. It is now 15-20% faster than before and + provides a slightly better compression ratio. + + Improved the LZMS compressor. It now provides a compression ratio + slightly better than WIMGAPI while still being faster and using slightly + less memory. + + The compression chunk size in solid resources, e.g. when capturing or + exporting a WIM file using the '--solid' option, now defaults to 64 MiB + (67108864 bytes) instead of 32 MiB (33554432 bytes). This provides a + better compression ratio and is the same value that WIMGAPI uses. The + memory usage is less than 50% higher than wimlib v1.7.4 and is slightly + lower than WIMGAPI's memory usage, but if it is too much, it is still + possible to choose a lower value, e.g. with the '--solid-chunk-size' + option to wimlib-imagex. + + The '--chunk-size' and '--solid-chunk-size' options to wimlib-imagex now + accept the 'K', 'M', and 'G' suffixes. + + Files are now sorted by name extension when creating a solid WIM file. + + Fixed various issues related to capture/apply of EFS-encrypted files on + Windows. + + The file list printed by 'wimdir' is now sorted by the platform-specific + case sensitivity setting, rather than always case sensitively. This + also affects the library function wimlib_iterate_dir_tree(). - The '--pack-streams', '--pack-compress', and '--pack-chunk-size' options - to several wimlib-imagex commands have been deprecated in favor of more - "standard" names: '--solid', '--solid-compress', and - '--solid-chunk-size', respectively. + On Windows, some error and warning messages have been improved. - The XPRESS compressor no longer supports chunks larger than 65536 bytes. - There is little point in having larger chunks, since the LZ77 sliding - window for XPRESS cannot be larger than 65536 bytes. This change does - not affect the default XPRESS chunk size, which is 32768. +Version 1.7.4: + The Windows binary distribution no longer contains third party DLLs. + These dependencies are instead compiled directly into the libwim DLL. - The new (as of v1.7.0) extraction code will no longer run out of file - handles when extracting many (1000+) identical files. + Added more fixes for wimlib on non-x86 architectures such as ARM. + + Extracting files to a Windows PE in-memory filesystem no longer fails if + the target files do not yet exist. + + Improved the performance of XPRESS compression and LZMS decompression. + + Enabled SSSE3 accelerated SHA-1 computation in x86_64 Windows builds. + It will automatically be faster on newer Intel and AMD processors. + + Removed the --with-imagex-progname and --enable-more-assertions + configure options. + +Version 1.7.3: + Fix for very slow export from solid WIM / ESD files. + + Fix for LZX and LZMS algorithms on non-x86 architectures, such as ARM. + + New progress message: WIMLIB_PROGRESS_MSG_HANDLE_ERROR. Applications + may use this to treat some types of errors as non-fatal. + + The library now permits making in-memory changes to a WIMStruct backed + by a read-only WIM file. + + Fixes for "WIMBoot" extraction mode (Windows only): + + When not using the WOF driver, extraction no longer fails if the + disk containing the WIM file has too many partitions. + + When matching patterns in [PrepopulateList], all hard links of + each file are now considered. + + The system registry files are now automatically treated as being + in [PrepopulateList]. + + Added a hack to try to work around an intermittent bug in + Microsoft's WOF (Windows Overlay Filesystem) driver. + +Version 1.7.2: + Made more improvements to the XPRESS, LZX, and LZMS compressors. + + A number of improvements to the Windows port: + + Fixes for setting short filenames. + + Faster "WIMBoot" extraction. + + Updated and slimmed down the dependent DLLs. + + ACL inheritence bits are now restored. + + Mandatory integrity labels are now backed up and restored. + + Added a workaround for an issue where in rare cases, wimlib could create + a compressed data stream that could not be read correctly by Windows + after an extraction in "WIMBoot" mode. Library changes: + Added file count progress data for + WIMLIB_PROGRESS_MSG_EXTRACT_FILE_STRUCTURE and + WIMLIB_PROGRESS_MSG_EXTRACT_METADATA. - Custom compressor parameters have been removed from the library - in favor of the simpler level-based API. + Added support for testing file exclusions via the user-provided + progress function. - Decompressor parameters have been removed entirely. + Some documentation improvements. - The maximum XPRESS chunk size has been reduced, as mentioned - above. + Made some clarifications to the license text in the COPYING file. - Library users can now initialize and de-initialize the library - multiple times in one run of an application program. +Version 1.7.1: + Made more improvements to the XPRESS, LZX, and LZMS compressors. - Library users will now receive WIMLIB_PROGRESS_MSG_WRITE_STREAMS - and WIMLIB_PROGRESS_MSG_EXTRACT_STREAMS messages more frequently - when writing or extracting large WIM files. + The default compression mode for wimcapture is now LZX compression in + its default mode, which is the same as '--compress=maximum'. - Added experimental new write flag: - WIMLIB_WRITE_FLAG_SEND_DONE_WITH_FILE_MESSAGES. + You can now specify an optional integer compression level to the + '--compress' option; e.g. '--compress=lzx:75'. + + Made a minor change to the LZMS compressor and decompressor to fix an + incompatibility with the Microsoft implementation. In the unlikely + event that you created an LZMS-compressed WIM with wimlib v1.7.0 or + earlier and a checksum error is reported when extracting files from it + with wimlib v1.7.1, decompress it with v1.7.0 then compress it with + v1.7.1. + + Added 'verify' subcommand to wimlib-imagex. + + Notable library changes: + + Custom compressor parameters have been removed from the library + in favor of the simpler level-based API. + + Decompressor parameters have been removed entirely. Library users can now specify a custom file for warning and error messages to be sent to, rather than the default of standard error. + New progress messages: + WIMLIB_PROGRESS_MSG_EXTRACT_FILE_STRUCTURE, + WIMLIB_PROGRESS_MSG_EXTRACT_METADATA. + + New function: wimlib_verify_wim(). + Version 1.7.0: Improved compression, decompression, and extraction performance.