NuGet CTP 2 Released!

nuget, code 0 comments suggest edit

My team has been hard at work the past few weeks cranking out code and today we are releasing the second preview of NuGet (which you may have heard referred to as NuPack in the past, but was renamed for CTP 2 by the community). If you’re not familiar with what NuGet is, please read my introductory blog post on the topic.

For a detailed list of what changed, check out the NuGet Release Notes.

To see NuGet in action, watch the talk that Scott Hanselman’s gave at the Professional Developer’s Conference which was the highest rated talk. You can watch it online or download it in HD.

How do I get it?

There are three ways to get NuGet CTP 2.

Via MVC 3

NuGet CTP 2 is included as part of the ASP.NET MVC 3 Release Candidate installation (install via Web PI or download the standalone installer) . So when you install ASP.NET MVC 3 RC, you’ll have NuGet installed.

If you want to try out NuGet without installing ASP.NET MVC 3 RC, feel free to install it via the Visual Studio Extension Gallery.


As with all of our releases, we also make the download available on our CodePlex website.

What’s new?

As the release notes point out, we’ve made a lot of improvements. Some of the big ones are changes to the NuSpec package format, so if you have any old .nupkg files laying around, you’ll need to build them with the new CTP 2 NuGet.exe command line tool.

But to be nice, we already updated all the packages in the temporary feed which is at a new location now, so you won’t need to do that. But if you’re building new packages, be sure to update your copy of Nuget.exe.

The NuSpec format now includes two new fields you should take advantage of if you are creating packages:

  • The iconUrl field specifies the URL for a 32x32 png icon that shows up next to your package entry within the Add Package Dialog. Be sure to set that to distinguish your package.
  • The projectUrl field points to a web page that provides more information about your package.

Another big change we made is that the package feed is now an Open Data Protocol (OData) Service Endpoint. This makes it easy for clients to write  arbitrary queries using LINQ against an IQueryable interface which is automatically translated to the proper query URL. For example, to see the first 10 packages that start with “N”:$filter=startswith(Id,’N’) eq true&$top=10

Also, when using the Powershell based Package Manager Console, be sure to note that we renamed the Add-Package command to Install-Package and the Remove-Package command to Uninstall-Package. We felt the new names conveyed the right semantics.

How’s things?

So far, the project has been a lot of fun to work on, in large part due to the enthusiasm and excitement that we’ve seen from the community. As I mentioned in the past, this is truly an Open Source project and we’ve had quite a few community code contributions.

Of course, we still have plenty of items up for grabs if you’re looking for something to work on.


One cool thing we’ve done is integrated the use of ReviewBoard for doing code reviews into our process. For information on that, check out our code review instructions. Our review board is currently hosted at but that domain name will change soon.

Continuous Integration

For those of you who like life in the fast lane, we do have a Team City based Continuous Integration (CI) server hosted at You can get daily builds compiled directly from our source tree. So for those of you who knew about the build server, you would have been playing with the CTP 2 for a while now. Winking

What’s next?

Well our next release is going to be NuGet version 1.0 RTM. A lot of our focus for this iteration will be on applying some spit and polish as well as integration work on our sister project, Gallery Server.

The Gallery Server project is building what will become the official gallery for NuGet (as well as for Orchard modules and other types of galleries). It’s being developed as an Open Source project as well so that anyone can take the source and host their own galleries.

Once the gallery server is completed and hosted, we’ll start to transition from our current temporary feed over to the gallery server. We’ll leave the temporary feed up for a while to allow people time to transition over to whatever the final official gallery location ends up at.

At this point, if you haven’t tried NuGet, give it a try. If you have tried it, let us know what you think. I hope you enjoy using it, I know I do. Smile

Found a typo or error? Suggest an edit! If accepted, your contribution is listed automatically here.



15 responses

  1. Avatar for Paul Cox
    Paul Cox November 8th, 2010

    Can NuGet be used to manage project dependencies other than .NET libraries? For instance, in MVC projects it's hard to keep track of jQuery plugins.

  2. Avatar for Will
    Will November 8th, 2010

    Dunno if this happened to anybody else, but when I installed via the extension manager the vsix installer executable started freaking out, recursively spawning another process. Had to kill the process tree a few times until it actually killed the leading edge of the tree. I'd guess it was a fluke, but it was definitely weird.

  3. Avatar for haacked
    haacked November 8th, 2010

    @Paul, yes! We have jQuery packages in NuGet.

  4. Avatar for Gregor Suttie
    Gregor Suttie November 9th, 2010

    Getting it crashes VS 2010 ;o(

  5. Avatar for AndreVianna
    AndreVianna November 9th, 2010

    NuGet CTP 2 not working in VS2010... Keep receiving the following error:

    PM> Install-Package SQLCE.EntityFramework
    Install-Package : Object reference not set to an instance of an object.
    At line:1 char:16
    + Install-Package <<<< SQLCE.EntityFramework
    + CategoryInfo : NotSpecified: (:) [Install-Package], NullReferenceException
    + FullyQualifiedErrorId : NuGet.VisualStudio.Cmdlets.InstallPackageCmdlet

    How can I fix it? Or How can I revert to last version?

  6. Avatar for AndreVianna
    AndreVianna November 9th, 2010

    I'm also not getting intellisense...

  7. Avatar for Florim Maxhuni
    Florim Maxhuni November 9th, 2010

    I also hawe .
    Install-Package SNAP.StructureMap
    Install-Package : Object reference not set to an instance of an object.
    At line:1 char:16
    + Install-Package <<<< SNAP.StructureMap
    + CategoryInfo : NotSpecified: (:) [Install-Package], NullReferenceException
    + FullyQualifiedErrorId : NuGet.VisualStudio.Cmdlets.InstallPackageCmdlet
    Other version it whas OK
    Sorry for my english

  8. Avatar for Ben Foster
    Ben Foster November 9th, 2010

    We are also getting the "object reference not set to an instance..." error using both the GUI and Shell

  9. Avatar for Goran Gligorin
    Goran Gligorin November 9th, 2010

    I'm also getting the same error as people above.
    "Install-Package : Object reference not set to an instance of an object."

  10. Avatar for Will
    Will November 10th, 2010

    Well, I'm still having the issue where the vsix installer executable keeps recursively spawning a new instance of itself. I can't install the update because of this. Not sure what's going on.
    As far as Intellisense is concerned, isn't it limited to hitting tab to get statement completion?

  11. Avatar for lyphtec
    lyphtec November 10th, 2010

    Is there a way to get this working when using a proxy server? The List-Package command now gives me a proxy authentication error message. It used to work in the previous build?

  12. Avatar for Leonid
    Leonid November 10th, 2010

    I'm getting Null reference exeption (object not set...) after updated to MVC 3 RC. On both command line ang GUI.
    It was working on previous version (MVC 3 Beta) using add-package command.
    Please help.

  13. Avatar for Agha
    Agha November 11th, 2010

    Not getting intellisense for Package Manager console after installing MVC RC

  14. Avatar for Angel &quot;Java&quot; Lopez
    Angel &quot;Java&quot; Lopez November 17th, 2010

    I have the same problem:
    PM> Install-Package elmah
    Install-Package : Object reference not set to an instance of an object.
    At line:1 char:16
    + Install-Package <<<< elmah
    + CategoryInfo : NotSpecified: (:) [Install-Package], NullReferenceException
    + FullyQualifiedErrorId : NuGet.VisualStudio.Cmdlets.InstallPackageCmdlet

    Any cue/info?

  15. Avatar for bennyb
    bennyb November 23rd, 2010

    Why doesn't NuGet filter packages by .NET Version minimum requirements?