-Only the most important changes more recent than version 0.6 are noted here.
+Version 1.7.0-BETA:
+ Improved compression, decompression, and extraction performance.
-Version 1.6.3-BETA:
- Added support for "WIMBoot". On any platform, you can now capture a WIM
- as WIMBoot-compatible. In addition, on Windows, specifically Windows
- 8.1 Update 1 and later, you can now apply a WIM archive in a special
- mode that causes extracted files to be externally backed by the WIM
- archive. See the documentation for the new '--wimboot' option to
- wimcapture and wimapply, respectively, for more information.
+ 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.
- The shared library version has been bumped up; however, there are only
- a few incompatibilities:
+ '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.
+
+ On UNIX-like systems, you can now backup and restore device nodes, named
+ pipes, and sockets. In addition, 32-bit user and group IDs are now
+ supported.
+
+ The way that UNIX data is stored in WIM files has been changed. If you
+ captured any WIMs with the --unix-data option, to upgrade them you'll
+ need to apply them with --unix-data using wimlib-imagex v1.6.2, then
+ re-capture them with --unix-data using this version.
+
+ wimlib now understands tagged metadata items, such as object IDs, that
+ can be stored in WIM directory entries.
+
+ Removed the --hardlink and --symlink options to wimapply, since I don't
+ think they are too useful and they got in the way of improving the code.
+
+ WIMs will now retain their GUIDs when rebuilt (e.g. with wimoptimize).
+
+ The 'mkwinpeimg' script now supports writing the ISO image to standard
+ output.
+
+ 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;
+ 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_XPRESS is now 1 and
WIMLIB_COMPRESSION_TYPE_LZX is now 2 (so it's the same as
WIMGAPI).
- - 'struct' wimlib_capture_config has been removed. The library
+ - 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().
- Otherwise the API and ABI is the same.
+ - Removed extraction flags: WIMLIB_EXTRACT_FLAG_HARDLINK,
+ WIMLIB_EXTRACT_FLAG_SYMLINK, WIMLIB_EXTRACT_FLAG_FILE_ORDER,
+ and WIMLIB_EXTRACT_FLAG_SEQUENTIAL.
+
+ - Removed some progress messages:
+ WIMLIB_PROGRESS_MSG_APPLY_TIMESTAMPS,
+ WIMLIB_PROGRESS_MSG_EXTRACT_DIR_STRUCTURE_BEGIN,
+ 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.
Version 1.6.2:
Case-insensitive comparisons of strings (e.g. filenames) containing