DEV Community 👩‍💻👨‍💻

Shayne Boyer for .NET

Posted on • Originally published at tattoocoder.com on

Using global tool "dotnet outdated" to check for the latest NuGet package updates

Using global tool

Just recently the .NET Core June 2018 Update dropped and the ASP.NET Workshop I had just set up for CI/CD build was in need of an update to 2.1.1 (Release Notes).

Looking through all of the save-points there are and of course the main /src, the challenge is to know what NuGet packages have changed and what versions are the latest etc., to be updated.

That is where a great .NET global tool, dotnet-outdated comes in to play.

Install the tool using the .NET CLI - dotnet tool install --global dotnet-outdated, then I can either be at the solution(.sln) level or project(.csproj) level and type dotnet outdated.

Using global tool

The output shows each NuGet package, the current version used and the latest version. You have an option to pass -pr if you'd like to look for Pre-Release versions too.

Another nice option is the -vl or Version Lock option, which allows for locking on Major or Minor when checking for outdated packages.

Updating each of the projects was very fast using the defaults, making the changes to the *.csproj files and then having the CI/CD process do its magic upon commit.

This is another great example of where .NET global tools can make the experience better. Would love to see this tool give an option for auto-updating. It is open source at https://github.com/jerriep/dotnet-outdated.

Top comments (1)

Collapse
 
rafalpienkowski profile image
Rafal Pienkowski

Nice. It seems to be a great tool. I'm sure I'll use it in the nearest Future. Cheers.

Timeless DEV post...

How to write a kickass README

Arguably the single most important piece of documentation for any open source project is the README. A good README not only informs people what the project does and who it is for but also how they use and contribute to it.

If you write a README without sufficient explanation of what your project does or how people can use it then it pretty much defeats the purpose of being open source as other developers are less likely to engage with or contribute towards it.