At the Fall 2010 DevConnections keynote, Scott Guthrie demo’d NuGet (formally Nupack). After seeing how easy NuGet makes it to install project references and resolve dependencies, I had to try it!
After installing CTP1 of NuGet and installing a bunch of packages, I found out I needed the latest version (the 10-26-2010 build) in order to install some of the packages I wanted. Well, between CTP1 and the 10-26-2010 build, the NuSpec file format has changed slightly, making packages created with CTP1 and the 10-26-2010 build incompatible.
I decided to pop open a .nupkg (.nupkg the file extension of a NuGet package) package file using 7-Zip (a .nupkg file is really just a .zip file). Inside I saw a .nuspec file.
Opening up the .nuspec file reveals its an xml file. After comparing a CTP1 and a 10-26-2010 build version of a .nuspec file I discovered the only difference is an xml namespace reference.
CTP 1 version of a .nuspec file:
<package>
<metadata>
...
10-26-2010 build version of a .nuspec file:
<package xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<metadata xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
It took a few minutes to update all my .nupkg files to the new format and now everything works again!