Only the most important changes more recent than version 0.6 are noted here.
+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.
+
+ The shared library version has been bumped up; however, there are only
+ small incompatibilities:
+
+ - wimlib_capture_config has been removed. The library now takes
+ the configuration file directly.
+
+Version 1.6.2:
+ Case-insensitive comparisons of strings (e.g. filenames) containing
+ UTF-16 codepoints above 32767 are now done correctly.
+
+ Fixed build failure on Mac OS X.
+
+ wimunmount now provides the '--new-image' option to cause changes to a
+ read-write mounted image to be committed as a new image rather than as
+ an update of the mounted image. (The corresponding new library flag is
+ WIMLIB_UNMOUNT_FLAG_NEW_IMAGE.)
+
+ The LZMS ("recovery") compression chunk size, or "dictionary size", may
+ now be up to 1 GiB (1,073,741,824 bytes).
+
+ The performance of LZX ("maximum") and LZMS ("recovery") compression
+ with large chunk sizes has been slightly improved.
+
+Version 1.6.1:
+ Stored files with size exactly 4 GiB (4,294,967,296 bytes) are now
+ decompressed correctly.
+
+ Fixed a bug in the LZX compressor introduced in v1.5.3. The bug
+ occurred in an unlikely case, and due to validity checks it did not
+ affect successfully created archives.
+
+ Fixed a minor compatibility issue with the LZMS compressor and
+ decompressor. This is *not* the default compression type and was only
+ introduced in v1.6.0. In the unlikely event that you created an
+ LZMS-compressed WIM with v1.6.0 and a checksum error is reported when
+ applying it with v1.6.1, decompress it with v1.6.0 then compress it with
+ v1.6.1.
+
+ Memory usage for LZMS and LZX compression has been decreased.
+
+ wimextract now allows wildcard characters in paths specified on the
+ command line. Also, the '--strict-wildcards' option has been removed
+ and replaced with the inverse option '--nullglob'. See the
+ documentation for wimextract for more details and changes.
+
+ The wimlib_extract_files() function is now considered deprecated in
+ favor of wimlib_extract_paths().
+
+ Fixed more permissions problems when extracting files on Windows.
+
+ A new '--no-attributes' option has been added to wimapply and
+ wimextract. The library flag is WIMLIB_EXTRACT_FLAG_NO_ATTRIBUTES.
+
+ The default chunk size is now set correctly when changing the
+ compression type of a WIM, for example with 'wimoptimize'.
+
+ The '--metadata' option to wiminfo has been replaced with the
+ '--detailed' option to wimdir.
+
+ In relevant wimlib-imagex commands, '--solid' may now be used as an
+ alias for '--pack-streams'.
+
Version 1.6.0:
Support for extracting and updating the new version 3584 WIMs has been
added. These WIMs typically pack many streams ("files") together into a
performance of random access (such as that which occurs on a mounted
image), but optimizations have been implemented for extraction. These
new WIM files also typically use a new compression format (LZMS), which
- is similar to LZMA. These new WIM files can be created with Dism using
- "/compress recovery". Note: this format is used by the Windows 8 web
- downloader, but important segments of the raw '.esd' files are
- encrypted, so wimlib will not be able to extract such files until they
- are first decrypted.
+ is similar to LZMA and can offer a better compression ratio than LZX.
+ These new WIM files can be created using `wimcapture' with
+ the '--compress=lzms --pack-streams' options. Note: this new WIM format
+ is used by the Windows 8 web downloader, but important segments of the
+ raw '.esd' files are encrypted, so wimlib will not be able to extract
+ such files until they are first decrypted.
+
+ wimlib now supports extracting files and directories from a WIM image
+ based on a "listfile" that itself contains the list of paths to extract.
+ For `wimextract', the syntax is to specify @LISTFILE instead of a PATH,
+ and for the library itself, the new APIs are wimlib_extract_pathlist()
+ and wimlib_extract_paths(). Path globs containing wildcard characters
+ are supported.
+
+ For searching WIM files, wimlib now has configurable case sensitivity.
+ The default on Windows is still case-insensitive and the default on
+ UNIX-like systems is still case-sensitive, but this can be overridden
+ on either platform through flags to wimlib_global_init(). For
+ `wimlib-imagex', the environmental variable WIMLIB_IMAGEX_IGNORE_CASE
+ can be set to 1 or 0 for case-insensitive or case-sensitive behavior,
+ respectively.
Support for compression chunk sizes greater than the default of 32768
bytes has been added. A larger chunk size typically results in a better
- compression ratio. However, this is currently disabled for LZX
- compression due to lack of interoperability with the MS implementation.
+ compression ratio. However, the MS implementation is seemingly not
+ compatible with all chunk sizes, especially for LZX compression, so the
+ defaults remain unchanged, with the exception of the new LZMS-compressed
+ WIMs, which use a larger chunk size by default.
The compression/decompression API exported by wimlib has been changed.
- Now one set of functions support all supported compression formats.
+ Now one set of functions handles all supported compression formats.
`wimcapture' and `wimappend' will now display the progress of scanning
the directory tree to capture, in addition to the progress of writing
`mkwinpeimg' now correctly handles the '--start-script' option when the
start script is not in the working directory.
- Sequential extraction, previously required by using
+ Sequential extraction, previously requested by using
WIMLIB_EXTRACT_FLAG_SEQUENTIAL, is now the default.
- WIMLIB_EXTRACT_FLAG_FILE_ORDER can be used to get the old behavior
- (extract in file order).
+ WIMLIB_EXTRACT_FLAG_FILE_ORDER can be used to get the old default
+ behavior (extract in file order).
Version 1.5.3:
The new LZX compressor added in v1.5.2 has been improved and is now