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.

Anyway, tonight Bob and I started the process of going through all the tools that still build for the 1.1 CLR (candle, light, dark, heat, pyro, melt, wix.dll, almost all of the extensions, basically everything <smile/>) and converting their NAnt .build files into MSBuild .csproj files. Technically speaking we could just continue to NAnt but I get continued requests to use MSBuild (everyone has their reasons, the most common being that VS natively understands MSBuild projects) so I figured now would be a good time to do the switch.

Of course, there are some tricky things we do in the WiX toolset (like removing the insignificant white space and comments from XML files before embedding them into an assembly) that are turning out to be interesting exercises to execute in MSBuild. A long while ago, Justin created a bunch of MSBuild tasks for many of the things we needed to do. Unfortunately, tonight we learned a couple of them didn't work. Figures that Justin wouldn't show up tonight as well. <smile/>

So progress is underway. I expect it'll be a couple a another week or three to get done with the holidays coming up. We basically have to do the whole move at one time once we start with wix.dll, since everything is dependent on that assembly. I'll send out more updates when we have them.

 

posted @ Thursday, November 08, 2007 11:42 PM

Print

Comments on this entry:

# re: WiX v3 on the road to .NET Framework 2.0.

Left by Simon at 11/9/2007 3:11 AM

Any particular msbuild custom tasks you are still lacking?
I might be able to contribute if so ...

And yes, switching WiX3 build system to .NET 2 and msbuild is IMO the right thing to do.

 re: WiX v3 on the road to .NET Framework 2.0.

Left by Mike Dimmick at 11/9/2007 3:44 AM

FlattenXml is an EXE - I don't quite see the problem? Or are you having trouble getting FlattenXml to build? I don't quite see how because as of 3.0.3419 at least, MSBuild is already being used to build FlattenXml.exe!

# re: WiX v3 on the road to .NET Framework 2.0.

Left by Christopher Painter at 11/9/2007 6:21 AM

Just as in installs, anytime you can remove a development and build dependency, it's a good thing to do.

Personally I think TFS rocks and I'd be very interested in seeing how WiX would look on CodePlex.

 re: WiX v3 on the road to .NET Framework 2.0.

Left by Mike Green at 11/9/2007 11:13 PM

As the .NET Framework 3.5 will be available before the end of this month (http://www.microsoft.com/presspass/press/2007/nov07/11-05TechEdDevelopersPR.mspx), I suggest making the switch to that version instead.

 re: WiX v3 on the road to .NET Framework 2.0.

Left by Mike Green at 11/9/2007 11:56 PM

By the way, the comment form on this blog works fine in ‘Fixed Layout’. If you switch to ‘Elastic Layout’, the input fields of the form become separated from their descriptions. Then it is not possible to tell which field is the Name, Email or Website input field.

 re: WiX v3 on the road to .NET Framework 2.0.

Left by Mike Green at 11/19/2007 9:19 AM

I realise today that the .NET Framework 3.5 is similar to the .NET Framework 3.0 in that it extends the .NET Framework 2.0 rather than being an alternative, side-by-side implementation. Therefore, my suggestion of moving to the .NET Framework 3.5 probably doesn’t have much meaning within the context of WiX. It is probably better to stick with the idea of simply moving to the .NET Framework 2.0, as originally planned.

Your comment:



 (will not be displayed)


 
 
 
Please add 3 and 1 and type the answer here:
 

Live Comment Preview: