MyGet Blog

Package management made easier!


MyGet's NuGet and NPM news from the community (February 2017)

Here we are again with a new episode of MyGet's NuGet and NPM news from the community! We will look at some interesting blog posts and articles found on the Internet, curated by our MyGet founders Xavier and Maarten. Follow @MyGetTeam on Twitter for more!

NuGet news

The .NET team announced .NET Core, .NET Native and NuGet Updates in VS 2017 RC. Quite a few changes, most notably the improvements in NuGet to use the new .csproj  format and package references therein. And early in February, NuGet 4.0 RC was released as well.

More news from Redmond: now also supports scoped API keys, just like we do. Where on MyGet scope is per feed, NuGet came up with a per-package model. Do check it out!

Will this be the new way of distributing project templates? As NuGet packages? Muhammad Rehan Saeed found a new element that can be used in a .nuspec  and demonstrates Custom Project Templates Using dotnet new.

Andrey Akinshin, a developer on JetBrains' Rider cross-platform .NET IDE wrote an in-depth article on how they are making the Rider NuGet client fast.

Puneet Ghanshani describes a way of creating an inventory of packages a solution uses by working with the NuGet.Core  package. Would be great to see something like this as a Visual Studio extension!

Scott Addie wrote a great article, Migration to ASP.NET Core, where he walks through the various considerations and strategies of migrating a .NET codebase to .NET Core. The article covers the various frameworks, targets, the portability analyzer, and more!

Just started looking at thedotnet command line tool? Steve Smith explains how to add a Nuget Package Using dotnet add.

Managing the life cycle of PowerShell module assets in your Azure Automation accounts can be challenging. Not anymore! Tao Yang explains how you can leverage MyGet to its full extent to make this tedious task a breeze and take full control of your very own PowerShell Gallery, on MyGet.

NPM news

A fresh npm@4.2.0 landed, featuring improved search - faster and more relevant. Debug logs are now saved in the _cache  folder, making it easier to clean them up.

Node.js itself also dropped a new version - v7.5.0. Ehm no, v7.6.0. Noteworthy changes are an update of openssl (1.0.2k), the ability to use system CA's (yes!) and a number of bugfixes.

NPM Vet is a new tool that allows us to to quickly visualise the difference between versions defined in our package.json  and versions installed in the node_modules  folder. In other words: it helps us check for dependency mismatches.

Happy packaging!

MyGet webhook for Microsoft Teams / Office 365 Groups

It's been possible for a while to let MyGet notify external services through webhooks whenever an event happens on our feeds, such as a package added/deleted. Today, we've added support for Microsoft Teams / Office 365 Groups. We can use it to have MyGet post events to a Microsoft Teams room or Office 365 group - increasing visibility of changes on the MyGet feed with members of our team.

How to configure?

To configure a MyGet webhook for Microsoft Teams / Office 365 Groups, head over to the team (or group) and configure a new Incoming Webhook connector. The name can be anything we want, and the icon, too. A nice square MyGet logo is available from our media repository. Once we save the webhook, we can copy its URL - we'll need this one on the MyGet side of things!

In MyGet, we can add a new Microsoft Teams webhook under the feed's Web hooks tab. All we need to do here is paste the URL we just copied from the Microsoft Teams / Office 365 side, pick the events we're interested in, and click Add.

From now on, when one of the selected events happen in MyGet, we will get notified of this.

Happy packaging!

Maven packages just arrived on MyGet

Let's go straight to the meat: we just shipped Maven support! If you're packaging .jar and .war (or Android .aar) and have a pom.xml to go with them, you can now add these to your MyGet feeds (or should we start calling them repositories).

Maven support is enabled on all MyGet accounts - starting today, you access to the Maven features described in our documentation.

Which features are available?

We currently support almost all features we have available for other package managers: uploading your own packages (via the web UI as well as via mvn or Gradle) and adding packages from upstream repositories like Maven Central. Packages can then be consumed in IntelliJ IDEA or Eclipse, using Maven or Gradle. It's possible to proxy upstream repositories into your MyGet feed. You can manage permissions and users, inspect package licenses and vulnerabilities, ...

A Maven repository on MyGet can also be used as a staging area: packages and snapshots can be published on MyGet, and once they are stable, pushed upstream to another repository out there - similar to what is possible for NuGet and NPM.

We're looking into supporting build services as well (theoretically you can already create a build.bat and invoke `mvn deploy` from it), but we'd love your feedback on what the perfect convention-based build for Maven/Gradle would look like.

Awesome! How do I get started?

Quite easy: head over to, sign in (or register) and create a feed. Our getting started documentation has some more details on how to upload your first Maven package to MyGet.

We're really excited about introducing Maven support on MyGet! You can now use MyGet to securely host and collaborate on NuGet, symbols and sources, Chocolatey, PowerShell, NPM, Bower, Maven and VSIX packages.

Happy packaging!