innoextract
Changelog
This page lists release notes for innoextract
- please also check the main page.
Changes
innoextract 1.9
- Added preliminary support for Inno Setup 6.1.0
- Added support for a modified Inno Setup 5.4.2 variant
- Fixed output directory being created for unsupported installers
- Fixed some safe non-ASCII characters being stripped from filenames
- Fixed handling of path separators in Japanese and Korean installers
- Fixed build with newer Boost versions
- Windows: Fixed heap corruption
- Windows: Fixed garbled output
innoextract 1.8
- Added support for Inno Setup 6.0.0 installers
- Added support for pre-release Inno Setup 5.6.2 installers used by GOG
- Added support for two modified Inno Setup 5.5.7 variants
- Added support for Inno Setup 1.3.0 to 1.3.23
- Added support for My Inno Setup Extensions installers older than 3.0.6.1
- Added support for modified Inno Setup variants using an alternative setup loader magic
- Added support for using boost_{zlib,bzip2} when statically linking Boost
- Added support for automatically reading external setup.0 files
- Encoding for non-Unicode installers is now determined from the languages supported by the installer, overridable using the --codepage option
- Implemented parsing of GOG Galaxy architecture constraints
- The architecture-specific suffixes
@32bit
and@64bit
are now used to disambiguate colliding files - Fixed extracting files from slices larger than 2 GiB with 32-bit builds
- Fixed output path for files with absolute paths (canonicalization now strips all unsafe characters)
- Fixed output directory being created even when not extracting files
- Fixed a hang when using the
--language
option - Improved checksum verification for files reconstructed from GOG Galaxy file parts
- Changed header parsing to select the first version without warnings and failing that the first without errors
- Changed filesystem and output encoding to WTF-8 (extended UTF-8) to represent broken UTF-16 data
innoextract 1.7
- Added support for Inno Setup 5.6.0 installers
- Added support for new GOG installers with GOG Galaxy file parts
- Added support for encrypted installers with the
--password
(-P
) and--password-file
options - Added a
--show-password
option to print password check information - Added a
--check-password
option to abort if the provided password does not match the stored checksum - Added a
--info
(-i
) convenience option to print information about the installer - Added a
--list-sizes
option to print file sizes even with--quiet
or--silent
- Added a
--list-checksums
option to print file checksums - Added a
--data-version
(-V
) option to print the data version and exit - Added a
--no-extract-unknown
(-n
) option to abort on unknown Inno Setup data versions - Fixed building in paths that contain regex expressions
- Fixed case-sensitivity in parent directory when creating subdirectories
- Fixed .bin slice file names used with Inno Setup versions older than 4.1.7
- Fixed build with newer libc++ versions
- Made loading of .bin slice files case-insensitive
- The
--test
option can now be combined with--extract
to abort on file checksum errors - Now compiles in
C++17
mode if supported
innoextract 1.6
- Added support for Inno Setup 5.5.7 (and 5.5.8) installers
- Added a
--collisions=rename-all
option - Changed
--collisions=rename
to omit the suffix for the file that would have been extracted with--collisions=overwrite
instead of the first encountered file - Fixed
@lang
suffix sometimes missing for the first file with the--collisions=rename
option - Fixed build error with CMake 3.5
- Now compiles in
C++14
mode if supported - Unsafe characters in special constant strings (ie
:
in{code:…}
) are now replaced with$
- Windows: Fixed error message if the source file could not be opened
- Windows: Fixed progress bar flickering while printing extracted filenames
- Windows binaries: Fixed crash on platforms without AVX support
innoextract 1.5
- Added support for Inno Setup 5.5.6 installers
- Added support for a modified Inno Setup 5.5.0 variant
- Added support for building without iconv (Windows-1252 and UTF-16LE only)
- Added warnings for .bin files that are not part of the installer
- Added a simple
--include
(-I
) option to filter files thanks to Alexandre Detiste - Added a
--list-languages
option to list available languages - Added a
--exclude-temp
(-m
) option to not extract temporary files - Added a
--language-only
option to skip language-independent files - Added a
--collisions
option to abort or rename files on collision - Added a
--default-language
option to prefer a language in case of file collisions - Added a
--gog-game-id
option to print the GOG.com game ID for Galaxy-ready installers - Added a
--gog
(-g
) option to extract additional .bin files using unrar or unar - Fixed handling of spaces in the
--data-dir
option - Fixed an infinite loop with truncated LZMA streams
- Fixed handling of forward slashes in stored file paths
- Fixed size display for powers of 1024
- Fixed loading headers if there are encrypted chunks
- Fixed file collisions not being handled case-insensitively
- Files will now be extracted into the same directory even if the stored case differs
- Empty directories are now created correctly when extracting
- Skipped files in encrypted chunks are now listed individually
- Temporary files are now marked in file listings
- Error summary is now written to stderr when using
--quiet
- Colors are now only enabled automatically if $TERM is set to something other than "dumb"
- Improved error and warning messages
- Build system improvements
- Debug output can now be enabled separately from debug builds
- Windows: Added support for using the Win32 API for string encoding conversion
- Windows: Fixed unicode console output
innoextract 1.4-windows-r2
- This is a Windows-specific hotfix release, no other platforms are affected
- Fixed running innoextract under Windows XP
innoextract 1.4-windows-r1
- This is a Windows-specific hotfix release, no other platforms are affected
- Fixed a crash on startup under Windows
- Reduced progress bar flickering under Windows
- Fixed original console text color not being restored under Windows
innoextract 1.4
- Fixed build on non-Linux platforms with a separate libiconv (Windows™, macOS)
- Fixed build on systems with non-standard iconv function prototypes (FreeBSD)
- Fixed MSVC build
- Fixed build with older glibc versions
- Fixed issues with the progress bar in sandbox environments
- Fixed string conversion on systems where libiconv defaults to big-endian variants
- Fixed extracting very large installers with 32-bit
innoextract
builds - Improved handling of invalid encoded strings
- Improved error messages when input or output files could not be opened
- The
--list
command-line option can now combined with--test
or--extract
- The
--version
command-line option can now be modified with--quiet
or--silent
- Added color output and progress bar support for Windows™
- Added support for Unicode filenames under Windows™
- Added support for preserving timestamps of extracted files (enabled by default)
- Added a
--timestamps
(-T
) command-line options to control or disable file timestamps - Added an
--output-dir
(-d
) command-line option to control where files are extracted - Added various CMake options to fine-tune the build process
- Various bug fixes and tweaks
innoextract 1.3
- Fixed
--quiet
and--silent
flags being ignored for some multi-file installers output - Now compiles in
C++11
mode if supported - Added a warning when extracting unsupported setup data versions
- Added support for Inno Setup 5.5.0 installers
innoextract 1.2
- Fixed compile errors with older versions of Boost or GCC
- Prevented linking against libraries that aren't actually needed
innoextract 1.1
- Added support to extract files for a specific language
- Fixed a bug in the setup header parsing code
innoextract 1.0
- Initial release
- Can list and extract files but not much more