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.
WiX v2 SP1
Original Plan (described in detail here):
- Add MSI 4.5 support. MSI 4.5 was just released so we can add support to WiX v2 for it.
- Revert MergeMod.dll. Recently discovered WiX v2 shipped with a broken MergeMod.dll, so we need to go back to an older one that works correctly.
- Fix SQL CustomAction. Need to get the fix for a crashing bug out there widely.
Suggested New Plan:
- Revert MergeMod.dll. Simple fix already tested in WiX v3.
- Fix SQL CustomAction. Simple fix already tested in WiX v3 extensively.
Reason:
It is pretty clear that most people would rather see a stable WiX v3 released than have a lot of work done on WiX v2. The MSI 4.5 support will be a fair bit of work porting back the existing support in WiX v3 to fit WiX v2. More pointedly, I haven't heard anyone asking for us to do this. The other two bug fixes are trivial to port back and have already had extensive testing in WiX v3 so I think that makes an update of WiX v2 to fix some bad bugs really easy.
The question to you is whether it is important to have MSI 4.5 support in WiX v2? WiX v3 already has support and time spent doing the MSI 4.5 work in WiX v2 will be time away from finishing WiX v3.
WiX v3
Original Plan (described in detail here):
- Core Toolset Patching + Language Enhancements. These are basically done and we're just fixing bugs.
- Extension stabilization + more. The version for the extensions has been frozen and we have a few more Custom Actions than WiX v2.
- WiX Bootstrapper. Project not yet started to provide chaining and external UI handler.
- Votive MSBuild Integration + designer framework. Votive is far more stable but no closer to providing designers.
- ClickThrough. ClickThrough is currently not being developed.
- Deployment Tools Foundation. DTF was a late add but has been getting a lot of attention lately and stabilizing quickly.
Suggested New Plan:
- Core Toolset Patching + Language Enhancements. Finish off all of the bugs.
- Extension stabilization + more. Call the current list of extensions good for WiX v3 and finish off all of the bugs.
- Votive MSBuild Integration. Cut the designer support and just finish off all the bugs.
- Deployment Tools Foundation. Finish off all of the bugs.
Reason:
As noted above, it is pretty clear that most people want a stable WiX v3 released. The suggested plan above cuts all of the "long pole" features and allows us to focus on finishing WiX v3. The hardest cut for me is the bootstrapper but I have to admit that it still has quite a way to go before being done. Theoretically, focusing on the bugs would allow us to become very stable before the end of the year and let the toolset bake for a few months next year before declaring it stable.
The question to you is whether getting a stable WiX v3 earlier is worth postponing those features for the next version? I didn't have anything on the feature list for WiX v4 so bootstrapping, Votive enhancements and ClickThrough could easily be the next focus.
Comments? Questions? Your feedback is much appreciated.
RobMensching.com LLC
21 Comments
Comment by Philip Stears on Friday, June 06, 2008 1:52 AM
Comment by Rob Mensching on Friday, June 06, 2008 1:55 AM
Comment by Marais van Zyl on Friday, June 06, 2008 2:11 AM
Comment by Philip Stears on Friday, June 06, 2008 2:33 AM
Comment by Kenny Kerr on Friday, June 06, 2008 3:30 AM
Comment by Neil Sleightholm on Friday, June 06, 2008 4:59 AM
Comment by John on Friday, June 06, 2008 5:14 AM
I agree 100% on dropping MSI 4.5 support from WiX 2.0 SP1. I'm using WiX 2 in a production environment, and stability is what I value most. Please just fix serious bugs, and save the new features for WiX 3 or 4.
I would would be even more aggressive about trimming features from WiX 3 in order to reach stability. At the risk of sounding pissy and ungrateful for a free tool, let me suggest two things:
(1) Stop worrying about new features to attract new users, and focus on finishing what you've got. So what if WiX doesn't come with a bootstrapper? That hasn't stopped your current user base - we've all figured something out. Save it for the next version.
(2) I'm concerned that too much is being bundled into WiX, which ends up holding the entire package hostage to it's weakest link. I'd rather see "WiX" just be the core toolset, and have a group of separate projects that add value to it. Those projects could each evolve and release on their own schedule. Frankly, this separation is more the "Open Source Way", and what WiX is doing is the "Visual Studio Way". The Visual Studio Way works for Visual Studio because Microsoft has commercial pressure to do major releases on a somewhat predictable schedule. DevDiv is forced to make hard choices and ship product. Open source projects lack that pressure, and you can end up "in beta" for years. This is hardly unique to WiX, but WiX is a really good example of the problem.
Comment by Reggie on Friday, June 06, 2008 5:47 AM
Good plan. Yes, a boot strapper in v3 will speed adoption but what will really speed adoption is removal of the beta tag.
In any case, as I mentioned before, please don't stick with the SP1 moniker for v2. Just rev it normally with your changes. Fight the Microsoftiness! Fight it! :)
Comment by Albert van Peppen on Friday, June 06, 2008 6:03 AM
And I support the release of a stable version of WiX v3.0 as soon as possible;
Currently I need to support 2 versions of my installation sets; one stable version for WiX v2 and one version in WiX v3 which has more features (since DTF life gets easier ;)), better support for Vista an Win2K8 and alike.
So I vote for moving all unfinished stuff, which in not important, in WiX v3 to v3.5 or v4.
BTW Why create a WiX v2 SP1 and not just WiX v2.1 or WiX v2.5 ??
Comment by Christopher Painter on Friday, June 06, 2008 7:05 AM
Now I do wonder if perhaps to many things are combined into a single distribution release. Consider:
DTF: Not everyone uses managed custom actions and not everyone who uses it will use WiX.
Bootstrappers: Same thing as DTF. Many people just ship MSI's and many people are using tools that lack a good bootstrapper and are in need of this. EXE/MSI can be somewhat layered. At previous jobs I've set up the system design so that bootstrappers were a downstream build of MSI builds which of course can be a downstream build of MSM/Library builds.
Votive: Same. Not everyone uses Visual Studio integration, and with companies like InstallAware ( WiXAware ) consuming WiX, they don't use it either. I know in talking to Sinan that they are staying with v2 until v3 is out of beta.
So I can't help wonder if WiX truely was `core` and seperated these three things out ( and maybe others?), would we be able to ship WiX v3 faster and then ship the other components when they are ready.
Comment by Neil on Friday, June 06, 2008 7:14 AM
Comment by Mike on Friday, June 06, 2008 9:49 AM
Get what you have in the can done before adding new stuff to the can.
Comment by David on Saturday, June 07, 2008 12:38 PM
Out of all the other features you're suggesting to drop from v3, the bootstrapper would be the most useful.
Comment by Mike Dillamore on Saturday, June 07, 2008 4:18 PM
Comment by Richard J Foster on Monday, June 09, 2008 4:54 AM
Comment by Edward Forgacs on Tuesday, June 10, 2008 8:19 AM
Comment by dB. on Thursday, June 12, 2008 5:53 AM
Comment by Adam Hearn on Friday, June 20, 2008 12:15 AM
I'd like to see progress on ClickThrough as it sounds as though it will be the solution to some of the issues when deploying applications using ClickOnce (or shall I say, those features not available when compared to MSI deployment). Would it be possible to see any early releases of ClickOnce or is there simply nothing available as yet?
Comment by CS on Monday, June 23, 2008 11:18 PM
Comment by Frantic Freddy on Tuesday, July 08, 2008 5:30 PM
A stable V3 will have my "medium"-sized software development boutique jumping all over it. An official bootstrapper, however, would be a plus!
You, sir, have got what it takes.
Comment by Colin Bowern on Sunday, August 17, 2008 9:16 AM
Release a stable v3 and push new features to v4.