Skip to content

Release notes

WiX v6 prerelease

WiX v6 is the second annual release since WiX v4. WiX v6 continues in the tradition of being intentionally highly compatible with its predecessor WiX v5—and by the transitive property of backward compatibility, with WiX v4 too. WiX v6 contains a number of fixes and enhancements of existing features, including those newly introduced in WiX v5. Notable examples include:

IssueDescription
1520Address a 16-year-old feature request to support more stores for SSL certificates.
2691Address a 14-year-old WixUI prettiness bug.
7622Adds support “normal,” non-SNI SSL certificates in http.sys.
8101Add PerUserProgramFilesFolder standard directory for per-user packages and use it as the root of the default INSTALLFOLDER.
8135Fixes a bug in WixInternalUIBootstrapperApplication so now the dialogs appear as buttons on the taskbar.
8577Create local and domain user groups. In WiX v5 and before, you could reference existing groups
8584Replace upgrade code GUIDs with human-readable strings. The Package and Bundle elements now have an Id attribute that turns a human-readable string into the equivalent of an upgrade code GUID. You need to provide a value that identifies the “product family,” just like it were an old-school upgrade code GUID. But WixToolset.CommandLineTools.Package is certainly easier to think about than {2e85dc76-769f-46d2-82a7-46cb3a0c9d50}, I think you’d agree.
8663Allow component GUIDs for registry keys to be compatible with those created in WiX v3. Something we discovered while helping a FireGiant customer is that there’s a scenario where a generated component GUID for a registry value changed in WiX v4. That same thing happened in WiX v3 (for different reasons), which is why the -bcgg (backward-compatible GUID generation) command-line switch was born. Well, now it’s back, if you need to maintain the generated v3 GUID.
8685Uses the new MSTest executable test runner and MSBuild traversal projects to build more WiX code in parallel. Faster builds make happy devs, especially when their name is Bob.
8718, 8580Reduce the use of custom actions in WixUI to minimize the amount of extra work necessary to work around platform-specific custom actions. The custom action to print the EULA—for those who not only read the EULA but print a copy for their records—was entirely replaced by built-in MSI functionality. Similarly, the “extra” checking on paths done by custom action is now done with built-in functionality, though you can opt in to the old functionality using ExtendedPathValidation="yes" on the WixUI element.
8882, 8939Use a different approach to construct the default feature and add components to it.
8913Using Heat now shows a deprecation warning. It’s still present and works with WiX v6, mostly by nature of the WiX v6 language not changing. But we plan to remove Heat in WiX v7, so this serves as eviction notice.
8914Lock files extracted from Burn bundles as additional mitigation against attacks. No protection is perfect but locking files as read-only helps prevent malware from overwriting temporary files used during bundle installation.

Get started

Get started with an SDK-style .wixproj project:

<Project Sdk="WixToolset.Sdk/6.0.0-rc.2">
</Project>

and simple package code in a .wxs file:

<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs">
<Package Id="Acme.HelloWorld" Name="HelloWorld" Version="6.0.0" Manufacturer="Acme">
<Files Include="*" />
</Package>
</Wix>

and run

Terminal window
dotnet build

to build it.

WiX v6 releases

  • WiX v6.0.0-rc.1 was published 12-Feb-2025.
  • WiX v6.0.0-rc.2 was published 05-Mar-2025.

WiX v5

WiX v5 marks the first of our annual releases. We intentionally made WiX v5 highly compatible with WiX v4. Most users can simply switch to WiX v5 with no code changes. (There are some exceptions, naturally.) Here’s a list of some notable changes, mostly new features to make your package experience with WiX more pleasant:

FeatureDescription
Built-in file harvestingInclude files in your projects using wildcards. No Heat required.
Naked filesSimplify component authoring that contains only files.
Default major upgradesGet a typical major upgrade with no XML.
Default installation folderGet a typical installation directory with no XML.
Default featureGet a typical feature with no XML.
Modern Windows Firewall supportWixToolset.Firewall.wixext supports more Firewall features. Might require minor authoring changes.
Virtual and overridable symbolsOverridability can be applied to many things now. Might require minor authoring changes.
Out-of-process bootstrapper applicationsBAs are no longer hosted in the Burn process, for better reliability, security, and compatibility. Custom BAs will require source-code changes.

Read more about them in WiX v5 for WiX v4 users.

WiX v5 releases

Contributors

Here are the people who contributed to WiX v5:

WiX v4.0.5

WiX v4.0.5, released on Friday, 22-Mar-2024, contains fixes for two security vulnerabilities. All versions of WiX are affected by this vulnerability. We recommending upgrading to this version as soon as possible. For details, see the FireGiant blog post, the first security advisory, and the second security advisory.

Platforms

  • Arm64 is supported in the core toolset, extensions, and Burn.
  • WiX extensions include platform-specific custom actions for the platform of the package being built. For example, an Arm64 package contains only Arm64 custom actions and doesn’t rely on x86 emulation.

Build tools

  • WiX v4 doesn’t have to be installed on every dev machine and build image like WiX v3. Instead, WiX v4 follows the modern .NET model of using NuGet to deliver tools.
    • WiX v4 MSBuild projects are SDK-style projects; MSBuild and NuGet work together to bring down the WiX v4 MSBuild SDK NuGet package.
    • Both .NET Framework MSBuild and dotnet build are supported.
    • To build packages from the command line, WiX v4 is available as a .NET tool, which is also a NuGet package.
    • WiX extensions are delivered as NuGet packages, which are usable from both MSBuild projects via PackageReference and the WiX .NET tool.
  • For command-line afficionados, most executables have been merged into a single wix.exe tool with commands. For example, in WiX v3, you might build by calling Candle.exe one or more times to compile your authoring and then calling Light.exe to link and bind the compiled authoring into an .msi package. In WiX v4 using wix.exe, that’s one command: wix build -o product.msi product.wxs.
  • Building patches is much easier (one command!) and can use MSI packages as the source of target and updated files.
  • The WiX extensibility model and pipeline integration has been dramatically enhanced.
  • The WiX language has been further simplified. For example:
  • WiX warns when mixing authoring meant for MSI packages in bundles and vice versa.

Burn, bundles, and bootstrapper applications

  • The Burn engine is platform-specific, so you can build an x64 bundle that contains only x64 code and doesn’t rely on WoW64.
  • .NET 6 and later are supported platforms for writing managed-code bootstrapper applications. .NET Framework is also supported.
  • ThmUtil, the native-code UI library used by the WixStdBA bootstrapper application, supports new controls and authored conditions and actions that let themes add functionality without having to write custom C++ code. For details, see Thmutil schema.
  • ThmUtil (and therefore WixStdBA) supports high DPI display settings.
  • The new WixInternalUIBootstrapperApplication BA supports showing only the internal or embedded UI of an MSI package.
  • Burn support other bundles in the chain via BundlePackage to automatically handle detection and uninstall command lines. Likewise, the ArpEntry element provides the same functionality for arbitrary executable packages in the chain.
  • Burn supports SemVer-style versions.
  • WixStdBA supports bundle update feeds as specified in an Update element.
  • Burn now upgrades bundles with the same version numbers.
  • When a user requires elevation to restart (common on Windows Server machines), Burn handles restart through the elevated engine.
  • Custom bootstrapper applications can change the REINSTALLMODE used when applying MSI packages.
  • The Burn policy registry value EngineWorkingDirectory in HKLM\Software\Policies\Wix\Burn is a string specifying a working folder root directory for elevated bundles when the default of C:\Windows\Temp is blocked by security policy.
  • Burn no longer appears in the Apps & Features (ARP) list if a bundle has a pre-req that causes a reboot and the user cancels after the reboot.
  • The /unsafeuninstall command-line switch lets users attempt to “force” a bundle to uninstall, even if dependency checking would otherwise leave it installed.

Deprecations and deletions

  • Features that were deprecated in WiX v3, including command-line switches deprecated in WiX v3.14, have been removed from WiX v4.
  • WixGamingExtension and WixLuxExtension have been removed in WiX v4.
  • WixDifxAppExtension is deprecated in Windows 10 and therefore has been deprecated in WiX v4 and will be removed in WiX v5.

Previous WiX v4 releases

WiX v4.0.4 was released Tuesday, 6-Feb-2024

WiX v4.0.4 mitigates a Windows DLL redirection vulnerability in Burn. All versions of WiX are affected by this vulnerability. We recommending upgrading to this (or a later) version as soon as possible.

WiX v4.0.3 was released Monday, 13-Nov-2023

WiX v4.0.3 is a maintenance release of WiX v4 that fixes a small number of even smaller bugs.

WiX v4.0.2 was released Wednesday, 13-Sep-2023

WiX v4.0.2 is a maintenance release of WiX v4 that fixes a number of bugs that escaped detection in WiX v4.0.0 and v4.0.1:

All of the goodness in WiX v4.0.0 and v4.0.1 remains.

WiX v4.0.1 was released Monday, 5-June-2023

WiX v4.0.1 was a maintenance release of WiX v4 that fixes a number of annoyances and more serious bugs that escaped detection in WiX v4.0.0.

WiX v4.0.0 was released Wednesday, 5-April-2023

Contributors

@robmen, @rseanhall, and @barnson took their maintainer duties seriously during the development of WiX v4. They were joined by many others, who have our thanks!

Release Candidate 4 released Friday, 17-March-2023

WiX v4 Release Candidate 4 contains fixes for the — significantly smaller number of bugs compared to RC3 — that were reported during Release Candidate 3. There is one minor new feature:

Release Candidate 3 released Friday, 24-February-2023

WiX v4 Release Candidate 3 contains fixes for bugs that were reported during Release Candidate 2. There are two minor new features:

  • WiX MSBuild projects support multi-targeting other projects with a single ProjectReference. You can specify multiple platforms, configurations, .NET frameworks, and runtime identifiers. See @robmen’s WIP and pull request.
  • A new sys.BUILDARCHSHORT built-in preprocessor variable helps handle WiX v4’s new architecture-specific custom actions. See issue 7227 and @barnson’s PR.

Release Candidate 2 released Friday, 20-January-2023

WiX v4 Release Candidate 2 contains fixes for bugs that were reported during Release Candidate 1. There are two new features:

Release Candidate 1 released Friday, 16-December-2022

WiX v4 Release Candidate 1 contains fixes for bugs that were reported during Preview 1. There are no new features.

Preview 1 released Friday, 11-November-2022

WiX v4 is a major release of the WiX Toolset, years in the making. More than 500 issues were closed in WiX v4!

If you’re familiar with WiX v3, WiX v4 for WiX v3 users has details about how WiX v4 works.