NuGet Extensions

2016/11/17

no comments

Click Dimensions open source the first preview of NuGet Extensions tool which is used internally for managing projects which deployed as NuGet.

The development process of solution which is using NuGet of internal component is not easy when Ii t come to debug and upgrade.

Consider the case when you’re debugging the application and you find out that there is a bug on the infrastructure.

In case when the infrastructure is consume via NuGet you will have to:

– Fix the bug.

– Pack new version of the infrastructure (NuGet).

– Update the application.

– Re-test it with the new version.

This process is very time consuming and it get longer when you’re having deep hierarchic of NuGet references.

The tool is currently having the following features:

Convert NuGet reference into Project reference (for debug experience).

Convert the Project reference (from the previous step) back into NuGet reference.

Upgrade the version of the NuGet (and updating the project within the solution with the new version).

NuGet, Extension, Tool, Project Reference

 

We still have to improve the existing feature and add new ones, but it’s operating today and help us a lot with our development process.

Currently the initial NuGet package should be create manually (using NuGet Package Explorer).

We have some assumption about the NuGet like:

– Each NuGet we create is target single component (this way we can map it to single project).

– We ignore NuGet that don’t map to project under the solution.

– Upgrade NuGet rely on the assembly version

 

This tool deployed via VSIX (Visual Studio Extension) and it will react to right click on the solution.

 

Credits:

Most of the current work done by Roi Yehoshua.

The design rely on previous tool I was doing along with Avi Avni.

Add comment
facebook linkedin twitter email

Leave a Reply

Your email address will not be published.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*