-Only the most important changes more recent than version 0.6 are noted here.
+Version 1.7.4-BETA:
+ Extracting files to a Windows PE in-memory filesystem no longer fails if
+ the target files do not yet exist. (Broken since v1.7.0, but actually a
+ result of a Microsoft bug.)
-Version 1.7.0-BETA:
- Improved compatibility with version 3584 WIM / ESD files.
+ More fixes for wimlib on non-x86 architectures such as ARM.
- Performance improvements, including for extraction.
+ Slight performance improvements in compression and decompression.
+
+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.
+
+ Added support for testing file exclusions via the user-provided
+ progress function.
+
+ Some documentation improvements.
+
+ Made some clarifications to the license text in the COPYING file.
+
+Version 1.7.1:
+ Made more improvements to the XPRESS, LZX, and LZMS compressors.
+
+ The default compression mode for wimcapture is now LZX compression in
+ its default mode, which is the same as '--compress=maximum'.
+
+ 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.
+
+ Improved compatibility with version 3584 WIM / ESD files:
+ - Add support for reading and writing multiple solid blocks per
+ archive, which WIMGAPI/DISM can create when appending an image.
+ - Correctly create solid blocks larger than 4 GiB.
'add' commands passed to wimupdate will now replace existing
nondirectory files by default. Use the --no-replace option to get the
old behavior.
+ The license for the library now contains an exception that allows using
+ it under the LGPL. See the COPYING file for details.
+
+ In reparse-point fixup mode (the default for capture), symbolic links
+ and junctions that point outside the tree being captured are no longer
+ excluded from capture.
+
Added support for "WIMBoot" capture and extraction. See the
documentation for the new '--wimboot' option to wimcapture and wimapply
for more information.
The 'mkwinpeimg' script now supports writing the ISO image to standard
output.
- The <ARCH> element in WIM XML data will now be exported correctly.
+ The <ARCH> element in WIM XML data is now exported correctly.
On Windows, sparse file attributes are no longer set on extracted files.
+ Oddly enough, this actually saves disk space in some cases.
On UNIX, configuring with --disable-xattr or --enable-xattr is no longer
supported. Mounting WIM images now always requires extended attribute
- support. Use --without-fuse to disable support for mounting WIM images.
+ support. Use --without-fuse to disable support for mounting WIM images;
+ this will also disable the need for extended attribute support.
+
+ Configuring with --enable-ssse3-sha1 now works correctly.
The shared library version has been bumped up. The main
incompatibilities are:
WIMLIB_COMPRESSION_TYPE_LZX is now 2 (so it's the same as
WIMGAPI).
- - Progress functions, including their prototypes as well as how
- they are provided to the library, have been changed.
+ - User-provided progress functions are now registered using a
+ separate function, wimlib_register_progress_function(). The
+ 'progress_func' argument to many functions no longer exists.
+
+ - The return value from user-provided progress functions is now
+ significant.
+
+ - A context argument has been added to the prototype of
+ user-provided progress functions.
- 'struct wimlib_capture_config' has been removed. The library
now takes the path to the configuration file directly. This
affects wimlib_add_image(), wimlib_add_image_multisource(),
- and wimlib_update_image(). However no code changes are
- necessary if a NULL configuration was being used.
+ and wimlib_update_image(). However, a NULL value passed in
+ the argument retains the same meaning.
- Removed deprecated functions: some (de)compression functions,
wimlib_extract_files(), and wimlib_print_metadata().
- Removed extraction flags: WIMLIB_EXTRACT_FLAG_HARDLINK,
- WIMLIB_EXTRACT_FLAG_SYMLINK, and
- WIMLIB_EXTRACT_FLAG_FILE_ORDER.
+ WIMLIB_EXTRACT_FLAG_SYMLINK, WIMLIB_EXTRACT_FLAG_FILE_ORDER,
+ and WIMLIB_EXTRACT_FLAG_SEQUENTIAL.
- - Removed progress messages:
+ - Removed some progress messages:
WIMLIB_PROGRESS_MSG_APPLY_TIMESTAMPS,
WIMLIB_PROGRESS_MSG_EXTRACT_DIR_STRUCTURE_BEGIN,
- WIMLIB_PROGRESS_MSG_EXTRACT_DIR_STRUCTURE_END.
+ WIMLIB_PROGRESS_MSG_EXTRACT_DIR_STRUCTURE_END. Numbering
+ stays the same.
+
+ - Removed some error codes. Numbering stays the same.
+
+ - Replaced WIMLIB_UNMOUNT_FLAG_LAZY with
+ WIMLIB_UNMOUNT_FLAG_FORCE.
- WIM paths passed to progress functions now have a leading
slash.