WiX Posts


I disabled the WiX Toolset GitHub Discussions to stop a spam attack. I've reported the issue to GitHub. After they delete the ~750300 spam messages, I'll re-enable Discussions. Update 2024/05/27: Spam removed and GitHub Discussions have been restored.

I posted the bulk of my reflections on the WiX Toolset's 20th Anniversary on the FireGiant blog. I just have a couple tidbits to include here.

The first WiX Toolset ckae

After a couple hours of experimentation, I think I figured out how to create a single NuGet package (.nupkg) to deliver both an assembly for managed projects (like .csproj) and a .lib for native projects (like .vcxproj). This allows me to deliver an API to MSBuild-based projects with a single nupkg.

A shipping container lifted through the air.

I just created the label oop-ba-unsquashed before squashing the last two months of coding into a single working commit. For the record, I was a fool for believing I could get this done in a week or two. Next stop wix5-rc.1.

A fire burning bright.

The WiX Toolset v4 first release candidate is available now. If it feels like Preview 1 just came out, it did. WiX v4 release candidates are coming out about once a month now. Let's talk about what that means.

HeatWave and WiX logos better together.

The WiX Toolset v4 first release candidate is available now. If it feels like Preview 1 just came out, it did. WiX v4 release candidates are coming out about once a month now. Let's talk about what that means.

On Friday, we announced not just one but two significant releases: WiX v4-preview.1 and HeatWave! I'm so excited to talk about both that I honestly don't know where to start. How about we start with the new kid on the block, HeatWave, before we talk about the end game for WiX v4?

After I wrote most of this blog post the night of October, 5th 2021 I wasn't sure I would post it. After the events of the last 36 hours, I felt I needed to capture my experience on my website where it can only be edited by me. After reading this, I hope you will have a clear set of datapoints from my point of view. After this is all over, I hope something good comes of it.

.NET Foundation logo

WiX Toolset v4-preview.0

In WiX v4, a new .NET tool named wix replaces the command-line tools with cute names like candle.exe and light.exe. The new wix tool combines the functionality of those different tools into commands such as convert and build. Let's dig into those two commands to demonstrate how to upgrade your v3 .wxs source code to v4 and then compile it.


The Remember Property Pattern

The root issue is that the Windows Installer does not save Property values for you. That means if the user enters values in the install UI or passes them on the command-line, those values will be not be present during repair, upgrade nor uninstall. That last one, uninstall, catches people all the time. So let's solve the problem simply then solve it completely.

Computer memory used to represent remembering a property.

A WiX Toolset release to close out 2017

This isn't a "year in review" or "New Year's Resolutions" blog post. If you've followed my blog for the last few years you know I write that sort of blog entry on my birthday. No. Tonight I'm closing out 2017 in a way that feels simply apropos for this year. Tonight I'm talking about the WiX Toolset security release made official earlier today.

The WiX Toolset v3.0 released 8 years ago today. Since then we've released 10 versions that maintain a high level of backwards compatibility. For most that commitment to backwards compatibility makes it easy to pick up the bug fixes, features and security updates each new release offers. Sometimes supporting backwards compatibility means we end up dragging along quite a bit of legacy.


Let's Code - WiX: v3.14

During the final weeks of WiX v3.11 it was challenging just to find time to code much less write about the code. So our fun "Let's Code" sessions here were postponed while I focused on simply finishing WiX v3.11. But we are successfully past WiX v3.11 so let's talk about WiX v3.14. Actually, how about we create WiX v3.14 right now. Sound good? I thought so. Let's code!


WiX Toolset v3.11 Released

Today we release WiX Toolset v3.11. If you already installed v3.11.0.1701 from the weekly releases then you are already up to date. No need to do anything. For everyone else, here's why you might want to upgrade to WiX v3.11.


WiX v3.11 Release Candidate 2

Today we released the second WiX v3.11 Release Candidate.


WiX v3.11 Release Candidate

Today we released the WiX v3.11 Release Candidate.

Last week and weekend was phenomenal for WiX v3.11 (detailed summary here).


Let's Code - WiX: tables.xml and a typo

Last week I fixed my oldest bug in WiX v3.11, the bad filenames bug. This week I'm going to continue to start with my oldest bug and grab a couple others that are related.


Let's Code - WiX: Bad filenames

For the longest time, the bulk of the WiX Toolset was developed on "WiX Nights". One night a week a bunch of us would hang out at my house or (later) in a meeting room at Microsoft, eat dinner and write some code. It was a great way to maintain momentum but it was terrible at including those that were not physically present.


WiX Toolset v3.10.3 Released

Today we release WiX Toolset v3.10.3. If you already installed v3.10.3 release candidate then you are already up to date. No need to do anything. Otherwise, we highly recommend upgrading to v3.10.3 to get the latest security fix and bug fixes rolled up. Seriously. Upgrade to this release as soon as possible.


WiX v3.10.3 Release Candidate

Today we released what we hope is the final release candidate for WiX v3.10.3. We also hope this is the final release in the WiX v3.10 saga completely. The focus of this release was to address the failure to load GDI+ in BootstrapperApplications. If you have a WinForms based BA this fix is for you. We also addressed a couple regressions from WiX v3.10.2 so if you have WiX v3.10.2, this release is for you. Finally, if you were waiting for any reason to upgrade from WiX v3.6, v3.7, v3.8, v3.9, v3.10, v3.10.1 then this release is for you too. In other words, if you're using the WiX Toolset, I highly recommend testing this release. It has all the security and bug fixes rolled up together.

Today the WiX Toolset joins the .NET Foundation. That means we will be moving from the Outercurve Foundation which has supported us over the last few years to join the many active .NET Foundation projects. Just like our first move from Microsoft to Outercurve this was a work in progress for a long time. So just like back then, let me walk through why we're doing this now and what changes.


WiX Toolset has a New Committer

Today it is my pleasure to announce that Sean Hall joins Bob Arnson and I as a committer for the WiX Toolet. This promotion is recognition of all the work Sean does for the WiX Toolset. Today Sean also becomes a part of WiX Toolset history as the first committer that never worked at Microsoft.


WiX Toolset v3.10.1 Released

Today we release WiX Toolset v3.10.1. As the ".1" indicates this is a maintenance release to fix an issue that couldn't wait for the next big release. Namely, some Windows XP support was broken due to changes in the VC++ compiler. Given that we were releasing again, we decided to take another high impact fix.


WiX Toolset v3.10 Released

It is my pleasure to annouce that WiX Toolset v3.10 is now officially declared Production/Stable. This build contains a couple fixes beyond WiX v3.10 RC2 so you will want to download the latest release.


WiX v3.10 Release Candidate 2

The WiX v3.10 release candidate 2 was released today.


WiX v3.10 Release Candidate

The WiX v3.10 release candidate was released today.


WiX Toolset v3.9 R2 Released

Today we published our first ever maintenance release of the WiX Toolset. WiX Toolset v3.9 R2 fixes three bugs (listed below) that were deemed too serious to wait for v3.10. You do not need to upgrade to v3.9 R2 unless you hit one of these issues.


WiX Toolset v3.9 Released

It is my pleasure to announce that the WiX Toolset v3.9 is now officially declared Production/Stable. This is the RC4 build v3.9.1006.0 so if you downloaded RC4 already, you are already good to go. Otherwise, download the release.


WiX v3.9 Release Candidate 4

Today we released the WiX v3.9 Release Candidate 4. As I mentioned in my previous blog entry we'd hoped RC3 would simply be promoted to RTM Obviously that did not work out.


WiX v3.9 Release Candidate 3

Today is Labor Day, a holiday in America. That means there is a reasonable chance there is a new WiX toolset release out today. However, if you were hoping for WiX v3.9 RTM I'm sorry to disappoint you. Today we released the WiX v3.9 Release Candidate 3.


WiX v3.9 Release Candidate 2

Last night the WiX v3.9 Release Candidate 2 hit the web. If you're thinking there was a release candidate only a few weeks ago, you're right. We didn't necessarily plan to release a second candidate. However, thanks to those of you tested the last release we found a few things to fix up. So, please let's do it all again. Download, install, build your world. We expect this is it. WiX v3.9 is eminent.


WiX v3.9 Release Candidate

The WiX v3.9 release candidate was released last week. Bob, who is driving the v3.x releases, has a few words about the release candidate. I wanted to reiterate what Bob said. Download the release candidate, build your product with it. If something that used to work no longer works, please file a bug.


WiX v3.8 released.

It is my pleasure to announce that WiX toolset v3.8 is now officially declared Production/Stable. The final build number is v3.8.28.0.

Today is the day we've been working toward since the new adventure began. Today it is my privilege to introduce the new company to you. Today FireGiant steps into the light.

Last week I spent a large amount of time talking about my new adventure. Let's kick off this week talking about the WiX Toolset community. We are at the beginning of another major transition and I don't mean my leaving Microsoft. The WiX toolset needs its 5th generation of core developers. Are you the next core WiX toolset developer?


WiX v3.7 released.

Happy Holidays! It is my pleasure to announce that the WiX toolset v3.7 is now officially declared Production/Stable. The final build number is v3.7.1224.0. You can download it from here.


The WiX Toolset v4.0 begins.

The next major version of the WiX Toolset is now a couple weeks underway. WiX Toolset v4.0 is shaping up to be the most exciting version since WiX v2.0 was released as Open Source in 2004. In WiX v4.0 we expand beyond the confines of the Windows Installer and XML. There are a lot of changes ahead of us, the following are highlights of what's in WiX v4.0 right now.


WiX v3.7 Release Candidate available.

Today we released WiX v3.7 RC. When I introduced WiX v3.7 I noted that WiX v3.7 would be a short release. If you have not pulled down a WiX v3.7 drop, I highly recommend it to let us know if there are any showstoppers. At this point in time I expect the release to wrap up before the end of the year. Wondering what is in this shortest release in the WiX toolset's history?


WiX v3.6 released.

It is my pleasure to announce that WiX toolset v3.6 is now officially declared Production/Stable. The final build number is v3.6.3303.0. You can download it from here.


Enter WiX v3.7 toolset.

As prophesized, the first build of the WiX v3.7 toolset was released today. Here's what is on the docket for WiX v3.7.


The WiX toolset license.

When the WiX toolset transferred to Outercurve Foundation I forgot one detail that was apparently interesting to some of you. The license changed from the Common Public License 1.0 (CPL) to the Microsoft Reciprocal License (MS-RL). Here's why.

The WiX Toolset was Microsoft's first Open Source project released back in April, 2004. Being first meant we were guinea pigs for a number of new legal and business processes. By 2009 Microsoft had learned a lot about these processes and created the Outercurve Foundation to encapsulate them. Today the WiX toolset finally moves from Microsoft to join Outercurve. Why now? What changes? Let's see if I can answer those questions.


WiX Toolset v3.6 nears completion.

Let me lead with the punch line. The WiX toolset v3.6 production release is scheduled for Labor Day 2012. That means unless the unexpected happens, we're four weeks out from the final build of WiX toolset v3.6. So let's talk about what we do expect for the next few weeks.

I'm borrowing a bit of Cookie Monster's personal anthem to acknowledge a mistake I think I made several years ago. If you've worked with the WiX Toolset for any amount of time, you've undoubtedly caught on to the naming scheme we use for tools.

Today we released WiX v3.6 RC. You may remember that less than two months ago we released "Release Candidate Zero". Well, we are back with fewer bugs than ever before (5) asking for you to download this release and tell us how WiX v3.6 is doing. At this point, the feature are all complete and we expect they just work. So what's left?

A name, or if you prefer identity, is a profoundly important concept in pretty much everything. In software deployment identities serve as the foundation for versioning and dependencies which are pretty much everything for us. In ancient Egyptian mythology, Isis was granted power over the all powerful sun god, Ra, when he told her his true name.

Today we released WiX v3.6 RC0. If you are on the WiX v3.6 Beta or you were waiting for Burn to become fundamentally stable or you are looking for VS 11 support, this is a great time to upgrade. Core scenarios work and we do not expect any further breaking changes. At the same time, we are still fixing most bugs that are filed. That means if you do hit an issue in RC0, there is a good chance we can get the fix in before locking down. Wondering what's left?

My interview with Carl Franklin and Richard Campbell at .NET Rocks went up yesterday. Like all interviews or public speaking gigs, I had some butterflies before the show. But when Carl Skype'd me the world just floated away and I on! The whole interview was tons of fun but there were a couple things that I thought went particularly well.


WiX toolset builds moving to Mondays.

Since the beginning, or at least as long as I can remember, WiX Toolset builds were released on Fridays. Friday seemed like as good a day as any. It was at the end of the week, so it would have whatever contributions were made that week. Plus everyone looks forward to Fridays. Well, starting this week we're moving the build to Monday.


Pondering a Manifesto.

Bob just sent me a link to the Redis Manifesto via Twitter. He's was supportive as I vented off some of this week's frustrations. After reading the link, I believe Bob is right. I need to write the WiX Toolset Manifesto.


The wixtoolset.org online.

It is with great pleasure that I announce the WiX toolset's new home is fully operational: http://wixtoolset.org. This site is now our central hub for information about the WiX toolset. We will consolidate the WiX content that makes sense and link to the WiX content hosted elsewhere. The most important feature back online right now is the weekly releases.


WiX v3.6 Beta released.

If I was a Microsoft executive I would start off by saying I'm super-excited to announce the release of the WiX v3.6 Beta. But I'm not. I'm just your friendly local WiX Toolset benevolent dictator saying that WiX v3.6 is looking pretty good and we'd like to try it out. While Wix36.exe downloads, let's talk a little bit about what's in WiX v3.6 Beta and what is not.


State of the WiX toolset, July 2011

It's been nine months since the last "State of the WiX toolset" blog post and six months since the WiX v3.5 release. Unlike last year we find ourselves focused on a single front, WiX v3.6. Let's take a moment and evaluate where we are and where we are going.


A case study for .wixlibs.

The Visual Studio setup is composed of over 30,000 source files that get compiled into over 250 MSI files. Needless to say it is a large code base. The problem is that a lot of the code was machine generated and is now very difficult to maintain. A few months ago, I started a large scale restructuring effort to improve the code and build process. I thought I'd share one of the key aspects in my restructuring effort.


Delay uploading WiX v3.6 to SF.net.

In the last few weeks, SourceForge apparently was attacked and they feared the passwords of all users were divulged. To protect everyone, SourceForge required all accounts to re-activate via a link sent through email or answering a secret question. This caught us off guard because we forgot the email address of the SF account used to manage the WiX SourceForge web site and releases page and there was no secret question. The result, WiX v3.6 builds are not being released.


WiX v3.5 released.

It is my pleasure to announce that WiX toolset v3.5 is now officially declared Production/Stable. The final build number is 3.5.2519.0.


WiX v3.5 Final Build.

WiX v3.5 escrow has been a bit bumpier than I would have liked. We started with the Thanksgiving Day build. Then we had the end of December build that seemed for sure to be the last one. In the end, we did one more build today. The changes were small so we're only going to sit on this build for a week or so. We're really down to the wire. You know what to do, right?

There is a property in Add/Remove Programs (called "Programs and Features" in Vista+ but setup developers in the know call it "ARP") that can specify the install location for your application. Like most properties in ARP, it's questionable what value InstallLocation provides. However, it's there and some things look for it and the Windows Installer provides a standard way to set it, so let's talk about how to do so with the WiX Toolset.

Today, Thanksgiving Day, we are declaring the WiX v3.5 in escrow. If you follow my twitter account, you saw this tweet yesterday. The WiX v3.5.2325.0 release is the first v3.5 build with zero open bugs. That pretty much defines done! So, what is next for v3.5?


Is WiX v3.5 ready? What about v3.6?

I posted this email to wix-users a while ago but the question keeps coming up: "Is it safe to use WiX v3.5?" The next question is always: "What about v3.6?" Interestingly, my answers about picking v3.5 and v3.6 (the WiX builds under development) are very different than my answers were for for WiX v3.0 and WiX v2.0 (when they were under development).

This morning we released WiX v3.5.2229.0 as the Release Candidate for WiX v3.5!

After five months of heads down coding on Burn in WiX v3.6, it is past time for me to take a deep breath and look around. A quick glance tells me that we are doing okay but we are late. The core contributors of the WiX Toolset are working hard but we are fragmented so progress is slow. Let's look at where we are at with WiX v3.5 and WiX v3.6 in detail.


Burn in the corporate environment.

A good question about Burn was raised in the comments on my blog entry about Burn yesterday. The tiny executable that downloads the bulk of the installation content is great when you want to install on your computer. However, if you need to distribute the installation to many machines, like most corporations do, downloading from the Internet is more expensive than downloading from a corporate server. Fortunately, we have a solution for this scenario.


Burn, baby. Burn.

This is the blog post I've been wanting to write for a couple years. The WiX Toolset finally installs via Burn in WiX v3.6. The install is ugly and buggy but it's functional. I would not recommend installing WiX v3.6 right now unless you're willing to dig into the source code to figure out what's going on. And there is a lot going on, let's take a look at some of the highlights.

Bob posted a blog entry how to use TortoiseHg to access the WiX source code on CodePlex. I thought the blog post was great but suffered from one fundamental flaw. It required you to do a whole bunch of mouse clicking. Here's how to get into the WiX Toolset source code using the command-line.

There was a small change made to the WiX Toolset recently that added dialogs to the WixUI library that are shown when patching. That part of the change was straight forward, the tricky part was that the dialog needed to support all the existing languages or the patch UI could come up in a different language (English) than the initial install.

Since it's launch in 2004, the WiX Toolset has been completely hosted on SourceForge. SourceForge is fine but feels a bit clunky and a little behind the times. About a year ago I started looking at alternatives since open source hosting platforms are now a dime a dozen. In the end, I didn't find a single platform that offered everything I wanted. However, CodePlex provides Mercurial and a much better file release system than SourceForge so I decided to use those for WiX.

This blog post about the Remember Property Pattern now lives as an article here.


Change of plans for WiX v3.5.

About a year ago we started WiX v3.5. At that time we decided on a new plan for WiX v3.0 that moved the Votive for Visual Studio 2010 and Burn features out of WiX v3.0 into WiX v3.5. The goal was for v3.0 to ship earlier. That worked out well because WiX v3.0 released last July.

Over the last week and a half, the Visual Studio team that contributes heavily to the WiX toolset put the finishing touches on Votive to support Visual Studio 2010 RC. Want to use WiX in VS2010 RC? Download the x86 or x64 Wix35 MSI from here: http://wix.sourceforge.net/releases/3.5.1419.0/.

Honestly, the TARGETDIR/SourceDir Directory element is something that we should have hidden from the developer using the WiX Toolset but didn't. Sorry. The truth of the matter is that the Windows Installer expects the Directory tree to always be rooted in a Directory row where the primary key (Directory/@Id) is "TARGETDIR" and the DefaultDir column (Directory/@Name) is "SourceDir".


Glimpses of life with WiX v4.0.

Believe it or not, I sometimes get questions about WiX v4.0. "Rob, is there going to be a WiX v4?" "Rob, what's going to be in WiX v4?" "Rob, when does WiX v4 start?" "Rob, when will WiX v4 be done?" Before answering, I always make sure that people understand that WiX v3.5 is our focus right now because it is important that we support for Visual Studio 2010 and get Burn "v1" done. Then I mention what I mentioned here yesterday, WiX v3.5 slipped from March to probably September.


Burn moves to a new foundation.

A week ago a very big accomplishment happened very quietly. The development team inside Microsoft responsible for creating the .NET Framework 4.0's (NETFX4) bootstrapper finished the initial transformation into the WiX Toolset's bootstrapper, Burn. Yes, you read that right. Burn will now be based on the same code that shipped the .NET Framework 4.0 to hundreds of thousands of Beta users.

I follow Rob Conery irregularly because of his work on Subsonic. His comments about Subsonic development were useful in a time when I was trying to wrap my head around MVP, IoC, DAL and DTO.


WiX v3.5 <3's Visual Studio 2010 Beta 2

Never before today had I considered adding support for emoticons to my blog engine but this blog post almost screams for it. You should read the title as "WiX v3.5 hearts VS2010 Beta 2". Yep, our friends in Visual Studio delivered fix after fix in Votive to ensure that the WiX Toolset now supports Visual Studio 2010 Beta2.

Recently there were reports that the WiX Toolset was breaking unit test projects in Visual Studio 2008. This was surprised us because we thought unit test projects were working fine when we shipped. Well, it turns out this time the bug wasn't in the WiX toolset.

File this tidbit under documented but cryptic and missing an error message. I was recently creating 32-bit and 64-bit MSIs using the WiX toolset. The very helpful -arch command line switch to candle made it easy to build for both architectures with the same codebase. Maybe a little too easy.


Burn packages, payloads and containers.

In my previous blog post where I introduced some of the features of Burn the question whether Burn would work as a single self extracting executable was asked a few times. The answer is, "Of course!" but there is actually more to it than that.


Let's talk about Burn.

A long while ago, Bob wrote a short blog entry about the WiX toolset's upcoming bootstrapper adoringly named Burn. We made some early progress back then but refocused our energy on finishing WiX v3.0 which recently released. Now I'm back to Burn which will release with WiX v3.5.

Now that the WiX v3 toolset is released, I thought I'd share a couple tips for those users upgrading from WiX v2. WiX v3 is obviously a major upgrade from WiX v2 and there are a few breaking changes as a result. Fortunately, WiX v3 ships with a tool to help with the code migration (WixCop.exe) and then you only need to understand one new concept (extensions).


WiX v3.0 released.

It is my pleasure to announce that WiX toolset v3.0 is now officially declared Production/Stable. The final build number is 3.0.5419.0. You can download it from here or here.

Remember last time when I mentioned that if you didn't hear me talking about WiX v3.0 that would be a good thing?

Below you will see an empty box. That is not a mistake.

I created the @wixtoolset Twitter account late last year. The account sat mostly dormant until two weeks ago when I started experimenting with posting to Twitter (tweeting?) from the command-line. After a couple tests, I integrated the experiment into the WiX toolset build process so every build makes a status update to the account. You can see an example here.

It was six weeks ago that a full blue moon graced my bug charts for the first time. Tonight it happened again but with half of the bugs. That right, tonight we hit 5 bugs and all of them are open against Votive.

Pretty quiet night tonight fixing bugs on the WiX toolset. That was pretty much expected since there aren't many bugs left.

Tonight was another good night for the WiX toolset. We're down one more bug from last week leaving us with 6 bugs.

I have to admit, this week I was worried that we weren't going to be able to meet last week's bug count for the WiX toolset.

Quiet night of bug fixing here.


WiX v3.x schedule, RTM and beyond.

Jenny and I invited Bob over for dinner the week before he moved east. He and I spent much of the time talking about new plans for the WiX toolset since Visual Studio decided to not ship it. I had a proposal and wanted to vet it with him. By the end of the evening Bob liked the idea so I ran it by the Visual Studio team. Candy worked up a full proposal and last week they agreed.

Whew. After a relatively easy bug night last week, getting under 10 bugs in the WiX toolset felt like a real effort tonight. The big changes we made in the last few weeks (like heat and language fallback support in MSBuild) are still regressing and a couple extension bugs caught us by surprise.

Ten. Not quite single digits but as close as you can get without actually being there. That's the bug count in the WiX toolset tonight. Fantastic effort across the board.


Open Source WiX toolset turns 5.

Five years ago today, the WiX toolset was released to SourceForge as the first Open Source project from Microsoft. Roughly five years before that, I wrote the first lines of the WiX toolset were written. That means for almost a decade, I've been leading the effort to create a set of tools that integrate seamlessly into development environments to create Windows Installer packages from a text based source format. Even though I have been spending a lot of time thinking about the next steps for the WiX toolset, I want spend today looking back.

Morale took a hit this week with the announcement that the WiX toolset will not be shipping in Visual Studio. Productivity was slightly affected but a couple noteworthy bugs in the WiX toolset were fixed. We also ended down one more bug at 21. Not bad for a pretty painful week.

It was almost two years ago when Visual Studio approached me about shipping the WiX toolset in Visual Studio. We built a plan that combined the efforts of program management, developers, testers, documentation and localization people from Visual Studio with the volunteer group to release the WiX toolset version 3.0 as part of Visual Studio 2010. We executed on that plan to deliver the WiX toolset as part of the Visual Studio 2010 CTP and were on track to deliver for Beta 1.

I skipped the progress report for the WiX toolset last week and had a couple people ask about the count. So I guess a couple people are finding this data useful. Anyway, the short answer is that the bug count is down from 26 two weeks ago but steady from last week at 22.

We had another good night of bug fixing in the WiX toolset. We started well above 30, with a couple more bugs in the MSI 5.0 implementation and some fallout from the large heat changes. The worst of those are fixed and we're back under 30 with 26 open bugs.

This was the week I was waiting for. Tonight we finally dropped the WiX toolset well under 30 bugs. Almost all of the bugs that have been "just about fixed" came in tonight and we killed double digit bugs.

It might not look like it but we made progress on WiX toolset bugs tonight. There is a fix inbound for the remaining candle and pyro bugs. The documentation bug is actually something on the MSDN side of things, I believe. Votive and DTF still are not seeing progress due to missing members. Net we're up 3 bugs from last week with 35 as the total.


Turtles all the way down.

Shared stories are an important part of any culture. We have our fair share of long running stories and jokes amongst the core WiX developers. Most of these stories have some connection to typical geek culture. One of my favorite is the story about the nature of the universe and all things WiX.

Again we started with a spike in WiX toolset bugs this week. I keep hoping we'll start some Thursday night with no new bugs from the week but we're clearly not there yet. Unfortunately, this week we picked up more bugs in our current weak spots, Votive and DTF. Anyway, it looks like we'll finish up this week with 32 bugs open.

Started with another small rise in bugs for the WiX toolset this week. With the effort tonight we're back under 30 bugs. On the upside the light bug was finally resolved but the AppSearch bug in candle continues to haunt us. Votive and DTF bugs continue inch up since the owners are out right now.

Last week I met with some PMs that work on the east coast. They fly over to the west coast to visit the Microsoft mothership every couple months. Our meeting was one of many face to face meetings they try to squish into a single week before flying home.


Release Candidate defined.

A week+ ago, I posted a blog entry noting that the WiX toolset was out of beta not in it. I also mentioned that we are now in the "release candidate" mode and provided a quick definition to differentiate it from "beta" mode. A few days later Steven Sinofsky posted a entire blog entry about Windows 7 entering the Release Candidate milestone. In typical Sinofsky-style, Steven posted a much longer definition of release candidate and placed it in context with the other typical milestones at Microsoft.


WiX v3.5 status or the lack thereof.

There was a comment on my WiX toolset bug count entry asking about the status of WiX v3.5 and more importantly the bootstrapper often referred to as Burn. The short answer is there is no status to report. Work on WiX v3.5 has not started in earnest because we are all focused on addressing the bugs in WiX v3.

We had another bug bounce this week in the WiX toolset but the bugs were more distributed this time (i.e. the bugs weren't all fallout from the IIS7 CustomAction changes). Unfortunately, we did not make as much progress as last week and ended up with one more bug total. That's definitely not the trend we want to be following but finding the bugs now is better than finding the bugs later.

We had quite a bug bounce this week. Most of the bugs were regressions from the last couple weeks of major work plus some triage by Bob and Candy through Votive bugs. Yet somehow we still managed to finish the night with a lower bug count than last week.


WiX toolset is out of beta not in it.

There was some confusion on December 5th when Bob provided highlights for the WiX toolset "beta exit" build. I saw a number of people declaring the WiX toolset finally "in beta". That's not quite right. The WiX toolset was in beta for all of last year as we worked through the feature set and quality bar. As 2008 came to a close it felt like WiX v3 was a solid improvement over WiX v2 and the quality markedly improved.


WiX toolset supports MSI 5.0.

Two weekends ago, Windows 7 beta builds were made available. That meant the new MSI SDK was available on MSDN with all the information about what's new in MSI 5.0.aspx). In turn, that meant we had some work to do to teach the WiX toolset some new tricks.


WiX v3 toolset end of the Beta imminent.

Last week Bob pushed the latest WiX v3 release to SourceForge. The original intention was to declare that drop as the final Beta build for WiX v3. However, I changed my mind for two reasons.


Geek humor: I am a duplicated bot.

Every once in a while something amusing happens on the wix-users mailing list that makes me chuckle. Sometimes, when they are short, I post them to my Twitter account. This morning I came across a new email to the mailing that started with "Hi Rob" which seemed a bit odd since there are hundreds of people on the list.

Qik is working on my phone again so I thought I'd try getting back on the video horse. I conned Bob into holding the phone for me. But, I was still nervous about starting.


Promoting from within.

For most people this isn't going to be a surprise and many may even ask what took so long. To be truthful the keys were granted a few weeks ago, I'm just finally getting around to blogging about it.


WiX weekly builds back on track.

I just received notification that this week's weekly build of the WiX toolset has just been released. Since SourceForge moved their servers from California to Chicago we've been having issues getting builds posted regularly.

One of the cool contributions Visual Studio is making to the WiX toolset is the attention of a technical writer, Martin. Improving the WiX documentation is a constant request so any help someone is willing to provide is much appreciated. Of course, when there is very little information about a particular feature then technical writers have nothing to work their word-smithing magic on. Martin pointed out one such area recently: .wixlibs.

Qik.com just hasn't been working out for me the last few weeks when I've wanted to record the WiX Working Group Wrap-up. So after multiple attempts with only 2 seconds to show for it each time I decided to try something different, Jing.

In my first qik, I mentioned that one of the things I was most excited about doing with Qik was a nightly "wrap-up" of the meetings on Thursday where the majority of work gets done on the WiX toolset.

An MSBuild debilitating bug was accidentally introduced in WiX v3.0.4206.0. We got a fix in later that day and I just pushed a new build, WiX v3.0.4207.0. In case you pulled down 4206 thinking you were getting much goodness, you didn't... 4207 is much better. &lt;smile/&gt; Sorry for the trouble.

I've been getting some great feedback about where people think we should take WiX v2 and WiX v3 next. It has me reconsidering some of my original short and medium term plans. I want to summarize the feedback so far and encourage others to comment if they have opinions as well.


Call it WiX v2 "SP1".

At the beginning of the year we declared the WiX v2 toolset stable. It was a great feeling to finally have something we could point people to when they asked for a WiX toolset that was under constant development. Back then I noted that we would release new drops of WiX v2 when bad enough bugs or big enough changes showed up to warrant it.

Back in early 2003, I was learning C# by rewriting WiX v1, which was tens of thousands of lines of VBScript, to create WiX v2. At the same time, Jason Ginchereau was experimenting with C# to create a managed library to interface with the Windows Installer API.

Someone asked recently how to use an ampersand (&amp;) in the Product Name for their .wxs file.


WiX v3 releases back on track.

Today I finally worked out the final issues blocking the latest release of the WiX toolset. There were several small bugs in the release batch files that just took time to run down. There is a fair bit of remaining clean up work for me to do but I am pretty sure that the worst has passed and weekly releases will be back on track.

I couldn't sleep tonight so I thought I'd just poke around online for a while. It turned out to be impossible to miss the fact that the Google App Engine was released tonight. We knew about this a little while ago but now we know it's name.

Today, four years ago the WiX toolset was released as the first Open Source project from Microsoft. Each year I like to take a moment and look around to see where we are. Just this week, I've found two random blog entries that make me believe we're being successful.


Quick WiX Status.

A head cold is totally wiping me out right now but I wanted to post a few quick notes about progress on the WiX toolset.

I am happy to declare that the WiX toolset is now at Development Status: 5 - Production/Stable. I have had a few people urging this upgrade in status for a while so about a week ago Joe and I did the required project maintenance to get the right bits (v2.0.5805.0) posted to the right places on SourceForge. Everything seems to be working so I'm finally comfortable posting publicly on my blog.

If you watch the front page of the WiX toolset's web site and get notifications for changes to the Windows Installer XML News on SourceForge and subscribe to this blog then this is the third time you've seen this content. I apologize for the message in triplicate but there seem to be a surprising number of people that seem to believe that the WiX toolset has been abandoned because there has not been an update to the WiX SourceForge page in a while.

As I noted about four weeks ago, WiX v3 is being moved to the .NET Framework 2.0. I originally hoped it would only take two or three nights of work to complete. Unfortunately, I was sick late last week and bailed out early so it took more like four nights of actual work. In any case, I think I finished the work tonight and just want to do a couple more test before I submit the code. Next week's release of the WiX toolset should now require the .NET Framework 2.0 as a minimum.


Visual Studio ships the WiX toolset.

Today Visual Studio released the Microsoft Visual Studio Team System code name "Rosario" November 2007 CTP. "Rosario" builds on Visual Studio Team System 2008 to enhance the collaboration between developers and needs of the business, plus increasing application quality and testing support. Now that you've heard the standard marketing pitch, I'm sure you are wondering why I am pointing to a random preview of functionality from the Visual Studio team.


WiX editors.

I've had a number of people ask me lately if there were any editors for the WiX toolset. This question surprised me because I thought the common WiX editors were easily found in one search query. Turns out neither query really covered the list of WiX editors that I often heard bandied about so I thought I'd write them down here.


WiX v3 on the road to .NET Framework 2.0.

A couple weeks ago I sent out a proposal to move the WiX v3 toolset to the .NET Framework 2.0. There wasn't much of a response but those that did were positive towards the proposal. I think most people just assumed that the WiX toolset required the .NET Framework 2.0 already. I also think that most developers have already adopted the 2.0 CLR so the dependency is no big deal. Finally, I also expect those developers still building on the .NET Framework 1.1 are probably using the WiX v2 toolset.

Derek made a guest appearance tonight at the weekly WiX toolset coding night. It was fun having him around again. We all caught up on the things that have happened in the last year or so. At the end of the night (about 1 AM), I dropped him off at his hotel downtown and drove back home.

If you follow the world of the Windows Installer at all, I'm sure you have noticed that the Windows Installer 4.5 Beta was made available last week.


SDD before TDD?

David Aiken has an interesting blog post about adopting TDD (Test Driven Development, for those of you have been living in a cave) for his next project. In said blog post, David suggests that before even writing tests that one should write the setup logic.


WiX toolset in SlickEdit 2007

I've never really used SlickEdit but had a few friends that just lived in the editor. Anyway, tonight I tripped across this blog entry that talks out some integration tricks you can do with .wxs files in SlickEdit. If you use SlickEdit and the WiX toolset you might check it out.


WiX in adolescence? I hope so...

I recently discovered that Marc Andreessen (yes, that Marc Andreessen) started blogging earlier this month. He's been on an amazing tear. Pretty much every single blog entry is worth reading from start to finish back to back. Based purely on his writing, I think it would be really fascinating to meet Marc in person.


WiX Jobs

I've been working my way through the book The Second Coming of Steve Jobs that Peter Torr left behind when he moved out (when I got married). The book is a bit sensationalistic so I'm constantly questioning how much of it is really real but there are parts that I find amusing. This particular passage sticks out in my mind that talks about Steve Jobs's amazing ability to sell.

Last week I added a somewhat cool feature to the WiX toolset (v3-only, of course). I call the feature "smart cabbing". I didn't actually invent the feature, somebody in Visual Studio came up with the idea for VS2003's setup (I think). The idea is actually quite simple, "If you have to put the same file into the same cabinet but with different names, do not duplicate the binary content."

When I first tripped across this blog entry about using Windows Work Flow to generate .wxs files, I thought it was written by Clemens Vasters. That surprised me because I imagined (having never actually met him) Clemens as being a guy that would grasp data models really well and that blog entry missed a very important distinction in the data model differences between work flow and the WiX toolset. Well, as you can see from the two links that the blog entry was written by a different Clemens.

A while ago, I saw this blog post about creating an uninstall shortcut using the WiX toolset. My first reaction was, "Uhh, I thought the Logo says you're not supposed to create uninstall shortcuts." But as the blog author noted clients are clients (especially if they are paying the bills). My second reaction to the blog entry was, "Jeez, those CustomActions don't seem like they should be necessary."


WiX v3 Roadmap Draft

Writing down the roadmap for the WiX toolset has been on my todo list for a very long time. Those who hang around me already know the roadmap but I always knew I needed to write it down to reach the world wide audience. With the final days of WiX v2 upon us, now is a great time to look at where we are going with the WiX v3 toolset.


WiX v2 entering escrow.

Last Thursday we (quietly) celebrated the 3rd anniversary of the WiX toolset. Throughout the night I was pounding on the last two WiX v2 bugs assigned to me. The fixes will show up this week's build (Friday morning). That leaves us with only one open v2 bug which has to do with some bizarre behavior of tallow on Vista.

Tonight is a momentous night for the volunteers who work on the WiX toolset. It was three years ago today that we released the WiX toolset to the world.


WiX v2 status update.

About 3 months ago, I noted that I was focused on the drive to a WiX v2 toolset final release.


WiX online in Japan.

Last week was the MVP Summit. At least I think it was last week. Things have passed in quite a blur lately. Anyway, I was visited by three MVPs from Japan who wanted to swing by to say "Hi" and have their picture taken with me (yes, the walls in my office are blue).


WiX Tricks: I love that logo.

A little while ago I blogged about the WiX toolset making an appearance in MSDN Magazine. Yesterday, a friend of mine pointed me to the home page of MSDN.

MSDN WiX Tricks

A WiX Night at the Movies

I just got home from the movie theater. Tonight several of the guys that regularly work on the WiX toolset (Joe, Peter, Mike, myself and Reid even showed up) skipped out early (21:50) on coding to see 300. It is something of a tradition for teams at Microsoft to occasionally go out and do something as a "morale event". 300 seemed like a perfect movie to go see since it was pretty clear none of our significant others were interested in going.

This is a topic that I planned to cover a long time ago. Later I realized that it takes quite a bit of explanation and code to demonstrate why advertising COM information is such a bad idea. Recently, I've had a number of people all ask about this topic again, so I thought I'd sit down for a few hours and put the example together.


WiX at TechEd 2007? Survey says???

Earlier this year, there were a couple people inside Visual Studio pushing for a breakout session and Birds of a Feather session for the WiX toolset at TechEd 2007. They approached me to ask if I'd be willing to present.

Last one for the night then I'm going to go drop dead in bed for a few hours. Today, I met with David Aiken about the possibility of doing a presentation on the WiX toolset at his Designed for Operations Workshop.

The Windows Installer team blog has a picture laden blog entry that explains why primary keys in an MSI database must not change from build to build. I suggest taking a read through it because it provides a nice example of why I caution people when they are writing tools to autogenerate WiX source files. Those identifiers are not trivial pieces of data.

A week ago at almost this same time in the morning, I was crafting my rebuttal to Stuart Yeates's blog entry titled "What is open source anyway?". A few days later, Jenny was catching up on her blog reading (which I think only includes my blog) and said to me, "Wow, you were really harsh on Stuart." Her reaction surprised me so I went back and reread my rebuttal. I decided Jenny was right.

While I was cleaning out some of the the latest weekly releases of the WiX toolset, I browsed around for the recent stuff talking about WiX. In my search, I came across this blog entry titled "What is open source anyway?" by Stuart Yeates. Go read it completely cause I'm going to chop it up here.


Tired with two bugs.

I'm tired.


The WiX toolset makes MSDN Magazine.

I just noticed that Sayed Hashimi's article about MSBuild and the WiX toolset in the March 2007 issue of MSDN Magazine.


Drive to a WiX v2 toolset final release.

Tonight the core WiX toolset virtual team made a concerted effort to reduce the number of open WiX v2 bugs.


Response to my WiXAware Introduction.

More detail behind my negative view of InstallAware.

The Good, the Bad and the Unknown after my first interaction with InstallAware.


How the WiX toolset got its name.

This morning someone asked me how the WiX toolset got its name. It isn't a terribly long story so I thought I'd write it down quickly.

I have some philosophies about how to build software and setup for software that I've never posted here. So, I thought I'd share those philosophies today.

The Windows Installer Xml (WiX) toolset (pronounced "wicks toolset") appears to have finished propagating around the SourceForge.net CVS servers, so I can finally start writing this blog entry.