{"id":45285,"date":"2018-07-09T22:51:22","date_gmt":"2018-07-10T05:51:22","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/devops\/?p=45285"},"modified":"2019-02-14T15:48:50","modified_gmt":"2019-02-14T23:48:50","slug":"universal-packages-bring-large-generic-artifact-management-to-vsts","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/devops\/universal-packages-bring-large-generic-artifact-management-to-vsts\/","title":{"rendered":"Universal Packages bring large, generic artifact management to VSTS"},"content":{"rendered":"<p>Until now, <a href=\"https:\/\/visualstudio.microsoft.com\/team-services\/package-management\/\">Package Management<\/a>\u00a0has hosted packages that are part of a development ecosystem: <a href=\"https:\/\/www.nuget.org\/\">NuGet<\/a> packages for <a href=\"https:\/\/www.microsoft.com\/net\">.NET development<\/a>, <a href=\"https:\/\/www.npmjs.com\/\">npm<\/a> packages for <a href=\"https:\/\/nodejs.org\/en\/\">Node.js<\/a>\u00a0and web frontend development, and <a href=\"http:\/\/maven.apache.org\/\">Maven<\/a> packages for <a href=\"https:\/\/www.java.com\/en\/\">Java<\/a> development. We&#8217;re also continuing to expand our support for new development ecosystem, with support for <a href=\"https:\/\/www.python.org\/\">Python&#8217;s<\/a> <a href=\"https:\/\/pypi.org\/\">PyPI<\/a> packages and more in the coming months.<\/p>\n<p>However, we&#8217;ve also seen an unmet need in the market for what we call &#8220;a versioned bunch of files&#8221;. This might be a tool, a build drop, some AI training data, test data, or pretty much any fileset you can imagine. To meet that need, I&#8217;m excited to introduce our new\u00a0<strong>Universal Packages.\u00a0<\/strong>These packages are a lightweight, easy-to-use, and efficient way to transfer around a file or set of files, without the overhead of a traditional package manager with dependency management and other such features.<\/p>\n<h2>Lightweight and efficient<\/h2>\n<p>Universal Packages are designed to be a very minimal layer on top of a cloud blob storage provider. They provide a few key benefits:<\/p>\n<ul>\n<li>Universal Packages version files together as a set, so you can download that version later and not worry about individual files having been overwritten by a later publish<\/li>\n<li>Universal Packages provide client- and server-side deduplication, which can substantially reduce the network traffic you&#8217;re using to move files around<\/li>\n<li>Universal Packages are published and downloaded through the <a href=\"https:\/\/docs.microsoft.com\/en-us\/cli\/vsts\/overview?view=vsts-cli-latest\">VSTS CLI<\/a>, so you can stay in your shell and easily access tools and other files<\/li>\n<li>Universal Packages are managed as part of <a href=\"https:\/\/docs.microsoft.com\/en-us\/vsts\/package\/concepts\/feeds?view=vsts\">feeds<\/a> in Package Management, so you can easily control access to them<\/li>\n<\/ul>\n<h2>Preview coming soon<\/h2>\n<p>We&#8217;re currently testing the first version of Universal Packages to ensure it&#8217;s ready for public preview. Keep an eye on the <a href=\"https:\/\/docs.microsoft.com\/en-us\/vsts\/release-notes\/index\">release notes<\/a>: when Universal Packages is available as a <a href=\"https:\/\/docs.microsoft.com\/en-us\/vsts\/project\/navigation\/preview-features?view=vsts\">preview feature<\/a>, we&#8217;ll announce it first there.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Until now, Package Management\u00a0has hosted packages that are part of a development ecosystem: NuGet packages for .NET development, npm packages for Node.js\u00a0and web frontend development, and Maven packages for Java development. We&#8217;re also continuing to expand our support for new development ecosystem, with support for Python&#8217;s PyPI packages and more in the coming months. However, [&hellip;]<\/p>\n","protected":false},"author":734,"featured_media":45953,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[],"class_list":["post-45285","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-devops"],"acf":[],"blog_post_summary":"<p>Until now, Package Management\u00a0has hosted packages that are part of a development ecosystem: NuGet packages for .NET development, npm packages for Node.js\u00a0and web frontend development, and Maven packages for Java development. We&#8217;re also continuing to expand our support for new development ecosystem, with support for Python&#8217;s PyPI packages and more in the coming months. However, [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/posts\/45285","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/users\/734"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/comments?post=45285"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/posts\/45285\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/media\/45953"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/media?parent=45285"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/categories?post=45285"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/devops\/wp-json\/wp\/v2\/tags?post=45285"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}