From f66a5135ad0138585c020e3dd1a14ec7c9e00ea9 Mon Sep 17 00:00:00 2001 From: Kendra Havens Date: Thu, 27 Feb 2020 14:57:31 -0800 Subject: [PATCH 001/988] Mention dotnet cli as an install option --- docs/quickstart/install-and-use-a-package-in-visual-studio.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/quickstart/install-and-use-a-package-in-visual-studio.md b/docs/quickstart/install-and-use-a-package-in-visual-studio.md index 58c1ffe63..6b7b72980 100644 --- a/docs/quickstart/install-and-use-a-package-in-visual-studio.md +++ b/docs/quickstart/install-and-use-a-package-in-visual-studio.md @@ -9,7 +9,7 @@ ms.topic: quickstart # Quickstart: Install and use a package in Visual Studio (Windows only) -NuGet packages contain reusable code that other developers make available to you for use in your projects. See [What is NuGet?](../What-is-NuGet.md) for background. Packages are installed into a Visual Studio project using the NuGet Package Manager or the Package Manager Console. This article demonstrates the process using the popular [Newtonsoft.Json](https://www.nuget.org/packages/Newtonsoft.Json/) package and a Windows Presentation Foundation (WPF) project. The same process applies to any other .NET or .NET Core project. +NuGet packages contain reusable code that other developers make available to you for use in your projects. See [What is NuGet?](../What-is-NuGet.md) for background. Packages are installed into a Visual Studio project using the NuGet Package Manager or the Package Manager Console. You can also install nuget packages via the [dotnet command line](install-and-use-a-package-using-the-dotnet-cli.md). This article demonstrates the process using the popular [Newtonsoft.Json](https://www.nuget.org/packages/Newtonsoft.Json/) package and a Windows Presentation Foundation (WPF) project. The same process applies to any other .NET or .NET Core project. Once installed, refer to the package in code with `using ` where \ is specific to the package you're using. Once the reference is made, you can call the package through its API. From 2548c6d5704941cc3c3e395a4546bf7825caff18 Mon Sep 17 00:00:00 2001 From: Kendra Havens Date: Thu, 5 Mar 2020 13:32:44 -0800 Subject: [PATCH 002/988] Update sentence per loic-sharma suggestions --- docs/quickstart/install-and-use-a-package-in-visual-studio.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/quickstart/install-and-use-a-package-in-visual-studio.md b/docs/quickstart/install-and-use-a-package-in-visual-studio.md index 6b7b72980..12c3e9a51 100644 --- a/docs/quickstart/install-and-use-a-package-in-visual-studio.md +++ b/docs/quickstart/install-and-use-a-package-in-visual-studio.md @@ -9,7 +9,7 @@ ms.topic: quickstart # Quickstart: Install and use a package in Visual Studio (Windows only) -NuGet packages contain reusable code that other developers make available to you for use in your projects. See [What is NuGet?](../What-is-NuGet.md) for background. Packages are installed into a Visual Studio project using the NuGet Package Manager or the Package Manager Console. You can also install nuget packages via the [dotnet command line](install-and-use-a-package-using-the-dotnet-cli.md). This article demonstrates the process using the popular [Newtonsoft.Json](https://www.nuget.org/packages/Newtonsoft.Json/) package and a Windows Presentation Foundation (WPF) project. The same process applies to any other .NET or .NET Core project. +NuGet packages contain reusable code that other developers make available to you for use in your projects. See [What is NuGet?](../What-is-NuGet.md) for background. Packages are installed into a Visual Studio project using the [dotnet command line](install-and-use-a-package-using-the-dotnet-cli.md), the NuGet Package Manager, or the Package Manager Console. This article demonstrates the process using the popular [Newtonsoft.Json](https://www.nuget.org/packages/Newtonsoft.Json/) package and a Windows Presentation Foundation (WPF) project. The same process applies to any other .NET or .NET Core project. Once installed, refer to the package in code with `using ` where \ is specific to the package you're using. Once the reference is made, you can call the package through its API. From 03c2a8f7bd9d28c0f511e1afd38c04c2a7833c19 Mon Sep 17 00:00:00 2001 From: MohammadMQ <38454801+MohammadMQ@users.noreply.github.com> Date: Tue, 10 Mar 2020 10:53:43 +0100 Subject: [PATCH 003/988] How to unlist specific package version A sted by step instruction guide on how to unlist a specific nuget package version. --- docs/nuget-org/policies/deleting-packages.md | 24 ++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/docs/nuget-org/policies/deleting-packages.md b/docs/nuget-org/policies/deleting-packages.md index 6d1221197..787aa2d60 100644 --- a/docs/nuget-org/policies/deleting-packages.md +++ b/docs/nuget-org/policies/deleting-packages.md @@ -34,3 +34,27 @@ Packages that meet any of the following criteria are not allowed on the public N If you find a package that is in violation of any of these items, click the **Report Abuse** link on the package details page and submit a report. Note that the NuGet team and the .NET Foundation reserves the right to change these criteria at any time. + +#### Unlisting a package +In order to unlist a specific package version please follow these steps: + +** Create a API Key ** +- Login to your Nuget.org organization account (click the "Sign in" link at the top right corner at nuget.org. +- You will now see your organization name instead of the "Sign in" link at the top right corner. +- Click the link that displays your organization name and chose "API Keys" +- You will now see "Create" and "Manage" sections. Click the plus sign beside the "Create" section. +- Provide a "Key name" and make sure to check the “Unlist package” checkbox. +- In the “Available packages” check which of your nuget package(s) you want to unlist. +- Click the “Create” button. +- Under the ”Manage” section you will now be able to copy your newly created "API Key". Make sure to save it, since you will not be go back and copy it. + +** Unlist a specific package version ** +Now that the API Key that enables unlisting packages has been created, it is time to use it. +- Type in the url to the nuget package version that you want to delete e.g: "https://www.nuget.org/packages/YOUR-PACKAGE-NAME/3.0.1/" +- Add delete at the end of the url so it becomes: "https://www.nuget.org/packages/YOUR-PACKAGE-NAME/3.0.1/Delete" +- You will now be transferred to the "Manage" page of that specific nuget package version. The "Manage" page will display following sections: "Owners", "Deprecation", "Listing" and "Documentation". +- Click the plus sign beside "Listing" and uncheck the checkbox that says: “List in search results”. +- Click the “Save” button. + +** Verification ** +The specific package version has now been unlisted. In order to verify this open a incognito instans of your browser and move to the url of the package (without the version part) e.g.: https://www.nuget.org/packages/YOUR-PACKAGE-NAME/. You will see all versions of that package that has * * not * * been unlisted. However if you see the same page while logged in you will see all packages with their status; listed or unlisted. From 2876a64a6b4e5d6034b929b5e931d497db6c1652 Mon Sep 17 00:00:00 2001 From: Jonathan Myers <11822817+jmyersmsft@users.noreply.github.com> Date: Tue, 10 Mar 2020 08:37:55 -0700 Subject: [PATCH 004/988] Add SemVer 2 build metadata removal to normalization section --- docs/concepts/Package-Versioning.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/concepts/Package-Versioning.md b/docs/concepts/Package-Versioning.md index 12bce77a7..ad06bdd84 100644 --- a/docs/concepts/Package-Versioning.md +++ b/docs/concepts/Package-Versioning.md @@ -216,6 +216,10 @@ When obtaining packages from a repository during install, reinstall, or restore 1.0.0.0 is treated as 1.0.0 1.0.01.0 is treated as 1.0.1 + +- SemVer 2.0.0 build metadata is removed + + 1.0.7+r3456 is treated as 1.0.7 `pack` and `restore` operations normalize versions whenever possible. For packages already built, this normalization does not affect the version numbers in the packages themselves; it affects only how NuGet matches versions when resolving dependencies. From 67dba2515d1c741f2b55ac45f24b0b1dcfad7dfb Mon Sep 17 00:00:00 2001 From: MohammadMQ <38454801+MohammadMQ@users.noreply.github.com> Date: Wed, 11 Mar 2020 10:27:03 +0100 Subject: [PATCH 005/988] Changes according to pull request. Changes according to pull request: 'How to unlist specific package version #1945' --- docs/nuget-org/policies/deleting-packages.md | 28 +++++++++----------- 1 file changed, 13 insertions(+), 15 deletions(-) diff --git a/docs/nuget-org/policies/deleting-packages.md b/docs/nuget-org/policies/deleting-packages.md index 787aa2d60..c2d37f21d 100644 --- a/docs/nuget-org/policies/deleting-packages.md +++ b/docs/nuget-org/policies/deleting-packages.md @@ -35,26 +35,24 @@ If you find a package that is in violation of any of these items, click the **Re Note that the NuGet team and the .NET Foundation reserves the right to change these criteria at any time. -#### Unlisting a package -In order to unlist a specific package version please follow these steps: +## Unlisting a package +The purpose of unlisting a package version is that it hides the package version from search and from nuget.org package details page. Furthermore it allows existing users of the package to keep downloading it, but reduces new adoption since the package is not visible in search. -** Create a API Key ** -- Login to your Nuget.org organization account (click the "Sign in" link at the top right corner at nuget.org. -- You will now see your organization name instead of the "Sign in" link at the top right corner. -- Click the link that displays your organization name and chose "API Keys" -- You will now see "Create" and "Manage" sections. Click the plus sign beside the "Create" section. -- Provide a "Key name" and make sure to check the “Unlist package” checkbox. -- In the “Available packages” check which of your nuget package(s) you want to unlist. -- Click the “Create” button. -- Under the ”Manage” section you will now be able to copy your newly created "API Key". Make sure to save it, since you will not be go back and copy it. +In order to unlist a specific package version please follow these steps: ** Unlist a specific package version ** -Now that the API Key that enables unlisting packages has been created, it is time to use it. -- Type in the url to the nuget package version that you want to delete e.g: "https://www.nuget.org/packages/YOUR-PACKAGE-NAME/3.0.1/" -- Add delete at the end of the url so it becomes: "https://www.nuget.org/packages/YOUR-PACKAGE-NAME/3.0.1/Delete" +- Click the `Account name` at the top right corner. +- Click `Manage packages` +- Click `Published packages` +- Click the package name which version you want to unlist +You will now see all the versions on that package. +- Under the `Status` column click the `Listed` link on that package version you want to unlist. - You will now be transferred to the "Manage" page of that specific nuget package version. The "Manage" page will display following sections: "Owners", "Deprecation", "Listing" and "Documentation". - Click the plus sign beside "Listing" and uncheck the checkbox that says: “List in search results”. - Click the “Save” button. ** Verification ** -The specific package version has now been unlisted. In order to verify this open a incognito instans of your browser and move to the url of the package (without the version part) e.g.: https://www.nuget.org/packages/YOUR-PACKAGE-NAME/. You will see all versions of that package that has * * not * * been unlisted. However if you see the same page while logged in you will see all packages with their status; listed or unlisted. +The specific package version has now been unlisted. In order to verify this open a incognito instance of your browser and move to the url of the package (without the version part) e.g.: https://www.nuget.org/packages/YOUR-PACKAGE-NAME/. You will see all versions of that package that have * * not * * been unlisted. However if you see the same page while logged in you will see all packages with their status; listed or unlisted. + +It's also possible to deprecate a package version (incase you can't delete a pacage version). Further information about deprecating package versions can be viewed at following page: https://docs.microsoft.com/en-us/nuget/nuget-org/deprecate-packages + From 5907cfd408e7d85d3585f19434e52f0579854ff9 Mon Sep 17 00:00:00 2001 From: MohammadMQ <38454801+MohammadMQ@users.noreply.github.com> Date: Wed, 11 Mar 2020 10:38:04 +0100 Subject: [PATCH 006/988] grammar error minor grammar --- docs/nuget-org/policies/deleting-packages.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/nuget-org/policies/deleting-packages.md b/docs/nuget-org/policies/deleting-packages.md index c2d37f21d..c98b908ec 100644 --- a/docs/nuget-org/policies/deleting-packages.md +++ b/docs/nuget-org/policies/deleting-packages.md @@ -54,5 +54,5 @@ You will now see all the versions on that package. ** Verification ** The specific package version has now been unlisted. In order to verify this open a incognito instance of your browser and move to the url of the package (without the version part) e.g.: https://www.nuget.org/packages/YOUR-PACKAGE-NAME/. You will see all versions of that package that have * * not * * been unlisted. However if you see the same page while logged in you will see all packages with their status; listed or unlisted. -It's also possible to deprecate a package version (incase you can't delete a pacage version). Further information about deprecating package versions can be viewed at following page: https://docs.microsoft.com/en-us/nuget/nuget-org/deprecate-packages +It's also possible to deprecate a package version (incase you can't delete a package version). Further information about deprecating package versions can be viewed at following page: https://docs.microsoft.com/en-us/nuget/nuget-org/deprecate-packages From 147ee7ff22497788d0aaf2ecfba73edaf76240e2 Mon Sep 17 00:00:00 2001 From: MohammadMQ <38454801+MohammadMQ@users.noreply.github.com> Date: Wed, 11 Mar 2020 10:43:01 +0100 Subject: [PATCH 007/988] removed locales en-us build error due to locals inside url --- docs/nuget-org/policies/deleting-packages.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/nuget-org/policies/deleting-packages.md b/docs/nuget-org/policies/deleting-packages.md index c98b908ec..4226b4d4d 100644 --- a/docs/nuget-org/policies/deleting-packages.md +++ b/docs/nuget-org/policies/deleting-packages.md @@ -54,5 +54,5 @@ You will now see all the versions on that package. ** Verification ** The specific package version has now been unlisted. In order to verify this open a incognito instance of your browser and move to the url of the package (without the version part) e.g.: https://www.nuget.org/packages/YOUR-PACKAGE-NAME/. You will see all versions of that package that have * * not * * been unlisted. However if you see the same page while logged in you will see all packages with their status; listed or unlisted. -It's also possible to deprecate a package version (incase you can't delete a package version). Further information about deprecating package versions can be viewed at following page: https://docs.microsoft.com/en-us/nuget/nuget-org/deprecate-packages +It's also possible to deprecate a package version (incase you can't delete a package version). Further information about deprecating package versions can be viewed at following page: https://docs.microsoft.com/nuget/nuget-org/deprecate-packages From fcd46059547a656b02a5066d98eb188e524a1975 Mon Sep 17 00:00:00 2001 From: MohammadMQ <38454801+MohammadMQ@users.noreply.github.com> Date: Thu, 12 Mar 2020 11:08:06 +0100 Subject: [PATCH 008/988] some more changes some more changes --- docs/nuget-org/policies/deleting-packages.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/nuget-org/policies/deleting-packages.md b/docs/nuget-org/policies/deleting-packages.md index 4226b4d4d..080f4f914 100644 --- a/docs/nuget-org/policies/deleting-packages.md +++ b/docs/nuget-org/policies/deleting-packages.md @@ -47,12 +47,12 @@ In order to unlist a specific package version please follow these steps: - Click the package name which version you want to unlist You will now see all the versions on that package. - Under the `Status` column click the `Listed` link on that package version you want to unlist. -- You will now be transferred to the "Manage" page of that specific nuget package version. The "Manage" page will display following sections: "Owners", "Deprecation", "Listing" and "Documentation". -- Click the plus sign beside "Listing" and uncheck the checkbox that says: “List in search results”. +- You will now be transferred to the "Manage" page of that specific nuget package version. +- Click the plus sign beside the "Listing" and uncheck the checkbox that says: “List in search results”. - Click the “Save” button. ** Verification ** -The specific package version has now been unlisted. In order to verify this open a incognito instance of your browser and move to the url of the package (without the version part) e.g.: https://www.nuget.org/packages/YOUR-PACKAGE-NAME/. You will see all versions of that package that have * * not * * been unlisted. However if you see the same page while logged in you will see all packages with their status; listed or unlisted. +The specific package version has now been unlisted. In order to verify this open a incognito instance of your browser and move to the URL of the package (without the version part) e.g.: https://www.nuget.org/packages/YOUR-PACKAGE-NAME/. You will see all versions of that package that have * * not * * been unlisted. However if you see the same page while logged in you will see all packages with their status; listed or unlisted. -It's also possible to deprecate a package version (incase you can't delete a package version). Further information about deprecating package versions can be viewed at following page: https://docs.microsoft.com/nuget/nuget-org/deprecate-packages +It's also possible to deprecate a package version (incase you can't delete a package version). For more information about deprecating package versions, see [Deprecating packages](Deprecate-packages.md). From de1a2c58f1ca25844e7b5520c084f429dfcd0d40 Mon Sep 17 00:00:00 2001 From: Scott DePouw Date: Thu, 12 Mar 2020 21:19:37 -0400 Subject: [PATCH 009/988] Added missing character `` was missing a closing `>` at the end. --- docs/create-packages/includes/add-description.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/create-packages/includes/add-description.md b/docs/create-packages/includes/add-description.md index b79695337..60ca74f44 100644 --- a/docs/create-packages/includes/add-description.md +++ b/docs/create-packages/includes/add-description.md @@ -1,4 +1,4 @@ -The package's optional description, displayed on the package's NuGet.org page, is either pulled in from the `` used in the `.csproj` file or pulled in via the `$description` in the [.nuspec file](../../reference/nuspec.md). An example of a _description_ field is shown in the following XML text of the `.csproj` file for a .NET package: From b121d9959adad6d1b965ea60c1d304a20312ae7d Mon Sep 17 00:00:00 2001 From: Rob Relyea Date: Fri, 13 Mar 2020 11:26:41 -0700 Subject: [PATCH 010/988] fix title so that it shows up better in searches --- docs/reference/errors-and-warnings/NU1701.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/reference/errors-and-warnings/NU1701.md b/docs/reference/errors-and-warnings/NU1701.md index 1b8e74965..e3f3ea11a 100644 --- a/docs/reference/errors-and-warnings/NU1701.md +++ b/docs/reference/errors-and-warnings/NU1701.md @@ -1,5 +1,5 @@ --- -title: NuGet Errors and Warnings Reference +title: NuGet Warning NU1701 description: NU1701 warning code author: zhili1208 ms.author: lzhi @@ -18,4 +18,4 @@ f1_keywords: `PackageTargetFallback` / `AssetTargetFallback` was used to select assets from a package. The warning let users know that the assets may not be 100% compatible. ### Solution -Change the project's target framework to one that the package supports. \ No newline at end of file +Change the project's target framework to one that the package supports. From 959f83c22caf339883e186da265116c93019166f Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Wed, 18 Mar 2020 16:37:39 -0700 Subject: [PATCH 011/988] release notes for release 5.5 --- docs/TOC.md | 1 + docs/release-notes/NuGet-5.5.md | 175 ++++++++++++++++++++++++++++++++ 2 files changed, 176 insertions(+) create mode 100644 docs/release-notes/NuGet-5.5.md diff --git a/docs/TOC.md b/docs/TOC.md index aabd34d17..f3d5258ba 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -287,6 +287,7 @@ ## Release notes ### [Known Issues](release-notes/known-issues.md) ### NuGet 5.x +#### [NuGet 5.5](release-notes/NuGet-5.5.md) #### [NuGet 5.4](release-notes/NuGet-5.4.md) #### [NuGet 5.3](release-notes/NuGet-5.3.md) #### [NuGet 5.2](release-notes/NuGet-5.2-RTM.md) diff --git a/docs/release-notes/NuGet-5.5.md b/docs/release-notes/NuGet-5.5.md new file mode 100644 index 000000000..690b3a55c --- /dev/null +++ b/docs/release-notes/NuGet-5.5.md @@ -0,0 +1,175 @@ +# 5.5 Release Notes + +[Full Changelog]("") + +[Issues List](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5e0e5fbd021f7aa0ec95db18) + +**Bug:** + +* nuget pack forcefully adds .tt files to content folder no matter what - [#3203](https://github.com/NuGet/Home/issues/3203) + +* Alt+S in VS Tools->Options->NuGet Package Manager->"Package Sources" jumps to wrong text box - [#1518](https://github.com/NuGet/Home/issues/1518) + +* Rework Self-Updater with V3 Apis - [#4197](https://github.com/NuGet/Home/issues/4197) + +* Wrong package dependency version If package dependency version is set to '*' - [#6697](https://github.com/NuGet/Home/issues/6697) + +* ErrorUnsafePackageEntry error message is not pointing to source of problem - [#7505](https://github.com/NuGet/Home/issues/7505) + +* NuGet 4.9.2 fails to install packages from nuget.org with "Canceled" error - [#7699](https://github.com/NuGet/Home/issues/7699) + +* dotnet restore failing with TaskCanceledException - [#7842](https://github.com/NuGet/Home/issues/7842) + +* Upgrade fails with "Unable to find metadata of " if a package is in fallback folder, but not remote feed - [#7881](https://github.com/NuGet/Home/issues/7881) + +* Lock file is not honored in "*" scenarios - [#8073](https://github.com/NuGet/Home/issues/8073) + +* NuGet.exe does not resolve to the latest version of a package when using * in PackageReference (MSBuild/Dotnet/VS restore do) - [#8432](https://github.com/NuGet/Home/issues/8432) + +* dotnet list package with multi targeting WPF project - [#8463](https://github.com/NuGet/Home/issues/8463) + +* Plugin: "A task was cancelled" - problem with ADO authentication due to this. - [#8528](https://github.com/NuGet/Home/issues/8528) + +* Improve ConcurrencyUtilities (reduce CPU usage) - [#8653](https://github.com/NuGet/Home/issues/8653) + +* vs/nuget/nugetaction telemetry doesn't adequately capture cancellation - [#8782](https://github.com/NuGet/Home/issues/8782) + +* vs/nuget/nugetaction doesn't log the packages added, removed, or updated - [#8783](https://github.com/NuGet/Home/issues/8783) + +* DG Spec for unloaded project scenarios should not be written in preview restores - [#8793](https://github.com/NuGet/Home/issues/8793) + +* The Visual Studio NuGet packages (RestoreManagerPackage) needs to auto load on solution build events - [#8796](https://github.com/NuGet/Home/issues/8796) + +* [Test Failure] Package icon becomes a default icon after installing ‘Newtonsoft.Json’ with latest versoin - [#8814](https://github.com/NuGet/Home/issues/8814) + +* Logic in RestoreTask should be refactored into a utility - [#8829](https://github.com/NuGet/Home/issues/8829) + +* Deadlock in VSSettings init - [#8842](https://github.com/NuGet/Home/issues/8842) + +* "An item with the same key has already been added" when restoring in Visual Studio - [#8847](https://github.com/NuGet/Home/issues/8847) + +* DownloadTimeoutStream should not block by calling .Result - [#8853](https://github.com/NuGet/Home/issues/8853) + +* RestoreSettingsUtils needs overload to use new SettingsLoadingContext - [#8855](https://github.com/NuGet/Home/issues/8855) + +* VisualStudio ToolBox is not populated from a NuGet package if a project is placed in a solution folder - [#8868](https://github.com/NuGet/Home/issues/8868) + +* VS: solution restore perpetually fails due to race condition - [#8881](https://github.com/NuGet/Home/issues/8881) + +* Constant "loading.." on installed tab, and "searching .." on updates tab - [#8890](https://github.com/NuGet/Home/issues/8890) + +* ProjectReference becomes dependency in nuspec instead of including it in nupkg - [#8960](https://github.com/NuGet/Home/issues/8960) + +* Update the NuGet VS depedencies to the recent 16.4 ones so we can use the Service Broker APIs. - [#8967](https://github.com/NuGet/Home/issues/8967) + +* Address VSSDK004, VSSDK005 & VSSDK006 analyzer warnings - [#8974](https://github.com/NuGet/Home/issues/8974) + +* Address VSTHRD100 - [#8975](https://github.com/NuGet/Home/issues/8975) + +* Address VSTHRD010 and VSTHRD109 warnings - [#8978](https://github.com/NuGet/Home/issues/8978) + +* NuGet client tools strategy with multiple feeds on packages with version floats - [#8992](https://github.com/NuGet/Home/issues/8992) + +* hashed package names in telemetry should be lower cased - [#8995](https://github.com/NuGet/Home/issues/8995) + +* Accessibility Fixes in PM UI - altText, etc... - [#9059](https://github.com/NuGet/Home/issues/9059) + +* Missing Embedded Icons in VS PM UI after cache expires - [#9069](https://github.com/NuGet/Home/issues/9069) + +* Icon missing after package install in VS PM UI - [#9072](https://github.com/NuGet/Home/issues/9072) + +* Review Accessibility bugs - [#9077](https://github.com/NuGet/Home/issues/9077) + +* PMUI Tabs have Accessibility Issues - [#9078](https://github.com/NuGet/Home/issues/9078) + +* Review JoinableTaskFactory.Run( usage - [#9096](https://github.com/NuGet/Home/issues/9096) + +* FireAndForget PM UI startup - [#9112](https://github.com/NuGet/Home/issues/9112) + +* Missing Icon in PM UI Details Pane - [#9113](https://github.com/NuGet/Home/issues/9113) + +* Accessibility Fixes in PM UI - [#9157](https://github.com/NuGet/Home/issues/9157) + +* Restore: IncludeExcludeFiles.Equals(...) implementation is incorrect - [#9167](https://github.com/NuGet/Home/issues/9167) + +* Restore: PackageSpec.Clone() creates unequal clone - [#9211](https://github.com/NuGet/Home/issues/9211) + +**Feature:** + +* add `dotnet nuget source` command - [#4126](https://github.com/NuGet/Home/issues/4126) + +* Deprecation info is not visible, by default, on installed tab - [#8541](https://github.com/NuGet/Home/issues/8541) + +* Improve network diagnostics to understand real world http download perf in VS - [#8592](https://github.com/NuGet/Home/issues/8592) + +* Test and Fix Auto-Restore (SDK) for VS in Live Share & cloud environments - [#8674](https://github.com/NuGet/Home/issues/8674) + +* --skip-duplicate support for dotnet nuget push - [#8778](https://github.com/NuGet/Home/issues/8778) + +**DCR:** + +* nuget.exe pack should no longer warn about packing a SemVer 2.0.0 package - [#5201](https://github.com/NuGet/Home/issues/5201) + +* NuGet PackageManager UI handles icons from and - [#8189](https://github.com/NuGet/Home/issues/8189) + +* Logic in _GetRestoreProjectStyle should be in a task - [#8804](https://github.com/NuGet/Home/issues/8804) + +**None:** + +* msbuild /restore support for all NuGet use cases - [#6410](https://github.com/NuGet/Home/issues/6410) + +* PackageReference output missing libs - [#7652](https://github.com/NuGet/Home/issues/7652) + +* Signing: add .NET Standard 2.1 Targeting for NuGet.Packaging, fix tests, create nupkg for pack sdk - [#8043](https://github.com/NuGet/Home/issues/8043) + +* Error list shown although "Always show Error List if build finishes with errors" is not checked - [#8190](https://github.com/NuGet/Home/issues/8190) + +* Floating version "*" retrieves incorrect nuget package version (not latest) - [#8333](https://github.com/NuGet/Home/issues/8333) + +* Analyze the refresh metrics - [#8370](https://github.com/NuGet/Home/issues/8370) + +* Temporary fix on patching SDK for System.Security.Cryptography.Pkcs.dll - [#8508](https://github.com/NuGet/Home/issues/8508) + +* Code files (.pp) in ContentFiles folder not added to consuming PackageReference project - [#8718](https://github.com/NuGet/Home/issues/8718) + +* Dotnet pack does not respect floating version. - [#8742](https://github.com/NuGet/Home/issues/8742) + +* retarget signing/verification project to netcoreapp5.0 - [#8835](https://github.com/NuGet/Home/issues/8835) + +* ExcludeRestorePackageImports=true should not exclude package path properties - [#8840](https://github.com/NuGet/Home/issues/8840) + +* Nuget package can be installed multiple times in different versions - [#8865](https://github.com/NuGet/Home/issues/8865) + +* [Centrally managing NuGet packages and versions] MsBuild targets necessary to flow the CPVM information from Directory.Packages.props to NuGet internals - [#8909](https://github.com/NuGet/Home/issues/8909) + +* SignedPackageIntegrityVerificationTests is disabled for netcore, we need to enable it. - [#8918](https://github.com/NuGet/Home/issues/8918) + +* Add more settings tests - completely cover project\sln level support across products - [#8927](https://github.com/NuGet/Home/issues/8927) + +* Broken test in SigningUtilityTests(unit test) - [#8939](https://github.com/NuGet/Home/issues/8939) + +* [Test Failure]Confusing supported .NET Framework version v0.0 show in the error NU1202 message when installing a package into a project with incompatible framework - [#8965](https://github.com/NuGet/Home/issues/8965) + +* SpecCommand tests depend on the current year - [#8984](https://github.com/NuGet/Home/issues/8984) + +* rebase main signing branch on top of latest dev - [#9012](https://github.com/NuGet/Home/issues/9012) + +* Restore: large strings created on large object heap (LOH) - [#9031](https://github.com/NuGet/Home/issues/9031) + +* Make the dotnet.exe functional tests runnable from Visual Studio, speed up the Dotnet.Integration.Test suite by 40% - [#9036](https://github.com/NuGet/Home/issues/9036) + +* Restore: DependencyGraphSpec.Load(...) does not need JObject - [#9040](https://github.com/NuGet/Home/issues/9040) + +* Restore: closure computed for each project 4 times - [#9042](https://github.com/NuGet/Home/issues/9042) + +* Static Graph restore should not pass empty SolutionPath - [#9061](https://github.com/NuGet/Home/issues/9061) + +* NuGet.Build.Tasks.Console should have its own unit test assembly - [#9065](https://github.com/NuGet/Home/issues/9065) + +* Add unit tests for RestoreTaskExe - [#9067](https://github.com/NuGet/Home/issues/9067) + +* Delete TestEnvironment class in SDK resolver test assembly - [#9102](https://github.com/NuGet/Home/issues/9102) + +* [Test Failure] PMC and PM UI were disappeared after installing NuGet client dev-cmanu-cpvm01\5.5.0.10112 - [#9138](https://github.com/NuGet/Home/issues/9138) + +* NuGet: "The path is not of a legal form" while installing packages in an Android solution - [#9165](https://github.com/NuGet/Home/issues/9165) \ No newline at end of file From d5a12c70e382218008be776798aa76a1f423bb22 Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Wed, 18 Mar 2020 18:57:16 -0700 Subject: [PATCH 012/988] wip release notes --- docs/release-notes/NuGet-5.5.md | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/docs/release-notes/NuGet-5.5.md b/docs/release-notes/NuGet-5.5.md index 690b3a55c..eb75a3aae 100644 --- a/docs/release-notes/NuGet-5.5.md +++ b/docs/release-notes/NuGet-5.5.md @@ -1,8 +1,25 @@ -# 5.5 Release Notes +--- +title: NuGet 5.5 Release Notes +description: Release notes for NuGet 5.5 including new features, bug fixes, and DCRs. +author: karann-msft +ms.author: karann +ms.date: 03/18/2020 +ms.topic: conceptual +--- -[Full Changelog]("") +# NuGet 5.5 Release Notes -[Issues List](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5e0e5fbd021f7aa0ec95db18) +NuGet distribution vehicles: + +| NuGet version | Available in Visual Studio version| Available in .NET SDK(s)| +|:---|:---|:---| +| [**5.5.0**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.5](https://visualstudio.microsoft.com/downloads/) | [3.1.200](https://dotnet.microsoft.com/download/dotnet-core/3.1)1 | + +1Installed with Visual Studio 2019 with .NET Core workload + +## Summary: What's New in 5.5 + +* Accessibility Fixes in PM UI **Bug:** From 1a078ed4ddf9fe900de8b39eac7a93fd38bc1511 Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Thu, 19 Mar 2020 07:14:49 -0700 Subject: [PATCH 013/988] revised release notes --- docs/release-notes/NuGet-5.5.md | 40 +++++++-------------------------- 1 file changed, 8 insertions(+), 32 deletions(-) diff --git a/docs/release-notes/NuGet-5.5.md b/docs/release-notes/NuGet-5.5.md index eb75a3aae..1af26d920 100644 --- a/docs/release-notes/NuGet-5.5.md +++ b/docs/release-notes/NuGet-5.5.md @@ -3,7 +3,7 @@ title: NuGet 5.5 Release Notes description: Release notes for NuGet 5.5 including new features, bug fixes, and DCRs. author: karann-msft ms.author: karann -ms.date: 03/18/2020 +ms.date: 03/19/2020 ms.topic: conceptual --- @@ -19,13 +19,13 @@ NuGet distribution vehicles: ## Summary: What's New in 5.5 -* Accessibility Fixes in PM UI +* Several accessibility fixes in PM UI -**Bug:** +* --skip-duplicate support for dotnet nuget push -* nuget pack forcefully adds .tt files to content folder no matter what - [#3203](https://github.com/NuGet/Home/issues/3203) +* msbuild /restore works with Packages.Config -* Alt+S in VS Tools->Options->NuGet Package Manager->"Package Sources" jumps to wrong text box - [#1518](https://github.com/NuGet/Home/issues/1518) +**Bug:** * Rework Self-Updater with V3 Apis - [#4197](https://github.com/NuGet/Home/issues/4197) @@ -37,8 +37,6 @@ NuGet distribution vehicles: * dotnet restore failing with TaskCanceledException - [#7842](https://github.com/NuGet/Home/issues/7842) -* Upgrade fails with "Unable to find metadata of " if a package is in fallback folder, but not remote feed - [#7881](https://github.com/NuGet/Home/issues/7881) - * Lock file is not honored in "*" scenarios - [#8073](https://github.com/NuGet/Home/issues/8073) * NuGet.exe does not resolve to the latest version of a package when using * in PackageReference (MSBuild/Dotnet/VS restore do) - [#8432](https://github.com/NuGet/Home/issues/8432) @@ -119,10 +117,10 @@ NuGet distribution vehicles: * Improve network diagnostics to understand real world http download perf in VS - [#8592](https://github.com/NuGet/Home/issues/8592) -* Test and Fix Auto-Restore (SDK) for VS in Live Share & cloud environments - [#8674](https://github.com/NuGet/Home/issues/8674) - * --skip-duplicate support for dotnet nuget push - [#8778](https://github.com/NuGet/Home/issues/8778) +* msbuild /restore works with Packages.Config - [#8506](https://github.com/NuGet/Home/issues/8506) + **DCR:** * nuget.exe pack should no longer warn about packing a SemVer 2.0.0 package - [#5201](https://github.com/NuGet/Home/issues/5201) @@ -133,44 +131,24 @@ NuGet distribution vehicles: **None:** -* msbuild /restore support for all NuGet use cases - [#6410](https://github.com/NuGet/Home/issues/6410) - -* PackageReference output missing libs - [#7652](https://github.com/NuGet/Home/issues/7652) - -* Signing: add .NET Standard 2.1 Targeting for NuGet.Packaging, fix tests, create nupkg for pack sdk - [#8043](https://github.com/NuGet/Home/issues/8043) - * Error list shown although "Always show Error List if build finishes with errors" is not checked - [#8190](https://github.com/NuGet/Home/issues/8190) * Floating version "*" retrieves incorrect nuget package version (not latest) - [#8333](https://github.com/NuGet/Home/issues/8333) -* Analyze the refresh metrics - [#8370](https://github.com/NuGet/Home/issues/8370) - * Temporary fix on patching SDK for System.Security.Cryptography.Pkcs.dll - [#8508](https://github.com/NuGet/Home/issues/8508) * Code files (.pp) in ContentFiles folder not added to consuming PackageReference project - [#8718](https://github.com/NuGet/Home/issues/8718) -* Dotnet pack does not respect floating version. - [#8742](https://github.com/NuGet/Home/issues/8742) - -* retarget signing/verification project to netcoreapp5.0 - [#8835](https://github.com/NuGet/Home/issues/8835) - * ExcludeRestorePackageImports=true should not exclude package path properties - [#8840](https://github.com/NuGet/Home/issues/8840) * Nuget package can be installed multiple times in different versions - [#8865](https://github.com/NuGet/Home/issues/8865) -* [Centrally managing NuGet packages and versions] MsBuild targets necessary to flow the CPVM information from Directory.Packages.props to NuGet internals - [#8909](https://github.com/NuGet/Home/issues/8909) - -* SignedPackageIntegrityVerificationTests is disabled for netcore, we need to enable it. - [#8918](https://github.com/NuGet/Home/issues/8918) - * Add more settings tests - completely cover project\sln level support across products - [#8927](https://github.com/NuGet/Home/issues/8927) -* Broken test in SigningUtilityTests(unit test) - [#8939](https://github.com/NuGet/Home/issues/8939) - * [Test Failure]Confusing supported .NET Framework version v0.0 show in the error NU1202 message when installing a package into a project with incompatible framework - [#8965](https://github.com/NuGet/Home/issues/8965) * SpecCommand tests depend on the current year - [#8984](https://github.com/NuGet/Home/issues/8984) -* rebase main signing branch on top of latest dev - [#9012](https://github.com/NuGet/Home/issues/9012) - * Restore: large strings created on large object heap (LOH) - [#9031](https://github.com/NuGet/Home/issues/9031) * Make the dotnet.exe functional tests runnable from Visual Studio, speed up the Dotnet.Integration.Test suite by 40% - [#9036](https://github.com/NuGet/Home/issues/9036) @@ -187,6 +165,4 @@ NuGet distribution vehicles: * Delete TestEnvironment class in SDK resolver test assembly - [#9102](https://github.com/NuGet/Home/issues/9102) -* [Test Failure] PMC and PM UI were disappeared after installing NuGet client dev-cmanu-cpvm01\5.5.0.10112 - [#9138](https://github.com/NuGet/Home/issues/9138) - -* NuGet: "The path is not of a legal form" while installing packages in an Android solution - [#9165](https://github.com/NuGet/Home/issues/9165) \ No newline at end of file +* PackageReference output missing libs - [#7652](https://github.com/NuGet/Home/issues/7652) \ No newline at end of file From 79a38d08abac9914d11a6bce56581c2fbbc33b1f Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Thu, 19 Mar 2020 07:19:10 -0700 Subject: [PATCH 014/988] update --- docs/release-notes/NuGet-5.5.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/docs/release-notes/NuGet-5.5.md b/docs/release-notes/NuGet-5.5.md index 1af26d920..887e07ccc 100644 --- a/docs/release-notes/NuGet-5.5.md +++ b/docs/release-notes/NuGet-5.5.md @@ -163,6 +163,4 @@ NuGet distribution vehicles: * Add unit tests for RestoreTaskExe - [#9067](https://github.com/NuGet/Home/issues/9067) -* Delete TestEnvironment class in SDK resolver test assembly - [#9102](https://github.com/NuGet/Home/issues/9102) - -* PackageReference output missing libs - [#7652](https://github.com/NuGet/Home/issues/7652) \ No newline at end of file +* Delete TestEnvironment class in SDK resolver test assembly - [#9102](https://github.com/NuGet/Home/issues/9102) \ No newline at end of file From dd41523a2bd1dcb6a56d7f7c767e186a5fb2ed7b Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Thu, 19 Mar 2020 08:03:46 -0700 Subject: [PATCH 015/988] added security issue to the release notes --- docs/release-notes/NuGet-5.5.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/release-notes/NuGet-5.5.md b/docs/release-notes/NuGet-5.5.md index 887e07ccc..7863c7b6f 100644 --- a/docs/release-notes/NuGet-5.5.md +++ b/docs/release-notes/NuGet-5.5.md @@ -25,6 +25,8 @@ NuGet distribution vehicles: * msbuild /restore works with Packages.Config +* Safely handling untrusted XML in the client code + **Bug:** * Rework Self-Updater with V3 Apis - [#4197](https://github.com/NuGet/Home/issues/4197) @@ -139,6 +141,8 @@ NuGet distribution vehicles: * Code files (.pp) in ContentFiles folder not added to consuming PackageReference project - [#8718](https://github.com/NuGet/Home/issues/8718) +* Safely handling untrusted XML in the client code - [#2769](https://github.com/NuGet/Engineering/issues/2769) + * ExcludeRestorePackageImports=true should not exclude package path properties - [#8840](https://github.com/NuGet/Home/issues/8840) * Nuget package can be installed multiple times in different versions - [#8865](https://github.com/NuGet/Home/issues/8865) From a3aab5e941f957d2eede5784e88ceecc748cc6aa Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Thu, 19 Mar 2020 09:09:16 -0700 Subject: [PATCH 016/988] feedback --- docs/release-notes/NuGet-5.5.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/docs/release-notes/NuGet-5.5.md b/docs/release-notes/NuGet-5.5.md index 7863c7b6f..98e291dec 100644 --- a/docs/release-notes/NuGet-5.5.md +++ b/docs/release-notes/NuGet-5.5.md @@ -25,7 +25,7 @@ NuGet distribution vehicles: * msbuild /restore works with Packages.Config -* Safely handling untrusted XML in the client code +* Change the way we read XML files **Bug:** @@ -141,8 +141,6 @@ NuGet distribution vehicles: * Code files (.pp) in ContentFiles folder not added to consuming PackageReference project - [#8718](https://github.com/NuGet/Home/issues/8718) -* Safely handling untrusted XML in the client code - [#2769](https://github.com/NuGet/Engineering/issues/2769) - * ExcludeRestorePackageImports=true should not exclude package path properties - [#8840](https://github.com/NuGet/Home/issues/8840) * Nuget package can be installed multiple times in different versions - [#8865](https://github.com/NuGet/Home/issues/8865) From af5399d6141de08c4ff1a381aada0c72fa5d089e Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Thu, 19 Mar 2020 14:02:45 -0700 Subject: [PATCH 017/988] feedback-1 --- docs/release-notes/NuGet-5.5.md | 84 +++++++++++---------------------- 1 file changed, 27 insertions(+), 57 deletions(-) diff --git a/docs/release-notes/NuGet-5.5.md b/docs/release-notes/NuGet-5.5.md index 98e291dec..f186717d4 100644 --- a/docs/release-notes/NuGet-5.5.md +++ b/docs/release-notes/NuGet-5.5.md @@ -21,12 +21,32 @@ NuGet distribution vehicles: * Several accessibility fixes in PM UI -* --skip-duplicate support for dotnet nuget push +* dotnet.exe reliability fixes with cross platform authentication plugins * msbuild /restore works with Packages.Config * Change the way we read XML files +**Feature:** + +* add `dotnet nuget source` command - [#4126](https://github.com/NuGet/Home/issues/4126) + +* Improve network diagnostics to understand real world http download perf in VS - [#8592](https://github.com/NuGet/Home/issues/8592) + +* --skip-duplicate support for dotnet nuget push - [#8778](https://github.com/NuGet/Home/issues/8778) + +* msbuild /restore works with Packages.Config - [#8506](https://github.com/NuGet/Home/issues/8506) + +**DCR:** + +* nuget.exe pack should no longer warn about packing a SemVer 2.0.0 package - [#5201](https://github.com/NuGet/Home/issues/5201) + +* Embedded Icons support in NuGet PackageManager UI - [#8189](https://github.com/NuGet/Home/issues/8189) + +* Logic in _GetRestoreProjectStyle should be in a task - [#8804](https://github.com/NuGet/Home/issues/8804) + +* Deprecation info is not visible, by default, on installed tab - [#8541](https://github.com/NuGet/Home/issues/8541) + **Bug:** * Rework Self-Updater with V3 Apis - [#4197](https://github.com/NuGet/Home/issues/4197) @@ -35,8 +55,6 @@ NuGet distribution vehicles: * ErrorUnsafePackageEntry error message is not pointing to source of problem - [#7505](https://github.com/NuGet/Home/issues/7505) -* NuGet 4.9.2 fails to install packages from nuget.org with "Canceled" error - [#7699](https://github.com/NuGet/Home/issues/7699) - * dotnet restore failing with TaskCanceledException - [#7842](https://github.com/NuGet/Home/issues/7842) * Lock file is not honored in "*" scenarios - [#8073](https://github.com/NuGet/Home/issues/8073) @@ -49,46 +67,22 @@ NuGet distribution vehicles: * Improve ConcurrencyUtilities (reduce CPU usage) - [#8653](https://github.com/NuGet/Home/issues/8653) -* vs/nuget/nugetaction telemetry doesn't adequately capture cancellation - [#8782](https://github.com/NuGet/Home/issues/8782) - -* vs/nuget/nugetaction doesn't log the packages added, removed, or updated - [#8783](https://github.com/NuGet/Home/issues/8783) - * DG Spec for unloaded project scenarios should not be written in preview restores - [#8793](https://github.com/NuGet/Home/issues/8793) * The Visual Studio NuGet packages (RestoreManagerPackage) needs to auto load on solution build events - [#8796](https://github.com/NuGet/Home/issues/8796) -* [Test Failure] Package icon becomes a default icon after installing ‘Newtonsoft.Json’ with latest versoin - [#8814](https://github.com/NuGet/Home/issues/8814) - -* Logic in RestoreTask should be refactored into a utility - [#8829](https://github.com/NuGet/Home/issues/8829) +* [Test Failure] Package icon becomes a default icon after installing ‘Newtonsoft.Json’ with latest versoin - [#8814](https://github.com/NuGet/Home/issues/8814) * Deadlock in VSSettings init - [#8842](https://github.com/NuGet/Home/issues/8842) -* "An item with the same key has already been added" when restoring in Visual Studio - [#8847](https://github.com/NuGet/Home/issues/8847) - -* DownloadTimeoutStream should not block by calling .Result - [#8853](https://github.com/NuGet/Home/issues/8853) - -* RestoreSettingsUtils needs overload to use new SettingsLoadingContext - [#8855](https://github.com/NuGet/Home/issues/8855) - * VisualStudio ToolBox is not populated from a NuGet package if a project is placed in a solution folder - [#8868](https://github.com/NuGet/Home/issues/8868) * VS: solution restore perpetually fails due to race condition - [#8881](https://github.com/NuGet/Home/issues/8881) * Constant "loading.." on installed tab, and "searching .." on updates tab - [#8890](https://github.com/NuGet/Home/issues/8890) -* ProjectReference becomes dependency in nuspec instead of including it in nupkg - [#8960](https://github.com/NuGet/Home/issues/8960) - -* Update the NuGet VS depedencies to the recent 16.4 ones so we can use the Service Broker APIs. - [#8967](https://github.com/NuGet/Home/issues/8967) - -* Address VSSDK004, VSSDK005 & VSSDK006 analyzer warnings - [#8974](https://github.com/NuGet/Home/issues/8974) - -* Address VSTHRD100 - [#8975](https://github.com/NuGet/Home/issues/8975) - -* Address VSTHRD010 and VSTHRD109 warnings - [#8978](https://github.com/NuGet/Home/issues/8978) - * NuGet client tools strategy with multiple feeds on packages with version floats - [#8992](https://github.com/NuGet/Home/issues/8992) -* hashed package names in telemetry should be lower cased - [#8995](https://github.com/NuGet/Home/issues/8995) - * Accessibility Fixes in PM UI - altText, etc... - [#9059](https://github.com/NuGet/Home/issues/9059) * Missing Embedded Icons in VS PM UI after cache expires - [#9069](https://github.com/NuGet/Home/issues/9069) @@ -99,37 +93,13 @@ NuGet distribution vehicles: * PMUI Tabs have Accessibility Issues - [#9078](https://github.com/NuGet/Home/issues/9078) -* Review JoinableTaskFactory.Run( usage - [#9096](https://github.com/NuGet/Home/issues/9096) - * FireAndForget PM UI startup - [#9112](https://github.com/NuGet/Home/issues/9112) -* Missing Icon in PM UI Details Pane - [#9113](https://github.com/NuGet/Home/issues/9113) - * Accessibility Fixes in PM UI - [#9157](https://github.com/NuGet/Home/issues/9157) -* Restore: IncludeExcludeFiles.Equals(...) implementation is incorrect - [#9167](https://github.com/NuGet/Home/issues/9167) - -* Restore: PackageSpec.Clone() creates unequal clone - [#9211](https://github.com/NuGet/Home/issues/9211) - -**Feature:** - -* add `dotnet nuget source` command - [#4126](https://github.com/NuGet/Home/issues/4126) - -* Deprecation info is not visible, by default, on installed tab - [#8541](https://github.com/NuGet/Home/issues/8541) - -* Improve network diagnostics to understand real world http download perf in VS - [#8592](https://github.com/NuGet/Home/issues/8592) - -* --skip-duplicate support for dotnet nuget push - [#8778](https://github.com/NuGet/Home/issues/8778) - -* msbuild /restore works with Packages.Config - [#8506](https://github.com/NuGet/Home/issues/8506) +* Restore: IncludeExcludeFiles.Equals(...) implementation is incorrect - [#9167](https://github.com/NuGet/Home/issues/9167) -**DCR:** - -* nuget.exe pack should no longer warn about packing a SemVer 2.0.0 package - [#5201](https://github.com/NuGet/Home/issues/5201) - -* NuGet PackageManager UI handles icons from and - [#8189](https://github.com/NuGet/Home/issues/8189) - -* Logic in _GetRestoreProjectStyle should be in a task - [#8804](https://github.com/NuGet/Home/issues/8804) +* Restore: PackageSpec.Clone() creates unequal clone - [#9211](https://github.com/NuGet/Home/issues/9211) **None:** @@ -151,13 +121,13 @@ NuGet distribution vehicles: * SpecCommand tests depend on the current year - [#8984](https://github.com/NuGet/Home/issues/8984) -* Restore: large strings created on large object heap (LOH) - [#9031](https://github.com/NuGet/Home/issues/9031) +* Restore: large strings created on large object heap (LOH) - [#9031](https://github.com/NuGet/Home/issues/9031) * Make the dotnet.exe functional tests runnable from Visual Studio, speed up the Dotnet.Integration.Test suite by 40% - [#9036](https://github.com/NuGet/Home/issues/9036) -* Restore: DependencyGraphSpec.Load(...) does not need JObject - [#9040](https://github.com/NuGet/Home/issues/9040) +* Restore: DependencyGraphSpec.Load(...) does not need JObject - [#9040](https://github.com/NuGet/Home/issues/9040) -* Restore: closure computed for each project 4 times - [#9042](https://github.com/NuGet/Home/issues/9042) +* Restore: closure computed for each project 4 times - [#9042](https://github.com/NuGet/Home/issues/9042) * Static Graph restore should not pass empty SolutionPath - [#9061](https://github.com/NuGet/Home/issues/9061) From 2bb316b5d691d237e39d02a0542240ffe909fd91 Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Thu, 19 Mar 2020 20:01:06 -0700 Subject: [PATCH 018/988] cleaned up none section --- docs/release-notes/NuGet-5.5.md | 24 ++---------------------- 1 file changed, 2 insertions(+), 22 deletions(-) diff --git a/docs/release-notes/NuGet-5.5.md b/docs/release-notes/NuGet-5.5.md index f186717d4..054fa154b 100644 --- a/docs/release-notes/NuGet-5.5.md +++ b/docs/release-notes/NuGet-5.5.md @@ -101,26 +101,12 @@ NuGet distribution vehicles: * Restore: PackageSpec.Clone() creates unequal clone - [#9211](https://github.com/NuGet/Home/issues/9211) -**None:** - * Error list shown although "Always show Error List if build finishes with errors" is not checked - [#8190](https://github.com/NuGet/Home/issues/8190) -* Floating version "*" retrieves incorrect nuget package version (not latest) - [#8333](https://github.com/NuGet/Home/issues/8333) - -* Temporary fix on patching SDK for System.Security.Cryptography.Pkcs.dll - [#8508](https://github.com/NuGet/Home/issues/8508) - -* Code files (.pp) in ContentFiles folder not added to consuming PackageReference project - [#8718](https://github.com/NuGet/Home/issues/8718) - -* ExcludeRestorePackageImports=true should not exclude package path properties - [#8840](https://github.com/NuGet/Home/issues/8840) - -* Nuget package can be installed multiple times in different versions - [#8865](https://github.com/NuGet/Home/issues/8865) +**None:** * Add more settings tests - completely cover project\sln level support across products - [#8927](https://github.com/NuGet/Home/issues/8927) -* [Test Failure]Confusing supported .NET Framework version v0.0 show in the error NU1202 message when installing a package into a project with incompatible framework - [#8965](https://github.com/NuGet/Home/issues/8965) - -* SpecCommand tests depend on the current year - [#8984](https://github.com/NuGet/Home/issues/8984) - * Restore: large strings created on large object heap (LOH) - [#9031](https://github.com/NuGet/Home/issues/9031) * Make the dotnet.exe functional tests runnable from Visual Studio, speed up the Dotnet.Integration.Test suite by 40% - [#9036](https://github.com/NuGet/Home/issues/9036) @@ -129,10 +115,4 @@ NuGet distribution vehicles: * Restore: closure computed for each project 4 times - [#9042](https://github.com/NuGet/Home/issues/9042) -* Static Graph restore should not pass empty SolutionPath - [#9061](https://github.com/NuGet/Home/issues/9061) - -* NuGet.Build.Tasks.Console should have its own unit test assembly - [#9065](https://github.com/NuGet/Home/issues/9065) - -* Add unit tests for RestoreTaskExe - [#9067](https://github.com/NuGet/Home/issues/9067) - -* Delete TestEnvironment class in SDK resolver test assembly - [#9102](https://github.com/NuGet/Home/issues/9102) \ No newline at end of file +* Static Graph restore should not pass empty SolutionPath - [#9061](https://github.com/NuGet/Home/issues/9061) \ No newline at end of file From 81f25f6a011ce525c00083db13f83ac378fac5e1 Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Fri, 20 Mar 2020 13:21:11 -0700 Subject: [PATCH 019/988] feedback --- docs/release-notes/NuGet-5.5.md | 24 ++++++------------------ 1 file changed, 6 insertions(+), 18 deletions(-) diff --git a/docs/release-notes/NuGet-5.5.md b/docs/release-notes/NuGet-5.5.md index 054fa154b..c97d74aed 100644 --- a/docs/release-notes/NuGet-5.5.md +++ b/docs/release-notes/NuGet-5.5.md @@ -25,7 +25,7 @@ NuGet distribution vehicles: * msbuild /restore works with Packages.Config -* Change the way we read XML files +* Change the way how XML files are read **Feature:** @@ -37,12 +37,12 @@ NuGet distribution vehicles: * msbuild /restore works with Packages.Config - [#8506](https://github.com/NuGet/Home/issues/8506) +* Embedded Icons support in NuGet PackageManager UI - [#8189](https://github.com/NuGet/Home/issues/8189) + **DCR:** * nuget.exe pack should no longer warn about packing a SemVer 2.0.0 package - [#5201](https://github.com/NuGet/Home/issues/5201) -* Embedded Icons support in NuGet PackageManager UI - [#8189](https://github.com/NuGet/Home/issues/8189) - * Logic in _GetRestoreProjectStyle should be in a task - [#8804](https://github.com/NuGet/Home/issues/8804) * Deprecation info is not visible, by default, on installed tab - [#8541](https://github.com/NuGet/Home/issues/8541) @@ -71,8 +71,6 @@ NuGet distribution vehicles: * The Visual Studio NuGet packages (RestoreManagerPackage) needs to auto load on solution build events - [#8796](https://github.com/NuGet/Home/issues/8796) -* [Test Failure] Package icon becomes a default icon after installing ‘Newtonsoft.Json’ with latest versoin - [#8814](https://github.com/NuGet/Home/issues/8814) - * Deadlock in VSSettings init - [#8842](https://github.com/NuGet/Home/issues/8842) * VisualStudio ToolBox is not populated from a NuGet package if a project is placed in a solution folder - [#8868](https://github.com/NuGet/Home/issues/8868) @@ -81,14 +79,10 @@ NuGet distribution vehicles: * Constant "loading.." on installed tab, and "searching .." on updates tab - [#8890](https://github.com/NuGet/Home/issues/8890) -* NuGet client tools strategy with multiple feeds on packages with version floats - [#8992](https://github.com/NuGet/Home/issues/8992) - * Accessibility Fixes in PM UI - altText, etc... - [#9059](https://github.com/NuGet/Home/issues/9059) * Missing Embedded Icons in VS PM UI after cache expires - [#9069](https://github.com/NuGet/Home/issues/9069) -* Icon missing after package install in VS PM UI - [#9072](https://github.com/NuGet/Home/issues/9072) - * Review Accessibility bugs - [#9077](https://github.com/NuGet/Home/issues/9077) * PMUI Tabs have Accessibility Issues - [#9078](https://github.com/NuGet/Home/issues/9078) @@ -103,16 +97,10 @@ NuGet distribution vehicles: * Error list shown although "Always show Error List if build finishes with errors" is not checked - [#8190](https://github.com/NuGet/Home/issues/8190) -**None:** - -* Add more settings tests - completely cover project\sln level support across products - [#8927](https://github.com/NuGet/Home/issues/8927) - -* Restore: large strings created on large object heap (LOH) - [#9031](https://github.com/NuGet/Home/issues/9031) +* Static Graph restore should not pass empty SolutionPath - [#9061](https://github.com/NuGet/Home/issues/9061) -* Make the dotnet.exe functional tests runnable from Visual Studio, speed up the Dotnet.Integration.Test suite by 40% - [#9036](https://github.com/NuGet/Home/issues/9036) +* Restore: closure computed for each project 4 times - [#9042](https://github.com/NuGet/Home/issues/9042) * Restore: DependencyGraphSpec.Load(...) does not need JObject - [#9040](https://github.com/NuGet/Home/issues/9040) -* Restore: closure computed for each project 4 times - [#9042](https://github.com/NuGet/Home/issues/9042) - -* Static Graph restore should not pass empty SolutionPath - [#9061](https://github.com/NuGet/Home/issues/9061) \ No newline at end of file +* Restore: large strings created on large object heap (LOH) - [#9031](https://github.com/NuGet/Home/issues/9031) \ No newline at end of file From f2dc82eb077266d7d772af342c7122c597c067b5 Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Fri, 20 Mar 2020 15:06:18 -0700 Subject: [PATCH 020/988] feedback removed xml entry from whats new section --- docs/release-notes/NuGet-5.5.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/docs/release-notes/NuGet-5.5.md b/docs/release-notes/NuGet-5.5.md index c97d74aed..498b78cd9 100644 --- a/docs/release-notes/NuGet-5.5.md +++ b/docs/release-notes/NuGet-5.5.md @@ -25,8 +25,6 @@ NuGet distribution vehicles: * msbuild /restore works with Packages.Config -* Change the way how XML files are read - **Feature:** * add `dotnet nuget source` command - [#4126](https://github.com/NuGet/Home/issues/4126) From 11d1bd1ba3e7f41cf114ab585b92c0989b4bb8ac Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Fri, 20 Mar 2020 16:41:21 -0700 Subject: [PATCH 021/988] adressed feedback --- docs/release-notes/NuGet-5.5.md | 48 ++++++++++++++++----------------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/docs/release-notes/NuGet-5.5.md b/docs/release-notes/NuGet-5.5.md index 498b78cd9..00ce23457 100644 --- a/docs/release-notes/NuGet-5.5.md +++ b/docs/release-notes/NuGet-5.5.md @@ -19,13 +19,23 @@ NuGet distribution vehicles: ## Summary: What's New in 5.5 -* Several accessibility fixes in PM UI +* Several accessibility fixes in the NuGet package manager UI in Visual Studio + + * Accessibility Fixes in PM UI - altText, etc... - [#9059](https://github.com/NuGet/Home/issues/9059) + + * Review Accessibility bugs - [#9077](https://github.com/NuGet/Home/issues/9077) + + * PMUI Tabs have Accessibility Issues - [#9078](https://github.com/NuGet/Home/issues/9078) + + * Accessibility Fixes in PM UI - [#9157](https://github.com/NuGet/Home/issues/9157) + +* Embedded Icons support in the NuGet package manager UI in Visual Studio - [#8189](https://github.com/NuGet/Home/issues/8189) * dotnet.exe reliability fixes with cross platform authentication plugins -* msbuild /restore works with Packages.Config + * dotnet restore failing with TaskCanceledException - [#7842](https://github.com/NuGet/Home/issues/7842) -**Feature:** + * Plugin: "A task was cancelled" - problem with ADO authentication due to this. - [#8528](https://github.com/NuGet/Home/issues/8528) * add `dotnet nuget source` command - [#4126](https://github.com/NuGet/Home/issues/4126) @@ -35,17 +45,11 @@ NuGet distribution vehicles: * msbuild /restore works with Packages.Config - [#8506](https://github.com/NuGet/Home/issues/8506) -* Embedded Icons support in NuGet PackageManager UI - [#8189](https://github.com/NuGet/Home/issues/8189) - -**DCR:** - * nuget.exe pack should no longer warn about packing a SemVer 2.0.0 package - [#5201](https://github.com/NuGet/Home/issues/5201) -* Logic in _GetRestoreProjectStyle should be in a task - [#8804](https://github.com/NuGet/Home/issues/8804) +### Issues fixed in this release -* Deprecation info is not visible, by default, on installed tab - [#8541](https://github.com/NuGet/Home/issues/8541) - -**Bug:** +**Bugs** * Rework Self-Updater with V3 Apis - [#4197](https://github.com/NuGet/Home/issues/4197) @@ -53,16 +57,12 @@ NuGet distribution vehicles: * ErrorUnsafePackageEntry error message is not pointing to source of problem - [#7505](https://github.com/NuGet/Home/issues/7505) -* dotnet restore failing with TaskCanceledException - [#7842](https://github.com/NuGet/Home/issues/7842) - * Lock file is not honored in "*" scenarios - [#8073](https://github.com/NuGet/Home/issues/8073) * NuGet.exe does not resolve to the latest version of a package when using * in PackageReference (MSBuild/Dotnet/VS restore do) - [#8432](https://github.com/NuGet/Home/issues/8432) * dotnet list package with multi targeting WPF project - [#8463](https://github.com/NuGet/Home/issues/8463) -* Plugin: "A task was cancelled" - problem with ADO authentication due to this. - [#8528](https://github.com/NuGet/Home/issues/8528) - * Improve ConcurrencyUtilities (reduce CPU usage) - [#8653](https://github.com/NuGet/Home/issues/8653) * DG Spec for unloaded project scenarios should not be written in preview restores - [#8793](https://github.com/NuGet/Home/issues/8793) @@ -77,18 +77,10 @@ NuGet distribution vehicles: * Constant "loading.." on installed tab, and "searching .." on updates tab - [#8890](https://github.com/NuGet/Home/issues/8890) -* Accessibility Fixes in PM UI - altText, etc... - [#9059](https://github.com/NuGet/Home/issues/9059) - * Missing Embedded Icons in VS PM UI after cache expires - [#9069](https://github.com/NuGet/Home/issues/9069) -* Review Accessibility bugs - [#9077](https://github.com/NuGet/Home/issues/9077) - -* PMUI Tabs have Accessibility Issues - [#9078](https://github.com/NuGet/Home/issues/9078) - * FireAndForget PM UI startup - [#9112](https://github.com/NuGet/Home/issues/9112) -* Accessibility Fixes in PM UI - [#9157](https://github.com/NuGet/Home/issues/9157) - * Restore: IncludeExcludeFiles.Equals(...) implementation is incorrect - [#9167](https://github.com/NuGet/Home/issues/9167) * Restore: PackageSpec.Clone() creates unequal clone - [#9211](https://github.com/NuGet/Home/issues/9211) @@ -101,4 +93,12 @@ NuGet distribution vehicles: * Restore: DependencyGraphSpec.Load(...) does not need JObject - [#9040](https://github.com/NuGet/Home/issues/9040) -* Restore: large strings created on large object heap (LOH) - [#9031](https://github.com/NuGet/Home/issues/9031) \ No newline at end of file +* Restore: large strings created on large object heap (LOH) - [#9031](https://github.com/NuGet/Home/issues/9031) + +**DCR** + +* Logic in _GetRestoreProjectStyle should be in a task - [#8804](https://github.com/NuGet/Home/issues/8804) + +* Add deprecation information by default on the installed tab - [#8541](https://github.com/NuGet/Home/issues/8541) + +**[List of all issues fixed in this release - 5.5](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5e0e5fbd021f7aa0ec95db18)** \ No newline at end of file From 5da0e9278b3098e2735b3060085b55a045451650 Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Fri, 20 Mar 2020 17:05:59 -0700 Subject: [PATCH 022/988] update title 9077 Co-Authored-By: Fernando Aguilar --- docs/release-notes/NuGet-5.5.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/release-notes/NuGet-5.5.md b/docs/release-notes/NuGet-5.5.md index 00ce23457..fe76621fb 100644 --- a/docs/release-notes/NuGet-5.5.md +++ b/docs/release-notes/NuGet-5.5.md @@ -23,7 +23,7 @@ NuGet distribution vehicles: * Accessibility Fixes in PM UI - altText, etc... - [#9059](https://github.com/NuGet/Home/issues/9059) - * Review Accessibility bugs - [#9077](https://github.com/NuGet/Home/issues/9077) + * Accessibility issues in Screen Reader experiences in Packages List - [#9077](https://github.com/NuGet/Home/issues/9077) * PMUI Tabs have Accessibility Issues - [#9078](https://github.com/NuGet/Home/issues/9078) @@ -101,4 +101,4 @@ NuGet distribution vehicles: * Add deprecation information by default on the installed tab - [#8541](https://github.com/NuGet/Home/issues/8541) -**[List of all issues fixed in this release - 5.5](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5e0e5fbd021f7aa0ec95db18)** \ No newline at end of file +**[List of all issues fixed in this release - 5.5](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5e0e5fbd021f7aa0ec95db18)** From f3e2d474a70e5ee6692d850c429c190f2a76c21a Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Fri, 20 Mar 2020 17:09:15 -0700 Subject: [PATCH 023/988] updated accessibility title Co-Authored-By: Fernando Aguilar --- docs/release-notes/NuGet-5.5.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-5.5.md b/docs/release-notes/NuGet-5.5.md index fe76621fb..c222c78e3 100644 --- a/docs/release-notes/NuGet-5.5.md +++ b/docs/release-notes/NuGet-5.5.md @@ -19,7 +19,7 @@ NuGet distribution vehicles: ## Summary: What's New in 5.5 -* Several accessibility fixes in the NuGet package manager UI in Visual Studio +* NuGet Package Manager is more accessible using assitive Screen Readers * Accessibility Fixes in PM UI - altText, etc... - [#9059](https://github.com/NuGet/Home/issues/9059) From 2502102bdbe3040227c75a59ffbd62854994eb82 Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Fri, 20 Mar 2020 17:10:05 -0700 Subject: [PATCH 024/988] updated Accessibility issues title --- docs/release-notes/NuGet-5.5.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-5.5.md b/docs/release-notes/NuGet-5.5.md index c222c78e3..2bd33ef58 100644 --- a/docs/release-notes/NuGet-5.5.md +++ b/docs/release-notes/NuGet-5.5.md @@ -19,7 +19,7 @@ NuGet distribution vehicles: ## Summary: What's New in 5.5 -* NuGet Package Manager is more accessible using assitive Screen Readers +* NuGet Package Manager in Visual Studio is more accessible using assitive Screen Readers * Accessibility Fixes in PM UI - altText, etc... - [#9059](https://github.com/NuGet/Home/issues/9059) From 48e0fbc10ce6e269ae09c890b2b78b2ba31b4b79 Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Mon, 23 Mar 2020 07:42:06 -0700 Subject: [PATCH 025/988] added no-op restore under wha's new --- docs/release-notes/NuGet-5.5.md | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/docs/release-notes/NuGet-5.5.md b/docs/release-notes/NuGet-5.5.md index 2bd33ef58..523ae1fa6 100644 --- a/docs/release-notes/NuGet-5.5.md +++ b/docs/release-notes/NuGet-5.5.md @@ -19,18 +19,20 @@ NuGet distribution vehicles: ## Summary: What's New in 5.5 -* NuGet Package Manager in Visual Studio is more accessible using assitive Screen Readers +* Several accessibility fixes in the NuGet package manager UI in Visual Studio - * Accessibility Fixes in PM UI - altText, etc... - [#9059](https://github.com/NuGet/Home/issues/9059) + * Accessibility issues in Screen Reader experiences, missing altText and accessible name for Installed textbox, etc., - [#9059](https://github.com/NuGet/Home/issues/9059) - * Accessibility issues in Screen Reader experiences in Packages List - [#9077](https://github.com/NuGet/Home/issues/9077) + * Accessibility issues in Screen Reader experiences in Packages List - [#9077](https://github.com/NuGet/Home/issues/9077) - * PMUI Tabs have Accessibility Issues - [#9078](https://github.com/NuGet/Home/issues/9078) + * Accessibility issues in Screen Reader experiences related to "browse","install","update" Tabs - [#9078](https://github.com/NuGet/Home/issues/9078) - * Accessibility Fixes in PM UI - [#9157](https://github.com/NuGet/Home/issues/9157) + * Narrator does not announce "Blank","No Dependencies","nuget.org","MIT" link label [#9157](https://github.com/NuGet/Home/issues/9157 * Embedded Icons support in the NuGet package manager UI in Visual Studio - [#8189](https://github.com/NuGet/Home/issues/8189) +* Make noop restore faster - speed up evaluations by calling MSBuild Static Graph apis - [8791](https://github.com/NuGet/Home/issues/8791) + * dotnet.exe reliability fixes with cross platform authentication plugins * dotnet restore failing with TaskCanceledException - [#7842](https://github.com/NuGet/Home/issues/7842) @@ -95,10 +97,14 @@ NuGet distribution vehicles: * Restore: large strings created on large object heap (LOH) - [#9031](https://github.com/NuGet/Home/issues/9031) +* Custom nuget.exe on newer mono might break due to the MSBuild SDK Resolver - [8848](https://github.com/NuGet/Home/issues/8848) + +* restore fails when nuget.dgspec.json is "used by another process" - [8692](https://github.com/NuGet/Home/issues/8692) + **DCR** * Logic in _GetRestoreProjectStyle should be in a task - [#8804](https://github.com/NuGet/Home/issues/8804) * Add deprecation information by default on the installed tab - [#8541](https://github.com/NuGet/Home/issues/8541) -**[List of all issues fixed in this release - 5.5](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5e0e5fbd021f7aa0ec95db18)** +**[List of all issues fixed in this release - 5.5](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5e0e5fbd021f7aa0ec95db18)** \ No newline at end of file From d927d8ec742699793c25bd2ad1f51ad923ecabc4 Mon Sep 17 00:00:00 2001 From: Karan Nandwani Date: Mon, 23 Mar 2020 09:10:17 -1000 Subject: [PATCH 026/988] Update docs/quickstart/install-and-use-a-package-in-visual-studio.md --- docs/quickstart/install-and-use-a-package-in-visual-studio.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/quickstart/install-and-use-a-package-in-visual-studio.md b/docs/quickstart/install-and-use-a-package-in-visual-studio.md index 12c3e9a51..52d6e4aef 100644 --- a/docs/quickstart/install-and-use-a-package-in-visual-studio.md +++ b/docs/quickstart/install-and-use-a-package-in-visual-studio.md @@ -9,7 +9,7 @@ ms.topic: quickstart # Quickstart: Install and use a package in Visual Studio (Windows only) -NuGet packages contain reusable code that other developers make available to you for use in your projects. See [What is NuGet?](../What-is-NuGet.md) for background. Packages are installed into a Visual Studio project using the [dotnet command line](install-and-use-a-package-using-the-dotnet-cli.md), the NuGet Package Manager, or the Package Manager Console. This article demonstrates the process using the popular [Newtonsoft.Json](https://www.nuget.org/packages/Newtonsoft.Json/) package and a Windows Presentation Foundation (WPF) project. The same process applies to any other .NET or .NET Core project. +NuGet packages contain reusable code that other developers make available to you for use in your projects. See [What is NuGet?](../What-is-NuGet.md) for background. Packages are installed into a Visual Studio project using the NuGet Package Manager, the [Package Manager Console](../consume-packages/install-use-packages-powershell), or the [dotnet CLI](install-and-use-a-package-using-the-dotnet-cli.md). This article demonstrates the process using the popular [Newtonsoft.Json](https://www.nuget.org/packages/Newtonsoft.Json/) package and a Windows Presentation Foundation (WPF) project. The same process applies to any other .NET or .NET Core project. Once installed, refer to the package in code with `using ` where \ is specific to the package you're using. Once the reference is made, you can call the package through its API. From 8a0bf311692236ff13a34a18b16efa8e14858391 Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Mon, 23 Mar 2020 13:22:33 -0700 Subject: [PATCH 027/988] feedback on summary section Co-Authored-By: Karan Nandwani --- docs/release-notes/NuGet-5.5.md | 24 +++++++----------------- 1 file changed, 7 insertions(+), 17 deletions(-) diff --git a/docs/release-notes/NuGet-5.5.md b/docs/release-notes/NuGet-5.5.md index 523ae1fa6..3e73e275b 100644 --- a/docs/release-notes/NuGet-5.5.md +++ b/docs/release-notes/NuGet-5.5.md @@ -19,35 +19,25 @@ NuGet distribution vehicles: ## Summary: What's New in 5.5 -* Several accessibility fixes in the NuGet package manager UI in Visual Studio - +* Improved accessibility and screen reader experience for the NuGet package manager UI in Visual Studio * Accessibility issues in Screen Reader experiences, missing altText and accessible name for Installed textbox, etc., - [#9059](https://github.com/NuGet/Home/issues/9059) - * Accessibility issues in Screen Reader experiences in Packages List - [#9077](https://github.com/NuGet/Home/issues/9077) - * Accessibility issues in Screen Reader experiences related to "browse","install","update" Tabs - [#9078](https://github.com/NuGet/Home/issues/9078) - * Narrator does not announce "Blank","No Dependencies","nuget.org","MIT" link label [#9157](https://github.com/NuGet/Home/issues/9157 -* Embedded Icons support in the NuGet package manager UI in Visual Studio - [#8189](https://github.com/NuGet/Home/issues/8189) +* Support for surfacing self-contained icons in Visual Studio package manager UI for packages hosted on local feeds - [#8189](https://github.com/NuGet/Home/issues/8189) -* Make noop restore faster - speed up evaluations by calling MSBuild Static Graph apis - [8791](https://github.com/NuGet/Home/issues/8791) - -* dotnet.exe reliability fixes with cross platform authentication plugins +* Significantly improved no-op restore performance using `RestoreUseStaticGraphEvaluation` which speeds up evaluations by calling MSBuild Static Graph APIs - [8791](https://github.com/NuGet/Home/issues/8791) +* Improved dotnet.exe reliability with cross-platform authentication plugins * dotnet restore failing with TaskCanceledException - [#7842](https://github.com/NuGet/Home/issues/7842) - * Plugin: "A task was cancelled" - problem with ADO authentication due to this. - [#8528](https://github.com/NuGet/Home/issues/8528) * add `dotnet nuget source` command - [#4126](https://github.com/NuGet/Home/issues/4126) -* Improve network diagnostics to understand real world http download perf in VS - [#8592](https://github.com/NuGet/Home/issues/8592) - -* --skip-duplicate support for dotnet nuget push - [#8778](https://github.com/NuGet/Home/issues/8778) - -* msbuild /restore works with Packages.Config - [#8506](https://github.com/NuGet/Home/issues/8506) +* Suport for `--skip-duplicate` using dotnet nuget push - [#8778](https://github.com/NuGet/Home/issues/8778) -* nuget.exe pack should no longer warn about packing a SemVer 2.0.0 package - [#5201](https://github.com/NuGet/Home/issues/5201) +* Support `packages.config` with msbuild /restore - [#8506](https://github.com/NuGet/Home/issues/8506) ### Issues fixed in this release @@ -107,4 +97,4 @@ NuGet distribution vehicles: * Add deprecation information by default on the installed tab - [#8541](https://github.com/NuGet/Home/issues/8541) -**[List of all issues fixed in this release - 5.5](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5e0e5fbd021f7aa0ec95db18)** \ No newline at end of file +**[List of all issues fixed in this release - 5.5](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5e0e5fbd021f7aa0ec95db18)** From ded8255291195f30bbb7deb5e810ce4a70d75768 Mon Sep 17 00:00:00 2001 From: Karan Nandwani Date: Mon, 23 Mar 2020 11:12:49 -1000 Subject: [PATCH 028/988] Update docs/nuget-org/policies/deleting-packages.md --- docs/nuget-org/policies/deleting-packages.md | 24 +++++++------------- 1 file changed, 8 insertions(+), 16 deletions(-) diff --git a/docs/nuget-org/policies/deleting-packages.md b/docs/nuget-org/policies/deleting-packages.md index 080f4f914..3d317a64b 100644 --- a/docs/nuget-org/policies/deleting-packages.md +++ b/docs/nuget-org/policies/deleting-packages.md @@ -36,23 +36,15 @@ If you find a package that is in violation of any of these items, click the **Re Note that the NuGet team and the .NET Foundation reserves the right to change these criteria at any time. ## Unlisting a package -The purpose of unlisting a package version is that it hides the package version from search and from nuget.org package details page. Furthermore it allows existing users of the package to keep downloading it, but reduces new adoption since the package is not visible in search. +Unlisting a package version hides it from search and from nuget.org package details page. This allows existing users of the package to continue using it but reduces new adoption since the package is not visible in search. -In order to unlist a specific package version please follow these steps: +Steps to unlist a package: -** Unlist a specific package version ** -- Click the `Account name` at the top right corner. -- Click `Manage packages` -- Click `Published packages` -- Click the package name which version you want to unlist -You will now see all the versions on that package. -- Under the `Status` column click the `Listed` link on that package version you want to unlist. -- You will now be transferred to the "Manage" page of that specific nuget package version. -- Click the plus sign beside the "Listing" and uncheck the checkbox that says: “List in search results”. -- Click the “Save” button. +1. Select `Your account name` (at the top right corner) >`Manage packages` > `Published packages` +1. Select the "Manage package" icon +1. Expand the "Listing" section and select the package version +1. Uncheck “List in search results” and select "Save" -** Verification ** -The specific package version has now been unlisted. In order to verify this open a incognito instance of your browser and move to the URL of the package (without the version part) e.g.: https://www.nuget.org/packages/YOUR-PACKAGE-NAME/. You will see all versions of that package that have * * not * * been unlisted. However if you see the same page while logged in you will see all packages with their status; listed or unlisted. - -It's also possible to deprecate a package version (incase you can't delete a package version). For more information about deprecating package versions, see [Deprecating packages](Deprecate-packages.md). +The specific package version has now been unlisted. In order to verify this open an incognito instance of your browser and navigate to the package page (without the version part) e.g.: https://www.nuget.org/packages/YOUR-PACKAGE-NAME/. You will see all versions of that package that have **not** been unlisted. However, if you see the same page while logged in you will see all packages with their status; listed or unlisted. +It's also possible to deprecate a package version (in case you can't delete a package version). For more information about deprecating package versions, see [Deprecating packages](Deprecate-packages.md). From f82f8e603ba4fd7a31a226e12cf58c180103e463 Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Mon, 23 Mar 2020 15:34:35 -0700 Subject: [PATCH 029/988] fixed link Co-Authored-By: Karan Nandwani --- docs/release-notes/NuGet-5.5.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-5.5.md b/docs/release-notes/NuGet-5.5.md index 3e73e275b..a6f6db1b4 100644 --- a/docs/release-notes/NuGet-5.5.md +++ b/docs/release-notes/NuGet-5.5.md @@ -23,7 +23,7 @@ NuGet distribution vehicles: * Accessibility issues in Screen Reader experiences, missing altText and accessible name for Installed textbox, etc., - [#9059](https://github.com/NuGet/Home/issues/9059) * Accessibility issues in Screen Reader experiences in Packages List - [#9077](https://github.com/NuGet/Home/issues/9077) * Accessibility issues in Screen Reader experiences related to "browse","install","update" Tabs - [#9078](https://github.com/NuGet/Home/issues/9078) - * Narrator does not announce "Blank","No Dependencies","nuget.org","MIT" link label [#9157](https://github.com/NuGet/Home/issues/9157 + * Narrator does not announce "Blank","No Dependencies","nuget.org","MIT" link label [#9157](https://github.com/NuGet/Home/issues/9157) * Support for surfacing self-contained icons in Visual Studio package manager UI for packages hosted on local feeds - [#8189](https://github.com/NuGet/Home/issues/8189) From 89ed4dbf7b3664a8d797edf980c3432628214822 Mon Sep 17 00:00:00 2001 From: Karan Nandwani Date: Mon, 23 Mar 2020 18:02:35 -1000 Subject: [PATCH 030/988] Update docs/release-notes/NuGet-5.5.md Co-Authored-By: aortiz-msft <58537168+aortiz-msft@users.noreply.github.com> --- docs/release-notes/NuGet-5.5.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-5.5.md b/docs/release-notes/NuGet-5.5.md index a6f6db1b4..af88533a6 100644 --- a/docs/release-notes/NuGet-5.5.md +++ b/docs/release-notes/NuGet-5.5.md @@ -91,7 +91,7 @@ NuGet distribution vehicles: * restore fails when nuget.dgspec.json is "used by another process" - [8692](https://github.com/NuGet/Home/issues/8692) -**DCR** +**DCRs** * Logic in _GetRestoreProjectStyle should be in a task - [#8804](https://github.com/NuGet/Home/issues/8804) From d6d8eeec51c010adb09e4522373ac91333553f6f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Sharma?= Date: Tue, 24 Mar 2020 14:35:13 -0700 Subject: [PATCH 031/988] Fix broken link in symbols documentation (#1968) --- docs/create-packages/Symbol-Packages-snupkg.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/create-packages/Symbol-Packages-snupkg.md b/docs/create-packages/Symbol-Packages-snupkg.md index 19efed900..76e55ab9e 100644 --- a/docs/create-packages/Symbol-Packages-snupkg.md +++ b/docs/create-packages/Symbol-Packages-snupkg.md @@ -94,7 +94,7 @@ NuGet.org supports its own symbols server repository and only accepts the new sy NuGet.org has the following constraints for symbol packages: - Only the following file extensions are allowed in symbol packages: `.pdb`, `.nuspec`, `.xml`, `.psmdcp`, `.rels`, `.p7s` -- Only managed [Portable PDBs](https://github.com/dotnet/corefx/blob/master/src/System.Reflection.Metadata/specs/PortablePdb-Metadata.md) are supported on NuGet.org's symbol server. +- Only managed [Portable PDBs](https://github.com/dotnet/runtime/blob/87572a799bfd37779c079faf28544e3f9a16be58/src/libraries/System.Reflection.Metadata/specs/PortablePdb-Metadata.md) are supported on NuGet.org's symbol server. - The PDBs and their associated .nupkg DLLs need to be built with the compiler in Visual Studio version 15.9 or above (see [PDB crypto hash](https://github.com/dotnet/roslyn/issues/24429)) Symbol packages published to NuGet.org will fail validation if these constraints aren't met. From 13c5a0a06d69933ef5d1296eed9daef00dfb692d Mon Sep 17 00:00:00 2001 From: Rob Relyea Date: Tue, 24 Mar 2020 15:27:12 -0700 Subject: [PATCH 032/988] Update Package-Restore.md --- docs/consume-packages/Package-Restore.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/docs/consume-packages/Package-Restore.md b/docs/consume-packages/Package-Restore.md index 3bdfec597..68c5d9bf6 100644 --- a/docs/consume-packages/Package-Restore.md +++ b/docs/consume-packages/Package-Restore.md @@ -162,6 +162,14 @@ To restore packages listed in the project file with PackageReference, use the th ``` Make sure that the MSBuild output indicates that the build completed successfully. + +> [!Note] +> msbuild has a `-restore` switch which will run `Restore` and then build. See [Restoring and building with one MSBuild command](/nuget/reference/msbuild-targets#restoring-and-building-with-one-msbuild-command). + +```cmd +# Will restore the project, then build, since build is the default target. +msbuild -restore +``` ## Restore using Azure Pipelines From df1d564273f569560d3a0e8a4a41aa8ef6b2c7c6 Mon Sep 17 00:00:00 2001 From: Karan Nandwani Date: Tue, 31 Mar 2020 22:51:32 -0700 Subject: [PATCH 033/988] Fixes #1975 Fixes #1975 --- docs/release-notes/Index.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/release-notes/Index.md b/docs/release-notes/Index.md index ffa8d4f24..cc4d5834d 100644 --- a/docs/release-notes/Index.md +++ b/docs/release-notes/Index.md @@ -11,6 +11,8 @@ ms.topic: conceptual [Known Issues](../release-notes/known-issues.md) +[NuGet 5.5](../release-notes/NuGet-5.5.md) + [NuGet 5.4](../release-notes/NuGet-5.4.md) [NuGet 5.3](../release-notes/NuGet-5.3.md) From 97d269cad480d87c8b187e2587e377fe2731552c Mon Sep 17 00:00:00 2001 From: Karan Nandwani Date: Wed, 1 Apr 2020 18:25:23 -0700 Subject: [PATCH 034/988] Update deleting-packages.md --- docs/nuget-org/policies/deleting-packages.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/nuget-org/policies/deleting-packages.md b/docs/nuget-org/policies/deleting-packages.md index 3d317a64b..3629a9134 100644 --- a/docs/nuget-org/policies/deleting-packages.md +++ b/docs/nuget-org/policies/deleting-packages.md @@ -45,6 +45,6 @@ Steps to unlist a package: 1. Expand the "Listing" section and select the package version 1. Uncheck “List in search results” and select "Save" -The specific package version has now been unlisted. In order to verify this open an incognito instance of your browser and navigate to the package page (without the version part) e.g.: https://www.nuget.org/packages/YOUR-PACKAGE-NAME/. You will see all versions of that package that have **not** been unlisted. However, if you see the same page while logged in you will see all packages with their status; listed or unlisted. +The specific package version has now been unlisted. In order to verify this, logout of your account and navigate to the package page (without the version part) e.g.: https://www.nuget.org/packages/YOUR-PACKAGE-NAME/. You will see all versions of that package that have **not** been unlisted. However, the package owner, when logged in, can see all versions and their listing status. It's also possible to deprecate a package version (in case you can't delete a package version). For more information about deprecating package versions, see [Deprecating packages](Deprecate-packages.md). From e6652f412745ab1f9269b2016764a278e44729b7 Mon Sep 17 00:00:00 2001 From: Karan Nandwani Date: Wed, 1 Apr 2020 18:30:36 -0700 Subject: [PATCH 035/988] Update deleting-packages.md --- docs/nuget-org/policies/deleting-packages.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/nuget-org/policies/deleting-packages.md b/docs/nuget-org/policies/deleting-packages.md index 3629a9134..0e8061241 100644 --- a/docs/nuget-org/policies/deleting-packages.md +++ b/docs/nuget-org/policies/deleting-packages.md @@ -11,7 +11,7 @@ ms.topic: conceptual nuget.org does not support permanent deletion of packages. Doing so would break every project depending on the availability of the package, especially with build workflows that involve package restore. -nuget.org does supports *unlisting* a package, which can be done in the package management page on the web site. Unlisted packages don't appear on nuget.org or in the Visual Studio UI, and do not appear in search results. Unlisted packages, however, can still be downloaded and installed by using an exact version number, which supports package restore. In addition, unlisted packages may still be discovered in the following specific scenarios: +nuget.org does supports [unlisting a package](#unlisting-a-package), which can be done in the package management page on the web site. Unlisted packages don't appear on nuget.org or in the Visual Studio UI, and do not appear in search results. Unlisted packages, however, can still be downloaded and installed by using an exact version number, which supports package restore. In addition, unlisted packages may still be discovered in the following specific scenarios: - Package restore using floating versions (for example, `1.0.0-*`), if the latest available package matching the version or dependency constraints is an unlisted package. - Replication of packages through the catalog (as the catalog also contains unlisted packages). @@ -47,4 +47,4 @@ Steps to unlist a package: The specific package version has now been unlisted. In order to verify this, logout of your account and navigate to the package page (without the version part) e.g.: https://www.nuget.org/packages/YOUR-PACKAGE-NAME/. You will see all versions of that package that have **not** been unlisted. However, the package owner, when logged in, can see all versions and their listing status. -It's also possible to deprecate a package version (in case you can't delete a package version). For more information about deprecating package versions, see [Deprecating packages](Deprecate-packages.md). +It's also possible to deprecate a package version (in case you can't delete a package version). For more information about deprecating package versions, see [Deprecating packages](../deprecate-packages.md). From 515d5efed02af6d102ba0738ccb6948b137680f2 Mon Sep 17 00:00:00 2001 From: Ben Bodenmiller Date: Mon, 27 Apr 2020 16:59:19 -0700 Subject: [PATCH 036/988] Add missing space --- docs/consume-packages/Package-Restore.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Package-Restore.md b/docs/consume-packages/Package-Restore.md index 3bdfec597..bc89b8daf 100644 --- a/docs/consume-packages/Package-Restore.md +++ b/docs/consume-packages/Package-Restore.md @@ -138,7 +138,7 @@ NuGet has two formats in which a project may use packages: [`PackageReference`]( [!INCLUDE [restore-nuget-exe-cli](includes/restore-nuget-exe-cli.md)] > [!IMPORTANT] -> The `restore`command does not modify a project file or *packages.config*. To add a dependency, either add a package through the Package Manager UI or Console in Visual Studio, or modify *packages.config* and then run either `install` or `restore`. +> The `restore` command does not modify a project file or *packages.config*. To add a dependency, either add a package through the Package Manager UI or Console in Visual Studio, or modify *packages.config* and then run either `install` or `restore`. ## Restore using MSBuild From c89d2cdb869c8f0acdb76f0b7bcf7ecaf40a07c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Sharma?= Date: Fri, 8 May 2020 12:59:20 -0700 Subject: [PATCH 037/988] Removing outdated comment. (#2011) --- docs/nuget-org/policies/dispute-resolution.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/nuget-org/policies/dispute-resolution.md b/docs/nuget-org/policies/dispute-resolution.md index a0812ca5c..69a1e8634 100644 --- a/docs/nuget-org/policies/dispute-resolution.md +++ b/docs/nuget-org/policies/dispute-resolution.md @@ -15,7 +15,7 @@ For example, suppose that Northwind Traders makes a CRM system for which they pr In this scenario, Nancy does not appear to be acting with bad intentions, but is rather supporting Northwind's tools and customers by contributing her own time and code. At the same time, Northwind is the legitimate owner of the Northwind name. -By following the process below, Northwind and Nancy can work together to a suitable resolution, because both are interested in serving the developer community. It's typically not necessary for the NuGet team to become involved; collaboration usually works out best. In fact, every dispute brought to the NuGet team's attention to date has been worked out without the team needing to pass judgment. +By following the process below, Northwind and Nancy can work together to a suitable resolution, because both are interested in serving the developer community. It's typically not necessary for the NuGet team to become involved; collaboration usually works out best. ## Process From ad79264a82904d98b5a730f4d572a969cd335bd3 Mon Sep 17 00:00:00 2001 From: Shishir H Date: Mon, 11 May 2020 14:19:20 -0700 Subject: [PATCH 038/988] Update throttling limits for display package page (#2028) --- docs/api/rate-limits.md | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/docs/api/rate-limits.md b/docs/api/rate-limits.md index d97559636..f738504b6 100644 --- a/docs/api/rate-limits.md +++ b/docs/api/rate-limits.md @@ -38,7 +38,7 @@ The following tables list the rate limits for the NuGet.org API. > [!Note] > We recommend using NuGet.org's [V3 search APIs](search-query-service-resource.md) as it is not rate limited currently. For V1 and V2 search APIs, the following limits apply: -| API | Limit Type | Limit Value | API usecase | +| API | Limit Type | Limit Value | API Use Case | |:---|:---|:---|:---| **GET** `/api/v1/Packages` | IP | 1000 / minute | Query NuGet package metadata via v1 OData `Packages` collection | **GET** `/api/v1/Search()` | IP | 3000 / minute | Search for NuGet packages via v1 Search endpoint | @@ -47,7 +47,15 @@ The following tables list the rate limits for the NuGet.org API. ## Package Push and Unlist -| API | Limit Type | Limit Value | API usecase | +| API | Limit Type | Limit Value | API Use Case | |:---|:---|:---|:--- | **PUT** `/api/v2/package` | API Key | 350 / hour | Upload a new NuGet package (version) via v2 push endpoint **DELETE** `/api/v2/package/{id}/{version}` | API Key | 250 / hour | Unlist a NuGet package (version) via v2 endpoint + +## nuget.org website page views + +If you are accessing the nuget.org web pages programmatically, consider investigating our documented [V3 APIs](overview.md). These endpoints allow for simpler access to package metadata and content. The V3 API has better availability and has higher performance than accessing the NuGet Gallery web pages, which are designed for web browser interaction. + +| API | Limit Type | Limit Value | API Use Case | +|:---|:---|:---|:--- | +**GET** `/package/{id}/{version}` | IP | 50 / minute | Display package (version) details page. From ad2262c6030c709097abdb1006a534c82171f91a Mon Sep 17 00:00:00 2001 From: BruceHaley Date: Tue, 19 May 2020 12:23:31 -0700 Subject: [PATCH 039/988] Add link to search syntax Issue #1964 --- docs/reference/cli-reference/cli-ref-list.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/cli-reference/cli-ref-list.md b/docs/reference/cli-reference/cli-ref-list.md index e323acf70..6f89a71df 100644 --- a/docs/reference/cli-reference/cli-ref-list.md +++ b/docs/reference/cli-reference/cli-ref-list.md @@ -19,7 +19,7 @@ Displays a list of packages from a given source. If no sources are specified, al nuget list [search terms] [options] ``` -where the optional search terms will filter the displayed list. Search terms are applied to the names of packages, tags, and package descriptions just as they are when using them on nuget.org. +where the optional search terms will filter the displayed list. [Search terms](https://docs.microsoft.com/en-us/nuget/consume-packages/finding-and-choosing-packages#search-syntax) are applied to the names of packages, tags, and package descriptions just as they are when using them on nuget.org. ## Options From dbd939fa498eee5359b3ae73c6883b3b86e7b521 Mon Sep 17 00:00:00 2001 From: Rob Relyea Date: Tue, 19 May 2020 16:29:02 -0700 Subject: [PATCH 040/988] first draft of 5.6.0 release notes --- docs/release-notes/NuGet-5.6.md | 65 +++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 docs/release-notes/NuGet-5.6.md diff --git a/docs/release-notes/NuGet-5.6.md b/docs/release-notes/NuGet-5.6.md new file mode 100644 index 000000000..7cc5c85ca --- /dev/null +++ b/docs/release-notes/NuGet-5.6.md @@ -0,0 +1,65 @@ +# 5.6 Release Notes + +[Full Changelog]("") + +[Issues List](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5e3b2080c4b30708e48bf9f3) + +**DCR:** + +* Support pre-release packages with floating versions. Version="*-*" and similar. - [#912](https://github.com/NuGet/Home/issues/912) + +* add support to `NuGet.exe update` for -DependencyVersion parameter, like install command - [#7694](https://github.com/NuGet/Home/issues/7694) + +* Default verbosity should not report each project's noop restore. - [#8792](https://github.com/NuGet/Home/issues/8792) + +* Sort packages by ID in the Updates tab of the Package Manager UI - [#9278](https://github.com/NuGet/Home/issues/9278) + +* net5.0 tfm - initial support - [#9584](https://github.com/NuGet/Home/issues/9584) + +**Bug:** + +* dotnet nuget push - Missing value for option - [#4864](https://github.com/NuGet/Home/issues/4864) + +* `nuget push *.nupkg` fails with snupkg does not exist - [#8148](https://github.com/NuGet/Home/issues/8148) + +* Pack, and several other code paths, fails dependant on locale. Use RegexOptions.CultureInvariant - [#8246](https://github.com/NuGet/Home/issues/8246) + +* Perf: DG Spec for unloaded project scenarios should not be written in preview restores - [#8793](https://github.com/NuGet/Home/issues/8793) + +* Restore: improve performance by caching solution dependency graph spec - [#9201](https://github.com/NuGet/Home/issues/9201) + +* NuGet UI doesn't work for sdk style projects after installing a package with PMConsole - [#9203](https://github.com/NuGet/Home/issues/9203) + +* [Test Failure] Embedded icon can’t be shown in PM UI with local package feed - depending on / vs \ - [#9225](https://github.com/NuGet/Home/issues/9225) + +* NuGetVersion.TryParseStrict() should return false if it fails to parse - [#9255](https://github.com/NuGet/Home/issues/9255) + +* `nuget.exe push` help for `-source`, should be source name, not source uri - [#9265](https://github.com/NuGet/Home/issues/9265) + +* `dotnet nuget add package SourceUri` creates bad default package source name - [#9277](https://github.com/NuGet/Home/issues/9277) + +* Screen reader doesn't announces "Searching..." message when switching tabs - [#9307](https://github.com/NuGet/Home/issues/9307) + +* [Test Failure] Focus-rect color in themes for PM UI tabs - [#9336](https://github.com/NuGet/Home/issues/9336) + +* Investigate Accessibility bugs reported by the Community - [#9393](https://github.com/NuGet/Home/issues/9393) + +* nuget.exe 5.5 fails to restore with MSBuild 14 or below - [#9458](https://github.com/NuGet/Home/issues/9458) + +* Don't bother logging small millisecond times in restore messages - [#8977](https://github.com/NuGet/Home/issues/8977) + +* Make IOutputConsole async - [#9268](https://github.com/NuGet/Home/issues/9268) + +* MsBuild version picking works badly on some non-english cultures - [#9322](https://github.com/NuGet/Home/issues/9322) + +* Missing format default on sources list - [#9337](https://github.com/NuGet/Home/issues/9337) + +* Highest pre-release dependencies not installed - [#240](https://github.com/NuGet/Home/issues/240) + +* Perf: RestoreOperationLogger has unnecessary thread affinity - [#9288](https://github.com/NuGet/Home/issues/9288) + +* Automated creation of docs for `dotnet nuget` commands. - [#9146](https://github.com/NuGet/Home/issues/9146) + + + + From 013e05fc03a5fe5607073dc2e8c7f88cb5bc8de2 Mon Sep 17 00:00:00 2001 From: Rob Relyea Date: Tue, 19 May 2020 17:10:34 -0700 Subject: [PATCH 041/988] 2nd revision - rob and chris reviewed together --- docs/release-notes/NuGet-5.6.md | 49 +++++++++++++++++++++------------ 1 file changed, 32 insertions(+), 17 deletions(-) diff --git a/docs/release-notes/NuGet-5.6.md b/docs/release-notes/NuGet-5.6.md index 7cc5c85ca..8b9e2af49 100644 --- a/docs/release-notes/NuGet-5.6.md +++ b/docs/release-notes/NuGet-5.6.md @@ -1,26 +1,33 @@ -# 5.6 Release Notes +--- +title: NuGet 5.6 Release Notes +description: Release notes for NuGet 5.6 including new features, bug fixes, and DCRs. +author: chgill-msft +ms.author: chgill +ms.date: 05/19/2020 +ms.topic: conceptual +--- -[Full Changelog]("") +# NuGet 5.6 Release Notes -[Issues List](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5e3b2080c4b30708e48bf9f3) +NuGet distribution vehicles: -**DCR:** +| NuGet version | Available in Visual Studio version| Available in .NET SDK(s)| +|:---|:---|:---| +| [**5.6.0**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.6](https://visualstudio.microsoft.com/downloads/) | [3.1.300](https://dotnet.microsoft.com/download/dotnet-core/3.1)1 | -* Support pre-release packages with floating versions. Version="*-*" and similar. - [#912](https://github.com/NuGet/Home/issues/912) +1Installed with Visual Studio 2019 with .NET Core workload -* add support to `NuGet.exe update` for -DependencyVersion parameter, like install command - [#7694](https://github.com/NuGet/Home/issues/7694) - -* Default verbosity should not report each project's noop restore. - [#8792](https://github.com/NuGet/Home/issues/8792) +## Summary: What's New in 5.6 -* Sort packages by ID in the Updates tab of the Package Manager UI - [#9278](https://github.com/NuGet/Home/issues/9278) +* Support pre-release packages with floating versions. Version="*-*" and similar. - [#912](https://github.com/NuGet/Home/issues/912) -* net5.0 tfm - initial support - [#9584](https://github.com/NuGet/Home/issues/9584) +### Issues fixed in this release **Bug:** -* dotnet nuget push - Missing value for option - [#4864](https://github.com/NuGet/Home/issues/4864) +* `dotnet nuget push` - Missing value for option - [#4864](https://github.com/NuGet/Home/issues/4864) -* `nuget push *.nupkg` fails with snupkg does not exist - [#8148](https://github.com/NuGet/Home/issues/8148) +* `nuget push *.nupkg` fails wheh snupkg does not exist - [#8148](https://github.com/NuGet/Home/issues/8148) * Pack, and several other code paths, fails dependant on locale. Use RegexOptions.CultureInvariant - [#8246](https://github.com/NuGet/Home/issues/8246) @@ -28,7 +35,7 @@ * Restore: improve performance by caching solution dependency graph spec - [#9201](https://github.com/NuGet/Home/issues/9201) -* NuGet UI doesn't work for sdk style projects after installing a package with PMConsole - [#9203](https://github.com/NuGet/Home/issues/9203) +* PM UI doesn't work for sdk style projects after installing a package with PMConsole - [#9203](https://github.com/NuGet/Home/issues/9203) * [Test Failure] Embedded icon can’t be shown in PM UI with local package feed - depending on / vs \ - [#9225](https://github.com/NuGet/Home/issues/9225) @@ -42,7 +49,7 @@ * [Test Failure] Focus-rect color in themes for PM UI tabs - [#9336](https://github.com/NuGet/Home/issues/9336) -* Investigate Accessibility bugs reported by the Community - [#9393](https://github.com/NuGet/Home/issues/9393) +* Several accessibility bugs reported by users - [#9393](https://github.com/NuGet/Home/issues/9393) * nuget.exe 5.5 fails to restore with MSBuild 14 or below - [#9458](https://github.com/NuGet/Home/issues/9458) @@ -52,14 +59,22 @@ * MsBuild version picking works badly on some non-english cultures - [#9322](https://github.com/NuGet/Home/issues/9322) -* Missing format default on sources list - [#9337](https://github.com/NuGet/Home/issues/9337) - -* Highest pre-release dependencies not installed - [#240](https://github.com/NuGet/Home/issues/240) +* Missing format default on `dotnet nuget list source` - [#9337](https://github.com/NuGet/Home/issues/9337) * Perf: RestoreOperationLogger has unnecessary thread affinity - [#9288](https://github.com/NuGet/Home/issues/9288) * Automated creation of docs for `dotnet nuget` commands. - [#9146](https://github.com/NuGet/Home/issues/9146) +* Default verbosity should not report each project's noop restore. - [#8792](https://github.com/NuGet/Home/issues/8792) + +* add support to `NuGet.exe update` for -DependencyVersion parameter, like install command - [#7694](https://github.com/NuGet/Home/issues/7694) +**DCR:** + +* net5.0 tfm - initial support - [#9584](https://github.com/NuGet/Home/issues/9584) + +* Sort packages by ID in the Updates tab of the Package Manager UI - [#9278](https://github.com/NuGet/Home/issues/9278) + +**[List of all issues fixed in this release - 5.6](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5e3b2080c4b30708e48bf9f3)** \ No newline at end of file From 8010da304583935b2091c5bca2d4801be73e0ce3 Mon Sep 17 00:00:00 2001 From: Rob Relyea Date: Tue, 19 May 2020 17:24:10 -0700 Subject: [PATCH 042/988] remove mistakenly added issue. (was marked as 5.6, but was still open, and not yet fixed) --- docs/release-notes/NuGet-5.6.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/docs/release-notes/NuGet-5.6.md b/docs/release-notes/NuGet-5.6.md index 8b9e2af49..3ea19260c 100644 --- a/docs/release-notes/NuGet-5.6.md +++ b/docs/release-notes/NuGet-5.6.md @@ -25,8 +25,6 @@ NuGet distribution vehicles: **Bug:** -* `dotnet nuget push` - Missing value for option - [#4864](https://github.com/NuGet/Home/issues/4864) - * `nuget push *.nupkg` fails wheh snupkg does not exist - [#8148](https://github.com/NuGet/Home/issues/8148) * Pack, and several other code paths, fails dependant on locale. Use RegexOptions.CultureInvariant - [#8246](https://github.com/NuGet/Home/issues/8246) From 64c56c04f20a21c3f6d0a2c7e22745d6d70b8fa5 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 20 May 2020 09:03:17 -0700 Subject: [PATCH 043/988] Update docs/release-notes/NuGet-5.6.md Co-authored-by: donnie-msft <49205731+donnie-msft@users.noreply.github.com> --- docs/release-notes/NuGet-5.6.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/release-notes/NuGet-5.6.md b/docs/release-notes/NuGet-5.6.md index 3ea19260c..fb18949a9 100644 --- a/docs/release-notes/NuGet-5.6.md +++ b/docs/release-notes/NuGet-5.6.md @@ -25,7 +25,8 @@ NuGet distribution vehicles: **Bug:** -* `nuget push *.nupkg` fails wheh snupkg does not exist - [#8148](https://github.com/NuGet/Home/issues/8148) +* `nuget push *.nupkg` fails when snupkg does not exist - [#8148](https://github.com/NuGet/Home/issues/8148) + * Pack, and several other code paths, fails dependant on locale. Use RegexOptions.CultureInvariant - [#8246](https://github.com/NuGet/Home/issues/8246) @@ -75,4 +76,4 @@ NuGet distribution vehicles: * Sort packages by ID in the Updates tab of the Package Manager UI - [#9278](https://github.com/NuGet/Home/issues/9278) -**[List of all issues fixed in this release - 5.6](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5e3b2080c4b30708e48bf9f3)** \ No newline at end of file +**[List of all issues fixed in this release - 5.6](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5e3b2080c4b30708e48bf9f3)** From 0000c8982005288c9a8ab8c7bf0ce983660b4195 Mon Sep 17 00:00:00 2001 From: Rob Relyea Date: Wed, 20 May 2020 10:06:49 -0700 Subject: [PATCH 044/988] remove mention of 9393 Co-authored-by: donnie-msft <49205731+donnie-msft@users.noreply.github.com> --- docs/release-notes/NuGet-5.6.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/docs/release-notes/NuGet-5.6.md b/docs/release-notes/NuGet-5.6.md index fb18949a9..9a4ab3b0d 100644 --- a/docs/release-notes/NuGet-5.6.md +++ b/docs/release-notes/NuGet-5.6.md @@ -48,8 +48,6 @@ NuGet distribution vehicles: * [Test Failure] Focus-rect color in themes for PM UI tabs - [#9336](https://github.com/NuGet/Home/issues/9336) -* Several accessibility bugs reported by users - [#9393](https://github.com/NuGet/Home/issues/9393) - * nuget.exe 5.5 fails to restore with MSBuild 14 or below - [#9458](https://github.com/NuGet/Home/issues/9458) * Don't bother logging small millisecond times in restore messages - [#8977](https://github.com/NuGet/Home/issues/8977) From 1c93555c5210a340da9087c17db5d1f3f7481012 Mon Sep 17 00:00:00 2001 From: Rob Relyea Date: Wed, 20 May 2020 10:07:21 -0700 Subject: [PATCH 045/988] fix label to DCRs Co-authored-by: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> --- docs/release-notes/NuGet-5.6.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-5.6.md b/docs/release-notes/NuGet-5.6.md index 9a4ab3b0d..bf90ec9e1 100644 --- a/docs/release-notes/NuGet-5.6.md +++ b/docs/release-notes/NuGet-5.6.md @@ -67,7 +67,7 @@ NuGet distribution vehicles: * add support to `NuGet.exe update` for -DependencyVersion parameter, like install command - [#7694](https://github.com/NuGet/Home/issues/7694) -**DCR:** +**DCRs:** * net5.0 tfm - initial support - [#9584](https://github.com/NuGet/Home/issues/9584) From 4d3d0ecf3b9eb1d2cf163d146657d731770d846f Mon Sep 17 00:00:00 2001 From: Rob Relyea Date: Wed, 20 May 2020 12:37:52 -0700 Subject: [PATCH 046/988] Bug -> Bugs --- docs/release-notes/NuGet-5.6.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-5.6.md b/docs/release-notes/NuGet-5.6.md index bf90ec9e1..537396c5f 100644 --- a/docs/release-notes/NuGet-5.6.md +++ b/docs/release-notes/NuGet-5.6.md @@ -23,7 +23,7 @@ NuGet distribution vehicles: ### Issues fixed in this release -**Bug:** +**Bugs:** * `nuget push *.nupkg` fails when snupkg does not exist - [#8148](https://github.com/NuGet/Home/issues/8148) From 1e707b9955580d9c2775650138d64965a8d01836 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 20 May 2020 14:35:41 -0700 Subject: [PATCH 047/988] Changed some phrasing, grammar, and punctuation --- docs/release-notes/NuGet-5.6.md | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/docs/release-notes/NuGet-5.6.md b/docs/release-notes/NuGet-5.6.md index 537396c5f..cd62e23e6 100644 --- a/docs/release-notes/NuGet-5.6.md +++ b/docs/release-notes/NuGet-5.6.md @@ -19,7 +19,7 @@ NuGet distribution vehicles: ## Summary: What's New in 5.6 -* Support pre-release packages with floating versions. Version="*-*" and similar. - [#912](https://github.com/NuGet/Home/issues/912) +* Support pre-release packages with floating versions. `Version="*-*"` and similar - [#912](https://github.com/NuGet/Home/issues/912) ### Issues fixed in this release @@ -27,16 +27,15 @@ NuGet distribution vehicles: * `nuget push *.nupkg` fails when snupkg does not exist - [#8148](https://github.com/NuGet/Home/issues/8148) - * Pack, and several other code paths, fails dependant on locale. Use RegexOptions.CultureInvariant - [#8246](https://github.com/NuGet/Home/issues/8246) * Perf: DG Spec for unloaded project scenarios should not be written in preview restores - [#8793](https://github.com/NuGet/Home/issues/8793) -* Restore: improve performance by caching solution dependency graph spec - [#9201](https://github.com/NuGet/Home/issues/9201) +* Restore: Improve performance by caching solution dependency graph spec - [#9201](https://github.com/NuGet/Home/issues/9201) -* PM UI doesn't work for sdk style projects after installing a package with PMConsole - [#9203](https://github.com/NuGet/Home/issues/9203) +* Package Manager UI doesn't work for SDK style projects after installing a package with PMConsole - [#9203](https://github.com/NuGet/Home/issues/9203) -* [Test Failure] Embedded icon can’t be shown in PM UI with local package feed - depending on / vs \ - [#9225](https://github.com/NuGet/Home/issues/9225) +* [Test Failure] Embedded icon can’t be shown in Package Manager UI with local package feed - depending on / vs \ - [#9225](https://github.com/NuGet/Home/issues/9225) * NuGetVersion.TryParseStrict() should return false if it fails to parse - [#9255](https://github.com/NuGet/Home/issues/9255) @@ -44,9 +43,9 @@ NuGet distribution vehicles: * `dotnet nuget add package SourceUri` creates bad default package source name - [#9277](https://github.com/NuGet/Home/issues/9277) -* Screen reader doesn't announces "Searching..." message when switching tabs - [#9307](https://github.com/NuGet/Home/issues/9307) +* Screen reader doesn't announce "Searching..." message when switching tabs - [#9307](https://github.com/NuGet/Home/issues/9307) -* [Test Failure] Focus-rect color in themes for PM UI tabs - [#9336](https://github.com/NuGet/Home/issues/9336) +* [Test Failure] Focus-rect color in themes for Package Manager UI tabs - [#9336](https://github.com/NuGet/Home/issues/9336) * nuget.exe 5.5 fails to restore with MSBuild 14 or below - [#9458](https://github.com/NuGet/Home/issues/9458) @@ -60,16 +59,16 @@ NuGet distribution vehicles: * Perf: RestoreOperationLogger has unnecessary thread affinity - [#9288](https://github.com/NuGet/Home/issues/9288) -* Automated creation of docs for `dotnet nuget` commands. - [#9146](https://github.com/NuGet/Home/issues/9146) +* Automated creation of docs for `dotnet nuget` commands - [#9146](https://github.com/NuGet/Home/issues/9146) -* Default verbosity should not report each project's noop restore. - [#8792](https://github.com/NuGet/Home/issues/8792) +* Default verbosity should not report each project's noop restore - [#8792](https://github.com/NuGet/Home/issues/8792) -* add support to `NuGet.exe update` for -DependencyVersion parameter, like install command - [#7694](https://github.com/NuGet/Home/issues/7694) +* Add support for `-DependencyVersion` parameter to `NuGet.exe update`, similar to install command - [#7694](https://github.com/NuGet/Home/issues/7694) **DCRs:** -* net5.0 tfm - initial support - [#9584](https://github.com/NuGet/Home/issues/9584) +* Add initial support for net5.0 target framework - [#9584](https://github.com/NuGet/Home/issues/9584) * Sort packages by ID in the Updates tab of the Package Manager UI - [#9278](https://github.com/NuGet/Home/issues/9278) From 4a0db33fb3e4c43123d65921a44f2b55b11105c2 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 20 May 2020 15:00:14 -0700 Subject: [PATCH 048/988] More wording fixes --- docs/release-notes/NuGet-5.6.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/docs/release-notes/NuGet-5.6.md b/docs/release-notes/NuGet-5.6.md index cd62e23e6..bc1bdfff8 100644 --- a/docs/release-notes/NuGet-5.6.md +++ b/docs/release-notes/NuGet-5.6.md @@ -19,7 +19,7 @@ NuGet distribution vehicles: ## Summary: What's New in 5.6 -* Support pre-release packages with floating versions. `Version="*-*"` and similar - [#912](https://github.com/NuGet/Home/issues/912) +* Support pre-release packages with floating versions. `Version="*-*"`, `Version="1.*-*"`, and similar float to latest versions, including prerelease versions, within specified range - [#912](https://github.com/NuGet/Home/issues/912) ### Issues fixed in this release @@ -33,23 +33,23 @@ NuGet distribution vehicles: * Restore: Improve performance by caching solution dependency graph spec - [#9201](https://github.com/NuGet/Home/issues/9201) -* Package Manager UI doesn't work for SDK style projects after installing a package with PMConsole - [#9203](https://github.com/NuGet/Home/issues/9203) +* PM UI doesn't work for SDK style projects after installing a package with PM Console - [#9203](https://github.com/NuGet/Home/issues/9203) -* [Test Failure] Embedded icon can’t be shown in Package Manager UI with local package feed - depending on / vs \ - [#9225](https://github.com/NuGet/Home/issues/9225) +* [Test Failure] Embedded icon can’t be shown in PM UI with local package feed - depending on / vs \ - [#9225](https://github.com/NuGet/Home/issues/9225) * NuGetVersion.TryParseStrict() should return false if it fails to parse - [#9255](https://github.com/NuGet/Home/issues/9255) -* `nuget.exe push` help for `-source`, should be source name, not source uri - [#9265](https://github.com/NuGet/Home/issues/9265) +* `nuget.exe push` help for `-source`, should suggest usage of source name, not source URL - [#9265](https://github.com/NuGet/Home/issues/9265) * `dotnet nuget add package SourceUri` creates bad default package source name - [#9277](https://github.com/NuGet/Home/issues/9277) * Screen reader doesn't announce "Searching..." message when switching tabs - [#9307](https://github.com/NuGet/Home/issues/9307) -* [Test Failure] Focus-rect color in themes for Package Manager UI tabs - [#9336](https://github.com/NuGet/Home/issues/9336) +* Accessibility: Focus-rectangle color is not accessible PM UI tabs in dark theme - [#9336](https://github.com/NuGet/Home/issues/9336) * nuget.exe 5.5 fails to restore with MSBuild 14 or below - [#9458](https://github.com/NuGet/Home/issues/9458) -* Don't bother logging small millisecond times in restore messages - [#8977](https://github.com/NuGet/Home/issues/8977) +* Don't log millisecond times in restore messages - [#8977](https://github.com/NuGet/Home/issues/8977) * Make IOutputConsole async - [#9268](https://github.com/NuGet/Home/issues/9268) @@ -63,14 +63,14 @@ NuGet distribution vehicles: * Default verbosity should not report each project's noop restore - [#8792](https://github.com/NuGet/Home/issues/8792) -* Add support for `-DependencyVersion` parameter to `NuGet.exe update`, similar to install command - [#7694](https://github.com/NuGet/Home/issues/7694) +* Support `-DependencyVersion` parameter for `NuGet.exe update`, similar to install command - [#7694](https://github.com/NuGet/Home/issues/7694) **DCRs:** * Add initial support for net5.0 target framework - [#9584](https://github.com/NuGet/Home/issues/9584) -* Sort packages by ID in the Updates tab of the Package Manager UI - [#9278](https://github.com/NuGet/Home/issues/9278) +* Sort packages by ID in the Updates tab of the PM UI - [#9278](https://github.com/NuGet/Home/issues/9278) **[List of all issues fixed in this release - 5.6](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5e3b2080c4b30708e48bf9f3)** From bac8920201a2401f0e2c0d4d2ae00fbfd960dba6 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 20 May 2020 15:03:24 -0700 Subject: [PATCH 049/988] Update TOC to include NuGet 5.6 release notes --- docs/TOC.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/TOC.md b/docs/TOC.md index f6b918292..ff90f6767 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -289,6 +289,7 @@ ## Release notes ### [Known Issues](release-notes/known-issues.md) ### NuGet 5.x +#### [NuGet 5.6](release-notes/NuGet-5.6.md) #### [NuGet 5.5](release-notes/NuGet-5.5.md) #### [NuGet 5.4](release-notes/NuGet-5.4.md) #### [NuGet 5.3](release-notes/NuGet-5.3.md) From dd70312cbaf86c484cf29cd39b905eedd38b6ae4 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 20 May 2020 15:08:41 -0700 Subject: [PATCH 050/988] More wording --- docs/release-notes/NuGet-5.6.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/release-notes/NuGet-5.6.md b/docs/release-notes/NuGet-5.6.md index bc1bdfff8..44810e9fb 100644 --- a/docs/release-notes/NuGet-5.6.md +++ b/docs/release-notes/NuGet-5.6.md @@ -19,7 +19,7 @@ NuGet distribution vehicles: ## Summary: What's New in 5.6 -* Support pre-release packages with floating versions. `Version="*-*"`, `Version="1.*-*"`, and similar float to latest versions, including prerelease versions, within specified range - [#912](https://github.com/NuGet/Home/issues/912) +* Support prerelease packages with floating versions. `Version="*-*"`, `Version="1.*-*"`, and similar float to latest versions, including prerelease versions, within specified range - [#912](https://github.com/NuGet/Home/issues/912) ### Issues fixed in this release @@ -27,7 +27,7 @@ NuGet distribution vehicles: * `nuget push *.nupkg` fails when snupkg does not exist - [#8148](https://github.com/NuGet/Home/issues/8148) -* Pack, and several other code paths, fails dependant on locale. Use RegexOptions.CultureInvariant - [#8246](https://github.com/NuGet/Home/issues/8246) +* Pack, and several other code paths, fail dependent on locale. Use RegexOptions.CultureInvariant - [#8246](https://github.com/NuGet/Home/issues/8246) * Perf: DG Spec for unloaded project scenarios should not be written in preview restores - [#8793](https://github.com/NuGet/Home/issues/8793) From ccbf093d88c6de32459b134c4967a59d80c53c4b Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 20 May 2020 15:12:23 -0700 Subject: [PATCH 051/988] more words --- docs/release-notes/NuGet-5.6.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-5.6.md b/docs/release-notes/NuGet-5.6.md index 44810e9fb..523f7b6b7 100644 --- a/docs/release-notes/NuGet-5.6.md +++ b/docs/release-notes/NuGet-5.6.md @@ -35,7 +35,7 @@ NuGet distribution vehicles: * PM UI doesn't work for SDK style projects after installing a package with PM Console - [#9203](https://github.com/NuGet/Home/issues/9203) -* [Test Failure] Embedded icon can’t be shown in PM UI with local package feed - depending on / vs \ - [#9225](https://github.com/NuGet/Home/issues/9225) +* Embedded icon can’t be shown in PM UI with local package feed - depending on / vs \ - [#9225](https://github.com/NuGet/Home/issues/9225) * NuGetVersion.TryParseStrict() should return false if it fails to parse - [#9255](https://github.com/NuGet/Home/issues/9255) From 69be4d62e32de154ecc6ca84037393936a33f2b0 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 20 May 2020 15:14:36 -0700 Subject: [PATCH 052/988] MsBuild --> MSBuild --- docs/release-notes/NuGet-5.6.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-5.6.md b/docs/release-notes/NuGet-5.6.md index 523f7b6b7..ed6e363cf 100644 --- a/docs/release-notes/NuGet-5.6.md +++ b/docs/release-notes/NuGet-5.6.md @@ -53,7 +53,7 @@ NuGet distribution vehicles: * Make IOutputConsole async - [#9268](https://github.com/NuGet/Home/issues/9268) -* MsBuild version picking works badly on some non-english cultures - [#9322](https://github.com/NuGet/Home/issues/9322) +* MSBuild version picking works poorly on some non-english cultures - [#9322](https://github.com/NuGet/Home/issues/9322) * Missing format default on `dotnet nuget list source` - [#9337](https://github.com/NuGet/Home/issues/9337) From 3db4087ff1fc40295666214e7bcb906e9f3190cf Mon Sep 17 00:00:00 2001 From: Anand Gaurav Date: Thu, 21 May 2020 07:25:05 -0700 Subject: [PATCH 053/988] Update Index.md It seems updating this page was missed. /cc: @chgill-MSFT --- docs/release-notes/Index.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/docs/release-notes/Index.md b/docs/release-notes/Index.md index cc4d5834d..7b5f94d2d 100644 --- a/docs/release-notes/Index.md +++ b/docs/release-notes/Index.md @@ -1,8 +1,8 @@ --- title: Release Notes description: Index of NuGet release notes and known issues for all versions. -author: karann-msft -ms.author: karann +author: anangaur +ms.author: anangaur ms.date: 08/14/2017 ms.topic: conceptual --- @@ -11,6 +11,8 @@ ms.topic: conceptual [Known Issues](../release-notes/known-issues.md) +[NuGet 5.6](../release-notes/NuGet-5.6.md) + [NuGet 5.5](../release-notes/NuGet-5.5.md) [NuGet 5.4](../release-notes/NuGet-5.4.md) From 109753ea22f31eb3ea49a0d14366c87139295975 Mon Sep 17 00:00:00 2001 From: Lohitaksh Gupta <15707566+lohitakshgupta@users.noreply.github.com> Date: Wed, 3 Jun 2020 17:00:07 -0700 Subject: [PATCH 054/988] Corrected XML Closing Tag - L20 --- docs/create-packages/includes/add-description.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/create-packages/includes/add-description.md b/docs/create-packages/includes/add-description.md index 60ca74f44..e9905d94e 100644 --- a/docs/create-packages/includes/add-description.md +++ b/docs/create-packages/includes/add-description.md @@ -17,5 +17,5 @@ An example of a _description_ field is shown in the following XML text of the `. REST API Reference for Blob Service - https://docs.microsoft.com/en-us/rest/api/storageservices/blob-service-rest-api - + ``` From d1de7ed207d8adaa2405954ad13d05e6f36992db Mon Sep 17 00:00:00 2001 From: Heta Sanghvi Date: Mon, 8 Jun 2020 16:26:51 -0700 Subject: [PATCH 055/988] Introducing new UIFramework attribute in VS 16.7 Preview 3 above --- docs/guides/Create-UI-Controls.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/guides/Create-UI-Controls.md b/docs/guides/Create-UI-Controls.md index 278188ff2..23f5e7cd9 100644 --- a/docs/guides/Create-UI-Controls.md +++ b/docs/guides/Create-UI-Controls.md @@ -41,7 +41,7 @@ The structure of the file is as follows: ```xml - + @@ -56,6 +56,7 @@ where: - *your_package_file*: the name of your control file, such as `ManagedPackage.winmd` ("ManagedPackage" is an arbitrary named used for this example and has no other meaning). - *vs_category*: The label for the group in which the control should appear in the Visual Studio designer’s toolbox. A `VSCategory` is necessary for the control to appear in the toolbox. +*ui_framework*: The name of the Framework, such as 'WPF', note that `UIFramework` attribute is required on ToolboxItems nodes on Visual Studio 16.7 Preview 3 or above for the control to appear in toolbox. - *blend_category*: The label for the group in which the control should appear in the Blend designer’s Assets pane. A `BlendCategory` is necessary for the control to appear in Assets. - *type_full_name_n*: The fully-qualified name for each control, including the namespace, such as `ManagedPackage.MyCustomControl`. Note that the dot format is used for both managed and native types. @@ -66,7 +67,7 @@ In the following example, the control implemented in `ManagedPackage.winmd` will ```xml - + From f7ad56eea658f76066387e24d047d0711f89d962 Mon Sep 17 00:00:00 2001 From: Christian Steinert Date: Thu, 11 Jun 2020 13:25:52 +0200 Subject: [PATCH 056/988] Adds ValidAuthenticationTypes documentation. --- docs/reference/nuget-config-file.md | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/docs/reference/nuget-config-file.md b/docs/reference/nuget-config-file.md index 09fe3bd48..9995cf6be 100644 --- a/docs/reference/nuget-config-file.md +++ b/docs/reference/nuget-config-file.md @@ -127,12 +127,14 @@ Lists all known package sources. The order is ignored during restore operations ### packageSourceCredentials Stores usernames and passwords for sources, typically specified with the `-username` and `-password` switches with `nuget sources`. Passwords are encrypted by default unless the `-storepasswordincleartext` option is also used. +Optionally, valida authentication types can be specified with the `-validauthenticationtypes` switch. | Key | Value | | --- | --- | | username | The user name for the source in plain text. | | password | The encrypted password for the source. | | cleartextpassword | The unencrypted password for the source. | +| validauthenticationtypes | Comma-separated list of valid authentication types for this source. Set this to `basic` if the server advertises NTLM or Negotiate and your credentials must be sent using the Basic mechanism, for instance when using a PAT with on-premises Azure DevOps Server. Other valid values include `negotiate`, `kerberos`, `ntlm`, and `digest`, but these values are unlikely to be useful. | **Example:** @@ -166,6 +168,23 @@ When using unencrypted passwords: ``` +Additionally, valid authentication methods can be supplied: + +```xml + + + + + + + + + + + + +``` + ### apikeys Stores keys for sources that use API key authentication, as set with the [`nuget setapikey` command](../reference/cli-reference/cli-ref-setapikey.md). From 8d395e311d99287b0e21ebcdf25b62c978328ec5 Mon Sep 17 00:00:00 2001 From: Ryu Yu <11051729+ryuyu@users.noreply.github.com> Date: Tue, 23 Jun 2020 08:08:33 -0700 Subject: [PATCH 057/988] Publicize search by PackageType (#2076) * Update docs to include new packageType parameter. * Updated some wording. Updated Catalog Data. * Update query form to include packageType. * There was a missing comma. --- docs/api/_data/catalog-package-details.json | 7 +++++++ docs/api/_data/search-result.json | 5 +++++ docs/api/catalog-resource.md | 8 ++++++++ .../search-autocomplete-service-resource.md | 11 ++++++++++- docs/api/search-query-service-resource.md | 18 +++++++++++++++++- 5 files changed, 47 insertions(+), 2 deletions(-) diff --git a/docs/api/_data/catalog-package-details.json b/docs/api/_data/catalog-package-details.json index 5cf343fed..228b2977b 100644 --- a/docs/api/_data/catalog-package-details.json +++ b/docs/api/_data/catalog-package-details.json @@ -28,6 +28,13 @@ "packageHash": "2edCwKLcbcgFJpsAwa883BLtOy8bZpWwbQpiIb71E74k5t2f2WzXEGWbPwntRleUEgSrcxJrh9Orm/TAmgO4NQ==", "packageHashAlgorithm": "SHA512", "packageSize": 118348, + "packageTypes": [ + { + "@id": "https://api.nuget.org/v3/catalog0/data/2015.02.01.11.18.40/windowsazure.storage.1.0.0.json#packagetypes/DotnetTool", + "@type": "PackageType", + "name": "DotnetTool" + } + ], "projectUrl": "https://github.com/NuGet/NuGetGallery", "published": "1900-01-01T00:00:00Z", "requireLicenseAcceptance": false, diff --git a/docs/api/_data/search-result.json b/docs/api/_data/search-result.json index 32f675558..74e1973a5 100644 --- a/docs/api/_data/search-result.json +++ b/docs/api/_data/search-result.json @@ -13,6 +13,11 @@ "authors": [ "NuGet" ], "totalDownloads": 141896, "verified": true, + "packageTypes": [ + { + "name": "Dependency" + } + ], "versions": [ { "version": "3.3.0", diff --git a/docs/api/catalog-resource.md b/docs/api/catalog-resource.md index 6f78b826e..b56bc930d 100644 --- a/docs/api/catalog-resource.md +++ b/docs/api/catalog-resource.md @@ -227,6 +227,7 @@ minClientVersion | string | no | packageHash | string | yes | The hash of the package, encoding using [standard base 64](https://tools.ietf.org/html/rfc4648#section-4) packageHashAlgorithm | string | yes | packageSize | integer | yes | The size of the package .nupkg in bytes +packageTypes | array of objects | no | The package types specified by the author. projectUrl | string | no | releaseNotes | string | no | requireLicenseAgreement | boolean | no | Assume `false` if excluded @@ -244,6 +245,13 @@ time before the catalog item's commit timestamp. The `packageHashAlgorithm` is a string defined by the server implementation representing the hashing algorithm used to produce the `packageHash`. nuget.org always used the `packageHashAlgorithm` value of `SHA512`. +The `packageTypes` property will only be present if a package type was specified by the author. If it is present, it will always have at least one (1) entry. Each item in the `packageTypes` array is a JSON object with the following properties: + +Name | Type | Required | Notes +--------- | ------- | -------- | ----- +name | string | yes | The name of the package type. +version | string | no | The version of the package type. Only present if the author explicitly specified a version in the nuspec. + The `published` timestamp is the time when the package was last listed. > [!Note] diff --git a/docs/api/search-autocomplete-service-resource.md b/docs/api/search-autocomplete-service-resource.md index 3ee54679f..cf07fdf07 100644 --- a/docs/api/search-autocomplete-service-resource.md +++ b/docs/api/search-autocomplete-service-resource.md @@ -22,6 +22,10 @@ The following `@type` values are used: SearchAutocompleteService | The initial release SearchAutocompleteService/3.0.0-beta | Alias of `SearchAutocompleteService` SearchAutocompleteService/3.0.0-rc | Alias of `SearchAutocompleteService` +SearchAutocompleteService/3.5.0 | Includes support for `packageType` query parameter + +### SearchAutocompleteService/3.5.0 +This version introduces support for the `packageType` query parameter, allowing filtering by author defined package types. It is fully backwards compatible with queries to `SearchAutocompleteService`. ## Base URL @@ -39,7 +43,7 @@ a package typeahead feature in a user interface integrated with a NuGet package A package with only unlisted versions will not appear in the results. - GET {@id}?q={QUERY}&skip={SKIP}&take={TAKE}&prerelease={PRERELEASE}&semVerLevel={SEMVERLEVEL} + GET {@id}?q={QUERY}&skip={SKIP}&take={TAKE}&prerelease={PRERELEASE}&semVerLevel={SEMVERLEVEL}&packageType={PACKAGETYPE} ### Request parameters @@ -50,6 +54,7 @@ skip | URL | integer | no | The number of results to skip, for p take | URL | integer | no | The number of results to return, for pagination prerelease | URL | boolean | no | `true` or `false` determining whether to include [pre-release packages](../create-packages/prerelease-packages.md) semVerLevel | URL | string | no | A SemVer 1.0.0 version string +packageType | URL | string | no | The package type to use to filter packages (added in `SearchAutocompleteService/3.5.0`) The autocomplete query `q` is parsed in a manner that is defined by the server implementation. nuget.org supports querying for the prefix of package ID tokens, which are pieces of the ID produced by spliting the original by camel @@ -69,6 +74,10 @@ If `semVerLevel=2.0.0` is provided, both SemVer 1.0.0 and SemVer 2.0.0 compatibl [SemVer 2.0.0 support for nuget.org](https://github.com/NuGet/Home/wiki/SemVer2-support-for-nuget.org-%28server-side%29) for more information. +The `packageType` parameter is used to further filter the autocomplete results to only packages that have at least one package type matching the package type name. +If the provided package type is not a valid package type as defined by the [Package Type document](https://github.com/NuGet/Home/wiki/Package-Type-%5BPacking%5D), an empty result will returned. +If the provided package type is empty, no filter will be applied. In other words, passing no value to the `packageType` parameter will behave as if the parameter was not passed. + ### Response The response is JSON document containing up to `take` autocomplete results. diff --git a/docs/api/search-query-service-resource.md b/docs/api/search-query-service-resource.md index b1c4dd05f..fe77e4094 100644 --- a/docs/api/search-query-service-resource.md +++ b/docs/api/search-query-service-resource.md @@ -22,6 +22,10 @@ The following `@type` values are used: SearchQueryService | The initial release SearchQueryService/3.0.0-beta | Alias of `SearchQueryService` SearchQueryService/3.0.0-rc | Alias of `SearchQueryService` +SearchQueryService/3.5.0 | Includes support for `packageType` query parameter + +### SearchQueryService/3.5.0 +This version introduces support for the `packageType` query parameter and the `packageTypes` response property, allowing filtering by author defined package types. It is fully backwards compatible with queries to `SearchQueryService`. ## Base URL @@ -41,7 +45,7 @@ package metadata fields may also be considered. An unlisted package should never appear in search results. - GET {@id}?q={QUERY}&skip={SKIP}&take={TAKE}&prerelease={PRERELEASE}&semVerLevel={SEMVERLEVEL} + GET {@id}?q={QUERY}&skip={SKIP}&take={TAKE}&prerelease={PRERELEASE}&semVerLevel={SEMVERLEVEL}&packageType={PACKAGETYPE} ### Request parameters @@ -52,6 +56,7 @@ skip | URL | integer | no | The number of results to skip, for p take | URL | integer | no | The number of results to return, for pagination prerelease | URL | boolean | no | `true` or `false` determining whether to include [pre-release packages](../create-packages/prerelease-packages.md) semVerLevel | URL | string | no | A SemVer 1.0.0 version string +packageType | URL | string | no | The package type to use to filter packages (added in `SearchQueryService/3.5.0`) The search query `q` is parsed in a manner that is defined by the server implementation. nuget.org supports basic filtering on a [variety of fields](../consume-packages/finding-and-choosing-packages.md#search-syntax). If no @@ -72,6 +77,10 @@ If `semVerLevel=2.0.0` is provided, both SemVer 1.0.0 and SemVer 2.0.0 compatibl [SemVer 2.0.0 support for nuget.org](https://github.com/NuGet/Home/wiki/SemVer2-support-for-nuget.org-%28server-side%29) for more information. +The `packageType` parameter is used to further filter the search results to only packages that have at least one package type matching the package type name. +If the provided package type is not a valid package type as defined by the [Package Type document](https://github.com/NuGet/Home/wiki/Package-Type-%5BPacking%5D), an empty result will returned. +If the provided package type is empty, no filter will be applied. In other words, passing no value to the packageType parameter will behave as if the parameter was not passed. + ### Response The response is JSON document containing up to `take` search results. Search results are grouped by package ID. @@ -105,6 +114,7 @@ tags | string or array of strings | no | title | string | no | totalDownloads | integer | no | This value can be inferred by the sum of downloads in the `versions` array verified | boolean | no | A JSON boolean indicating whether the package is [verified](../nuget-org/id-prefix-reservation.md) +packageTypes | array of objects | yes | The package types defined by the package author (added in `SearchQueryService/3.5.0`) On nuget.org, a verified package is one which has a package ID matching a reserved ID prefix and owned by one of the reserved prefix's owners. For more information, see the @@ -119,6 +129,12 @@ Name | Type | Required | Notes version | string | yes | The full SemVer 2.0.0 version string of the package (could contain build metadata) downloads | integer | yes | The number of downloads for this specific package version +The `packageTypes` array will always consist of at least one (1) item. Package type for a given package ID is considered to be the package types defined by the latest version of the package with respect to the other search parameters. Each item in the `packageTypes` array is a JSON object with the following properties: + +Name | Type | Required | Notes +--------- | ------- | -------- | ----- +name | string | yes | The name of the package type. + ### Sample request GET https://azuresearch-usnc.nuget.org/query?q=NuGet.Versioning&prerelease=false&semVerLevel=2.0.0 From f68faa971b80bf095a8640c515599cebd2730148 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Sat, 27 Jun 2020 16:26:23 -0700 Subject: [PATCH 058/988] improve confusing `nuget build` comment (#2083) --- docs/reference/cli-reference/cli-ref-pack.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/cli-reference/cli-ref-pack.md b/docs/reference/cli-reference/cli-ref-pack.md index 193d1a3a5..53787e039 100644 --- a/docs/reference/cli-reference/cli-ref-pack.md +++ b/docs/reference/cli-reference/cli-ref-pack.md @@ -43,7 +43,7 @@ where `` and `` specify the `.nuspec` or project file, | NoDefaultExcludes | Prevents default exclusion of NuGet package files and files and folders starting with a dot, such as `.svn` and `.gitignore`. | | NoPackageAnalysis | Specifies that pack should not run package analysis after building the package. | | OutputDirectory | Specifies the folder in which the created package is stored. If no folder is specified, the current folder is used. | -| Properties | Should appear last on the command line after other options. Specifies a list of properties that override values in the project file; see [Common MSBuild Project Properties](/visualstudio/msbuild/common-msbuild-project-properties) for property names. The Properties argument here is a list of token=value pairs, separated by semicolons, where each occurrence of `$token$` in the `.nuspec` file will be replaced with the given value. Values can be strings in quotation marks. Note that for the "Configuration" property, the default is "Debug". To change to a Release configuration, use `-Properties Configuration=Release`. **In general**, Properties should be the same that were used during the corresponding `nuget build`, in order to avoid potentially strange behavior. | +| Properties | Should appear last on the command line after other options. Specifies a list of properties that override values in the project file; see [Common MSBuild Project Properties](/visualstudio/msbuild/common-msbuild-project-properties) for property names. The Properties argument here is a list of token=value pairs, separated by semicolons, where each occurrence of `$token$` in the `.nuspec` file will be replaced with the given value. Values can be strings in quotation marks. Note that for the "Configuration" property, the default is "Debug". To change to a Release configuration, use `-Properties Configuration=Release`. **In general**, Properties should be the same that were used during the corresponding project build, in order to avoid potentially strange behavior. | | Suffix | *(3.4.4+)* Appends a suffix to the internally generated version number, typically used for appending build or other pre-release identifiers. For example, using `-suffix nightly` will create a package with a version number like `1.2.3-nightly`. Suffixes must start with a letter to avoid warnings, errors, and potential incompatibilities with different versions of NuGet and the NuGet Package Manager. | | Symbols | Specifies that the package contains sources and symbols. When used with a `.nuspec` file, this creates a regular NuGet package file and the corresponding symbols package. By default it creates a [legacy symbol package](../../create-packages/Symbol-Packages.md). The new recommended format for symbol packages is .snupkg. See [Creating symbol packages (.snupkg)](../../create-packages/Symbol-Packages-snupkg.md). | | Tool | Specifies that the output files of the project should be placed in the `tool` folder. | From 4d03bcfa4feaf3e80b70a767dee601d712931787 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Mon, 29 Jun 2020 17:56:51 -0700 Subject: [PATCH 059/988] fix dotnet nuget locals example in package restore troubleshooting (#2057) --- docs/consume-packages/Package-restore-troubleshooting.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Package-restore-troubleshooting.md b/docs/consume-packages/Package-restore-troubleshooting.md index b21474eb9..a9a4066dd 100644 --- a/docs/consume-packages/Package-restore-troubleshooting.md +++ b/docs/consume-packages/Package-restore-troubleshooting.md @@ -109,7 +109,7 @@ You can also edit these settings directly in the applicable `nuget.config` file ## Other potential conditions -- You may encounter build errors due to missing files, with a message saying to use NuGet restore to download them. However, running a restore might say, "All packages are already installed and there is nothing to restore." In this case, delete the `packages` folder (when using `packages.config`) or the `obj/project.assets.json` file (when using PackageReference) and run restore again. If the error still persists, use `nuget locals all -clear` or `dotnet locals all --clear` from the command line to clear the *global-packages* and cache folders as described on [Managing the global packages and cache folders](managing-the-global-packages-and-cache-folders.md). +- You may encounter build errors due to missing files, with a message saying to use NuGet restore to download them. However, running a restore might say, "All packages are already installed and there is nothing to restore." In this case, delete the `packages` folder (when using `packages.config`) or the `obj/project.assets.json` file (when using PackageReference) and run restore again. If the error still persists, use `nuget locals all -clear` or `dotnet nuget locals all --clear` from the command line to clear the *global-packages* and cache folders as described on [Managing the global packages and cache folders](managing-the-global-packages-and-cache-folders.md). - When obtaining a project from source control, your project folders may be set to read-only. Change the folder permissions and try restoring packages again. From 6097fe4962642102a1dc1545ca9e970fe85f24dc Mon Sep 17 00:00:00 2001 From: Rob Relyea Date: Tue, 7 Jul 2020 11:49:04 -0700 Subject: [PATCH 060/988] Add examples using envvars for passwords in nuget.config (#2092) Beef up examples and description of encrypted passwords only working on windows. --- docs/reference/nuget-config-file.md | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/docs/reference/nuget-config-file.md b/docs/reference/nuget-config-file.md index 09fe3bd48..3f8c30951 100644 --- a/docs/reference/nuget-config-file.md +++ b/docs/reference/nuget-config-file.md @@ -131,8 +131,8 @@ Stores usernames and passwords for sources, typically specified with the `-usern | Key | Value | | --- | --- | | username | The user name for the source in plain text. | -| password | The encrypted password for the source. | -| cleartextpassword | The unencrypted password for the source. | +| password | The encrypted password for the source. Encrypted passwords are only supported on Windows, and only can be decrypted when used on the same machine and via the same user as the original encryption. | +| cleartextpassword | The unencrypted password for the source. Note: environment variables can be used for improved security. | **Example:** @@ -151,6 +151,21 @@ In the config file, the `` element contains child node ``` +When using unencrypted passwords stored in an environment variable: + +```xml + + + + + + + + + + +``` + When using unencrypted passwords: ```xml From 6da1fc4f99546d34df1ce266aa0b109071c800b6 Mon Sep 17 00:00:00 2001 From: Advay Tandon <51111468+advay26@users.noreply.github.com> Date: Tue, 7 Jul 2020 17:50:26 -0400 Subject: [PATCH 061/988] Created reference page for NuGet CLI's search command --- .../reference/cli-reference/cli-ref-search.md | 65 +++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 docs/reference/cli-reference/cli-ref-search.md diff --git a/docs/reference/cli-reference/cli-ref-search.md b/docs/reference/cli-reference/cli-ref-search.md new file mode 100644 index 000000000..46a3ddc85 --- /dev/null +++ b/docs/reference/cli-reference/cli-ref-search.md @@ -0,0 +1,65 @@ +--- +title: NuGet CLI search command +description: Reference for the nuget.exe search command +author: advay26 +ms.author: t-adtand +ms.date: 07/07/2020 +ms.topic: reference +--- + +# search command (NuGet CLI) + +**Applies to:** package consumption • **Supported versions:** all + +Searches a given source using the query string provided. If no sources are specified, all sources defined in %AppData%\NuGet\NuGet.config are used. + +## Usage + +```cli +nuget search [search terms] [options] +``` + +where the search terms are applied to the names of packages, tags, and package descriptions just as they are when using them on nuget.org. + +## Options + +| Name | Description | Usage | +| --- | --- | :-: | +| PreRelease | Pre-release packages are not included by default, but can be included by using this argument | -PreRelease | +| Source | Specific package source(s) to search instead of querying the default sources in __nuget.config__ | -Source ``| +| Take | The number of results to return. The default value is 20. | -Take `` | +| Verbosity | The level of detail to display in the output. The default is _normal_. (See the note below) | -Verbosity `` | +| Help | Displays help information for the command | -Help | + +Also see [Environment variables](cli-ref-environment-variables.md) + +__NOTE__ + +Verbosity Levels: + +* _quiet_ - Package ID, Version +* _normal_ - Package ID, Version, Downloads, Preview of Description +* _detailed_ - Package ID, Version, Downloads, Full Description, Other information such as the query URL + +## Examples + +Search for *logging*-related packages from default sources: +``` +nuget search logging +``` +Search for *logging*-related packages with detailed verbosity: +``` +nuget search logging -Verbosity detailed +``` +Search for *logging*-related packages, and only show the top 5 results: +``` +nuget search logging -Take 5 +``` +Search for *JSON*-related packages, including pre-release versions, from specified source/feed: +``` +nuget search JSON -PreRelease -Source "https://api.nuget.org/v3/index.json" +``` +Search for *JSON*-related packages from multiple sources/feeds: +``` +nuget search JSON -Source "https://api.nuget.org/v3/index.json" -Source "https://other-feed-url-goes-here/" +``` From b19594edf5516f6f18d50dbacd8f58d47c783edc Mon Sep 17 00:00:00 2001 From: Advay Tandon <51111468+advay26@users.noreply.github.com> Date: Tue, 7 Jul 2020 17:58:42 -0400 Subject: [PATCH 062/988] Updated TOC.md to add a link to cli-ref-search.md --- docs/TOC.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/TOC.md b/docs/TOC.md index ff90f6767..63bc993f6 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -88,6 +88,7 @@ ### [pack](reference/cli-reference/cli-ref-pack.md) ### [push](reference/cli-reference/cli-ref-push.md) ### [restore](reference/cli-reference/cli-ref-restore.md) +### [search](reference/cli-reference/cli-ref-search.md) ### [setapikey](reference/cli-reference/cli-ref-setapikey.md) ### [sign](reference/cli-reference/cli-ref-sign.md) ### [sources](reference/cli-reference/cli-ref-sources.md) From e8315ed598b7eff7fd1b6cc53775d49395a72506 Mon Sep 17 00:00:00 2001 From: Advay Tandon <51111468+advay26@users.noreply.github.com> Date: Tue, 7 Jul 2020 18:38:42 -0400 Subject: [PATCH 063/988] Changed supported version to TODO, will update it before merge based on when the command is added to nuget --- docs/reference/cli-reference/cli-ref-search.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/cli-reference/cli-ref-search.md b/docs/reference/cli-reference/cli-ref-search.md index 46a3ddc85..f59f5d416 100644 --- a/docs/reference/cli-reference/cli-ref-search.md +++ b/docs/reference/cli-reference/cli-ref-search.md @@ -9,7 +9,7 @@ ms.topic: reference # search command (NuGet CLI) -**Applies to:** package consumption • **Supported versions:** all +**Applies to:** package consumption • **Supported versions:** *TODO* Searches a given source using the query string provided. If no sources are specified, all sources defined in %AppData%\NuGet\NuGet.config are used. From 075b03dffc70b8e8c17ad09c7e05fa57cd16cf33 Mon Sep 17 00:00:00 2001 From: Advay Tandon <51111468+advay26@users.noreply.github.com> Date: Wed, 8 Jul 2020 18:07:41 -0400 Subject: [PATCH 064/988] Added references to search in nuget-exe-CLI-Reference.md --- docs/reference/nuget-exe-CLI-Reference.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/reference/nuget-exe-CLI-Reference.md b/docs/reference/nuget-exe-CLI-Reference.md index 1f4dd3444..1aeeca544 100644 --- a/docs/reference/nuget-exe-CLI-Reference.md +++ b/docs/reference/nuget-exe-CLI-Reference.md @@ -55,6 +55,7 @@ Available commands and applicability to package creation, package consumption, a | [install](cli-reference/cli-ref-install.md) | Consumption | All | Installs a package into the current project but does not modify projects or reference files. | | [list](cli-reference/cli-ref-list.md) | Consumption, perhaps Publishing | All | Displays packages from a given source. | | [mirror](cli-reference/cli-ref-mirror.md) | Publishing | Deprecated in 3.2+ | Mirrors a package and its dependencies from a source to a target repository. | +| [search](cli-reference/cli-ref-search.md) | Consumption | *TODO* | Searches a given source using the query string provided. | | [sources](cli-reference/cli-ref-sources.md) | Consumption, Publishing | All | Manages package sources in configuration files. | | [update](cli-reference/cli-ref-update.md) | Consumption | All | Updates a project's packages to the latest available versions. Not supported when running on Mono. | @@ -64,7 +65,7 @@ NuGet CLI commands by applicable roles: | Role | Commands | | --- | --- | -| Consumption | `config`, `help`, `install`, `list`, `locals`, `restore`, `setapikey`, `sources`, `update` | +| Consumption | `config`, `help`, `install`, `list`, `locals`, `restore`, `search`, `setapikey`, `sources`, `update` | | Creation | `config`, `help`, `init`, `pack`, `spec` | | Publishing | `add`, `config`, `delete`, `help`, `list`, `push`, `setapikey`, `sources` | From 37f5bbb7c8f8b1cf2da7d114c4fcdbafc3b2b913 Mon Sep 17 00:00:00 2001 From: Robert Polenius Andersson <13439714+FobbanN12@users.noreply.github.com> Date: Mon, 13 Jul 2020 19:06:22 +0200 Subject: [PATCH 065/988] Update NuGet-Server.md Bold on the "C#"-text. Easy to miss and instead create a pre-chosen VB.Net project --- docs/hosting-packages/NuGet-Server.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/hosting-packages/NuGet-Server.md b/docs/hosting-packages/NuGet-Server.md index 306d19d2b..80937e653 100644 --- a/docs/hosting-packages/NuGet-Server.md +++ b/docs/hosting-packages/NuGet-Server.md @@ -21,7 +21,7 @@ If you have further questions about NuGet.Server, create an issue on [https://gi ## Create and deploy an ASP.NET Web application with NuGet.Server -1. In Visual Studio, select **File > New > Project**, search for "ASP.NET Web Application (.NET Framework)", select the matching template for C#. +1. In Visual Studio, select **File > New > Project**, search for "ASP.NET Web Application (.NET Framework)", select the matching template for **C#**. ![Select the .NET Framework web project template](media/Hosting_00-NuGet.Server-ProjectType.png) From f29fa9b93fd59e679fab50d7413bbf67da3ea5b3 Mon Sep 17 00:00:00 2001 From: Anand Gaurav Date: Fri, 17 Jul 2020 09:50:26 -0700 Subject: [PATCH 066/988] 2020-07-17 merge to live (#2100) * improve confusing `nuget build` comment (#2083) * fix dotnet nuget locals example in package restore troubleshooting (#2057) * Add examples using envvars for passwords in nuget.config (#2092) Beef up examples and description of encrypted passwords only working on windows. Co-authored-by: Andy Zivkovic Co-authored-by: Rob Relyea --- .../Package-restore-troubleshooting.md | 2 +- docs/reference/cli-reference/cli-ref-pack.md | 2 +- docs/reference/nuget-config-file.md | 19 +++++++++++++++++-- 3 files changed, 19 insertions(+), 4 deletions(-) diff --git a/docs/consume-packages/Package-restore-troubleshooting.md b/docs/consume-packages/Package-restore-troubleshooting.md index b21474eb9..a9a4066dd 100644 --- a/docs/consume-packages/Package-restore-troubleshooting.md +++ b/docs/consume-packages/Package-restore-troubleshooting.md @@ -109,7 +109,7 @@ You can also edit these settings directly in the applicable `nuget.config` file ## Other potential conditions -- You may encounter build errors due to missing files, with a message saying to use NuGet restore to download them. However, running a restore might say, "All packages are already installed and there is nothing to restore." In this case, delete the `packages` folder (when using `packages.config`) or the `obj/project.assets.json` file (when using PackageReference) and run restore again. If the error still persists, use `nuget locals all -clear` or `dotnet locals all --clear` from the command line to clear the *global-packages* and cache folders as described on [Managing the global packages and cache folders](managing-the-global-packages-and-cache-folders.md). +- You may encounter build errors due to missing files, with a message saying to use NuGet restore to download them. However, running a restore might say, "All packages are already installed and there is nothing to restore." In this case, delete the `packages` folder (when using `packages.config`) or the `obj/project.assets.json` file (when using PackageReference) and run restore again. If the error still persists, use `nuget locals all -clear` or `dotnet nuget locals all --clear` from the command line to clear the *global-packages* and cache folders as described on [Managing the global packages and cache folders](managing-the-global-packages-and-cache-folders.md). - When obtaining a project from source control, your project folders may be set to read-only. Change the folder permissions and try restoring packages again. diff --git a/docs/reference/cli-reference/cli-ref-pack.md b/docs/reference/cli-reference/cli-ref-pack.md index 193d1a3a5..53787e039 100644 --- a/docs/reference/cli-reference/cli-ref-pack.md +++ b/docs/reference/cli-reference/cli-ref-pack.md @@ -43,7 +43,7 @@ where `` and `` specify the `.nuspec` or project file, | NoDefaultExcludes | Prevents default exclusion of NuGet package files and files and folders starting with a dot, such as `.svn` and `.gitignore`. | | NoPackageAnalysis | Specifies that pack should not run package analysis after building the package. | | OutputDirectory | Specifies the folder in which the created package is stored. If no folder is specified, the current folder is used. | -| Properties | Should appear last on the command line after other options. Specifies a list of properties that override values in the project file; see [Common MSBuild Project Properties](/visualstudio/msbuild/common-msbuild-project-properties) for property names. The Properties argument here is a list of token=value pairs, separated by semicolons, where each occurrence of `$token$` in the `.nuspec` file will be replaced with the given value. Values can be strings in quotation marks. Note that for the "Configuration" property, the default is "Debug". To change to a Release configuration, use `-Properties Configuration=Release`. **In general**, Properties should be the same that were used during the corresponding `nuget build`, in order to avoid potentially strange behavior. | +| Properties | Should appear last on the command line after other options. Specifies a list of properties that override values in the project file; see [Common MSBuild Project Properties](/visualstudio/msbuild/common-msbuild-project-properties) for property names. The Properties argument here is a list of token=value pairs, separated by semicolons, where each occurrence of `$token$` in the `.nuspec` file will be replaced with the given value. Values can be strings in quotation marks. Note that for the "Configuration" property, the default is "Debug". To change to a Release configuration, use `-Properties Configuration=Release`. **In general**, Properties should be the same that were used during the corresponding project build, in order to avoid potentially strange behavior. | | Suffix | *(3.4.4+)* Appends a suffix to the internally generated version number, typically used for appending build or other pre-release identifiers. For example, using `-suffix nightly` will create a package with a version number like `1.2.3-nightly`. Suffixes must start with a letter to avoid warnings, errors, and potential incompatibilities with different versions of NuGet and the NuGet Package Manager. | | Symbols | Specifies that the package contains sources and symbols. When used with a `.nuspec` file, this creates a regular NuGet package file and the corresponding symbols package. By default it creates a [legacy symbol package](../../create-packages/Symbol-Packages.md). The new recommended format for symbol packages is .snupkg. See [Creating symbol packages (.snupkg)](../../create-packages/Symbol-Packages-snupkg.md). | | Tool | Specifies that the output files of the project should be placed in the `tool` folder. | diff --git a/docs/reference/nuget-config-file.md b/docs/reference/nuget-config-file.md index 09fe3bd48..3f8c30951 100644 --- a/docs/reference/nuget-config-file.md +++ b/docs/reference/nuget-config-file.md @@ -131,8 +131,8 @@ Stores usernames and passwords for sources, typically specified with the `-usern | Key | Value | | --- | --- | | username | The user name for the source in plain text. | -| password | The encrypted password for the source. | -| cleartextpassword | The unencrypted password for the source. | +| password | The encrypted password for the source. Encrypted passwords are only supported on Windows, and only can be decrypted when used on the same machine and via the same user as the original encryption. | +| cleartextpassword | The unencrypted password for the source. Note: environment variables can be used for improved security. | **Example:** @@ -151,6 +151,21 @@ In the config file, the `` element contains child node ``` +When using unencrypted passwords stored in an environment variable: + +```xml + + + + + + + + + + +``` + When using unencrypted passwords: ```xml From 22be7378b560ce35d9a934605105cfa1b230a5b5 Mon Sep 17 00:00:00 2001 From: Advay Tandon Date: Tue, 28 Jul 2020 15:25:05 -0400 Subject: [PATCH 067/988] Added new error docs for Readme, updated nuspec and msbuild-targets files in docs\reference to reflect new readme support --- docs/reference/errors-and-warnings/NU5038.md | 22 +++++++ docs/reference/errors-and-warnings/NU5039.md | 62 ++++++++++++++++++++ docs/reference/errors-and-warnings/NU5040.md | 25 ++++++++ docs/reference/errors-and-warnings/NU5041.md | 25 ++++++++ docs/reference/errors-and-warnings/NU5042.md | 62 ++++++++++++++++++++ docs/reference/msbuild-targets.md | 24 ++++++++ docs/reference/nuspec.md | 23 ++++++++ 7 files changed, 243 insertions(+) create mode 100644 docs/reference/errors-and-warnings/NU5038.md create mode 100644 docs/reference/errors-and-warnings/NU5039.md create mode 100644 docs/reference/errors-and-warnings/NU5040.md create mode 100644 docs/reference/errors-and-warnings/NU5041.md create mode 100644 docs/reference/errors-and-warnings/NU5042.md diff --git a/docs/reference/errors-and-warnings/NU5038.md b/docs/reference/errors-and-warnings/NU5038.md new file mode 100644 index 000000000..0bcff0111 --- /dev/null +++ b/docs/reference/errors-and-warnings/NU5038.md @@ -0,0 +1,22 @@ +--- +title: NuGet Error NU5038 +description: NU5038 Error code +author: advay26 +ms.author: t-adtand +ms.date: 7/28/2020 +ms.topic: reference +ms.reviewer: +f1_keywords: + - NU5038 +--- + +# NuGet Error NU5038 +
The readme file 'readme.txt' has an invalid extension. It must end in .md.
+ +### Issue + +The readme file must be a markdown file, and must end in '*.md*'. + +### Solution + +Use a markdown file extension for the readme file. \ No newline at end of file diff --git a/docs/reference/errors-and-warnings/NU5039.md b/docs/reference/errors-and-warnings/NU5039.md new file mode 100644 index 000000000..9810ea90a --- /dev/null +++ b/docs/reference/errors-and-warnings/NU5039.md @@ -0,0 +1,62 @@ +--- +title: NuGet Error NU5039 +description: NU5039 Error code +author: advay26 +ms.author: t-adtand +ms.date: 7/28/2020 +ms.topic: reference +ms.reviewer: +f1_keywords: + - NU5039 +--- + +# NuGet Error NU5039 + +
The readme file 'readme.md' does not exist in the package.
+ + +### Issue + +NuGet is unable to find the readme file in the package. + + +### Solution + +- Make sure that the file that is marked as the package readme exists at the source and it is readable, and the target matches the path expected by the `readme` property. +- Ensure that the file is referenced in the nuspec or in the project file. + * When creating a package from an MSBuild project file, make sure to reference the readme file in the project, as follows: + + ```xml + + + ... + readme.md + ... + + + + ... + + ... + + + ``` + + * When you are creating a package from a nuspec file, make sure to include the readme file in the `` section: + + ```xml + + + ... + docs\readme.md + ... + + + ... + + ... + + + ``` + +[Learn more about packaging a readme file](../msbuild-targets.md#packagereadmefile). diff --git a/docs/reference/errors-and-warnings/NU5040.md b/docs/reference/errors-and-warnings/NU5040.md new file mode 100644 index 000000000..80d0d802a --- /dev/null +++ b/docs/reference/errors-and-warnings/NU5040.md @@ -0,0 +1,25 @@ +--- +title: NuGet Error NU5040 +description: NU5040 Error code +author: advay26 +ms.author: t-adtand +ms.date: 7/28/2020 +ms.topic: reference +ms.reviewer: +f1_keywords: + - NU5040 +--- + +# NuGet Error NU5040 + +
The readme file size must not exceed 1 megabyte.
+ + +### Issue + +The file that is specified as the package readme is larger than 1 megabyte (MB). NuGet only allows readmes whose file size is less than 1 MB. + + +### Solution + +Remove unnecessary content to reduce the size of the package readme file. diff --git a/docs/reference/errors-and-warnings/NU5041.md b/docs/reference/errors-and-warnings/NU5041.md new file mode 100644 index 000000000..af998fbf8 --- /dev/null +++ b/docs/reference/errors-and-warnings/NU5041.md @@ -0,0 +1,25 @@ +--- +title: NuGet Error NU5041 +description: NU5041 Error code +author: advay26 +ms.author: t-adtand +ms.date: 7/28/2020 +ms.topic: reference +ms.reviewer: +f1_keywords: + - NU5041 +--- + +# NuGet Error NU5041 + +
The readme file 'readme.md' is empty.
+ + +### Issue + +The file that is specified as the package readme is empty. + + +### Solution + +Populate the contents of the readme file. diff --git a/docs/reference/errors-and-warnings/NU5042.md b/docs/reference/errors-and-warnings/NU5042.md new file mode 100644 index 000000000..cf6c18d7a --- /dev/null +++ b/docs/reference/errors-and-warnings/NU5042.md @@ -0,0 +1,62 @@ +--- +title: NuGet Error NU5042 +description: NU5042 Error code +author: advay26 +ms.author: t-adtand +ms.date: 7/28/2020 +ms.topic: reference +ms.reviewer: +f1_keywords: + - NU5042 +--- + +# NuGet Error NU5042 + +
Cannot open the readme file 'readme.md'
+ + +### Issue + +NuGet is unable to find and open the readme file in the package. + + +### Solution + +- Make sure that the file that is marked as the package readme exists at the source and it is readable, and the target matches the path expected by the `readme` property. +- Ensure that the file is referenced in the nuspec or in the project file. + * When creating a package from an MSBuild project file, make sure to reference the readme file in the project, as follows: + + ```xml + + + ... + readme.md + ... + + + + ... + + ... + + + ``` + + * When you are creating a package from a nuspec file, make sure to include the readme file in the `` section: + + ```xml + + + ... + docs\readme.md + ... + + + ... + + ... + + + ``` + +[Learn more about packaging a readme file](../msbuild-targets.md#packagereadmefile). diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index fc4ae633a..b76e05855 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -59,6 +59,7 @@ Note that the `Owners` and `Summary` properties from `.nuspec` are not supported | ProjectUrl | PackageProjectUrl | empty | | | Icon | PackageIcon | empty | You need to explicitly pack the referenced icon image file.| | IconUrl | PackageIconUrl | empty | For the best downlevel experience, `PackageIconUrl` should be specified in addition to `PackageIcon`. Longer term, `PackageIconUrl` will be deprecated. | +| Readme | PackageReadmeFile | empty | You need to explicitly pack the referenced readme file.| | Tags | PackageTags | empty | Tags are semi-colon delimited. | | ReleaseNotes | PackageReleaseNotes | empty | | | Repository/Url | RepositoryUrl | empty | Repository URL used to clone or retrieve source code. Example: *https://github.com/NuGet/NuGet.Client.git* | @@ -84,6 +85,7 @@ Note that the `Owners` and `Summary` properties from `.nuspec` are not supported - PackageLicenseUrl - PackageProjectUrl - PackageIconUrl +- PackageReadmeFile - PackageReleaseNotes - PackageTags - PackageOutputPath @@ -146,6 +148,28 @@ For example: For the nuspec equivalent, take a look at [nuspec reference for icon](nuspec.md#icon). +### PackageReadmeFile + +When packing a readme file, you need to use the `PackageReadmeFile` property to specify the package path, relative to the root of the package. In addition, you need to make sure that the file is included in the package. Readme file size is limited to 1 MB. Supported file formats include only Markdown (*.md*). + +For example: + +```xml + + ... + readme.md + ... + + + + ... + + ... + +``` + +For the nuspec equivalent, take a look at [nuspec reference for readme](nuspec.md#readme). + ### Output assemblies `nuget pack` copies output files with extensions `.exe`, `.dll`, `.xml`, `.winmd`, `.json`, and `.pri`. The output files that are copied depend on what MSBuild provides from the `BuiltOutputProjectGroup` target. diff --git a/docs/reference/nuspec.md b/docs/reference/nuspec.md index b9b179c92..35cd12431 100644 --- a/docs/reference/nuspec.md +++ b/docs/reference/nuspec.md @@ -173,6 +173,29 @@ For the MSBuild equivalent, take a look at [Packing an icon image file](msbuild- > [!Tip] > You can specify both `icon` and `iconUrl` to maintain backward compatibility with sources that do not support `icon`. Visual Studio will support `icon` for packages coming from a folder-based source in a future release. +#### readme + +When packing a readme file, you need to use the `readme` element to specify the package path, relative to the root of the package. In addition, you need to make sure that the file is included in the package. Readme file size is limited to 1 MB. Supported file formats include only Markdown (*.md*). + +For example, you would add the following to your nuspec when creating a package using nuget.exe: + +```xml + + + ... + docs\readme.md + ... + + + ... + + ... + + +``` + +For the MSBuild equivalent, take a look at [Packing a readme file](msbuild-targets.md#packagereadmefile). + #### requireLicenseAcceptance A Boolean value specifying whether the client must prompt the consumer to accept the package license before installing the package. From b97be5323ced097edc147995d493a7ce70be4089 Mon Sep 17 00:00:00 2001 From: Moin Shaikh <7282553+moingshaikh@users.noreply.github.com> Date: Thu, 30 Jul 2020 22:54:11 +0530 Subject: [PATCH 068/988] Fixed a typo (#2109) Fixed a minor typo (necessary) under the "Test package installation" section. Fixes the issue #2106. --- docs/create-packages/creating-a-package-dotnet-cli.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/create-packages/creating-a-package-dotnet-cli.md b/docs/create-packages/creating-a-package-dotnet-cli.md index 9503690e6..c0be34491 100644 --- a/docs/create-packages/creating-a-package-dotnet-cli.md +++ b/docs/create-packages/creating-a-package-dotnet-cli.md @@ -106,7 +106,7 @@ When you run `dotnet pack` on a solution, this packs all the projects in the sol ### Test package installation -Before publishing a package, you typically want to test the process of installing a package into a project. The tests make sure that the necessarily files all end up in their correct places in the project. +Before publishing a package, you typically want to test the process of installing a package into a project. The tests make sure that the necessary files all end up in their correct places in the project. You can test installations manually in Visual Studio or on the command line using the normal [package installation steps](../consume-packages/overview-and-workflow.md#ways-to-install-a-nuget-package). From d402ca4f6302efeaa2fc61d535c9c047105ec33a Mon Sep 17 00:00:00 2001 From: Riad Mohamed Gahlouz <65630625+t-mog-msft@users.noreply.github.com> Date: Thu, 30 Jul 2020 14:51:25 -0400 Subject: [PATCH 069/988] Update Finding and Choosing Packages section (#2104) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Update Finding and Choosing Packages section * Change screenshot * Update docs/consume-packages/Finding-and-Choosing-Packages.md Co-authored-by: Loïc Sharma * Update docs/consume-packages/Finding-and-Choosing-Packages.md Co-authored-by: Loïc Sharma * Update docs/consume-packages/Finding-and-Choosing-Packages.md Co-authored-by: Loïc Sharma * Update docs/consume-packages/Finding-and-Choosing-Packages.md Co-authored-by: Loïc Sharma * Update docs/consume-packages/Finding-and-Choosing-Packages.md Co-authored-by: Loïc Sharma * Add links and small intro for package types * Update docs/consume-packages/Finding-and-Choosing-Packages.md Co-authored-by: Loïc Sharma * Update docs/consume-packages/Finding-and-Choosing-Packages.md Co-authored-by: Loïc Sharma * Update docs/consume-packages/Finding-and-Choosing-Packages.md Co-authored-by: Loïc Sharma * Update docs/consume-packages/Finding-and-Choosing-Packages.md Co-authored-by: Loïc Sharma * Update docs/consume-packages/Finding-and-Choosing-Packages.md Co-authored-by: Loïc Sharma * Update docs/consume-packages/Finding-and-Choosing-Packages.md Co-authored-by: Loïc Sharma * Update wording for Template * Update template definition * Update docs/consume-packages/Finding-and-Choosing-Packages.md Co-authored-by: Loïc Sharma * Add clarifications Co-authored-by: Loïc Sharma --- .../Finding-and-Choosing-Packages.md | 26 +++++++++++++----- .../media/Finding-01-Popularity.png | Bin 37578 -> 71470 bytes .../media/Finding-02-SearchResults.png | Bin 36729 -> 68372 bytes .../media/Finding-06-include-prerelease.png | Bin 33156 -> 69282 bytes 4 files changed, 19 insertions(+), 7 deletions(-) diff --git a/docs/consume-packages/Finding-and-Choosing-Packages.md b/docs/consume-packages/Finding-and-Choosing-Packages.md index 118703c2f..84d766110 100644 --- a/docs/consume-packages/Finding-and-Choosing-Packages.md +++ b/docs/consume-packages/Finding-and-Choosing-Packages.md @@ -13,19 +13,31 @@ When starting any .NET project, or whenever you identify a functional need for y ## Finding packages -When you visit nuget.org or open the Package Manager UI in Visual Studio, you see a list of packages sorted by total downloads. This immediately shows you the most widely-used packages across the millions of .NET projects. There's a good chance, then, that at least some of the packages listed on the first few pages will be useful in your projects. +When you visit nuget.org or open the Package Manager UI in Visual Studio, you see a list of packages sorted by relevancy. This shows you the most widely used packages across all .NET projects. There's a good chance that some of these packages may be useful for your own projects! ![Default view of nuget.org/packages showing the most popular packages](media/Finding-01-Popularity.png) -Notice the **Include prerelease** option on the upper right of the page. When selected, nuget.org shows all versions of packages including beta and other early releases. To show only stable released, clear the option. - -For specific needs, searching by tags (within the Visual Studio Package Manager or on a portal like nuget.org) is the most common means of discovering a suitable package. For example, searching on "json" lists all NuGet packages that are tagged with that keyword and thus have some relationship to the JSON data format. +On nuget.org, notice the **Filter** button on the upper right of the page. When clicked, the Advanced Search panel expands to present sorting and filtering options. ![Search results for 'json' on nuget.org](media/Finding-02-SearchResults.png) -You can also search using the package ID, if you know it. See [Search Syntax](#search-syntax) below. +You can use the **Package type** filter to show packages of a specific type: +- **`All types`**: This is the default behavior. It shows all packages regardless of their type. +- **`Dependency`**: Regular NuGet packages that can be installed into your project. +- **`.NET tool`**: This filters to [.NET tools](/dotnet/core/tools/global-tools), a NuGet package that contains a console application. +- **`Template`**: This filters to [.NET templates](/dotnet/core/install/templates), which can be used to create new projects using the [`dotnet new`](/dotnet/core/tools/dotnet-new) command. + +You can use the **Sort by** option to sort the search results: +- **`Relevance`**: This is the default behavior. It sorts results according to an internal scoring algorithm. +- **`Downloads`**: Sorts the search results by the total number of downloads, in descending order. +- **`Recently updated`**: Sorts the search results by their latest version's creation date, in descending chronological order. + +In the **Options** section, we can find the **`Include prerelease`** checkbox. +When checked, nuget.org shows all versions of packages including pre-releases. To show only stable versions, clear the option. + +To apply the search filters, click on the **`Apply`** button. You can always get back to the default behavior by clicking on the **`Reset`** button. -At this time, search results are sorted only by relevance, so you generally want to look through at least the first few pages of results for packages that suit your needs, or refine your search terms to be more specific. +You can also use the [search syntax](#search-syntax) to filter on tags, owners, and package IDs. ### Does the package support my project's target framework? @@ -43,7 +55,7 @@ Fortunately, you can determine supported frameworks through two other means: Many package authors make preview and beta releases available as they continue to make improvements and seek feedback on their latest revisions. -By default, nuget.org shows pre-release packages in search results. To search only stable releases, clear the **Include prerelease** option on the upper right of the page +By default, nuget.org shows pre-release packages in search results. To search only stable releases, clear the **Include prerelease** option in the Advanced Search panel that is accessible from the **Filter** button on the upper right of the page ![Include prerelease checkbox on nuget.org](media/Finding-06-include-prerelease.png) diff --git a/docs/consume-packages/media/Finding-01-Popularity.png b/docs/consume-packages/media/Finding-01-Popularity.png index 06fbfc690bb9e96498b405133908a75acc453eb4..7dfdd56a3fc28d04795b5c7baa72737848b8b746 100644 GIT binary patch literal 71470 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 literal 37578 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 diff --git a/docs/consume-packages/media/Finding-02-SearchResults.png b/docs/consume-packages/media/Finding-02-SearchResults.png index 5e0d72df8690a9b07e16dca765abcda7b4e15bca..c5da6a9a448f2fa2db2164c520bfc36565a42194 100644 GIT binary patch literal 68372 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%0AYXxTg*oOX?#|iSvqqRTgmzQ5Xn*t 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 HW?%mwbye2E literal 36729 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 diff --git a/docs/consume-packages/media/Finding-06-include-prerelease.png b/docs/consume-packages/media/Finding-06-include-prerelease.png index 3b6734714bc0906ae37ca5676ecc1d841ecae715..0befb604fa400f602d55f33969a3227e73d400b2 100644 GIT binary patch literal 69282 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
The readme file size must not exceed 1 megabyte.
+
The readme file 'readme.md' is empty.
### Issue -The file that is specified as the package readme is larger than 1 megabyte (MB). NuGet only allows readmes whose file size is less than 1 MB. +The file that is specified as the package readme is empty. ### Solution -Remove unnecessary content to reduce the size of the package readme file. +Populate the contents of the readme file. diff --git a/docs/reference/errors-and-warnings/NU5041.md b/docs/reference/errors-and-warnings/NU5041.md index af998fbf8..312f54d4f 100644 --- a/docs/reference/errors-and-warnings/NU5041.md +++ b/docs/reference/errors-and-warnings/NU5041.md @@ -10,16 +10,53 @@ f1_keywords: - NU5041 --- -# NuGet Error NU5041 +# NuGet Error NU5042 -
The readme file 'readme.md' is empty.
+
Cannot open the readme file 'readme.md'
-### Issue +### Issue -The file that is specified as the package readme is empty. +NuGet is unable to find and open the readme file in the package. ### Solution -Populate the contents of the readme file. +- Make sure that the file that is marked as the package readme exists at the source and it is readable, and the target matches the path expected by the `readme` property. +- Ensure that the file is referenced in the nuspec or in the project file. + * When creating a package from an MSBuild project file, make sure to reference the readme file in the project, as follows: + + ```xml + + + ... + readme.md + ... + + + + ... + + ... + + + ``` + + * When you are creating a package from a nuspec file, make sure to include the readme file in the `` section: + + ```xml + + + ... + docs\readme.md + ... + + + ... + + ... + + + ``` + +[Learn more about packaging a readme file](../msbuild-targets.md#packagereadmefile). diff --git a/docs/reference/errors-and-warnings/NU5042.md b/docs/reference/errors-and-warnings/NU5042.md deleted file mode 100644 index cf6c18d7a..000000000 --- a/docs/reference/errors-and-warnings/NU5042.md +++ /dev/null @@ -1,62 +0,0 @@ ---- -title: NuGet Error NU5042 -description: NU5042 Error code -author: advay26 -ms.author: t-adtand -ms.date: 7/28/2020 -ms.topic: reference -ms.reviewer: -f1_keywords: - - NU5042 ---- - -# NuGet Error NU5042 - -
Cannot open the readme file 'readme.md'
- - -### Issue - -NuGet is unable to find and open the readme file in the package. - - -### Solution - -- Make sure that the file that is marked as the package readme exists at the source and it is readable, and the target matches the path expected by the `readme` property. -- Ensure that the file is referenced in the nuspec or in the project file. - * When creating a package from an MSBuild project file, make sure to reference the readme file in the project, as follows: - - ```xml - - - ... - readme.md - ... - - - - ... - - ... - - - ``` - - * When you are creating a package from a nuspec file, make sure to include the readme file in the `` section: - - ```xml - - - ... - docs\readme.md - ... - - - ... - - ... - - - ``` - -[Learn more about packaging a readme file](../msbuild-targets.md#packagereadmefile). From 3d4424867a72a960dfa614cf4d5cc6c50420fee4 Mon Sep 17 00:00:00 2001 From: Jozef Izso Date: Thu, 13 Aug 2020 22:11:17 +0200 Subject: [PATCH 082/988] Update Visual-Studio-Templates.md --- docs/visual-studio-extensibility/Visual-Studio-Templates.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/visual-studio-extensibility/Visual-Studio-Templates.md b/docs/visual-studio-extensibility/Visual-Studio-Templates.md index 8184cb33c..7371506bc 100644 --- a/docs/visual-studio-extensibility/Visual-Studio-Templates.md +++ b/docs/visual-studio-extensibility/Visual-Studio-Templates.md @@ -88,7 +88,7 @@ If you are distributing only a single project/item template and do not need to p 1. Modify the `` element in the `.vstemplate` file as follows: ```xml - + ``` From 8e34d0f67e09c219645d24fb9624d4191fc48fde Mon Sep 17 00:00:00 2001 From: Cristina Manu Date: Thu, 13 Aug 2020 13:19:53 -0700 Subject: [PATCH 083/988] Doc updates for issue: https://github.com/NuGet/docs.microsoft.com-nuget/issues/2088 --- docs/concepts/Package-Versioning.md | 31 +++++++++++++++++++++-------- 1 file changed, 23 insertions(+), 8 deletions(-) diff --git a/docs/concepts/Package-Versioning.md b/docs/concepts/Package-Versioning.md index ad06bdd84..67e5b61a6 100644 --- a/docs/concepts/Package-Versioning.md +++ b/docs/concepts/Package-Versioning.md @@ -109,7 +109,7 @@ When referring to package dependencies, NuGet supports using interval notation f | [1.0,2.0) | 1.0 ≤ x < 2.0 | Mixed inclusive minimum and exclusive maximum version | | (1.0) | invalid | invalid | -When using the PackageReference format, NuGet also supports using a floating notation, \*, for Major, Minor, Patch, and pre-release suffix parts of the number. Floating versions are not supported with the `packages.config` format. +When using the PackageReference format, NuGet also supports using a floating notation, \*, for Major, Minor, Patch, and pre-release suffix parts of the number. Floating versions are not supported with the `packages.config` format. When a floating version is specified the rule is to resolve to the highest existent version that match the version description. Examples of loating versions and the resolutions are below. > [!Note] > Version ranges in PackageReference include pre-release versions. By design, floating versions do not resolve prerelease versions unless opted into. For the status of the related feature request, see [issue 6434](https://github.com/NuGet/Home/issues/6434#issuecomment-358782297). @@ -121,29 +121,44 @@ Always specify a version or version range for package dependencies in project fi #### References in project files (PackageReference) ```xml - + - + - + used to guarantee a dependency with a specific bug fix. + Will resolve to the smallest acceptable stable version.--> + recommended because it can be difficult to determine the lowest version. + Will resolve to the smallest acceptable stable version. + --> - + - + ``` +#### Floating version resolutions + +| Version | Versions present on server | Resolution | Reason | Notes | +|----------|--------------|-------------|-------------|-------------| +| * | 1.1.0
1.1.1
1.2.0
1.3.0-alpha | 1.2.0 | The highest stable version. | +| 1.1.* | 1.1.0
1.1.1
1.1.2-alpha
1.2.0-alpha | 1.1.1 | The highest stable version that respects the specified pattern.| +| * - * | 1.1.0
1.1.1
1.1.2-alpha
1.3.0-beta | 1.3.0-beta | The highest version including the not stable versions. | Available in Visual Studio version 16.6, NuGet version 5.6, .NET Core SDK version 3.1.300 | +| 1.1.* - * | 1.1.0
1.1.1
1.1.2-alpha
1.1.2-beta
1.3.0-beta | 1.1.2-beta | The highest version respecting the pattern and including the not stable versions. | Available in Visual Studio version 16.6, NuGet version 5.6, .NET Core SDK version 3.1.300 | + **References in `packages.config`:** In `packages.config`, every dependency is listed with an exact `version` attribute that's used when restoring packages. The `allowedVersions` attribute is used only during update operations to constrain the versions to which the package might be updated. From 6eba86a048b268c3c41bf2cffb120403d4f2f5f1 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Thu, 13 Aug 2020 15:22:00 -0500 Subject: [PATCH 084/988] Remove en-us & do a full link. --- docs/reference/cli-reference/cli-ref-list.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/cli-reference/cli-ref-list.md b/docs/reference/cli-reference/cli-ref-list.md index fd814e002..a1b8005a3 100644 --- a/docs/reference/cli-reference/cli-ref-list.md +++ b/docs/reference/cli-reference/cli-ref-list.md @@ -19,7 +19,7 @@ Displays a list of packages from a given source. If no sources are specified, al nuget list [search terms] [options] ``` -where the optional search terms will filter the displayed list. [Search terms](../../consume-packages/finding-and-choosing-packages#search-syntax) are applied to the names of packages, tags, and package descriptions just as they are when using them on nuget.org. +where the optional search terms will filter the displayed list. [Search terms](https://docs.microsoft.com/nuget/consume-packages/finding-and-choosing-packages#search-syntax) are applied to the names of packages, tags, and package descriptions just as they are when using them on nuget.org. ## Options From e65206a43e750cc323d3ecd09bf25ddd5d737afa Mon Sep 17 00:00:00 2001 From: donnie-msft <49205731+donnie-msft@users.noreply.github.com> Date: Thu, 13 Aug 2020 16:40:05 -0400 Subject: [PATCH 085/988] Update Publish-a-package.md --- docs/nuget-org/Publish-a-package.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/nuget-org/Publish-a-package.md b/docs/nuget-org/Publish-a-package.md index 1f7971f71..802c38d89 100644 --- a/docs/nuget-org/Publish-a-package.md +++ b/docs/nuget-org/Publish-a-package.md @@ -41,7 +41,7 @@ Next, you can either upload the package through the nuget.org web portal, push t ### Command line -To push packages to nuget.org you must use [nuget.exe v4.1.0 or above](https://www.nuget.org/downloads), which implements the required [NuGet protocols](../api/nuget-protocols.md). You also need an API key, which is created on nuget.org. +To push packages to nuget.org you must use [dotnet.exe (.NET Core)](https://docs.microsoft.com/en-us/dotnet/core/install/) or [nuget.exe v4.1.0 or above](https://www.nuget.org/downloads), which implement the required [NuGet protocols](../api/nuget-protocols.md). You also need an API key, which is created on nuget.org. #### Create API keys From 57d5a52b0b669dab83cf57101c968068e8e19624 Mon Sep 17 00:00:00 2001 From: donnie-msft <49205731+donnie-msft@users.noreply.github.com> Date: Thu, 13 Aug 2020 16:42:54 -0400 Subject: [PATCH 086/988] Update Publish-a-package.md --- docs/nuget-org/Publish-a-package.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/nuget-org/Publish-a-package.md b/docs/nuget-org/Publish-a-package.md index 802c38d89..33af255ed 100644 --- a/docs/nuget-org/Publish-a-package.md +++ b/docs/nuget-org/Publish-a-package.md @@ -41,7 +41,7 @@ Next, you can either upload the package through the nuget.org web portal, push t ### Command line -To push packages to nuget.org you must use [dotnet.exe (.NET Core)](https://docs.microsoft.com/en-us/dotnet/core/install/) or [nuget.exe v4.1.0 or above](https://www.nuget.org/downloads), which implement the required [NuGet protocols](../api/nuget-protocols.md). You also need an API key, which is created on nuget.org. +To push packages to nuget.org you must use [dotnet.exe (.NET Core)](https://docs.microsoft.com/dotnet/core/install/) or [nuget.exe v4.1.0 or above](https://www.nuget.org/downloads), which implement the required [NuGet protocols](../api/nuget-protocols.md). You also need an API key, which is created on nuget.org. #### Create API keys From 90c89ac6a3e139c68e6e109e6759428fc55f7696 Mon Sep 17 00:00:00 2001 From: donnie-msft <49205731+donnie-msft@users.noreply.github.com> Date: Thu, 13 Aug 2020 16:55:22 -0400 Subject: [PATCH 087/988] Move links to work better with screen readers --- docs/nuget-org/Publish-a-package.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/nuget-org/Publish-a-package.md b/docs/nuget-org/Publish-a-package.md index 33af255ed..1a1066440 100644 --- a/docs/nuget-org/Publish-a-package.md +++ b/docs/nuget-org/Publish-a-package.md @@ -41,7 +41,8 @@ Next, you can either upload the package through the nuget.org web portal, push t ### Command line -To push packages to nuget.org you must use [dotnet.exe (.NET Core)](https://docs.microsoft.com/dotnet/core/install/) or [nuget.exe v4.1.0 or above](https://www.nuget.org/downloads), which implement the required [NuGet protocols](../api/nuget-protocols.md). You also need an API key, which is created on nuget.org. +To push packages to nuget.org, you first need an API key, which is created on nuget.org. You must use either dotnet.exe (.NET Core), or nuget.exe v4.1.0 or above, which implement the required NuGet protocols. +(For more information, see [.NET Core](https://docs.microsoft.com/dotnet/core/install/), [nuget.exe](https://www.nuget.org/downloads), and [NuGet protocols](../api/nuget-protocols.md)). #### Create API keys From a90cac807d19e16605250b2d6b23a8aebfe7d1ad Mon Sep 17 00:00:00 2001 From: donnie-msft <49205731+donnie-msft@users.noreply.github.com> Date: Thu, 13 Aug 2020 17:10:32 -0400 Subject: [PATCH 088/988] Update Publish-a-package.md --- docs/nuget-org/Publish-a-package.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/nuget-org/Publish-a-package.md b/docs/nuget-org/Publish-a-package.md index 1a1066440..d2aa60a55 100644 --- a/docs/nuget-org/Publish-a-package.md +++ b/docs/nuget-org/Publish-a-package.md @@ -64,7 +64,7 @@ To push packages to nuget.org, you first need an API key, which is created on nu > [!NOTE] > API key is not used for authenticating with the private feed. Refer to [`nuget sources` command](../reference/cli-reference/cli-ref-sources.md) to manage credentials for authenticating with the source. - > API keys can be obtained from the individual NuGet servers. To create and manange APIKeys for nuget.org refer to [publish-api-key](../quickstart/includes/publish-api-key.md) + > API keys can be obtained from the individual NuGet servers. To create and manange APIKeys for nuget.org refer to [Create API keys](#create-api-keys). 1. Push your package to NuGet Gallery using the following command: From 512211364aad6974ce9f91bb2e15419516e24af6 Mon Sep 17 00:00:00 2001 From: donnie-msft <49205731+donnie-msft@users.noreply.github.com> Date: Thu, 13 Aug 2020 17:12:37 -0400 Subject: [PATCH 089/988] Update Publish-a-package.md --- docs/nuget-org/Publish-a-package.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/nuget-org/Publish-a-package.md b/docs/nuget-org/Publish-a-package.md index d2aa60a55..dcc1ee1f5 100644 --- a/docs/nuget-org/Publish-a-package.md +++ b/docs/nuget-org/Publish-a-package.md @@ -42,7 +42,7 @@ Next, you can either upload the package through the nuget.org web portal, push t ### Command line To push packages to nuget.org, you first need an API key, which is created on nuget.org. You must use either dotnet.exe (.NET Core), or nuget.exe v4.1.0 or above, which implement the required NuGet protocols. -(For more information, see [.NET Core](https://docs.microsoft.com/dotnet/core/install/), [nuget.exe](https://www.nuget.org/downloads), and [NuGet protocols](../api/nuget-protocols.md)). +For more information, see [.NET Core](https://docs.microsoft.com/dotnet/core/install/), [nuget.exe](https://www.nuget.org/downloads), and [NuGet protocols](../api/nuget-protocols.md). #### Create API keys From cbef631beaa55264494c4db09950d9db40c7cffd Mon Sep 17 00:00:00 2001 From: Fernando Aguilar Date: Thu, 13 Aug 2020 14:56:39 -0700 Subject: [PATCH 090/988] Add docs for Env. vars support on Mac and Windows --- docs/reference/nuget-config-file.md | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/docs/reference/nuget-config-file.md b/docs/reference/nuget-config-file.md index 3f8c30951..c1884d702 100644 --- a/docs/reference/nuget-config-file.md +++ b/docs/reference/nuget-config-file.md @@ -318,9 +318,21 @@ You can use environment variables in `nuget.config` values (NuGet 3.4+) to apply For example, if the `HOME` environment variable on Windows is set to `c:\users\username`, then the value of `%HOME%\NuGetRepository` in the configuration file resolves to `c:\users\username\NuGetRepository`. -Note that you have to use Windows-style environment variables (starts and ends with %) even on Mac/Linux. Having `$HOME/NuGetRepository` in a configuration file will not resolve. On Mac/Linux the value of `%HOME%\NuGetRepository` will resolve to `/home/myStuff/NuGetRepository`. +Note that you have to use Windows-style environment variables (starts and ends with %) even on Mac/Linux. Having `$HOME/NuGetRepository` in a configuration file will not resolve. On Mac/Linux the value of `%HOME%/NuGetRepository` will resolve to `/home/myStuff/NuGetRepository`. + +If an environment variable is not found, NuGet uses the literal value from the configuration file. For example `%MY_UNDEFINED_VAR%/NuGetRepository` will be resolved as `path/to/current_working_dir/$MY_UNDEFINED_VAR/NuGetRepository` + +The table below show environnment variable syntax and path separator support for NuGet.Config files. + +### NuGet.Config environment variable support + +| Syntax | Dir separator | Windows nuget.exe | Windows dotnet.exe | Mac nuget.exe (in Mono) | Mac dotnet.exe | +|---|---|---|---|---|---| +| `%MY_VAR%` | `/` | Yes | Yes | Yes | Yes | +| `%MY_VAR%` | `\` | Yes | Yes | No | No | +| `$MY_VAR` | `/` | No | No | No | No | +| `$MY_VAR` | `\` | No | No | No | No | -If an environment variable is not found, NuGet uses the literal value from the configuration file. ## Example config file @@ -335,10 +347,10 @@ Below is an example `nuget.config` file that illustrates a number of settings in See: nuget.exe help install See: nuget.exe help update - In this example, %PACKAGEHOME% is an environment variable. On Mac/Linux, - use $PACKAGE_HOME/External as the value. + In this example, %PACKAGEHOME% is an environment variable. + This syntax works on Windows/Mac/Linux --> - + Package B
v1.2.0-preview | TRUE, latest stable version depends on Package B | + | v1.0.0 --> Package B
v1.1.0 (latest stable)
v1.2.0-preview | FALSE, latest stable version does not depend on Package B | + | v1.0.0 --> Package B
v1.1.0 (latest stable)
v1.2.0-preview --> Package B | FALSE, latest stable version does not depend on Package B | + + - A GitHub repository's number of stars generally indicates how popular that repository is with GitHub users (more stars usually means more popular). Please visit [GitHub's Getting Started page](https://help.github.com/en/github/getting-started-with-github/saving-repositories-with-stars#about-stars) for more information on GitHub's star and repository ranking system. + + ![Used By](media/Used-By-section-Humanizer.png) > [!Note] - > A package's GitHub Usage section is generated automatically, periodically, without human review of individual repositories, and solely for informational purposes in order to show you GitHub repositories that depend on the package and that are popular with GitHub users. + > A package's Used By section is generated automatically, periodically, without human review of individual repositories, and solely for informational purposes in order to show you NuGet.org packages and popular GitHub repositories that depend on the package. - *Version history*: on the package page, look under **Info** for the date of the most recent update and examine the **Version History**. A well-maintained package has recent updates and a rich version history. Neglected packages have few updates and often haven't been updated in some time. diff --git a/docs/consume-packages/media/Used-By-section-Humanizer.png b/docs/consume-packages/media/Used-By-section-Humanizer.png new file mode 100644 index 0000000000000000000000000000000000000000..f9d6bc7f63bd05813ae260a70e0ca8ecbe6855e1 GIT binary patch literal 85767 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 X`C*c6=_WC21|aZs^>bP0l+XkKtARx@ literal 0 HcmV?d00001 From aa2556b208d7cd30a69f716b466bddb52f424c1e Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 19 Aug 2020 09:30:52 -0700 Subject: [PATCH 127/988] wording --- docs/consume-packages/Finding-and-Choosing-Packages.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Finding-and-Choosing-Packages.md b/docs/consume-packages/Finding-and-Choosing-Packages.md index 6f8f50a61..6257816d4 100644 --- a/docs/consume-packages/Finding-and-Choosing-Packages.md +++ b/docs/consume-packages/Finding-and-Choosing-Packages.md @@ -89,7 +89,7 @@ At the same time, using a NuGet package means taking a dependency on it, so you ![Download statistics on a package's listing page](media/Finding-03-Downloads.png) -- *Used By*: on the package page, the **Used By** section lists the top 5 most popular NuGet.org packages and popular GitHub repositories that depend on this package, known as dependents. Dependents can be seen as "endorsements" of this package, as package authors have chosen to trust and depend on it. +- *Used By*: on the package page, the **Used By** section lists the top 5 most popular NuGet.org packages and popular GitHub repositories that depend on this package. Dependent packages and repos can be seen as "endorsements" of this package, as package authors have chosen to trust and depend on it. - A dependent package must depend on *any version* of this package in its *latest stable listed version*. This definition ensures that displayed dependent packages are an up-to-date reflection of package author's decision to trust and depend on this package. Prerelease dependents are not listed as they are not considered whole-hearted endoresements yet. See the following table for examples: | Package A versions | Package A is a listed as a dependent of Package B? | From c64d264b3aaafddc86da74c1e210fcb41cdb7131 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 19 Aug 2020 11:55:05 -0700 Subject: [PATCH 128/988] Italtics --> Bolded for evaluation criteria --- .../Finding-and-Choosing-Packages.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/docs/consume-packages/Finding-and-Choosing-Packages.md b/docs/consume-packages/Finding-and-Choosing-Packages.md index 6257816d4..b696d03ca 100644 --- a/docs/consume-packages/Finding-and-Choosing-Packages.md +++ b/docs/consume-packages/Finding-and-Choosing-Packages.md @@ -85,11 +85,11 @@ The best way to evaluate the usefulness of a package is to download it and try i At the same time, using a NuGet package means taking a dependency on it, so you want to make sure it's robust and reliable. Because installing and directly testing a package is time-consuming, you can also learn a lot about a package's quality by using the information on a package's listing page: -- *Downloads statistics*: on the package page on nuget.org, the **Statistics** section shows total downloads, downloads of the most recent version, and average downloads per day. Larger numbers indicate that many other developers have taken a dependency on the package, which means that it has proven itself. +- **Downloads statistics**: on the package page on nuget.org, the **Statistics** section shows total downloads, downloads of the most recent version, and average downloads per day. Larger numbers indicate that many other developers have taken a dependency on the package, which means that it has proven itself. ![Download statistics on a package's listing page](media/Finding-03-Downloads.png) -- *Used By*: on the package page, the **Used By** section lists the top 5 most popular NuGet.org packages and popular GitHub repositories that depend on this package. Dependent packages and repos can be seen as "endorsements" of this package, as package authors have chosen to trust and depend on it. +- **Used By**: on the package page, the **Used By** section lists the top 5 most popular NuGet.org packages and popular GitHub repositories that depend on this package. Dependent packages and repos can be seen as "endorsements" of this package, as package authors have chosen to trust and depend on it. - A dependent package must depend on *any version* of this package in its *latest stable listed version*. This definition ensures that displayed dependent packages are an up-to-date reflection of package author's decision to trust and depend on this package. Prerelease dependents are not listed as they are not considered whole-hearted endoresements yet. See the following table for examples: | Package A versions | Package A is a listed as a dependent of Package B? | @@ -105,21 +105,21 @@ At the same time, using a NuGet package means taking a dependency on it, so you > [!Note] > A package's Used By section is generated automatically, periodically, without human review of individual repositories, and solely for informational purposes in order to show you NuGet.org packages and popular GitHub repositories that depend on the package. -- *Version history*: on the package page, look under **Info** for the date of the most recent update and examine the **Version History**. A well-maintained package has recent updates and a rich version history. Neglected packages have few updates and often haven't been updated in some time. +- **Version history**: on the package page, look under **Info** for the date of the most recent update and examine the **Version History**. A well-maintained package has recent updates and a rich version history. Neglected packages have few updates and often haven't been updated in some time. ![Version history on a package's listing page](media/Finding-04-VersionHistory.png) -- *Recent installs*: on the package page under **Statistics**, select **View full stats**. The full stats page shows the package installs over the last six weeks by version number. A package that other developers are actively using is typically a better choice than one that's not. +- **Recent installs**: on the package page under **Statistics**, select **View full stats**. The full stats page shows the package installs over the last six weeks by version number. A package that other developers are actively using is typically a better choice than one that's not. -- *Support*: on the package page under **Info**, select **Project Site** (if available) to see what support options the author provides. A project with a dedicated site is generally better supported. +- **Support**: on the package page under **Info**, select **Project Site** (if available) to see what support options the author provides. A project with a dedicated site is generally better supported. -- *Developer history*: on the package page under **Owners**, select an owner to see what other packages they've published. Those with multiple packages are more likely to continue supporting their work in the future. +- **Developer history**: on the package page under **Owners**, select an owner to see what other packages they've published. Those with multiple packages are more likely to continue supporting their work in the future. -- *Open source contributions*: many packages are maintained in open-source repositories, making it possible for developers depending on them to directly contribute bug fixes and feature improvements. The contribution history of any given package is also a good indicator of how many developers are actively involved. +- **Open source contributions**: many packages are maintained in open-source repositories, making it possible for developers depending on them to directly contribute bug fixes and feature improvements. The contribution history of any given package is also a good indicator of how many developers are actively involved. -- *Interview the owners*: new developers can certainly be equally committed to producing great packages for you to use, and it's good to give them a chance to bring something new to the NuGet ecosystem. With this in mind, reach out directly to the package developers through the **Contact Owners** option under **Info** on the listing page. Chances are, they'll be happy to work with you to serve your needs! +- **Interview the owners**: new developers can certainly be equally committed to producing great packages for you to use, and it's good to give them a chance to bring something new to the NuGet ecosystem. With this in mind, reach out directly to the package developers through the **Contact Owners** option under **Info** on the listing page. Chances are, they'll be happy to work with you to serve your needs! -- *Reserved Package ID Prefixes*: many package owners have applied for and have been granted a [reserved package ID prefix](../nuget-org/id-prefix-reservation.md). When you see the visual checkmark next to a package ID on [nuget.org](https://www.nuget.org/), or in Visual Studio, that means that the package owner has met our [criteria](../nuget-org/id-prefix-reservation.md#id-prefix-reservation-criteria) for ID prefix reservation. This means the package owner is being clear on identifying themselves and their package. +- **Reserved Package ID Prefixes**: many package owners have applied for and have been granted a [reserved package ID prefix](../nuget-org/id-prefix-reservation.md). When you see the visual checkmark next to a package ID on [nuget.org](https://www.nuget.org/), or in Visual Studio, that means that the package owner has met our [criteria](../nuget-org/id-prefix-reservation.md#id-prefix-reservation-criteria) for ID prefix reservation. This means the package owner is being clear on identifying themselves and their package. > [!Note] > Always be mindful of a package's license terms, which you can see by selecting **License Info** on a package's listing page on nuget.org. If a package does not specify license terms, contact the package owner directly using the **Contact owners** link on the package page. Microsoft does not license any intellectual property to you from third party package providers and is not responsible for information provided by third parties. From 87776b3bba25b385c3d0ac673c35b241538827aa Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 19 Aug 2020 12:52:07 -0700 Subject: [PATCH 129/988] Version history --> Version History --- docs/consume-packages/Finding-and-Choosing-Packages.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Finding-and-Choosing-Packages.md b/docs/consume-packages/Finding-and-Choosing-Packages.md index b696d03ca..47494b54e 100644 --- a/docs/consume-packages/Finding-and-Choosing-Packages.md +++ b/docs/consume-packages/Finding-and-Choosing-Packages.md @@ -105,7 +105,7 @@ At the same time, using a NuGet package means taking a dependency on it, so you > [!Note] > A package's Used By section is generated automatically, periodically, without human review of individual repositories, and solely for informational purposes in order to show you NuGet.org packages and popular GitHub repositories that depend on the package. -- **Version history**: on the package page, look under **Info** for the date of the most recent update and examine the **Version History**. A well-maintained package has recent updates and a rich version history. Neglected packages have few updates and often haven't been updated in some time. +- **Version History**: on the package page, look under **Info** for the date of the most recent update and examine the **Version History**. A well-maintained package has recent updates and a rich version history. Neglected packages have few updates and often haven't been updated in some time. ![Version history on a package's listing page](media/Finding-04-VersionHistory.png) From 98082feebafb874968d2435d2237934168c77216 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 19 Aug 2020 13:00:53 -0700 Subject: [PATCH 130/988] Defined dependent --- docs/consume-packages/Finding-and-Choosing-Packages.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Finding-and-Choosing-Packages.md b/docs/consume-packages/Finding-and-Choosing-Packages.md index 47494b54e..db88cd0d1 100644 --- a/docs/consume-packages/Finding-and-Choosing-Packages.md +++ b/docs/consume-packages/Finding-and-Choosing-Packages.md @@ -89,7 +89,7 @@ At the same time, using a NuGet package means taking a dependency on it, so you ![Download statistics on a package's listing page](media/Finding-03-Downloads.png) -- **Used By**: on the package page, the **Used By** section lists the top 5 most popular NuGet.org packages and popular GitHub repositories that depend on this package. Dependent packages and repos can be seen as "endorsements" of this package, as package authors have chosen to trust and depend on it. +- **Used By**: on the package page, the **Used By** section lists the top 5 most popular NuGet.org packages and popular GitHub repositories that depend on this package. Packages and repos that depend on this package can be called "dependents" of this package. Dependent packages and repos can be seen as "endorsements" of this package, as package authors have chosen to trust and depend on it. - A dependent package must depend on *any version* of this package in its *latest stable listed version*. This definition ensures that displayed dependent packages are an up-to-date reflection of package author's decision to trust and depend on this package. Prerelease dependents are not listed as they are not considered whole-hearted endoresements yet. See the following table for examples: | Package A versions | Package A is a listed as a dependent of Package B? | From 32c6637822aee7f490b0c8962e210af7d0c5fc26 Mon Sep 17 00:00:00 2001 From: Advay Tandon <51111468+advay26@users.noreply.github.com> Date: Wed, 19 Aug 2020 22:40:41 -0400 Subject: [PATCH 131/988] Fixed formatting bugs with the Note section and the Usage column in NuGet CLI Search's reference page (#2142) * Fixed formatting bugs with the Note section and the Usage column * Missed something in the Note * Testing something * Fixing the 'test' * Fixing the 'test' again * Test worked, reverting to the changes I actually want --- docs/reference/cli-reference/cli-ref-search.md | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/docs/reference/cli-reference/cli-ref-search.md b/docs/reference/cli-reference/cli-ref-search.md index 92ce08ef7..71b4c1c51 100644 --- a/docs/reference/cli-reference/cli-ref-search.md +++ b/docs/reference/cli-reference/cli-ref-search.md @@ -28,18 +28,16 @@ where the search terms are applied to the names of packages, tags, and package d | PreRelease | Pre-release packages are not included by default, but can be included by using this argument | -PreRelease | | Source | Specific package source(s) to search instead of querying the default sources in __nuget.config__ | -Source ``| | Take | The number of results to return. The default value is 20. | -Take `` | -| Verbosity | The level of detail to display in the output. The default is _normal_. (See the note below) | -Verbosity `` | +| Verbosity | The level of detail to display in the output. The default is _normal_. (See the note below) | -Verbosity `` | | Help | Displays help information for the command | -Help | Also see [Environment variables](cli-ref-environment-variables.md) -__NOTE__ - -Verbosity Levels: - -* _quiet_ - Package ID, Version -* _normal_ - Package ID, Version, Downloads, Preview of Description -* _detailed_ - Package ID, Version, Downloads, Full Description, Other information such as the query URL +> [!NOTE] +> Verbosity Levels: +> * _quiet_ - Package ID, Version +> * _normal_ - Package ID, Version, Downloads, Preview of Description +> * _detailed_ - Package ID, Version, Downloads, Full Description, Other information such as the query URL ## Examples From 42ea65b39390e017fc3952cfa8ac1638ab47a391 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Thu, 20 Aug 2020 17:10:13 -0700 Subject: [PATCH 132/988] Removed VSO features --- docs/release-notes/NuGet-5.7.md | 8 -------- 1 file changed, 8 deletions(-) diff --git a/docs/release-notes/NuGet-5.7.md b/docs/release-notes/NuGet-5.7.md index de709881a..5fd4d8c76 100644 --- a/docs/release-notes/NuGet-5.7.md +++ b/docs/release-notes/NuGet-5.7.md @@ -39,14 +39,6 @@ NuGet distribution vehicles: * Made noop restore faster - sped up evaluations by calling MSBuild Static Graph apis (dotnet.exe) - [#9644](https://github.com/NuGet/Home/issues/9644) -**Codespaces:** - -* Added a context menu for VS NuGet UI in VS Codespaces - [#9428](https://github.com/NuGet/Home/issues/9428) - -* Use the output channel service to propagate NuGet output for VS Codespaces - [#9269](https://github.com/NuGet/Home/issues/9269) - -* Added the restore service functionality for online environments - [#9308](https://github.com/NuGet/Home/issues/9308) - **Central Package Version Management:** * Added integration of PackageVersion information for non-sdk style projects in VS restore - [#9236](https://github.com/NuGet/Home/issues/9236) From f5417f9e5ff4ac36936ecdc391e7a04e07e4c1be Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Thu, 20 Aug 2020 17:33:50 -0700 Subject: [PATCH 133/988] some fixes --- docs/release-notes/NuGet-5.7.md | 54 ++++++++++++--------------------- 1 file changed, 20 insertions(+), 34 deletions(-) diff --git a/docs/release-notes/NuGet-5.7.md b/docs/release-notes/NuGet-5.7.md index 5fd4d8c76..d08b7b6ef 100644 --- a/docs/release-notes/NuGet-5.7.md +++ b/docs/release-notes/NuGet-5.7.md @@ -21,6 +21,10 @@ NuGet distribution vehicles: ### Features added in this release +* Made noop restore faster - sped up evaluations by calling MSBuild Static Graph apis (dotnet.exe) - [#9644](https://github.com/NuGet/Home/issues/9644) + +* Added integration of PackageVersion information for non-sdk style projects in VS restore - [#9236](https://github.com/NuGet/Home/issues/9236) + * nuget.exe update -self -Source https://feed - [#1783](https://github.com/NuGet/Home/issues/1783) * Added support for multiple config files in %APPDATA%\NuGet directory - [#9394](https://github.com/NuGet/Home/issues/9394) @@ -35,39 +39,11 @@ NuGet distribution vehicles: * Added "latest" option for -MSBuildVersion - [#8808](https://github.com/NuGet/Home/issues/8808) -**Performance:** - -* Made noop restore faster - sped up evaluations by calling MSBuild Static Graph apis (dotnet.exe) - [#9644](https://github.com/NuGet/Home/issues/9644) - -**Central Package Version Management:** - -* Added integration of PackageVersion information for non-sdk style projects in VS restore - [#9236](https://github.com/NuGet/Home/issues/9236) - ### Issues fixed in this release -**DCRs:** - -* Suppressed the element when it is redundant - [#5134](https://github.com/NuGet/Home/issues/5134) - -* Log IntervalTrackers as ETW events - [#9593](https://github.com/NuGet/Home/issues/9593) - -* Added an informational message on restore to inform CPVM users that the feature is in preview - [#9340](https://github.com/NuGet/Home/issues/9340) - -* Populate Solution Explorer package/project transitive dependencies from assets file - [#9580](https://github.com/NuGet/Home/issues/9580) - -* Searching in PMUI with Static / Sleet package sources causes OutOfMemoryException - [#8478](https://github.com/NuGet/Home/issues/8478) - -* Visual Studio partial restore for PR projects (noop++) prototype - [#9513](https://github.com/NuGet/Home/issues/9513) - -* Installed packages tab shouldn't paginate the list - [#6995](https://github.com/NuGet/Home/issues/6995) - **Bugs:** -* Add an Online Environment assembly, basic NuGet menu items & ingest required dependencies - [#9331](https://github.com/NuGet/Home/issues/9331) - -* Write to the Package Manager output in VS OE scenarios - [#9362](https://github.com/NuGet/Home/issues/9362) - -* WorkspaceCommandHandler.Exec should return unsupported - [#9381](https://github.com/NuGet/Home/issues/9381) +* Searching in PMUI with Static / Sleet package sources causes OutOfMemoryException - [#8478](https://github.com/NuGet/Home/issues/8478) * Improve DOTNET_HOST_PATH environment variable handling - [#7438](https://github.com/NuGet/Home/issues/7438) @@ -87,11 +63,9 @@ NuGet distribution vehicles: * [CPVM] Spurious package downgrades for multiple p2p projects - [#9549](https://github.com/NuGet/Home/issues/9549) -* [Bug Bash][Test Failure] The “Browse” tab is not aligned left with search box - [#9559](https://github.com/NuGet/Home/issues/9559) - -* [Test Failure] The installed version is inconsistent with the embedded icon in the solution level PM UI for one package id with multiple versions installed - [#9321](https://github.com/NuGet/Home/issues/9321) +* The “Browse” tab is not aligned left with search box - [#9559](https://github.com/NuGet/Home/issues/9559) -* Auth in Visual Studio should not always be interactive - [#9659](https://github.com/NuGet/Home/issues/9659) +* The installed version is inconsistent with the embedded icon in the solution level PM UI for one package id with multiple versions installed - [#9321](https://github.com/NuGet/Home/issues/9321) * Leak: PartCreationPolicy(CreationPolicy.NonShared) NuGet.SolutionRestoreManager.RestoreOperationLogger - [#9595](https://github.com/NuGet/Home/issues/9595) @@ -103,6 +77,18 @@ NuGet distribution vehicles: * Improve memory performance of PackageMetadataResourceV3 by reducing the JObject dependencies - [#9719](https://github.com/NuGet/Home/issues/9719) -* Revert "shared compilation of XmlUtility" - [#9733](https://github.com/NuGet/Home/issues/9733) +**DCRs:** + +* Suppressed the element when it is redundant - [#5134](https://github.com/NuGet/Home/issues/5134) + +* Log IntervalTrackers as ETW events - [#9593](https://github.com/NuGet/Home/issues/9593) + +* Added an informational message on restore to inform CPVM users that the feature is in preview - [#9340](https://github.com/NuGet/Home/issues/9340) + +* Populate Solution Explorer package/project transitive dependencies from assets file - [#9580](https://github.com/NuGet/Home/issues/9580) + +* Visual Studio partial restore for PackageReference projects (noop++) prototype - [#9513](https://github.com/NuGet/Home/issues/9513) + +* Installed packages tab shouldn't paginate the list - [#6995](https://github.com/NuGet/Home/issues/6995) **[List of all issues fixed in this release - 5.7](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5ea77f51ab1a972297db2e92)** From baee462c9f63fcfa5b5187f312ca497c6295d125 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Thu, 20 Aug 2020 20:59:00 -0400 Subject: [PATCH 134/988] Update docs/release-notes/NuGet-5.7.md --- docs/release-notes/NuGet-5.7.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-5.7.md b/docs/release-notes/NuGet-5.7.md index d08b7b6ef..ab1c8d5e6 100644 --- a/docs/release-notes/NuGet-5.7.md +++ b/docs/release-notes/NuGet-5.7.md @@ -47,7 +47,7 @@ NuGet distribution vehicles: * Improve DOTNET_HOST_PATH environment variable handling - [#7438](https://github.com/NuGet/Home/issues/7438) -* nuget.exe spec Generates a copyright Tag with Hard-Coded Text of Copyright yyyy Instead of $copyright$ - [#8696](https://github.com/NuGet/Home/issues/8696) +* nuget.exe spec generates a copyright tag with hard-coded text of Copyright YYYY Instead of $copyright$ - [#8696](https://github.com/NuGet/Home/issues/8696) * nuget cli 3.5.0 throws exception 'authors required' during pack of a csproj ignoring placeholders and assemblyinfo attributes if the assembly name is changed - [#4234](https://github.com/NuGet/Home/issues/4234) From ef101ce587bc67c870f09d687866eb78548f269d Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Thu, 20 Aug 2020 20:59:07 -0400 Subject: [PATCH 135/988] Update docs/release-notes/NuGet-5.7.md --- docs/release-notes/NuGet-5.7.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-5.7.md b/docs/release-notes/NuGet-5.7.md index ab1c8d5e6..eb62a765f 100644 --- a/docs/release-notes/NuGet-5.7.md +++ b/docs/release-notes/NuGet-5.7.md @@ -23,7 +23,7 @@ NuGet distribution vehicles: * Made noop restore faster - sped up evaluations by calling MSBuild Static Graph apis (dotnet.exe) - [#9644](https://github.com/NuGet/Home/issues/9644) -* Added integration of PackageVersion information for non-sdk style projects in VS restore - [#9236](https://github.com/NuGet/Home/issues/9236) +* Added integration of PackageVersion information for non-SDK style projects in VS restore - [#9236](https://github.com/NuGet/Home/issues/9236) * nuget.exe update -self -Source https://feed - [#1783](https://github.com/NuGet/Home/issues/1783) From 7508cca388b68ec5dee495159b62ca93d8b12f31 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Thu, 20 Aug 2020 20:59:13 -0400 Subject: [PATCH 136/988] Update docs/release-notes/NuGet-5.7.md --- docs/release-notes/NuGet-5.7.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-5.7.md b/docs/release-notes/NuGet-5.7.md index eb62a765f..b9cd3ecd5 100644 --- a/docs/release-notes/NuGet-5.7.md +++ b/docs/release-notes/NuGet-5.7.md @@ -21,7 +21,7 @@ NuGet distribution vehicles: ### Features added in this release -* Made noop restore faster - sped up evaluations by calling MSBuild Static Graph apis (dotnet.exe) - [#9644](https://github.com/NuGet/Home/issues/9644) +* Made no-op restore faster - sped up evaluations by calling MSBuild Static Graph APIs (dotnet.exe) - [#9644](https://github.com/NuGet/Home/issues/9644) * Added integration of PackageVersion information for non-SDK style projects in VS restore - [#9236](https://github.com/NuGet/Home/issues/9236) From 1f9f117a393c3ccdb9bf103b03d5ca7c4b13a5db Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Thu, 20 Aug 2020 20:59:22 -0400 Subject: [PATCH 137/988] Update docs/release-notes/NuGet-5.7.md --- docs/release-notes/NuGet-5.7.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-5.7.md b/docs/release-notes/NuGet-5.7.md index b9cd3ecd5..6b35873ae 100644 --- a/docs/release-notes/NuGet-5.7.md +++ b/docs/release-notes/NuGet-5.7.md @@ -89,6 +89,6 @@ NuGet distribution vehicles: * Visual Studio partial restore for PackageReference projects (noop++) prototype - [#9513](https://github.com/NuGet/Home/issues/9513) -* Installed packages tab shouldn't paginate the list - [#6995](https://github.com/NuGet/Home/issues/6995) +* Installed packages tab shouldn't paginate the packages list - [#6995](https://github.com/NuGet/Home/issues/6995) **[List of all issues fixed in this release - 5.7](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5ea77f51ab1a972297db2e92)** From 355f517b292f09831d3b0bbd0df689762644c41a Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Fri, 21 Aug 2020 12:40:47 -0400 Subject: [PATCH 138/988] Apply suggestions from code review changes based on feedback from Andy and Arturo --- docs/release-notes/NuGet-5.7.md | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/docs/release-notes/NuGet-5.7.md b/docs/release-notes/NuGet-5.7.md index 6b35873ae..d91d46c6b 100644 --- a/docs/release-notes/NuGet-5.7.md +++ b/docs/release-notes/NuGet-5.7.md @@ -22,6 +22,7 @@ NuGet distribution vehicles: ### Features added in this release * Made no-op restore faster - sped up evaluations by calling MSBuild Static Graph APIs (dotnet.exe) - [#9644](https://github.com/NuGet/Home/issues/9644) +* Added Visual Studio partial restore for PackageReference projects (noop++) - [#9513](https://github.com/NuGet/Home/issues/9513) * Added integration of PackageVersion information for non-SDK style projects in VS restore - [#9236](https://github.com/NuGet/Home/issues/9236) @@ -51,10 +52,6 @@ NuGet distribution vehicles: * nuget cli 3.5.0 throws exception 'authors required' during pack of a csproj ignoring placeholders and assemblyinfo attributes if the assembly name is changed - [#4234](https://github.com/NuGet/Home/issues/4234) -* Consider updating the libraries to use newer versions of Newtonsoft.Json - [#9263](https://github.com/NuGet/Home/issues/9263) - -* HttpSourceAuthenticationHandler SemaphoreSlim future proofing - [#9463](https://github.com/NuGet/Home/issues/9463) - * HttpRequestMessage gets reused multiple times which is not supported with the SocketHttpHandler - [#8661](https://github.com/NuGet/Home/issues/8661) * NuGet.Indexing 5.6.0 preview 3 and later use a different public key token - [#9481](https://github.com/NuGet/Home/issues/9481) @@ -71,8 +68,6 @@ NuGet distribution vehicles: * Avoid reading the assets file in no-op restores - [#9693](https://github.com/NuGet/Home/issues/9693) -* Current Source Link package is not working - [#9695](https://github.com/NuGet/Home/issues/9695) - * NuGet.Protocol does not support getting a version's download count from search - [#9086](https://github.com/NuGet/Home/issues/9086) * Improve memory performance of PackageMetadataResourceV3 by reducing the JObject dependencies - [#9719](https://github.com/NuGet/Home/issues/9719) @@ -87,8 +82,6 @@ NuGet distribution vehicles: * Populate Solution Explorer package/project transitive dependencies from assets file - [#9580](https://github.com/NuGet/Home/issues/9580) -* Visual Studio partial restore for PackageReference projects (noop++) prototype - [#9513](https://github.com/NuGet/Home/issues/9513) - * Installed packages tab shouldn't paginate the packages list - [#6995](https://github.com/NuGet/Home/issues/6995) **[List of all issues fixed in this release - 5.7](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5ea77f51ab1a972297db2e92)** From 7dd5334e270376c3eeaab6eed24b374644bf09da Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Fri, 21 Aug 2020 10:33:36 -0700 Subject: [PATCH 139/988] response to arturo's feedback --- docs/release-notes/NuGet-5.7.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-5.7.md b/docs/release-notes/NuGet-5.7.md index d91d46c6b..977d8fdf3 100644 --- a/docs/release-notes/NuGet-5.7.md +++ b/docs/release-notes/NuGet-5.7.md @@ -22,7 +22,8 @@ NuGet distribution vehicles: ### Features added in this release * Made no-op restore faster - sped up evaluations by calling MSBuild Static Graph APIs (dotnet.exe) - [#9644](https://github.com/NuGet/Home/issues/9644) -* Added Visual Studio partial restore for PackageReference projects (noop++) - [#9513](https://github.com/NuGet/Home/issues/9513) + +* Added Visual Studio partial restore for PackageReference projects (no-op++) - [#9513](https://github.com/NuGet/Home/issues/9513) * Added integration of PackageVersion information for non-SDK style projects in VS restore - [#9236](https://github.com/NuGet/Home/issues/9236) From 6c716d02b65ce73e88385862fb1b587dd5518346 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Fri, 21 Aug 2020 17:22:44 -0700 Subject: [PATCH 140/988] Added tab switching perf improvements --- docs/release-notes/NuGet-5.7.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/release-notes/NuGet-5.7.md b/docs/release-notes/NuGet-5.7.md index 977d8fdf3..2e61b6587 100644 --- a/docs/release-notes/NuGet-5.7.md +++ b/docs/release-notes/NuGet-5.7.md @@ -25,6 +25,8 @@ NuGet distribution vehicles: * Added Visual Studio partial restore for PackageReference projects (no-op++) - [#9513](https://github.com/NuGet/Home/issues/9513) +* Made switching between Installed and Updates tabs faster by allowing them to share a data source and reducing resfreshing - [#8294](https://github.com/NuGet/Home/issues/8294) + * Added integration of PackageVersion information for non-SDK style projects in VS restore - [#9236](https://github.com/NuGet/Home/issues/9236) * nuget.exe update -self -Source https://feed - [#1783](https://github.com/NuGet/Home/issues/1783) From 950f861704143f39845efaac8e17926b537d1c53 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Fri, 21 Aug 2020 21:19:45 -0400 Subject: [PATCH 141/988] Update docs/release-notes/NuGet-5.7.md --- docs/release-notes/NuGet-5.7.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-5.7.md b/docs/release-notes/NuGet-5.7.md index 2e61b6587..b986ef73b 100644 --- a/docs/release-notes/NuGet-5.7.md +++ b/docs/release-notes/NuGet-5.7.md @@ -29,7 +29,7 @@ NuGet distribution vehicles: * Added integration of PackageVersion information for non-SDK style projects in VS restore - [#9236](https://github.com/NuGet/Home/issues/9236) -* nuget.exe update -self -Source https://feed - [#1783](https://github.com/NuGet/Home/issues/1783) +* Added support for nuget.exe update -self -Source https://feed - [#1783](https://github.com/NuGet/Home/issues/1783) * Added support for multiple config files in %APPDATA%\NuGet directory - [#9394](https://github.com/NuGet/Home/issues/9394) From 7fdbf12ef7abebbf143140fcaa385c5bb2e17bdb Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Fri, 21 Aug 2020 21:20:50 -0400 Subject: [PATCH 142/988] Update docs/release-notes/NuGet-5.7.md Co-authored-by: Nikolche Kolev --- docs/release-notes/NuGet-5.7.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-5.7.md b/docs/release-notes/NuGet-5.7.md index b986ef73b..9e80b9bd1 100644 --- a/docs/release-notes/NuGet-5.7.md +++ b/docs/release-notes/NuGet-5.7.md @@ -53,7 +53,7 @@ NuGet distribution vehicles: * nuget.exe spec generates a copyright tag with hard-coded text of Copyright YYYY Instead of $copyright$ - [#8696](https://github.com/NuGet/Home/issues/8696) -* nuget cli 3.5.0 throws exception 'authors required' during pack of a csproj ignoring placeholders and assemblyinfo attributes if the assembly name is changed - [#4234](https://github.com/NuGet/Home/issues/4234) +NuGet.exe throws exception 'authors required' during pack of a csproj ignoring placeholders and assemblyinfo attributes if the assembly name is changed - [#4234](https://github.com/NuGet/Home/issues/4234) * HttpRequestMessage gets reused multiple times which is not supported with the SocketHttpHandler - [#8661](https://github.com/NuGet/Home/issues/8661) From 916329c36c8a5df043e9c35fb9f41b1e93635094 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Fri, 21 Aug 2020 21:25:08 -0400 Subject: [PATCH 143/988] Apply suggestions from code review --- docs/release-notes/NuGet-5.7.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/release-notes/NuGet-5.7.md b/docs/release-notes/NuGet-5.7.md index 9e80b9bd1..a417cbe5a 100644 --- a/docs/release-notes/NuGet-5.7.md +++ b/docs/release-notes/NuGet-5.7.md @@ -21,7 +21,7 @@ NuGet distribution vehicles: ### Features added in this release -* Made no-op restore faster - sped up evaluations by calling MSBuild Static Graph APIs (dotnet.exe) - [#9644](https://github.com/NuGet/Home/issues/9644) +* Make restore faster - speed up evaluations by calling MSBuild Static Graph apis (dotnet.exe) - [#9644](https://github.com/NuGet/Home/issues/9644) * Added Visual Studio partial restore for PackageReference projects (no-op++) - [#9513](https://github.com/NuGet/Home/issues/9513) @@ -49,7 +49,7 @@ NuGet distribution vehicles: * Searching in PMUI with Static / Sleet package sources causes OutOfMemoryException - [#8478](https://github.com/NuGet/Home/issues/8478) -* Improve DOTNET_HOST_PATH environment variable handling - [#7438](https://github.com/NuGet/Home/issues/7438) +* In a dotnet CLI restore, when launching credential plugins, try the dotnet CLI on the system path if the `DOTNET_HOST_PATH` environment variable is not defined. - [#7438](https://github.com/NuGet/Home/issues/7438) * nuget.exe spec generates a copyright tag with hard-coded text of Copyright YYYY Instead of $copyright$ - [#8696](https://github.com/NuGet/Home/issues/8696) From 0403efd695f62b765bada8c32533a6fa4a683ab4 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Fri, 21 Aug 2020 18:28:11 -0700 Subject: [PATCH 144/988] Reorder features --- docs/release-notes/NuGet-5.7.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/release-notes/NuGet-5.7.md b/docs/release-notes/NuGet-5.7.md index a417cbe5a..5bf4cce7d 100644 --- a/docs/release-notes/NuGet-5.7.md +++ b/docs/release-notes/NuGet-5.7.md @@ -21,12 +21,14 @@ NuGet distribution vehicles: ### Features added in this release +* Added extern alias support for NuGet package references - [#4989](https://github.com/NuGet/Home/issues/4989) + +* Made switching between Installed and Updates tabs faster by allowing them to share a data source and reducing resfreshing - [#8294](https://github.com/NuGet/Home/issues/8294) + * Make restore faster - speed up evaluations by calling MSBuild Static Graph apis (dotnet.exe) - [#9644](https://github.com/NuGet/Home/issues/9644) * Added Visual Studio partial restore for PackageReference projects (no-op++) - [#9513](https://github.com/NuGet/Home/issues/9513) -* Made switching between Installed and Updates tabs faster by allowing them to share a data source and reducing resfreshing - [#8294](https://github.com/NuGet/Home/issues/8294) - * Added integration of PackageVersion information for non-SDK style projects in VS restore - [#9236](https://github.com/NuGet/Home/issues/9236) * Added support for nuget.exe update -self -Source https://feed - [#1783](https://github.com/NuGet/Home/issues/1783) @@ -35,8 +37,6 @@ NuGet distribution vehicles: * DeterministicSourcePaths now takes NuGet source packages into account - [#9431](https://github.com/NuGet/Home/issues/9431) -* Added extern alias support for NuGet package references - [#4989](https://github.com/NuGet/Home/issues/4989) - * Added INuGetProjectService.GetInstalledPackagesAsync extensibility API - [#9702](https://github.com/NuGet/Home/issues/9702) * Added interop API to enumerate fallback folders without requiring a solution/project - [#9395](https://github.com/NuGet/Home/issues/9395) From 0a3a0d968a7b032d6670218145166fbc8c98c45e Mon Sep 17 00:00:00 2001 From: Advay Tandon Date: Wed, 26 Aug 2020 18:02:37 -0400 Subject: [PATCH 145/988] Removed reference to the 1MB file size limit since we decided to do away with that --- docs/reference/msbuild-targets.md | 2 +- docs/reference/nuspec.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index 7fd516a70..b5855953e 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -150,7 +150,7 @@ For the nuspec equivalent, take a look at [nuspec reference for icon](nuspec.md# ### PackageReadmeFile -When packing a readme file, you need to use the `PackageReadmeFile` property to specify the package path, relative to the root of the package. In addition to this, you need to make sure that the file is included in the package. Readme file size is limited to 1 MB. Supported file formats include only Markdown (*.md*). +When packing a readme file, you need to use the `PackageReadmeFile` property to specify the package path, relative to the root of the package. In addition to this, you need to make sure that the file is included in the package. Supported file formats include only Markdown (*.md*). For example: diff --git a/docs/reference/nuspec.md b/docs/reference/nuspec.md index a97a2f409..2bf48a9b9 100644 --- a/docs/reference/nuspec.md +++ b/docs/reference/nuspec.md @@ -175,7 +175,7 @@ For the MSBuild equivalent, take a look at [Packing an icon image file](msbuild- #### readme -When packing a readme file, you need to use the `readme` element to specify the package path, relative to the root of the package. In addition to this, you need to make sure that the file is included in the package. Readme file size is limited to 1 MB. Supported file formats include only Markdown (*.md*). +When packing a readme file, you need to use the `readme` element to specify the package path, relative to the root of the package. In addition to this, you need to make sure that the file is included in the package. Supported file formats include only Markdown (*.md*). For example, you would add the following to your nuspec in order to pack a readme file with your project: From 8d2d93ad8e89e424d4fcf520fa77d0942ed962f7 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Tue, 1 Sep 2020 18:40:07 -0400 Subject: [PATCH 146/988] Added contributor section and fixed some markdown bugs --- docs/release-notes/NuGet-5.7.md | 26 ++++++++++++++++++++------ 1 file changed, 20 insertions(+), 6 deletions(-) diff --git a/docs/release-notes/NuGet-5.7.md b/docs/release-notes/NuGet-5.7.md index 5bf4cce7d..89b3b2202 100644 --- a/docs/release-notes/NuGet-5.7.md +++ b/docs/release-notes/NuGet-5.7.md @@ -31,7 +31,7 @@ NuGet distribution vehicles: * Added integration of PackageVersion information for non-SDK style projects in VS restore - [#9236](https://github.com/NuGet/Home/issues/9236) -* Added support for nuget.exe update -self -Source https://feed - [#1783](https://github.com/NuGet/Home/issues/1783) +* Added support for nuget.exe update `-self -Source` https://feed - [#1783](https://github.com/NuGet/Home/issues/1783) * Added support for multiple config files in %APPDATA%\NuGet directory - [#9394](https://github.com/NuGet/Home/issues/9394) @@ -41,7 +41,7 @@ NuGet distribution vehicles: * Added interop API to enumerate fallback folders without requiring a solution/project - [#9395](https://github.com/NuGet/Home/issues/9395) -* Added "latest" option for -MSBuildVersion - [#8808](https://github.com/NuGet/Home/issues/8808) +* Added `latest` option for `-MSBuildVersion` - [#8808](https://github.com/NuGet/Home/issues/8808) ### Issues fixed in this release @@ -51,9 +51,9 @@ NuGet distribution vehicles: * In a dotnet CLI restore, when launching credential plugins, try the dotnet CLI on the system path if the `DOTNET_HOST_PATH` environment variable is not defined. - [#7438](https://github.com/NuGet/Home/issues/7438) -* nuget.exe spec generates a copyright tag with hard-coded text of Copyright YYYY Instead of $copyright$ - [#8696](https://github.com/NuGet/Home/issues/8696) +* nuget.exe spec generates a copyright tag with hard-coded text of Copyright YYYY Instead of `$copyright$` - [#8696](https://github.com/NuGet/Home/issues/8696) -NuGet.exe throws exception 'authors required' during pack of a csproj ignoring placeholders and assemblyinfo attributes if the assembly name is changed - [#4234](https://github.com/NuGet/Home/issues/4234) +* NuGet.exe throws exception 'authors required' during pack of a csproj ignoring placeholders and assemblyinfo attributes if the assembly name is changed - [#4234](https://github.com/NuGet/Home/issues/4234) * HttpRequestMessage gets reused multiple times which is not supported with the SocketHttpHandler - [#8661](https://github.com/NuGet/Home/issues/8661) @@ -75,9 +75,9 @@ NuGet.exe throws exception 'authors required' during pack of a csproj ignoring p * Improve memory performance of PackageMetadataResourceV3 by reducing the JObject dependencies - [#9719](https://github.com/NuGet/Home/issues/9719) -**DCRs:** +**Design change requests:** -* Suppressed the element when it is redundant - [#5134](https://github.com/NuGet/Home/issues/5134) +* Suppressed the `` element when it is redundant - [#5134](https://github.com/NuGet/Home/issues/5134) * Log IntervalTrackers as ETW events - [#9593](https://github.com/NuGet/Home/issues/9593) @@ -88,3 +88,17 @@ NuGet.exe throws exception 'authors required' during pack of a csproj ignoring p * Installed packages tab shouldn't paginate the packages list - [#6995](https://github.com/NuGet/Home/issues/6995) **[List of all issues fixed in this release - 5.7](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5ea77f51ab1a972297db2e92)** + +### Contributors + +Thank you to all the contributors who helped make this NuGet release awesome! + +|Who|PRs|Issues| +|----|----|----| +|[campersau](https://github.com/campersau)|[3433](https://github.com/NuGet/NuGet.Client/pull/3433), [3120](https://github.com/NuGet/NuGet.Client/pull/3120)|NuGet.Protocol does not support getting a version's download count from search - [#9086](https://github.com/NuGet/Home/issues/9086)
HttpRequestMessage gets reused multiple times which is not supported with the SocketHttpHandler - [#8661](https://github.com/NuGet/Home/issues/8661)| +|[Joseph Musser (jnm2)](https://github.com/jnm2)|[3241](https://github.com/NuGet/NuGet.Client/pull/3241)|Suppressed the `` element when it is redundant - [#5134](https://github.com/NuGet/Home/issues/5134)| +|[Volodymyr Shkolka (BlackGad)](https://github.com/BlackGad)|[3273](https://github.com/NuGet/NuGet.Client/pull/3273)|NuGet cannot restore from HTTPS sources that require Client Certificates - [#5773](https://github.com/NuGet/Home/issues/5773)| +|[Marius Ungureanu (Therzok)](https://github.com/Therzok)|[3357](https://github.com/NuGet/NuGet.Client/pull/3357)|HttpSourceAuthenticationHandler SemaphoreSlim future proofing - [#9463](https://github.com/NuGet/Home/issues/9463)| +|[Sunner (SuNNjek)](https://github.com/SuNNjek)|[3088](https://github.com/NuGet/NuGet.Client/pull/3088)|nuget.exe spec generates a copyright tag with hard-coded text of Copyright YYYY Instead of `$copyright$` - [#8696](https://github.com/NuGet/Home/issues/8696)| +|[Olivier Spinelli (olivier-spinelli)](https://github.com/olivier-spinelli)|[3335](https://github.com/NuGet/NuGet.Client/pull/3335)|In a dotnet CLI restore, when launching credential plugins, try the dotnet CLI on the system path if the `DOTNET_HOST_PATH` environment variable is not defined. - [#7438](https://github.com/NuGet/Home/issues/7438)| +|[goyzhang](https://github.com/goyzhang)|[3370](https://github.com/NuGet/NuGet.Client/pull/3370)|Added `latest` option for `-MSBuildVersion` - [#8808](https://github.com/NuGet/Home/issues/8808)| From e66a32f5a79db84dcec6e864c10587c92170a3e4 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Tue, 1 Sep 2020 18:46:01 -0400 Subject: [PATCH 147/988] reworded and moved issue #8478 --- docs/release-notes/NuGet-5.7.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/release-notes/NuGet-5.7.md b/docs/release-notes/NuGet-5.7.md index 89b3b2202..0378d36e2 100644 --- a/docs/release-notes/NuGet-5.7.md +++ b/docs/release-notes/NuGet-5.7.md @@ -29,6 +29,8 @@ NuGet distribution vehicles: * Added Visual Studio partial restore for PackageReference projects (no-op++) - [#9513](https://github.com/NuGet/Home/issues/9513) +* Visual Studio Package Manager UI will crash less often when searching misbehaving package sources that return more than the requested number of results per HTTP request. - [#8478](https://github.com/NuGet/Home/issues/8478) + * Added integration of PackageVersion information for non-SDK style projects in VS restore - [#9236](https://github.com/NuGet/Home/issues/9236) * Added support for nuget.exe update `-self -Source` https://feed - [#1783](https://github.com/NuGet/Home/issues/1783) @@ -47,8 +49,6 @@ NuGet distribution vehicles: **Bugs:** -* Searching in PMUI with Static / Sleet package sources causes OutOfMemoryException - [#8478](https://github.com/NuGet/Home/issues/8478) - * In a dotnet CLI restore, when launching credential plugins, try the dotnet CLI on the system path if the `DOTNET_HOST_PATH` environment variable is not defined. - [#7438](https://github.com/NuGet/Home/issues/7438) * nuget.exe spec generates a copyright tag with hard-coded text of Copyright YYYY Instead of `$copyright$` - [#8696](https://github.com/NuGet/Home/issues/8696) From 4871ba25bda2cdbea5d4439dd7f955bb5984c262 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Tue, 1 Sep 2020 19:46:47 -0400 Subject: [PATCH 148/988] Update docs/release-notes/NuGet-5.7.md --- docs/release-notes/NuGet-5.7.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-5.7.md b/docs/release-notes/NuGet-5.7.md index 0378d36e2..ed81ab95e 100644 --- a/docs/release-notes/NuGet-5.7.md +++ b/docs/release-notes/NuGet-5.7.md @@ -89,7 +89,7 @@ NuGet distribution vehicles: **[List of all issues fixed in this release - 5.7](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5ea77f51ab1a972297db2e92)** -### Contributors +### Community contributions Thank you to all the contributors who helped make this NuGet release awesome! From 6048303484e1f6a18a9e49672c272684f75ed371 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 2 Sep 2020 13:51:04 -0400 Subject: [PATCH 149/988] Added 5.7 release notes to TOC --- docs/TOC.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/TOC.md b/docs/TOC.md index 63bc993f6..139a4b58f 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -290,6 +290,7 @@ ## Release notes ### [Known Issues](release-notes/known-issues.md) ### NuGet 5.x +#### [NuGet 5.7](release-notes/NuGet-5.7.md) #### [NuGet 5.6](release-notes/NuGet-5.6.md) #### [NuGet 5.5](release-notes/NuGet-5.5.md) #### [NuGet 5.4](release-notes/NuGet-5.4.md) From 4c7068dc7b765c2bd83edba8ad04b1c08e52c885 Mon Sep 17 00:00:00 2001 From: ThomasSmeets <49551742+ThomasSmeets@users.noreply.github.com> Date: Mon, 14 Sep 2020 12:44:51 +0200 Subject: [PATCH 150/988] Update cli-ref-update.md Update Documentation on cli-ref-update base on Issue #2041 --- docs/reference/cli-reference/cli-ref-update.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/reference/cli-reference/cli-ref-update.md b/docs/reference/cli-reference/cli-ref-update.md index 2376f83ec..c49c19c82 100644 --- a/docs/reference/cli-reference/cli-ref-update.md +++ b/docs/reference/cli-reference/cli-ref-update.md @@ -32,6 +32,10 @@ where `` identifies either a `packages.config` or solution file that - **`-ConfigFile`** The NuGet configuration file to apply. If not specified, `%AppData%\NuGet\NuGet.Config` (Windows), or `~/.nuget/NuGet/NuGet.Config` or `~/.config/NuGet/NuGet.Config` (Mac/Linux) is used. + +- **`-DependencyVersion [Lowest, HighestPatch, HighestMinor, Highest, Ignore]`** + + Specifies the version of the dependency packages to use, which can be one of the following:
  • *Lowest* (default): the lowest version
  • *HighestPatch*: the version with the lowest major, lowest minor, highest patch
  • *HighestMinor*: the version with the lowest major, highest minor, highest patch
  • *Highest*: the highest version
  • *Ignore*: No dependency packages will be used
- **`-FileConflictAction [PromptUser, Overwrite, Ignore]`** From 013781b42e1e75125481ed97d0970e20edc43c75 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Thu, 17 Sep 2020 11:05:25 -0400 Subject: [PATCH 151/988] first draft --- .../Package-authoring-best-practices.md | 144 ++++++++++++++++++ 1 file changed, 144 insertions(+) create mode 100644 docs/guides/Package-authoring-best-practices.md diff --git a/docs/guides/Package-authoring-best-practices.md b/docs/guides/Package-authoring-best-practices.md new file mode 100644 index 000000000..99c056e27 --- /dev/null +++ b/docs/guides/Package-authoring-best-practices.md @@ -0,0 +1,144 @@ +--- +title: Package Authoring Best Practices Guide +description: A general guide of best practices for creating high quality NuGet packages. +author: chgill-MSFT +ms.author: chgill +ms.date: 03/26/20 +ms.topic: conceptual +--- + +# Package authoring best practices + +This guidance is intended to give NuGet.org package authors a light-weight end to end reference for creating and publishing high quality packages. + +This guide will present four types of recommendations: DO, CONSIDER, AVOID, and DO NOT. + +You should almost always follow a DO or an AVOID recommendation. For example: +✔️ DO include a short description for your package that describes what it is. +❌ AVOID including a netstandard1.x target. + +You should generally follow a CONSIDER or AVOID recommendation, but there may be legitimate exceptions. For example: +✔️ CONSIDER including a link to an associated project website or repository. + +## Framework targeting + +Authors should consider making their packages as inclusive as possible if they would like to maximize the number of potential consumers and overall impact in the .NET ecosystem. + +### Cross-platform and framework compatibility + +Highly inclusive packages are cross-platform and compatible with as many frameworks as possible. Today, that means using .NET Standard. .NET Standard is a specification of .NET APIs that are available on all .NET implementations. + +✔️ CONSIDER targeting `netstandard2.0` to maximize your potential impact. + +## Package Metadata + +Metadata is a foundational component of any NuGet package. The quality of your metadata can vastly influence the discoverability and usability of your package. + +The recommended way to include/modify package metadata for Visual Studio users is to go to the "Package" section of your Project Properties. Otherwise, you can add metadata properties directly to the project file (csproj). + +Below is a table mapping and describing all the packages metadata elements: + +| Visual Studio property name | csproj/MSBuild property name | Nuspec property name | Description | +|-----------------------------|------------------------------|-----------------------------|-------------------------------------------------------------------------------------------------------------------| +| `Package id` | `PackageId` | `id` | The package identifier. A prefix from the identifier can be reserved if it meets the criteria. | +| `Package Version` | `Version` | `version` | NuGet package version. For more information, see NuGet package version. | +| `Authors` | `Authors` | `authors` | A comma-separated list of package authors, matching the profile names on nuget.org. | +| `Description` | `Description` | `description` | A long description of the package displayed in UI. | +| `Copyright` | `Copyright` | `copyright` | Copyright details for the package. language. | +| `Licensing - Expression` | `PackageLicenseExpression` | `license type="expression"` | An SPDX license expression or path to a license file within the package, often shown in UIs like nuget.org. | +| `Licensing - File` | `PackageLicenseFile` | `license type="file"` | File for custom license that isn't supported by license expressions | +| `Project URL` | `PackageProjectUrl` | `projectUrl` | A URL for the project homepage. | +| `Icon File` | `PackageIcon` | `icon` | An image to use as the icon for the package. | +| `Repository URL` | `RepositoryUrl` | `repository url=""` | URL to the repository from which the package was built. | +| `Repository type` | `RespositoryType` | `repository type=""` | Type of repository the repository URL is pointing to (i.e. git) | +| `Tags` | `PackageTags` | `tags` | A space-delimited list of tags and keywords that describe the package. Tags are used when searching for packages. | +| `Release notes` | `PackageReleaseNotes` | `releaseNotes` | A description of the changes made in this release of the package. | + +#### Package ID + +✔️ CONSIDER choosing a NuGet package name with a prefix that meets NuGet's prefix reservation [criteria](https://docs.microsoft.com/en-us/nuget/reference/id-prefix-reservation). + +Example: + +#### Package Version + +✔️ CONSIDER using [SemVer 2.0.0](https://semver.org/) to version your NuGet package. +> Essentially, this means using the Major.Minor.Patch[-prerelease] format. Which number get incremented depends on the types of changes made since the last release. + +✔️ DO include a pre-release suffix when releasing a non-stable package. +> For more detailed guidance about when to publish a pre-release package see + +#### Description + +✔️ DO include a short description for your package that describes what it's for. +> Package descriptions are one of the most prominent fields surfaced in NuGet search and will likely be the first thing a potential consumers looks at to determine if a package is right for them. + +#### Copyright + +✔️ CONSIDER copyrighting your package with "Copyright name/company year" +>A copyright notice essentially indicates that your work cannot be copied without your permission. Including, a copyright notice in your package is easy and won't do any harm! + +Example: Copyright Contoso 2020 + +#### Licensing + +✔️ DO specify a valid license for your package. +> [!IMPORTANT] +> A project without a license defaults to [exclusive copyright](https://choosealicense.com/no-permission/), making it legally impossible for other people to use. + +✔️ CONSIDER using a license expression (SPDX identifier). +> License expressions are surfaced the most clearly to package consumers and make it clear if the license has changed with a new release. + +✔️ CONSIDER specifying an MIT license. +> If you want your package as to be usable by as many consumers as possible, the MIT license is a very well known non-restrictive license. + +#### Project URL + +✔️ CONSIDER including a link to an associated project website or repository. +> If you have a non-repository website associated with your package, feel free to include it. Repository URLs (GitHub, BitBucket, etc.) belong in the `Repository URL` field. This is especially helpful is your repository is private! + +#### Icon + +✔️ DO use a package icon image that is 128x128 and has a transparent background (PNG) for best viewing results. +> NuGet will automatically scale your image to the client it is being displayed on. + +#### Repository Type and URL + +If your have a public repository for the your package source code, you should... + +✔️ CONSIDER setting up [Source Link](https://docs.microsoft.com/en-us/dotnet/standard/library-guidance/sourcelink) to add source control metadata to your assemblies and NuGet package. +> Source Link will automatically adds `Repository URL` and `Repository Type` to the package metadata. It also adds the specific commit associated with your package version. + +However, even if you don't want to use Source Link to automatically add your repository URL and type to the package metadata, filling them in yourself can still be very helpful! + +#### Tags + +✔️ DO include tags with key terms related to your package to enhance package discoverability. +> Tags are taken into account in NuGet's search algorithm and are especially helpful for terms that are not in the Package ID. + +#### Release Notes + +✔️ CONSIDER including release notes with each update describing what changes were made. +> While there is no specific format required for release notes, we recommend including: +> 1. Breaking changes (very helpful) +> 2. Added features +> 3. Bug Fixes + +## Dependency Management + +#### Lean Packages + +✔️ DO review your package for unnecessary dependencies. +> Unnecessary dependencies needlessly increase the size of your package as well as increase likelihood of version conflicts! + +#### Version Ranges + + + +## Publishing + +### Packing + +✔️ DO pack your package using Visual Studio ` + +### Security \ No newline at end of file From b48c7e058b7cf97db1d17b0c79e7012cf2fe2e39 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Thu, 17 Sep 2020 17:00:52 -0400 Subject: [PATCH 152/988] some updates --- docs/guides/media/Verified-check-mark.png | Bin 0 -> 17284 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/guides/media/Verified-check-mark.png diff --git a/docs/guides/media/Verified-check-mark.png b/docs/guides/media/Verified-check-mark.png new file mode 100644 index 0000000000000000000000000000000000000000..655262af91aca453b5c19374dde934bebf58c409 GIT binary patch literal 17284 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 literal 0 HcmV?d00001 From 5a030426f82eb63ff0b854db224c8675129e1e3e Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Thu, 17 Sep 2020 20:26:16 -0400 Subject: [PATCH 153/988] many changes --- .../Package-authoring-best-practices.md | 145 +++++++++++------- 1 file changed, 89 insertions(+), 56 deletions(-) diff --git a/docs/guides/Package-authoring-best-practices.md b/docs/guides/Package-authoring-best-practices.md index 99c056e27..256fb6422 100644 --- a/docs/guides/Package-authoring-best-practices.md +++ b/docs/guides/Package-authoring-best-practices.md @@ -1,51 +1,65 @@ --- -title: Package Authoring Best Practices Guide +title: Package authoring best practices description: A general guide of best practices for creating high quality NuGet packages. author: chgill-MSFT ms.author: chgill -ms.date: 03/26/20 +ms.date: 09/17/20 ms.topic: conceptual --- # Package authoring best practices -This guidance is intended to give NuGet.org package authors a light-weight end to end reference for creating and publishing high quality packages. +This guidance is intended to give NuGet.org package authors a light-weight end to end reference for creating and publishing high quality packages. It will primarily focus on package-specific best practices such as metadata and packing. For more in depth suggestions for building high quality libraries, see the .NET [Open-source library guidance](https://docs.microsoft.com/en-us/dotnet/standard/library-guidance/). -This guide will present four types of recommendations: DO, CONSIDER, AVOID, and DO NOT. +## Types of recommendations -You should almost always follow a DO or an AVOID recommendation. For example: -✔️ DO include a short description for your package that describes what it is. -❌ AVOID including a netstandard1.x target. +Each article presents four types of recommendations: **Do**, **Consider**, **Avoid**, and **Do not**. The type of recommendation indicates how strongly it should be followed. -You should generally follow a CONSIDER or AVOID recommendation, but there may be legitimate exceptions. For example: -✔️ CONSIDER including a link to an associated project website or repository. +You should almost always follow a **Do** recommendation. For example: + +✔️ DO include a short description for your package that describes what it's for. + +On the other hand, **Consider** recommendations should generally be followed, but there are legitimate exceptions to the rule and you shouldn't feel bad about not following the guidance: + +✔️ CONSIDER choosing a NuGet package name with a prefix that meets NuGet's prefix reservation [criteria](https://docs.microsoft.com/en-us/nuget/reference/id-prefix-reservation). + +**Avoid** recommendations mention things that are generally not a good idea, but breaking the rule sometimes makes sense: + +❌ AVOID NuGet package references that demand an exact version. + +And finally, **Do not** recommendations indicate something you should almost never do: + +❌ DO NOT use the `LicenseUrl` metadataproperty. ## Framework targeting Authors should consider making their packages as inclusive as possible if they would like to maximize the number of potential consumers and overall impact in the .NET ecosystem. -### Cross-platform and framework compatibility - Highly inclusive packages are cross-platform and compatible with as many frameworks as possible. Today, that means using .NET Standard. .NET Standard is a specification of .NET APIs that are available on all .NET implementations. -✔️ CONSIDER targeting `netstandard2.0` to maximize your potential impact. +✔️ DO start with including a `netstandard2.0` target. +> Most general-purpose libraries should not need APIs outside of .NET Standard 2.0. .NET Standard 2.0 is supported by all modern platforms and is the recommended way to support multiple platforms with one target. -## Package Metadata +See the .NET [Cross-platform targeting guidance](https://docs.microsoft.com/en-us/dotnet/standard/library-guidance/cross-platform-targeting) for more advanced suggestions regarding cross-platform and multitargeting scenarios. + +## Package metadata Metadata is a foundational component of any NuGet package. The quality of your metadata can vastly influence the discoverability and usability of your package. -The recommended way to include/modify package metadata for Visual Studio users is to go to the "Package" section of your Project Properties. Otherwise, you can add metadata properties directly to the project file (csproj). +In Visual Studio, the recommended way to specify package metadata is to go Project > [Project Name] Properties > Package. + +Package metadata elements can also be specified directly in the project file (.csproj). -Below is a table mapping and describing all the packages metadata elements: +Below is a table mapping and describing all the available packages metadata elements: | Visual Studio property name | csproj/MSBuild property name | Nuspec property name | Description | |-----------------------------|------------------------------|-----------------------------|-------------------------------------------------------------------------------------------------------------------| | `Package id` | `PackageId` | `id` | The package identifier. A prefix from the identifier can be reserved if it meets the criteria. | | `Package Version` | `Version` | `version` | NuGet package version. For more information, see NuGet package version. | -| `Authors` | `Authors` | `authors` | A comma-separated list of package authors, matching the profile names on nuget.org. | +| `Authors` | `Authors` | `authors` | A comma-separated list of package authors, matching the profile names on NuGet.org. | | `Description` | `Description` | `description` | A long description of the package displayed in UI. | | `Copyright` | `Copyright` | `copyright` | Copyright details for the package. language. | -| `Licensing - Expression` | `PackageLicenseExpression` | `license type="expression"` | An SPDX license expression or path to a license file within the package, often shown in UIs like nuget.org. | +| `Licensing - Expression` | `PackageLicenseExpression` | `license type="expression"` | An SPDX license expression or path to a license file within the package, often shown in UIs like NuGet.org. | | `Licensing - File` | `PackageLicenseFile` | `license type="file"` | File for custom license that isn't supported by license expressions | | `Project URL` | `PackageProjectUrl` | `projectUrl` | A URL for the project homepage. | | `Icon File` | `PackageIcon` | `icon` | An image to use as the icon for the package. | @@ -54,91 +68,110 @@ Below is a table mapping and describing all the packages metadata elements: | `Tags` | `PackageTags` | `tags` | A space-delimited list of tags and keywords that describe the package. Tags are used when searching for packages. | | `Release notes` | `PackageReleaseNotes` | `releaseNotes` | A description of the changes made in this release of the package. | -#### Package ID +### Package ID -✔️ CONSIDER choosing a NuGet package name with a prefix that meets NuGet's prefix reservation [criteria](https://docs.microsoft.com/en-us/nuget/reference/id-prefix-reservation). +If you're publishing a completely new package: -Example: +✔️ DO choose a package ID that is unique and clearly differentiated from existing packages on NuGet.org. +> You can make sure a package ID is unique and differntiable by searching for the ID on NuGet.org or checking if the following link exists: https://www.nuget.org/packages/. -#### Package Version +✔️ CONSIDER choosing a NuGet package name with a prefix that meets NuGet's prefix reservation [criteria](https://docs.microsoft.com/en-us/nuget/nuget-org/id-prefix-reservation#id-prefix-reservation-criteria). +> Reserving the prefix ID for your package will let you get the verified check mark: +> ![image](media/Verified-check-mark.png) +> Check out the [Package ID prefix reservation docs](https://docs.microsoft.com/en-us/nuget/nuget-org/id-prefix-reservation) to learn more. + +### Package Version ✔️ CONSIDER using [SemVer 2.0.0](https://semver.org/) to version your NuGet package. -> Essentially, this means using the Major.Minor.Patch[-prerelease] format. Which number get incremented depends on the types of changes made since the last release. +> Essentially, this means using the Major.Minor.Patch[-prerelease] format. ✔️ DO include a pre-release suffix when releasing a non-stable package. -> For more detailed guidance about when to publish a pre-release package see -#### Description +See the [.NET library versioning guide](https://docs.microsoft.com/en-us/dotnet/standard/library-guidance/versioning) for more advanced guidance including aseembly versioning. + +### Authors + +✔️ CONSIDER including the current NuGet.org owners for consistency across NuGet clients. +> Visual Studio currently displayed `Authors` on the Browse tab. It is also in the criteria for ID prefix reservation. + +### Description ✔️ DO include a short description for your package that describes what it's for. > Package descriptions are one of the most prominent fields surfaced in NuGet search and will likely be the first thing a potential consumers looks at to determine if a package is right for them. -#### Copyright +### Copyright -✔️ CONSIDER copyrighting your package with "Copyright name/company year" ->A copyright notice essentially indicates that your work cannot be copied without your permission. Including, a copyright notice in your package is easy and won't do any harm! +✔️ CONSIDER copyrighting your package with "Copyright (c) ." +>A copyright notice essentially indicates that your work cannot be copied without your permission. Including, a copyright notice in your package is easy and won't do any harm! -Example: Copyright Contoso 2020 +Example: Copyright (c) Contoso 2020 -#### Licensing +### Licensing ✔️ DO specify a valid license for your package. > [!IMPORTANT] > A project without a license defaults to [exclusive copyright](https://choosealicense.com/no-permission/), making it legally impossible for other people to use. ✔️ CONSIDER using a license expression (SPDX identifier). -> License expressions are surfaced the most clearly to package consumers and make it clear if the license has changed with a new release. +> License expressions are surfaced the most clearly to package consumers and make it more obvious if the license has changed with a new release. ✔️ CONSIDER specifying an MIT license. > If you want your package as to be usable by as many consumers as possible, the MIT license is a very well known non-restrictive license. -#### Project URL +❌ DO NOT use the deprecated `LicenseUrl` metadataproperty. +> This presents legal ambiguity as license changes at the URL will retroactively change the displayed license for previous package versions. + +### Project URL + +✔️ CONSIDER including a link to an associated project or company website. +> Company website links, even if not specific to the package/project, still improve consumer trust. -✔️ CONSIDER including a link to an associated project website or repository. -> If you have a non-repository website associated with your package, feel free to include it. Repository URLs (GitHub, BitBucket, etc.) belong in the `Repository URL` field. This is especially helpful is your repository is private! +❌ DO NOT put a repository URL (GitHub, BitBucket, etc.) in the `Project URL` field, as consumers will expect to find it in the `Repository URL` field. -#### Icon +### Icon -✔️ DO use a package icon image that is 128x128 and has a transparent background (PNG) for best viewing results. +✔️ CONSIDER including an icon with your package to help visually differentiate it. It's a relatively small addition that can improve perception of package quality. +> Icons can be specific to individual packages or be a brand logo. + +✔️ DO use an image that is 128x128 and has a transparent background (PNG) for best viewing results. > NuGet will automatically scale your image to the client it is being displayed on. -#### Repository Type and URL +❌ DO NOT use the deprecated `IconUrl` metadata property. + +### Repository Type and URL -If your have a public repository for the your package source code, you should... +✔️ CONSIDER including a repository type and URL to make it easy for package consumers to view sourecode and package documentation (only if public). ✔️ CONSIDER setting up [Source Link](https://docs.microsoft.com/en-us/dotnet/standard/library-guidance/sourcelink) to add source control metadata to your assemblies and NuGet package. > Source Link will automatically adds `Repository URL` and `Repository Type` to the package metadata. It also adds the specific commit associated with your package version. -However, even if you don't want to use Source Link to automatically add your repository URL and type to the package metadata, filling them in yourself can still be very helpful! - -#### Tags +### Tags -✔️ DO include tags with key terms related to your package to enhance package discoverability. +✔️ DO include several tags with key terms related to your package to enhance discoverability. > Tags are taken into account in NuGet's search algorithm and are especially helpful for terms that are not in the Package ID. -#### Release Notes +### Release notes ✔️ CONSIDER including release notes with each update describing what changes were made. > While there is no specific format required for release notes, we recommend including: -> 1. Breaking changes (very helpful) -> 2. Added features -> 3. Bug Fixes +> +> 1. Breaking changes +> 2. New features +> 3. Bug fixes +> +> If you already track release notes in your repo, you can also include a link to your release notes file. -## Dependency Management +## Dependencies -#### Lean Packages +### Lean packages ✔️ DO review your package for unnecessary dependencies. -> Unnecessary dependencies needlessly increase the size of your package as well as increase likelihood of version conflicts! - -#### Version Ranges - - +> Unnecessary dependencies needlessly increase the size of your package as well as increase likelihood of version conflicts for both yourself and your consumers! -## Publishing +### Depencency version ranges -### Packing +❌ DO NOT have NuGet package references with no minimum version. -✔️ DO pack your package using Visual Studio ` +❌ AVOID NuGet package references that demand an exact version. -### Security \ No newline at end of file +❌ AVOID NuGet package references with a version upper limit. \ No newline at end of file From e61a5939a8cbb9c7425aab639a1ae66bdc689321 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Fri, 18 Sep 2020 14:47:19 -0400 Subject: [PATCH 154/988] Update docs/guides/Package-authoring-best-practices.md Co-authored-by: Andy Zivkovic --- docs/guides/Package-authoring-best-practices.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/guides/Package-authoring-best-practices.md b/docs/guides/Package-authoring-best-practices.md index 256fb6422..8379d338f 100644 --- a/docs/guides/Package-authoring-best-practices.md +++ b/docs/guides/Package-authoring-best-practices.md @@ -73,7 +73,7 @@ Below is a table mapping and describing all the available packages metadata elem If you're publishing a completely new package: ✔️ DO choose a package ID that is unique and clearly differentiated from existing packages on NuGet.org. -> You can make sure a package ID is unique and differntiable by searching for the ID on NuGet.org or checking if the following link exists: https://www.nuget.org/packages/. +> You can check if a package ID is unique and differentiable by searching for the ID on NuGet.org or checking if the following link exists: https://www.nuget.org/packages/. ✔️ CONSIDER choosing a NuGet package name with a prefix that meets NuGet's prefix reservation [criteria](https://docs.microsoft.com/en-us/nuget/nuget-org/id-prefix-reservation#id-prefix-reservation-criteria). > Reserving the prefix ID for your package will let you get the verified check mark: @@ -174,4 +174,4 @@ Example: Copyright (c) Contoso 2020 ❌ AVOID NuGet package references that demand an exact version. -❌ AVOID NuGet package references with a version upper limit. \ No newline at end of file +❌ AVOID NuGet package references with a version upper limit. From 0820f49ff6b0e83891478e35dd4750cdaa99294c Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Fri, 18 Sep 2020 14:59:29 -0400 Subject: [PATCH 155/988] Update docs/guides/Package-authoring-best-practices.md Co-authored-by: Joel Verhagen --- docs/guides/Package-authoring-best-practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guides/Package-authoring-best-practices.md b/docs/guides/Package-authoring-best-practices.md index 8379d338f..e0e41b1ee 100644 --- a/docs/guides/Package-authoring-best-practices.md +++ b/docs/guides/Package-authoring-best-practices.md @@ -13,7 +13,7 @@ This guidance is intended to give NuGet.org package authors a light-weight end t ## Types of recommendations -Each article presents four types of recommendations: **Do**, **Consider**, **Avoid**, and **Do not**. The type of recommendation indicates how strongly it should be followed. +Each article presents four types of recommendations: **Do**, **Consider**, **Avoid**, and **Do not**. The type of recommendation indicates how closely it should be followed. You should almost always follow a **Do** recommendation. For example: From 0229d151f9cb4b64d814699c5f317dfb73bd8d11 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Fri, 18 Sep 2020 15:22:52 -0400 Subject: [PATCH 156/988] Apply suggestions from code review Co-authored-by: Joel Verhagen --- docs/guides/Package-authoring-best-practices.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/guides/Package-authoring-best-practices.md b/docs/guides/Package-authoring-best-practices.md index e0e41b1ee..0b6f34ad2 100644 --- a/docs/guides/Package-authoring-best-practices.md +++ b/docs/guides/Package-authoring-best-practices.md @@ -29,7 +29,7 @@ On the other hand, **Consider** recommendations should generally be followed, bu And finally, **Do not** recommendations indicate something you should almost never do: -❌ DO NOT use the `LicenseUrl` metadataproperty. +❌ DO NOT use the `LicenseUrl` metadata property. ## Framework targeting @@ -140,7 +140,7 @@ Example: Copyright (c) Contoso 2020 ### Repository Type and URL -✔️ CONSIDER including a repository type and URL to make it easy for package consumers to view sourecode and package documentation (only if public). +✔️ CONSIDER including a repository type and URL to make it easy for package consumers to view source code, report issues, and view repository documentation (only if public). ✔️ CONSIDER setting up [Source Link](https://docs.microsoft.com/en-us/dotnet/standard/library-guidance/sourcelink) to add source control metadata to your assemblies and NuGet package. > Source Link will automatically adds `Repository URL` and `Repository Type` to the package metadata. It also adds the specific commit associated with your package version. From 7a98bca626388025c197dd74fbf9eb1b0abf50cc Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Fri, 18 Sep 2020 14:24:09 -0500 Subject: [PATCH 157/988] Update docfx.json --- docs/docfx.json | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/docs/docfx.json b/docs/docfx.json index 6e24399e9..ce389268c 100644 --- a/docs/docfx.json +++ b/docs/docfx.json @@ -40,11 +40,12 @@ "ROBOTS": "INDEX,FOLLOW", "ms.topic": "conceptual", "ms.prod": "nuget", - "author": "karann-msft", - "ms.author": "karann", + "author": "JonDouglas", + "ms.author": "jodou", "ms.reviewer": [ - "karann", - "unnir" + "jodou", + "chgill", + "jiacjian" ], "ms.workload": [ "dotnet", From e13f824b26499cae333434df3d7e9d1d56c40f51 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Fri, 18 Sep 2020 15:02:13 -0500 Subject: [PATCH 158/988] Update docfx.json --- docs/docfx.json | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/docfx.json b/docs/docfx.json index ce389268c..bd6eba5ae 100644 --- a/docs/docfx.json +++ b/docs/docfx.json @@ -43,6 +43,7 @@ "author": "JonDouglas", "ms.author": "jodou", "ms.reviewer": [ + "anangaur", "jodou", "chgill", "jiacjian" From 095535c89b4ee154fbcc58fa8bc983dfdc701ee0 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Fri, 18 Sep 2020 19:02:28 -0400 Subject: [PATCH 159/988] Apply suggestions from code review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Loïc Sharma <737941+loic-sharma@users.noreply.github.com> --- docs/guides/Package-authoring-best-practices.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/docs/guides/Package-authoring-best-practices.md b/docs/guides/Package-authoring-best-practices.md index 0b6f34ad2..d3826a422 100644 --- a/docs/guides/Package-authoring-best-practices.md +++ b/docs/guides/Package-authoring-best-practices.md @@ -9,7 +9,7 @@ ms.topic: conceptual # Package authoring best practices -This guidance is intended to give NuGet.org package authors a light-weight end to end reference for creating and publishing high quality packages. It will primarily focus on package-specific best practices such as metadata and packing. For more in depth suggestions for building high quality libraries, see the .NET [Open-source library guidance](https://docs.microsoft.com/en-us/dotnet/standard/library-guidance/). +This guidance is intended to give NuGet.org package authors a lightweight end to end reference for creating and publishing high quality packages. It will primarily focus on package-specific best practices such as metadata and packing. For more in-depth suggestions for building high quality libraries, see the .NET [Open-source library guidance](https://docs.microsoft.com/en-us/dotnet/standard/library-guidance/). ## Types of recommendations @@ -19,7 +19,7 @@ You should almost always follow a **Do** recommendation. For example: ✔️ DO include a short description for your package that describes what it's for. -On the other hand, **Consider** recommendations should generally be followed, but there are legitimate exceptions to the rule and you shouldn't feel bad about not following the guidance: +On the other hand, **Consider** recommendations should generally be followed, but there are legitimate exceptions to the rule: ✔️ CONSIDER choosing a NuGet package name with a prefix that meets NuGet's prefix reservation [criteria](https://docs.microsoft.com/en-us/nuget/reference/id-prefix-reservation). @@ -50,7 +50,7 @@ In Visual Studio, the recommended way to specify package metadata is to go Proje Package metadata elements can also be specified directly in the project file (.csproj). -Below is a table mapping and describing all the available packages metadata elements: +Below is a table mapping and describing available packages metadata elements: | Visual Studio property name | csproj/MSBuild property name | Nuspec property name | Description | |-----------------------------|------------------------------|-----------------------------|-------------------------------------------------------------------------------------------------------------------| @@ -75,7 +75,7 @@ If you're publishing a completely new package: ✔️ DO choose a package ID that is unique and clearly differentiated from existing packages on NuGet.org. > You can check if a package ID is unique and differentiable by searching for the ID on NuGet.org or checking if the following link exists: https://www.nuget.org/packages/. -✔️ CONSIDER choosing a NuGet package name with a prefix that meets NuGet's prefix reservation [criteria](https://docs.microsoft.com/en-us/nuget/nuget-org/id-prefix-reservation#id-prefix-reservation-criteria). +✔️ CONSIDER choosing a NuGet package name with a prefix that meets NuGet's [prefix reservation criteria](https://docs.microsoft.com/en-us/nuget/nuget-org/id-prefix-reservation#id-prefix-reservation-criteria). > Reserving the prefix ID for your package will let you get the verified check mark: > ![image](media/Verified-check-mark.png) > Check out the [Package ID prefix reservation docs](https://docs.microsoft.com/en-us/nuget/nuget-org/id-prefix-reservation) to learn more. @@ -87,7 +87,7 @@ If you're publishing a completely new package: ✔️ DO include a pre-release suffix when releasing a non-stable package. -See the [.NET library versioning guide](https://docs.microsoft.com/en-us/dotnet/standard/library-guidance/versioning) for more advanced guidance including aseembly versioning. +See the [.NET library versioning guide](https://docs.microsoft.com/en-us/dotnet/standard/library-guidance/versioning) for more advanced guidance including assembly versioning. ### Authors @@ -102,7 +102,7 @@ See the [.NET library versioning guide](https://docs.microsoft.com/en-us/dotnet/ ### Copyright ✔️ CONSIDER copyrighting your package with "Copyright (c) ." ->A copyright notice essentially indicates that your work cannot be copied without your permission. Including, a copyright notice in your package is easy and won't do any harm! +>A copyright notice essentially indicates that your work cannot be copied without your permission. Including a copyright notice in your package is easy and won't do any harm! Example: Copyright (c) Contoso 2020 @@ -118,7 +118,7 @@ Example: Copyright (c) Contoso 2020 ✔️ CONSIDER specifying an MIT license. > If you want your package as to be usable by as many consumers as possible, the MIT license is a very well known non-restrictive license. -❌ DO NOT use the deprecated `LicenseUrl` metadataproperty. +❌ DO NOT use the deprecated `LicenseUrl` metadata property. > This presents legal ambiguity as license changes at the URL will retroactively change the displayed license for previous package versions. ### Project URL @@ -168,7 +168,7 @@ Example: Copyright (c) Contoso 2020 ✔️ DO review your package for unnecessary dependencies. > Unnecessary dependencies needlessly increase the size of your package as well as increase likelihood of version conflicts for both yourself and your consumers! -### Depencency version ranges +### Dependency version ranges ❌ DO NOT have NuGet package references with no minimum version. From aa35d6d4705adaeed38670e1a190d98c99b76f13 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Fri, 18 Sep 2020 19:22:21 -0400 Subject: [PATCH 160/988] TODO --- docs/guides/Package-authoring-best-practices.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/guides/Package-authoring-best-practices.md b/docs/guides/Package-authoring-best-practices.md index 256fb6422..76a1c5bf1 100644 --- a/docs/guides/Package-authoring-best-practices.md +++ b/docs/guides/Package-authoring-best-practices.md @@ -31,6 +31,10 @@ And finally, **Do not** recommendations indicate something you should almost nev ❌ DO NOT use the `LicenseUrl` metadataproperty. +## Where do I define my package? + +TODO: Talk about how and where to make the suggested changes through out the guide (Visual Studio properties, project file, packages.config) + ## Framework targeting Authors should consider making their packages as inclusive as possible if they would like to maximize the number of potential consumers and overall impact in the .NET ecosystem. From 5c3b294cadb3326fe83a3c0d551b67732f155c38 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 21 Sep 2020 12:47:35 -0500 Subject: [PATCH 161/988] Typo in package restore docs Fixes #2164 --- docs/consume-packages/Package-Restore.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Package-Restore.md b/docs/consume-packages/Package-Restore.md index bc89b8daf..93f64db3c 100644 --- a/docs/consume-packages/Package-Restore.md +++ b/docs/consume-packages/Package-Restore.md @@ -211,7 +211,7 @@ To avoid using the cache for HTTP sources, do one of the following: For NuGet 2.6 and earlier, an MSBuild-integrated package restore was previously supported but that is no longer true. (It was typically enabled by right-clicking a solution in Visual Studio and selecting **Enable NuGet Package Restore**). If your project uses the deprecated MSBuild-integrated package restore, please migrate to automatic package restore. -Projects that use MSBuild-Integrated package restore typically contain a *.nuget* folder with three files: *NuGet.config*, *nuget.exe*, and *NuGet.targets*. The presence of a *NuGet.targets* file determines whether NuGet will continue to use the MSBuild-untegrated approach, so this file must be removed during the migration. +Projects that use MSBuild-Integrated package restore typically contain a *.nuget* folder with three files: *NuGet.config*, *nuget.exe*, and *NuGet.targets*. The presence of a *NuGet.targets* file determines whether NuGet will continue to use the MSBuild-unintegrated approach, so this file must be removed during the migration. To migrate to automatic package restore: From 53730d85eff2defec3d7e24ad138fa8fb1dacc9a Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 21 Sep 2020 12:49:37 -0500 Subject: [PATCH 162/988] Revert word to integrated The context is "integrated", not "unintegrated". Fixed! --- docs/consume-packages/Package-Restore.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Package-Restore.md b/docs/consume-packages/Package-Restore.md index 93f64db3c..1f265f6ec 100644 --- a/docs/consume-packages/Package-Restore.md +++ b/docs/consume-packages/Package-Restore.md @@ -211,7 +211,7 @@ To avoid using the cache for HTTP sources, do one of the following: For NuGet 2.6 and earlier, an MSBuild-integrated package restore was previously supported but that is no longer true. (It was typically enabled by right-clicking a solution in Visual Studio and selecting **Enable NuGet Package Restore**). If your project uses the deprecated MSBuild-integrated package restore, please migrate to automatic package restore. -Projects that use MSBuild-Integrated package restore typically contain a *.nuget* folder with three files: *NuGet.config*, *nuget.exe*, and *NuGet.targets*. The presence of a *NuGet.targets* file determines whether NuGet will continue to use the MSBuild-unintegrated approach, so this file must be removed during the migration. +Projects that use MSBuild-Integrated package restore typically contain a *.nuget* folder with three files: *NuGet.config*, *nuget.exe*, and *NuGet.targets*. The presence of a *NuGet.targets* file determines whether NuGet will continue to use the MSBuild-integrated approach, so this file must be removed during the migration. To migrate to automatic package restore: From ecb66f343b87800f8833ef8c1988540c627ee656 Mon Sep 17 00:00:00 2001 From: David Coulter Date: Mon, 21 Sep 2020 14:29:07 -0700 Subject: [PATCH 163/988] Links: NuGet - Pass 1 --- docs/api/search-query-service-resource.md | 4 +- .../install-use-packages-powershell.md | 4 +- docs/create-packages/Sign-a-Package.md | 4 +- .../Source-and-Config-File-Transformations.md | 6 +- .../Supporting-Multiple-Target-Frameworks.md | 4 +- .../creating-a-package-msbuild.md | 4 +- docs/guides/Create-UI-Controls.md | 4 +- docs/guides/Create-UWP-Packages-CS.md | 8 +- docs/guides/analyzers-conventions.md | 4 +- docs/index.yml | 82 +++++++++---------- docs/nuget-org/Publish-a-package.md | 4 +- docs/nuget-org/nuget-org-faq.md | 6 +- docs/policies/Ecosystem.md | 4 +- docs/reference/PowerShell-Reference.md | 4 +- docs/reference/cli-reference/cli-ref-list.md | 4 +- .../cli-reference/cli-ref-long-path.md | 3 +- .../ps-ref-add-bindingredirect.md | 4 +- .../ps-reference/ps-ref-find-package.md | 4 +- .../ps-reference/ps-ref-get-package.md | 4 +- .../ps-reference/ps-ref-get-project.md | 2 +- .../ps-reference/ps-ref-install-package.md | 4 +- .../ps-reference/ps-ref-open-packagepage.md | 2 +- .../ps-ref-register-tabexpansion.md | 4 +- .../ps-reference/ps-ref-sync-package.md | 4 +- .../ps-reference/ps-ref-uninstall-package.md | 4 +- .../ps-reference/ps-ref-update-package.md | 4 +- docs/release-notes/NuGet-1.8.md | 4 +- docs/release-notes/NuGet-2.6.md | 2 +- docs/release-notes/NuGet-5.0-RTM.md | 6 +- docs/resources/NuGet-FAQ.md | 6 +- 30 files changed, 101 insertions(+), 102 deletions(-) diff --git a/docs/api/search-query-service-resource.md b/docs/api/search-query-service-resource.md index fe77e4094..1da1eb716 100644 --- a/docs/api/search-query-service-resource.md +++ b/docs/api/search-query-service-resource.md @@ -118,7 +118,7 @@ packageTypes | array of objects | yes | The package types defin On nuget.org, a verified package is one which has a package ID matching a reserved ID prefix and owned by one of the reserved prefix's owners. For more information, see the -[documentation about ID prefix reservation](../reference/id-prefix-reservation.md). +[documentation about ID prefix reservation](../nuget-org/id-prefix-reservation.md). The metadata contained in the search result object is taken from the latest package version. Each item in the `versions` array is a JSON object with the following properties: @@ -141,4 +141,4 @@ name | string | yes | The name of the package type. ### Sample response -[!code-JSON [search-result.json](./_data/search-result.json)] +[!code-JSON [search-result.json](./_data/search-result.json)] \ No newline at end of file diff --git a/docs/consume-packages/install-use-packages-powershell.md b/docs/consume-packages/install-use-packages-powershell.md index 98b582ae0..c266ac4a4 100644 --- a/docs/consume-packages/install-use-packages-powershell.md +++ b/docs/consume-packages/install-use-packages-powershell.md @@ -163,7 +163,7 @@ $profile C:\Users\\Documents\WindowsPowerShell\NuGet_profile.ps1 ``` -For more details, refer to [Windows PowerShell Profiles](https://technet.microsoft.com/library/bb613488.aspx). +For more details, refer to [Windows PowerShell Profiles](/previous-versions//bb613488(v=vs.85)). ## Use the nuget.exe CLI in the console @@ -172,4 +172,4 @@ To make the [`nuget.exe` CLI](../reference/nuget-exe-cli-reference.md) available ```ps # Other versions are available, see https://www.nuget.org/packages/NuGet.CommandLine/ Install-Package NuGet.CommandLine -Version 4.4.1 -``` +``` \ No newline at end of file diff --git a/docs/create-packages/Sign-a-Package.md b/docs/create-packages/Sign-a-Package.md index 1b97641fc..76c20b5f1 100644 --- a/docs/create-packages/Sign-a-Package.md +++ b/docs/create-packages/Sign-a-Package.md @@ -14,7 +14,7 @@ Signed packages allows for content integrity verification checks which provides ## Get a code signing certificate -Valid certificates may be obtained from a public certificate authority such as [Symantec](https://trustcenter.websecurity.symantec.com/process/trust/productOptions?productType=SoftwareValidationClass3), [DigiCert](https://www.digicert.com/code-signing/), [Go Daddy](https://www.godaddy.com/web-security/code-signing-certificate), [Global Sign](https://www.globalsign.com/en/code-signing-certificate/), [Comodo](https://www.comodo.com/e-commerce/code-signing/code-signing-certificate.php), [Certum](https://www.certum.eu/certum/cert,offer_en_open_source_cs.xml), etc. The complete list of certification authorities trusted by Windows can be obtained from [http://aka.ms/trustcertpartners](https://aka.ms/trustcertpartners). +Valid certificates may be obtained from a public certificate authority such as [Symantec](https://trustcenter.websecurity.symantec.com/process/trust/productOptions?productType=SoftwareValidationClass3), [DigiCert](https://www.digicert.com/code-signing/), [Go Daddy](https://www.godaddy.com/web-security/code-signing-certificate), [Global Sign](https://www.globalsign.com/en/code-signing-certificate/), [Comodo](https://www.comodo.com/e-commerce/code-signing/code-signing-certificate.php), [Certum](https://www.certum.eu/certum/cert,offer_en_open_source_cs.xml), etc. The complete list of certification authorities trusted by Windows can be obtained from [http://aka.ms/trustcertpartners](/security/trusted-root/participants-list). You can use self-issued certificates for testing purposes. However, packages signed using self-issued certificates are not accepted by NuGet.org. Learn more about [creating a test certificate](#create-a-test-certificate) @@ -99,4 +99,4 @@ This command creates a testing certificate available in the current user's perso ## Related articles - [Manage package trust boundaries](../consume-packages/installing-signed-packages.md) -- [Signed Packages Reference](../reference/Signed-Packages-Reference.md) +- [Signed Packages Reference](../reference/Signed-Packages-Reference.md) \ No newline at end of file diff --git a/docs/create-packages/Source-and-Config-File-Transformations.md b/docs/create-packages/Source-and-Config-File-Transformations.md index 670b30430..35f81fec2 100644 --- a/docs/create-packages/Source-and-Config-File-Transformations.md +++ b/docs/create-packages/Source-and-Config-File-Transformations.md @@ -47,7 +47,7 @@ The `$rootnamespace$` token is the most commonly used project property; all othe As described in the sections that follow, config file transformations can be done in two ways: - Include `app.config.transform` and `web.config.transform` files in your package's `content` folder, where the `.transform` extension tells NuGet that these files contain the XML to merge with existing config files when the package is installed. When a package is uninstalled, that same XML is removed. -- Include `app.config.install.xdt` and `web.config.install.xdt` files in your package's `content` folder, using [XDT syntax](https://msdn.microsoft.com/library/dd465326.aspx) to describe the desired changes. With this option you can also include a `.uninstall.xdt` file to reverse changes when the package is removed from a project. +- Include `app.config.install.xdt` and `web.config.install.xdt` files in your package's `content` folder, using [XDT syntax](/previous-versions/aspnet/dd465326(v=vs.110)) to describe the desired changes. With this option you can also include a `.uninstall.xdt` file to reverse changes when the package is removed from a project. > [!Note] > Transformations are not applied to `.config` files referenced as a link in Visual Studio. @@ -110,7 +110,7 @@ To see the effect of installing and uninstalling the package, create a new ASP.N > [!Note] > As mentioned in the [package compatibility issues section of the docs for migrating from `packages.config` to `PackageReference`](../consume-packages/migrate-packages-config-to-package-reference.md#package-compatibility-issues), XDT transformations as described below are only supported by `packages.config`. If you add the below files to your package, consumers using your package with `PackageReference` will not have the transformations applied (refer to [this sample](https://github.com/NuGet/Samples/tree/master/XDTransformExample) to make XDT transforms work with`PackageReference`). -You can modify config files using [XDT syntax](https://msdn.microsoft.com/library/dd465326.aspx). You can also have NuGet replace tokens with [project properties](/dotnet/api/vslangproj.projectproperties?view=visualstudiosdk-2017&viewFallbackFrom=netframework-4.7) by including the property name within `$` delimiters (case-insensitive). +You can modify config files using [XDT syntax](/previous-versions/aspnet/dd465326(v=vs.110)). You can also have NuGet replace tokens with [project properties](/dotnet/api/vslangproj.projectproperties?view=visualstudiosdk-2017&viewFallbackFrom=netframework-4.7) by including the property name within `$` delimiters (case-insensitive). For example, the following `app.config.install.xdt` file will insert an `appSettings` element into `app.config` containing the `FullPath`, `FileName`, and `ActiveConfigurationSettings` values from the project: @@ -174,4 +174,4 @@ To remove only the `MyNuModule` element during package uninstall, the `web.confi -``` +``` \ No newline at end of file diff --git a/docs/create-packages/Supporting-Multiple-Target-Frameworks.md b/docs/create-packages/Supporting-Multiple-Target-Frameworks.md index 7ffca75f8..b8ea24e7d 100644 --- a/docs/create-packages/Supporting-Multiple-Target-Frameworks.md +++ b/docs/create-packages/Supporting-Multiple-Target-Frameworks.md @@ -66,7 +66,7 @@ Please note, NuGet always picks these compile or runtime assets from one folder See [Create UWP Packages](../guides/create-uwp-packages.md) for an example of referencing these files in the `.nuspec` manifest. -Also, see [Packing a Windows store app component with NuGet](https://blogs.msdn.microsoft.com/mim/2013/09/02/packaging-a-windows-store-apps-component-with-nuget-part-2) +Also, see [Packing a Windows store app component with NuGet](/archive/blogs/mim/packaging-a-windows-store-apps-component-with-nuget-part-2) ## Matching assembly versions and the target framework in a project @@ -177,4 +177,4 @@ With `packages.config`, content files and PowerShell scripts can be grouped by t If a framework folder is left empty, NuGet doesn't add assembly references or content files or run the PowerShell scripts for that framework. > [!Note] -> Because `init.ps1` is executed at the solution level and not dependent on project, it must be placed directly under the `tools` folder. It's ignored if placed under a framework folder. +> Because `init.ps1` is executed at the solution level and not dependent on project, it must be placed directly under the `tools` folder. It's ignored if placed under a framework folder. \ No newline at end of file diff --git a/docs/create-packages/creating-a-package-msbuild.md b/docs/create-packages/creating-a-package-msbuild.md index a01be312c..19ef818f2 100644 --- a/docs/create-packages/creating-a-package-msbuild.md +++ b/docs/create-packages/creating-a-package-msbuild.md @@ -9,7 +9,7 @@ ms.topic: conceptual # Create a NuGet package using MSBuild -When you create a NuGet package from your code, you package that functionality into a component that can be shared with and used by any number of other developers. This article describes how to create a package using MSBuild. MSBuild comes preinstalled with every Visual Studio workload that contains NuGet. Additionally you can also use MSBuild through the dotnet CLI with [dotnet msbuild](https://docs.microsoft.com/dotnet/core/tools/dotnet-msbuild). +When you create a NuGet package from your code, you package that functionality into a component that can be shared with and used by any number of other developers. This article describes how to create a package using MSBuild. MSBuild comes preinstalled with every Visual Studio workload that contains NuGet. Additionally you can also use MSBuild through the dotnet CLI with [dotnet msbuild](/dotnet/core/tools/dotnet-msbuild). For .NET Core and .NET Standard projects that use the [SDK-style format](../resources/check-project-format.md), and any other SDK-style projects, NuGet uses information in the project file directly to create a package. For a non-SDK-style project that uses ``, NuGet also uses the project file to create a package. @@ -184,4 +184,4 @@ You might also want to extend the capabilities of your package or otherwise supp Finally, there are additional package types to be aware of: - [Native Packages](../guides/native-packages.md) -- [Symbol Packages](../create-packages/symbol-packages-snupkg.md) +- [Symbol Packages](../create-packages/symbol-packages-snupkg.md) \ No newline at end of file diff --git a/docs/guides/Create-UI-Controls.md b/docs/guides/Create-UI-Controls.md index 23f5e7cd9..592531919 100644 --- a/docs/guides/Create-UI-Controls.md +++ b/docs/guides/Create-UI-Controls.md @@ -89,7 +89,7 @@ Supported formats are `.png`, `.jpg`, `.jpeg`, `.gif`, and `.bmp`. The recommend ![Tool box icon sample](https://raw.githubusercontent.com/NuGet/docs.microsoft.com-nuget/live/docs/guides/media/ColorPicker_16x16x24.bmp) -The pink background is replaced at runtime. The icons are recolored when the Visual Studio theme is changed and that background color is expected. For more information, please reference [Images and Icons for Visual Studio](https://docs.microsoft.com/visualstudio/extensibility/ux-guidelines/images-and-icons-for-visual-studio). +The pink background is replaced at runtime. The icons are recolored when the Visual Studio theme is changed and that background color is expected. For more information, please reference [Images and Icons for Visual Studio](/visualstudio/extensibility/ux-guidelines/images-and-icons-for-visual-studio). In the example below, the project contains an image file named “ManagedPackage.MyCustomControl.png”. @@ -152,4 +152,4 @@ For an example, refer to [MyCustomControl.cs](https://github.com/NuGet/Samples/b ## See also - [Create UWP Packages](create-uwp-packages.md) -- [ExtensionSDKasNuGetPackage sample](https://github.com/NuGet/Samples/tree/master/ExtensionSDKasNuGetPackage) +- [ExtensionSDKasNuGetPackage sample](https://github.com/NuGet/Samples/tree/master/ExtensionSDKasNuGetPackage) \ No newline at end of file diff --git a/docs/guides/Create-UWP-Packages-CS.md b/docs/guides/Create-UWP-Packages-CS.md index e1aa2523e..1cb90780b 100644 --- a/docs/guides/Create-UWP-Packages-CS.md +++ b/docs/guides/Create-UWP-Packages-CS.md @@ -17,7 +17,7 @@ In this walkthrough you create a NuGet package with a C# UWP component (includin 1. Visual Studio 2019. Install the 2019 Community edition for free from [visualstudio.com](https://www.visualstudio.com/); you can use the Professional and Enterprise editions as well. -1. NuGet CLI. Download the latest version of `nuget.exe` from [nuget.org/downloads](https://nuget.org/downloads), saving it to a location of your choice (the download is the `.exe` directly). Then add that location to your PATH environment variable if it isn't already. [More details](/nuget/reference/nuget-exe-cli-reference#windows). +1. NuGet CLI. Download the latest version of `nuget.exe` from [nuget.org/downloads](https://nuget.org/downloads), saving it to a location of your choice (the download is the `.exe` directly). Then add that location to your PATH environment variable if it isn't already. [More details](../reference/nuget-exe-cli-reference.md#windows). ## Create a UWP Windows Runtime component @@ -47,7 +47,7 @@ In this walkthrough you create a NuGet package with a C# UWP component (includin To create the initial `.nuspec` file, do the three steps below. The sections that follow then guide you through other necessary updates. 1. Open a command prompt and navigate to the folder containing `ImageEnhancer.csproj` (this will be a subfolder below where the solution file is). -1. Run the [`NuGet spec`](/nuget/reference/cli-reference/cli-ref-spec) command to generate `ImageEnhancer.nuspec` (the name of the file is taken from the name of the `.csroj` file): +1. Run the [`NuGet spec`](../reference/cli-reference/cli-ref-spec.md) command to generate `ImageEnhancer.nuspec` (the name of the file is taken from the name of the `.csroj` file): ```cli nuget spec @@ -192,7 +192,7 @@ Your final `.nuspec` file should now look like the following, where again YOUR_N ## Package the component -With the completed `.nuspec` referencing all the files you need to include in the package, you're ready to run the [`nuget pack`](/nuget/reference/cli-reference/cli-ref-pack) command: +With the completed `.nuspec` referencing all the files you need to include in the package, you're ready to run the [`nuget pack`](../reference/cli-reference/cli-ref-pack.md) command: ```cli nuget pack ImageEnhancer.nuspec @@ -214,4 +214,4 @@ To make your package available to other developers, follow the instructions on - [Package versioning](../concepts/package-versioning.md) - [Supporting Multiple .NET Framework Versions](../create-packages/supporting-multiple-target-frameworks.md) - [Include MSBuild props and targets in a package](../create-packages/creating-a-package.md#include-msbuild-props-and-targets-in-a-package) -- [Creating Localized Packages](../create-packages/creating-localized-packages.md) +- [Creating Localized Packages](../create-packages/creating-localized-packages.md) \ No newline at end of file diff --git a/docs/guides/analyzers-conventions.md b/docs/guides/analyzers-conventions.md index 8235bafa5..2b6f7085d 100644 --- a/docs/guides/analyzers-conventions.md +++ b/docs/guides/analyzers-conventions.md @@ -9,7 +9,7 @@ ms.topic: conceptual # Analyzer NuGet formats -The .NET Compiler Platform (also known as "Roslyn") allows developers to create [analyzers](https://github.com/dotnet/roslyn/wiki/How-To-Write-a-C%23-Analyzer-and-Code-Fix) that examine the syntax tree and semantics of code as it's being written. This provides developers with a way to create domain-specific analysis tools, such as those that would help guide the use of a particular API or library. You can find more information on the [.NET/Roslyn](https://github.com/dotnet/roslyn/wiki) GitHub wiki. Also see the article, [Use Roslyn to Write a Live Code Analyzer for your API](https://msdn.microsoft.com/magazine/dn879356.aspx) in MSDN Magazine. +The .NET Compiler Platform (also known as "Roslyn") allows developers to create [analyzers](https://github.com/dotnet/roslyn/wiki/How-To-Write-a-C%23-Analyzer-and-Code-Fix) that examine the syntax tree and semantics of code as it's being written. This provides developers with a way to create domain-specific analysis tools, such as those that would help guide the use of a particular API or library. You can find more information on the [.NET/Roslyn](https://github.com/dotnet/roslyn/wiki) GitHub wiki. Also see the article, [Use Roslyn to Write a Live Code Analyzer for your API](/archive/msdn-magazine/2014/special-issue/csharp-and-visual-basic-use-roslyn-to-write-a-live-code-analyzer-for-your-api) in MSDN Magazine. Analyzers themselves are typically packaged and distributed as part of the NuGet packages that implement the API or library in question. @@ -163,4 +163,4 @@ foreach($analyzersPath in $analyzersPaths) } } } -``` +``` \ No newline at end of file diff --git a/docs/index.yml b/docs/index.yml index 90abfe938..e543945d2 100644 --- a/docs/index.yml +++ b/docs/index.yml @@ -15,16 +15,16 @@ highlightedContent: items: - title: What is NuGet? itemType: overview - url: /nuget/what-is-nuget + url: ./what-is-nuget.md - title: Install NuGet client tools itemType: download - url: /nuget/install-nuget-client-tools + url: ./install-nuget-client-tools.md - title: Learn NuGet itemType: video url: https://aka.ms/Nuget101 - title: NuGet.org itemType: overview - url: /nuget/nuget-org/overview-nuget-org + url: ./nuget-org/overview-nuget-org.md conceptualContent: @@ -34,70 +34,70 @@ conceptualContent: links: - text: Install NuGet client tools itemType: download - url: /nuget/install-nuget-client-tools + url: ./install-nuget-client-tools.md - text: Install and use a package - dotnet CLI itemType: quickstart - url: /nuget/quickstart/install-and-use-a-package-using-the-dotnet-cli + url: ./quickstart/install-and-use-a-package-using-the-dotnet-cli.md - text: Install and use a package - Visual Studio itemType: quickstart - url: /nuget/quickstart/install-and-use-a-package-in-visual-studio + url: ./quickstart/install-and-use-a-package-in-visual-studio.md - text: Create a package - dotnet CLI itemType: quickstart - url: /nuget/quickstart/create-and-publish-a-package-using-the-dotnet-cli + url: ./quickstart/create-and-publish-a-package-using-the-dotnet-cli.md - text: Create a package - Visual Studio itemType: quickstart - url: /nuget/quickstart/create-and-publish-a-package-using-visual-studio + url: ./quickstart/create-and-publish-a-package-using-visual-studio.md - text: Create a .NET Framework package - Visual Studio itemType: quickstart - url: /nuget/quickstart/create-and-publish-a-package-using-visual-studio-net-framework + url: ./quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md - title: Consume packages links: - text: Workflow (overview) itemType: overview - url: /nuget/consume-packages/overview-and-workflow + url: ./consume-packages/overview-and-workflow.md - text: Find and choose packages itemType: get-started - url: /nuget/consume-packages/finding-and-choosing-packages + url: ./consume-packages/finding-and-choosing-packages.md - text: Use Visual Studio itemType: how-to-guide - url: /nuget/consume-packages/install-use-packages-visual-studio + url: ./consume-packages/install-use-packages-visual-studio.md - text: Use dotnet CLI itemType: how-to-guide - url: /nuget/consume-packages/install-use-packages-dotnet-cli + url: ./consume-packages/install-use-packages-dotnet-cli.md - text: Use nuget.exe CLI itemType: how-to-guide - url: /nuget/consume-packages/install-use-packages-nuget-cli + url: ./consume-packages/install-use-packages-nuget-cli.md - text: Use Package Manager Console itemType: how-to-guide - url: /nuget/consume-packages/install-use-packages-powershell + url: ./consume-packages/install-use-packages-powershell.md - title: Create packages links: - text: Workflow (overview) itemType: overview - url: /nuget/create-packages/overview-and-workflow + url: ./create-packages/overview-and-workflow.md - text: Use Visual Studio itemType: how-to-guide - url: /nuget/quickstart/create-and-publish-a-package-using-visual-studio + url: ./quickstart/create-and-publish-a-package-using-visual-studio.md - text: Use dotnet CLI itemType: how-to-guide - url: /nuget/create-packages/creating-a-package-dotnet-cli + url: ./create-packages/creating-a-package-dotnet-cli.md - text: Use nuget.exe CLI itemType: how-to-guide - url: /nuget/create-packages/creating-a-package + url: ./create-packages/creating-a-package.md - text: Use MSBuild itemType: how-to-guide - url: /nuget/create-packages/creating-a-package-msbuild + url: ./create-packages/creating-a-package-msbuild.md - text: Support multiple target frameworks itemType: reference - url: /nuget/create-packages/multiple-target-frameworks-project-file + url: ./create-packages/multiple-target-frameworks-project-file.md - title: Publish packages links: - text: Publish to NuGet.org itemType: overview - url: /nuget/nuget-org/publish-a-package + url: ./nuget-org/publish-a-package.md - text: Publish to a private feed itemType: overview - url: /nuget/hosting-packages/overview + url: ./hosting-packages/overview.md additionalContent: sections: @@ -106,43 +106,43 @@ additionalContent: - title: NuGet.org links: - text: Overview - url: /nuget/nuget-org/overview-nuget-org + url: ./nuget-org/overview-nuget-org.md - text: Individual accounts - url: /nuget/nuget-org/individual-accounts + url: ./nuget-org/individual-accounts.md - text: Organizations - url: /nuget/nuget-org/organizations-on-nuget-org + url: ./nuget-org/organizations-on-nuget-org.md - text: API keys - url: /nuget/nuget-org/scoped-api-keys + url: ./nuget-org/scoped-api-keys.md - text: Publish a package - url: /nuget/nuget-org/publish-a-package + url: ./nuget-org/publish-a-package.md - title: Reference links: - text: dotnet CLI - url: /nuget/reference/dotnet-commands + url: ./reference/dotnet-commands.md - text: nuget.exe CLI - url: /nuget/reference/nuget-exe-cli-reference + url: ./reference/nuget-exe-cli-reference.md - text: Package references - url: /nuget/consume-packages/package-references-in-project-files + url: ./consume-packages/package-references-in-project-files.md - text: pack and restore as MSBuild targets - url: /nuget/reference/msbuild-targets + url: ./reference/msbuild-targets.md - text: .nuspec - url: /nuget/reference/nuspec + url: ./reference/nuspec.md - text: nuget.config - url: /nuget/reference/nuget-config-file + url: ./reference/nuget-config-file.md - text: NuGet API - url: /nuget/api/overview + url: ./api/overview.md - title: Resources links: - text: Policies - NuGet - url: /nuget/policies/governance + url: ./policies/governance.md - text: Policies - NuGet.org - url: /nuget/nuget-org/policies/data-requests + url: ./nuget-org/policies/data-requests.md - text: Release notes - url: /nuget/release-notes/known-issues + url: ./release-notes/known-issues.md - text: FAQ - NuGet - url: /nuget/resources/nuget-faq + url: ./resources/nuget-faq.md - text: FAQ - NuGet.org - url: /nuget/nuget-org/nuget-org-faq + url: ./nuget-org/nuget-org-faq.md - footer: "[Blogs](https://devblogs.microsoft.com/nuget/) - [Twitter](https://twitter.com/nuget) - [Stack Overflow](https://stackoverflow.com/questions/tagged/nuget)" + footer: "[Blogs](https://devblogs.microsoft.com/nuget/) - [Twitter](https://twitter.com/nuget) - [Stack Overflow](https://stackoverflow.com/questions/tagged/nuget)" \ No newline at end of file diff --git a/docs/nuget-org/Publish-a-package.md b/docs/nuget-org/Publish-a-package.md index dcc1ee1f5..d46edc1f1 100644 --- a/docs/nuget-org/Publish-a-package.md +++ b/docs/nuget-org/Publish-a-package.md @@ -42,7 +42,7 @@ Next, you can either upload the package through the nuget.org web portal, push t ### Command line To push packages to nuget.org, you first need an API key, which is created on nuget.org. You must use either dotnet.exe (.NET Core), or nuget.exe v4.1.0 or above, which implement the required NuGet protocols. -For more information, see [.NET Core](https://docs.microsoft.com/dotnet/core/install/), [nuget.exe](https://www.nuget.org/downloads), and [NuGet protocols](../api/nuget-protocols.md). +For more information, see [.NET Core](/dotnet/core/install/), [nuget.exe](https://www.nuget.org/downloads), and [NuGet protocols](../api/nuget-protocols.md). #### Create API keys @@ -121,4 +121,4 @@ To assign ownership to a company or group, create a nuget.org account using an e Occasionally, a package may not have an active owner. For example, the original owner may have left the company that produces the package, nuget.org credentials are lost, or earlier bugs in the gallery left a package ownerless. -If you are the rightful owner of a package and need to regain ownership, use the [contact form](https://www.nuget.org/policies/Contact) on nuget.org to explain your situation to the NuGet team. We then follow a process to verify your ownership of the package, including trying to locate the existing owner through the package's Project URL, Twitter, email, or other means. But if all else fails, we can send you a new invite to become an owner. +If you are the rightful owner of a package and need to regain ownership, use the [contact form](https://www.nuget.org/policies/Contact) on nuget.org to explain your situation to the NuGet team. We then follow a process to verify your ownership of the package, including trying to locate the existing owner through the package's Project URL, Twitter, email, or other means. But if all else fails, we can send you a new invite to become an owner. \ No newline at end of file diff --git a/docs/nuget-org/nuget-org-faq.md b/docs/nuget-org/nuget-org-faq.md index ae2d5edd7..783bacbed 100644 --- a/docs/nuget-org/nuget-org-faq.md +++ b/docs/nuget-org/nuget-org-faq.md @@ -223,13 +223,13 @@ If you see an error like below during your login flow with your email account do Your account seems to be previously registered as a personal Microsoft account and it worked fine, however, now it seems like your account has been registered as an "Unmanaged" tenant in the Azure Active Directory (the identity service which we use to authenticate Microsoft accounts). -This could have happened if you or someone from your organization(with @yourdomain.com email address) registered with one of the AAD integrated services or did a [self-service signup for Azure Active Directory](https://docs.microsoft.com/azure/active-directory/users-groups-roles/directory-self-service-signup), which creates such an "Unmanaged" tenant for the used Microsoft account domain(@yourdomain.com in your case). +This could have happened if you or someone from your organization(with @yourdomain.com email address) registered with one of the AAD integrated services or did a [self-service signup for Azure Active Directory](/azure/active-directory/users-groups-roles/directory-self-service-signup), which creates such an "Unmanaged" tenant for the used Microsoft account domain(@yourdomain.com in your case). **What can I do to recover my account?** At this moment there is not a way for us (NuGet.org) to authenticate accounts with such "Unmanaged" tenant accounts in Azure Active directory. We are looking in to a better way to authenticate such accounts. -If you want to login to NuGet.org with your Microsoft account(@yourdomain.com), you(or an administrator at your company) will need to claim the ownership of the AAD by doing a DNS validation to authenticate users with email address "@yourdomain.com". Please follow the steps for [domains admin takeover](https://docs.microsoft.com/azure/active-directory/users-groups-roles/domains-admin-takeover) documented by the Azure Active directory. Once this is done, your normal login should start working. +If you want to login to NuGet.org with your Microsoft account(@yourdomain.com), you(or an administrator at your company) will need to claim the ownership of the AAD by doing a DNS validation to authenticate users with email address "@yourdomain.com". Please follow the steps for [domains admin takeover](/azure/active-directory/users-groups-roles/domains-admin-takeover) documented by the Azure Active directory. Once this is done, your normal login should start working. **I don’t want to do all that, what is the other way to recover my account?** @@ -261,4 +261,4 @@ Follow the following steps to proceed with account deletion. 1. [Login to NuGet.org](https://www.nuget.org/users/account/LogOn) with the account you wish to delete. 2. Click on this url: [https://www.nuget.org/account/delete](https://www.nuget.org/account/delete) and follow the steps to submit the request for deleting the account. -Our customer support will process this request and perform the account deletion. +Our customer support will process this request and perform the account deletion. \ No newline at end of file diff --git a/docs/policies/Ecosystem.md b/docs/policies/Ecosystem.md index cbe1f8b02..a3857c763 100644 --- a/docs/policies/Ecosystem.md +++ b/docs/policies/Ecosystem.md @@ -63,7 +63,7 @@ These are tools and utilities built on NuGet: ## Training materials and references -Using a new tool or technology usually comes with a learning curve. Luckily for you, NuGet has no steep learning curve it all! In fact, anyone can [get started consuming packages](../quickstart/use-a-package.md) quickly. +Using a new tool or technology usually comes with a learning curve. Luckily for you, NuGet has no steep learning curve it all! In fact, anyone can [get started consuming packages](../quickstart/install-and-use-a-package-in-visual-studio.md) quickly. That said, authoring packages–and especially good packages–along with embracing NuGet in automated build and deployment processes, requires spending a little more time with the following resources: @@ -81,4 +81,4 @@ NuDoq regularly polls the nuget.org gallery server for the latest package update ## Adding your project -If you have a NuGet ecosystem project that would be a valuable addition to this page, please submit a pull request with an edit to this page. +If you have a NuGet ecosystem project that would be a valuable addition to this page, please submit a pull request with an edit to this page. \ No newline at end of file diff --git a/docs/reference/PowerShell-Reference.md b/docs/reference/PowerShell-Reference.md index 201fbe075..7924e5174 100644 --- a/docs/reference/PowerShell-Reference.md +++ b/docs/reference/PowerShell-Reference.md @@ -39,7 +39,7 @@ For complete, detailed help on any of these commands within the console, just ru Get-Help -full ``` -All Package Manager Console commands support the following [common PowerShell parameters](https://go.microsoft.com/fwlink/?LinkID=113216): +All Package Manager Console commands support the following [common PowerShell parameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters): - Debug - ErrorAction @@ -51,4 +51,4 @@ All Package Manager Console commands support the following [common PowerShell pa - WarningAction - WarningVariable -For details, refer to [about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216) in the PowerShell documentation. +For details, refer to [about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters) in the PowerShell documentation. \ No newline at end of file diff --git a/docs/reference/cli-reference/cli-ref-list.md b/docs/reference/cli-reference/cli-ref-list.md index c2e5572eb..803c84d7e 100644 --- a/docs/reference/cli-reference/cli-ref-list.md +++ b/docs/reference/cli-reference/cli-ref-list.md @@ -19,7 +19,7 @@ Displays a list of packages from a given source. If no sources are specified, al nuget list [search terms] [options] ``` -where the optional search terms will filter the displayed list. [Search terms](/nuget/consume-packages/finding-and-choosing-packages#search-syntax) are applied to the names of packages, tags, and package descriptions just as they are when using them on nuget.org. +where the optional search terms will filter the displayed list. [Search terms](../../consume-packages/finding-and-choosing-packages.md#search-syntax) are applied to the names of packages, tags, and package descriptions just as they are when using them on nuget.org. ## Options @@ -82,4 +82,4 @@ nuget list JSON -AllVersions -Source "https://nuget.org/api/v2" List JSON-related packages from multiple sources/feeds: ``` nuget list JSON -Source "https://nuget.org/api/v2" -Source "https://other-feed-url-goes-here/" -``` +``` \ No newline at end of file diff --git a/docs/reference/cli-reference/cli-ref-long-path.md b/docs/reference/cli-reference/cli-ref-long-path.md index 4ab5334e5..44e9fa572 100644 --- a/docs/reference/cli-reference/cli-ref-long-path.md +++ b/docs/reference/cli-reference/cli-ref-long-path.md @@ -35,5 +35,4 @@ Steps: > > - Dotnet CLI supports long paths regardless of the operating system or version. > - Visual Studio or `msbuild -t:restore` does not yet support long paths. -> - Software that uses NuGet Libraries to execute restore and other commands, will support long paths on the same systems that NuGet.exe works on, if they also set `longPathAware` in their windows manifest and configure `UseLegacyPathHandling` to `false` via App.Config [See more information](https://blogs.msdn.microsoft.com/jeremykuhne/2016/07/30/net-4-6-2-and-long-paths-on-windows-10/) - +> - Software that uses NuGet Libraries to execute restore and other commands, will support long paths on the same systems that NuGet.exe works on, if they also set `longPathAware` in their windows manifest and configure `UseLegacyPathHandling` to `false` via App.Config [See more information](/archive/blogs/jeremykuhne/net-4-6-2-and-long-paths-on-windows-10) \ No newline at end of file diff --git a/docs/reference/ps-reference/ps-ref-add-bindingredirect.md b/docs/reference/ps-reference/ps-ref-add-bindingredirect.md index 0d02fd24a..5e9cafc88 100644 --- a/docs/reference/ps-reference/ps-ref-add-bindingredirect.md +++ b/docs/reference/ps-reference/ps-ref-add-bindingredirect.md @@ -34,7 +34,7 @@ None of these parameters accept pipeline input or wildcard characters. ## Common Parameters -`Add-BindingRedirect` supports the following [common PowerShell parameters](https://go.microsoft.com/fwlink/?LinkID=113216): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. +`Add-BindingRedirect` supports the following [common PowerShell parameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. ## Examples @@ -42,4 +42,4 @@ None of these parameters accept pipeline input or wildcard characters. Add-BindingRedirect MyProject Add-BindingRedirect -ProjectName MyProject -``` +``` \ No newline at end of file diff --git a/docs/reference/ps-reference/ps-ref-find-package.md b/docs/reference/ps-reference/ps-ref-find-package.md index 2338936b0..27f2a9958 100644 --- a/docs/reference/ps-reference/ps-ref-find-package.md +++ b/docs/reference/ps-reference/ps-ref-find-package.md @@ -37,7 +37,7 @@ None of these parameters accept pipeline input or wildcard characters. ## Common Parameters -`Find-Package` supports the following [common PowerShell parameters](https://go.microsoft.com/fwlink/?LinkID=113216): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. +`Find-Package` supports the following [common PowerShell parameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. ## Examples @@ -54,4 +54,4 @@ Find-Package logging -First 100 # List all versions of the package with the ID of "jquery" Find-Package jquery -AllVersions -ExactMatch -``` +``` \ No newline at end of file diff --git a/docs/reference/ps-reference/ps-ref-get-package.md b/docs/reference/ps-reference/ps-ref-get-package.md index fcc7a5e5c..e49fbc49c 100644 --- a/docs/reference/ps-reference/ps-ref-get-package.md +++ b/docs/reference/ps-reference/ps-ref-get-package.md @@ -42,7 +42,7 @@ None of these parameters accept pipeline input or wildcard characters. ## Common Parameters -`Get-Package` supports the following [common PowerShell parameters](https://go.microsoft.com/fwlink/?LinkID=113216): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. +`Get-Package` supports the following [common PowerShell parameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. ## Examples @@ -70,4 +70,4 @@ Get-Package -Updates # Lists packages installed in a specific project that have available updates Get-Package -Updates -ProjectName MyProject -``` +``` \ No newline at end of file diff --git a/docs/reference/ps-reference/ps-ref-get-project.md b/docs/reference/ps-reference/ps-ref-get-project.md index f39141e6a..c828f8cac 100644 --- a/docs/reference/ps-reference/ps-ref-get-project.md +++ b/docs/reference/ps-reference/ps-ref-get-project.md @@ -30,7 +30,7 @@ None of these parameters accept pipeline input or wildcard characters. ## Common Parameters -`Get-Project` supports the following [common PowerShell parameters](https://go.microsoft.com/fwlink/?LinkID=113216): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. +`Get-Project` supports the following [common PowerShell parameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. ## Examples diff --git a/docs/reference/ps-reference/ps-ref-install-package.md b/docs/reference/ps-reference/ps-ref-install-package.md index a1fbf302c..ac8eb3953 100644 --- a/docs/reference/ps-reference/ps-ref-install-package.md +++ b/docs/reference/ps-reference/ps-ref-install-package.md @@ -45,7 +45,7 @@ None of these parameters accept pipeline input or wildcard characters. ## Common Parameters -`Install-Package` supports the following [common PowerShell parameters](https://go.microsoft.com/fwlink/?LinkID=113216): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. +`Install-Package` supports the following [common PowerShell parameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. ## Examples @@ -69,4 +69,4 @@ Install-Package c:\temp\packages\jQuery.1.10.2.nupkg # Installs the specific online package # Note: the URL must end with ".nupkg" Install-Package https://globalcdn.nuget.org/packages/microsoft.aspnet.mvc.5.2.3.nupkg -``` +``` \ No newline at end of file diff --git a/docs/reference/ps-reference/ps-ref-open-packagepage.md b/docs/reference/ps-reference/ps-ref-open-packagepage.md index fee8b4c33..81469c8b6 100644 --- a/docs/reference/ps-reference/ps-ref-open-packagepage.md +++ b/docs/reference/ps-reference/ps-ref-open-packagepage.md @@ -35,7 +35,7 @@ None of these parameters accept pipeline input or wildcard characters. ## Common Parameters -`Open-PackagePage` supports the following [common PowerShell parameters](https://go.microsoft.com/fwlink/?LinkID=113216): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. +`Open-PackagePage` supports the following [common PowerShell parameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. ## Examples diff --git a/docs/reference/ps-reference/ps-ref-register-tabexpansion.md b/docs/reference/ps-reference/ps-ref-register-tabexpansion.md index e8bf1c0c9..641fc197e 100644 --- a/docs/reference/ps-reference/ps-ref-register-tabexpansion.md +++ b/docs/reference/ps-reference/ps-ref-register-tabexpansion.md @@ -30,7 +30,7 @@ None of these parameters accept pipeline input or wildcard characters. ## Common Parameters -`Register-TabExpansion` supports the following [common PowerShell parameters](https://go.microsoft.com/fwlink/?LinkID=113216): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. +`Register-TabExpansion` supports the following [common PowerShell parameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. ## Examples @@ -44,4 +44,4 @@ Register-TabExpansion Update-Package @{'ProjectName' = {'EventManager', 'Utiliti The developer can then type `Update-Package -ProjectName `, press Tab, and see the expansions offered as auto-completion options: -![Example of using Register-TabExpansion](media/Register-TabExpansion-Example.png) +![Example of using Register-TabExpansion](media/Register-TabExpansion-Example.png) \ No newline at end of file diff --git a/docs/reference/ps-reference/ps-ref-sync-package.md b/docs/reference/ps-reference/ps-ref-sync-package.md index d1ee60b3e..2297e0cd9 100644 --- a/docs/reference/ps-reference/ps-ref-sync-package.md +++ b/docs/reference/ps-reference/ps-ref-sync-package.md @@ -39,7 +39,7 @@ None of these parameters accept pipeline input or wildcard characters. ## Common Parameters -`Sync-Package` supports the following [common PowerShell parameters](https://go.microsoft.com/fwlink/?LinkID=113216): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. +`Sync-Package` supports the following [common PowerShell parameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. ## Examples @@ -55,4 +55,4 @@ Sync-Package Microsoft.Aspnet.Mvc -IgnoreDependencies # Sync jQuery.Validation and install the highest version of jQuery (a dependency) from the package source Sync-Package jQuery.Validation -DependencyVersion highest -``` +``` \ No newline at end of file diff --git a/docs/reference/ps-reference/ps-ref-uninstall-package.md b/docs/reference/ps-reference/ps-ref-uninstall-package.md index f2aa07c79..d82637602 100644 --- a/docs/reference/ps-reference/ps-ref-uninstall-package.md +++ b/docs/reference/ps-reference/ps-ref-uninstall-package.md @@ -37,7 +37,7 @@ None of these parameters accept pipeline input or wildcard characters. ## Common Parameters -`Uninstall-Package` supports the following [common PowerShell parameters](https://go.microsoft.com/fwlink/?LinkID=113216): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. +`Uninstall-Package` supports the following [common PowerShell parameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. ## Examples @@ -50,4 +50,4 @@ Uninstall-Package Elmah -RemoveDependencies # Uninstalls the Elmah package even if another package depends on it Uninstall-Package Elmah -Force -``` +``` \ No newline at end of file diff --git a/docs/reference/ps-reference/ps-ref-update-package.md b/docs/reference/ps-reference/ps-ref-update-package.md index 84eb93298..cd33bcadb 100644 --- a/docs/reference/ps-reference/ps-ref-update-package.md +++ b/docs/reference/ps-reference/ps-ref-update-package.md @@ -49,7 +49,7 @@ None of these parameters accept pipeline input or wildcard characters. ### Common Parameters -`Update-Package` supports the following [common PowerShell parameters](https://go.microsoft.com/fwlink/?LinkID=113216): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. +`Update-Package` supports the following [common PowerShell parameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. ### Examples @@ -83,4 +83,4 @@ Update-Package Elmah -ProjectName MyProject -reinstall # Reinstall the same version of the original package without touching dependencies. Update-Package ELmah –reinstall -ignoreDependencies -``` +``` \ No newline at end of file diff --git a/docs/release-notes/NuGet-1.8.md b/docs/release-notes/NuGet-1.8.md index 240ae290f..a8aaf490b 100644 --- a/docs/release-notes/NuGet-1.8.md +++ b/docs/release-notes/NuGet-1.8.md @@ -34,7 +34,7 @@ We have since released a hotfix that addresses this issue. By updating NuGet th ### Satellite Packages for Localized Resources NuGet 1.8 now supports the ability to create separate packages for localized resources, similar to the satellite assembly capabilities of the .NET Framework. A satellite package is created in the same way as any other NuGet package with the addition of a few conventions: -* The satellite package ID and file name should include a suffix that matches one of the standard [culture strings used by the .NET Framework](https://docs.microsoft.com/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c). +* The satellite package ID and file name should include a suffix that matches one of the standard [culture strings used by the .NET Framework](/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c). * In its `.nuspec` file, the satellite package should define a language element with the same culture string used in the ID * The satellite package should define a dependency in its `.nuspec` file to its core package, which is simply the package with the same ID minus the language suffix. The core package needs to be available in the repository for successful installation. @@ -72,4 +72,4 @@ By modifying the install command to download and install packages in parallel, N ## Bug Fixes NuGet 1.8 includes quite a few bug fixes with an emphasis on the package manager console and package restore workflow, particularly as it relates to package restore consent and Windows 8 Express integration. -For a full list of work items fixed in NuGet 1.8, please view the [NuGet Issue Tracker for this release](http://nuget.codeplex.com/workitem/list/advanced?keyword=&status=Closed&type=All&priority=All&release=NuGet%201.8&assignedTo=All&component=All&sortField=Votes&sortDirection=Descending&page=0). +For a full list of work items fixed in NuGet 1.8, please view the [NuGet Issue Tracker for this release](http://nuget.codeplex.com/workitem/list/advanced?keyword=&status=Closed&type=All&priority=All&release=NuGet%201.8&assignedTo=All&component=All&sortField=Votes&sortDirection=Descending&page=0). \ No newline at end of file diff --git a/docs/release-notes/NuGet-2.6.md b/docs/release-notes/NuGet-2.6.md index 2e17a2d6e..35f426b71 100644 --- a/docs/release-notes/NuGet-2.6.md +++ b/docs/release-notes/NuGet-2.6.md @@ -67,7 +67,7 @@ applications in your project. #### What you can do with XDT -One of XDT’s greatest strengths is its [simple but powerful syntax](https://docs.microsoft.com/previous-versions/aspnet/dd465326(v=vs.110)) +One of XDT’s greatest strengths is its [simple but powerful syntax](/previous-versions/aspnet/dd465326(v=vs.110)) for manipulating the structure of an XML DOM. Rather than simply overlaying one fixed document structure onto another structure, XDT provides controls for matching elements in a variety of ways, from simple attribute name matching to full XPath support. Once a matching element or diff --git a/docs/release-notes/NuGet-5.0-RTM.md b/docs/release-notes/NuGet-5.0-RTM.md index 2890058dd..72bfbdc88 100644 --- a/docs/release-notes/NuGet-5.0-RTM.md +++ b/docs/release-notes/NuGet-5.0-RTM.md @@ -22,11 +22,11 @@ NuGet distribution vehicles: ## Summary: What's New in 5.0 -* Support for restoring [filtered solutions](https://docs.microsoft.com/visualstudio/ide/filtered-solutions?view=vs-2019) in Visual Studio 2019 - [#5820](https://github.com/NuGet/Home/issues/5820) +* Support for restoring [filtered solutions](/visualstudio/ide/filtered-solutions?view=vs-2019) in Visual Studio 2019 - [#5820](https://github.com/NuGet/Home/issues/5820) * `BuildTransitive` folder enables packages to transitively contribute targets/props to the host project - [#6091](https://github.com/NuGet/Home/issues/6091) * Better support for PackageReference scenarios in NuGet IVs APIs - [#7005](https://github.com/NuGet/Home/issues/7005), [#7493](https://github.com/NuGet/Home/issues/7493) * `nuget.exe pack project.json` has been deprecated - [#7928](https://github.com/NuGet/Home/issues/7928) -* Gen 1 Credential Provider plugin has been superseded by [Gen 2](https://aka.ms/nuget-cross-platform-authentication-plugin) and will soon be deprecated - [#7819](https://github.com/NuGet/Home/issues/7819) +* Gen 1 Credential Provider plugin has been superseded by [Gen 2](../reference/extensibility/nuget-cross-platform-authentication-plugin.md) and will soon be deprecated - [#7819](https://github.com/NuGet/Home/issues/7819) ## Issues fixed in this release @@ -167,4 +167,4 @@ Disable the usage of the fallback folder by setting the `RestoreAdditionalProjec `` -Use this with caution as packages that would be restored from the fallback folder will now be downloaded from NuGet.org. +Use this with caution as packages that would be restored from the fallback folder will now be downloaded from NuGet.org. \ No newline at end of file diff --git a/docs/resources/NuGet-FAQ.md b/docs/resources/NuGet-FAQ.md index f9a7069cb..6186164da 100644 --- a/docs/resources/NuGet-FAQ.md +++ b/docs/resources/NuGet-FAQ.md @@ -36,7 +36,7 @@ For more information, see [Finding and choosing packages](../consume-packages/fi - Visual Studio on Windows supports the [Package Manager UI](../consume-packages/install-use-packages-visual-studio.md) and the [Package Manager Console](../consume-packages/install-use-packages-powershell.md). - Visual Studio for Mac has built-in NuGet capabilities as described on [Including a NuGet package in your project](/visualstudio/mac/nuget-walkthrough). - Visual Studio Code (all platforms) does not have any direct NuGet integration. Use the [NuGet CLI](../reference/nuget-exe-cli-reference.md) or the [dotnet CLI](../reference/dotnet-commands.md). -- Azure DevOps provides [a build step to restore NuGet packages](/vsts/build-release/tasks/package/nuget). You can also [host private NuGet package feeds on Azure DevOps](https://docs.microsoft.com/azure/devops/artifacts/nuget/publish). +- Azure DevOps provides [a build step to restore NuGet packages](/vsts/build-release/tasks/package/nuget). You can also [host private NuGet package feeds on Azure DevOps](/azure/devops/artifacts/nuget/publish). **How do I check the exact version of the NuGet tools that are installed?** @@ -98,7 +98,7 @@ This is a known issue with how PowerShell interacts with a COM object. Try the f **How do I list my package in a feed?** -See [Creating and publishing a package](../quickstart/create-and-publish-a-package.md). +See [Creating and publishing a package](../quickstart/create-and-publish-a-package-using-visual-studio.md). **I have multiple versions of my library that target different versions of the .NET Framework. How do I build a single package that supports this?** @@ -143,4 +143,4 @@ This is not an issue when using PackageReference, as each project file contains **I don't see nuget.org in my list of repositories, how do I get it back?** - Add `https://api.nuget.org/v3/index.json` to your list of sources, or -- Delete `%appdata%\.nuget\NuGet.Config` (Windows) or `~/.nuget/NuGet/NuGet.Config` (Mac/Linux) and let NuGet re-create it. +- Delete `%appdata%\.nuget\NuGet.Config` (Windows) or `~/.nuget/NuGet/NuGet.Config` (Mac/Linux) and let NuGet re-create it. \ No newline at end of file From 47344cc6769fd4e04340ea5c76b7065dff5c4b60 Mon Sep 17 00:00:00 2001 From: John Pavek Date: Tue, 29 Sep 2020 15:42:35 -0500 Subject: [PATCH 164/988] Excruciatingly small typo fix. Fixes the case of the package name. --- docs/reference/ps-reference/ps-ref-update-package.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/reference/ps-reference/ps-ref-update-package.md b/docs/reference/ps-reference/ps-ref-update-package.md index cd33bcadb..1c10d00e2 100644 --- a/docs/reference/ps-reference/ps-ref-update-package.md +++ b/docs/reference/ps-reference/ps-ref-update-package.md @@ -76,11 +76,11 @@ Update-Package Elmah -ProjectName MvcApplication1 -Safe # (subject to version constraints). If this command rolls a dependency back to an earlier version, # use Update-Package to reinstall that one dependency without affecting the # dependent package. -Update-Package ELmah –reinstall +Update-Package Elmah –reinstall # Reinstall the Elmah package in just MyProject Update-Package Elmah -ProjectName MyProject -reinstall # Reinstall the same version of the original package without touching dependencies. -Update-Package ELmah –reinstall -ignoreDependencies -``` \ No newline at end of file +Update-Package Elmah –reinstall -ignoreDependencies +``` From a5457029c85dba49bc4c22443f0f2587f720690a Mon Sep 17 00:00:00 2001 From: Peter Stevenson <2e0pgs@gmail.com> Date: Thu, 8 Oct 2020 21:31:29 +0100 Subject: [PATCH 165/988] Replace typo package.config with packages.config There doesn't appear to actually exsist a `package.config` however `packages.config` does exsist. It seems the only instances for `package.config` on the internet are typos with `packages.config` mentioned on the same page. If you know otherwise let me know. Even the VS settings for default package management format is plural. --- .../migrate-packages-config-to-package-reference.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/consume-packages/migrate-packages-config-to-package-reference.md b/docs/consume-packages/migrate-packages-config-to-package-reference.md index b2f92b947..41a4c599a 100644 --- a/docs/consume-packages/migrate-packages-config-to-package-reference.md +++ b/docs/consume-packages/migrate-packages-config-to-package-reference.md @@ -1,6 +1,6 @@ --- -title: Migrating from package.config to PackageReference formats -description: Details on how to migrate a project from the package.config management format to PackageReference as supported by NuGet 4.0+ and VS2017 and .NET Core 2.0 +title: Migrating from packages.config to PackageReference formats +description: Details on how to migrate a project from the packages.config management format to PackageReference as supported by NuGet 4.0+ and VS2017 and .NET Core 2.0 author: karann-msft ms.author: karann ms.date: 05/24/2019 From 3e045b4aa9d70776b2a0f33d2ef3826a50d610d2 Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri Date: Fri, 9 Oct 2020 14:44:01 -0700 Subject: [PATCH 166/988] verify command is now available on .net core --- docs/reference/cli-reference/cli-ref-verify.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/cli-reference/cli-ref-verify.md b/docs/reference/cli-reference/cli-ref-verify.md index 21d187165..ab6dda990 100644 --- a/docs/reference/cli-reference/cli-ref-verify.md +++ b/docs/reference/cli-reference/cli-ref-verify.md @@ -14,7 +14,7 @@ ms.reviewer: rmpablos Verifies a package. -Verification of signed packages is not yet supported in .NET Core, under Mono, or on non-Windows platforms. +Verification of signed packages is not yet supported under Mono. ## Usage From 36acb18f924c13748fba57877728c8cbbe810c01 Mon Sep 17 00:00:00 2001 From: Rick Anderson <3605364+Rick-Anderson@users.noreply.github.com> Date: Thu, 15 Oct 2020 11:26:37 -1000 Subject: [PATCH 167/988] Update README.md --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 815a12390..71e70cee8 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,8 @@ # docs.microsoft.com-nuget -The NuGet documentation contained in this repository is hosted on docs.microsoft.com/nuget. This repository was migrated from the former NuGetDocs repository, https://github.com/NuGet/NuGetDocs, which is no longer in active use. +The NuGet documentation contained in this repository is hosted on [docs.microsoft.com/nuget](https://docs.microsoft.com/nuget/). This repository was migrated from the former NuGetDocs repository, https://github.com/NuGet/NuGetDocs, which is no longer in active use. -Contributions to this docset are welcome. Please submit PRs to the *master* branch. (The master branch is used for staging changes which is periodically merged into the *live* branch which is what's published to the live docs site.) +Contributions to this docset are welcome. Please submit PRs to the *master* branch. The master branch is used for staging changes which is periodically merged into the *live* branch which is what's published to the live docs site. NuGet follows the [.NET Foundation Contributors Code of Conduct](https://github.com/dotnet/home/blob/master/guidance/be-nice.md). Please take a few minutes to review it. @@ -18,7 +18,7 @@ NuGet follows the [.NET Foundation Contributors Code of Conduct](https://github. ## Contribution workflow -No contribution is too big or too small-- +No contribution is too big or too small. 1. Visit the page to edit on [docs.microsoft.com/nuget](https://docs.microsoft.com/nuget/), then click the **Edit** button on the top right. This brings you to the appropriate markdown page in the repo. 1. Edit the markdown: From bc499c4129d5ef44bdde139c67469201c9b44605 Mon Sep 17 00:00:00 2001 From: Damon Tivel Date: Fri, 16 Oct 2020 11:36:19 -0700 Subject: [PATCH 168/988] Add new author signing certificate --- .../cli-reference/cli-ref-trusted-signers.md | 1 + docs/reference/nuget-config-file.md | 16 +++++++++------- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/docs/reference/cli-reference/cli-ref-trusted-signers.md b/docs/reference/cli-reference/cli-ref-trusted-signers.md index 311eb543d..907ea4c59 100644 --- a/docs/reference/cli-reference/cli-ref-trusted-signers.md +++ b/docs/reference/cli-reference/cli-ref-trusted-signers.md @@ -41,6 +41,7 @@ Registered trusted signers: 2. microsoft [author] Certificate fingerprint(s): SHA256 - 3F9001EA83C560D712C24CF213C3D312CB3BFF51EE89435D3430BD06B5D0EECE + SHA256 - AA12DA22A49BCE7D5C1AE64CC1F3D892F150DA76140F210ABD2CBFFCA2C18A27 3. myUntrustedAuthorSignature [author] Certificate fingerprint(s): diff --git a/docs/reference/nuget-config-file.md b/docs/reference/nuget-config-file.md index 90b6a265d..14332ccab 100644 --- a/docs/reference/nuget-config-file.md +++ b/docs/reference/nuget-config-file.md @@ -277,13 +277,14 @@ If a `certificate` specifies `allowUntrustedRoot` as `true` the given certificat ```xml - - - - - - microsoft;aspnet;nuget - + + + + + + + microsoft;aspnet;nuget + ``` @@ -426,6 +427,7 @@ Below is an example `nuget.config` file that illustrates a number of settings in + From 824fa9664fa7e44d4a38166ef0f0414f651fd7fb Mon Sep 17 00:00:00 2001 From: Youssef Victor <31348972+Youssef1313@users.noreply.github.com> Date: Sat, 17 Oct 2020 16:42:35 +0200 Subject: [PATCH 169/988] Fix typo (my -> by) (#2153) --- docs/reference/errors-and-warnings/NU1605.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/reference/errors-and-warnings/NU1605.md b/docs/reference/errors-and-warnings/NU1605.md index 74535588a..b0169a013 100644 --- a/docs/reference/errors-and-warnings/NU1605.md +++ b/docs/reference/errors-and-warnings/NU1605.md @@ -59,7 +59,9 @@ To work around this issue, add the following PackageReference: ### Issue + The mvc project specified a version constraint on a higher version of a package than restore ultimately resolved. That is because of the [nearest-wins](../../concepts/dependency-resolution.md#nearest-wins) rule - when resolving packages, the version of the nearer package in the graph will override that of the distant package with the same ID. ### Solution -This specific error (with Microsoft.NETCore.App package) is improved my moving your .NET Core SDK to 2.2.100 or later. Microsoft.NETCore.App is an auto-referenced package that the .NET Core SDK before version 3.0.100 chooses to bring in automatically. Also see [Self-contained deployment runtime roll forward](/dotnet/core/deploying/runtime-patch-selection). + +This specific error (with Microsoft.NETCore.App package) is improved by moving your .NET Core SDK to 2.2.100 or later. Microsoft.NETCore.App is an auto-referenced package that the .NET Core SDK before version 3.0.100 chooses to bring in automatically. Also see [Self-contained deployment runtime roll forward](/dotnet/core/deploying/runtime-patch-selection). From 52fff8182ab8256f95e6d2d8abd65a22341edd9a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Sharma?= <737941+loic-sharma@users.noreply.github.com> Date: Mon, 19 Oct 2020 13:08:47 -0700 Subject: [PATCH 170/988] Remove outdated information (#2188) --- docs/nuget-org/Publish-a-package.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/nuget-org/Publish-a-package.md b/docs/nuget-org/Publish-a-package.md index d46edc1f1..4c7c40567 100644 --- a/docs/nuget-org/Publish-a-package.md +++ b/docs/nuget-org/Publish-a-package.md @@ -19,7 +19,7 @@ This article covers publishing to nuget.org; for publishing to Azure Artifacts, ## Publish to nuget.org -For nuget.org, you must sign in with a Microsoft account, with which you'll be asked to register the account with nuget.org. You can also sign in with a nuget.org account created using older versions of the portal. +For nuget.org, you must sign in with a Microsoft account, with which you'll be asked to register the account with nuget.org. ![NuGet sign in location](media/publish_NuGetSignIn.png) @@ -121,4 +121,4 @@ To assign ownership to a company or group, create a nuget.org account using an e Occasionally, a package may not have an active owner. For example, the original owner may have left the company that produces the package, nuget.org credentials are lost, or earlier bugs in the gallery left a package ownerless. -If you are the rightful owner of a package and need to regain ownership, use the [contact form](https://www.nuget.org/policies/Contact) on nuget.org to explain your situation to the NuGet team. We then follow a process to verify your ownership of the package, including trying to locate the existing owner through the package's Project URL, Twitter, email, or other means. But if all else fails, we can send you a new invite to become an owner. \ No newline at end of file +If you are the rightful owner of a package and need to regain ownership, use the [contact form](https://www.nuget.org/policies/Contact) on nuget.org to explain your situation to the NuGet team. We then follow a process to verify your ownership of the package, including trying to locate the existing owner through the package's Project URL, Twitter, email, or other means. But if all else fails, we can send you a new invite to become an owner. From aef58a3069439407aa54ed7f4bcc6900e80c0cff Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Mon, 19 Oct 2020 18:56:03 -0400 Subject: [PATCH 171/988] Update docs/consume-packages/Package-Restore.md Co-authored-by: Andy Zivkovic --- docs/consume-packages/Package-Restore.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Package-Restore.md b/docs/consume-packages/Package-Restore.md index 68c5d9bf6..6b9352559 100644 --- a/docs/consume-packages/Package-Restore.md +++ b/docs/consume-packages/Package-Restore.md @@ -164,7 +164,7 @@ To restore packages listed in the project file with PackageReference, use the th Make sure that the MSBuild output indicates that the build completed successfully. > [!Note] -> msbuild has a `-restore` switch which will run `Restore` and then build. See [Restoring and building with one MSBuild command](/nuget/reference/msbuild-targets#restoring-and-building-with-one-msbuild-command). +> msbuild has a `-restore` switch which will run `Restore`, reload the project, and then build. See [Restoring and building with one MSBuild command](/nuget/reference/msbuild-targets#restoring-and-building-with-one-msbuild-command). ```cmd # Will restore the project, then build, since build is the default target. From 7902b2932c7e3a578d0a5bb93c9cdc341607a77b Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Mon, 19 Oct 2020 19:00:55 -0400 Subject: [PATCH 172/988] Update docs/concepts/Package-Versioning.md Co-authored-by: Mike Jones --- docs/concepts/Package-Versioning.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Package-Versioning.md b/docs/concepts/Package-Versioning.md index 67e5b61a6..94eb83b0c 100644 --- a/docs/concepts/Package-Versioning.md +++ b/docs/concepts/Package-Versioning.md @@ -109,7 +109,7 @@ When referring to package dependencies, NuGet supports using interval notation f | [1.0,2.0) | 1.0 ≤ x < 2.0 | Mixed inclusive minimum and exclusive maximum version | | (1.0) | invalid | invalid | -When using the PackageReference format, NuGet also supports using a floating notation, \*, for Major, Minor, Patch, and pre-release suffix parts of the number. Floating versions are not supported with the `packages.config` format. When a floating version is specified the rule is to resolve to the highest existent version that match the version description. Examples of loating versions and the resolutions are below. +When using the PackageReference format, NuGet also supports using a floating notation, \*, for Major, Minor, Patch, and pre-release suffix parts of the number. Floating versions are not supported with the `packages.config` format. When a floating version is specified, the rule is to resolve to the highest existent version that matches the version description. Examples of floating versions and the resolutions are below. > [!Note] > Version ranges in PackageReference include pre-release versions. By design, floating versions do not resolve prerelease versions unless opted into. For the status of the related feature request, see [issue 6434](https://github.com/NuGet/Home/issues/6434#issuecomment-358782297). From 0a29090832d8bb2a9b08c3d6d3b8556081b21b01 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 21 Oct 2020 17:47:35 -0400 Subject: [PATCH 173/988] Update docs/guides/Package-authoring-best-practices.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Loïc Sharma <737941+loic-sharma@users.noreply.github.com> --- docs/guides/Package-authoring-best-practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guides/Package-authoring-best-practices.md b/docs/guides/Package-authoring-best-practices.md index 695c9da9b..56badcf0b 100644 --- a/docs/guides/Package-authoring-best-practices.md +++ b/docs/guides/Package-authoring-best-practices.md @@ -58,7 +58,7 @@ Below is a table mapping and describing available packages metadata elements: | Visual Studio property name | csproj/MSBuild property name | Nuspec property name | Description | |-----------------------------|------------------------------|-----------------------------|-------------------------------------------------------------------------------------------------------------------| -| `Package id` | `PackageId` | `id` | The package identifier. A prefix from the identifier can be reserved if it meets the criteria. | +| `Package id` | `PackageId` | `id` | The package identifier. A prefix from the identifier can be reserved if it meets the criteria. | | `Package Version` | `Version` | `version` | NuGet package version. For more information, see NuGet package version. | | `Authors` | `Authors` | `authors` | A comma-separated list of package authors, matching the profile names on NuGet.org. | | `Description` | `Description` | `description` | A long description of the package displayed in UI. | From e29256011dbc8f22df77d061ffcb4ed84927a801 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 21 Oct 2020 17:50:21 -0400 Subject: [PATCH 174/988] Apply suggestions from code review --- docs/guides/Package-authoring-best-practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guides/Package-authoring-best-practices.md b/docs/guides/Package-authoring-best-practices.md index 56badcf0b..751e27175 100644 --- a/docs/guides/Package-authoring-best-practices.md +++ b/docs/guides/Package-authoring-best-practices.md @@ -116,7 +116,7 @@ Example: Copyright (c) Contoso 2020 > [!IMPORTANT] > A project without a license defaults to [exclusive copyright](https://choosealicense.com/no-permission/), making it legally impossible for other people to use. -✔️ CONSIDER using a license expression (SPDX identifier). +✔️ CONSIDER using a license expression ([SPDX license](https://spdx.org/licenses/) identifier). > License expressions are surfaced the most clearly to package consumers and make it more obvious if the license has changed with a new release. ✔️ CONSIDER specifying an MIT license. From e3994ba2e65a9e938c4c0e0bfc08dc86b80061d2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Sharma?= <737941+loic-sharma@users.noreply.github.com> Date: Wed, 21 Oct 2020 14:59:36 -0700 Subject: [PATCH 175/988] Add link to our license docs --- .../create-and-publish-a-package-using-the-dotnet-cli.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md index 058a5d11f..ebdd36583 100644 --- a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md +++ b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md @@ -119,6 +119,7 @@ To explore more that NuGet has to offer, select the links below. - [Pre-release Packages](../create-packages/Prerelease-Packages.md) - [Support multiple target frameworks](../create-packages/multiple-target-frameworks-project-file.md) - [Package versioning](../concepts/package-versioning.md) +- [Adding a license expression or file](../reference/msbuild-targets#packing-a-license-expression-or-a-license-file) - [Creating localized packages](../create-packages/creating-localized-packages.md) - [Creating symbol packages](../create-packages/symbol-packages-snupkg.md) - [Signing packages](../create-packages/Sign-a-package.md) From f93e0b216691410acae78232393d94cfa239381a Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 21 Oct 2020 20:35:37 -0400 Subject: [PATCH 176/988] some license area changes --- docs/guides/Package-authoring-best-practices.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/guides/Package-authoring-best-practices.md b/docs/guides/Package-authoring-best-practices.md index 751e27175..9637187b0 100644 --- a/docs/guides/Package-authoring-best-practices.md +++ b/docs/guides/Package-authoring-best-practices.md @@ -86,10 +86,11 @@ If you're publishing a completely new package: ### Package Version -✔️ CONSIDER using [SemVer 2.0.0](https://semver.org/) to version your NuGet package. +✔️ CONSIDER using [SemVer](https://semver.org/) to version your NuGet package. > Essentially, this means using the Major.Minor.Patch[-prerelease] format. ✔️ DO include a pre-release suffix when releasing a non-stable package. +TODO: Include and example and link to https://docs.microsoft.com/en-us/dotnet/standard/library-guidance/nuget#pre-release-packages somewhere See the [.NET library versioning guide](https://docs.microsoft.com/en-us/dotnet/standard/library-guidance/versioning) for more advanced guidance including assembly versioning. @@ -119,7 +120,7 @@ Example: Copyright (c) Contoso 2020 ✔️ CONSIDER using a license expression ([SPDX license](https://spdx.org/licenses/) identifier). > License expressions are surfaced the most clearly to package consumers and make it more obvious if the license has changed with a new release. -✔️ CONSIDER specifying an MIT license. +✔️ CONSIDER [choosing an open source license](https://choosealicense.com/) if your project is open source. > If you want your package as to be usable by as many consumers as possible, the MIT license is a very well known non-restrictive license. ❌ DO NOT use the deprecated `LicenseUrl` metadata property. From 7b86552602b812d7a1317d981ccbfb182c5bbabb Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 21 Oct 2020 21:16:38 -0400 Subject: [PATCH 177/988] License best practices update --- .../Package-authoring-best-practices.md | 23 +++++++++++++------ 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/docs/guides/Package-authoring-best-practices.md b/docs/guides/Package-authoring-best-practices.md index 9637187b0..5e7e7c0fa 100644 --- a/docs/guides/Package-authoring-best-practices.md +++ b/docs/guides/Package-authoring-best-practices.md @@ -113,19 +113,28 @@ Example: Copyright (c) Contoso 2020 ### Licensing -✔️ DO specify a valid license for your package. +✔️ DO [include a valid license expression or license file in your package](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file). > [!IMPORTANT] > A project without a license defaults to [exclusive copyright](https://choosealicense.com/no-permission/), making it legally impossible for other people to use. -✔️ CONSIDER using a license expression ([SPDX license](https://spdx.org/licenses/) identifier). -> License expressions are surfaced the most clearly to package consumers and make it more obvious if the license has changed with a new release. - -✔️ CONSIDER [choosing an open source license](https://choosealicense.com/) if your project is open source. -> If you want your package as to be usable by as many consumers as possible, the MIT license is a very well known non-restrictive license. - ❌ DO NOT use the deprecated `LicenseUrl` metadata property. > This presents legal ambiguity as license changes at the URL will retroactively change the displayed license for previous package versions. +#### If your package is open source: + +✔️ DO [choose an open source license](https://choosealicense.com/) to make your package open source. +> *"Open source licenses are licenses that comply with the Open Source Definition — in brief, they allow software to be freely used, modified, and shared."* - Open Source Initiative. To learn more about open source software and the Open Source Initiative, check out https://opensource.org/. + +✔️ CONSIDER [including a license expression in your package](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file). +> License expressions are surfaced the most clearly and make it more obvious to consumers if they can use your package or if the license has changed. +> [!Note] +> NuGet.org only accepts license expressions that are approved by the Open Source Initiative or the Free Software Foundation. + +#### If your package is not open source + +✔️ [include a license file in your package](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file). +> Any valid license file can be added to your package, including non-standard licenses. + ### Project URL ✔️ CONSIDER including a link to an associated project or company website. From 1cb8878084e8d4419439f4b604e30c977c9e7444 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 21 Oct 2020 21:18:33 -0400 Subject: [PATCH 178/988] DO --- docs/guides/Package-authoring-best-practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guides/Package-authoring-best-practices.md b/docs/guides/Package-authoring-best-practices.md index 5e7e7c0fa..a165a140f 100644 --- a/docs/guides/Package-authoring-best-practices.md +++ b/docs/guides/Package-authoring-best-practices.md @@ -132,7 +132,7 @@ Example: Copyright (c) Contoso 2020 #### If your package is not open source -✔️ [include a license file in your package](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file). +✔️ DO [include a license file in your package](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file). > Any valid license file can be added to your package, including non-standard licenses. ### Project URL From 055a17f1915cae13be54c07699c633ea9aedb04f Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 21 Oct 2020 21:20:29 -0400 Subject: [PATCH 179/988] license section change --- docs/guides/Package-authoring-best-practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guides/Package-authoring-best-practices.md b/docs/guides/Package-authoring-best-practices.md index a165a140f..94135ec31 100644 --- a/docs/guides/Package-authoring-best-practices.md +++ b/docs/guides/Package-authoring-best-practices.md @@ -120,7 +120,7 @@ Example: Copyright (c) Contoso 2020 ❌ DO NOT use the deprecated `LicenseUrl` metadata property. > This presents legal ambiguity as license changes at the URL will retroactively change the displayed license for previous package versions. -#### If your package is open source: +#### If your package is [open source](https://opensource.org/osd) ✔️ DO [choose an open source license](https://choosealicense.com/) to make your package open source. > *"Open source licenses are licenses that comply with the Open Source Definition — in brief, they allow software to be freely used, modified, and shared."* - Open Source Initiative. To learn more about open source software and the Open Source Initiative, check out https://opensource.org/. From e8712c506fa840a764da2a0dc7981e1f667f05b9 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 21 Oct 2020 21:29:37 -0400 Subject: [PATCH 180/988] removed hard-coded locales --- .../Package-authoring-best-practices.md | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/docs/guides/Package-authoring-best-practices.md b/docs/guides/Package-authoring-best-practices.md index 94135ec31..8028cc1c4 100644 --- a/docs/guides/Package-authoring-best-practices.md +++ b/docs/guides/Package-authoring-best-practices.md @@ -9,7 +9,7 @@ ms.topic: conceptual # Package authoring best practices -This guidance is intended to give NuGet.org package authors a lightweight end to end reference for creating and publishing high quality packages. It will primarily focus on package-specific best practices such as metadata and packing. For more in-depth suggestions for building high quality libraries, see the .NET [Open-source library guidance](https://docs.microsoft.com/en-us/dotnet/standard/library-guidance/). +This guidance is intended to give NuGet.org package authors a lightweight end to end reference for creating and publishing high quality packages. It will primarily focus on package-specific best practices such as metadata and packing. For more in-depth suggestions for building high quality libraries, see the .NET [Open-source library guidance](https://docs.microsoft.com/dotnet/standard/library-guidance/). ## Types of recommendations @@ -21,7 +21,7 @@ You should almost always follow a **Do** recommendation. For example: On the other hand, **Consider** recommendations should generally be followed, but there are legitimate exceptions to the rule: -✔️ CONSIDER choosing a NuGet package name with a prefix that meets NuGet's prefix reservation [criteria](https://docs.microsoft.com/en-us/nuget/reference/id-prefix-reservation). +✔️ CONSIDER choosing a NuGet package name with a prefix that meets NuGet's prefix reservation [criteria](https://docs.microsoft.com/nuget/reference/id-prefix-reservation). **Avoid** recommendations mention things that are generally not a good idea, but breaking the rule sometimes makes sense: @@ -44,7 +44,7 @@ Highly inclusive packages are cross-platform and compatible with as many framewo ✔️ DO start with including a `netstandard2.0` target. > Most general-purpose libraries should not need APIs outside of .NET Standard 2.0. .NET Standard 2.0 is supported by all modern platforms and is the recommended way to support multiple platforms with one target. -See the .NET [Cross-platform targeting guidance](https://docs.microsoft.com/en-us/dotnet/standard/library-guidance/cross-platform-targeting) for more advanced suggestions regarding cross-platform and multitargeting scenarios. +See the .NET [Cross-platform targeting guidance](https://docs.microsoft.com/dotnet/standard/library-guidance/cross-platform-targeting) for more advanced suggestions regarding cross-platform and multitargeting scenarios. ## Package metadata @@ -79,10 +79,10 @@ If you're publishing a completely new package: ✔️ DO choose a package ID that is unique and clearly differentiated from existing packages on NuGet.org. > You can check if a package ID is unique and differentiable by searching for the ID on NuGet.org or checking if the following link exists: https://www.nuget.org/packages/. -✔️ CONSIDER choosing a NuGet package name with a prefix that meets NuGet's [prefix reservation criteria](https://docs.microsoft.com/en-us/nuget/nuget-org/id-prefix-reservation#id-prefix-reservation-criteria). +✔️ CONSIDER choosing a NuGet package name with a prefix that meets NuGet's [prefix reservation criteria](https://docs.microsoft.com/nuget/nuget-org/id-prefix-reservation#id-prefix-reservation-criteria). > Reserving the prefix ID for your package will let you get the verified check mark: > ![image](media/Verified-check-mark.png) -> Check out the [Package ID prefix reservation docs](https://docs.microsoft.com/en-us/nuget/nuget-org/id-prefix-reservation) to learn more. +> Check out the [Package ID prefix reservation docs](https://docs.microsoft.com/nuget/nuget-org/id-prefix-reservation) to learn more. ### Package Version @@ -90,9 +90,9 @@ If you're publishing a completely new package: > Essentially, this means using the Major.Minor.Patch[-prerelease] format. ✔️ DO include a pre-release suffix when releasing a non-stable package. -TODO: Include and example and link to https://docs.microsoft.com/en-us/dotnet/standard/library-guidance/nuget#pre-release-packages somewhere +TODO: Include and example and link to https://docs.microsoft.com/dotnet/standard/library-guidance/nuget#pre-release-packages somewhere -See the [.NET library versioning guide](https://docs.microsoft.com/en-us/dotnet/standard/library-guidance/versioning) for more advanced guidance including assembly versioning. +See the [.NET library versioning guide](https://docs.microsoft.com/dotnet/standard/library-guidance/versioning) for more advanced guidance including assembly versioning. ### Authors @@ -113,7 +113,7 @@ Example: Copyright (c) Contoso 2020 ### Licensing -✔️ DO [include a valid license expression or license file in your package](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file). +✔️ DO [include a valid license expression or license file in your package](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file). > [!IMPORTANT] > A project without a license defaults to [exclusive copyright](https://choosealicense.com/no-permission/), making it legally impossible for other people to use. @@ -125,14 +125,14 @@ Example: Copyright (c) Contoso 2020 ✔️ DO [choose an open source license](https://choosealicense.com/) to make your package open source. > *"Open source licenses are licenses that comply with the Open Source Definition — in brief, they allow software to be freely used, modified, and shared."* - Open Source Initiative. To learn more about open source software and the Open Source Initiative, check out https://opensource.org/. -✔️ CONSIDER [including a license expression in your package](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file). +✔️ CONSIDER [including a license expression in your package](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file). > License expressions are surfaced the most clearly and make it more obvious to consumers if they can use your package or if the license has changed. > [!Note] > NuGet.org only accepts license expressions that are approved by the Open Source Initiative or the Free Software Foundation. #### If your package is not open source -✔️ DO [include a license file in your package](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file). +✔️ DO [include a license file in your package](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file). > Any valid license file can be added to your package, including non-standard licenses. ### Project URL @@ -156,7 +156,7 @@ Example: Copyright (c) Contoso 2020 ✔️ CONSIDER including a repository type and URL to make it easy for package consumers to view source code, report issues, and view repository documentation (only if public). -✔️ CONSIDER setting up [Source Link](https://docs.microsoft.com/en-us/dotnet/standard/library-guidance/sourcelink) to add source control metadata to your assemblies and NuGet package. +✔️ CONSIDER setting up [Source Link](https://docs.microsoft.com/dotnet/standard/library-guidance/sourcelink) to add source control metadata to your assemblies and NuGet package. > Source Link will automatically adds `Repository URL` and `Repository Type` to the package metadata. It also adds the specific commit associated with your package version. ### Tags From 05a0de4b23555e5e78a8ecc70c1531f319dfa308 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 21 Oct 2020 21:30:42 -0400 Subject: [PATCH 181/988] fixed date --- docs/guides/Package-authoring-best-practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guides/Package-authoring-best-practices.md b/docs/guides/Package-authoring-best-practices.md index 8028cc1c4..c5c643a29 100644 --- a/docs/guides/Package-authoring-best-practices.md +++ b/docs/guides/Package-authoring-best-practices.md @@ -3,7 +3,7 @@ title: Package authoring best practices description: A general guide of best practices for creating high quality NuGet packages. author: chgill-MSFT ms.author: chgill -ms.date: 09/17/20 +ms.date: 09/17/2020 ms.topic: conceptual --- From b138bc1d49fbf13b63d975c581a53be4283b7ebf Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 2 Nov 2020 13:06:01 -0600 Subject: [PATCH 182/988] October 2020 Documentation Merge (#2189) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Update Package-Restore.md * Doc updates for issue: https://github.com/NuGet/docs.microsoft.com-nuget/issues/2088 * Update cli-ref-update.md Update Documentation on cli-ref-update base on Issue #2041 * Update docfx.json * Update docfx.json * Typo in package restore docs Fixes #2164 * Revert word to integrated The context is "integrated", not "unintegrated". Fixed! * Links: NuGet - Pass 1 * Excruciatingly small typo fix. Fixes the case of the package name. * Replace typo package.config with packages.config There doesn't appear to actually exsist a `package.config` however `packages.config` does exsist. It seems the only instances for `package.config` on the internet are typos with `packages.config` mentioned on the same page. If you know otherwise let me know. Even the VS settings for default package management format is plural. * verify command is now available on .net core * Update README.md * Add new author signing certificate * Fix typo (my -> by) (#2153) * Remove outdated information (#2188) * Update docs/consume-packages/Package-Restore.md Co-authored-by: Andy Zivkovic * Update docs/concepts/Package-Versioning.md Co-authored-by: Mike Jones * Add link to our license docs Co-authored-by: Rob Relyea Co-authored-by: Cristina Manu Co-authored-by: Christopher R. Gill Co-authored-by: ThomasSmeets <49551742+ThomasSmeets@users.noreply.github.com> Co-authored-by: David Coulter Co-authored-by: John Pavek Co-authored-by: Peter Stevenson <2e0pgs@gmail.com> Co-authored-by: Kartheek Penagamuri Co-authored-by: Rick Anderson <3605364+Rick-Anderson@users.noreply.github.com> Co-authored-by: Damon Tivel Co-authored-by: Youssef Victor <31348972+Youssef1313@users.noreply.github.com> Co-authored-by: Loïc Sharma <737941+loic-sharma@users.noreply.github.com> Co-authored-by: Andy Zivkovic Co-authored-by: Mike Jones --- README.md | 6 +- docs/api/search-query-service-resource.md | 4 +- docs/concepts/Package-Versioning.md | 31 +++++-- docs/consume-packages/Package-Restore.md | 10 ++- .../install-use-packages-powershell.md | 4 +- ...te-packages-config-to-package-reference.md | 4 +- docs/create-packages/Sign-a-Package.md | 4 +- .../Source-and-Config-File-Transformations.md | 6 +- .../Supporting-Multiple-Target-Frameworks.md | 4 +- .../creating-a-package-msbuild.md | 4 +- docs/docfx.json | 10 ++- docs/guides/Create-UI-Controls.md | 4 +- docs/guides/Create-UWP-Packages-CS.md | 8 +- docs/guides/analyzers-conventions.md | 4 +- docs/index.yml | 82 +++++++++---------- docs/nuget-org/Publish-a-package.md | 4 +- docs/nuget-org/nuget-org-faq.md | 6 +- docs/policies/Ecosystem.md | 4 +- ...-publish-a-package-using-the-dotnet-cli.md | 1 + docs/reference/PowerShell-Reference.md | 4 +- docs/reference/cli-reference/cli-ref-list.md | 4 +- .../cli-reference/cli-ref-long-path.md | 3 +- .../cli-reference/cli-ref-trusted-signers.md | 1 + .../reference/cli-reference/cli-ref-update.md | 4 + .../reference/cli-reference/cli-ref-verify.md | 2 +- docs/reference/errors-and-warnings/NU1605.md | 4 +- docs/reference/nuget-config-file.md | 16 ++-- .../ps-ref-add-bindingredirect.md | 4 +- .../ps-reference/ps-ref-find-package.md | 4 +- .../ps-reference/ps-ref-get-package.md | 4 +- .../ps-reference/ps-ref-get-project.md | 2 +- .../ps-reference/ps-ref-install-package.md | 4 +- .../ps-reference/ps-ref-open-packagepage.md | 2 +- .../ps-ref-register-tabexpansion.md | 4 +- .../ps-reference/ps-ref-sync-package.md | 4 +- .../ps-reference/ps-ref-uninstall-package.md | 4 +- .../ps-reference/ps-ref-update-package.md | 6 +- docs/release-notes/NuGet-1.8.md | 4 +- docs/release-notes/NuGet-2.6.md | 2 +- docs/release-notes/NuGet-5.0-RTM.md | 6 +- docs/resources/NuGet-FAQ.md | 6 +- 41 files changed, 164 insertions(+), 130 deletions(-) diff --git a/README.md b/README.md index 815a12390..71e70cee8 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,8 @@ # docs.microsoft.com-nuget -The NuGet documentation contained in this repository is hosted on docs.microsoft.com/nuget. This repository was migrated from the former NuGetDocs repository, https://github.com/NuGet/NuGetDocs, which is no longer in active use. +The NuGet documentation contained in this repository is hosted on [docs.microsoft.com/nuget](https://docs.microsoft.com/nuget/). This repository was migrated from the former NuGetDocs repository, https://github.com/NuGet/NuGetDocs, which is no longer in active use. -Contributions to this docset are welcome. Please submit PRs to the *master* branch. (The master branch is used for staging changes which is periodically merged into the *live* branch which is what's published to the live docs site.) +Contributions to this docset are welcome. Please submit PRs to the *master* branch. The master branch is used for staging changes which is periodically merged into the *live* branch which is what's published to the live docs site. NuGet follows the [.NET Foundation Contributors Code of Conduct](https://github.com/dotnet/home/blob/master/guidance/be-nice.md). Please take a few minutes to review it. @@ -18,7 +18,7 @@ NuGet follows the [.NET Foundation Contributors Code of Conduct](https://github. ## Contribution workflow -No contribution is too big or too small-- +No contribution is too big or too small. 1. Visit the page to edit on [docs.microsoft.com/nuget](https://docs.microsoft.com/nuget/), then click the **Edit** button on the top right. This brings you to the appropriate markdown page in the repo. 1. Edit the markdown: diff --git a/docs/api/search-query-service-resource.md b/docs/api/search-query-service-resource.md index fe77e4094..1da1eb716 100644 --- a/docs/api/search-query-service-resource.md +++ b/docs/api/search-query-service-resource.md @@ -118,7 +118,7 @@ packageTypes | array of objects | yes | The package types defin On nuget.org, a verified package is one which has a package ID matching a reserved ID prefix and owned by one of the reserved prefix's owners. For more information, see the -[documentation about ID prefix reservation](../reference/id-prefix-reservation.md). +[documentation about ID prefix reservation](../nuget-org/id-prefix-reservation.md). The metadata contained in the search result object is taken from the latest package version. Each item in the `versions` array is a JSON object with the following properties: @@ -141,4 +141,4 @@ name | string | yes | The name of the package type. ### Sample response -[!code-JSON [search-result.json](./_data/search-result.json)] +[!code-JSON [search-result.json](./_data/search-result.json)] \ No newline at end of file diff --git a/docs/concepts/Package-Versioning.md b/docs/concepts/Package-Versioning.md index ad06bdd84..94eb83b0c 100644 --- a/docs/concepts/Package-Versioning.md +++ b/docs/concepts/Package-Versioning.md @@ -109,7 +109,7 @@ When referring to package dependencies, NuGet supports using interval notation f | [1.0,2.0) | 1.0 ≤ x < 2.0 | Mixed inclusive minimum and exclusive maximum version | | (1.0) | invalid | invalid | -When using the PackageReference format, NuGet also supports using a floating notation, \*, for Major, Minor, Patch, and pre-release suffix parts of the number. Floating versions are not supported with the `packages.config` format. +When using the PackageReference format, NuGet also supports using a floating notation, \*, for Major, Minor, Patch, and pre-release suffix parts of the number. Floating versions are not supported with the `packages.config` format. When a floating version is specified, the rule is to resolve to the highest existent version that matches the version description. Examples of floating versions and the resolutions are below. > [!Note] > Version ranges in PackageReference include pre-release versions. By design, floating versions do not resolve prerelease versions unless opted into. For the status of the related feature request, see [issue 6434](https://github.com/NuGet/Home/issues/6434#issuecomment-358782297). @@ -121,29 +121,44 @@ Always specify a version or version range for package dependencies in project fi #### References in project files (PackageReference) ```xml - + - + - + used to guarantee a dependency with a specific bug fix. + Will resolve to the smallest acceptable stable version.--> + recommended because it can be difficult to determine the lowest version. + Will resolve to the smallest acceptable stable version. + --> - + - + ``` +#### Floating version resolutions + +| Version | Versions present on server | Resolution | Reason | Notes | +|----------|--------------|-------------|-------------|-------------| +| * | 1.1.0
1.1.1
1.2.0
1.3.0-alpha | 1.2.0 | The highest stable version. | +| 1.1.* | 1.1.0
1.1.1
1.1.2-alpha
1.2.0-alpha | 1.1.1 | The highest stable version that respects the specified pattern.| +| * - * | 1.1.0
1.1.1
1.1.2-alpha
1.3.0-beta | 1.3.0-beta | The highest version including the not stable versions. | Available in Visual Studio version 16.6, NuGet version 5.6, .NET Core SDK version 3.1.300 | +| 1.1.* - * | 1.1.0
1.1.1
1.1.2-alpha
1.1.2-beta
1.3.0-beta | 1.1.2-beta | The highest version respecting the pattern and including the not stable versions. | Available in Visual Studio version 16.6, NuGet version 5.6, .NET Core SDK version 3.1.300 | + **References in `packages.config`:** In `packages.config`, every dependency is listed with an exact `version` attribute that's used when restoring packages. The `allowedVersions` attribute is used only during update operations to constrain the versions to which the package might be updated. diff --git a/docs/consume-packages/Package-Restore.md b/docs/consume-packages/Package-Restore.md index bc89b8daf..61cdd180b 100644 --- a/docs/consume-packages/Package-Restore.md +++ b/docs/consume-packages/Package-Restore.md @@ -162,6 +162,14 @@ To restore packages listed in the project file with PackageReference, use the th ``` Make sure that the MSBuild output indicates that the build completed successfully. + +> [!Note] +> msbuild has a `-restore` switch which will run `Restore`, reload the project, and then build. See [Restoring and building with one MSBuild command](/nuget/reference/msbuild-targets#restoring-and-building-with-one-msbuild-command). + +```cmd +# Will restore the project, then build, since build is the default target. +msbuild -restore +``` ## Restore using Azure Pipelines @@ -211,7 +219,7 @@ To avoid using the cache for HTTP sources, do one of the following: For NuGet 2.6 and earlier, an MSBuild-integrated package restore was previously supported but that is no longer true. (It was typically enabled by right-clicking a solution in Visual Studio and selecting **Enable NuGet Package Restore**). If your project uses the deprecated MSBuild-integrated package restore, please migrate to automatic package restore. -Projects that use MSBuild-Integrated package restore typically contain a *.nuget* folder with three files: *NuGet.config*, *nuget.exe*, and *NuGet.targets*. The presence of a *NuGet.targets* file determines whether NuGet will continue to use the MSBuild-untegrated approach, so this file must be removed during the migration. +Projects that use MSBuild-Integrated package restore typically contain a *.nuget* folder with three files: *NuGet.config*, *nuget.exe*, and *NuGet.targets*. The presence of a *NuGet.targets* file determines whether NuGet will continue to use the MSBuild-integrated approach, so this file must be removed during the migration. To migrate to automatic package restore: diff --git a/docs/consume-packages/install-use-packages-powershell.md b/docs/consume-packages/install-use-packages-powershell.md index 98b582ae0..c266ac4a4 100644 --- a/docs/consume-packages/install-use-packages-powershell.md +++ b/docs/consume-packages/install-use-packages-powershell.md @@ -163,7 +163,7 @@ $profile C:\Users\\Documents\WindowsPowerShell\NuGet_profile.ps1 ``` -For more details, refer to [Windows PowerShell Profiles](https://technet.microsoft.com/library/bb613488.aspx). +For more details, refer to [Windows PowerShell Profiles](/previous-versions//bb613488(v=vs.85)). ## Use the nuget.exe CLI in the console @@ -172,4 +172,4 @@ To make the [`nuget.exe` CLI](../reference/nuget-exe-cli-reference.md) available ```ps # Other versions are available, see https://www.nuget.org/packages/NuGet.CommandLine/ Install-Package NuGet.CommandLine -Version 4.4.1 -``` +``` \ No newline at end of file diff --git a/docs/consume-packages/migrate-packages-config-to-package-reference.md b/docs/consume-packages/migrate-packages-config-to-package-reference.md index b2f92b947..41a4c599a 100644 --- a/docs/consume-packages/migrate-packages-config-to-package-reference.md +++ b/docs/consume-packages/migrate-packages-config-to-package-reference.md @@ -1,6 +1,6 @@ --- -title: Migrating from package.config to PackageReference formats -description: Details on how to migrate a project from the package.config management format to PackageReference as supported by NuGet 4.0+ and VS2017 and .NET Core 2.0 +title: Migrating from packages.config to PackageReference formats +description: Details on how to migrate a project from the packages.config management format to PackageReference as supported by NuGet 4.0+ and VS2017 and .NET Core 2.0 author: karann-msft ms.author: karann ms.date: 05/24/2019 diff --git a/docs/create-packages/Sign-a-Package.md b/docs/create-packages/Sign-a-Package.md index 1b97641fc..76c20b5f1 100644 --- a/docs/create-packages/Sign-a-Package.md +++ b/docs/create-packages/Sign-a-Package.md @@ -14,7 +14,7 @@ Signed packages allows for content integrity verification checks which provides ## Get a code signing certificate -Valid certificates may be obtained from a public certificate authority such as [Symantec](https://trustcenter.websecurity.symantec.com/process/trust/productOptions?productType=SoftwareValidationClass3), [DigiCert](https://www.digicert.com/code-signing/), [Go Daddy](https://www.godaddy.com/web-security/code-signing-certificate), [Global Sign](https://www.globalsign.com/en/code-signing-certificate/), [Comodo](https://www.comodo.com/e-commerce/code-signing/code-signing-certificate.php), [Certum](https://www.certum.eu/certum/cert,offer_en_open_source_cs.xml), etc. The complete list of certification authorities trusted by Windows can be obtained from [http://aka.ms/trustcertpartners](https://aka.ms/trustcertpartners). +Valid certificates may be obtained from a public certificate authority such as [Symantec](https://trustcenter.websecurity.symantec.com/process/trust/productOptions?productType=SoftwareValidationClass3), [DigiCert](https://www.digicert.com/code-signing/), [Go Daddy](https://www.godaddy.com/web-security/code-signing-certificate), [Global Sign](https://www.globalsign.com/en/code-signing-certificate/), [Comodo](https://www.comodo.com/e-commerce/code-signing/code-signing-certificate.php), [Certum](https://www.certum.eu/certum/cert,offer_en_open_source_cs.xml), etc. The complete list of certification authorities trusted by Windows can be obtained from [http://aka.ms/trustcertpartners](/security/trusted-root/participants-list). You can use self-issued certificates for testing purposes. However, packages signed using self-issued certificates are not accepted by NuGet.org. Learn more about [creating a test certificate](#create-a-test-certificate) @@ -99,4 +99,4 @@ This command creates a testing certificate available in the current user's perso ## Related articles - [Manage package trust boundaries](../consume-packages/installing-signed-packages.md) -- [Signed Packages Reference](../reference/Signed-Packages-Reference.md) +- [Signed Packages Reference](../reference/Signed-Packages-Reference.md) \ No newline at end of file diff --git a/docs/create-packages/Source-and-Config-File-Transformations.md b/docs/create-packages/Source-and-Config-File-Transformations.md index 670b30430..35f81fec2 100644 --- a/docs/create-packages/Source-and-Config-File-Transformations.md +++ b/docs/create-packages/Source-and-Config-File-Transformations.md @@ -47,7 +47,7 @@ The `$rootnamespace$` token is the most commonly used project property; all othe As described in the sections that follow, config file transformations can be done in two ways: - Include `app.config.transform` and `web.config.transform` files in your package's `content` folder, where the `.transform` extension tells NuGet that these files contain the XML to merge with existing config files when the package is installed. When a package is uninstalled, that same XML is removed. -- Include `app.config.install.xdt` and `web.config.install.xdt` files in your package's `content` folder, using [XDT syntax](https://msdn.microsoft.com/library/dd465326.aspx) to describe the desired changes. With this option you can also include a `.uninstall.xdt` file to reverse changes when the package is removed from a project. +- Include `app.config.install.xdt` and `web.config.install.xdt` files in your package's `content` folder, using [XDT syntax](/previous-versions/aspnet/dd465326(v=vs.110)) to describe the desired changes. With this option you can also include a `.uninstall.xdt` file to reverse changes when the package is removed from a project. > [!Note] > Transformations are not applied to `.config` files referenced as a link in Visual Studio. @@ -110,7 +110,7 @@ To see the effect of installing and uninstalling the package, create a new ASP.N > [!Note] > As mentioned in the [package compatibility issues section of the docs for migrating from `packages.config` to `PackageReference`](../consume-packages/migrate-packages-config-to-package-reference.md#package-compatibility-issues), XDT transformations as described below are only supported by `packages.config`. If you add the below files to your package, consumers using your package with `PackageReference` will not have the transformations applied (refer to [this sample](https://github.com/NuGet/Samples/tree/master/XDTransformExample) to make XDT transforms work with`PackageReference`). -You can modify config files using [XDT syntax](https://msdn.microsoft.com/library/dd465326.aspx). You can also have NuGet replace tokens with [project properties](/dotnet/api/vslangproj.projectproperties?view=visualstudiosdk-2017&viewFallbackFrom=netframework-4.7) by including the property name within `$` delimiters (case-insensitive). +You can modify config files using [XDT syntax](/previous-versions/aspnet/dd465326(v=vs.110)). You can also have NuGet replace tokens with [project properties](/dotnet/api/vslangproj.projectproperties?view=visualstudiosdk-2017&viewFallbackFrom=netframework-4.7) by including the property name within `$` delimiters (case-insensitive). For example, the following `app.config.install.xdt` file will insert an `appSettings` element into `app.config` containing the `FullPath`, `FileName`, and `ActiveConfigurationSettings` values from the project: @@ -174,4 +174,4 @@ To remove only the `MyNuModule` element during package uninstall, the `web.confi -``` +``` \ No newline at end of file diff --git a/docs/create-packages/Supporting-Multiple-Target-Frameworks.md b/docs/create-packages/Supporting-Multiple-Target-Frameworks.md index 7ffca75f8..b8ea24e7d 100644 --- a/docs/create-packages/Supporting-Multiple-Target-Frameworks.md +++ b/docs/create-packages/Supporting-Multiple-Target-Frameworks.md @@ -66,7 +66,7 @@ Please note, NuGet always picks these compile or runtime assets from one folder See [Create UWP Packages](../guides/create-uwp-packages.md) for an example of referencing these files in the `.nuspec` manifest. -Also, see [Packing a Windows store app component with NuGet](https://blogs.msdn.microsoft.com/mim/2013/09/02/packaging-a-windows-store-apps-component-with-nuget-part-2) +Also, see [Packing a Windows store app component with NuGet](/archive/blogs/mim/packaging-a-windows-store-apps-component-with-nuget-part-2) ## Matching assembly versions and the target framework in a project @@ -177,4 +177,4 @@ With `packages.config`, content files and PowerShell scripts can be grouped by t If a framework folder is left empty, NuGet doesn't add assembly references or content files or run the PowerShell scripts for that framework. > [!Note] -> Because `init.ps1` is executed at the solution level and not dependent on project, it must be placed directly under the `tools` folder. It's ignored if placed under a framework folder. +> Because `init.ps1` is executed at the solution level and not dependent on project, it must be placed directly under the `tools` folder. It's ignored if placed under a framework folder. \ No newline at end of file diff --git a/docs/create-packages/creating-a-package-msbuild.md b/docs/create-packages/creating-a-package-msbuild.md index a01be312c..19ef818f2 100644 --- a/docs/create-packages/creating-a-package-msbuild.md +++ b/docs/create-packages/creating-a-package-msbuild.md @@ -9,7 +9,7 @@ ms.topic: conceptual # Create a NuGet package using MSBuild -When you create a NuGet package from your code, you package that functionality into a component that can be shared with and used by any number of other developers. This article describes how to create a package using MSBuild. MSBuild comes preinstalled with every Visual Studio workload that contains NuGet. Additionally you can also use MSBuild through the dotnet CLI with [dotnet msbuild](https://docs.microsoft.com/dotnet/core/tools/dotnet-msbuild). +When you create a NuGet package from your code, you package that functionality into a component that can be shared with and used by any number of other developers. This article describes how to create a package using MSBuild. MSBuild comes preinstalled with every Visual Studio workload that contains NuGet. Additionally you can also use MSBuild through the dotnet CLI with [dotnet msbuild](/dotnet/core/tools/dotnet-msbuild). For .NET Core and .NET Standard projects that use the [SDK-style format](../resources/check-project-format.md), and any other SDK-style projects, NuGet uses information in the project file directly to create a package. For a non-SDK-style project that uses ``, NuGet also uses the project file to create a package. @@ -184,4 +184,4 @@ You might also want to extend the capabilities of your package or otherwise supp Finally, there are additional package types to be aware of: - [Native Packages](../guides/native-packages.md) -- [Symbol Packages](../create-packages/symbol-packages-snupkg.md) +- [Symbol Packages](../create-packages/symbol-packages-snupkg.md) \ No newline at end of file diff --git a/docs/docfx.json b/docs/docfx.json index 6e24399e9..bd6eba5ae 100644 --- a/docs/docfx.json +++ b/docs/docfx.json @@ -40,11 +40,13 @@ "ROBOTS": "INDEX,FOLLOW", "ms.topic": "conceptual", "ms.prod": "nuget", - "author": "karann-msft", - "ms.author": "karann", + "author": "JonDouglas", + "ms.author": "jodou", "ms.reviewer": [ - "karann", - "unnir" + "anangaur", + "jodou", + "chgill", + "jiacjian" ], "ms.workload": [ "dotnet", diff --git a/docs/guides/Create-UI-Controls.md b/docs/guides/Create-UI-Controls.md index 23f5e7cd9..592531919 100644 --- a/docs/guides/Create-UI-Controls.md +++ b/docs/guides/Create-UI-Controls.md @@ -89,7 +89,7 @@ Supported formats are `.png`, `.jpg`, `.jpeg`, `.gif`, and `.bmp`. The recommend ![Tool box icon sample](https://raw.githubusercontent.com/NuGet/docs.microsoft.com-nuget/live/docs/guides/media/ColorPicker_16x16x24.bmp) -The pink background is replaced at runtime. The icons are recolored when the Visual Studio theme is changed and that background color is expected. For more information, please reference [Images and Icons for Visual Studio](https://docs.microsoft.com/visualstudio/extensibility/ux-guidelines/images-and-icons-for-visual-studio). +The pink background is replaced at runtime. The icons are recolored when the Visual Studio theme is changed and that background color is expected. For more information, please reference [Images and Icons for Visual Studio](/visualstudio/extensibility/ux-guidelines/images-and-icons-for-visual-studio). In the example below, the project contains an image file named “ManagedPackage.MyCustomControl.png”. @@ -152,4 +152,4 @@ For an example, refer to [MyCustomControl.cs](https://github.com/NuGet/Samples/b ## See also - [Create UWP Packages](create-uwp-packages.md) -- [ExtensionSDKasNuGetPackage sample](https://github.com/NuGet/Samples/tree/master/ExtensionSDKasNuGetPackage) +- [ExtensionSDKasNuGetPackage sample](https://github.com/NuGet/Samples/tree/master/ExtensionSDKasNuGetPackage) \ No newline at end of file diff --git a/docs/guides/Create-UWP-Packages-CS.md b/docs/guides/Create-UWP-Packages-CS.md index e1aa2523e..1cb90780b 100644 --- a/docs/guides/Create-UWP-Packages-CS.md +++ b/docs/guides/Create-UWP-Packages-CS.md @@ -17,7 +17,7 @@ In this walkthrough you create a NuGet package with a C# UWP component (includin 1. Visual Studio 2019. Install the 2019 Community edition for free from [visualstudio.com](https://www.visualstudio.com/); you can use the Professional and Enterprise editions as well. -1. NuGet CLI. Download the latest version of `nuget.exe` from [nuget.org/downloads](https://nuget.org/downloads), saving it to a location of your choice (the download is the `.exe` directly). Then add that location to your PATH environment variable if it isn't already. [More details](/nuget/reference/nuget-exe-cli-reference#windows). +1. NuGet CLI. Download the latest version of `nuget.exe` from [nuget.org/downloads](https://nuget.org/downloads), saving it to a location of your choice (the download is the `.exe` directly). Then add that location to your PATH environment variable if it isn't already. [More details](../reference/nuget-exe-cli-reference.md#windows). ## Create a UWP Windows Runtime component @@ -47,7 +47,7 @@ In this walkthrough you create a NuGet package with a C# UWP component (includin To create the initial `.nuspec` file, do the three steps below. The sections that follow then guide you through other necessary updates. 1. Open a command prompt and navigate to the folder containing `ImageEnhancer.csproj` (this will be a subfolder below where the solution file is). -1. Run the [`NuGet spec`](/nuget/reference/cli-reference/cli-ref-spec) command to generate `ImageEnhancer.nuspec` (the name of the file is taken from the name of the `.csroj` file): +1. Run the [`NuGet spec`](../reference/cli-reference/cli-ref-spec.md) command to generate `ImageEnhancer.nuspec` (the name of the file is taken from the name of the `.csroj` file): ```cli nuget spec @@ -192,7 +192,7 @@ Your final `.nuspec` file should now look like the following, where again YOUR_N ## Package the component -With the completed `.nuspec` referencing all the files you need to include in the package, you're ready to run the [`nuget pack`](/nuget/reference/cli-reference/cli-ref-pack) command: +With the completed `.nuspec` referencing all the files you need to include in the package, you're ready to run the [`nuget pack`](../reference/cli-reference/cli-ref-pack.md) command: ```cli nuget pack ImageEnhancer.nuspec @@ -214,4 +214,4 @@ To make your package available to other developers, follow the instructions on - [Package versioning](../concepts/package-versioning.md) - [Supporting Multiple .NET Framework Versions](../create-packages/supporting-multiple-target-frameworks.md) - [Include MSBuild props and targets in a package](../create-packages/creating-a-package.md#include-msbuild-props-and-targets-in-a-package) -- [Creating Localized Packages](../create-packages/creating-localized-packages.md) +- [Creating Localized Packages](../create-packages/creating-localized-packages.md) \ No newline at end of file diff --git a/docs/guides/analyzers-conventions.md b/docs/guides/analyzers-conventions.md index 8235bafa5..2b6f7085d 100644 --- a/docs/guides/analyzers-conventions.md +++ b/docs/guides/analyzers-conventions.md @@ -9,7 +9,7 @@ ms.topic: conceptual # Analyzer NuGet formats -The .NET Compiler Platform (also known as "Roslyn") allows developers to create [analyzers](https://github.com/dotnet/roslyn/wiki/How-To-Write-a-C%23-Analyzer-and-Code-Fix) that examine the syntax tree and semantics of code as it's being written. This provides developers with a way to create domain-specific analysis tools, such as those that would help guide the use of a particular API or library. You can find more information on the [.NET/Roslyn](https://github.com/dotnet/roslyn/wiki) GitHub wiki. Also see the article, [Use Roslyn to Write a Live Code Analyzer for your API](https://msdn.microsoft.com/magazine/dn879356.aspx) in MSDN Magazine. +The .NET Compiler Platform (also known as "Roslyn") allows developers to create [analyzers](https://github.com/dotnet/roslyn/wiki/How-To-Write-a-C%23-Analyzer-and-Code-Fix) that examine the syntax tree and semantics of code as it's being written. This provides developers with a way to create domain-specific analysis tools, such as those that would help guide the use of a particular API or library. You can find more information on the [.NET/Roslyn](https://github.com/dotnet/roslyn/wiki) GitHub wiki. Also see the article, [Use Roslyn to Write a Live Code Analyzer for your API](/archive/msdn-magazine/2014/special-issue/csharp-and-visual-basic-use-roslyn-to-write-a-live-code-analyzer-for-your-api) in MSDN Magazine. Analyzers themselves are typically packaged and distributed as part of the NuGet packages that implement the API or library in question. @@ -163,4 +163,4 @@ foreach($analyzersPath in $analyzersPaths) } } } -``` +``` \ No newline at end of file diff --git a/docs/index.yml b/docs/index.yml index 90abfe938..e543945d2 100644 --- a/docs/index.yml +++ b/docs/index.yml @@ -15,16 +15,16 @@ highlightedContent: items: - title: What is NuGet? itemType: overview - url: /nuget/what-is-nuget + url: ./what-is-nuget.md - title: Install NuGet client tools itemType: download - url: /nuget/install-nuget-client-tools + url: ./install-nuget-client-tools.md - title: Learn NuGet itemType: video url: https://aka.ms/Nuget101 - title: NuGet.org itemType: overview - url: /nuget/nuget-org/overview-nuget-org + url: ./nuget-org/overview-nuget-org.md conceptualContent: @@ -34,70 +34,70 @@ conceptualContent: links: - text: Install NuGet client tools itemType: download - url: /nuget/install-nuget-client-tools + url: ./install-nuget-client-tools.md - text: Install and use a package - dotnet CLI itemType: quickstart - url: /nuget/quickstart/install-and-use-a-package-using-the-dotnet-cli + url: ./quickstart/install-and-use-a-package-using-the-dotnet-cli.md - text: Install and use a package - Visual Studio itemType: quickstart - url: /nuget/quickstart/install-and-use-a-package-in-visual-studio + url: ./quickstart/install-and-use-a-package-in-visual-studio.md - text: Create a package - dotnet CLI itemType: quickstart - url: /nuget/quickstart/create-and-publish-a-package-using-the-dotnet-cli + url: ./quickstart/create-and-publish-a-package-using-the-dotnet-cli.md - text: Create a package - Visual Studio itemType: quickstart - url: /nuget/quickstart/create-and-publish-a-package-using-visual-studio + url: ./quickstart/create-and-publish-a-package-using-visual-studio.md - text: Create a .NET Framework package - Visual Studio itemType: quickstart - url: /nuget/quickstart/create-and-publish-a-package-using-visual-studio-net-framework + url: ./quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md - title: Consume packages links: - text: Workflow (overview) itemType: overview - url: /nuget/consume-packages/overview-and-workflow + url: ./consume-packages/overview-and-workflow.md - text: Find and choose packages itemType: get-started - url: /nuget/consume-packages/finding-and-choosing-packages + url: ./consume-packages/finding-and-choosing-packages.md - text: Use Visual Studio itemType: how-to-guide - url: /nuget/consume-packages/install-use-packages-visual-studio + url: ./consume-packages/install-use-packages-visual-studio.md - text: Use dotnet CLI itemType: how-to-guide - url: /nuget/consume-packages/install-use-packages-dotnet-cli + url: ./consume-packages/install-use-packages-dotnet-cli.md - text: Use nuget.exe CLI itemType: how-to-guide - url: /nuget/consume-packages/install-use-packages-nuget-cli + url: ./consume-packages/install-use-packages-nuget-cli.md - text: Use Package Manager Console itemType: how-to-guide - url: /nuget/consume-packages/install-use-packages-powershell + url: ./consume-packages/install-use-packages-powershell.md - title: Create packages links: - text: Workflow (overview) itemType: overview - url: /nuget/create-packages/overview-and-workflow + url: ./create-packages/overview-and-workflow.md - text: Use Visual Studio itemType: how-to-guide - url: /nuget/quickstart/create-and-publish-a-package-using-visual-studio + url: ./quickstart/create-and-publish-a-package-using-visual-studio.md - text: Use dotnet CLI itemType: how-to-guide - url: /nuget/create-packages/creating-a-package-dotnet-cli + url: ./create-packages/creating-a-package-dotnet-cli.md - text: Use nuget.exe CLI itemType: how-to-guide - url: /nuget/create-packages/creating-a-package + url: ./create-packages/creating-a-package.md - text: Use MSBuild itemType: how-to-guide - url: /nuget/create-packages/creating-a-package-msbuild + url: ./create-packages/creating-a-package-msbuild.md - text: Support multiple target frameworks itemType: reference - url: /nuget/create-packages/multiple-target-frameworks-project-file + url: ./create-packages/multiple-target-frameworks-project-file.md - title: Publish packages links: - text: Publish to NuGet.org itemType: overview - url: /nuget/nuget-org/publish-a-package + url: ./nuget-org/publish-a-package.md - text: Publish to a private feed itemType: overview - url: /nuget/hosting-packages/overview + url: ./hosting-packages/overview.md additionalContent: sections: @@ -106,43 +106,43 @@ additionalContent: - title: NuGet.org links: - text: Overview - url: /nuget/nuget-org/overview-nuget-org + url: ./nuget-org/overview-nuget-org.md - text: Individual accounts - url: /nuget/nuget-org/individual-accounts + url: ./nuget-org/individual-accounts.md - text: Organizations - url: /nuget/nuget-org/organizations-on-nuget-org + url: ./nuget-org/organizations-on-nuget-org.md - text: API keys - url: /nuget/nuget-org/scoped-api-keys + url: ./nuget-org/scoped-api-keys.md - text: Publish a package - url: /nuget/nuget-org/publish-a-package + url: ./nuget-org/publish-a-package.md - title: Reference links: - text: dotnet CLI - url: /nuget/reference/dotnet-commands + url: ./reference/dotnet-commands.md - text: nuget.exe CLI - url: /nuget/reference/nuget-exe-cli-reference + url: ./reference/nuget-exe-cli-reference.md - text: Package references - url: /nuget/consume-packages/package-references-in-project-files + url: ./consume-packages/package-references-in-project-files.md - text: pack and restore as MSBuild targets - url: /nuget/reference/msbuild-targets + url: ./reference/msbuild-targets.md - text: .nuspec - url: /nuget/reference/nuspec + url: ./reference/nuspec.md - text: nuget.config - url: /nuget/reference/nuget-config-file + url: ./reference/nuget-config-file.md - text: NuGet API - url: /nuget/api/overview + url: ./api/overview.md - title: Resources links: - text: Policies - NuGet - url: /nuget/policies/governance + url: ./policies/governance.md - text: Policies - NuGet.org - url: /nuget/nuget-org/policies/data-requests + url: ./nuget-org/policies/data-requests.md - text: Release notes - url: /nuget/release-notes/known-issues + url: ./release-notes/known-issues.md - text: FAQ - NuGet - url: /nuget/resources/nuget-faq + url: ./resources/nuget-faq.md - text: FAQ - NuGet.org - url: /nuget/nuget-org/nuget-org-faq + url: ./nuget-org/nuget-org-faq.md - footer: "[Blogs](https://devblogs.microsoft.com/nuget/) - [Twitter](https://twitter.com/nuget) - [Stack Overflow](https://stackoverflow.com/questions/tagged/nuget)" + footer: "[Blogs](https://devblogs.microsoft.com/nuget/) - [Twitter](https://twitter.com/nuget) - [Stack Overflow](https://stackoverflow.com/questions/tagged/nuget)" \ No newline at end of file diff --git a/docs/nuget-org/Publish-a-package.md b/docs/nuget-org/Publish-a-package.md index dcc1ee1f5..4c7c40567 100644 --- a/docs/nuget-org/Publish-a-package.md +++ b/docs/nuget-org/Publish-a-package.md @@ -19,7 +19,7 @@ This article covers publishing to nuget.org; for publishing to Azure Artifacts, ## Publish to nuget.org -For nuget.org, you must sign in with a Microsoft account, with which you'll be asked to register the account with nuget.org. You can also sign in with a nuget.org account created using older versions of the portal. +For nuget.org, you must sign in with a Microsoft account, with which you'll be asked to register the account with nuget.org. ![NuGet sign in location](media/publish_NuGetSignIn.png) @@ -42,7 +42,7 @@ Next, you can either upload the package through the nuget.org web portal, push t ### Command line To push packages to nuget.org, you first need an API key, which is created on nuget.org. You must use either dotnet.exe (.NET Core), or nuget.exe v4.1.0 or above, which implement the required NuGet protocols. -For more information, see [.NET Core](https://docs.microsoft.com/dotnet/core/install/), [nuget.exe](https://www.nuget.org/downloads), and [NuGet protocols](../api/nuget-protocols.md). +For more information, see [.NET Core](/dotnet/core/install/), [nuget.exe](https://www.nuget.org/downloads), and [NuGet protocols](../api/nuget-protocols.md). #### Create API keys diff --git a/docs/nuget-org/nuget-org-faq.md b/docs/nuget-org/nuget-org-faq.md index ae2d5edd7..783bacbed 100644 --- a/docs/nuget-org/nuget-org-faq.md +++ b/docs/nuget-org/nuget-org-faq.md @@ -223,13 +223,13 @@ If you see an error like below during your login flow with your email account do Your account seems to be previously registered as a personal Microsoft account and it worked fine, however, now it seems like your account has been registered as an "Unmanaged" tenant in the Azure Active Directory (the identity service which we use to authenticate Microsoft accounts). -This could have happened if you or someone from your organization(with @yourdomain.com email address) registered with one of the AAD integrated services or did a [self-service signup for Azure Active Directory](https://docs.microsoft.com/azure/active-directory/users-groups-roles/directory-self-service-signup), which creates such an "Unmanaged" tenant for the used Microsoft account domain(@yourdomain.com in your case). +This could have happened if you or someone from your organization(with @yourdomain.com email address) registered with one of the AAD integrated services or did a [self-service signup for Azure Active Directory](/azure/active-directory/users-groups-roles/directory-self-service-signup), which creates such an "Unmanaged" tenant for the used Microsoft account domain(@yourdomain.com in your case). **What can I do to recover my account?** At this moment there is not a way for us (NuGet.org) to authenticate accounts with such "Unmanaged" tenant accounts in Azure Active directory. We are looking in to a better way to authenticate such accounts. -If you want to login to NuGet.org with your Microsoft account(@yourdomain.com), you(or an administrator at your company) will need to claim the ownership of the AAD by doing a DNS validation to authenticate users with email address "@yourdomain.com". Please follow the steps for [domains admin takeover](https://docs.microsoft.com/azure/active-directory/users-groups-roles/domains-admin-takeover) documented by the Azure Active directory. Once this is done, your normal login should start working. +If you want to login to NuGet.org with your Microsoft account(@yourdomain.com), you(or an administrator at your company) will need to claim the ownership of the AAD by doing a DNS validation to authenticate users with email address "@yourdomain.com". Please follow the steps for [domains admin takeover](/azure/active-directory/users-groups-roles/domains-admin-takeover) documented by the Azure Active directory. Once this is done, your normal login should start working. **I don’t want to do all that, what is the other way to recover my account?** @@ -261,4 +261,4 @@ Follow the following steps to proceed with account deletion. 1. [Login to NuGet.org](https://www.nuget.org/users/account/LogOn) with the account you wish to delete. 2. Click on this url: [https://www.nuget.org/account/delete](https://www.nuget.org/account/delete) and follow the steps to submit the request for deleting the account. -Our customer support will process this request and perform the account deletion. +Our customer support will process this request and perform the account deletion. \ No newline at end of file diff --git a/docs/policies/Ecosystem.md b/docs/policies/Ecosystem.md index cbe1f8b02..a3857c763 100644 --- a/docs/policies/Ecosystem.md +++ b/docs/policies/Ecosystem.md @@ -63,7 +63,7 @@ These are tools and utilities built on NuGet: ## Training materials and references -Using a new tool or technology usually comes with a learning curve. Luckily for you, NuGet has no steep learning curve it all! In fact, anyone can [get started consuming packages](../quickstart/use-a-package.md) quickly. +Using a new tool or technology usually comes with a learning curve. Luckily for you, NuGet has no steep learning curve it all! In fact, anyone can [get started consuming packages](../quickstart/install-and-use-a-package-in-visual-studio.md) quickly. That said, authoring packages–and especially good packages–along with embracing NuGet in automated build and deployment processes, requires spending a little more time with the following resources: @@ -81,4 +81,4 @@ NuDoq regularly polls the nuget.org gallery server for the latest package update ## Adding your project -If you have a NuGet ecosystem project that would be a valuable addition to this page, please submit a pull request with an edit to this page. +If you have a NuGet ecosystem project that would be a valuable addition to this page, please submit a pull request with an edit to this page. \ No newline at end of file diff --git a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md index 058a5d11f..ebdd36583 100644 --- a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md +++ b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md @@ -119,6 +119,7 @@ To explore more that NuGet has to offer, select the links below. - [Pre-release Packages](../create-packages/Prerelease-Packages.md) - [Support multiple target frameworks](../create-packages/multiple-target-frameworks-project-file.md) - [Package versioning](../concepts/package-versioning.md) +- [Adding a license expression or file](../reference/msbuild-targets#packing-a-license-expression-or-a-license-file) - [Creating localized packages](../create-packages/creating-localized-packages.md) - [Creating symbol packages](../create-packages/symbol-packages-snupkg.md) - [Signing packages](../create-packages/Sign-a-package.md) diff --git a/docs/reference/PowerShell-Reference.md b/docs/reference/PowerShell-Reference.md index 201fbe075..7924e5174 100644 --- a/docs/reference/PowerShell-Reference.md +++ b/docs/reference/PowerShell-Reference.md @@ -39,7 +39,7 @@ For complete, detailed help on any of these commands within the console, just ru Get-Help -full ``` -All Package Manager Console commands support the following [common PowerShell parameters](https://go.microsoft.com/fwlink/?LinkID=113216): +All Package Manager Console commands support the following [common PowerShell parameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters): - Debug - ErrorAction @@ -51,4 +51,4 @@ All Package Manager Console commands support the following [common PowerShell pa - WarningAction - WarningVariable -For details, refer to [about_CommonParameters](https://go.microsoft.com/fwlink/?LinkID=113216) in the PowerShell documentation. +For details, refer to [about_CommonParameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters) in the PowerShell documentation. \ No newline at end of file diff --git a/docs/reference/cli-reference/cli-ref-list.md b/docs/reference/cli-reference/cli-ref-list.md index c2e5572eb..803c84d7e 100644 --- a/docs/reference/cli-reference/cli-ref-list.md +++ b/docs/reference/cli-reference/cli-ref-list.md @@ -19,7 +19,7 @@ Displays a list of packages from a given source. If no sources are specified, al nuget list [search terms] [options] ``` -where the optional search terms will filter the displayed list. [Search terms](/nuget/consume-packages/finding-and-choosing-packages#search-syntax) are applied to the names of packages, tags, and package descriptions just as they are when using them on nuget.org. +where the optional search terms will filter the displayed list. [Search terms](../../consume-packages/finding-and-choosing-packages.md#search-syntax) are applied to the names of packages, tags, and package descriptions just as they are when using them on nuget.org. ## Options @@ -82,4 +82,4 @@ nuget list JSON -AllVersions -Source "https://nuget.org/api/v2" List JSON-related packages from multiple sources/feeds: ``` nuget list JSON -Source "https://nuget.org/api/v2" -Source "https://other-feed-url-goes-here/" -``` +``` \ No newline at end of file diff --git a/docs/reference/cli-reference/cli-ref-long-path.md b/docs/reference/cli-reference/cli-ref-long-path.md index 4ab5334e5..44e9fa572 100644 --- a/docs/reference/cli-reference/cli-ref-long-path.md +++ b/docs/reference/cli-reference/cli-ref-long-path.md @@ -35,5 +35,4 @@ Steps: > > - Dotnet CLI supports long paths regardless of the operating system or version. > - Visual Studio or `msbuild -t:restore` does not yet support long paths. -> - Software that uses NuGet Libraries to execute restore and other commands, will support long paths on the same systems that NuGet.exe works on, if they also set `longPathAware` in their windows manifest and configure `UseLegacyPathHandling` to `false` via App.Config [See more information](https://blogs.msdn.microsoft.com/jeremykuhne/2016/07/30/net-4-6-2-and-long-paths-on-windows-10/) - +> - Software that uses NuGet Libraries to execute restore and other commands, will support long paths on the same systems that NuGet.exe works on, if they also set `longPathAware` in their windows manifest and configure `UseLegacyPathHandling` to `false` via App.Config [See more information](/archive/blogs/jeremykuhne/net-4-6-2-and-long-paths-on-windows-10) \ No newline at end of file diff --git a/docs/reference/cli-reference/cli-ref-trusted-signers.md b/docs/reference/cli-reference/cli-ref-trusted-signers.md index 311eb543d..907ea4c59 100644 --- a/docs/reference/cli-reference/cli-ref-trusted-signers.md +++ b/docs/reference/cli-reference/cli-ref-trusted-signers.md @@ -41,6 +41,7 @@ Registered trusted signers: 2. microsoft [author] Certificate fingerprint(s): SHA256 - 3F9001EA83C560D712C24CF213C3D312CB3BFF51EE89435D3430BD06B5D0EECE + SHA256 - AA12DA22A49BCE7D5C1AE64CC1F3D892F150DA76140F210ABD2CBFFCA2C18A27 3. myUntrustedAuthorSignature [author] Certificate fingerprint(s): diff --git a/docs/reference/cli-reference/cli-ref-update.md b/docs/reference/cli-reference/cli-ref-update.md index 2376f83ec..c49c19c82 100644 --- a/docs/reference/cli-reference/cli-ref-update.md +++ b/docs/reference/cli-reference/cli-ref-update.md @@ -32,6 +32,10 @@ where `` identifies either a `packages.config` or solution file that - **`-ConfigFile`** The NuGet configuration file to apply. If not specified, `%AppData%\NuGet\NuGet.Config` (Windows), or `~/.nuget/NuGet/NuGet.Config` or `~/.config/NuGet/NuGet.Config` (Mac/Linux) is used. + +- **`-DependencyVersion [Lowest, HighestPatch, HighestMinor, Highest, Ignore]`** + + Specifies the version of the dependency packages to use, which can be one of the following:
  • *Lowest* (default): the lowest version
  • *HighestPatch*: the version with the lowest major, lowest minor, highest patch
  • *HighestMinor*: the version with the lowest major, highest minor, highest patch
  • *Highest*: the highest version
  • *Ignore*: No dependency packages will be used
- **`-FileConflictAction [PromptUser, Overwrite, Ignore]`** diff --git a/docs/reference/cli-reference/cli-ref-verify.md b/docs/reference/cli-reference/cli-ref-verify.md index 21d187165..ab6dda990 100644 --- a/docs/reference/cli-reference/cli-ref-verify.md +++ b/docs/reference/cli-reference/cli-ref-verify.md @@ -14,7 +14,7 @@ ms.reviewer: rmpablos Verifies a package. -Verification of signed packages is not yet supported in .NET Core, under Mono, or on non-Windows platforms. +Verification of signed packages is not yet supported under Mono. ## Usage diff --git a/docs/reference/errors-and-warnings/NU1605.md b/docs/reference/errors-and-warnings/NU1605.md index 74535588a..b0169a013 100644 --- a/docs/reference/errors-and-warnings/NU1605.md +++ b/docs/reference/errors-and-warnings/NU1605.md @@ -59,7 +59,9 @@ To work around this issue, add the following PackageReference: ### Issue + The mvc project specified a version constraint on a higher version of a package than restore ultimately resolved. That is because of the [nearest-wins](../../concepts/dependency-resolution.md#nearest-wins) rule - when resolving packages, the version of the nearer package in the graph will override that of the distant package with the same ID. ### Solution -This specific error (with Microsoft.NETCore.App package) is improved my moving your .NET Core SDK to 2.2.100 or later. Microsoft.NETCore.App is an auto-referenced package that the .NET Core SDK before version 3.0.100 chooses to bring in automatically. Also see [Self-contained deployment runtime roll forward](/dotnet/core/deploying/runtime-patch-selection). + +This specific error (with Microsoft.NETCore.App package) is improved by moving your .NET Core SDK to 2.2.100 or later. Microsoft.NETCore.App is an auto-referenced package that the .NET Core SDK before version 3.0.100 chooses to bring in automatically. Also see [Self-contained deployment runtime roll forward](/dotnet/core/deploying/runtime-patch-selection). diff --git a/docs/reference/nuget-config-file.md b/docs/reference/nuget-config-file.md index 90b6a265d..14332ccab 100644 --- a/docs/reference/nuget-config-file.md +++ b/docs/reference/nuget-config-file.md @@ -277,13 +277,14 @@ If a `certificate` specifies `allowUntrustedRoot` as `true` the given certificat ```xml - - - - - - microsoft;aspnet;nuget - + + + + + + + microsoft;aspnet;nuget + ``` @@ -426,6 +427,7 @@ Below is an example `nuget.config` file that illustrates a number of settings in + diff --git a/docs/reference/ps-reference/ps-ref-add-bindingredirect.md b/docs/reference/ps-reference/ps-ref-add-bindingredirect.md index 0d02fd24a..5e9cafc88 100644 --- a/docs/reference/ps-reference/ps-ref-add-bindingredirect.md +++ b/docs/reference/ps-reference/ps-ref-add-bindingredirect.md @@ -34,7 +34,7 @@ None of these parameters accept pipeline input or wildcard characters. ## Common Parameters -`Add-BindingRedirect` supports the following [common PowerShell parameters](https://go.microsoft.com/fwlink/?LinkID=113216): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. +`Add-BindingRedirect` supports the following [common PowerShell parameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. ## Examples @@ -42,4 +42,4 @@ None of these parameters accept pipeline input or wildcard characters. Add-BindingRedirect MyProject Add-BindingRedirect -ProjectName MyProject -``` +``` \ No newline at end of file diff --git a/docs/reference/ps-reference/ps-ref-find-package.md b/docs/reference/ps-reference/ps-ref-find-package.md index 2338936b0..27f2a9958 100644 --- a/docs/reference/ps-reference/ps-ref-find-package.md +++ b/docs/reference/ps-reference/ps-ref-find-package.md @@ -37,7 +37,7 @@ None of these parameters accept pipeline input or wildcard characters. ## Common Parameters -`Find-Package` supports the following [common PowerShell parameters](https://go.microsoft.com/fwlink/?LinkID=113216): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. +`Find-Package` supports the following [common PowerShell parameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. ## Examples @@ -54,4 +54,4 @@ Find-Package logging -First 100 # List all versions of the package with the ID of "jquery" Find-Package jquery -AllVersions -ExactMatch -``` +``` \ No newline at end of file diff --git a/docs/reference/ps-reference/ps-ref-get-package.md b/docs/reference/ps-reference/ps-ref-get-package.md index fcc7a5e5c..e49fbc49c 100644 --- a/docs/reference/ps-reference/ps-ref-get-package.md +++ b/docs/reference/ps-reference/ps-ref-get-package.md @@ -42,7 +42,7 @@ None of these parameters accept pipeline input or wildcard characters. ## Common Parameters -`Get-Package` supports the following [common PowerShell parameters](https://go.microsoft.com/fwlink/?LinkID=113216): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. +`Get-Package` supports the following [common PowerShell parameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. ## Examples @@ -70,4 +70,4 @@ Get-Package -Updates # Lists packages installed in a specific project that have available updates Get-Package -Updates -ProjectName MyProject -``` +``` \ No newline at end of file diff --git a/docs/reference/ps-reference/ps-ref-get-project.md b/docs/reference/ps-reference/ps-ref-get-project.md index f39141e6a..c828f8cac 100644 --- a/docs/reference/ps-reference/ps-ref-get-project.md +++ b/docs/reference/ps-reference/ps-ref-get-project.md @@ -30,7 +30,7 @@ None of these parameters accept pipeline input or wildcard characters. ## Common Parameters -`Get-Project` supports the following [common PowerShell parameters](https://go.microsoft.com/fwlink/?LinkID=113216): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. +`Get-Project` supports the following [common PowerShell parameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. ## Examples diff --git a/docs/reference/ps-reference/ps-ref-install-package.md b/docs/reference/ps-reference/ps-ref-install-package.md index a1fbf302c..ac8eb3953 100644 --- a/docs/reference/ps-reference/ps-ref-install-package.md +++ b/docs/reference/ps-reference/ps-ref-install-package.md @@ -45,7 +45,7 @@ None of these parameters accept pipeline input or wildcard characters. ## Common Parameters -`Install-Package` supports the following [common PowerShell parameters](https://go.microsoft.com/fwlink/?LinkID=113216): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. +`Install-Package` supports the following [common PowerShell parameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. ## Examples @@ -69,4 +69,4 @@ Install-Package c:\temp\packages\jQuery.1.10.2.nupkg # Installs the specific online package # Note: the URL must end with ".nupkg" Install-Package https://globalcdn.nuget.org/packages/microsoft.aspnet.mvc.5.2.3.nupkg -``` +``` \ No newline at end of file diff --git a/docs/reference/ps-reference/ps-ref-open-packagepage.md b/docs/reference/ps-reference/ps-ref-open-packagepage.md index fee8b4c33..81469c8b6 100644 --- a/docs/reference/ps-reference/ps-ref-open-packagepage.md +++ b/docs/reference/ps-reference/ps-ref-open-packagepage.md @@ -35,7 +35,7 @@ None of these parameters accept pipeline input or wildcard characters. ## Common Parameters -`Open-PackagePage` supports the following [common PowerShell parameters](https://go.microsoft.com/fwlink/?LinkID=113216): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. +`Open-PackagePage` supports the following [common PowerShell parameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. ## Examples diff --git a/docs/reference/ps-reference/ps-ref-register-tabexpansion.md b/docs/reference/ps-reference/ps-ref-register-tabexpansion.md index e8bf1c0c9..641fc197e 100644 --- a/docs/reference/ps-reference/ps-ref-register-tabexpansion.md +++ b/docs/reference/ps-reference/ps-ref-register-tabexpansion.md @@ -30,7 +30,7 @@ None of these parameters accept pipeline input or wildcard characters. ## Common Parameters -`Register-TabExpansion` supports the following [common PowerShell parameters](https://go.microsoft.com/fwlink/?LinkID=113216): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. +`Register-TabExpansion` supports the following [common PowerShell parameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. ## Examples @@ -44,4 +44,4 @@ Register-TabExpansion Update-Package @{'ProjectName' = {'EventManager', 'Utiliti The developer can then type `Update-Package -ProjectName `, press Tab, and see the expansions offered as auto-completion options: -![Example of using Register-TabExpansion](media/Register-TabExpansion-Example.png) +![Example of using Register-TabExpansion](media/Register-TabExpansion-Example.png) \ No newline at end of file diff --git a/docs/reference/ps-reference/ps-ref-sync-package.md b/docs/reference/ps-reference/ps-ref-sync-package.md index d1ee60b3e..2297e0cd9 100644 --- a/docs/reference/ps-reference/ps-ref-sync-package.md +++ b/docs/reference/ps-reference/ps-ref-sync-package.md @@ -39,7 +39,7 @@ None of these parameters accept pipeline input or wildcard characters. ## Common Parameters -`Sync-Package` supports the following [common PowerShell parameters](https://go.microsoft.com/fwlink/?LinkID=113216): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. +`Sync-Package` supports the following [common PowerShell parameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. ## Examples @@ -55,4 +55,4 @@ Sync-Package Microsoft.Aspnet.Mvc -IgnoreDependencies # Sync jQuery.Validation and install the highest version of jQuery (a dependency) from the package source Sync-Package jQuery.Validation -DependencyVersion highest -``` +``` \ No newline at end of file diff --git a/docs/reference/ps-reference/ps-ref-uninstall-package.md b/docs/reference/ps-reference/ps-ref-uninstall-package.md index f2aa07c79..d82637602 100644 --- a/docs/reference/ps-reference/ps-ref-uninstall-package.md +++ b/docs/reference/ps-reference/ps-ref-uninstall-package.md @@ -37,7 +37,7 @@ None of these parameters accept pipeline input or wildcard characters. ## Common Parameters -`Uninstall-Package` supports the following [common PowerShell parameters](https://go.microsoft.com/fwlink/?LinkID=113216): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. +`Uninstall-Package` supports the following [common PowerShell parameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. ## Examples @@ -50,4 +50,4 @@ Uninstall-Package Elmah -RemoveDependencies # Uninstalls the Elmah package even if another package depends on it Uninstall-Package Elmah -Force -``` +``` \ No newline at end of file diff --git a/docs/reference/ps-reference/ps-ref-update-package.md b/docs/reference/ps-reference/ps-ref-update-package.md index 84eb93298..1c10d00e2 100644 --- a/docs/reference/ps-reference/ps-ref-update-package.md +++ b/docs/reference/ps-reference/ps-ref-update-package.md @@ -49,7 +49,7 @@ None of these parameters accept pipeline input or wildcard characters. ### Common Parameters -`Update-Package` supports the following [common PowerShell parameters](https://go.microsoft.com/fwlink/?LinkID=113216): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. +`Update-Package` supports the following [common PowerShell parameters](/powershell/module/microsoft.powershell.core/about/about_commonparameters): Debug, Error Action, ErrorVariable, OutBuffer, OutVariable, PipelineVariable, Verbose, WarningAction, and WarningVariable. ### Examples @@ -76,11 +76,11 @@ Update-Package Elmah -ProjectName MvcApplication1 -Safe # (subject to version constraints). If this command rolls a dependency back to an earlier version, # use Update-Package to reinstall that one dependency without affecting the # dependent package. -Update-Package ELmah –reinstall +Update-Package Elmah –reinstall # Reinstall the Elmah package in just MyProject Update-Package Elmah -ProjectName MyProject -reinstall # Reinstall the same version of the original package without touching dependencies. -Update-Package ELmah –reinstall -ignoreDependencies +Update-Package Elmah –reinstall -ignoreDependencies ``` diff --git a/docs/release-notes/NuGet-1.8.md b/docs/release-notes/NuGet-1.8.md index 240ae290f..a8aaf490b 100644 --- a/docs/release-notes/NuGet-1.8.md +++ b/docs/release-notes/NuGet-1.8.md @@ -34,7 +34,7 @@ We have since released a hotfix that addresses this issue. By updating NuGet th ### Satellite Packages for Localized Resources NuGet 1.8 now supports the ability to create separate packages for localized resources, similar to the satellite assembly capabilities of the .NET Framework. A satellite package is created in the same way as any other NuGet package with the addition of a few conventions: -* The satellite package ID and file name should include a suffix that matches one of the standard [culture strings used by the .NET Framework](https://docs.microsoft.com/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c). +* The satellite package ID and file name should include a suffix that matches one of the standard [culture strings used by the .NET Framework](/openspecs/windows_protocols/ms-lcid/a9eac961-e77d-41a6-90a5-ce1a8b0cdb9c). * In its `.nuspec` file, the satellite package should define a language element with the same culture string used in the ID * The satellite package should define a dependency in its `.nuspec` file to its core package, which is simply the package with the same ID minus the language suffix. The core package needs to be available in the repository for successful installation. @@ -72,4 +72,4 @@ By modifying the install command to download and install packages in parallel, N ## Bug Fixes NuGet 1.8 includes quite a few bug fixes with an emphasis on the package manager console and package restore workflow, particularly as it relates to package restore consent and Windows 8 Express integration. -For a full list of work items fixed in NuGet 1.8, please view the [NuGet Issue Tracker for this release](http://nuget.codeplex.com/workitem/list/advanced?keyword=&status=Closed&type=All&priority=All&release=NuGet%201.8&assignedTo=All&component=All&sortField=Votes&sortDirection=Descending&page=0). +For a full list of work items fixed in NuGet 1.8, please view the [NuGet Issue Tracker for this release](http://nuget.codeplex.com/workitem/list/advanced?keyword=&status=Closed&type=All&priority=All&release=NuGet%201.8&assignedTo=All&component=All&sortField=Votes&sortDirection=Descending&page=0). \ No newline at end of file diff --git a/docs/release-notes/NuGet-2.6.md b/docs/release-notes/NuGet-2.6.md index 2e17a2d6e..35f426b71 100644 --- a/docs/release-notes/NuGet-2.6.md +++ b/docs/release-notes/NuGet-2.6.md @@ -67,7 +67,7 @@ applications in your project. #### What you can do with XDT -One of XDT’s greatest strengths is its [simple but powerful syntax](https://docs.microsoft.com/previous-versions/aspnet/dd465326(v=vs.110)) +One of XDT’s greatest strengths is its [simple but powerful syntax](/previous-versions/aspnet/dd465326(v=vs.110)) for manipulating the structure of an XML DOM. Rather than simply overlaying one fixed document structure onto another structure, XDT provides controls for matching elements in a variety of ways, from simple attribute name matching to full XPath support. Once a matching element or diff --git a/docs/release-notes/NuGet-5.0-RTM.md b/docs/release-notes/NuGet-5.0-RTM.md index 2890058dd..72bfbdc88 100644 --- a/docs/release-notes/NuGet-5.0-RTM.md +++ b/docs/release-notes/NuGet-5.0-RTM.md @@ -22,11 +22,11 @@ NuGet distribution vehicles: ## Summary: What's New in 5.0 -* Support for restoring [filtered solutions](https://docs.microsoft.com/visualstudio/ide/filtered-solutions?view=vs-2019) in Visual Studio 2019 - [#5820](https://github.com/NuGet/Home/issues/5820) +* Support for restoring [filtered solutions](/visualstudio/ide/filtered-solutions?view=vs-2019) in Visual Studio 2019 - [#5820](https://github.com/NuGet/Home/issues/5820) * `BuildTransitive` folder enables packages to transitively contribute targets/props to the host project - [#6091](https://github.com/NuGet/Home/issues/6091) * Better support for PackageReference scenarios in NuGet IVs APIs - [#7005](https://github.com/NuGet/Home/issues/7005), [#7493](https://github.com/NuGet/Home/issues/7493) * `nuget.exe pack project.json` has been deprecated - [#7928](https://github.com/NuGet/Home/issues/7928) -* Gen 1 Credential Provider plugin has been superseded by [Gen 2](https://aka.ms/nuget-cross-platform-authentication-plugin) and will soon be deprecated - [#7819](https://github.com/NuGet/Home/issues/7819) +* Gen 1 Credential Provider plugin has been superseded by [Gen 2](../reference/extensibility/nuget-cross-platform-authentication-plugin.md) and will soon be deprecated - [#7819](https://github.com/NuGet/Home/issues/7819) ## Issues fixed in this release @@ -167,4 +167,4 @@ Disable the usage of the fallback folder by setting the `RestoreAdditionalProjec `` -Use this with caution as packages that would be restored from the fallback folder will now be downloaded from NuGet.org. +Use this with caution as packages that would be restored from the fallback folder will now be downloaded from NuGet.org. \ No newline at end of file diff --git a/docs/resources/NuGet-FAQ.md b/docs/resources/NuGet-FAQ.md index f9a7069cb..6186164da 100644 --- a/docs/resources/NuGet-FAQ.md +++ b/docs/resources/NuGet-FAQ.md @@ -36,7 +36,7 @@ For more information, see [Finding and choosing packages](../consume-packages/fi - Visual Studio on Windows supports the [Package Manager UI](../consume-packages/install-use-packages-visual-studio.md) and the [Package Manager Console](../consume-packages/install-use-packages-powershell.md). - Visual Studio for Mac has built-in NuGet capabilities as described on [Including a NuGet package in your project](/visualstudio/mac/nuget-walkthrough). - Visual Studio Code (all platforms) does not have any direct NuGet integration. Use the [NuGet CLI](../reference/nuget-exe-cli-reference.md) or the [dotnet CLI](../reference/dotnet-commands.md). -- Azure DevOps provides [a build step to restore NuGet packages](/vsts/build-release/tasks/package/nuget). You can also [host private NuGet package feeds on Azure DevOps](https://docs.microsoft.com/azure/devops/artifacts/nuget/publish). +- Azure DevOps provides [a build step to restore NuGet packages](/vsts/build-release/tasks/package/nuget). You can also [host private NuGet package feeds on Azure DevOps](/azure/devops/artifacts/nuget/publish). **How do I check the exact version of the NuGet tools that are installed?** @@ -98,7 +98,7 @@ This is a known issue with how PowerShell interacts with a COM object. Try the f **How do I list my package in a feed?** -See [Creating and publishing a package](../quickstart/create-and-publish-a-package.md). +See [Creating and publishing a package](../quickstart/create-and-publish-a-package-using-visual-studio.md). **I have multiple versions of my library that target different versions of the .NET Framework. How do I build a single package that supports this?** @@ -143,4 +143,4 @@ This is not an issue when using PackageReference, as each project file contains **I don't see nuget.org in my list of repositories, how do I get it back?** - Add `https://api.nuget.org/v3/index.json` to your list of sources, or -- Delete `%appdata%\.nuget\NuGet.Config` (Windows) or `~/.nuget/NuGet/NuGet.Config` (Mac/Linux) and let NuGet re-create it. +- Delete `%appdata%\.nuget\NuGet.Config` (Windows) or `~/.nuget/NuGet/NuGet.Config` (Mac/Linux) and let NuGet re-create it. \ No newline at end of file From a28c858e72ece4f4130de7726c48414b13395f90 Mon Sep 17 00:00:00 2001 From: David Coulter Date: Tue, 3 Nov 2020 13:26:43 -0800 Subject: [PATCH 183/988] Links: NuGet (2020-11) --- docs/consume-packages/Package-Restore.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/consume-packages/Package-Restore.md b/docs/consume-packages/Package-Restore.md index 61cdd180b..e2048ff9c 100644 --- a/docs/consume-packages/Package-Restore.md +++ b/docs/consume-packages/Package-Restore.md @@ -164,7 +164,7 @@ To restore packages listed in the project file with PackageReference, use the th Make sure that the MSBuild output indicates that the build completed successfully. > [!Note] -> msbuild has a `-restore` switch which will run `Restore`, reload the project, and then build. See [Restoring and building with one MSBuild command](/nuget/reference/msbuild-targets#restoring-and-building-with-one-msbuild-command). +> msbuild has a `-restore` switch which will run `Restore`, reload the project, and then build. See [Restoring and building with one MSBuild command](../reference/msbuild-targets.md#restoring-and-building-with-one-msbuild-command). ```cmd # Will restore the project, then build, since build is the default target. @@ -236,4 +236,4 @@ To test the automatic package restore: ## Troubleshooting -See [Troubleshoot package restore](package-restore-troubleshooting.md). +See [Troubleshoot package restore](package-restore-troubleshooting.md). \ No newline at end of file From c8933c5891bd23f0a9aa4e06a0b071673ee894e2 Mon Sep 17 00:00:00 2001 From: Fernando Aguilar Date: Mon, 9 Nov 2020 14:21:43 -0800 Subject: [PATCH 184/988] 5.8 release notes draft --- docs/release-notes/NuGet-5.8.md | 166 ++++++++++++++++++++++++++++++++ 1 file changed, 166 insertions(+) create mode 100644 docs/release-notes/NuGet-5.8.md diff --git a/docs/release-notes/NuGet-5.8.md b/docs/release-notes/NuGet-5.8.md new file mode 100644 index 000000000..d394482bd --- /dev/null +++ b/docs/release-notes/NuGet-5.8.md @@ -0,0 +1,166 @@ +--- +title: NuGet 5.8 Release Notes +description: Release notes for NuGet 5.8 including new features, bug fixes, and DCRs. +author: +ms.author: +ms.date: 11/9/2020 +ms.topic: conceptual +--- + +# NuGet 5.8 Release Notes + +NuGet distribution vehicles: + +| NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | +|:---|:---|:---| +| [**5.8**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.8](https://visualstudio.microsoft.com/downloads/) | [](https://dotnet.microsoft.com/download/dotnet-core/)1 | + +1 Installed with Visual Studio with.NET Core workload + +## Summary: What's New in 5.8 + +* Package manager sources use remote types from server - [#9608](https://github.com/NuGet/Home/issues/9608) + +* Search CLI Tool for NuGet.exe - [#9704](https://github.com/NuGet/Home/issues/9704) + +* Add a TypeConverter for the SemanticVersion class - [#9125](https://github.com/NuGet/Home/issues/9125) + +* Improve the CPVM Visual Studio experience for the case when PackageReference items have version. - [#9507](https://github.com/NuGet/Home/issues/9507) + +* VSOE saving package sources in tools options will overwrite credentials - [#9711](https://github.com/NuGet/Home/issues/9711) + +* Replay the warnings for LegacyPackageReference projects when a project no-ops in partial restore - [#9565](https://github.com/NuGet/Home/issues/9565) + +* dotnet list should support --verbosity - [#9600](https://github.com/NuGet/Home/issues/9600) + +* Add "prerelease" option to dotnet add package - [#4699](https://github.com/NuGet/Home/issues/4699) + +* recommend packages for 'All' sources - [#9872](https://github.com/NuGet/Home/issues/9872) + +* Surface basic vulnerability metadata in PM UI view models - [#9850](https://github.com/NuGet/Home/issues/9850) + +* Signing: implement dotnet verify command - [#8051](https://github.com/NuGet/Home/issues/8051) + +### Issues fixed in this release + +**DCRs:** + +* Net5 TFM: Framework Precedence Rules - [#9436](https://github.com/NuGet/Home/issues/9436) + +* NuGet should not infer dots platform version when parsing TargetFramework - [#9842](https://github.com/NuGet/Home/issues/9842) + +* Support Nuget.Packaging and transitive closure for net45 - [#9883](https://github.com/NuGet/Home/issues/9883) + +* Update GetReferenceNearestTargetFrameworkTask to support target frameworks with platforms (such as .NET 5-windows) - [#9894](https://github.com/NuGet/Home/issues/9894) + +* NuGet should use TargetFrameworkMoniker & TargetPlatformMoniker to infer the frameworks instead of using the individual TFI, TFV, TPI, TPV properties - [#9895](https://github.com/NuGet/Home/issues/9895) + +* net5.0 VS APIs - [#9650](https://github.com/NuGet/Home/issues/9650) + +* Nuget Solution Package manager UI is slow because restore is run for every project instead of after all projects are updated - [#6010](https://github.com/NuGet/Home/issues/6010) + +* vs: consolidate or update packages should not be blocked due to resulting errors (Detected package downgrade error Nu1605, etc..) - [#9224](https://github.com/NuGet/Home/issues/9224) + +* NuGet features should light up for projects that have the capability; "PackageReferences" - [#9957](https://github.com/NuGet/Home/issues/9957) + +**Bugs:** + +* OutputWindowTextWriter constructor should not be called on background thread. - [#9764](https://github.com/NuGet/Home/issues/9764) + +* Restore signed packages on Big Endian CPUs - [#9547](https://github.com/NuGet/Home/issues/9547) + +* Typo in error message. "administator" instead of "administrator" - [#9662](https://github.com/NuGet/Home/issues/9662) + +* OutputConsoleLogger should not call affinitized methods in MEF constructors - [#9591](https://github.com/NuGet/Home/issues/9591) + +* [CPVM-OnBoard] Rejected transitive central dependencies should be removed from the restore graph. - [#9483](https://github.com/NuGet/Home/issues/9483) + +* Bug in NuGet.CommandLine.Console's PrintJustified method - [#9737](https://github.com/NuGet/Home/issues/9737) + +* Package Manager UI has a memory leak where the the package metadata doesn't get GCed due to a bad binding - [#9757](https://github.com/NuGet/Home/issues/9757) + +* [Test Failure][Signing] No warning is showed in Error List when installing a signed package with ‘Package config’ format in PM UI - [#9798](https://github.com/NuGet/Home/issues/9798) + +* NuGet.CommandLine.XPlat should not have public APIs - [#9821](https://github.com/NuGet/Home/issues/9821) + +* Reduce resource contention at solution load time cause by blocking a threadpool thread with BlockingCollection.Take - [#9822](https://github.com/NuGet/Home/issues/9822) + +* NuGet Pack with invalid AssemblyInformationalVersion value reports "description is required" - [#5548](https://github.com/NuGet/Home/issues/5548) + +* Enable PM UI experiment - package recommender - [#9845](https://github.com/NuGet/Home/issues/9845) + +* RepositoryMetadata Equals does not account for branch and commit properties - [#9613](https://github.com/NuGet/Home/issues/9613) + +* In commandline restore, with multi targeted projects, NuGet should read the target framework related information from the inner build. - [#9869](https://github.com/NuGet/Home/issues/9869) + +* Read the runtime identifier graph through the TargetFrameworkInformation item, improve the test coverage of dotnet tool scenarios. - [#9874](https://github.com/NuGet/Home/issues/9874) + +* Static graph restore is inconsistent wrt to the CrossTargeting property in compared to VS & regular msbuild evaluation restore - [#9881](https://github.com/NuGet/Home/issues/9881) + +* In static graph restore, with multi targeted projects, NuGet should read the target framework related information from the inner build. - [#9870](https://github.com/NuGet/Home/issues/9870) + +* Allow `net5.0-platform` projects to be loaded and restored in VS - [#9863](https://github.com/NuGet/Home/issues/9863) + +* Display the resolved version in the PMUI. - [#9826](https://github.com/NuGet/Home/issues/9826) + +* Solution explorer not showing all nuget package dependencies - [#9898](https://github.com/NuGet/Home/issues/9898) + +* Unnecessary assets file writes can lead to extra design time builds - [#9903](https://github.com/NuGet/Home/issues/9903) + +* [CPVM] Error on floating transitive dependencies defined in Directory.Packages.props - [#9384](https://github.com/NuGet/Home/issues/9384) + +* Update the SPDX license list - [#9946](https://github.com/NuGet/Home/issues/9946) + +* Error when a Project has CPVM enabled but there are not any PackageVersion items defined - [#9341](https://github.com/NuGet/Home/issues/9341) + +* VS 2019 crashes after opening Manage Nuget Packages - icon causes unhandled exception in image conversion. - [#9696](https://github.com/NuGet/Home/issues/9696) + +* nuget.packaging.extraction needs ilmerge to not contain newtonsoft.json - [#9966](https://github.com/NuGet/Home/issues/9966) + +* Packing with ContinuePackingAfterGeneratingNuspec=false should not fail when there are no errors - [#9786](https://github.com/NuGet/Home/issues/9786) + +* Clicking NU code in VS ErrorList should go to docs.microsoft.com/nuget/reference - [#9934](https://github.com/NuGet/Home/issues/9934) + +* Use https for placeholder text when adding new package source through Visual Studio GUI - [#9974](https://github.com/NuGet/Home/issues/9974) + +* [CPVM] Cannot import packages file from a custom directory - [#9841](https://github.com/NuGet/Home/issues/9841) + +* RuntimeEnvironmentHelper.IsRunningOnVisualStudio performance issue on Mono - [#9989](https://github.com/NuGet/Home/issues/9989) + +* Restore on solution load runs after the first 50 nominations instead of waiting for nominations to come in. - [#9982](https://github.com/NuGet/Home/issues/9982) + +* Central package management throws errors about duplicate dictionary keys when attempting to create the lock file - [#9965](https://github.com/NuGet/Home/issues/9965) + +* PMUI Icons aren't inverting colors properly - [#10017](https://github.com/NuGet/Home/issues/10017) + +* Restore reports incorrect project count numbers for up to date projects & no-op projects. - [#10026](https://github.com/NuGet/Home/issues/10026) + +* Using /p:RestoreUseStaticGraphEvaluation=true Results in Value Cannot Be Null - [#9280](https://github.com/NuGet/Home/issues/9280) + +* PM UI: NullReferenceException when signature validation fails - [#10042](https://github.com/NuGet/Home/issues/10042) + +* Instead of waiting for nominations or 20s whichever comes first, implement a sliding window at solution load, which should allow us to run exactly 1 restore even for large solutions - [#9984](https://github.com/NuGet/Home/issues/9984) + +* Restore: excessive deep cloning of ProjectSpec, remove cloning in no-op hash creation for PR projects - [#10052](https://github.com/NuGet/Home/issues/10052) + +* VS OE: should not use object data type for project metadata values - [#10055](https://github.com/NuGet/Home/issues/10055) + +* Dotnet Pack mistakenly uses alias for WPF Library projects - [#10020](https://github.com/NuGet/Home/issues/10020) + +**Nones:** + +* FileAndForget posts a new event for every point of usage - [#9812](https://github.com/NuGet/Home/issues/9812) + +* Document RPS tests, including a playbook for investigating issues. - [#9781](https://github.com/NuGet/Home/issues/9781) + +* Suppress restore messages for noop restore in VS - [#6384](https://github.com/NuGet/Home/issues/6384) + +**StillOpens:** + +* Implement a pre-registration mechanism for legacy PR projects that call restore at solution open - [#9986](https://github.com/NuGet/Home/issues/9986) + +* Remove temporary fix on HttpRequestMessage.Options - [#9981](https://github.com/NuGet/Home/issues/9981) + +* Telemetry: Replace EmitTelemetryEvent with proper telemetry activities - [#9581](https://github.com/NuGet/Home/issues/9581) + +**[List of all issues fixed in this release - 5.8](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5f03519b777e78b4ffb2edeb)** From 73b76accbcece4b1ca7b693e4c1f728e3078f836 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Tue, 10 Nov 2020 10:40:10 -0600 Subject: [PATCH 185/988] Add compatibility & feedback sections --- docs/release-notes/NuGet-5.8.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/docs/release-notes/NuGet-5.8.md b/docs/release-notes/NuGet-5.8.md index d394482bd..e899e86e8 100644 --- a/docs/release-notes/NuGet-5.8.md +++ b/docs/release-notes/NuGet-5.8.md @@ -16,6 +16,9 @@ NuGet distribution vehicles: | [**5.8**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.8](https://visualstudio.microsoft.com/downloads/) | [](https://dotnet.microsoft.com/download/dotnet-core/)1 | 1 Installed with Visual Studio with.NET Core workload + +> [!NOTE] +> For maximum compatibility of NuGet 5.8, it is recommended to use Visual Studio 16.8, MSBuild 16.8, and .NET 5.0. ## Summary: What's New in 5.8 @@ -164,3 +167,14 @@ NuGet distribution vehicles: * Telemetry: Replace EmitTelemetryEvent with proper telemetry activities - [#9581](https://github.com/NuGet/Home/issues/9581) **[List of all issues fixed in this release - 5.8](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5f03519b777e78b4ffb2edeb)** + +## Feedback welcome + +Your feedback is important to us. If there are any problems with this release, check our +[GitHub Issues](https://github.com/NuGet/Home/issues) and +[Visual Studio Developer Community](https://developercommunity.visualstudio.com/) +for existing issues. For new issues within NuGet, please report a +[GitHub Issue](hhttps://github.com/NuGet/Home/issues/new). +For general NuGet experience issues, let us know via the +[Report a Problem](https://docs.microsoft.com/visualstudio/ide/how-to-report-a-problem-with-visual-studio) +option found in your favorite IDE under **Help > Report a Problem**. From 9672d4750fdde2cc522b1b44363aeba99def1905 Mon Sep 17 00:00:00 2001 From: Fernando Aguilar Date: Tue, 10 Nov 2020 14:21:56 -0800 Subject: [PATCH 186/988] Categorized all issues --- docs/release-notes/NuGet-5.8.md | 29 +++++++++-------------------- 1 file changed, 9 insertions(+), 20 deletions(-) diff --git a/docs/release-notes/NuGet-5.8.md b/docs/release-notes/NuGet-5.8.md index e899e86e8..7564eac24 100644 --- a/docs/release-notes/NuGet-5.8.md +++ b/docs/release-notes/NuGet-5.8.md @@ -13,16 +13,17 @@ NuGet distribution vehicles: | NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | |:---|:---|:---| -| [**5.8**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.8](https://visualstudio.microsoft.com/downloads/) | [](https://dotnet.microsoft.com/download/dotnet-core/)1 | +| [**5.8**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.8](https://visualstudio.microsoft.com/downloads/) | [](https://dotnet.microsoft.com/download/dotnet-core/5.0)1 | 1 Installed with Visual Studio with.NET Core workload > [!NOTE] > For maximum compatibility of NuGet 5.8, it is recommended to use Visual Studio 16.8, MSBuild 16.8, and .NET 5.0. + ## Summary: What's New in 5.8 -* Package manager sources use remote types from server - [#9608](https://github.com/NuGet/Home/issues/9608) +* Package Manager sources use remote types from server - [#9608](https://github.com/NuGet/Home/issues/9608) * Search CLI Tool for NuGet.exe - [#9704](https://github.com/NuGet/Home/issues/9704) @@ -34,9 +35,9 @@ NuGet distribution vehicles: * Replay the warnings for LegacyPackageReference projects when a project no-ops in partial restore - [#9565](https://github.com/NuGet/Home/issues/9565) -* dotnet list should support --verbosity - [#9600](https://github.com/NuGet/Home/issues/9600) +* `dotnet list` command supports `--verbosity` flag - [#9600](https://github.com/NuGet/Home/issues/9600) -* Add "prerelease" option to dotnet add package - [#4699](https://github.com/NuGet/Home/issues/4699) +* Add `--prerelease` option to `dotnet add package` - [#4699](https://github.com/NuGet/Home/issues/4699) * recommend packages for 'All' sources - [#9872](https://github.com/NuGet/Home/issues/9872) @@ -48,6 +49,8 @@ NuGet distribution vehicles: **DCRs:** +* FileAndForget posts a new event for every point of usage - [#9812](https://github.com/NuGet/Home/issues/9812) + * Net5 TFM: Framework Precedence Rules - [#9436](https://github.com/NuGet/Home/issues/9436) * NuGet should not infer dots platform version when parsing TargetFramework - [#9842](https://github.com/NuGet/Home/issues/9842) @@ -66,6 +69,8 @@ NuGet distribution vehicles: * NuGet features should light up for projects that have the capability; "PackageReferences" - [#9957](https://github.com/NuGet/Home/issues/9957) +* Suppress messages for No-Op Restore in Visual Studio - [#6384](https://github.com/NuGet/Home/issues/6384) + **Bugs:** * OutputWindowTextWriter constructor should not be called on background thread. - [#9764](https://github.com/NuGet/Home/issues/9764) @@ -150,22 +155,6 @@ NuGet distribution vehicles: * Dotnet Pack mistakenly uses alias for WPF Library projects - [#10020](https://github.com/NuGet/Home/issues/10020) -**Nones:** - -* FileAndForget posts a new event for every point of usage - [#9812](https://github.com/NuGet/Home/issues/9812) - -* Document RPS tests, including a playbook for investigating issues. - [#9781](https://github.com/NuGet/Home/issues/9781) - -* Suppress restore messages for noop restore in VS - [#6384](https://github.com/NuGet/Home/issues/6384) - -**StillOpens:** - -* Implement a pre-registration mechanism for legacy PR projects that call restore at solution open - [#9986](https://github.com/NuGet/Home/issues/9986) - -* Remove temporary fix on HttpRequestMessage.Options - [#9981](https://github.com/NuGet/Home/issues/9981) - -* Telemetry: Replace EmitTelemetryEvent with proper telemetry activities - [#9581](https://github.com/NuGet/Home/issues/9581) - **[List of all issues fixed in this release - 5.8](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5f03519b777e78b4ffb2edeb)** ## Feedback welcome From 2512432ba103d90e91d37ef09291d8b4a1721b11 Mon Sep 17 00:00:00 2001 From: Fernando Aguilar Date: Tue, 10 Nov 2020 15:32:16 -0800 Subject: [PATCH 187/988] Proofreading --- docs/release-notes/NuGet-5.8.md | 79 +++++++++++++++++---------------- 1 file changed, 40 insertions(+), 39 deletions(-) diff --git a/docs/release-notes/NuGet-5.8.md b/docs/release-notes/NuGet-5.8.md index 7564eac24..b20222f0b 100644 --- a/docs/release-notes/NuGet-5.8.md +++ b/docs/release-notes/NuGet-5.8.md @@ -1,8 +1,8 @@ --- title: NuGet 5.8 Release Notes description: Release notes for NuGet 5.8 including new features, bug fixes, and DCRs. -author: -ms.author: +author: dominofire +ms.author: feaguila ms.date: 11/9/2020 ms.topic: conceptual --- @@ -35,15 +35,15 @@ NuGet distribution vehicles: * Replay the warnings for LegacyPackageReference projects when a project no-ops in partial restore - [#9565](https://github.com/NuGet/Home/issues/9565) -* `dotnet list` command supports `--verbosity` flag - [#9600](https://github.com/NuGet/Home/issues/9600) +* `dotnet list` command supports `--verbosity` option - [#9600](https://github.com/NuGet/Home/issues/9600) * Add `--prerelease` option to `dotnet add package` - [#4699](https://github.com/NuGet/Home/issues/4699) -* recommend packages for 'All' sources - [#9872](https://github.com/NuGet/Home/issues/9872) +* Recommend packages from any NuGet sources - [#9872](https://github.com/NuGet/Home/issues/9872) * Surface basic vulnerability metadata in PM UI view models - [#9850](https://github.com/NuGet/Home/issues/9850) -* Signing: implement dotnet verify command - [#8051](https://github.com/NuGet/Home/issues/8051) +* Signing: implement `dotnet verify` command - [#8051](https://github.com/NuGet/Home/issues/8051) ### Issues fixed in this release @@ -51,29 +51,29 @@ NuGet distribution vehicles: * FileAndForget posts a new event for every point of usage - [#9812](https://github.com/NuGet/Home/issues/9812) -* Net5 TFM: Framework Precedence Rules - [#9436](https://github.com/NuGet/Home/issues/9436) +* .NET 5.0 TFM: Framework Precedence Rules - [#9436](https://github.com/NuGet/Home/issues/9436) * NuGet should not infer dots platform version when parsing TargetFramework - [#9842](https://github.com/NuGet/Home/issues/9842) * Support Nuget.Packaging and transitive closure for net45 - [#9883](https://github.com/NuGet/Home/issues/9883) -* Update GetReferenceNearestTargetFrameworkTask to support target frameworks with platforms (such as .NET 5-windows) - [#9894](https://github.com/NuGet/Home/issues/9894) +* Use TargetFrameworkMoniker & TargetPlatformMoniker to infer the frameworks instead of using individual TFI, TFV, TPI, TPV properties - [#9895](https://github.com/NuGet/Home/issues/9895) -* NuGet should use TargetFrameworkMoniker & TargetPlatformMoniker to infer the frameworks instead of using the individual TFI, TFV, TPI, TPV properties - [#9895](https://github.com/NuGet/Home/issues/9895) +* Update `GetReferenceNearestTargetFrameworkTask()` to support target frameworks with platforms (such as net5.0-windows) - [#9894](https://github.com/NuGet/Home/issues/9894) -* net5.0 VS APIs - [#9650](https://github.com/NuGet/Home/issues/9650) +* .NET 5.0 Visual Studio APIs - [#9650](https://github.com/NuGet/Home/issues/9650) -* Nuget Solution Package manager UI is slow because restore is run for every project instead of after all projects are updated - [#6010](https://github.com/NuGet/Home/issues/6010) +* NuGet Package Manager UI for Solution is slow because restore is run for every project instead of after all projects are updated - [#6010](https://github.com/NuGet/Home/issues/6010) -* vs: consolidate or update packages should not be blocked due to resulting errors (Detected package downgrade error Nu1605, etc..) - [#9224](https://github.com/NuGet/Home/issues/9224) +* PM UI: Consolidate or Update packages operations should not be blocked due to errors (Package Downgrade, etc.) - [#9224](https://github.com/NuGet/Home/issues/9224) * NuGet features should light up for projects that have the capability; "PackageReferences" - [#9957](https://github.com/NuGet/Home/issues/9957) -* Suppress messages for No-Op Restore in Visual Studio - [#6384](https://github.com/NuGet/Home/issues/6384) +* Suppress No-Op Restore messages in Visual Studio - [#6384](https://github.com/NuGet/Home/issues/6384) **Bugs:** -* OutputWindowTextWriter constructor should not be called on background thread. - [#9764](https://github.com/NuGet/Home/issues/9764) +* OutputWindowTextWriter constructor should not be called on background thread - [#9764](https://github.com/NuGet/Home/issues/9764) * Restore signed packages on Big Endian CPUs - [#9547](https://github.com/NuGet/Home/issues/9547) @@ -83,35 +83,35 @@ NuGet distribution vehicles: * [CPVM-OnBoard] Rejected transitive central dependencies should be removed from the restore graph. - [#9483](https://github.com/NuGet/Home/issues/9483) -* Bug in NuGet.CommandLine.Console's PrintJustified method - [#9737](https://github.com/NuGet/Home/issues/9737) +* Bug in NuGet.CommandLine.Console `PrintJustified()` method - [#9737](https://github.com/NuGet/Home/issues/9737) -* Package Manager UI has a memory leak where the the package metadata doesn't get GCed due to a bad binding - [#9757](https://github.com/NuGet/Home/issues/9757) +* Package Manager UI memory leak when package metadata is garbage collected due to a bad binding - [#9757](https://github.com/NuGet/Home/issues/9757) -* [Test Failure][Signing] No warning is showed in Error List when installing a signed package with ‘Package config’ format in PM UI - [#9798](https://github.com/NuGet/Home/issues/9798) +* [Test Failure][Signing] No warning is showed in Error List when installing a signed package with packages.config format in PM UI - [#9798](https://github.com/NuGet/Home/issues/9798) * NuGet.CommandLine.XPlat should not have public APIs - [#9821](https://github.com/NuGet/Home/issues/9821) -* Reduce resource contention at solution load time cause by blocking a threadpool thread with BlockingCollection.Take - [#9822](https://github.com/NuGet/Home/issues/9822) +* Reduce resource contention at Solution Load time caused by blocking a threaded-pool thread with `BlockingCollection.Take()` - [#9822](https://github.com/NuGet/Home/issues/9822) -* NuGet Pack with invalid AssemblyInformationalVersion value reports "description is required" - [#5548](https://github.com/NuGet/Home/issues/5548) +* NuGet Pack with invalid AssemblyInformationalVersion reports "description is required" - [#5548](https://github.com/NuGet/Home/issues/5548) -* Enable PM UI experiment - package recommender - [#9845](https://github.com/NuGet/Home/issues/9845) +* Enable PM UI experiment: Package Recommender - [#9845](https://github.com/NuGet/Home/issues/9845) -* RepositoryMetadata Equals does not account for branch and commit properties - [#9613](https://github.com/NuGet/Home/issues/9613) +* `RepositoryMetadata.Equals()` does not account for Branch and Commit properties - [#9613](https://github.com/NuGet/Home/issues/9613) -* In commandline restore, with multi targeted projects, NuGet should read the target framework related information from the inner build. - [#9869](https://github.com/NuGet/Home/issues/9869) +* In command line restore, with multi targeted projects, NuGet should read the target framework related information from the inner build - [#9869](https://github.com/NuGet/Home/issues/9869) -* Read the runtime identifier graph through the TargetFrameworkInformation item, improve the test coverage of dotnet tool scenarios. - [#9874](https://github.com/NuGet/Home/issues/9874) +* Read Runtime Identifier graph through TargetFrameworkInformation item - [#9874](https://github.com/NuGet/Home/issues/9874) -* Static graph restore is inconsistent wrt to the CrossTargeting property in compared to VS & regular msbuild evaluation restore - [#9881](https://github.com/NuGet/Home/issues/9881) +* Static graph restore is inconsistent with regards to CrossTargeting property in compared to Visual Studio and regular MSBuild evaluation restore - [#9881](https://github.com/NuGet/Home/issues/9881) * In static graph restore, with multi targeted projects, NuGet should read the target framework related information from the inner build. - [#9870](https://github.com/NuGet/Home/issues/9870) -* Allow `net5.0-platform` projects to be loaded and restored in VS - [#9863](https://github.com/NuGet/Home/issues/9863) +* Allow `net5.0-platform` projects to be loaded and restored in Visual Studio - [#9863](https://github.com/NuGet/Home/issues/9863) -* Display the resolved version in the PMUI. - [#9826](https://github.com/NuGet/Home/issues/9826) +* Display the resolved version in the PM UI - [#9826](https://github.com/NuGet/Home/issues/9826) -* Solution explorer not showing all nuget package dependencies - [#9898](https://github.com/NuGet/Home/issues/9898) +* Solution Explorer not showing all NuGet package dependencies - [#9898](https://github.com/NuGet/Home/issues/9898) * Unnecessary assets file writes can lead to extra design time builds - [#9903](https://github.com/NuGet/Home/issues/9903) @@ -121,39 +121,40 @@ NuGet distribution vehicles: * Error when a Project has CPVM enabled but there are not any PackageVersion items defined - [#9341](https://github.com/NuGet/Home/issues/9341) -* VS 2019 crashes after opening Manage Nuget Packages - icon causes unhandled exception in image conversion. - [#9696](https://github.com/NuGet/Home/issues/9696) +* VS 2019 crashes after opening Manage NuGet Packages: icon causes unhandled exception in image conversio - [#9696](https://github.com/NuGet/Home/issues/9696) -* nuget.packaging.extraction needs ilmerge to not contain newtonsoft.json - [#9966](https://github.com/NuGet/Home/issues/9966) +* NuGet.Packaging.Extraction needs ilmerge to exclude Newtonsoft.Json - [#9966](https://github.com/NuGet/Home/issues/9966) * Packing with ContinuePackingAfterGeneratingNuspec=false should not fail when there are no errors - [#9786](https://github.com/NuGet/Home/issues/9786) -* Clicking NU code in VS ErrorList should go to docs.microsoft.com/nuget/reference - [#9934](https://github.com/NuGet/Home/issues/9934) +* Clicking NU code in Visual Studio Error List window should go to https://docs.microsoft.com/nuget/reference/errors-and-warnings/ - [#9934](https://github.com/NuGet/Home/issues/9934) -* Use https for placeholder text when adding new package source through Visual Studio GUI - [#9974](https://github.com/NuGet/Home/issues/9974) +* Use 'https://' when adding new package source through Visual Studio options - [#9974](https://github.com/NuGet/Home/issues/9974) * [CPVM] Cannot import packages file from a custom directory - [#9841](https://github.com/NuGet/Home/issues/9841) -* RuntimeEnvironmentHelper.IsRunningOnVisualStudio performance issue on Mono - [#9989](https://github.com/NuGet/Home/issues/9989) +* `RuntimeEnvironmentHelper.IsRunningOnVisualStudio` performance issue on Mono - [#9989](https://github.com/NuGet/Home/issues/9989) -* Restore on solution load runs after the first 50 nominations instead of waiting for nominations to come in. - [#9982](https://github.com/NuGet/Home/issues/9982) +* Solution Load Restore runs after first 50 nominations instead of waiting for all nominations - [#9982](https://github.com/NuGet/Home/issues/9982) -* Central package management throws errors about duplicate dictionary keys when attempting to create the lock file - [#9965](https://github.com/NuGet/Home/issues/9965) +* Central Package Management throws errors regarding duplicate dictionary keys when attempting to create the lock file - [#9965](https://github.com/NuGet/Home/issues/9965) -* PMUI Icons aren't inverting colors properly - [#10017](https://github.com/NuGet/Home/issues/10017) +* PM UI Icons aren't inverting colors properly - [#10017](https://github.com/NuGet/Home/issues/10017) -* Restore reports incorrect project count numbers for up to date projects & no-op projects. - [#10026](https://github.com/NuGet/Home/issues/10026) +* Incorrect project counts for Up-To-Date and No-Op projects at Restore - [#10026](https://github.com/NuGet/Home/issues/10026) * Using /p:RestoreUseStaticGraphEvaluation=true Results in Value Cannot Be Null - [#9280](https://github.com/NuGet/Home/issues/9280) * PM UI: NullReferenceException when signature validation fails - [#10042](https://github.com/NuGet/Home/issues/10042) -* Instead of waiting for nominations or 20s whichever comes first, implement a sliding window at solution load, which should allow us to run exactly 1 restore even for large solutions - [#9984](https://github.com/NuGet/Home/issues/9984) +* Instead of waiting for nominations or 20 seconds (whichever comes first), implement a sliding window at Solution Load, which allow to run exactly 1 restore even for large solutions - [#9984](https://github.com/NuGet/Home/issues/9984) -* Restore: excessive deep cloning of ProjectSpec, remove cloning in no-op hash creation for PR projects - [#10052](https://github.com/NuGet/Home/issues/10052) +* Restore: excessive deep cloning of ProjectSpec, remove cloning in No-Op hash creation for PackageReference projects - [#10052](https://github.com/NuGet/Home/issues/10052) -* VS OE: should not use object data type for project metadata values - [#10055](https://github.com/NuGet/Home/issues/10055) +* VS OE: dot not use `object` type for project metadata values - [#10055](https://github.com/NuGet/Home/issues/10055) + +* `dotnet pack` mistakenly uses alias for WPF Library projects - [#10020](https://github.com/NuGet/Home/issues/10020) -* Dotnet Pack mistakenly uses alias for WPF Library projects - [#10020](https://github.com/NuGet/Home/issues/10020) **[List of all issues fixed in this release - 5.8](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5f03519b777e78b4ffb2edeb)** From 83ab2be2e44a39e548d045c16748816d2689d2c2 Mon Sep 17 00:00:00 2001 From: Fernando Aguilar Date: Tue, 10 Nov 2020 17:25:11 -0800 Subject: [PATCH 188/988] Added --- docs/release-notes/NuGet-5.8.md | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/docs/release-notes/NuGet-5.8.md b/docs/release-notes/NuGet-5.8.md index b20222f0b..1f6cff5f2 100644 --- a/docs/release-notes/NuGet-5.8.md +++ b/docs/release-notes/NuGet-5.8.md @@ -77,8 +77,6 @@ NuGet distribution vehicles: * Restore signed packages on Big Endian CPUs - [#9547](https://github.com/NuGet/Home/issues/9547) -* Typo in error message. "administator" instead of "administrator" - [#9662](https://github.com/NuGet/Home/issues/9662) - * OutputConsoleLogger should not call affinitized methods in MEF constructors - [#9591](https://github.com/NuGet/Home/issues/9591) * [CPVM-OnBoard] Rejected transitive central dependencies should be removed from the restore graph. - [#9483](https://github.com/NuGet/Home/issues/9483) @@ -93,12 +91,8 @@ NuGet distribution vehicles: * Reduce resource contention at Solution Load time caused by blocking a threaded-pool thread with `BlockingCollection.Take()` - [#9822](https://github.com/NuGet/Home/issues/9822) -* NuGet Pack with invalid AssemblyInformationalVersion reports "description is required" - [#5548](https://github.com/NuGet/Home/issues/5548) - * Enable PM UI experiment: Package Recommender - [#9845](https://github.com/NuGet/Home/issues/9845) -* `RepositoryMetadata.Equals()` does not account for Branch and Commit properties - [#9613](https://github.com/NuGet/Home/issues/9613) - * In command line restore, with multi targeted projects, NuGet should read the target framework related information from the inner build - [#9869](https://github.com/NuGet/Home/issues/9869) * Read Runtime Identifier graph through TargetFrameworkInformation item - [#9874](https://github.com/NuGet/Home/issues/9874) @@ -111,7 +105,7 @@ NuGet distribution vehicles: * Display the resolved version in the PM UI - [#9826](https://github.com/NuGet/Home/issues/9826) -* Solution Explorer not showing all NuGet package dependencies - [#9898](https://github.com/NuGet/Home/issues/9898) +* Solution Explorer is not showing all NuGet package dependencies - [#9898](https://github.com/NuGet/Home/issues/9898) * Unnecessary assets file writes can lead to extra design time builds - [#9903](https://github.com/NuGet/Home/issues/9903) @@ -127,14 +121,8 @@ NuGet distribution vehicles: * Packing with ContinuePackingAfterGeneratingNuspec=false should not fail when there are no errors - [#9786](https://github.com/NuGet/Home/issues/9786) -* Clicking NU code in Visual Studio Error List window should go to https://docs.microsoft.com/nuget/reference/errors-and-warnings/ - [#9934](https://github.com/NuGet/Home/issues/9934) - -* Use 'https://' when adding new package source through Visual Studio options - [#9974](https://github.com/NuGet/Home/issues/9974) - * [CPVM] Cannot import packages file from a custom directory - [#9841](https://github.com/NuGet/Home/issues/9841) -* `RuntimeEnvironmentHelper.IsRunningOnVisualStudio` performance issue on Mono - [#9989](https://github.com/NuGet/Home/issues/9989) - * Solution Load Restore runs after first 50 nominations instead of waiting for all nominations - [#9982](https://github.com/NuGet/Home/issues/9982) * Central Package Management throws errors regarding duplicate dictionary keys when attempting to create the lock file - [#9965](https://github.com/NuGet/Home/issues/9965) @@ -145,7 +133,7 @@ NuGet distribution vehicles: * Using /p:RestoreUseStaticGraphEvaluation=true Results in Value Cannot Be Null - [#9280](https://github.com/NuGet/Home/issues/9280) -* PM UI: NullReferenceException when signature validation fails - [#10042](https://github.com/NuGet/Home/issues/10042) +* PM UI: NullReferenceException when signature validation fails - [#10042](https://github.com/NuGet/Home/issues/10042) * Instead of waiting for nominations or 20 seconds (whichever comes first), implement a sliding window at Solution Load, which allow to run exactly 1 restore even for large solutions - [#9984](https://github.com/NuGet/Home/issues/9984) @@ -158,6 +146,19 @@ NuGet distribution vehicles: **[List of all issues fixed in this release - 5.8](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5f03519b777e78b4ffb2edeb)** +### Community contributions + +Thank you to all the contributors who helped make this NuGet release awesome! + +|Who|PRs|Issues| +|----|----|----| +[omajid](https://github.com/omajid) | [3437](https://github.com/NuGet/NuGet.Client/pull/3437) | Typo in error message. "administator" instead of "administrator" - [#9662](https://github.com/NuGet/Home/issues/9662) +[odalet](https://github.com/odalet) | [3341](https://github.com/NuGet/NuGet.Client/pull/3341) | NuGet Pack with invalid AssemblyInformationalVersion reports "description is required" - [#5548](https://github.com/NuGet/Home/issues/5548) +[campersau](https://github.com/campersau) | [3501](https://github.com/NuGet/NuGet.Client/pull/3501) | `RepositoryMetadata.Equals()` does not account for Branch and Commit properties - [#9613](https://github.com/NuGet/Home/issues/9613) +[Youssef1313](https://github.com/Youssef1313) | [3599](https://github.com/NuGet/NuGet.Client/pull/3599) | Clicking NU code in Visual Studio Error List window should go to https://docs.microsoft.com/nuget/reference/errors-and-warnings/ - [#9934](https://github.com/NuGet/Home/issues/9934) +[ChrisMaddock](https://github.com/ChrisMaddock) | [3624](https://github.com/NuGet/NuGet.Client/pull/3624) | Use 'https://' when adding new package source through Visual Studio options - [#9974](https://github.com/NuGet/Home/issues/9974) +[Therzok](https://github.com/Therzok) | [3636](https://github.com/NuGet/NuGet.Client/pull/3636) | `RuntimeEnvironmentHelper.IsRunningOnVisualStudio` performance issue on Mono - [#9989](https://github.com/NuGet/Home/issues/9989) + ## Feedback welcome Your feedback is important to us. If there are any problems with this release, check our From 8c6d3478b7008903fe3efa80186e03da1c91f20f Mon Sep 17 00:00:00 2001 From: Fernando Aguilar Date: Tue, 10 Nov 2020 17:25:39 -0800 Subject: [PATCH 189/988] More community contributions --- docs/release-notes/NuGet-5.8.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/release-notes/NuGet-5.8.md b/docs/release-notes/NuGet-5.8.md index 1f6cff5f2..98bd97f67 100644 --- a/docs/release-notes/NuGet-5.8.md +++ b/docs/release-notes/NuGet-5.8.md @@ -27,8 +27,6 @@ NuGet distribution vehicles: * Search CLI Tool for NuGet.exe - [#9704](https://github.com/NuGet/Home/issues/9704) -* Add a TypeConverter for the SemanticVersion class - [#9125](https://github.com/NuGet/Home/issues/9125) - * Improve the CPVM Visual Studio experience for the case when PackageReference items have version. - [#9507](https://github.com/NuGet/Home/issues/9507) * VSOE saving package sources in tools options will overwrite credentials - [#9711](https://github.com/NuGet/Home/issues/9711) @@ -158,6 +156,8 @@ Thank you to all the contributors who helped make this NuGet release awesome! [Youssef1313](https://github.com/Youssef1313) | [3599](https://github.com/NuGet/NuGet.Client/pull/3599) | Clicking NU code in Visual Studio Error List window should go to https://docs.microsoft.com/nuget/reference/errors-and-warnings/ - [#9934](https://github.com/NuGet/Home/issues/9934) [ChrisMaddock](https://github.com/ChrisMaddock) | [3624](https://github.com/NuGet/NuGet.Client/pull/3624) | Use 'https://' when adding new package source through Visual Studio options - [#9974](https://github.com/NuGet/Home/issues/9974) [Therzok](https://github.com/Therzok) | [3636](https://github.com/NuGet/NuGet.Client/pull/3636) | `RuntimeEnvironmentHelper.IsRunningOnVisualStudio` performance issue on Mono - [#9989](https://github.com/NuGet/Home/issues/9989) +[thomaslevesque](https://github.com/thomaslevesque) | [3442](https://github.com/NuGet/NuGet.Client/pull/3442) | Add a TypeConverter for the SemanticVersion class - [#9125](https://github.com/NuGet/Home/issues/9125) + ## Feedback welcome From 32ec6aee5eb5cff02fa8dfcd0efe687db3be10f3 Mon Sep 17 00:00:00 2001 From: Fernando Aguilar Date: Tue, 10 Nov 2020 17:26:45 -0800 Subject: [PATCH 190/988] Updated version info --- docs/release-notes/NuGet-5.8.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/release-notes/NuGet-5.8.md b/docs/release-notes/NuGet-5.8.md index 98bd97f67..b6e1a8831 100644 --- a/docs/release-notes/NuGet-5.8.md +++ b/docs/release-notes/NuGet-5.8.md @@ -13,9 +13,9 @@ NuGet distribution vehicles: | NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | |:---|:---|:---| -| [**5.8**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.8](https://visualstudio.microsoft.com/downloads/) | [](https://dotnet.microsoft.com/download/dotnet-core/5.0)1 | +| [**5.8**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.8](https://visualstudio.microsoft.com/downloads/) | [5.0](https://dotnet.microsoft.com/download/dotnet-core/5.0)1 | -1 Installed with Visual Studio with.NET Core workload +1 Installed with Visual Studio 2019 with .NET Core workload > [!NOTE] > For maximum compatibility of NuGet 5.8, it is recommended to use Visual Studio 16.8, MSBuild 16.8, and .NET 5.0. From e81e8457e9d49666b5de551aff3b0773fbe7cf88 Mon Sep 17 00:00:00 2001 From: Fernando Aguilar Date: Tue, 10 Nov 2020 17:29:44 -0800 Subject: [PATCH 191/988] Updated tables of content --- docs/TOC.md | 1 + docs/release-notes/Index.md | 2 ++ 2 files changed, 3 insertions(+) diff --git a/docs/TOC.md b/docs/TOC.md index 139a4b58f..55d3b548f 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -290,6 +290,7 @@ ## Release notes ### [Known Issues](release-notes/known-issues.md) ### NuGet 5.x +#### [NuGet 5.8](release-notes/NuGet-5.8.md) #### [NuGet 5.7](release-notes/NuGet-5.7.md) #### [NuGet 5.6](release-notes/NuGet-5.6.md) #### [NuGet 5.5](release-notes/NuGet-5.5.md) diff --git a/docs/release-notes/Index.md b/docs/release-notes/Index.md index abb1788f3..e64c0f9b7 100644 --- a/docs/release-notes/Index.md +++ b/docs/release-notes/Index.md @@ -11,6 +11,8 @@ ms.topic: conceptual [Known Issues](../release-notes/known-issues.md) +[NuGet 5.8](../release-notes/NuGet-5.8.md) + [NuGet 5.7](../release-notes/NuGet-5.7.md) [NuGet 5.6](../release-notes/NuGet-5.6.md) From 12fc9ab37bc2d68acef726f8cc38d1272289a567 Mon Sep 17 00:00:00 2001 From: Fernando Aguilar Date: Tue, 10 Nov 2020 19:15:28 -0800 Subject: [PATCH 192/988] Feedback 1 --- docs/release-notes/NuGet-5.8.md | 35 +++++++++++---------------------- 1 file changed, 12 insertions(+), 23 deletions(-) diff --git a/docs/release-notes/NuGet-5.8.md b/docs/release-notes/NuGet-5.8.md index b6e1a8831..39c842522 100644 --- a/docs/release-notes/NuGet-5.8.md +++ b/docs/release-notes/NuGet-5.8.md @@ -23,32 +23,27 @@ NuGet distribution vehicles: ## Summary: What's New in 5.8 -* Package Manager sources use remote types from server - [#9608](https://github.com/NuGet/Home/issues/9608) - -* Search CLI Tool for NuGet.exe - [#9704](https://github.com/NuGet/Home/issues/9704) +* Search for packages in the CLI with ['nuget.exe search` command](https://docs.microsoft.com/en-us/nuget/reference/cli-reference/cli-ref-search) - [#9704](https://github.com/NuGet/Home/issues/9704) * Improve the CPVM Visual Studio experience for the case when PackageReference items have version. - [#9507](https://github.com/NuGet/Home/issues/9507) -* VSOE saving package sources in tools options will overwrite credentials - [#9711](https://github.com/NuGet/Home/issues/9711) - -* Replay the warnings for LegacyPackageReference projects when a project no-ops in partial restore - [#9565](https://github.com/NuGet/Home/issues/9565) +* Enable fast No-Op restore optimization for csproj-style, PackageReference-based projects in Visual Studio - [#9565](https://github.com/NuGet/Home/issues/9565) * `dotnet list` command supports `--verbosity` option - [#9600](https://github.com/NuGet/Home/issues/9600) * Add `--prerelease` option to `dotnet add package` - [#4699](https://github.com/NuGet/Home/issues/4699) -* Recommend packages from any NuGet sources - [#9872](https://github.com/NuGet/Home/issues/9872) - * Surface basic vulnerability metadata in PM UI view models - [#9850](https://github.com/NuGet/Home/issues/9850) -* Signing: implement `dotnet verify` command - [#8051](https://github.com/NuGet/Home/issues/8051) +* Signing: implement [`dotnet nuget verify` command](https://docs.microsoft.com/dotnet/core/tools/dotnet-nuget-verify) - [#8051](https://github.com/NuGet/Home/issues/8051) + +* NuGet performance improvements in Visual Studio - [#9982](https://github.com/NuGet/Home/issues/9982), [#9984](https://github.com/NuGet/Home/issues/9984), [#10052](https://github.com/NuGet/Home/issues/10052), [#9903](https://github.com/NuGet/Home/issues/9903) + ### Issues fixed in this release **DCRs:** -* FileAndForget posts a new event for every point of usage - [#9812](https://github.com/NuGet/Home/issues/9812) - * .NET 5.0 TFM: Framework Precedence Rules - [#9436](https://github.com/NuGet/Home/issues/9436) * NuGet should not infer dots platform version when parsing TargetFramework - [#9842](https://github.com/NuGet/Home/issues/9842) @@ -61,8 +56,6 @@ NuGet distribution vehicles: * .NET 5.0 Visual Studio APIs - [#9650](https://github.com/NuGet/Home/issues/9650) -* NuGet Package Manager UI for Solution is slow because restore is run for every project instead of after all projects are updated - [#6010](https://github.com/NuGet/Home/issues/6010) - * PM UI: Consolidate or Update packages operations should not be blocked due to errors (Package Downgrade, etc.) - [#9224](https://github.com/NuGet/Home/issues/9224) * NuGet features should light up for projects that have the capability; "PackageReferences" - [#9957](https://github.com/NuGet/Home/issues/9957) @@ -71,6 +64,8 @@ NuGet distribution vehicles: **Bugs:** +* NuGet Package Manager UI for Solution is slow because restore is run for every project instead of after all projects are updated - [#6010](https://github.com/NuGet/Home/issues/6010) + * OutputWindowTextWriter constructor should not be called on background thread - [#9764](https://github.com/NuGet/Home/issues/9764) * Restore signed packages on Big Endian CPUs - [#9547](https://github.com/NuGet/Home/issues/9547) @@ -89,8 +84,6 @@ NuGet distribution vehicles: * Reduce resource contention at Solution Load time caused by blocking a threaded-pool thread with `BlockingCollection.Take()` - [#9822](https://github.com/NuGet/Home/issues/9822) -* Enable PM UI experiment: Package Recommender - [#9845](https://github.com/NuGet/Home/issues/9845) - * In command line restore, with multi targeted projects, NuGet should read the target framework related information from the inner build - [#9869](https://github.com/NuGet/Home/issues/9869) * Read Runtime Identifier graph through TargetFrameworkInformation item - [#9874](https://github.com/NuGet/Home/issues/9874) @@ -105,8 +98,6 @@ NuGet distribution vehicles: * Solution Explorer is not showing all NuGet package dependencies - [#9898](https://github.com/NuGet/Home/issues/9898) -* Unnecessary assets file writes can lead to extra design time builds - [#9903](https://github.com/NuGet/Home/issues/9903) - * [CPVM] Error on floating transitive dependencies defined in Directory.Packages.props - [#9384](https://github.com/NuGet/Home/issues/9384) * Update the SPDX license list - [#9946](https://github.com/NuGet/Home/issues/9946) @@ -121,8 +112,6 @@ NuGet distribution vehicles: * [CPVM] Cannot import packages file from a custom directory - [#9841](https://github.com/NuGet/Home/issues/9841) -* Solution Load Restore runs after first 50 nominations instead of waiting for all nominations - [#9982](https://github.com/NuGet/Home/issues/9982) - * Central Package Management throws errors regarding duplicate dictionary keys when attempting to create the lock file - [#9965](https://github.com/NuGet/Home/issues/9965) * PM UI Icons aren't inverting colors properly - [#10017](https://github.com/NuGet/Home/issues/10017) @@ -133,17 +122,17 @@ NuGet distribution vehicles: * PM UI: NullReferenceException when signature validation fails - [#10042](https://github.com/NuGet/Home/issues/10042) -* Instead of waiting for nominations or 20 seconds (whichever comes first), implement a sliding window at Solution Load, which allow to run exactly 1 restore even for large solutions - [#9984](https://github.com/NuGet/Home/issues/9984) - -* Restore: excessive deep cloning of ProjectSpec, remove cloning in No-Op hash creation for PackageReference projects - [#10052](https://github.com/NuGet/Home/issues/10052) - * VS OE: dot not use `object` type for project metadata values - [#10055](https://github.com/NuGet/Home/issues/10055) +* VS OE saving package sources in tools options will overwrite credentials - [#9711](https://github.com/NuGet/Home/issues/9711) + * `dotnet pack` mistakenly uses alias for WPF Library projects - [#10020](https://github.com/NuGet/Home/issues/10020) **[List of all issues fixed in this release - 5.8](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5f03519b777e78b4ffb2edeb)** +**[List of issues/commits fixed in this release - 5.8](https://github.com/NuGet/NuGet.Client/compare/5.7.0.6726...5.8.0.6930)** + ### Community contributions Thank you to all the contributors who helped make this NuGet release awesome! From c286ec68e5148a063703b935d624c0fd077af485 Mon Sep 17 00:00:00 2001 From: Fernando Aguilar Date: Tue, 10 Nov 2020 19:29:13 -0800 Subject: [PATCH 193/988] Removed locale in docs URL --- docs/release-notes/NuGet-5.8.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-5.8.md b/docs/release-notes/NuGet-5.8.md index 39c842522..04d56b91c 100644 --- a/docs/release-notes/NuGet-5.8.md +++ b/docs/release-notes/NuGet-5.8.md @@ -23,7 +23,7 @@ NuGet distribution vehicles: ## Summary: What's New in 5.8 -* Search for packages in the CLI with ['nuget.exe search` command](https://docs.microsoft.com/en-us/nuget/reference/cli-reference/cli-ref-search) - [#9704](https://github.com/NuGet/Home/issues/9704) +* Search for packages in the CLI with ['nuget.exe search` command](https://docs.microsoft.com/nuget/reference/cli-reference/cli-ref-search) - [#9704](https://github.com/NuGet/Home/issues/9704) * Improve the CPVM Visual Studio experience for the case when PackageReference items have version. - [#9507](https://github.com/NuGet/Home/issues/9507) From 90bdcf45fcb0be056d9edd609eef3b76f6414990 Mon Sep 17 00:00:00 2001 From: Adriano Ueda Date: Tue, 10 Nov 2020 22:36:45 -0500 Subject: [PATCH 194/988] Fix typo in Edit Organization. --- docs/create-packages/Sign-a-Package.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/create-packages/Sign-a-Package.md b/docs/create-packages/Sign-a-Package.md index 76c20b5f1..102f0f88a 100644 --- a/docs/create-packages/Sign-a-Package.md +++ b/docs/create-packages/Sign-a-Package.md @@ -49,7 +49,7 @@ nuget sign MyPackage.nupkg -CertificatePath -Timestamper To publish a signed package, you must first register the certificate with NuGet.org. You need the certificate as a `.cer` file in a binary DER format. 1. [Sign in](https://www.nuget.org/users/account/LogOn?returnUrl=%2F) to NuGet.org. -1. Go to `Account settings` (or `Manage Organization` **>** `Edit Organziation` if you would like to register the certificate with an Organization account). +1. Go to `Account settings` (or `Manage Organization` **>** `Edit Organization` if you would like to register the certificate with an Organization account). 1. Expand the `Certificates` section and select `Register new`. 1. Browse and select the certficate file that was exported earlier. ![Registered Certificates](../reference/media/registered-certs.png) @@ -99,4 +99,4 @@ This command creates a testing certificate available in the current user's perso ## Related articles - [Manage package trust boundaries](../consume-packages/installing-signed-packages.md) -- [Signed Packages Reference](../reference/Signed-Packages-Reference.md) \ No newline at end of file +- [Signed Packages Reference](../reference/Signed-Packages-Reference.md) From 20a4b0ae5fc4c34f1c243a1f931f2ccd4f032900 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 11 Nov 2020 14:05:43 -0500 Subject: [PATCH 195/988] rearranged order, removed CPVM, wording changes --- docs/release-notes/NuGet-5.8.md | 42 +++++++++++++-------------------- 1 file changed, 16 insertions(+), 26 deletions(-) diff --git a/docs/release-notes/NuGet-5.8.md b/docs/release-notes/NuGet-5.8.md index 04d56b91c..6983267cd 100644 --- a/docs/release-notes/NuGet-5.8.md +++ b/docs/release-notes/NuGet-5.8.md @@ -23,19 +23,19 @@ NuGet distribution vehicles: ## Summary: What's New in 5.8 -* Search for packages in the CLI with ['nuget.exe search` command](https://docs.microsoft.com/nuget/reference/cli-reference/cli-ref-search) - [#9704](https://github.com/NuGet/Home/issues/9704) +* Display package vulnerability details in the Package Manager UI package details pane - [#9850](https://github.com/NuGet/Home/issues/9850) -* Improve the CPVM Visual Studio experience for the case when PackageReference items have version. - [#9507](https://github.com/NuGet/Home/issues/9507) +* Verify signed NuGet packages with the new [`dotnet nuget verify`](https://docs.microsoft.com/dotnet/core/tools/dotnet-nuget-verify) command - [#8051](https://github.com/NuGet/Home/issues/8051) -* Enable fast No-Op restore optimization for csproj-style, PackageReference-based projects in Visual Studio - [#9565](https://github.com/NuGet/Home/issues/9565) +* `dotnet add package` supports `--prerelease` option to add the latest version of a package, including prerelease versions - [#4699](https://github.com/NuGet/Home/issues/4699) -* `dotnet list` command supports `--verbosity` option - [#9600](https://github.com/NuGet/Home/issues/9600) +* Add the latest version of a package, including prereleases, by including the `--prerelease` with `dotnet add package` - [#4699](https://github.com/NuGet/Home/issues/4699) -* Add `--prerelease` option to `dotnet add package` - [#4699](https://github.com/NuGet/Home/issues/4699) +* Search for packages in the CLI with ['nuget.exe search`](https://docs.microsoft.com/nuget/reference/cli-reference/cli-ref-search) command - [#9704](https://github.com/NuGet/Home/issues/9704) -* Surface basic vulnerability metadata in PM UI view models - [#9850](https://github.com/NuGet/Home/issues/9850) +* `dotnet list` command supports `--verbosity` option - [#9600](https://github.com/NuGet/Home/issues/9600) -* Signing: implement [`dotnet nuget verify` command](https://docs.microsoft.com/dotnet/core/tools/dotnet-nuget-verify) - [#8051](https://github.com/NuGet/Home/issues/8051) +* Enable fast No-Op restore optimization for csproj-style, PackageReference-based projects in Visual Studio - [#9565](https://github.com/NuGet/Home/issues/9565) * NuGet performance improvements in Visual Studio - [#9982](https://github.com/NuGet/Home/issues/9982), [#9984](https://github.com/NuGet/Home/issues/9984), [#10052](https://github.com/NuGet/Home/issues/10052), [#9903](https://github.com/NuGet/Home/issues/9903) @@ -56,7 +56,7 @@ NuGet distribution vehicles: * .NET 5.0 Visual Studio APIs - [#9650](https://github.com/NuGet/Home/issues/9650) -* PM UI: Consolidate or Update packages operations should not be blocked due to errors (Package Downgrade, etc.) - [#9224](https://github.com/NuGet/Home/issues/9224) +* Package Manager UI: Consolidate or Update packages operations should not be blocked due to errors (Package Downgrade, etc.) - [#9224](https://github.com/NuGet/Home/issues/9224) * NuGet features should light up for projects that have the capability; "PackageReferences" - [#9957](https://github.com/NuGet/Home/issues/9957) @@ -72,13 +72,11 @@ NuGet distribution vehicles: * OutputConsoleLogger should not call affinitized methods in MEF constructors - [#9591](https://github.com/NuGet/Home/issues/9591) -* [CPVM-OnBoard] Rejected transitive central dependencies should be removed from the restore graph. - [#9483](https://github.com/NuGet/Home/issues/9483) - * Bug in NuGet.CommandLine.Console `PrintJustified()` method - [#9737](https://github.com/NuGet/Home/issues/9737) * Package Manager UI memory leak when package metadata is garbage collected due to a bad binding - [#9757](https://github.com/NuGet/Home/issues/9757) -* [Test Failure][Signing] No warning is showed in Error List when installing a signed package with packages.config format in PM UI - [#9798](https://github.com/NuGet/Home/issues/9798) +* [Signing] No warning is showed in Error List when installing a signed package with packages.config format in Package Manager UI - [#9798](https://github.com/NuGet/Home/issues/9798) * NuGet.CommandLine.XPlat should not have public APIs - [#9821](https://github.com/NuGet/Home/issues/9821) @@ -94,37 +92,29 @@ NuGet distribution vehicles: * Allow `net5.0-platform` projects to be loaded and restored in Visual Studio - [#9863](https://github.com/NuGet/Home/issues/9863) -* Display the resolved version in the PM UI - [#9826](https://github.com/NuGet/Home/issues/9826) +* Display the resolved version in the Package Manager UI - [#9826](https://github.com/NuGet/Home/issues/9826) -* Solution Explorer is not showing all NuGet package dependencies - [#9898](https://github.com/NuGet/Home/issues/9898) - -* [CPVM] Error on floating transitive dependencies defined in Directory.Packages.props - [#9384](https://github.com/NuGet/Home/issues/9384) +* Package Manager UI: Solution Explorer is not showing all NuGet package dependencies - [#9898](https://github.com/NuGet/Home/issues/9898) * Update the SPDX license list - [#9946](https://github.com/NuGet/Home/issues/9946) -* Error when a Project has CPVM enabled but there are not any PackageVersion items defined - [#9341](https://github.com/NuGet/Home/issues/9341) - * VS 2019 crashes after opening Manage NuGet Packages: icon causes unhandled exception in image conversio - [#9696](https://github.com/NuGet/Home/issues/9696) * NuGet.Packaging.Extraction needs ilmerge to exclude Newtonsoft.Json - [#9966](https://github.com/NuGet/Home/issues/9966) * Packing with ContinuePackingAfterGeneratingNuspec=false should not fail when there are no errors - [#9786](https://github.com/NuGet/Home/issues/9786) -* [CPVM] Cannot import packages file from a custom directory - [#9841](https://github.com/NuGet/Home/issues/9841) - -* Central Package Management throws errors regarding duplicate dictionary keys when attempting to create the lock file - [#9965](https://github.com/NuGet/Home/issues/9965) - -* PM UI Icons aren't inverting colors properly - [#10017](https://github.com/NuGet/Home/issues/10017) +* Package Manager UI: Icons aren't inverting colors properly - [#10017](https://github.com/NuGet/Home/issues/10017) * Incorrect project counts for Up-To-Date and No-Op projects at Restore - [#10026](https://github.com/NuGet/Home/issues/10026) -* Using /p:RestoreUseStaticGraphEvaluation=true Results in Value Cannot Be Null - [#9280](https://github.com/NuGet/Home/issues/9280) +* Using `/p:RestoreUseStaticGraphEvaluation=true` Results in Value Cannot Be Null - [#9280](https://github.com/NuGet/Home/issues/9280) -* PM UI: NullReferenceException when signature validation fails - [#10042](https://github.com/NuGet/Home/issues/10042) +* Package Manager UI: NullReferenceException when signature validation fails - [#10042](https://github.com/NuGet/Home/issues/10042) -* VS OE: dot not use `object` type for project metadata values - [#10055](https://github.com/NuGet/Home/issues/10055) +* Codespaces: do not use `object` type for project metadata values - [#10055](https://github.com/NuGet/Home/issues/10055) -* VS OE saving package sources in tools options will overwrite credentials - [#9711](https://github.com/NuGet/Home/issues/9711) +* Codespaces: saving package sources in tools options will overwrite credentials - [#9711](https://github.com/NuGet/Home/issues/9711) * `dotnet pack` mistakenly uses alias for WPF Library projects - [#10020](https://github.com/NuGet/Home/issues/10020) From abd9c8bce0ef5a40e7518e9a04d4c765551aadcf Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 11 Nov 2020 14:16:05 -0500 Subject: [PATCH 196/988] moved a perf thing --- docs/release-notes/NuGet-5.8.md | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/docs/release-notes/NuGet-5.8.md b/docs/release-notes/NuGet-5.8.md index 6983267cd..8cbbda94b 100644 --- a/docs/release-notes/NuGet-5.8.md +++ b/docs/release-notes/NuGet-5.8.md @@ -37,7 +37,7 @@ NuGet distribution vehicles: * Enable fast No-Op restore optimization for csproj-style, PackageReference-based projects in Visual Studio - [#9565](https://github.com/NuGet/Home/issues/9565) -* NuGet performance improvements in Visual Studio - [#9982](https://github.com/NuGet/Home/issues/9982), [#9984](https://github.com/NuGet/Home/issues/9984), [#10052](https://github.com/NuGet/Home/issues/10052), [#9903](https://github.com/NuGet/Home/issues/9903) +* NuGet performance improvements in Visual Studio - [#9982](https://github.com/NuGet/Home/issues/9982), [#9984](https://github.com/NuGet/Home/issues/9984), [#10052](https://github.com/NuGet/Home/issues/10052), [#9903](https://github.com/NuGet/Home/issues/9903), [#6010](https://github.com/NuGet/Home/issues/6010) ### Issues fixed in this release @@ -48,8 +48,6 @@ NuGet distribution vehicles: * NuGet should not infer dots platform version when parsing TargetFramework - [#9842](https://github.com/NuGet/Home/issues/9842) -* Support Nuget.Packaging and transitive closure for net45 - [#9883](https://github.com/NuGet/Home/issues/9883) - * Use TargetFrameworkMoniker & TargetPlatformMoniker to infer the frameworks instead of using individual TFI, TFV, TPI, TPV properties - [#9895](https://github.com/NuGet/Home/issues/9895) * Update `GetReferenceNearestTargetFrameworkTask()` to support target frameworks with platforms (such as net5.0-windows) - [#9894](https://github.com/NuGet/Home/issues/9894) @@ -64,8 +62,6 @@ NuGet distribution vehicles: **Bugs:** -* NuGet Package Manager UI for Solution is slow because restore is run for every project instead of after all projects are updated - [#6010](https://github.com/NuGet/Home/issues/6010) - * OutputWindowTextWriter constructor should not be called on background thread - [#9764](https://github.com/NuGet/Home/issues/9764) * Restore signed packages on Big Endian CPUs - [#9547](https://github.com/NuGet/Home/issues/9547) @@ -110,14 +106,14 @@ NuGet distribution vehicles: * Using `/p:RestoreUseStaticGraphEvaluation=true` Results in Value Cannot Be Null - [#9280](https://github.com/NuGet/Home/issues/9280) +* `dotnet pack` mistakenly uses alias for WPF Library projects - [#10020](https://github.com/NuGet/Home/issues/10020) + * Package Manager UI: NullReferenceException when signature validation fails - [#10042](https://github.com/NuGet/Home/issues/10042) * Codespaces: do not use `object` type for project metadata values - [#10055](https://github.com/NuGet/Home/issues/10055) * Codespaces: saving package sources in tools options will overwrite credentials - [#9711](https://github.com/NuGet/Home/issues/9711) -* `dotnet pack` mistakenly uses alias for WPF Library projects - [#10020](https://github.com/NuGet/Home/issues/10020) - **[List of all issues fixed in this release - 5.8](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5f03519b777e78b4ffb2edeb)** From 6f104a59508f2b418b088ff7af5d26230bb94b26 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 11 Nov 2020 14:24:09 -0500 Subject: [PATCH 197/988] .NET 5 support line --- docs/release-notes/NuGet-5.8.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/release-notes/NuGet-5.8.md b/docs/release-notes/NuGet-5.8.md index 8cbbda94b..edd20dc2f 100644 --- a/docs/release-notes/NuGet-5.8.md +++ b/docs/release-notes/NuGet-5.8.md @@ -22,6 +22,7 @@ NuGet distribution vehicles: ## Summary: What's New in 5.8 +🎉 **This is the first release to offer full authoring and restoring support for NuGet packages targeting .NET 5.0** 🎉 * Display package vulnerability details in the Package Manager UI package details pane - [#9850](https://github.com/NuGet/Home/issues/9850) From 7ff8475f97218887020040e89678f2b664ed0c0d Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 11 Nov 2020 14:33:36 -0500 Subject: [PATCH 198/988] more perf rephrasing --- docs/release-notes/NuGet-5.8.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-5.8.md b/docs/release-notes/NuGet-5.8.md index edd20dc2f..fcc9a6c78 100644 --- a/docs/release-notes/NuGet-5.8.md +++ b/docs/release-notes/NuGet-5.8.md @@ -38,7 +38,9 @@ NuGet distribution vehicles: * Enable fast No-Op restore optimization for csproj-style, PackageReference-based projects in Visual Studio - [#9565](https://github.com/NuGet/Home/issues/9565) -* NuGet performance improvements in Visual Studio - [#9982](https://github.com/NuGet/Home/issues/9982), [#9984](https://github.com/NuGet/Home/issues/9984), [#10052](https://github.com/NuGet/Home/issues/10052), [#9903](https://github.com/NuGet/Home/issues/9903), [#6010](https://github.com/NuGet/Home/issues/6010) +* Solution level Package Manager UI operations such as package installs and updates are up to 10x faster - [#6010](https://github.com/NuGet/Home/issues/6010) + +* Several other NuGet performance improvements in Visual Studio - [#9982](https://github.com/NuGet/Home/issues/9982), [#9984](https://github.com/NuGet/Home/issues/9984), [#10052](https://github.com/NuGet/Home/issues/10052), [#9903](https://github.com/NuGet/Home/issues/9903) ### Issues fixed in this release From 437df5323adb849ca2f1c2db1f4260595f8e52ab Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 11 Nov 2020 14:44:54 -0500 Subject: [PATCH 199/988] wording --- docs/release-notes/NuGet-5.8.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-5.8.md b/docs/release-notes/NuGet-5.8.md index fcc9a6c78..349dd4ee6 100644 --- a/docs/release-notes/NuGet-5.8.md +++ b/docs/release-notes/NuGet-5.8.md @@ -18,7 +18,7 @@ NuGet distribution vehicles: 1 Installed with Visual Studio 2019 with .NET Core workload > [!NOTE] -> For maximum compatibility of NuGet 5.8, it is recommended to use Visual Studio 16.8, MSBuild 16.8, and .NET 5.0. +> For maximum compatibility with NuGet 5.8, we recommend using Visual Studio 16.8, MSBuild 16.8, and .NET 5.0. ## Summary: What's New in 5.8 From 9bafb31d40e00c3184d4c2fab13596c34a8b534a Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 11 Nov 2020 20:23:33 -0500 Subject: [PATCH 200/988] changed compat preface --- docs/release-notes/NuGet-5.8.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-5.8.md b/docs/release-notes/NuGet-5.8.md index 349dd4ee6..013edb881 100644 --- a/docs/release-notes/NuGet-5.8.md +++ b/docs/release-notes/NuGet-5.8.md @@ -18,7 +18,7 @@ NuGet distribution vehicles: 1 Installed with Visual Studio 2019 with .NET Core workload > [!NOTE] -> For maximum compatibility with NuGet 5.8, we recommend using Visual Studio 16.8, MSBuild 16.8, and .NET 5.0. +> Visual Studio 16.8, MSBuild 16.8, and .NET 5.0 require NuGet.exe 5.8 or later. ## Summary: What's New in 5.8 From 67b160453a35c6136c822ad43938f367802f7fcf Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 11 Nov 2020 20:26:54 -0500 Subject: [PATCH 201/988] small fixes --- docs/release-notes/NuGet-5.8.md | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/docs/release-notes/NuGet-5.8.md b/docs/release-notes/NuGet-5.8.md index 013edb881..098217dc5 100644 --- a/docs/release-notes/NuGet-5.8.md +++ b/docs/release-notes/NuGet-5.8.md @@ -28,13 +28,11 @@ NuGet distribution vehicles: * Verify signed NuGet packages with the new [`dotnet nuget verify`](https://docs.microsoft.com/dotnet/core/tools/dotnet-nuget-verify) command - [#8051](https://github.com/NuGet/Home/issues/8051) -* `dotnet add package` supports `--prerelease` option to add the latest version of a package, including prerelease versions - [#4699](https://github.com/NuGet/Home/issues/4699) +* [`dotnet add package`](https://docs.microsoft.com/dotnet/core/tools/dotnet-add-package#:~:text=dotnet%20add%20package%201%20Name%202%20Synopsis%203,when%20targeting%20a%20specific%20framework.%20...%206%20Examples) supports `--prerelease` option to add the latest version of a package, including prerelease versions - [#4699](https://github.com/NuGet/Home/issues/4699) -* Add the latest version of a package, including prereleases, by including the `--prerelease` with `dotnet add package` - [#4699](https://github.com/NuGet/Home/issues/4699) +* Search for packages in the CLI with [`nuget.exe search`](https://docs.microsoft.com/nuget/reference/cli-reference/cli-ref-search) command - [#9704](https://github.com/NuGet/Home/issues/9704) -* Search for packages in the CLI with ['nuget.exe search`](https://docs.microsoft.com/nuget/reference/cli-reference/cli-ref-search) command - [#9704](https://github.com/NuGet/Home/issues/9704) - -* `dotnet list` command supports `--verbosity` option - [#9600](https://github.com/NuGet/Home/issues/9600) +* [`dotnet list package`](https://docs.microsoft.com/dotnet/core/tools/dotnet-list-package) command supports `--verbosity` option - [#9600](https://github.com/NuGet/Home/issues/9600) * Enable fast No-Op restore optimization for csproj-style, PackageReference-based projects in Visual Studio - [#9565](https://github.com/NuGet/Home/issues/9565) From 82840a8b27dc8001aa762a73bd64201cccfe2c83 Mon Sep 17 00:00:00 2001 From: Stephen Cleary Date: Thu, 12 Nov 2020 09:09:56 -0500 Subject: [PATCH 202/988] Fix broken link. --- docs/guides/analyzers-conventions.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/guides/analyzers-conventions.md b/docs/guides/analyzers-conventions.md index 2b6f7085d..11181506f 100644 --- a/docs/guides/analyzers-conventions.md +++ b/docs/guides/analyzers-conventions.md @@ -9,7 +9,7 @@ ms.topic: conceptual # Analyzer NuGet formats -The .NET Compiler Platform (also known as "Roslyn") allows developers to create [analyzers](https://github.com/dotnet/roslyn/wiki/How-To-Write-a-C%23-Analyzer-and-Code-Fix) that examine the syntax tree and semantics of code as it's being written. This provides developers with a way to create domain-specific analysis tools, such as those that would help guide the use of a particular API or library. You can find more information on the [.NET/Roslyn](https://github.com/dotnet/roslyn/wiki) GitHub wiki. Also see the article, [Use Roslyn to Write a Live Code Analyzer for your API](/archive/msdn-magazine/2014/special-issue/csharp-and-visual-basic-use-roslyn-to-write-a-live-code-analyzer-for-your-api) in MSDN Magazine. +The .NET Compiler Platform (also known as "Roslyn") allows developers to create [analyzers](https://github.com/dotnet/roslyn/blob/master/docs/wiki/How-To-Write-a-C%23-Analyzer-and-Code-Fix.md) that examine the syntax tree and semantics of code as it's being written. This provides developers with a way to create domain-specific analysis tools, such as those that would help guide the use of a particular API or library. You can find more information on the [.NET/Roslyn](https://github.com/dotnet/roslyn/wiki) GitHub wiki. Also see the article, [Use Roslyn to Write a Live Code Analyzer for your API](/archive/msdn-magazine/2014/special-issue/csharp-and-visual-basic-use-roslyn-to-write-a-live-code-analyzer-for-your-api) in MSDN Magazine. Analyzers themselves are typically packaged and distributed as part of the NuGet packages that implement the API or library in question. @@ -163,4 +163,4 @@ foreach($analyzersPath in $analyzersPaths) } } } -``` \ No newline at end of file +``` From 284f0993c1c289bcc5583d7b769ba291cff8b04e Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Thu, 12 Nov 2020 13:11:47 -0600 Subject: [PATCH 203/988] Add mmap-based file extraction --- docs/release-notes/NuGet-5.8.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/release-notes/NuGet-5.8.md b/docs/release-notes/NuGet-5.8.md index 098217dc5..8b8ede2dd 100644 --- a/docs/release-notes/NuGet-5.8.md +++ b/docs/release-notes/NuGet-5.8.md @@ -24,6 +24,8 @@ NuGet distribution vehicles: ## Summary: What's New in 5.8 🎉 **This is the first release to offer full authoring and restoring support for NuGet packages targeting .NET 5.0** 🎉 +* Speed up nupkg extraction using mmap/CreateFileMapping - [#9807](https://github.com/NuGet/Home/issues/9807) + * Display package vulnerability details in the Package Manager UI package details pane - [#9850](https://github.com/NuGet/Home/issues/9850) * Verify signed NuGet packages with the new [`dotnet nuget verify`](https://docs.microsoft.com/dotnet/core/tools/dotnet-nuget-verify) command - [#8051](https://github.com/NuGet/Home/issues/8051) From 94952858d030176e3f89022a37e4205f9004263d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Sharma?= <737941+loic-sharma@users.noreply.github.com> Date: Thu, 12 Nov 2020 13:38:54 -0800 Subject: [PATCH 204/988] Notify that owners field is deprecated --- docs/reference/nuspec.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/reference/nuspec.md b/docs/reference/nuspec.md index da48001f2..f41d63ed1 100644 --- a/docs/reference/nuspec.md +++ b/docs/reference/nuspec.md @@ -93,6 +93,9 @@ When uploading a package to nuget.org, the `authors` field is limited to 4000 ch ### Optional metadata elements #### owners +> [!Important] +> owners is deprecated. Use authors instead. + A comma-separated list of the package creators using profile names on nuget.org. This is often the same list as in `authors`, and is ignored when uploading the package to nuget.org. See [Managing package owners on nuget.org](../nuget-org/publish-a-package.md#managing-package-owners-on-nugetorg). #### projectUrl From 9d1cf59d948de001dd9ca2b0d6923a53de96173f Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 13 Nov 2020 11:00:02 -0800 Subject: [PATCH 205/988] Document PC restore (#2216) --- docs/consume-packages/Package-Restore.md | 5 ++++- docs/reference/msbuild-targets.md | 17 +++++++++++++++-- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/docs/consume-packages/Package-Restore.md b/docs/consume-packages/Package-Restore.md index e2048ff9c..8181540ac 100644 --- a/docs/consume-packages/Package-Restore.md +++ b/docs/consume-packages/Package-Restore.md @@ -142,7 +142,10 @@ NuGet has two formats in which a project may use packages: [`PackageReference`]( ## Restore using MSBuild -To restore packages listed in the project file with PackageReference, use the the [msbuild -t:restore](../reference/msbuild-targets.md#restore-target) command. This command is available only in NuGet 4.x+ and MSBuild 15.1+, which are included with Visual Studio 2017 and higher versions. Both `nuget restore` and `dotnet restore` use this command for applicable projects. +Use the the [msbuild -t:restore](../reference/msbuild-targets.md#restore-target) command to restore packages listed in the project file (see [PackageReference](../../consume-packages/package-references-in-project-files.md)) and starting with MSBuild 16.5+, `packages.config` projects. + + This command is available only in NuGet 4.x+ and MSBuild 15.1+, which are included with Visual Studio 2017 and higher versions. + Starting with MSBuild 16.5+, this command can also restore `packages.config` based projects when run with `-p:RestorePackagesConfig=true`. 1. Open a Developer command prompt (In the **Search** box, type **Developer command prompt**). diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index d42113633..7dcb602d6 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -360,7 +360,8 @@ An example: 1. Download packages 1. Write assets file, targets, and props -The `restore` target works **only** for projects using the PackageReference format. It does **not** work for projects using the `packages.config` format; use [nuget restore](../reference/cli-reference/cli-ref-restore.md) instead. +The `restore` target works for projects using the PackageReference format. +`MSBuild 16.5+` also has [opt-in support](#restoring-packagereference-and-packages.config-with-msbuild) for the `packages.config` format. ### Restore properties @@ -386,7 +387,8 @@ Additional restore settings may come from MSBuild properties in the project file | RestorePackagesWithLockFile | Opts into the usage of a lock file. | | RestoreLockedMode | Run restore in locked mode. This means that restore will not reevaluate the dependencies. | | NuGetLockFilePath | A custom location for the lock file. The default location is next to the project and is named `packages.lock.json`. | -| RestoreForceEvaluate | Forces restore to recompute the dependencies and update the lock file without any warning. | +| RestoreForceEvaluate | Forces restore to recompute the dependencies and update the lock file without any warning. | +| RestorePackagesConfig | An opt in switch, that restores projects with packages.config. Support with `MSBuild -t:restore` only. | #### Examples @@ -431,6 +433,17 @@ msbuild -t:build -restore The same logic applies to other targets similar to `build`. +### Restoring PackageReference and packages.config with MSBuild + +With MSBuild 16.5+, packages.config are also supported for `msbuild -t:restore`. + +```cli +msbuild -t:restore -p:RestorePackagesConfig=true +``` + +> [!NOTE] +> `packages.config` restore is only available with `MSBuild 16.5+`, and not with `dotnet.exe` + ### PackageTargetFallback The `PackageTargetFallback` element allows you to specify a set of compatible targets to be used when restoring packages. It's designed to allow packages that use a dotnet [TxM](../reference/target-frameworks.md) to work with compatible packages that don't declare a dotnet TxM. That is, if your project uses the dotnet TxM, then all the packages it depends on must also have a dotnet TxM, unless you add the `` to your project in order to allow non-dotnet platforms to be compatible with dotnet. From 8d846dd0aab0b4807980e9837af077af19cf7fac Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Tue, 17 Nov 2020 17:58:52 -0500 Subject: [PATCH 206/988] Added links to table for easy reference --- .../Package-authoring-best-practices.md | 30 +++++++++---------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/docs/guides/Package-authoring-best-practices.md b/docs/guides/Package-authoring-best-practices.md index c5c643a29..b6c9943a0 100644 --- a/docs/guides/Package-authoring-best-practices.md +++ b/docs/guides/Package-authoring-best-practices.md @@ -52,25 +52,25 @@ Metadata is a foundational component of any NuGet package. The quality of your m In Visual Studio, the recommended way to specify package metadata is to go Project > [Project Name] Properties > Package. -Package metadata elements can also be specified directly in the project file (.csproj). +Package metadata elements can also be [specified directly in the project file](https://docs.microsoft.com/nuget/create-packages/creating-a-package-msbuild#set-properties). Below is a table mapping and describing available packages metadata elements: -| Visual Studio property name | csproj/MSBuild property name | Nuspec property name | Description | +| Visual Studio property name | [Project file/ MSBuild property name](https://docs.microsoft.com/en-us/dotnet/core/tools/csproj#packagereleasenotes) | [Nuspec property name](https://docs.microsoft.com/en-us/nuget/reference/nuspec#general-form-and-schema) | Description | |-----------------------------|------------------------------|-----------------------------|-------------------------------------------------------------------------------------------------------------------| -| `Package id` | `PackageId` | `id` | The package identifier. A prefix from the identifier can be reserved if it meets the criteria. | -| `Package Version` | `Version` | `version` | NuGet package version. For more information, see NuGet package version. | -| `Authors` | `Authors` | `authors` | A comma-separated list of package authors, matching the profile names on NuGet.org. | -| `Description` | `Description` | `description` | A long description of the package displayed in UI. | -| `Copyright` | `Copyright` | `copyright` | Copyright details for the package. language. | -| `Licensing - Expression` | `PackageLicenseExpression` | `license type="expression"` | An SPDX license expression or path to a license file within the package, often shown in UIs like NuGet.org. | -| `Licensing - File` | `PackageLicenseFile` | `license type="file"` | File for custom license that isn't supported by license expressions | -| `Project URL` | `PackageProjectUrl` | `projectUrl` | A URL for the project homepage. | -| `Icon File` | `PackageIcon` | `icon` | An image to use as the icon for the package. | -| `Repository URL` | `RepositoryUrl` | `repository url=""` | URL to the repository from which the package was built. | -| `Repository type` | `RespositoryType` | `repository type=""` | Type of repository the repository URL is pointing to (i.e. git) | -| `Tags` | `PackageTags` | `tags` | A space-delimited list of tags and keywords that describe the package. Tags are used when searching for packages. | -| `Release notes` | `PackageReleaseNotes` | `releaseNotes` | A description of the changes made in this release of the package. | +| [`Package id`](#package-id) | [`PackageId`](https://docs.microsoft.com/en-us/dotnet/core/tools/csproj#packageid) | [`id`](https://docs.microsoft.com/en-us/nuget/reference/nuspec#id) | The package identifier. A prefix from the identifier can be reserved if it meets the criteria. | +| [`Package version`](#package-version) | [`PackageVersion`](https://docs.microsoft.com/en-us/dotnet/core/tools/csproj#packageversion) | [`version`](https://docs.microsoft.com/en-us/nuget/reference/nuspec#version) | NuGet package version. For more information, see NuGet package version. | +| [`Authors`](#authors) | [`Authors`](https://docs.microsoft.com/en-us/dotnet/core/tools/csproj#authors) | [`authors`](https://docs.microsoft.com/en-us/nuget/reference/nuspec#authors) | A comma-separated list of package authors, matching the profile names on NuGet.org. | +| [`Description`](#description) | [`Description`](https://docs.microsoft.com/en-us/dotnet/core/tools/csproj#description) | [`description`](https://docs.microsoft.com/en-us/nuget/reference/nuspec#description) | A long description of the package displayed in UI. | +| [`Copyright`](#copyright) | [`Copyright`](https://docs.microsoft.com/en-us/dotnet/core/tools/csproj#copyright) | [`copyright`](https://docs.microsoft.com/en-us/nuget/reference/nuspec#copyright) | Copyright details for the package. language. | +| [`Licensing - Expression`](#licensing) | [`PackageLicenseExpression`](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="expression"`](https://docs.microsoft.com/en-us/nuget/reference/nuspec#license) | An SPDX license expression or path to a license file within the package, often shown in UIs like NuGet.org. | +| [`Licensing - File`](#licensing) | [`PackageLicenseFile`](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="file"`](https://docs.microsoft.com/en-us/nuget/reference/nuspec#license) | File for custom license that isn't supported by license expressions | +| [`Project URL`](#project-url) | `PackageProjectUrl` | [`projectUrl`](https://docs.microsoft.com/en-us/nuget/reference/nuspec#projecturl) | A URL for the project homepage. | +| [`Icon File`](#icon) | [`PackageIcon`](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#packing-an-icon-image-file) | [`icon`](https://docs.microsoft.com/en-us/nuget/reference/nuspec#icon) | An image to use as the icon for the package. | +| [`Repository URL`](#repository-type-and-url) | [`RepositoryUrl`](https://docs.microsoft.com/en-us/dotnet/core/tools/csproj#repositoryurl) | [`repository url=""`](https://docs.microsoft.com/en-us/nuget/reference/nuspec#repository) | URL to the repository from which the package was built. | +| [`Repository type`](#repository-type-and-url) | [`RespositoryType`](https://docs.microsoft.com/en-us/dotnet/core/tools/csproj#repositorytype) | [`repository type=""`](https://docs.microsoft.com/en-us/nuget/reference/nuspec#repository) | Type of repository the repository URL is pointing to (i.e. git) | +| [`Tags`](#tags) | [`PackageTags`](https://docs.microsoft.com/en-us/dotnet/core/tools/csproj#packagetags) | [`tags`](https://docs.microsoft.com/en-us/nuget/reference/nuspec#tags) | A space-delimited list of tags and keywords that describe the package. Tags are used when searching for packages. | +| [`Release notes`](#release-notes) | https://docs.microsoft.com/en-us/dotnet/core/tools/csproj#packagereleasenotes | [`releaseNotes`](https://docs.microsoft.com/en-us/nuget/reference/nuspec#releasenotes) | A description of the changes made in this release of the package. | ### Package ID From f1ad8493e7617f95a832e3bab6b915dbfcb0e499 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Tue, 17 Nov 2020 18:41:25 -0500 Subject: [PATCH 207/988] Table fixes --- .../Package-authoring-best-practices.md | 30 +++++++++---------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/docs/guides/Package-authoring-best-practices.md b/docs/guides/Package-authoring-best-practices.md index b6c9943a0..864061b1d 100644 --- a/docs/guides/Package-authoring-best-practices.md +++ b/docs/guides/Package-authoring-best-practices.md @@ -56,21 +56,21 @@ Package metadata elements can also be [specified directly in the project file](h Below is a table mapping and describing available packages metadata elements: -| Visual Studio property name | [Project file/ MSBuild property name](https://docs.microsoft.com/en-us/dotnet/core/tools/csproj#packagereleasenotes) | [Nuspec property name](https://docs.microsoft.com/en-us/nuget/reference/nuspec#general-form-and-schema) | Description | -|-----------------------------|------------------------------|-----------------------------|-------------------------------------------------------------------------------------------------------------------| -| [`Package id`](#package-id) | [`PackageId`](https://docs.microsoft.com/en-us/dotnet/core/tools/csproj#packageid) | [`id`](https://docs.microsoft.com/en-us/nuget/reference/nuspec#id) | The package identifier. A prefix from the identifier can be reserved if it meets the criteria. | -| [`Package version`](#package-version) | [`PackageVersion`](https://docs.microsoft.com/en-us/dotnet/core/tools/csproj#packageversion) | [`version`](https://docs.microsoft.com/en-us/nuget/reference/nuspec#version) | NuGet package version. For more information, see NuGet package version. | -| [`Authors`](#authors) | [`Authors`](https://docs.microsoft.com/en-us/dotnet/core/tools/csproj#authors) | [`authors`](https://docs.microsoft.com/en-us/nuget/reference/nuspec#authors) | A comma-separated list of package authors, matching the profile names on NuGet.org. | -| [`Description`](#description) | [`Description`](https://docs.microsoft.com/en-us/dotnet/core/tools/csproj#description) | [`description`](https://docs.microsoft.com/en-us/nuget/reference/nuspec#description) | A long description of the package displayed in UI. | -| [`Copyright`](#copyright) | [`Copyright`](https://docs.microsoft.com/en-us/dotnet/core/tools/csproj#copyright) | [`copyright`](https://docs.microsoft.com/en-us/nuget/reference/nuspec#copyright) | Copyright details for the package. language. | -| [`Licensing - Expression`](#licensing) | [`PackageLicenseExpression`](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="expression"`](https://docs.microsoft.com/en-us/nuget/reference/nuspec#license) | An SPDX license expression or path to a license file within the package, often shown in UIs like NuGet.org. | -| [`Licensing - File`](#licensing) | [`PackageLicenseFile`](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="file"`](https://docs.microsoft.com/en-us/nuget/reference/nuspec#license) | File for custom license that isn't supported by license expressions | -| [`Project URL`](#project-url) | `PackageProjectUrl` | [`projectUrl`](https://docs.microsoft.com/en-us/nuget/reference/nuspec#projecturl) | A URL for the project homepage. | -| [`Icon File`](#icon) | [`PackageIcon`](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#packing-an-icon-image-file) | [`icon`](https://docs.microsoft.com/en-us/nuget/reference/nuspec#icon) | An image to use as the icon for the package. | -| [`Repository URL`](#repository-type-and-url) | [`RepositoryUrl`](https://docs.microsoft.com/en-us/dotnet/core/tools/csproj#repositoryurl) | [`repository url=""`](https://docs.microsoft.com/en-us/nuget/reference/nuspec#repository) | URL to the repository from which the package was built. | -| [`Repository type`](#repository-type-and-url) | [`RespositoryType`](https://docs.microsoft.com/en-us/dotnet/core/tools/csproj#repositorytype) | [`repository type=""`](https://docs.microsoft.com/en-us/nuget/reference/nuspec#repository) | Type of repository the repository URL is pointing to (i.e. git) | -| [`Tags`](#tags) | [`PackageTags`](https://docs.microsoft.com/en-us/dotnet/core/tools/csproj#packagetags) | [`tags`](https://docs.microsoft.com/en-us/nuget/reference/nuspec#tags) | A space-delimited list of tags and keywords that describe the package. Tags are used when searching for packages. | -| [`Release notes`](#release-notes) | https://docs.microsoft.com/en-us/dotnet/core/tools/csproj#packagereleasenotes | [`releaseNotes`](https://docs.microsoft.com/en-us/nuget/reference/nuspec#releasenotes) | A description of the changes made in this release of the package. | +| Visual Studio property name | [Project file/ MSBuild property name](https://docs.microsoft.com/dotnet/core/tools/csproj#packagereleasenotes) | [Nuspec property name](https://docs.microsoft.com/nuget/reference/nuspec#general-form-and-schema) | Description | +|-----------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------| +| [`Package id`](#package-id) | [`PackageId`](https://docs.microsoft.com/dotnet/core/tools/csproj#packageid) | [`id`](https://docs.microsoft.com/nuget/reference/nuspec#id) | The package name or identifier. | +| [`Package version`](#package-version) | [`PackageVersion`](https://docs.microsoft.com/dotnet/core/tools/csproj#packageversion) | [`version`](https://docs.microsoft.com/nuget/reference/nuspec#version) | NuGet package version. | +| [`Authors`](#authors) | [`Authors`](https://docs.microsoft.com/dotnet/core/tools/csproj#authors) | [`authors`](https://docs.microsoft.com/nuget/reference/nuspec#authors) | A comma-separated list of package authors. | +| [`Description`](#description) | [`Description`](https://docs.microsoft.com/dotnet/core/tools/csproj#description) | [`description`](https://docs.microsoft.com/nuget/reference/nuspec#description) | A description of the package. | +| [`Copyright`](#copyright) | [`Copyright`](https://docs.microsoft.com/dotnet/core/tools/csproj#copyright) | [`copyright`](https://docs.microsoft.com/nuget/reference/nuspec#copyright) | Copyright details for the package. | +| [`Licensing - Expression`](#licensing) | [`PackageLicenseExpression`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="expression"`](https://docs.microsoft.com/nuget/reference/nuspec#license) | An SPDX license expression. | +| [`Licensing - File`](#licensing) | [`PackageLicenseFile`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="file"`](https://docs.microsoft.com/nuget/reference/nuspec#license) | Path to a custom license file. | +| [`Project URL`](#project-url) | `PackageProjectUrl` | [`projectUrl`](https://docs.microsoft.com/nuget/reference/nuspec#projecturl) | A URL for the project homepage. | +| [`Icon File`](#icon) | [`PackageIcon`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-an-icon-image-file) | [`icon`](https://docs.microsoft.com/nuget/reference/nuspec#icon) | Path to the package icon image file. | +| [`Repository URL`](#repository-type-and-url) | [`RepositoryUrl`](https://docs.microsoft.com/dotnet/core/tools/csproj#repositoryurl) | [`repository url`](https://docs.microsoft.com/nuget/reference/nuspec#repository) | URL to the repository from which the package was built. | +| [`Repository type`](#repository-type-and-url) | [`RespositoryType`](https://docs.microsoft.com/dotnet/core/tools/csproj#repositorytype) | [`repository type`](https://docs.microsoft.com/nuget/reference/nuspec#repository) | Type of repository the repository URL is pointing to (i.e. "git"). | +| [`Tags`](#tags) | [`PackageTags`](https://docs.microsoft.com/dotnet/core/tools/csproj#packagetags) | [`tags`](https://docs.microsoft.com/nuget/reference/nuspec#tags) | A space-delimited list of tags and keywords that describe the package. Tags are used when searching for packages. | +| [`Release notes`](#release-notes) | [`PackageReleaseNotes`](https://docs.microsoft.com/dotnet/core/tools/csproj#packagereleasenotes) | [`releaseNotes`](https://docs.microsoft.com/nuget/reference/nuspec#releasenotes) | A description of the changes made in this release of the package. | | ### Package ID From 242b496318a8fec9065184f678ea26d72ba1e741 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Tue, 17 Nov 2020 19:23:35 -0500 Subject: [PATCH 208/988] Small fixes --- .../Package-authoring-best-practices.md | 26 +++++++++---------- 1 file changed, 12 insertions(+), 14 deletions(-) diff --git a/docs/guides/Package-authoring-best-practices.md b/docs/guides/Package-authoring-best-practices.md index 864061b1d..a453ad3fc 100644 --- a/docs/guides/Package-authoring-best-practices.md +++ b/docs/guides/Package-authoring-best-practices.md @@ -89,8 +89,7 @@ If you're publishing a completely new package: ✔️ CONSIDER using [SemVer](https://semver.org/) to version your NuGet package. > Essentially, this means using the Major.Minor.Patch[-prerelease] format. -✔️ DO include a pre-release suffix when releasing a non-stable package. -TODO: Include and example and link to https://docs.microsoft.com/dotnet/standard/library-guidance/nuget#pre-release-packages somewhere +✔️ DO publish a package as a [pre-release package](https://docs.microsoft.com/dotnet/standard/library-guidance/nuget#pre-release-packages) if it is non-stable or a preview. See the [.NET library versioning guide](https://docs.microsoft.com/dotnet/standard/library-guidance/versioning) for more advanced guidance including assembly versioning. @@ -101,7 +100,7 @@ See the [.NET library versioning guide](https://docs.microsoft.com/dotnet/standa ### Description -✔️ DO include a short description for your package that describes what it's for. +✔️ DO include a short description (up to 4000 characters) for your package that describes what it's for. > Package descriptions are one of the most prominent fields surfaced in NuGet search and will likely be the first thing a potential consumers looks at to determine if a package is right for them. ### Copyright @@ -113,9 +112,9 @@ Example: Copyright (c) Contoso 2020 ### Licensing -✔️ DO [include a valid license expression or license file in your package](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file). +✔️ DO [include a license expression or license file in your package](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file). > [!IMPORTANT] -> A project without a license defaults to [exclusive copyright](https://choosealicense.com/no-permission/), making it legally impossible for other people to use. +> A project without a license defaults to [exclusive copyright](https://choosealicense.com/no-permission/), meaning that you have not granted anyone permission to use your project. ❌ DO NOT use the deprecated `LicenseUrl` metadata property. > This presents legal ambiguity as license changes at the URL will retroactively change the displayed license for previous package versions. @@ -128,20 +127,18 @@ Example: Copyright (c) Contoso 2020 ✔️ CONSIDER [including a license expression in your package](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file). > License expressions are surfaced the most clearly and make it more obvious to consumers if they can use your package or if the license has changed. > [!Note] -> NuGet.org only accepts license expressions that are approved by the Open Source Initiative or the Free Software Foundation. +> NuGet.org only accepts license expressions for licenses that are approved by the Open Source Initiative or the Free Software Foundation. #### If your package is not open source ✔️ DO [include a license file in your package](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file). -> Any valid license file can be added to your package, including non-standard licenses. +> Any license file (.txt or .md) can be added to your package, including non-standard licenses. ### Project URL -✔️ CONSIDER including a link to an associated project or company website. +✔️ CONSIDER including a link to an associated project, repository, or company website. > Company website links, even if not specific to the package/project, still improve consumer trust. -❌ DO NOT put a repository URL (GitHub, BitBucket, etc.) in the `Project URL` field, as consumers will expect to find it in the `Repository URL` field. - ### Icon ✔️ CONSIDER including an icon with your package to help visually differentiate it. It's a relatively small addition that can improve perception of package quality. @@ -154,15 +151,16 @@ Example: Copyright (c) Contoso 2020 ### Repository Type and URL -✔️ CONSIDER including a repository type and URL to make it easy for package consumers to view source code, report issues, and view repository documentation (only if public). +✔️ CONSIDER including a repository type and URL to make it easy for package consumers to view source code, report issues, and view repository documentation. ✔️ CONSIDER setting up [Source Link](https://docs.microsoft.com/dotnet/standard/library-guidance/sourcelink) to add source control metadata to your assemblies and NuGet package. > Source Link will automatically adds `Repository URL` and `Repository Type` to the package metadata. It also adds the specific commit associated with your package version. - ### Tags ✔️ DO include several tags with key terms related to your package to enhance discoverability. -> Tags are taken into account in NuGet's search algorithm and are especially helpful for terms that are not in the Package ID. +> Tags are taken into account in NuGet's search algorithm and are especially helpful for terms that are not in the Package ID but are relevant. + +For example, if I published a package to log strings to the console, I would include: "logging, log, console, string, output" ### Release notes @@ -173,7 +171,7 @@ Example: Copyright (c) Contoso 2020 > 2. New features > 3. Bug fixes > -> If you already track release notes in your repo, you can also include a link to your release notes file. +> If you already track release notes or a changelog in your repo, you can also include a link to the relevant file. ## Dependencies From 918c9c920e23be35a112ba77e9a5b87af26b3c0c Mon Sep 17 00:00:00 2001 From: Jonathan Date: Wed, 18 Nov 2020 10:21:49 +0100 Subject: [PATCH 209/988] Fix broken link --- docs/release-notes/NuGet-5.8.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-5.8.md b/docs/release-notes/NuGet-5.8.md index 8b8ede2dd..12d83aa59 100644 --- a/docs/release-notes/NuGet-5.8.md +++ b/docs/release-notes/NuGet-5.8.md @@ -143,7 +143,7 @@ Your feedback is important to us. If there are any problems with this release, [GitHub Issues](https://github.com/NuGet/Home/issues) and [Visual Studio Developer Community](https://developercommunity.visualstudio.com/) for existing issues. For new issues within NuGet, please report a -[GitHub Issue](hhttps://github.com/NuGet/Home/issues/new). +[GitHub Issue](https://github.com/NuGet/Home/issues/new). For general NuGet experience issues, let us know via the [Report a Problem](https://docs.microsoft.com/visualstudio/ide/how-to-report-a-problem-with-visual-studio) option found in your favorite IDE under **Help > Report a Problem**. From ab9861c30ff141630ec99904725b7bb5bf0e15c0 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Fri, 4 Dec 2020 19:23:28 -0600 Subject: [PATCH 210/988] Fix ms.author for doc. --- docs/api/symbol-package-publish-resource.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/docs/api/symbol-package-publish-resource.md b/docs/api/symbol-package-publish-resource.md index 3ea1dd082..c2ea9a943 100644 --- a/docs/api/symbol-package-publish-resource.md +++ b/docs/api/symbol-package-publish-resource.md @@ -1,9 +1,7 @@ --- title: Push Symbol Packages, NuGet API | Microsoft Docs author: cristinamanum -ms.author: -- cmanu -- kraigb +ms.author: cmanu manager: skofman ms.date: 10/30/2018 ms.topic: reference From 1bad3d6d97dbe8244b35b3b865af7d30e164bf53 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Mon, 7 Dec 2020 10:45:10 -0800 Subject: [PATCH 211/988] Update Package-Restore.md --- docs/consume-packages/Package-Restore.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/consume-packages/Package-Restore.md b/docs/consume-packages/Package-Restore.md index 8181540ac..155d2f625 100644 --- a/docs/consume-packages/Package-Restore.md +++ b/docs/consume-packages/Package-Restore.md @@ -142,7 +142,7 @@ NuGet has two formats in which a project may use packages: [`PackageReference`]( ## Restore using MSBuild -Use the the [msbuild -t:restore](../reference/msbuild-targets.md#restore-target) command to restore packages listed in the project file (see [PackageReference](../../consume-packages/package-references-in-project-files.md)) and starting with MSBuild 16.5+, `packages.config` projects. +Use the [msbuild -t:restore](../reference/msbuild-targets.md#restore-target) command to restore packages listed in the project file (see [PackageReference](../../consume-packages/package-references-in-project-files.md)) and starting with MSBuild 16.5+, `packages.config` projects. This command is available only in NuGet 4.x+ and MSBuild 15.1+, which are included with Visual Studio 2017 and higher versions. Starting with MSBuild 16.5+, this command can also restore `packages.config` based projects when run with `-p:RestorePackagesConfig=true`. @@ -239,4 +239,4 @@ To test the automatic package restore: ## Troubleshooting -See [Troubleshoot package restore](package-restore-troubleshooting.md). \ No newline at end of file +See [Troubleshoot package restore](package-restore-troubleshooting.md). From 1de77cff14e7ff6dbef51ff5d672bf6be1071039 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Sharma?= <737941+loic-sharma@users.noreply.github.com> Date: Wed, 9 Dec 2020 17:01:23 -0800 Subject: [PATCH 212/988] Update the "nuget-build" package source URL (#2229) --- docs/guides/api/query-for-all-published-packages.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guides/api/query-for-all-published-packages.md b/docs/guides/api/query-for-all-published-packages.md index ea7a78af6..b5d94c0d6 100644 --- a/docs/guides/api/query-for-all-published-packages.md +++ b/docs/guides/api/query-for-all-published-packages.md @@ -105,7 +105,7 @@ git clone https://github.com/NuGet/Samples.git ### Catalog SDK -The easiest way to consume the catalog is to use the pre-release .NET catalog SDK package: [NuGet.Protocol.Catalog](https://dotnet.myget.org/feed/nuget-build/package/nuget/NuGet.Protocol.Catalog). This package is available on the `nuget-build` MyGet feed, for which you use the NuGet package source URL `https://dotnet.myget.org/F/nuget-build/api/v3/index.json`. +The easiest way to consume the catalog is to use the pre-release .NET catalog SDK package `NuGet.Protocol.Catalog`, which is available on Azure Artifacts using the following NuGet package source URL: `https://pkgs.dev.azure.com/dnceng/public/_packaging/nuget-build/nuget/v3/index.json`. You can install this package to a project compatible with `netstandard1.3` or greater (such as .NET Framework 4.6). From b5476b4c72e83c8d1310ee2a7429e18b03bbd99e Mon Sep 17 00:00:00 2001 From: "Mike Jones (DEVUE)" Date: Tue, 15 Dec 2020 09:54:15 -0800 Subject: [PATCH 213/988] Offline book fix --- docs/TOC.md | 1 - 1 file changed, 1 deletion(-) diff --git a/docs/TOC.md b/docs/TOC.md index 55d3b548f..b0ce19b55 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -1,4 +1,3 @@ -# [Docs at a glance](index.yml) # [What is NuGet?](what-is-nuget.md) # Get started ## [Install NuGet client tools](install-nuget-client-tools.md) From a1654e71ce2b9aacd79b2d16aa3811f81246b43e Mon Sep 17 00:00:00 2001 From: "Mike Jones (DEVUE)" Date: Tue, 15 Dec 2020 10:27:17 -0800 Subject: [PATCH 214/988] fixed some warnings for push live --- docs/consume-packages/Package-Restore.md | 6 +++--- docs/guides/analyzers-conventions.md | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/consume-packages/Package-Restore.md b/docs/consume-packages/Package-Restore.md index 155d2f625..9fd9254fd 100644 --- a/docs/consume-packages/Package-Restore.md +++ b/docs/consume-packages/Package-Restore.md @@ -1,8 +1,8 @@ --- title: NuGet Package Restore description: An overview of how NuGet restores packages a project depends on, including how to disable restore and constrain versions. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 08/05/2019 ms.topic: conceptual --- @@ -142,7 +142,7 @@ NuGet has two formats in which a project may use packages: [`PackageReference`]( ## Restore using MSBuild -Use the [msbuild -t:restore](../reference/msbuild-targets.md#restore-target) command to restore packages listed in the project file (see [PackageReference](../../consume-packages/package-references-in-project-files.md)) and starting with MSBuild 16.5+, `packages.config` projects. +Use the [msbuild -t:restore](../reference/msbuild-targets.md#restore-target) command to restore packages listed in the project file (see [PackageReference](package-references-in-project-files.md)) and starting with MSBuild 16.5+, `packages.config` projects. This command is available only in NuGet 4.x+ and MSBuild 15.1+, which are included with Visual Studio 2017 and higher versions. Starting with MSBuild 16.5+, this command can also restore `packages.config` based projects when run with `-p:RestorePackagesConfig=true`. diff --git a/docs/guides/analyzers-conventions.md b/docs/guides/analyzers-conventions.md index 11181506f..58337d4f1 100644 --- a/docs/guides/analyzers-conventions.md +++ b/docs/guides/analyzers-conventions.md @@ -1,8 +1,8 @@ --- title: .NET Compiler Platform Analyzer Formats for NuGet description: Conventions for .NET analyzers that are packaged and distributed with NuGet packages that implement an API or library. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/09/2017 ms.topic: conceptual --- From 8c57a162502ec71ff847a6c945fdfe30e733db8b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Sharma?= <737941+loic-sharma@users.noreply.github.com> Date: Fri, 18 Dec 2020 12:08:04 -0800 Subject: [PATCH 215/988] Clarify how to specify multiple sources Addresses https://github.com/NuGet/docs.microsoft.com-nuget/issues/1262 --- docs/reference/cli-reference/cli-ref-list.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/reference/cli-reference/cli-ref-list.md b/docs/reference/cli-reference/cli-ref-list.md index 803c84d7e..895a184e4 100644 --- a/docs/reference/cli-reference/cli-ref-list.md +++ b/docs/reference/cli-reference/cli-ref-list.md @@ -53,7 +53,7 @@ where the optional search terms will filter the displayed list. [Search terms](. - **`-Source`** - Specifies a list of packages sources to search. + The package source to search. You can specify multiple sources by using the `-Source` option multiple times. - **`-Verbosity [normal|quiet|detailed]`** @@ -82,4 +82,4 @@ nuget list JSON -AllVersions -Source "https://nuget.org/api/v2" List JSON-related packages from multiple sources/feeds: ``` nuget list JSON -Source "https://nuget.org/api/v2" -Source "https://other-feed-url-goes-here/" -``` \ No newline at end of file +``` From 6697bcdc1dfd2ef9b5b7b59bf18a3f818ce36227 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Fri, 18 Dec 2020 14:34:56 -0600 Subject: [PATCH 216/988] Add dotnet nuget verify. --- docs/reference/dotnet-Commands.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/reference/dotnet-Commands.md b/docs/reference/dotnet-Commands.md index d0cd39df5..baf33240d 100644 --- a/docs/reference/dotnet-Commands.md +++ b/docs/reference/dotnet-Commands.md @@ -28,3 +28,4 @@ For the complete command reference on `dotnet` CLI, see [.NET Core command-line - [**dotnet pack**](/dotnet/core/tools/dotnet-pack?tabs=netcore2x): Packs the code into a NuGet package. - [**dotnet nuget push**](/dotnet/core/tools/dotnet-nuget-push): Publishes a package to a NuGet server. Applicable to nuget.org, Azure Artifacts, and [third-party NuGet servers](../hosting-packages/overview.md). - [**dotnet nuget delete**](/dotnet/core/tools/dotnet-nuget-delete): Deletes or unlists a package from a NuGet server. Applicable to nuget.org, Azure Artifacts, and [third-party NuGet servers](../hosting-packages/overview.md). +- [**dotnet nuget verify**](/dotnet/core/tools/dotnet-nuget-verify): Verifies a signed NuGet package. From 6fe10e925f473d111bc74b93992b0199144988bc Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Fri, 18 Dec 2020 14:41:04 -0600 Subject: [PATCH 217/988] Add note regarding powershell. --- docs/consume-packages/install-use-packages-powershell.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/docs/consume-packages/install-use-packages-powershell.md b/docs/consume-packages/install-use-packages-powershell.md index c266ac4a4..6021a101f 100644 --- a/docs/consume-packages/install-use-packages-powershell.md +++ b/docs/consume-packages/install-use-packages-powershell.md @@ -15,6 +15,9 @@ The NuGet Package Manager Console lets you use [NuGet PowerShell commands](../re The console is built into Visual Studio on Windows. It is not included with Visual Studio for Mac or Visual Studio Code. +> [!Important] +> The commands listed here are specific to the Package Manager Console in Visual Studio, and differ from the [Package Management module commands](/powershell/module/packagemanagement/?view=powershell-6) that are available in a general PowerShell environment. Specifically, each environment has commands that are not available in the other, and commands with the same name may also differ in their specific arguments. When using the Package Management Console in Visual Studio, the commands and arguments documented in this present topic apply. + ## Find and install a package For example, finding and installing a package is done with three easy steps: @@ -172,4 +175,4 @@ To make the [`nuget.exe` CLI](../reference/nuget-exe-cli-reference.md) available ```ps # Other versions are available, see https://www.nuget.org/packages/NuGet.CommandLine/ Install-Package NuGet.CommandLine -Version 4.4.1 -``` \ No newline at end of file +``` From 8dfbffb3ccfb8b20bd5ff12183cc0b384400df53 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Fri, 18 Dec 2020 14:42:58 -0600 Subject: [PATCH 218/988] Remove version. --- docs/consume-packages/install-use-packages-powershell.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/install-use-packages-powershell.md b/docs/consume-packages/install-use-packages-powershell.md index 6021a101f..b4f414bbc 100644 --- a/docs/consume-packages/install-use-packages-powershell.md +++ b/docs/consume-packages/install-use-packages-powershell.md @@ -16,7 +16,7 @@ The NuGet Package Manager Console lets you use [NuGet PowerShell commands](../re The console is built into Visual Studio on Windows. It is not included with Visual Studio for Mac or Visual Studio Code. > [!Important] -> The commands listed here are specific to the Package Manager Console in Visual Studio, and differ from the [Package Management module commands](/powershell/module/packagemanagement/?view=powershell-6) that are available in a general PowerShell environment. Specifically, each environment has commands that are not available in the other, and commands with the same name may also differ in their specific arguments. When using the Package Management Console in Visual Studio, the commands and arguments documented in this present topic apply. +> The commands listed here are specific to the Package Manager Console in Visual Studio, and differ from the [Package Management module commands](/powershell/module/packagemanagement/) that are available in a general PowerShell environment. Specifically, each environment has commands that are not available in the other, and commands with the same name may also differ in their specific arguments. When using the Package Management Console in Visual Studio, the commands and arguments documented in this present topic apply. ## Find and install a package From 4e5ab103a28ea54409559e73ee72d46077104582 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Sharma?= <737941+loic-sharma@users.noreply.github.com> Date: Fri, 18 Dec 2020 12:45:49 -0800 Subject: [PATCH 219/988] Fix spelling mistake --- docs/release-notes/NuGet-5.1-RTM.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-5.1-RTM.md b/docs/release-notes/NuGet-5.1-RTM.md index 71e5a2393..fa8ee4112 100644 --- a/docs/release-notes/NuGet-5.1-RTM.md +++ b/docs/release-notes/NuGet-5.1-RTM.md @@ -28,7 +28,7 @@ NuGet distribution vehicles: * Support for new .NET Core 3.0 assets such as [Targeting Packs](https://github.com/dotnet/cli/issues/10006) and [Runtime Packs](https://github.com/dotnet/cli/issues/10007) * NuGet pack and restore support for FrameworkReferences to enable targeting and runtime package references - [#7342](https://github.com/NuGet/Home/issues/7342) * Support "download only" package scenario with PackageDownload - [#7339](https://github.com/NuGet/Home/issues/7339) - * Exlcude runtime and targeting packs from search results & restore graph using PackageType - [#7337](https://github.com/NuGet/Home/issues/7337) + * Exclude runtime and targeting packs from search results & restore graph using PackageType - [#7337](https://github.com/NuGet/Home/issues/7337) ### Issues fixed in this release From 6a6ab72760641425b34526730ea7f45262ccc45a Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 18 Dec 2020 13:44:06 -0800 Subject: [PATCH 220/988] Document all IVs NuGet.VisualStudio APIs that have been released up to 5.8 (#2238) --- .../nuget-api-in-visual-studio.md | 573 +++++++++++++++++- 1 file changed, 556 insertions(+), 17 deletions(-) diff --git a/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md b/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md index b8521399c..2ac10a217 100644 --- a/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md +++ b/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md @@ -1,8 +1,8 @@ --- title: NuGet API in Visual Studio description: Interface reference for the API that NuGet exports through the Managed Extensibility Framework in Visual Studio -author: karann-msft -ms.author: karann +author: nkolev92 +ms.author: nikolev ms.date: 01/09/2017 ms.topic: reference --- @@ -11,20 +11,38 @@ ms.topic: reference In addition to the Package Manager UI and Console in Visual Studio, NuGet also exports some useful services through the [Managed Extensibility Framework (MEF)](/dotnet/framework/mef/index). This interface allows other components in Visual Studio to interact with NuGet, which can be used to install and uninstall packages, and to obtain information about installed packages. -As of NuGet 3.3+, NuGet exports the following services all of which reside in the `NuGet.VisualStudio` namespace in the `NuGet.VisualStudio.dll` assembly: - -- [`IRegistryKey`](#iregistrykey-interface): Method to retrieve a value from a registry subkey. -- [`IVsPackageInstaller`](#ivspackageinstaller-interface): Methods to install NuGet packages into projects. -- [`IVsPackageInstallerEvents`](#ivspackageinstallerevents-interface): Events for package install/uninstall. -- [`IVsPackageInstallerProjectEvents`](#ivspackageinstallerprojectevents-interface): Batch events for package install/uninstall. -- [`IVsPackageInstallerServices`](#ivspackageinstallerservices-interface): Methods to retrieve installed packages in the current solution and to check whether a given package is installed in a project. -- [`IVsPackageManagerProvider`](#ivspackagemanagerprovider-interface): Methods to provide alternative Package Manager suggestions for a NuGet package. -- [`IVsPackageMetadata`](#ivspackagemetadata-interface): Methods to retrieve information about an installed package. -- [`IVsPackageProjectMetadata`](#ivspackageprojectmetadata-interface): Methods to retrieve information about a project where NuGet actions are being executed. -- [`IVsPackageRestorer`](#ivspackagerestorer-interface): Methods to restore packages installed in a project. -- [`IVsPackageSourceProvider`](#ivspackagesourceprovider-interface): Methods to retrieve a list of NuGet package sources. -- [`IVsPackageUninstaller`](#ivspackageuninstaller-interface): Methods to uninstall NuGet packages from projects. -- [`IVsTemplateWizard`](#ivstemplatewizard-interface): Designed for project/item templates to include pre-installed packages; this interface is *not* meant to be invoked from code and has no public methods. +Over the years, NuGet has added many services all of which reside in the `NuGet.VisualStudio` namespace in the `NuGet.VisualStudio.dll` assembly: + +As of NuGet 3.3+, NuGet exports the following + +- [`IRegistryKey`](#iregistrykey-interface): Method to retrieve a value from a registry subkey. (3.3+) +- [`IVsCredentialProvider`](#ivscredentialprovider-interface) Contains methods to get credentials for NuGet operations. (4.0+) +- [`IVsFrameworkCompatibility`](#ivsframeworkcompatibility-interface) Contains methods to discover frameworks and compatibility between frameworks. (4.0+) +- [`IVsFrameworkCompatibility2`](#ivsframeworkcompatibility2-interface) Contains methods to discover frameworks and compatibility between frameworks. (4.0+) +- [`IVsFrameworkCompatibility3`](#ivsframeworkcompatibility3-interface) Contains methods to discover frameworks and compatibility between frameworks. (5.8+) +- [`IVsFrameworkParser`](#ivsframeworkparser-interface) An interface for dealing with the conversion between strings and [FrameworkName](/dotnet/api/system.runtime.versioning.frameworkname) (4.0+) +- [`IVsFrameworkParser2`](#ivsframeworkparser2-interface) An interface to parse .NET Framework strings. See [NuGet-IVsFrameworkParser](https://aka.ms/NuGet-IVsFrameworkParser). (5.8+) +- [`IVsGlobalPackagesInitScriptExecutor`](#ivsglobalpackagesinitscriptexecutor-interface) Execute powershell scripts from package(s) in a solution (4.0+) +- [`IVsNuGetFramework`](#ivsnugetframework-interface) A type that represents the components of a .NET Target Framework Moniker. (5.8+) +- [`IVsPackageInstaller`](#ivspackageinstaller-interface): Methods to install NuGet packages into projects. (3.3+) +- [`IVsPackageInstaller2](#ivspackageinstaller2-interface) Contains method to install latest version of a single package into a project within the current solution. +- [`IVsPackageInstallerEvents`](#ivspackageinstallerevents-interface): Events for package install/uninstall. (3.3+) +- [`IVsPackageInstallerProjectEvents`](#ivspackageinstallerprojectevents-interface): Batch events for package install/uninstall. (3.3+) +- [`IVsPackageInstallerServices`](#ivspackageinstallerservices-interface): Methods to retrieve installed packages in the current solution and to check whether a given package is installed in a project. (3.3+) +- [`IVsPackageManagerProvider`](#ivspackagemanagerprovider-interface): Methods to provide alternative Package Manager suggestions for a NuGet package. (3.3+) +- [`IVsPackageMetadata`](#ivspackagemetadata-interface): Methods to retrieve information about an installed package. (3.3+) +- [`IVsPackageProjectMetadata`](#ivspackageprojectmetadata-interface): Methods to retrieve information about a project where NuGet actions are being executed. (3.3+) +- [`IVsPackageRestorer`](#ivspackagerestorer-interface): Methods to restore packages installed in a project. (3.3+) +- [`IVsPackageSourceProvider`](#ivspackagesourceprovider-interface): Methods to retrieve a list of NuGet package sources. (3.3+) +- [`IVsPackageUninstaller`](#ivspackageuninstaller-interface): Methods to uninstall NuGet packages from projects. (3.3+) +- [`IVsPathContext`](#ivspathcontext-interface) NuGet path information specific to the current context (e.g. project context). (4.0+) +- [`IVsPathContext2`](#ivspathcontext2-interface) NuGet path information specific to the current context (e.g. project context). (5.0+) +- [`IVsPathContextProvider`](#ivspathcontextprovider-interface) A factory to initialize [IVsPathContext](#ivspathcontext-interface) instances. (4.0+) +- [`IVsPathContextProvider2`](#ivspathcontextprovider2-interface) A factory to initialize [IVsPathContext2](#ivspathcontext2-interface) instances. (5.0+) +- [`IVsProjectJsonToPackageReferenceMigrateResult`](#ivsprojectjsontopackagereferencemigrateresult-interface) Contains the result of the migrate operation on a legacy project.json project (4.3+) +- [`IVsProjectJsonToPackageReferenceMigrator`](#ivsprojectjsontopackagereferencemigrator-interface) Contains methods to migrate a project.json based legacy project to PackageReference based project. (4.3+) +- [`IVsSemanticVersionComparer`](#ivssemanticversioncomparer-interface) An interface for comparing two opaque version strings by treating them as NuGet semantic (4.0+) +- [`IVsTemplateWizard`](#ivstemplatewizard-interface): Designed for project/item templates to include pre-installed packages; this interface is *not* meant to be invoked from code and has no public methods. (3.3+) ## Using NuGet services @@ -35,7 +53,7 @@ As of NuGet 3.3+, NuGet exports the following services all of which reside in th > [!Warning] > Do not use any other types besides the public interfaces in your code, and do not reference any other NuGet assemblies, including `NuGet.Core.dll`. -1. To use a service, import it through the [MEF Import attribute](/dotnet/framework/mef/index#imports-and-exports-with-attributes), or through the [IComponentModel service](/dotnet/api/microsoft.visualstudio.componentmodelhost.icomponentmodel?redirectedfrom=MSDN&view=visualstudiosdk-2017). +1. To use a service, import it through the [MEF Import attribute](/dotnet/framework/mef/index#imports-and-exports-with-attributes), or through the [IComponentModel service](/dotnet/api/microsoft.visualstudio.componentmodelhost.icomponentmodel). ```cs //Using the Import attribute @@ -85,6 +103,257 @@ public interface IRegistryKey } ``` +## IVsCredentialProvider interface + +```cs + /// + /// Contains methods to get credentials for NuGet operations. + /// + public interface IVsCredentialProvider + { + /// + /// Get credentials for the supplied package source Uri. + /// + /// The NuGet package source Uri for which credentials are being requested. Implementors are + /// expected to first determine if this is a package source for which they can supply credentials. + /// If not, then Null should be returned. + /// Web proxy to use when comunicating on the network. Null if there is no proxy + /// authentication configured. + /// True if if this request is to get proxy authentication + /// credentials. If the implementation is not valid for acquiring proxy credentials, then + /// null should be returned. + /// True if credentials were previously acquired for this uri, but + /// the supplied credentials did not allow authorized access. + /// If true, then interactive prompts must not be allowed. + /// This cancellation token should be checked to determine if the + /// operation requesting credentials has been cancelled. + /// Credentials acquired by this provider for the given package source uri. + /// If the provider does not handle requests for the input parameter set, then null should be returned. + /// If the provider does handle the request, but cannot supply credentials, an exception should be thrown. + Task GetCredentialsAsync(Uri uri, + IWebProxy proxy, + bool isProxyRequest, + bool isRetry, + bool nonInteractive, + CancellationToken cancellationToken); + } +``` + +## IVsFrameworkCompatibility interface + +```cs + /// + /// Contains methods to discover frameworks and compatibility between frameworks. + /// + public interface IVsFrameworkCompatibility + { + /// + /// Gets all .NETStandard frameworks currently supported, in ascending order by version. + /// + IEnumerable GetNetStandardFrameworks(); + + /// + /// Gets frameworks that support packages of the provided .NETStandard version. + /// + /// + /// The result list is not exhaustive as it is meant to human-readable. For example, + /// equivalent frameworks are not returned. Additionally, a framework name with version X + /// in the result implies that framework names with versions greater than or equal to X + /// but having the same are also supported. + /// + /// The .NETStandard version to get supporting frameworks for. + IEnumerable GetFrameworksSupportingNetStandard(FrameworkName frameworkName); + + /// + /// Selects the framework from that is nearest + /// to the , according to NuGet's framework + /// compatibility rules. null is returned of none of the frameworks + /// are compatible. + /// + /// The target framework. + /// The list of frameworks to choose from. + /// If any of the arguments are null. + /// The nearest framework. + FrameworkName GetNearest(FrameworkName targetFramework, IEnumerable frameworks); + } +``` + +## IVsFrameworkCompatibility2 interface + +```cs + /// + /// Gets all .NETStandard frameworks currently supported, in ascending order by version. + /// + public interface IVsFrameworkCompatibility2 : IVsFrameworkCompatibility + { + /// + /// Selects the framework from that is nearest + /// to the , according to NuGet's framework + /// compatibility rules. null is returned of none of the frameworks + /// are compatible. + /// + /// The target framework. + /// + /// Target frameworks to use if the provided is not compatible. + /// These fallback frameworks are attempted in sequence after . + /// + /// The list of frameworks to choose from. + /// If any of the arguments are null. + /// The nearest framework. + FrameworkName GetNearest( + FrameworkName targetFramework, + IEnumerable fallbackTargetFrameworks, + IEnumerable frameworks); + } +``` + +## IVsFrameworkCompatibility3 interface + +```cs + /// + /// Gets all .NETStandard frameworks currently supported, in ascending order by version. + /// + public interface IVsFrameworkCompatibility3 + { + /// + /// Selects the framework from that is nearest + /// to the , according to NuGet's framework + /// compatibility rules. null is returned of none of the frameworks + /// are compatible. + /// + /// The target framework. + /// The list of frameworks to choose from. + /// If any of the arguments are null. + /// If any of the frameworks cannot be parsed. + /// The nearest framework. + /// This API is
free-threaded. + IVsNuGetFramework GetNearest(IVsNuGetFramework targetFramework, IEnumerable frameworks); + + /// + /// Selects the framework from that is nearest + /// to the , according to NuGet's framework + /// compatibility rules. null is returned of none of the frameworks + /// are compatible. + /// + /// The target framework. + /// + /// Target frameworks to use if the provided is not compatible. + /// These fallback frameworks are attempted in sequence after . + /// + /// The list of frameworks to choose from. + /// If any of the arguments are null. + /// If any of the frameworkscannot be parsed. + /// The nearest framework. + /// This API is free-threaded. + IVsNuGetFramework GetNearest( + IVsNuGetFramework targetFramework, + IEnumerable fallbackTargetFrameworks, + IEnumerable frameworks); + } +``` + +## IVsFrameworkParser interface + +```cs + /// + /// An interface for dealing with the conversion between strings and + /// instances. + /// + public interface IVsFrameworkParser + { + /// + /// Parses a short framework name (e.g. "net45") or a full framework name + /// (e.g. ".NETFramework,Version=v4.5") into a + /// instance. + /// + /// The framework string. + /// If the provided string is null. + /// If the provided string cannot be parsed. + /// The parsed framework. + FrameworkName ParseFrameworkName(string shortOrFullName); + + /// + /// Gets the shortened version of the framework name from a + /// instance. + /// + /// + /// For example, ".NETFramework,Version=v4.5" is converted to "net45". This is the value + /// used inside of .nupkg folder structures as well as in project.json files. + /// + /// The framework name. + /// If the input is null. + /// + /// If the provided framework name cannot be converted to a short name. + /// + /// The short framework name. + string GetShortFrameworkName(FrameworkName frameworkName); + } +``` + +## IVsFrameworkParser2 interface + +```cs + /// An interface to parse .NET Framework strings. See http://aka.ms/NuGet-IVsFrameworkParser. + public interface IVsFrameworkParser2 + { + /// + /// Parses a short framework name (e.g. "net45") or a full Target Framework Moniker + /// (e.g. ".NETFramework,Version=v4.5") into a + /// instance. + /// + /// The framework string + /// The resulting . If the method returns false, this return NuGet's "Unsupported" framework details. + /// A boolean to specify whether the input could be parsed into a valid object. + /// This API is not needed to get framework information about loaded projects, and should not be used to parse the project's TargetFramework property. See http://aka.ms/NuGet-IVsFrameworkParser.
+ /// This API is free-threaded.
+ bool TryParse(string input, out IVsNuGetFramework nuGetFramework); + } +``` + +## IVsGlobalPackagesInitScriptExecutor interface + +```cs + /// + /// Execute powershell scripts from package(s) in a solution + /// + /// Intended for internal use only. + public interface IVsGlobalPackagesInitScriptExecutor + { + /// + /// Executes the init script of the given package if available. + /// 1) If the init.ps1 script has already been executed by the powershell host, it will not be executed again. + /// True is returned. + /// 2) If the package is found in the global packages folder it will be used. + /// If not, it will return false and do nothing. + /// 3) Also, note if other scripts are executing while this call was made, it will wait for them to complete. + /// + /// Id of the package whose init.ps1 will be executed. + /// Version of the package whose init.ps1 will be executed. + /// Returns true if the script was executed or has been executed already. + /// This method throws if the init.ps1 being executed throws. + Task ExecuteInitScriptAsync(string packageId, string packageVersion); + } +``` + +## IVsNuGetFramework interface + +```cs + /// A type that represents the components of a .NET Target Framework Moniker. + /// does not support .NET 5 Target Framework Monikers with a platform, but this type does. + public interface IVsNuGetFramework + { + /// The framework moniker. + string TargetFrameworkMoniker { get; } + + /// The platform moniker. + string TargetPlatformMoniker { get; } + + /// The platform minimum version. + /// This property is read by , but will always have a null value when returned from . + string TargetPlatformMinVersion { get; } + } +``` + ## IVsPackageInstaller interface ```cs @@ -258,6 +527,45 @@ public interface IVsPackageInstaller } ``` +## IVsPackageinstaller2 interface + +```cs + [Guid("4F3B122B-A53B-432C-8D85-0FAFB8BE4FF4")] + public interface IVsPackageInstaller2 : IVsPackageInstaller + { + /// + /// Installs the latest version of a single package from the specified package source. + /// + /// + /// The package source to install the package from. This value can be null + /// to indicate that the user's configured sources should be used. Otherwise, + /// this should be the source path as a string. If the user has credentials + /// configured for a source, this value must exactly match the configured source + /// value. + /// + /// The target project for package installation. + /// The package ID of the package to install. + /// + /// Whether or not to consider prerelease versions when finding the latest version + /// to install. + /// + /// + /// A boolean indicating whether or not to ignore the package's dependencies + /// during installation. + /// + /// + /// Thrown when is false and no stable version + /// of the package exists. + /// + void InstallLatestPackage( + string source, + Project project, + string packageId, + bool includePrerelease, + bool ignoreDependencies); + } +``` + ## IVsPackageInstallerEvents interface ```cs @@ -497,6 +805,9 @@ public interface IVsPackageRestorer ## IVsPackageSourceProvider interface ```cs +/// +/// A public API for retrieving the list of NuGet package sources. +/// public interface IVsPackageSourceProvider { /// @@ -504,6 +815,11 @@ public interface IVsPackageSourceProvider /// /// Unofficial sources will be included in the results /// Disabled sources will be included in the results + /// Does not require the UI thread. + /// Thrown if a NuGet configuration file is invalid. + /// Thrown if a NuGet configuration file is invalid. + /// Thrown if a NuGet configuration file is invalid. + /// Thrown if a NuGet configuration file is invalid. /// Key: source name Value: source URI IEnumerable> GetSources(bool includeUnOfficial, bool includeDisabled); @@ -533,6 +849,229 @@ public interface IVsPackageUninstaller } ``` +## IVsPathContext interface + +```cs +/// + /// NuGet path information specific to the current context (e.g. project context). + /// Represents captured snapshot associated with current project/solution settings. + /// Should be discarded immediately after all queries are done. + /// + [ComImport] + [Guid("24A1A187-75EE-4296-A8B3-59F0E0707119")] + public interface IVsPathContext + { + /// + /// User package folder directory. The path returned is an absolute path. + /// + string UserPackageFolder { get; } + + /// + /// Fallback package folder locations. The paths (if any) in the returned list are absolute paths. If no + /// fallback package folders are configured, an empty list is returned. The item type of this sequence is + /// . + /// + IEnumerable FallbackPackageFolders { get; } + + /// + /// Fetch a package directory containing the provided asset path. + /// + /// Absolute path to package asset file. + /// Full path to a package directory. + /// null if returned falue is false. + /// + /// true when a package containing the given file was found, false - otherwise. + /// + /// + /// Suppose the project is a packages.config project and the following asset paths are provided: + /// + /// - C:\src\MyProject\packages\NuGet.Versioning.3.5.0-rc1-final\lib\net45\NuGet.Versioning.dll + /// - C:\path\to\non\package\assembly\Newtonsoft.Json.dll + /// - C:\src\MyOtherProject\packages\NuGet.Core.2.12.0\lib\net40\NuGet.Core.dll + /// - C:\src\MyProject\packages\Autofac.3.5.2\lib\net40\Autofac.dll + /// - C:\src\MyProject\packages\Autofac.3.5.2\lib\net40\Autofac.Fake.dll + /// + /// The result will be: + /// + /// - C:\src\MyProject\packages\NuGet.Versioning.3.5.0-rc1-final + /// - null + /// - null + /// - C:\src\MyProject\packages\Autofac.3.5.2 + /// - C:\src\MyProject\packages\Autofac.3.5.2 + /// + bool TryResolvePackageAsset(string packageAssetPath, out string packageDirectoryPath); + } +``` + +## IVsPathContext2 interface + +```cs +/// + /// NuGet path information specific to the current context (e.g. project context) or solution context + /// Represents captured snapshot associated with current project/solution settings. + /// Should be discarded immediately after all queries are done. + /// + public interface IVsPathContext2 : IVsPathContext + { + /// + /// Solution packages folder directory. This will always be set irrespective if folder actually exists or not. + /// The path returned is an absolute path. + /// + string SolutionPackageFolder { get; } + } +``` + +## IVsPathContextProvider interface + +```cs + /// + /// A factory to initialize instances. + /// + public interface IVsPathContextProvider + { + /// + /// Attempts to create an instance of . + /// + /// + /// Unique identificator of the project. Should be a full path to project file. + /// + /// The path context associated with given project. + /// + /// True if operation has succeeded and context was created. + /// False, otherwise, e.g. when provided project is not managed by NuGet. + /// + /// + /// ArgumentNullException if projectUniqueName is passed as null. + /// InvalidOperationException when it fails to create a context and return appropriate error message. + /// + bool TryCreateContext(string projectUniqueName, out IVsPathContext context); + } +``` + +## IVsPathContextProvider2 interface + +```cs + /// + /// A factory to initialize instances. + /// + public interface IVsPathContextProvider2 : IVsPathContextProvider + { + /// + /// Attempts to create an instance of for the solution. + /// + /// The path context associated with this solution. + /// + /// True if operation has succeeded and context was created. + /// False otherwise. + /// + /// + /// InvalidOperationException when it fails to create a context and return appropriate error message. + /// + bool TryCreateSolutionContext(out IVsPathContext2 context); + + /// + /// Attempts to create an instance of for the solution. + /// + /// + /// path to the solution directory. Must be an absolute path. + /// It will be performant to pass the solution directory if it's available. + /// + /// The path context associated with this solution. + /// + /// True if operation has succeeded and context was created. + /// False otherwise. + /// + /// + /// ArgumentNullException if solutionDirectory is passed as null. + /// InvalidOperationException when it fails to create a context and return appropriate error message. + /// + bool TryCreateSolutionContext(string solutionDirectory, out IVsPathContext2 context); + + /// + /// Attempts to create an instance of containing only the user wide and machine wide configurations. + /// If a solution is loaded, note that the values in the path context might not be the actual effective values for the solution. + /// If a customer has overriden the `globalPackagesFolder` key or cleared the `fallbackPackageFolders`, these values will be incorrect. + /// It is important to keep this scenario in mind when working with this path. To predict differences you can call this in combination with . + /// + /// + /// True if operation has succeeded and context was created. + /// False otherwise. + /// + /// + /// This method can be safely invoked from a background thread. Do note that this method might switch to the UI thread internally, so be mindful of blocking the UI thread on this. + /// + bool TryCreateNoSolutionContext(out IVsPathContext vsPathContext); + +``` + +## IVsProjectJsonToPackageReferenceMigrateResult interface + +```cs + /// + /// Contains the result of the migrate operation on a legacy project.json project + /// + public interface IVsProjectJsonToPackageReferenceMigrateResult + { + /// + /// Returns the success value of the migration operation. + /// + bool IsSuccess { get; } + + /// + /// If migrate operation was unsuccessful, stores the error message in the exception. + /// + string ErrorMessage { get; } + } +``` + +## IVsProjectJsonToPackageReferenceMigrator interface + +```cs + /// + /// Contains methods to migrate a project.json based legacy project to PackageReference based project. + /// + public interface IVsProjectJsonToPackageReferenceMigrator + { + /// + /// Migrates a legacy Project.json based project to Package Reference based project. The result + /// should be casted to type + /// The backup of the original project file and project.json file is created in the Backup folder + /// in the root of the project directory. + /// + /// The full path to the project that needs to be migrated + Task MigrateProjectJsonToPackageReferenceAsync(string projectUniqueName); + + } +``` + +## IVsSemanticVersionComparer interface + +```cs + /// + /// An interface for comparing two opaque version strings by treating them as NuGet semantic + /// versions. + /// + public interface IVsSemanticVersionComparer + { + /// + /// Compares two version strings as if they were NuGet semantic version + /// strings. Returns a number less than zero if + /// is less than . Returns zero if the two versions + /// are equivalent. Returns a number greater than zero if + /// is greater than . + /// + /// The first version string. + /// The second version string. + /// If either version string is null. + /// If either string cannot be parsed. + /// + /// A standard comparison integer based on the relationship between the + /// two provided versions. + /// + int Compare(string versionA, string versionB); + } +``` + ## IVsTemplateWizard interface ```cs From 78e252aac7fb996865837e65ccf3352bd8a8d0d9 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 18 Dec 2020 13:52:20 -0800 Subject: [PATCH 221/988] Document extensionless file packing (#2247) --- docs/reference/msbuild-targets.md | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index 7dcb602d6..849d653a2 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -1,8 +1,8 @@ --- title: NuGet pack and restore as MSBuild targets description: NuGet pack and restore can work directly as MSBuild targets with NuGet 4.0+. -author: karann-msft -ms.author: karann +author: nkolev92 +ms.author: nikolev ms.date: 03/23/2018 ms.topic: conceptual --- @@ -251,6 +251,23 @@ When packing a license file, you need to use PackageLicenseFile property to spec [License file sample](https://github.com/NuGet/Samples/tree/master/PackageLicenseFileExample). +### Packing a file without an extension + +In some scenarios, like when packing a license file, you might want to include a file without an extension. +For historical reasons, NuGet & MSBuild treat paths without an extension as directories. + +```xml + + netstandard2.0 + LICENSE + + + + + +``` + +[File without an extension sample](https://github.com/NuGet/Samples/blob/master/PackageLicenseFileExtensionlessExample/). ### IsTool When using `MSBuild -t:pack -p:IsTool=true`, all output files, as specified in the [Output Assemblies](#output-assemblies) scenario, are copied to the `tools` folder instead of the `lib` folder. Note that this is different from a `DotNetCliTool` which is specified by setting the `PackageType` in `.csproj` file. @@ -361,7 +378,7 @@ An example: 1. Write assets file, targets, and props The `restore` target works for projects using the PackageReference format. -`MSBuild 16.5+` also has [opt-in support](#restoring-packagereference-and-packages.config-with-msbuild) for the `packages.config` format. +`MSBuild 16.5+` also has [opt-in support](#restoring-packagereference-and-packagesconfig-with-msbuild) for the `packages.config` format. ### Restore properties From b2e4f18adc5333429e7ed049e779b3125a04bbce Mon Sep 17 00:00:00 2001 From: Fernando Aguilar Date: Fri, 18 Dec 2020 14:39:37 -0800 Subject: [PATCH 222/988] Removed prerelease version. Updated icon --- docs/create-packages/Creating-a-Package.md | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/docs/create-packages/Creating-a-Package.md b/docs/create-packages/Creating-a-Package.md index 9290cd2f1..217cec1bd 100644 --- a/docs/create-packages/Creating-a-Package.md +++ b/docs/create-packages/Creating-a-Package.md @@ -63,8 +63,8 @@ Common optional properties: - A short description for the [Package Manager UI in Visual Studio](../consume-packages/install-use-packages-visual-studio.md) - A locale ID - Project URL -- License as an expression or file (`licenseUrl` is being deprecated, use the [`license` nuspec metadata element](../reference/nuspec.md#license)) -- An icon URL +- License as an expression or file (`licenseUrl` is deprecated, use [`license` nuspec metadata element](../reference/nuspec.md#license) instead) +- An icon file (`iconUrl` is deprecated use [`icon` nuspec metadata element](../reference/nuspec.md#icon) instead) - Lists of dependencies and references - Tags that assist in gallery searches @@ -74,11 +74,11 @@ The following is a typical (but fictitious) `.nuspec` file, with comments descri - + Contoso.Utility.UsefulStuff - - 1.8.3-beta + + 1.8.3 Dejana Tesic, Rajeev Dey @@ -96,8 +96,8 @@ The following is a typical (but fictitious) `.nuspec` file, with comments descri Apache-2.0 - - http://github.com/contoso/UsefulStuff/nuget_icon.png + + icon.png + ``` From 9e7aed8668edc98e380389ae4ff3e88701ce0974 Mon Sep 17 00:00:00 2001 From: Fernando Aguilar Date: Fri, 18 Dec 2020 14:56:20 -0800 Subject: [PATCH 223/988] Fixed suggestions --- docs/create-packages/Creating-a-Package.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/docs/create-packages/Creating-a-Package.md b/docs/create-packages/Creating-a-Package.md index 217cec1bd..70d3d2260 100644 --- a/docs/create-packages/Creating-a-Package.md +++ b/docs/create-packages/Creating-a-Package.md @@ -1,8 +1,8 @@ --- title: Create a NuGet package using nuget.exe CLI -description: A detailed guide to the process of designing and creating a NuGet package, including key decision points like files and versioning. +description: A detailed guide on designing and creating a NuGet package, including files and versioning. author: karann-msft -ms.author: karann +ms.author: feaguila ms.date: 07/09/2019 ms.topic: conceptual --- @@ -312,6 +312,7 @@ In some cases, you might want to add custom build targets or properties in proje Files in the root `\build` folder are considered suitable for all target frameworks. To provide framework-specific files, first place them within appropriate subfolders, such as the following: +``` \build \netstandard1.4 \Contoso.Utility.UsefulStuff.props @@ -319,6 +320,7 @@ Files in the root `\build` folder are considered suitable for all target framewo \net462 \Contoso.Utility.UsefulStuff.props \Contoso.Utility.UsefulStuff.targets +``` Then in the `.nuspec` file, be sure to refer to these files in the `` node: From fcf9f7d3b4f5768ca26b5f840e330b22b21e799b Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 18 Dec 2020 15:48:51 -0800 Subject: [PATCH 224/988] Document additional user configuration docs (#2239) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * add additional user configuration deets * Update docs/consume-packages/configuring-nuget-behavior.md Co-authored-by: Loïc Sharma <737941+loic-sharma@users.noreply.github.com> * Bold move * Add examples of config paths. * Let's add a table instead. * Formatting * Table no likey breaks * Fix this line escape? Co-authored-by: Jon Douglas Co-authored-by: Loïc Sharma <737941+loic-sharma@users.noreply.github.com> --- .../configuring-nuget-behavior.md | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/docs/consume-packages/configuring-nuget-behavior.md b/docs/consume-packages/configuring-nuget-behavior.md index bf3f5b90e..b92dd8de1 100644 --- a/docs/consume-packages/configuring-nuget-behavior.md +++ b/docs/consume-packages/configuring-nuget-behavior.md @@ -16,8 +16,8 @@ NuGet's behavior is driven by the accumulated settings in one or more `NuGet.Con | Scope | NuGet.Config file location | Description | | --- | --- | --- | | Solution | Current folder (aka Solution folder) or any folder up to the drive root.| In a solution folder, settings apply to all projects in subfolders. Note that if a config file is placed in a project folder, it has no effect on that project. | -| User | Windows: `%appdata%\NuGet\NuGet.Config`
Mac/Linux: `~/.config/NuGet/NuGet.Config` or `~/.nuget/NuGet/NuGet.Config` (varies by OS distribution) | Settings apply to all operations, but are overridden by any project-level settings. | -| Computer | Windows: `%ProgramFiles(x86)%\NuGet\Config`
Mac/Linux: `$XDG_DATA_HOME`. If `$XDG_DATA_HOME` is null or empty, `~/.local/share` or `/usr/local/share` will be used (varies by OS distribution) | Settings apply to all operations on the computer, but are overridden by any user- or project-level settings. | +| User | **Windows:** `%appdata%\NuGet\NuGet.Config`
**Mac/Linux:** `~/.config/NuGet/NuGet.Config` or `~/.nuget/NuGet/NuGet.Config` (varies by OS distribution)
Additional configs are supported on all platforms. These configs cannot be edited by the tooling.
**Windows:** `%appdata%\NuGet\config\*.Config`
**Mac/Linux:** `~/.config/NuGet/config/*.config` or `~/.nuget/config/*.config` | Settings apply to all operations, but are overridden by any project-level settings. | +| Computer | **Windows:** `%ProgramFiles(x86)%\NuGet\Config`
**Mac/Linux:** `$XDG_DATA_HOME`. If `$XDG_DATA_HOME` is null or empty, `~/.local/share` or `/usr/local/share` will be used (varies by OS distribution) | Settings apply to all operations on the computer, but are overridden by any user- or project-level settings. | Notes for earlier versions of NuGet: - NuGet 3.3 and earlier used a `.nuget` folder for solution-wide settings. This folder is not used in NuGet 3.4+. @@ -189,6 +189,18 @@ NuGet then loads and applies settings as follows, depending on where it's invoke - **Invoked from disk_drive_2/Project2 or disk_drive_2/Project2/Source**: The user-level file (A) is loaded first followed by file (B) and file (D). Because `packageSources` is not cleared, both `nuget.org` and `https://MyPrivateRepo/DQ/nuget` are available as sources. Packages get expanded in disk_drive_2/tmp as specified in (B). +## Additional user wide configuration + +Starting with 5.7, NuGet has added support for additional user wide configuration files. This allows third-party vendors to add additional user configuration files without elevation. +These configuration files are found in the standard user wide configuration folder within a `config` subfolder. +All files ending with `.config` or `.Config` will be considered. +These files cannot be edited by the standard tooling. + +| OS Platform | Additional Configurations | +| --- | --- | +| Windows | `%appdata%\NuGet\config\*.Config` | +| Mac/Linux | `~/.config/NuGet/config/*.config` or `~/.nuget/config/*.config` | + ## NuGet defaults file The `NuGetDefaults.Config` file exists to specify package sources from which packages are installed and updated, and to control the default target for publishing packages with `nuget push`. Because administrators can conveniently (using Group Policy, for example) deploy consistent `NuGetDefaults.Config` files to developer and build machines, they can ensure that everyone in the organization is using the correct package sources rather than nuget.org. From 632bff52d4c855a5f37f37d46ee428b5cade4fd4 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 18 Dec 2020 16:05:16 -0800 Subject: [PATCH 225/988] Add documentation for extern alias (#2249) --- .../Package-References-in-Project-Files.md | 34 ++++++++++++++++++- 1 file changed, 33 insertions(+), 1 deletion(-) diff --git a/docs/consume-packages/Package-References-in-Project-Files.md b/docs/consume-packages/Package-References-in-Project-Files.md index adc172f12..d1cea4d5b 100644 --- a/docs/consume-packages/Package-References-in-Project-Files.md +++ b/docs/consume-packages/Package-References-in-Project-Files.md @@ -196,11 +196,43 @@ Additionally NuGet will automatically generate properties for packages containin -```` +``` MSBuild properties and package identities do not have the same restrictions so the package identity needs to be changed to an MSBuild friendly name, prefixed by the word `Pkg`. To verify the exact name of the property generated, look at the generated [nuget.g.props](../reference/msbuild-targets.md#restore-outputs) file. +## PackageReference Aliases + +In some rare instances different packages will contain classes in the same namespace. Starting with NuGet 5.7 & Visual Studio 2019 Update 7, equivalent to ProjectReference, PackageReference supports [`Aliases`](/dotnet/api/microsoft.codeanalysis.projectreference.aliases). +By default no aliases are provided. When an alias is specified, *all* assemblies coming from the annotated package with need to be referenced with an alias. + +You can look at sample usage at [NuGet\Samples](https://github.com/NuGet/Samples/tree/master/PackageReferenceAliasesExample) + +In the project file, specify the aliases as follows: + +```xml + + + +``` + +and in the code use it as follows: + +```cs +extern alias ExampleAlias; + +namespace PackageReferenceAliasesExample +{ +... + { + var version = ExampleAlias.NuGet.Versioning.NuGetVersion.Parse("5.0.0"); + Console.WriteLine($"Version : {version}"); + } +... +} + +``` + ## NuGet warnings and errors *This feature is available with NuGet **4.3** or above and with Visual Studio 2017 **15.3** or above.* From 79b137353a39900a70c0bfadaa4856834ea1e256 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 18 Dec 2020 16:36:08 -0800 Subject: [PATCH 226/988] Add an extra AQ --- docs/resources/NuGet-FAQ.md | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/docs/resources/NuGet-FAQ.md b/docs/resources/NuGet-FAQ.md index 6186164da..e5449ae93 100644 --- a/docs/resources/NuGet-FAQ.md +++ b/docs/resources/NuGet-FAQ.md @@ -143,4 +143,11 @@ This is not an issue when using PackageReference, as each project file contains **I don't see nuget.org in my list of repositories, how do I get it back?** - Add `https://api.nuget.org/v3/index.json` to your list of sources, or -- Delete `%appdata%\.nuget\NuGet.Config` (Windows) or `~/.nuget/NuGet/NuGet.Config` (Mac/Linux) and let NuGet re-create it. \ No newline at end of file +- Delete `%appdata%\.nuget\NuGet.Config` (Windows) or `~/.nuget/NuGet/NuGet.Config` (Mac/Linux) and let NuGet re-create it. + +**I migrated to PackageReference, why is my build failing `This project references NuGet package(s) that are missing on this computer.`?** + +In packages.config projects, when a package with `build` props or targets was installed, NuGet would add an `EnsureNuGetPackageBuildImports` target to verify that the packages msbuild content has been imported before building. +If the `target` has been modified manually, NuGet might not be able to detect that it needs removed when migrating. + +If your project is `PackageReference` and you still have this target in project file, it should be safe to remove. From c56b155fd8d0dfb323ea47e054f75bc482569a95 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 18 Dec 2020 16:51:11 -0800 Subject: [PATCH 227/988] add reference from the troubleshooting guide --- docs/consume-packages/Package-restore-troubleshooting.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Package-restore-troubleshooting.md b/docs/consume-packages/Package-restore-troubleshooting.md index a9a4066dd..7dd49397d 100644 --- a/docs/consume-packages/Package-restore-troubleshooting.md +++ b/docs/consume-packages/Package-restore-troubleshooting.md @@ -41,7 +41,7 @@ Use NuGet Package Restore to download them. The missing file is {name}. This error occurs when you attempt to build a project that contains references to one or more NuGet packages, but those packages are not presently installed on the computer or in the project. -- When using the [PackageReference](package-references-in-project-files.md) management format, the error means that the package is not installed in the *global-packages* folder as described on [Managing the global packages and cache folders](managing-the-global-packages-and-cache-folders.md). +- When using the [PackageReference](package-references-in-project-files.md) management format, this error might be a leftover from a packages.config to PackageReference migration and needs to be [manually removed](../../resources/NuGet-FAQ.md#working-with-packages) from the project file. - When using [packages.config](../reference/packages-config.md), the error means that the package is not installed in the `packages` folder at the solution root. This situation commonly occurs when you obtain the project's source code from source control or another download. Packages are typically omitted from source control or downloads because they can be restored from package feeds like nuget.org (see [Packages and source control](Packages-and-Source-Control.md)). Including them would otherwise bloat the repository or create unnecessarily large .zip files. From 6f4459a058ddcd183acf07087daf561c90a87976 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 18 Dec 2020 17:07:10 -0800 Subject: [PATCH 228/988] document the no version and floating version scenarios --- docs/concepts/package-installation-process.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/concepts/package-installation-process.md b/docs/concepts/package-installation-process.md index 0ff675554..f50dc9711 100644 --- a/docs/concepts/package-installation-process.md +++ b/docs/concepts/package-installation-process.md @@ -22,6 +22,9 @@ The general process is as follows: - If the package is not in the *global-packages* folder, attempt to retrieve it from the sources listed in the [configuration files](../consume-packages/Configuring-NuGet-Behavior.md). For online sources, attempt first to retrieve the package from the HTTP cache unless `-NoCache` is specified with `nuget.exe` commands or `--no-cache` is specified with `dotnet restore`. (Visual Studio and `dotnet add package` always use the cache.) If a package is used from the cache, "CACHE" appears in the output. The cache has an expiration time of 30 minutes. + - If the package has been specified using a [floating version](../consume-packages/Package-References-in-Project-Files.md#floating-versions), or without a minimum version, NuGet *will* contact all sources to figure out the best match. + Example: `1.*`, `(, 2.0.0]`. + - If the package is not in the HTTP cache, attempt to download it from the sources listed in the configuration. If a package is downloaded, "GET" and "OK" appear in the output. NuGet logs http traffic on normal verbosity. - If the package cannot be successfully acquired from any sources, installation fails at this point with an error such as [NU1103](../reference/errors-and-warnings/NU1103.md). Note that errors from `nuget.exe` commands show only the last source checked, but implies that the package wasn't available from any source. From 208e5e6bc0eda91231e1c988c79ea6eac502e3d7 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 18 Dec 2020 17:17:30 -0800 Subject: [PATCH 229/988] Add an additional note about calling restore and build in the same command (#2251) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Add an additional note about calling restore and build in the same command * Update docs/reference/msbuild-targets.md Co-authored-by: Loïc Sharma <737941+loic-sharma@users.noreply.github.com> * Fix note? * a * b Co-authored-by: Jon Douglas Co-authored-by: Loïc Sharma <737941+loic-sharma@users.noreply.github.com> --- docs/reference/msbuild-targets.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index 849d653a2..9a0f7a87d 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -380,6 +380,9 @@ An example: The `restore` target works for projects using the PackageReference format. `MSBuild 16.5+` also has [opt-in support](#restoring-packagereference-and-packagesconfig-with-msbuild) for the `packages.config` format. +> [!NOTE] +> The `restore` target [should not be run](#restoring-and-building-with-one-msbuild-command) in combination with the `build` target. + ### Restore properties Additional restore settings may come from MSBuild properties in the project file. Values can also be set from the command line using the `-p:` switch (see Examples below). From 88168386d123c9824bd622d6047843f5d559eb9d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Sharma?= <737941+loic-sharma@users.noreply.github.com> Date: Fri, 18 Dec 2020 18:02:20 -0800 Subject: [PATCH 230/988] Add known bug to NU3004 (#2246) Addresses https://github.com/NuGet/docs.microsoft.com-nuget/issues/1401 --- docs/reference/errors-and-warnings/NU3004.md | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/docs/reference/errors-and-warnings/NU3004.md b/docs/reference/errors-and-warnings/NU3004.md index ab4dcad2c..987243df2 100644 --- a/docs/reference/errors-and-warnings/NU3004.md +++ b/docs/reference/errors-and-warnings/NU3004.md @@ -12,9 +12,10 @@ f1_keywords: # NuGet Error NU3004 +## Scenario 1 +
Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The package is not signed.
Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': signatureValidationMode is set to require, so packages are allowed only if signed by trusted signers; however, this package is unsigned.
-
Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': This repository indicated that all its packages are repository signed; however, this package is unsigned.
### Issue @@ -29,3 +30,18 @@ The `require` validation mode does not support unsigned package and an unsigned ### Solution Please ensure that any package intended to be installed or passed to `nuget verify -signatures` command contains a package signature. + +## Scenario 2 + +
Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': This repository indicated that all its packages are repository signed; however, this package is unsigned.
+ +### Issue + +The repository indicated that all its packages are repository signed. However, an unsigned package was downloaded. + +### Solution + +> [!Warning] +> This error may happen due to a bug when using multiple NuGet clients (see [NuGet/Home#7997](https://github.com/NuGet/Home/issues/7997)). Please upgrade to nuget.exe 5.1.0 or newer, Visual Studio 2019 16.1 or newer, and .NET SDK 2.1.70X or 2.2.30X or newer. + +You can check if a package is signed using the [`dotnet nuget verify`](/dotnet/core/tools/dotnet-nuget-verify.md) or [`nuget verify`](../cli-reference/cli-ref-verify.md) commands. If the package is unsigned, please contact the package source as this is unexpected. From b45481d41443964a084fd494ebb68cceec2b319a Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Fri, 18 Dec 2020 20:12:17 -0600 Subject: [PATCH 231/988] Fix link --- docs/consume-packages/Package-restore-troubleshooting.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Package-restore-troubleshooting.md b/docs/consume-packages/Package-restore-troubleshooting.md index 7dd49397d..6888c7997 100644 --- a/docs/consume-packages/Package-restore-troubleshooting.md +++ b/docs/consume-packages/Package-restore-troubleshooting.md @@ -41,7 +41,7 @@ Use NuGet Package Restore to download them. The missing file is {name}. This error occurs when you attempt to build a project that contains references to one or more NuGet packages, but those packages are not presently installed on the computer or in the project. -- When using the [PackageReference](package-references-in-project-files.md) management format, this error might be a leftover from a packages.config to PackageReference migration and needs to be [manually removed](../../resources/NuGet-FAQ.md#working-with-packages) from the project file. +- When using the [PackageReference](package-references-in-project-files.md) management format, this error might be a leftover from a packages.config to PackageReference migration and needs to be [manually removed](../resources/NuGet-FAQ.md#working-with-packages) from the project file. - When using [packages.config](../reference/packages-config.md), the error means that the package is not installed in the `packages` folder at the solution root. This situation commonly occurs when you obtain the project's source code from source control or another download. Packages are typically omitted from source control or downloads because they can be restored from package feeds like nuget.org (see [Packages and source control](Packages-and-Source-Control.md)). Including them would otherwise bloat the repository or create unnecessarily large .zip files. From 25c586ff39e82d64c8646469db96335d1193231e Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Mon, 21 Dec 2020 16:56:49 -0800 Subject: [PATCH 232/988] Add bring your own token docs for NuGet.Protocol (#2254) --- docs/reference/NuGet-Client-SDK.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/docs/reference/NuGet-Client-SDK.md b/docs/reference/NuGet-Client-SDK.md index 417646db1..95dfa90fa 100644 --- a/docs/reference/NuGet-Client-SDK.md +++ b/docs/reference/NuGet-Client-SDK.md @@ -57,6 +57,12 @@ Search for "json" packages using the [NuGet V3 Search API](../api/search-query-s [!code-csharp[SearchPackages](~/../nuget-samples/NuGetProtocolSamples/Program.cs?name=SearchPackages)] +### Work with authenticated feeds + +Use [`NuGet.Protocol`](https://www.nuget.org/packages/NuGet.Protocol) to work with authenticated feeds. + +[!code-csharp[AuthenticatedFeed](~/../nuget-samples/NuGetProtocolSamples/Program.cs?name=AuthenticatedFeed)] + ### Create a package Create a package, set metadata, and add dependencies using [`NuGet.Packaging`](https://www.nuget.org/packages/NuGet.Packaging). From c6635cc0bb5428d26a41b69e4c1453d2a06646c0 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Mon, 21 Dec 2020 18:12:16 -0800 Subject: [PATCH 233/988] Document asset target fallback (#2255) --- .../Package-References-in-Project-Files.md | 35 +++++++++++++++++-- docs/reference/msbuild-targets.md | 20 ----------- 2 files changed, 33 insertions(+), 22 deletions(-) diff --git a/docs/consume-packages/Package-References-in-Project-Files.md b/docs/consume-packages/Package-References-in-Project-Files.md index d1cea4d5b..ca21f71f3 100644 --- a/docs/consume-packages/Package-References-in-Project-Files.md +++ b/docs/consume-packages/Package-References-in-Project-Files.md @@ -1,8 +1,8 @@ --- title: NuGet PackageReference format (package references in project files) description: Details on NuGet PackageReference in project files as supported by NuGet 4.0+ and VS2017 and .NET Core 2.0 -author: karann-msft -ms.author: karann +author: nkolev92 +ms.author: nikolev ms.date: 03/16/2018 ms.topic: conceptual --- @@ -386,3 +386,34 @@ You can control various behaviors of restore with lock file as described below: | `-LockedMode` | `--locked-mode` | RestoreLockedMode | Enables locked mode for restore. This is useful in CI/CD scenarios where you want repeatable builds.| | `-ForceEvaluate` | `--force-evaluate` | RestoreForceEvaluate | This option is useful with packages with floating version defined in the project. By default, NuGet restore will not update the package version automatically upon each restore unless you run restore with this option. | | `-LockFilePath` | `--lock-file-path` | NuGetLockFilePath | Defines a custom lock file location for a project. By default, NuGet supports `packages.lock.json` at the root directory. If you have multiple projects in the same directory, NuGet supports project specific lock file `packages..lock.json` | + +## AssetTargetFallback + +The `AssetTargetFallback` property lets you specify additional compatible framework versions for projects that your project references and NuGet packages that your project consumes. + +If you specify a package dependency using `PackageReference` but that package doesn't contain assets that are compatible with your projects's target framework, the `AssetTargetFallback` property comes into play. The compatibility of the referenced package is rechecked using each target framework that's specified in `AssetTargetFallback`. +When a `project` or a `package` is referenced through `AssetTargetFallback`, the [NU1701](../reference/errors-and-warnings/NU1701.md) warning will be raised. + +Refer to the table below for examples of how `AssetTargetFallback` affects compatibility. + +| Project framework | AssetTargetFallback | Package frameworks | Result | +|-------------------|---------------------|--------------------|--------| +| .NET Framework 4.7.2 | | .NET Standard 2.0 | .NET Standard 2.0 | +| .NET Core App 3.1 | | .NET Standard 2.0, .NET Framework 4.7.2 | .NET Standard 2.0 | +| .NET Core App 3.1 | | .NET Framework 4.7.2 | Incompatible, fail with [`NU1202`](../reference/errors-and-warnings/NU1202.md) | +| .NET Core App 3.1 | net472;net471 | .NET Framework 4.7.2 | .NET Framework 4.7.2 with [`NU1701`](../reference/errors-and-warnings/NU1701.md) | + +Multiple frameworks can be specified using `;` as a delimiter. To add a fallback framework you can do the following: + +```xml + + $(AssetTargetFallback);net472;net471 + +``` + +You can leave off `$(AssetTargetFallback)` if you wish to overwrite, instead of add to the existing `AssetTargetFallback` values. + +> [!NOTE] +> If you are using a [.NET SDK based project](/dotnet/core/sdk), appropriate `$(AssetTargetFallback)` values are configured and you do not need to set them manually. +> +> `$(PackageTargetFallback)` was an earlier feature that attempted to address this challenge, but it is fundamentally broken and *should* not be used. To migrate from `$(PackageTargetFallback)` to `$(AssetTargetFallback)`, simply change the property name. diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index 9a0f7a87d..8d6f37e95 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -464,26 +464,6 @@ msbuild -t:restore -p:RestorePackagesConfig=true > [!NOTE] > `packages.config` restore is only available with `MSBuild 16.5+`, and not with `dotnet.exe` -### PackageTargetFallback - -The `PackageTargetFallback` element allows you to specify a set of compatible targets to be used when restoring packages. It's designed to allow packages that use a dotnet [TxM](../reference/target-frameworks.md) to work with compatible packages that don't declare a dotnet TxM. That is, if your project uses the dotnet TxM, then all the packages it depends on must also have a dotnet TxM, unless you add the `` to your project in order to allow non-dotnet platforms to be compatible with dotnet. - -For example, if the project is using the `netstandard1.6` TxM, and a dependent package contains only `lib/net45/a.dll` and `lib/portable-net45+win81/a.dll`, then the project will fail to build. If what you want to bring in is the latter DLL, then you can add a `PackageTargetFallback` as follows to say that the `portable-net45+win81` DLL is compatible: - -```xml - - portable-net45+win81 - -``` - -To declare a fallback for all targets in your project, leave off the `Condition` attribute. You can also extend any existing `PackageTargetFallback` by including `$(PackageTargetFallback)` as shown here: - -```xml - - $(PackageTargetFallback);portable-net45+win81 - -``` - ### Replacing one library from a restore graph If a restore is bringing the wrong assembly, it's possible to exclude that packages default choice, and replace it with your own choice. First with a top level `PackageReference`, exclude all assets: From 7538c54ede7aee02b24ac8d1363153b1c90920bc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Sharma?= <737941+loic-sharma@users.noreply.github.com> Date: Mon, 21 Dec 2020 19:00:20 -0800 Subject: [PATCH 234/988] Add package push and delete examples (#2256) Depends on: https://github.com/NuGet/Samples/pull/45 Part of: https://github.com/NuGet/docs.microsoft.com-nuget/issues/787 --- docs/reference/NuGet-Client-SDK.md | 38 +++++++++++++++++++++++------- 1 file changed, 29 insertions(+), 9 deletions(-) diff --git a/docs/reference/NuGet-Client-SDK.md b/docs/reference/NuGet-Client-SDK.md index 95dfa90fa..32284ff84 100644 --- a/docs/reference/NuGet-Client-SDK.md +++ b/docs/reference/NuGet-Client-SDK.md @@ -15,24 +15,19 @@ The *NuGet Client SDK* refers to a group of NuGet packages: * [`NuGet.Packaging`](https://www.nuget.org/packages/NuGet.Packaging) - Used to interact with NuGet packages. `NuGet.Protocol` depends on this package You can find the source code for these packages in the [NuGet/NuGet.Client](https://github.com/NuGet/NuGet.Client) GitHub repository. +You can find the source code for these examples on the [NuGet.Protocol.Samples](https://github.com/NuGet/Samples/tree/master/NuGetProtocolSamples) project on GitHub. > [!Note] > For documentation on the NuGet server protocol, please refer to the [NuGet Server API](~/api/overview.md). -## Getting started +## NuGet.Protocol -### Install the packages +Install the `NuGet.Protocol` package to interact with HTTP and folder-based NuGet package feeds: ```ps1 -dotnet add package NuGet.Protocol # interact with HTTP and folder-based NuGet package feeds, includes NuGet.Packaging - -dotnet add package NuGet.Packaging # interact with .nupkg and .nuspec files from a stream +dotnet add package NuGet.Protocol ``` -## Examples - -You can find these examples on the [NuGet.Protocol.Samples](https://github.com/NuGet/Samples/tree/master/NuGetProtocolSamples) project on GitHub. - ### List package versions Find all versions of Newtonsoft.Json using the [NuGet V3 Package Content API](../api/package-base-address-resource.md#enumerate-package-versions): @@ -57,12 +52,37 @@ Search for "json" packages using the [NuGet V3 Search API](../api/search-query-s [!code-csharp[SearchPackages](~/../nuget-samples/NuGetProtocolSamples/Program.cs?name=SearchPackages)] +### Push a package + +Push a package using the [NuGet V3 Push and Delete API](../api/package-publish-resource.md): + +[!code-csharp[PushPackage](~/../nuget-samples/NuGetProtocolSamples/Program.cs?name=PushPackage)] + +### Delete a package + +Delete a package using the [NuGet V3 Push and Delete API](../api/package-publish-resource.md): + +> [!Note] +> NuGet servers are free to interpret a package delete request as a "hard delete", "soft delete", or "unlist". +> For example, nuget.org interprets the package delete request as an "unlist". For more information about this +> practice, see the [Deleting Packages](../nuget-org/policies/deleting-packages.md) policy. + +[!code-csharp[DeletePackage](~/../nuget-samples/NuGetProtocolSamples/Program.cs?name=DeletePackage)] + ### Work with authenticated feeds Use [`NuGet.Protocol`](https://www.nuget.org/packages/NuGet.Protocol) to work with authenticated feeds. [!code-csharp[AuthenticatedFeed](~/../nuget-samples/NuGetProtocolSamples/Program.cs?name=AuthenticatedFeed)] +## NuGet.Packaging + +Install the `NuGet.Packaging` package to interact with `.nupkg` and `.nuspec` files from a stream: + +```ps1 +dotnet add package NuGet.Packaging +``` + ### Create a package Create a package, set metadata, and add dependencies using [`NuGet.Packaging`](https://www.nuget.org/packages/NuGet.Packaging). From c19b2f329d017a13f642989fb911ad92aba658d0 Mon Sep 17 00:00:00 2001 From: Bruno Garcia Date: Thu, 24 Dec 2020 13:25:08 -0500 Subject: [PATCH 235/988] mentioned embedded pdb --- docs/create-packages/Symbol-Packages-snupkg.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/create-packages/Symbol-Packages-snupkg.md b/docs/create-packages/Symbol-Packages-snupkg.md index 76e55ab9e..5bfedbc68 100644 --- a/docs/create-packages/Symbol-Packages-snupkg.md +++ b/docs/create-packages/Symbol-Packages-snupkg.md @@ -18,6 +18,9 @@ ms.reviewer: A good debugging experience relies on the presence of debug symbols as they provide critical information like the association between the compiled and the source code, names of local variables, stack traces, and more. You can use symbol packages (.snupkg) to distribute these symbols and improve the debugging experience of your NuGet packages. +> Note that symbol package isn't the only strategy to make the debug symbols available to the consumers of your library. It's also [possible to `embed`](https://docs.microsoft.com/en-us/dotnet/core/deploying/single-file#include-pdb-files-inside-the-bundle) them in the `dll` or `exe` with the following project property: +> `embedded` + ## Prerequisites [nuget.exe v4.9.0 or above](https://www.nuget.org/downloads) or [dotnet CLI v2.2.0 or above](https://www.microsoft.com/net/download/dotnet-core/2.2), which implement the required [NuGet protocols](../api/nuget-protocols.md). From 543df4194f66bb241e11d3d11417501fd7f12fb0 Mon Sep 17 00:00:00 2001 From: Bruno Garcia Date: Thu, 24 Dec 2020 13:29:22 -0500 Subject: [PATCH 236/988] Update docs/create-packages/Symbol-Packages-snupkg.md --- docs/create-packages/Symbol-Packages-snupkg.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/create-packages/Symbol-Packages-snupkg.md b/docs/create-packages/Symbol-Packages-snupkg.md index 5bfedbc68..18d8f74c2 100644 --- a/docs/create-packages/Symbol-Packages-snupkg.md +++ b/docs/create-packages/Symbol-Packages-snupkg.md @@ -18,7 +18,7 @@ ms.reviewer: A good debugging experience relies on the presence of debug symbols as they provide critical information like the association between the compiled and the source code, names of local variables, stack traces, and more. You can use symbol packages (.snupkg) to distribute these symbols and improve the debugging experience of your NuGet packages. -> Note that symbol package isn't the only strategy to make the debug symbols available to the consumers of your library. It's also [possible to `embed`](https://docs.microsoft.com/en-us/dotnet/core/deploying/single-file#include-pdb-files-inside-the-bundle) them in the `dll` or `exe` with the following project property: +> Note that symbol package isn't the only strategy to make the debug symbols available to the consumers of your library. It's also [possible to `embed`](https://docs.microsoft.com/dotnet/core/deploying/single-file#include-pdb-files-inside-the-bundle) them in the `dll` or `exe` with the following project property: > `embedded` ## Prerequisites From f1d833d04eeceb8a296a771fdb9dc283eb08b784 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Sharma?= <737941+loic-sharma@users.noreply.github.com> Date: Mon, 28 Dec 2020 12:57:45 -0800 Subject: [PATCH 237/988] Update signed package verification information (#2259) Addresses: https://twitter.com/brungarc/status/1342208607962726400 --- docs/reference/Signed-Packages-Reference.md | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/docs/reference/Signed-Packages-Reference.md b/docs/reference/Signed-Packages-Reference.md index 0d6841b3a..c47a7ea54 100644 --- a/docs/reference/Signed-Packages-Reference.md +++ b/docs/reference/Signed-Packages-Reference.md @@ -15,13 +15,13 @@ ms.reviewer: ananguar NuGet packages can include a digital signature that provides protection against tampered content. This signature is produced from an X.509 certificate that also adds authenticity proofs to the actual origin of the package. Signed packages provide the strongest end-to-end validation. There are two different types of NuGet signatures: -- **Author Signature**. An author signature guarantees that the package has not been modified since the author signed the package, no matter from which repository or what transport method the package is delivered. Additionally, author-signed packages provide an extra authentication mechanism to the nuget.org publishing pipeline because the signing certificate must be registered ahead of time. For more information, see [Register certificates](#signature-requirements-on-nugetorg). -- **Repository Signature**. Repository signatures provide an integrity guarantee for **all** packages in a repository whether they are author signed or not, even if those packages are obtained from a different location than the original repository where they were signed. +- **Author signature**. An author signature guarantees that the package has not been modified since the author signed the package, no matter from which repository or what transport method the package is delivered. Additionally, author-signed packages provide an extra authentication mechanism to the nuget.org publishing pipeline because the signing certificate must be registered ahead of time. For more information, see [Register certificates](#signature-requirements-on-nugetorg). +- **Repository signature**. Repository signatures provide an integrity guarantee for **all** packages in a repository whether they are author signed or not, even if those packages are obtained from a different location than the original repository where they were signed. -For details on creating an author signed package, see [Signing Packages](../create-packages/Sign-a-package.md) and the [nuget sign command](../reference/cli-reference/cli-ref-sign.md). +For details on creating an author signed package, see [Signing Packages](../create-packages/Sign-a-package.md) and the [nuget sign command](../reference/cli-reference/cli-ref-sign.md). You can verify packages' signatures using the [dotnet nuget verify](/dotnet/core/tools/dotnet-nuget-verify.md) or [nuget verify](../reference/cli-reference/cli-ref-verify.md) commands. > [!Important] -> Package signing is currently supported only when using nuget.exe on Windows. [Verification of signed packages is currently supported only when using nuget.exe](../reference/cli-reference/cli-ref-verify.md) or Visual Studio on Windows. +> Author signing packages is only supported by nuget.exe on Windows at this time. However, all packages uploaded to nuget.org are automatically repository signed. ## Certificate requirements @@ -52,4 +52,6 @@ nuget.org has additional requirements for accepting a signed package: ## Related articles - [Signing NuGet Packages](../create-packages/Sign-a-Package.md) +- [Verify signed packages using the dotnet CLI](/dotnet/core/tools/dotnet-nuget-verify.md) +- [Verify signed packages using nuget.exe](../reference/cli-reference/cli-ref-verify.md) - [Manage package trust boundaries](../consume-packages/installing-signed-packages.md) From 6bec145d82046564677ecc52a4103b874ffcb9a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Sharma?= <737941+loic-sharma@users.noreply.github.com> Date: Thu, 31 Dec 2020 12:14:58 -0800 Subject: [PATCH 238/988] Clarify .snupkg symbol packages do not support native projects (#2260) --- docs/create-packages/Symbol-Packages-snupkg.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/docs/create-packages/Symbol-Packages-snupkg.md b/docs/create-packages/Symbol-Packages-snupkg.md index 76e55ab9e..8b1f70dd4 100644 --- a/docs/create-packages/Symbol-Packages-snupkg.md +++ b/docs/create-packages/Symbol-Packages-snupkg.md @@ -58,7 +58,7 @@ nuget pack MyPackage.csproj -Symbols -SymbolPackageFormat snupkg The [`SymbolPackageFormat`](/dotnet/core/tools/csproj#symbolpackageformat) property can have one of two values: `symbols.nupkg` (the default) or `snupkg`. If this property is not specified, a legacy symbol package will be created. > [!Note] -> The legacy format `.symbols.nupkg` is still supported but only for compatibility reasons (see [Legacy Symbol Packages](Symbol-Packages.md)). NuGet.org's symbol server only accepts the new symbol package format - `.snupkg`. +> The legacy format `.symbols.nupkg` is still supported but only for compatibility reasons like native packages (see [Legacy Symbol Packages](Symbol-Packages.md)). NuGet.org's symbol server only accepts the new symbol package format - `.snupkg`. ## Publishing a symbol package @@ -99,6 +99,9 @@ NuGet.org has the following constraints for symbol packages: Symbol packages published to NuGet.org will fail validation if these constraints aren't met. +> [!NOTE] +> Native projects, such as C++ projects, produce Windows PDBs instead of Portable PDBs. These are not supported by NuGet.org's symbol server. Please use [Legacy Symbol Packages](Symbol-Packages.md) instead. + ### Symbol package validation and indexing Symbol packages published to [NuGet.org](https://www.nuget.org/) undergo several validations, including malware scanning. If a package fails a validation check, its package details page will display an error message. In addition, the package's owners will receive an email with instructions on how to fix the identified issues. From 1c9055b691e65a536b1c7a53ff23f6787395a2a3 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Wed, 6 Jan 2021 18:02:11 -0800 Subject: [PATCH 239/988] Add static graph restore docs (#2268) --- docs/reference/msbuild-targets.md | 38 ++++++++++++++++++++++++++++++- 1 file changed, 37 insertions(+), 1 deletion(-) diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index 8d6f37e95..15e513dd2 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -408,7 +408,8 @@ Additional restore settings may come from MSBuild properties in the project file | RestoreLockedMode | Run restore in locked mode. This means that restore will not reevaluate the dependencies. | | NuGetLockFilePath | A custom location for the lock file. The default location is next to the project and is named `packages.lock.json`. | | RestoreForceEvaluate | Forces restore to recompute the dependencies and update the lock file without any warning. | -| RestorePackagesConfig | An opt in switch, that restores projects with packages.config. Support with `MSBuild -t:restore` only. | +| RestorePackagesConfig | An opt-in switch, that restores projects with packages.config. Support with `MSBuild -t:restore` only. | +| RestoreUseStaticGraphEvaluation | An opt-in switch to use static graph MSBuild evaluation instead of the standard evaluation. Static graph evaluation is an experimental feature that's significantly faster for large repos and solutions. | #### Examples @@ -464,6 +465,41 @@ msbuild -t:restore -p:RestorePackagesConfig=true > [!NOTE] > `packages.config` restore is only available with `MSBuild 16.5+`, and not with `dotnet.exe` +### Restoring with MSBuild static graph evaluation + +> [!NOTE] +> With MSBuild 16.6+, NuGet has added an experimental feature to use static graph evaluation from the command line that significantly improves the restore time for large repositories. + +```cli +msbuild -t:restore -p:RestoreUseStaticGraphEvaluation=true +``` + +Alternatively you can enable it by setting the property in a Directory.Build.Props. + +```xml + + + true + + +``` + +> [!NOTE] +> As of Visual Studio 2019.x and NuGet 5.x, this feature is considered experimental and opt-in. Follow [NuGet/Home#9803](https://github.com/NuGet/Home/issues/9803) for details on when this feature will be enabled by default. + +Static graph restore changes the msbuild part of restore, the project reading and evaluation, but not the restore algorithm! The restore algorithm is the same across all NuGet tools (NuGet.exe, MSBuild.exe, dotnet.exe and Visual Studio). + +In very few scenarios, static graph restore may behave differently from current restore and certain declared PackageReferences or ProjectReferences might be missing. + +To ease your mind, as a one time check, when migrating to static graph restore, consider running: + +```cli +msbuild.exe -t:restore -p:RestoreUseStaticGraphEvaluation +msbuild.exe -t:restore +``` + +NuGet should *not* report any changes. If you do see a discrepancy, please file an issue at [NuGet/Home](https://github.com/nuget/home/issues/new). + ### Replacing one library from a restore graph If a restore is bringing the wrong assembly, it's possible to exclude that packages default choice, and replace it with your own choice. First with a top level `PackageReference`, exclude all assets: From 603c3b4e8c114c139979ea904e34dbbf87c1b306 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Thu, 7 Jan 2021 17:11:40 -0800 Subject: [PATCH 240/988] Create 5.8.1 release notes --- docs/release-notes/NuGet-5.8.md | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-5.8.md b/docs/release-notes/NuGet-5.8.md index 12d83aa59..6a62452e5 100644 --- a/docs/release-notes/NuGet-5.8.md +++ b/docs/release-notes/NuGet-5.8.md @@ -120,7 +120,7 @@ NuGet distribution vehicles: **[List of all issues fixed in this release - 5.8](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5f03519b777e78b4ffb2edeb)** -**[List of issues/commits fixed in this release - 5.8](https://github.com/NuGet/NuGet.Client/compare/5.7.0.6726...5.8.0.6930)** +**[List of issues in this release - 5.8](https://github.com/NuGet/NuGet.Client/compare/5.7.0.6726...5.8.0.6930)** ### Community contributions @@ -136,6 +136,15 @@ Thank you to all the contributors who helped make this NuGet release awesome! [Therzok](https://github.com/Therzok) | [3636](https://github.com/NuGet/NuGet.Client/pull/3636) | `RuntimeEnvironmentHelper.IsRunningOnVisualStudio` performance issue on Mono - [#9989](https://github.com/NuGet/Home/issues/9989) [thomaslevesque](https://github.com/thomaslevesque) | [3442](https://github.com/NuGet/NuGet.Client/pull/3442) | Add a TypeConverter for the SemanticVersion class - [#9125](https://github.com/NuGet/Home/issues/9125) +## Summary: What's New in 5.8.1 + +* packages.config package.lock.json uses an incorrect target framework in 5.8 - [#10257](https://github.com/NuGet/Home/issues/10257) + +* 5.8 + 16.8 Cannot resolve transitive project dependencies when mixing PackageReference and packages.config - [#10326](https://github.com/NuGet/Home/issues/10326) + +**[List of all issues fixed in this release - 5.8.1](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5ff7aeae16150e3b19910391)** + +**[List of commits in this release - 5.8.1](https://github.com/NuGet/NuGet.Client/compare/5.8.0.6930...5.8.1.7021)** ## Feedback welcome From 90bb3de36be8da2cc4ddefad5e79a170aeeaf503 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Thu, 7 Jan 2021 17:17:49 -0800 Subject: [PATCH 241/988] fix stuff --- docs/release-notes/NuGet-5.8.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/release-notes/NuGet-5.8.md b/docs/release-notes/NuGet-5.8.md index 6a62452e5..a675ca6d2 100644 --- a/docs/release-notes/NuGet-5.8.md +++ b/docs/release-notes/NuGet-5.8.md @@ -14,6 +14,7 @@ NuGet distribution vehicles: | NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | |:---|:---|:---| | [**5.8**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.8](https://visualstudio.microsoft.com/downloads/) | [5.0](https://dotnet.microsoft.com/download/dotnet-core/5.0)1 | +| [**5.8.1**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.8.4](https://visualstudio.microsoft.com/downloads/) | | 1 Installed with Visual Studio 2019 with .NET Core workload From 7d4b5c792c8b13eb67bfa164b3803f35de7bc09b Mon Sep 17 00:00:00 2001 From: Genevieve Warren <24882762+gewarren@users.noreply.github.com> Date: Thu, 7 Jan 2021 17:40:50 -0800 Subject: [PATCH 242/988] Update PackageIconUrl --- docs/reference/msbuild-targets.md | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index 15e513dd2..7cb090065 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -58,7 +58,7 @@ Note that the `Owners` and `Summary` properties from `.nuspec` are not supported | LicenseUrl | PackageLicenseUrl | empty | `PackageLicenseUrl` is deprecated, use the PackageLicenseExpression or PackageLicenseFile property | | ProjectUrl | PackageProjectUrl | empty | | | Icon | PackageIcon | empty | You need to explicitly pack the referenced icon image file.| -| IconUrl | PackageIconUrl | empty | For the best downlevel experience, `PackageIconUrl` should be specified in addition to `PackageIcon`. Longer term, `PackageIconUrl` will be deprecated. | +| IconUrl | PackageIconUrl | empty | `PackageIconUrl` is deprecated in favor of `PackageIcon`. However, for the best downlevel experience, you should specify `PackageIconUrl` in addition to `PackageIcon`. | | Tags | PackageTags | empty | Tags are semi-colon delimited. | | ReleaseNotes | PackageReleaseNotes | empty | | | Repository/Url | RepositoryUrl | empty | Repository URL used to clone or retrieve source code. Example: *https://github.com/NuGet/NuGet.Client.git* | @@ -113,14 +113,12 @@ To suppress package dependencies from generated NuGet package, set `SuppressDepe ### PackageIconUrl -`PackageIconUrl` will be deprecated in favor of the new [`PackageIcon`](#packageicon) property. - -Starting with NuGet 5.3 & Visual Studio 2019 version 16.3, `pack` will raise [NU5048](./errors-and-warnings/nu5048.md) warning if the package metadata only specifies `PackageIconUrl`. +`PackageIconUrl` is deprecated in favor of the [`PackageIcon`](#packageicon) property. Starting with NuGet 5.3 and Visual Studio 2019 version 16.3, `pack` raises the [NU5048](./errors-and-warnings/nu5048.md) warning if the package metadata only specifies `PackageIconUrl`. ### PackageIcon > [!Tip] -> You should specify both `PackageIcon` and `PackageIconUrl` to maintain backward compatibility with clients and sources that do not yet support `PackageIcon`. Visual Studio will support `PackageIcon` for packages coming from a folder-based source in a future release. +> To maintain backward compatibility with clients and sources that don't yet support `PackageIcon`, specify both `PackageIcon` and `PackageIconUrl`. Visual Studio supports `PackageIcon` for packages coming from a folder-based source. #### Packing an icon image file From c3f7c598fdb529f68c86dde4223292c29b8cc5b0 Mon Sep 17 00:00:00 2001 From: Genevieve Warren <24882762+gewarren@users.noreply.github.com> Date: Fri, 8 Jan 2021 13:59:28 -0800 Subject: [PATCH 243/988] Flesh out pack target properties descriptions --- docs/reference/msbuild-targets.md | 120 ++++++++++++++++-------------- 1 file changed, 63 insertions(+), 57 deletions(-) diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index 15e513dd2..7b79efa85 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -35,9 +35,9 @@ Similarly, you can write an MSBuild task, write your own target and consume NuGe ## pack target -For .NET Standard projects using the PackageReference format, using `msbuild -t:pack` draws inputs from the project file to use in creating a NuGet package. +For .NET projects that use the `PackageReference` format, using `msbuild -t:pack` draws inputs from the project file to use in creating a NuGet package. -The table below describes the MSBuild properties that can be added to a project file within the first `` node. You can make these edits easily in Visual Studio 2017 and later by right-clicking the project and selecting **Edit {project_name}** on the context menu. For convenience the table is organized by the equivalent property in a [`.nuspec` file](../reference/nuspec.md). +The following table describes the MSBuild properties that can be added to a project file within the first `` node. You can make these edits easily in Visual Studio 2017 and later by right-clicking the project and selecting **Edit {project_name}** on the context menu. For convenience, the table is organized by the equivalent property in a [`.nuspec` file](../reference/nuspec.md). Note that the `Owners` and `Summary` properties from `.nuspec` are not supported with MSBuild. @@ -47,63 +47,67 @@ Note that the `Owners` and `Summary` properties from `.nuspec` are not supported | Version | PackageVersion | Version | This is semver compatible, for example “1.0.0”, “1.0.0-beta”, or “1.0.0-beta-00345” | | VersionPrefix | PackageVersionPrefix | empty | Setting PackageVersion overwrites PackageVersionPrefix | | VersionSuffix | PackageVersionSuffix | empty | $(VersionSuffix) from MSBuild. Setting PackageVersion overwrites PackageVersionSuffix | -| Authors | Authors | Username of the current user | | +| Authors | Authors | Username of the current user | A semicolon-separated list of packages authors, matching the profile names on nuget.org. These are displayed in the NuGet Gallery on nuget.org and are used to cross-reference packages by the same authors. | | Owners | N/A | Not present in NuSpec | | -| Title | Title | The PackageId| | -| Description | Description | "Package Description" | | -| Copyright | Copyright | empty | | -| RequireLicenseAcceptance | PackageRequireLicenseAcceptance | false | | -| license | PackageLicenseExpression | empty | Corresponds to `` | -| license | PackageLicenseFile | empty | Corresponds to ``. You need to explicitly pack the referenced license file. | -| LicenseUrl | PackageLicenseUrl | empty | `PackageLicenseUrl` is deprecated, use the PackageLicenseExpression or PackageLicenseFile property | +| Title | Title | The PackageId| A human-friendly title of the package, typically used in UI displays as on nuget.org and the Package Manager in Visual Studio. | +| Description | Description | "Package Description" | A long description for the assembly. If `PackageDescription` is not specified, then this property is also used as the description of the package. | +| Copyright | Copyright | empty | Copyright details for the package. | +| RequireLicenseAcceptance | PackageRequireLicenseAcceptance | false | A Boolean value that specifies whether the client must prompt the consumer to accept the package license before installing the package. | +| license | PackageLicenseExpression | empty | Corresponds to ``. See [Packing a license expression or a license file](#packing-a-license-expression-or-a-license-file). | +| license | PackageLicenseFile | empty | Path to a license file within the package if you're using a custom license or a license that hasn't been assigned an SPDX identifier. You need to explicitly pack the referenced license file. Corresponds to ``. See [Packing a license expression or a license file](#packing-a-license-expression-or-a-license-file). | +| LicenseUrl | PackageLicenseUrl | empty | `PackageLicenseUrl` is deprecated. Use `PackageLicenseExpression` or `PackageLicenseFile` instead. | | ProjectUrl | PackageProjectUrl | empty | | -| Icon | PackageIcon | empty | You need to explicitly pack the referenced icon image file.| +| Icon | PackageIcon | empty | A path to an image in the package to use as a package icon. You need to explicitly pack the referenced icon image file. For more information, see [`icon` metadata](/nuget/reference/nuspec#icon). | | IconUrl | PackageIconUrl | empty | For the best downlevel experience, `PackageIconUrl` should be specified in addition to `PackageIcon`. Longer term, `PackageIconUrl` will be deprecated. | -| Tags | PackageTags | empty | Tags are semi-colon delimited. | -| ReleaseNotes | PackageReleaseNotes | empty | | -| Repository/Url | RepositoryUrl | empty | Repository URL used to clone or retrieve source code. Example: *https://github.com/NuGet/NuGet.Client.git* | -| Repository/Type | RepositoryType | empty | Repository type. Examples: *git*, *tfs*. | -| Repository/Branch | RepositoryBranch | empty | Optional repository branch information. *RepositoryUrl* must also be specified for this property to be included. Example: *master* (NuGet 4.7.0+) | -| Repository/Commit | RepositoryCommit | empty | Optional repository commit or changeset to indicate which source the package was built against. *RepositoryUrl* must also be specified for this property to be included. Example: *0e4d1b598f350b3dc675018d539114d1328189ef* (NuGet 4.7.0+) | +| Tags | PackageTags | empty | A semicolon-delimited list of tags that designates the package. | +| ReleaseNotes | PackageReleaseNotes | empty | Release notes for the package. | +| Repository/Url | RepositoryUrl | empty | Repository URL used to clone or retrieve source code. Example: *https://github.com/NuGet/NuGet.Client.git*. | +| Repository/Type | RepositoryType | empty | Repository type. Examples: `git` (default), `tfs`. | +| Repository/Branch | RepositoryBranch | empty | Optional repository branch information. `RepositoryUrl` must also be specified for this property to be included. Example: *master* (NuGet 4.7.0+). | +| Repository/Commit | RepositoryCommit | empty | Optional repository commit or changeset to indicate which source the package was built against. `RepositoryUrl` must also be specified for this property to be included. Example: *0e4d1b598f350b3dc675018d539114d1328189ef* (NuGet 4.7.0+). | | PackageType | `DotNetCliTool, 1.0.0.0;Dependency, 2.0.0.0` | | | | Summary | Not supported | | | ### pack target inputs -- IsPackable -- SuppressDependenciesWhenPacking -- PackageVersion -- PackageId -- Authors -- Description -- Copyright -- PackageRequireLicenseAcceptance -- DevelopmentDependency -- PackageLicenseExpression -- PackageLicenseFile -- PackageLicenseUrl -- PackageProjectUrl -- PackageIconUrl -- PackageReleaseNotes -- PackageTags -- PackageOutputPath -- IncludeSymbols -- IncludeSource -- PackageTypes -- IsTool -- RepositoryUrl -- RepositoryType -- RepositoryBranch -- RepositoryCommit -- NoPackageAnalysis -- MinClientVersion -- IncludeBuildOutput -- IncludeContentInPack -- BuildOutputTargetFolder -- ContentTargetFolders -- NuspecFile -- NuspecBasePath -- NuspecProperties +| Property | Description | +| - | - | +| IsPackable | A Boolean value that specifies whether the project can be packed. The default value is `true`. | +| SuppressDependenciesWhenPacking | Set to `true` to suppress package dependencies from the generated NuGet package. | +| PackageVersion | Specifies the version that the resulting package will have. Accepts all forms of NuGet version string. Default is the value of `$(Version)`, that is, of the property `Version` in the project. | +| PackageId | Specifies the name for the resulting package. If not specified, the `pack` operation will default to using the `AssemblyName` or directory name as the name of the package. | +| PackageDescription | A long description of the package for UI display. | +| Authors | A semicolon-separated list of packages authors, matching the profile names on nuget.org. These are displayed in the NuGet Gallery on nuget.org and are used to cross-reference packages by the same authors. | +| Description | A long description for the assembly. If `PackageDescription` is not specified, then this property is also used as the description of the package. | +| Copyright | Copyright details for the package. | +| PackageRequireLicenseAcceptance | A Boolean value that specifies whether the client must prompt the consumer to accept the package license before installing the package. The default is `false`. | +| DevelopmentDependency | A Boolean value that specifies whether the package is marked as a development-only dependency, which prevents the package from being included as a dependency in other packages. With `PackageReference` (NuGet 4.8+), this flag also means that compile-time assets are excluded from compilation. For more information, see [DevelopmentDependency support for PackageReference](https://github.com/NuGet/Home/wiki/DevelopmentDependency-support-for-PackageReference). | +| PackageLicenseExpression | An [SPDX license identifier](https://spdx.org/licenses/) or expression, for example, `Apache-2.0`. For more information, see [Packing a license expression or a license file](#packing-a-license-expression-or-a-license-file). | +| PackageLicenseFile | Path to a license file within the package if you're using a custom license or a license that hasn't been assigned an SPDX identifier. | +| PackageLicenseUrl | `PackageLicenseUrl` is deprecated. Use `PackageLicenseExpression` or `PackageLicenseFile` instead. | +| PackageProjectUrl | | +| PackageIcon | Specifies the package icon path, relative to the root of the package. | +| PackageReleaseNotes| Release notes for the package. | +| PackageTags | A semicolon-delimited list of tags that designates the package. | +| PackageOutputPath | Determines the output path in which the packed package will be dropped. Default is `$(OutputPath)`. | +| IncludeSymbols | This Boolean value indicates whether the package should create an additional symbols package when the project is packed. The symbols package's format is controlled by the `SymbolPackageFormat` property. For more information, see [IncludeSymbols](#includesymbols). | +| IncludeSource | This Boolean value indicates whether the pack process should create a source package. The source package contains the library's source code as well as PDB files. Source files are put under the `src/ProjectName` directory in the resulting package file. For more information, see [IncludeSource](#includesource). | +| PackageTypes +| IsTool | Specifies whether all output files are copied to the *tools* folder instead of the *lib* folder. For more information, see [IsTool](#istool). | +| RepositoryUrl | Repository URL used to clone or retrieve source code. Example: *https://github.com/NuGet/NuGet.Client.git*. | +| RepositoryType | Repository type. Examples: `git` (default), `tfs`. | +| RepositoryBranch | Optional repository branch information. `RepositoryUrl` must also be specified for this property to be included. Example: *master* (NuGet 4.7.0+). | +| RepositoryCommit | Optional repository commit or changeset to indicate which source the package was built against. `RepositoryUrl` must also be specified for this property to be included. Example: *0e4d1b598f350b3dc675018d539114d1328189ef* (NuGet 4.7.0+). | +| SymbolPackageFormat | Specifies the format of the symbols package. If "symbols.nupkg", a legacy symbols package is created with a *.symbols.nupkg* extension containing PDBs, DLLs, and other output files. If "snupkg", a snupkg symbol package is created containing the portable PDBs. The default is "symbols.nupkg". | +| NoPackageAnalysis | Specifies that `pack` should not run package analysis after building the package. | +| MinClientVersion | Specifies the minimum version of the NuGet client that can install this package, enforced by nuget.exe and the Visual Studio Package Manager. | +| IncludeBuildOutput | This Boolean value specifies whether the build output assemblies should be packed into the *.nupkg* file or not. | +| IncludeContentInPack | This Boolean value specifies whether any items that have a type of `Content` are included in the resulting package automatically. The default is `true`. | +| BuildOutputTargetFolder | Specifies the folder where to place the output assemblies. The output assemblies (and other output files) are copied into their respective framework folders. For more information, see [Output assemblies](#output-assemblies). | +| ContentTargetFolders | Specifies the default location of where all the content files should go if `PackagePath` is not specified for them. The default value is "content;contentFiles". For more information, see [Including content in a package](#including-content-in-a-package). | +| NuspecFile | Relative or absolute path to the *.nuspec* file being used for packing. If specified, it's used **exclusively** for packaging information, and any information in the projects is not used. For more information, see [Packing using a .nuspec](#packing-using-a-nuspec). | +| NuspecBasePath | Base path for the *.nuspec* file. For more information, see [Packing using a .nuspec](#packing-using-a-nuspec). | +| NuspecProperties | Semicolon separated list of key=value pairs. For more information, see [Packing using a .nuspec](#packing-using-a-nuspec). | ## pack scenarios @@ -124,7 +128,7 @@ Starting with NuGet 5.3 & Visual Studio 2019 version 16.3, `pack` will raise [NU #### Packing an icon image file -When packing an icon image file, you need to use `PackageIcon` property to specify the package path, relative to the root of the package. In addition, you need to make sure that the file is included in the package. Image file size is limited to 1 MB. Supported file formats include JPEG and PNG. We recommend an image resolution of 128x128. +When packing an icon image file, use `PackageIcon` property to specify the icon file path, relative to the root of the package. In addition, make sure that the file is included in the package. Image file size is limited to 1 MB. Supported file formats include JPEG and PNG. We recommend an image resolution of 128x128. For example: @@ -226,8 +230,7 @@ If a file of type Compile, is outside the project folder, then it's just added t ### Packing a license expression or a license file -When using a license expression, the PackageLicenseExpression property should be used. -[License expression sample](https://github.com/NuGet/Samples/tree/master/PackageLicenseExpressionExample). +When using a license expression, use the `PackageLicenseExpression` property. For a sample, see [License expression sample](https://github.com/NuGet/Samples/tree/master/PackageLicenseExpressionExample). ```xml @@ -235,9 +238,9 @@ When using a license expression, the PackageLicenseExpression property should be ``` -[Learn more about license expressions and licenses that are accepted by NuGet.org](nuspec.md#license). +To learn more about license expressions and licenses that are accepted by NuGet.org, see [license metadata](nuspec.md#license). -When packing a license file, you need to use PackageLicenseFile property to specify the package path, relative to the root of the package. In addition, you need to make sure that the file is included in the package. For example: +When packing a license file, use `PackageLicenseFile` property to specify the package path, relative to the root of the package. In addition, make sure that the file is included in the package. For example: ```xml @@ -249,7 +252,10 @@ When packing a license file, you need to use PackageLicenseFile property to spec ``` -[License file sample](https://github.com/NuGet/Samples/tree/master/PackageLicenseFileExample). +For a sample, see [License file sample](https://github.com/NuGet/Samples/tree/master/PackageLicenseFileExample). + +> [!NOTE] +> Only one of `PackageLicenseExpression`, `PackageLicenseFile`, and `PackageLicenseUrl` can be specified at a time. ### Packing a file without an extension From 4a3520ae1544fcda959cceec1f5c6d27142d3981 Mon Sep 17 00:00:00 2001 From: Genevieve Warren <24882762+gewarren@users.noreply.github.com> Date: Fri, 8 Jan 2021 14:03:46 -0800 Subject: [PATCH 244/988] Link packageicon sections --- docs/reference/msbuild-targets.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index 7b79efa85..6b30e9a90 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -57,7 +57,7 @@ Note that the `Owners` and `Summary` properties from `.nuspec` are not supported | license | PackageLicenseFile | empty | Path to a license file within the package if you're using a custom license or a license that hasn't been assigned an SPDX identifier. You need to explicitly pack the referenced license file. Corresponds to ``. See [Packing a license expression or a license file](#packing-a-license-expression-or-a-license-file). | | LicenseUrl | PackageLicenseUrl | empty | `PackageLicenseUrl` is deprecated. Use `PackageLicenseExpression` or `PackageLicenseFile` instead. | | ProjectUrl | PackageProjectUrl | empty | | -| Icon | PackageIcon | empty | A path to an image in the package to use as a package icon. You need to explicitly pack the referenced icon image file. For more information, see [`icon` metadata](/nuget/reference/nuspec#icon). | +| Icon | PackageIcon | empty | A path to an image in the package to use as a package icon. You need to explicitly pack the referenced icon image file. For more information, see [Packing an icon image file](#packing-an-icon-image-file) and [`icon` metadata](/nuget/reference/nuspec#icon). | | IconUrl | PackageIconUrl | empty | For the best downlevel experience, `PackageIconUrl` should be specified in addition to `PackageIcon`. Longer term, `PackageIconUrl` will be deprecated. | | Tags | PackageTags | empty | A semicolon-delimited list of tags that designates the package. | | ReleaseNotes | PackageReleaseNotes | empty | Release notes for the package. | @@ -86,7 +86,7 @@ Note that the `Owners` and `Summary` properties from `.nuspec` are not supported | PackageLicenseFile | Path to a license file within the package if you're using a custom license or a license that hasn't been assigned an SPDX identifier. | | PackageLicenseUrl | `PackageLicenseUrl` is deprecated. Use `PackageLicenseExpression` or `PackageLicenseFile` instead. | | PackageProjectUrl | | -| PackageIcon | Specifies the package icon path, relative to the root of the package. | +| PackageIcon | Specifies the package icon path, relative to the root of the package. For more information, see [Packing an icon image file](#packing-an-icon-image-file). | | PackageReleaseNotes| Release notes for the package. | | PackageTags | A semicolon-delimited list of tags that designates the package. | | PackageOutputPath | Determines the output path in which the packed package will be dropped. Default is `$(OutputPath)`. | From f5a605d84c05d8b2ddb28e3c072614f58534ba8a Mon Sep 17 00:00:00 2001 From: David Coulter Date: Tue, 12 Jan 2021 05:51:41 -0800 Subject: [PATCH 245/988] Links: NuGet (2021-01) --- docs/release-notes/NuGet-5.8.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/release-notes/NuGet-5.8.md b/docs/release-notes/NuGet-5.8.md index a675ca6d2..f054f3a99 100644 --- a/docs/release-notes/NuGet-5.8.md +++ b/docs/release-notes/NuGet-5.8.md @@ -29,13 +29,13 @@ NuGet distribution vehicles: * Display package vulnerability details in the Package Manager UI package details pane - [#9850](https://github.com/NuGet/Home/issues/9850) -* Verify signed NuGet packages with the new [`dotnet nuget verify`](https://docs.microsoft.com/dotnet/core/tools/dotnet-nuget-verify) command - [#8051](https://github.com/NuGet/Home/issues/8051) +* Verify signed NuGet packages with the new [`dotnet nuget verify`](/dotnet/core/tools/dotnet-nuget-verify) command - [#8051](https://github.com/NuGet/Home/issues/8051) -* [`dotnet add package`](https://docs.microsoft.com/dotnet/core/tools/dotnet-add-package#:~:text=dotnet%20add%20package%201%20Name%202%20Synopsis%203,when%20targeting%20a%20specific%20framework.%20...%206%20Examples) supports `--prerelease` option to add the latest version of a package, including prerelease versions - [#4699](https://github.com/NuGet/Home/issues/4699) +* [`dotnet add package`](/dotnet/core/tools/dotnet-add-package#:~:text=dotnet%20add%20package%201%20Name%202%20Synopsis%203,when%20targeting%20a%20specific%20framework.%20...%206%20Examples) supports `--prerelease` option to add the latest version of a package, including prerelease versions - [#4699](https://github.com/NuGet/Home/issues/4699) -* Search for packages in the CLI with [`nuget.exe search`](https://docs.microsoft.com/nuget/reference/cli-reference/cli-ref-search) command - [#9704](https://github.com/NuGet/Home/issues/9704) +* Search for packages in the CLI with [`nuget.exe search`](../reference/cli-reference/cli-ref-search.md) command - [#9704](https://github.com/NuGet/Home/issues/9704) -* [`dotnet list package`](https://docs.microsoft.com/dotnet/core/tools/dotnet-list-package) command supports `--verbosity` option - [#9600](https://github.com/NuGet/Home/issues/9600) +* [`dotnet list package`](/dotnet/core/tools/dotnet-list-package) command supports `--verbosity` option - [#9600](https://github.com/NuGet/Home/issues/9600) * Enable fast No-Op restore optimization for csproj-style, PackageReference-based projects in Visual Studio - [#9565](https://github.com/NuGet/Home/issues/9565) @@ -155,5 +155,5 @@ Your feedback is important to us. If there are any problems with this release, for existing issues. For new issues within NuGet, please report a [GitHub Issue](https://github.com/NuGet/Home/issues/new). For general NuGet experience issues, let us know via the -[Report a Problem](https://docs.microsoft.com/visualstudio/ide/how-to-report-a-problem-with-visual-studio) -option found in your favorite IDE under **Help > Report a Problem**. +[Report a Problem](/visualstudio/ide/how-to-report-a-problem-with-visual-studio) +option found in your favorite IDE under **Help > Report a Problem**. \ No newline at end of file From 446a7fa824801a69a49a6e259f6244dfc1f1dc03 Mon Sep 17 00:00:00 2001 From: "Mike Jones (DEVUE)" Date: Thu, 21 Jan 2021 09:36:28 -0800 Subject: [PATCH 246/988] Fix warnings on invalid author --- docs/archive/project-json-and-uwp.md | 4 ++-- docs/archive/project-json-impact.md | 4 ++-- docs/archive/project-json.md | 4 ++-- docs/concepts/Dependency-Resolution.md | 4 ++-- docs/concepts/Package-Versioning.md | 4 ++-- docs/concepts/package-installation-process.md | 4 ++-- docs/consume-packages/Finding-and-Choosing-Packages.md | 4 ++-- docs/consume-packages/Overview-and-Workflow.md | 4 ++-- docs/consume-packages/Package-restore-troubleshooting.md | 4 ++-- docs/consume-packages/Packages-and-Source-Control.md | 4 ++-- docs/consume-packages/Reinstalling-and-Updating-Packages.md | 4 ++-- docs/consume-packages/Team-Foundation-Build.md | 4 ++-- docs/consume-packages/configuring-nuget-behavior.md | 4 ++-- docs/consume-packages/install-use-packages-powershell.md | 4 ++-- docs/consume-packages/install-use-packages-visual-studio.md | 4 ++-- docs/consume-packages/installing-signed-packages.md | 4 ++-- .../managing-the-global-packages-and-cache-folders.md | 4 ++-- .../migrate-packages-config-to-package-reference.md | 4 ++-- docs/create-packages/Creating-Localized-Packages.md | 4 ++-- docs/create-packages/Creating-a-Package.md | 2 +- docs/create-packages/Overview-and-Workflow.md | 4 ++-- docs/create-packages/Prerelease-Packages.md | 4 ++-- .../create-packages/Source-and-Config-File-Transformations.md | 4 ++-- docs/create-packages/Supporting-Multiple-Target-Frameworks.md | 4 ++-- docs/create-packages/Symbol-Packages.md | 4 ++-- .../author-packages-with-COM-interop-assemblies.md | 4 ++-- docs/create-packages/creating-a-package-dotnet-cli.md | 4 ++-- docs/create-packages/creating-a-package-msbuild.md | 4 ++-- .../multiple-target-frameworks-project-file.md | 4 ++-- docs/create-packages/set-package-type.md | 4 ++-- docs/guides/Create-NET-Standard-Packages-VS2015.md | 4 ++-- docs/guides/Create-UI-Controls.md | 4 ++-- docs/guides/Create-UWP-Packages.md | 4 ++-- docs/guides/Native-Packages.md | 4 ++-- docs/guides/create-packages-for-xamarin.md | 4 ++-- docs/hosting-packages/Local-Feeds.md | 4 ++-- docs/hosting-packages/NuGet-Server.md | 4 ++-- docs/hosting-packages/Overview.md | 4 ++-- docs/index.yml | 4 ++-- docs/install-nuget-client-tools.md | 4 ++-- docs/nuget-org/Publish-a-package.md | 4 ++-- docs/nuget-org/id-prefix-reservation.md | 4 ++-- docs/nuget-org/policies/data-requests.md | 4 ++-- docs/nuget-org/policies/deleting-packages.md | 4 ++-- docs/nuget-org/policies/dispute-resolution.md | 4 ++-- docs/nuget-org/policies/export-control.md | 4 ++-- docs/policies/Ecosystem.md | 4 ++-- docs/policies/Governance.md | 4 ++-- .../create-and-publish-a-package-using-the-dotnet-cli.md | 4 ++-- ...and-publish-a-package-using-visual-studio-net-framework.md | 4 ++-- .../create-and-publish-a-package-using-visual-studio.md | 4 ++-- docs/quickstart/install-and-use-a-package-in-visual-studio.md | 4 ++-- .../install-and-use-a-package-using-the-dotnet-cli.md | 4 ++-- docs/reference/Errors-and-Warnings.md | 4 ++-- docs/reference/NuGet-Client-SDK.md | 4 ++-- docs/reference/PowerShell-Reference.md | 4 ++-- docs/reference/cli-reference/cli-ref-add.md | 4 ++-- docs/reference/cli-reference/cli-ref-config.md | 4 ++-- docs/reference/cli-reference/cli-ref-delete.md | 4 ++-- docs/reference/cli-reference/cli-ref-environment-variables.md | 4 ++-- docs/reference/cli-reference/cli-ref-help.md | 4 ++-- docs/reference/cli-reference/cli-ref-init.md | 4 ++-- docs/reference/cli-reference/cli-ref-install.md | 4 ++-- docs/reference/cli-reference/cli-ref-list.md | 4 ++-- docs/reference/cli-reference/cli-ref-locals.md | 4 ++-- docs/reference/cli-reference/cli-ref-mirror.md | 4 ++-- docs/reference/cli-reference/cli-ref-pack.md | 4 ++-- docs/reference/cli-reference/cli-ref-push.md | 4 ++-- docs/reference/cli-reference/cli-ref-restore.md | 4 ++-- docs/reference/cli-reference/cli-ref-setapikey.md | 4 ++-- docs/reference/cli-reference/cli-ref-sources.md | 4 ++-- docs/reference/cli-reference/cli-ref-spec.md | 4 ++-- docs/reference/cli-reference/cli-ref-update.md | 4 ++-- docs/reference/dotnet-Commands.md | 4 ++-- docs/reference/errors-and-warnings/NU3000.md | 2 +- docs/reference/errors-and-warnings/NU3001.md | 2 +- docs/reference/errors-and-warnings/NU3002.md | 2 +- docs/reference/errors-and-warnings/NU3003.md | 2 +- docs/reference/errors-and-warnings/NU3004.md | 2 +- docs/reference/errors-and-warnings/NU3005.md | 2 +- docs/reference/errors-and-warnings/NU3006.md | 2 +- docs/reference/errors-and-warnings/NU3007.md | 2 +- docs/reference/errors-and-warnings/NU3008.md | 2 +- docs/reference/errors-and-warnings/NU3009.md | 2 +- docs/reference/errors-and-warnings/NU3010.md | 2 +- docs/reference/errors-and-warnings/NU3011.md | 2 +- docs/reference/errors-and-warnings/NU3012.md | 2 +- docs/reference/errors-and-warnings/NU3013.md | 2 +- docs/reference/errors-and-warnings/NU3014.md | 2 +- docs/reference/errors-and-warnings/NU3015.md | 2 +- docs/reference/errors-and-warnings/NU3016.md | 2 +- docs/reference/errors-and-warnings/NU3017.md | 2 +- docs/reference/errors-and-warnings/NU3018.md | 2 +- docs/reference/errors-and-warnings/NU3019.md | 2 +- docs/reference/errors-and-warnings/NU3020.md | 2 +- docs/reference/errors-and-warnings/NU3021.md | 2 +- docs/reference/errors-and-warnings/NU3022.md | 2 +- docs/reference/errors-and-warnings/NU3023.md | 2 +- docs/reference/errors-and-warnings/NU3025.md | 2 +- docs/reference/errors-and-warnings/NU3027.md | 2 +- docs/reference/errors-and-warnings/NU5000.md | 2 +- docs/reference/errors-and-warnings/NU5001.md | 2 +- docs/reference/errors-and-warnings/NU5002.md | 2 +- docs/reference/errors-and-warnings/NU5003.md | 2 +- docs/reference/errors-and-warnings/NU5004.md | 2 +- docs/reference/errors-and-warnings/NU5005.md | 2 +- docs/reference/errors-and-warnings/NU5007.md | 2 +- docs/reference/errors-and-warnings/NU5008.md | 2 +- docs/reference/errors-and-warnings/NU5009.md | 2 +- docs/reference/errors-and-warnings/NU5010.md | 2 +- docs/reference/errors-and-warnings/NU5011.md | 2 +- docs/reference/errors-and-warnings/NU5012.md | 2 +- docs/reference/errors-and-warnings/NU5013.md | 2 +- docs/reference/errors-and-warnings/NU5014.md | 2 +- docs/reference/errors-and-warnings/NU5015.md | 2 +- docs/reference/errors-and-warnings/NU5016.md | 2 +- docs/reference/errors-and-warnings/NU5017.md | 2 +- docs/reference/errors-and-warnings/NU5018.md | 2 +- docs/reference/errors-and-warnings/NU5019.md | 2 +- docs/reference/errors-and-warnings/NU5020.md | 2 +- docs/reference/errors-and-warnings/NU5021.md | 2 +- docs/reference/errors-and-warnings/NU5022.md | 2 +- docs/reference/errors-and-warnings/NU5023.md | 2 +- docs/reference/errors-and-warnings/NU5024.md | 2 +- docs/reference/errors-and-warnings/NU5025.md | 2 +- docs/reference/errors-and-warnings/NU5026.md | 2 +- docs/reference/errors-and-warnings/NU5027.md | 2 +- docs/reference/errors-and-warnings/NU5028.md | 2 +- docs/reference/errors-and-warnings/NU5029.md | 2 +- docs/reference/errors-and-warnings/NU5036.md | 2 +- docs/reference/errors-and-warnings/NU5100.md | 2 +- docs/reference/errors-and-warnings/NU5101.md | 2 +- docs/reference/errors-and-warnings/NU5102.md | 2 +- docs/reference/errors-and-warnings/NU5103.md | 2 +- docs/reference/errors-and-warnings/NU5104.md | 2 +- docs/reference/errors-and-warnings/NU5105.md | 2 +- docs/reference/errors-and-warnings/NU5106.md | 2 +- docs/reference/errors-and-warnings/NU5107.md | 2 +- docs/reference/errors-and-warnings/NU5108.md | 2 +- docs/reference/errors-and-warnings/NU5109.md | 2 +- docs/reference/errors-and-warnings/NU5110.md | 2 +- docs/reference/errors-and-warnings/NU5111.md | 2 +- docs/reference/errors-and-warnings/NU5112.md | 2 +- docs/reference/errors-and-warnings/NU5114.md | 2 +- docs/reference/errors-and-warnings/NU5115.md | 2 +- docs/reference/errors-and-warnings/NU5116.md | 2 +- docs/reference/errors-and-warnings/NU5117.md | 2 +- docs/reference/errors-and-warnings/NU5118.md | 2 +- docs/reference/errors-and-warnings/NU5119.md | 2 +- docs/reference/errors-and-warnings/NU5120.md | 2 +- docs/reference/errors-and-warnings/NU5121.md | 2 +- docs/reference/errors-and-warnings/NU5122.md | 2 +- docs/reference/errors-and-warnings/NU5123.md | 2 +- docs/reference/errors-and-warnings/NU5500.md | 2 +- .../NuGet-Credential-Providers-for-Visual-Studio.md | 4 ++-- .../reference/extensibility/nuget-exe-Credential-Providers.md | 4 ++-- docs/reference/nuget-config-file.md | 4 ++-- docs/reference/nuget-exe-CLI-Reference.md | 4 ++-- docs/reference/nuspec.md | 4 ++-- docs/reference/packages-config.md | 4 ++-- docs/reference/ps-reference/ps-ref-add-bindingredirect.md | 4 ++-- docs/reference/ps-reference/ps-ref-find-package.md | 4 ++-- docs/reference/ps-reference/ps-ref-get-package.md | 4 ++-- docs/reference/ps-reference/ps-ref-get-project.md | 4 ++-- docs/reference/ps-reference/ps-ref-install-package.md | 4 ++-- docs/reference/ps-reference/ps-ref-open-packagepage.md | 4 ++-- docs/reference/ps-reference/ps-ref-register-tabexpansion.md | 4 ++-- docs/reference/ps-reference/ps-ref-sync-package.md | 4 ++-- docs/reference/ps-reference/ps-ref-uninstall-package.md | 4 ++-- docs/reference/ps-reference/ps-ref-update-package.md | 4 ++-- docs/reference/target-frameworks.md | 4 ++-- docs/release-notes/Known-Issues.md | 4 ++-- docs/release-notes/NuGet-1.1.md | 4 ++-- docs/release-notes/NuGet-1.2.md | 4 ++-- docs/release-notes/NuGet-1.3.md | 4 ++-- docs/release-notes/NuGet-1.4.md | 4 ++-- docs/release-notes/NuGet-1.5.md | 4 ++-- docs/release-notes/NuGet-1.6.md | 4 ++-- docs/release-notes/NuGet-1.7.md | 4 ++-- docs/release-notes/NuGet-1.8.md | 4 ++-- docs/release-notes/NuGet-2.0.md | 4 ++-- docs/release-notes/NuGet-2.1.md | 4 ++-- docs/release-notes/NuGet-2.12-RC.md | 4 ++-- docs/release-notes/NuGet-2.12.md | 4 ++-- docs/release-notes/NuGet-2.2.1.md | 4 ++-- docs/release-notes/NuGet-2.2.md | 4 ++-- docs/release-notes/NuGet-2.5.md | 4 ++-- docs/release-notes/NuGet-2.6.1-for-WebMatrix.md | 4 ++-- docs/release-notes/NuGet-2.6.md | 4 ++-- docs/release-notes/NuGet-2.7.1.md | 4 ++-- docs/release-notes/NuGet-2.7.2.md | 4 ++-- docs/release-notes/NuGet-2.7.md | 4 ++-- docs/release-notes/NuGet-2.8.1.md | 4 ++-- docs/release-notes/NuGet-2.8.2.md | 4 ++-- docs/release-notes/NuGet-2.8.3.md | 4 ++-- docs/release-notes/NuGet-2.8.5.md | 4 ++-- docs/release-notes/NuGet-2.8.6.md | 4 ++-- docs/release-notes/NuGet-2.8.7.md | 4 ++-- docs/release-notes/NuGet-2.8.md | 4 ++-- docs/release-notes/NuGet-2.9-RC.md | 4 ++-- docs/release-notes/NuGet-3.0-Beta.md | 4 ++-- docs/release-notes/NuGet-3.0-Preview.md | 4 ++-- docs/release-notes/NuGet-3.0-RC.md | 4 ++-- docs/release-notes/NuGet-3.0-RC2.md | 4 ++-- docs/release-notes/NuGet-3.0.0.md | 4 ++-- docs/release-notes/NuGet-3.1.1.md | 4 ++-- docs/release-notes/NuGet-3.1.md | 4 ++-- docs/release-notes/NuGet-3.2-RC.md | 4 ++-- docs/release-notes/NuGet-3.2.1.md | 4 ++-- docs/release-notes/NuGet-3.2.md | 4 ++-- docs/release-notes/NuGet-3.3.md | 4 ++-- docs/release-notes/NuGet-3.4-RC.md | 4 ++-- docs/release-notes/NuGet-3.4.1.md | 4 ++-- docs/release-notes/NuGet-3.4.2.md | 4 ++-- docs/release-notes/NuGet-3.4.3.md | 4 ++-- docs/release-notes/NuGet-3.4.4.md | 4 ++-- docs/release-notes/NuGet-3.4.md | 4 ++-- docs/release-notes/NuGet-3.5-Beta.md | 4 ++-- docs/release-notes/NuGet-3.5-Beta2.md | 4 ++-- docs/release-notes/NuGet-3.5-RC.md | 4 ++-- docs/release-notes/NuGet-3.5-RTM.md | 4 ++-- docs/release-notes/NuGet-4.0-RC.md | 4 ++-- docs/release-notes/NuGet-4.3-RTM.md | 4 ++-- docs/release-notes/NuGet-4.4-RTM.md | 4 ++-- docs/release-notes/NuGet-4.7-RTM.md | 4 ++-- docs/release-notes/NuGet-4.8-RTM.md | 4 ++-- docs/release-notes/NuGet-4.9-RTM.md | 4 ++-- docs/release-notes/NuGet-5.0-RTM.md | 4 ++-- docs/release-notes/NuGet-5.1-RTM.md | 4 ++-- docs/release-notes/NuGet-5.2-RTM.md | 4 ++-- docs/release-notes/NuGet-5.3.md | 4 ++-- docs/release-notes/NuGet-5.4.md | 4 ++-- docs/release-notes/NuGet-5.5.md | 4 ++-- docs/visual-studio-extensibility/Project-System-Support.md | 4 ++-- docs/visual-studio-extensibility/Visual-Studio-Templates.md | 4 ++-- docs/what-is-nuget.md | 4 ++-- 236 files changed, 391 insertions(+), 391 deletions(-) diff --git a/docs/archive/project-json-and-uwp.md b/docs/archive/project-json-and-uwp.md index f25a464dd..bea08ee81 100644 --- a/docs/archive/project-json-and-uwp.md +++ b/docs/archive/project-json-and-uwp.md @@ -1,8 +1,8 @@ --- title: NuGet project.json file with UWP projects description: Description of how the project.json file is used to track NuGet dependencies in Universal Windows Platform (UWP) projects. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 07/17/2017 ms.topic: conceptual --- diff --git a/docs/archive/project-json-impact.md b/docs/archive/project-json-impact.md index 0363b82eb..3f171f019 100644 --- a/docs/archive/project-json-impact.md +++ b/docs/archive/project-json-impact.md @@ -1,8 +1,8 @@ --- title: project.json impact on NuGet package authors description: Details on how the implementation of project.json in NuGet 3.x affects package authors, such as unsupported features, content, and package format. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/18/2018 ms.topic: conceptual --- diff --git a/docs/archive/project-json.md b/docs/archive/project-json.md index 9284cbd8c..e091f0837 100644 --- a/docs/archive/project-json.md +++ b/docs/archive/project-json.md @@ -1,8 +1,8 @@ --- title: project.json File Reference for NuGet description: In some project types, project.json maintains the list of NuGet packages used in the project. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 07/27/2017 ms.topic: reference --- diff --git a/docs/concepts/Dependency-Resolution.md b/docs/concepts/Dependency-Resolution.md index b4c134d2f..3e7507a84 100644 --- a/docs/concepts/Dependency-Resolution.md +++ b/docs/concepts/Dependency-Resolution.md @@ -1,8 +1,8 @@ --- title: NuGet Package Dependency Resolution description: Details on the process through which a NuGet package's dependencies are resolved and installed in both NuGet 2.x and NuGet 3.x+. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 08/14/2017 ms.topic: conceptual --- diff --git a/docs/concepts/Package-Versioning.md b/docs/concepts/Package-Versioning.md index 94eb83b0c..4e9cb55fe 100644 --- a/docs/concepts/Package-Versioning.md +++ b/docs/concepts/Package-Versioning.md @@ -1,8 +1,8 @@ --- title: NuGet Package Version Reference description: Exact details on specifying version numbers and ranges for other packages upon which a NuGet package depends, and how dependencies are installed. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 03/23/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/concepts/package-installation-process.md b/docs/concepts/package-installation-process.md index f50dc9711..0ad246c66 100644 --- a/docs/concepts/package-installation-process.md +++ b/docs/concepts/package-installation-process.md @@ -1,8 +1,8 @@ --- title: What happens when a package is installed? description: Detailed information about the package installation process -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 06/20/2019 ms.topic: conceptual --- diff --git a/docs/consume-packages/Finding-and-Choosing-Packages.md b/docs/consume-packages/Finding-and-Choosing-Packages.md index db88cd0d1..d450dbcd6 100644 --- a/docs/consume-packages/Finding-and-Choosing-Packages.md +++ b/docs/consume-packages/Finding-and-Choosing-Packages.md @@ -1,8 +1,8 @@ --- title: Finding and Choosing NuGet Packages description: An overview of how to find and choose the best NuGet packages for a project including details on the NuGet search syntax. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 06/04/2018 ms.topic: conceptual --- diff --git a/docs/consume-packages/Overview-and-Workflow.md b/docs/consume-packages/Overview-and-Workflow.md index 0c7733d33..b0a8f263c 100644 --- a/docs/consume-packages/Overview-and-Workflow.md +++ b/docs/consume-packages/Overview-and-Workflow.md @@ -1,8 +1,8 @@ --- title: Overview and workflow of using NuGet packages description: An overview of the process of consuming NuGet packages in a project, with links to other specific parts of the process. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 03/22/2018 ms.topic: conceptual --- diff --git a/docs/consume-packages/Package-restore-troubleshooting.md b/docs/consume-packages/Package-restore-troubleshooting.md index 6888c7997..fb120c9bc 100644 --- a/docs/consume-packages/Package-restore-troubleshooting.md +++ b/docs/consume-packages/Package-restore-troubleshooting.md @@ -1,8 +1,8 @@ --- title: Troubleshooting NuGet Package Restore in Visual Studio description: A description of common NuGet restore errors in Visual Studio and how to troubleshoot them. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 05/25/2018 ms.topic: conceptual --- diff --git a/docs/consume-packages/Packages-and-Source-Control.md b/docs/consume-packages/Packages-and-Source-Control.md index e3d29df6b..327f5a64a 100644 --- a/docs/consume-packages/Packages-and-Source-Control.md +++ b/docs/consume-packages/Packages-and-Source-Control.md @@ -1,8 +1,8 @@ --- title: NuGet Packages and Source Control description: Considerations for how to treat NuGet packages within version control and source control systems, and how to omit packages with git and TFVC. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 03/16/2018 ms.topic: conceptual --- diff --git a/docs/consume-packages/Reinstalling-and-Updating-Packages.md b/docs/consume-packages/Reinstalling-and-Updating-Packages.md index 2377eb455..d6a7c46a1 100644 --- a/docs/consume-packages/Reinstalling-and-Updating-Packages.md +++ b/docs/consume-packages/Reinstalling-and-Updating-Packages.md @@ -1,8 +1,8 @@ --- title: Reinstalling and Updating NuGet Packages description: Details on when it's necessary to reinstall and update packages, as with broken package references in Visual Studio. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 12/07/2017 ms.topic: conceptual --- diff --git a/docs/consume-packages/Team-Foundation-Build.md b/docs/consume-packages/Team-Foundation-Build.md index 9684f7354..600a28597 100644 --- a/docs/consume-packages/Team-Foundation-Build.md +++ b/docs/consume-packages/Team-Foundation-Build.md @@ -1,8 +1,8 @@ --- title: Walkthrough of NuGet Package Restore with Team Foundation Build description: A walkthrough of how NuGet package restore with with Team Foundation Build (both TFS and Visual Studio Team Services). -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/09/2017 ms.topic: conceptual --- diff --git a/docs/consume-packages/configuring-nuget-behavior.md b/docs/consume-packages/configuring-nuget-behavior.md index b92dd8de1..f3bf1e668 100644 --- a/docs/consume-packages/configuring-nuget-behavior.md +++ b/docs/consume-packages/configuring-nuget-behavior.md @@ -1,8 +1,8 @@ --- title: Common NuGet configurations description: NuGet.Config files control NuGet's behavior both globally and on a per-project basis, and are modified with nuget config command. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 10/25/2017 ms.topic: conceptual --- diff --git a/docs/consume-packages/install-use-packages-powershell.md b/docs/consume-packages/install-use-packages-powershell.md index b4f414bbc..7840c66ad 100644 --- a/docs/consume-packages/install-use-packages-powershell.md +++ b/docs/consume-packages/install-use-packages-powershell.md @@ -1,8 +1,8 @@ --- title: Install and manage NuGet packages using the console in Visual Studio description: Instructions for using the NuGet Package Manager Console in Visual Studio for working with packages. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 07/08/2019 ms.topic: conceptual f1_keywords: diff --git a/docs/consume-packages/install-use-packages-visual-studio.md b/docs/consume-packages/install-use-packages-visual-studio.md index e4895bd33..c4b8f8269 100644 --- a/docs/consume-packages/install-use-packages-visual-studio.md +++ b/docs/consume-packages/install-use-packages-visual-studio.md @@ -1,8 +1,8 @@ --- title: Install and manage NuGet packages in Visual Studio description: Instructions for using the NuGet Package Manager UI in Visual Studio for working with NuGet packages. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 07/08/2019 ms.topic: conceptual f1_keywords: diff --git a/docs/consume-packages/installing-signed-packages.md b/docs/consume-packages/installing-signed-packages.md index 1b7f4a52e..0814218f4 100644 --- a/docs/consume-packages/installing-signed-packages.md +++ b/docs/consume-packages/installing-signed-packages.md @@ -1,8 +1,8 @@ --- title: Manage package trust boundaries description: Describes the process of installing signed NuGet packages and configuring package signature trust settings. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/29/2018 ms.topic: conceptual --- diff --git a/docs/consume-packages/managing-the-global-packages-and-cache-folders.md b/docs/consume-packages/managing-the-global-packages-and-cache-folders.md index 96dd8d9f3..cb621f84b 100644 --- a/docs/consume-packages/managing-the-global-packages-and-cache-folders.md +++ b/docs/consume-packages/managing-the-global-packages-and-cache-folders.md @@ -1,8 +1,8 @@ --- title: How to manage the global packages, cache, temp folders in NuGet description: How to manage the global package installation folder, the package cache, and the temp folders that exist on a computer, which are used when installing, restoring, and updating packages. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 03/19/2018 ms.topic: conceptual --- diff --git a/docs/consume-packages/migrate-packages-config-to-package-reference.md b/docs/consume-packages/migrate-packages-config-to-package-reference.md index 41a4c599a..ceee3b5d3 100644 --- a/docs/consume-packages/migrate-packages-config-to-package-reference.md +++ b/docs/consume-packages/migrate-packages-config-to-package-reference.md @@ -1,8 +1,8 @@ --- title: Migrating from packages.config to PackageReference formats description: Details on how to migrate a project from the packages.config management format to PackageReference as supported by NuGet 4.0+ and VS2017 and .NET Core 2.0 -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 05/24/2019 ms.topic: conceptual --- diff --git a/docs/create-packages/Creating-Localized-Packages.md b/docs/create-packages/Creating-Localized-Packages.md index 544c78340..e783a156b 100644 --- a/docs/create-packages/Creating-Localized-Packages.md +++ b/docs/create-packages/Creating-Localized-Packages.md @@ -1,8 +1,8 @@ --- title: How to Create a Localized NuGet Package description: Details on the two ways to create localized NuGet packages, either by including all assemblies in a single package or publishing separate assemblies. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/18/2018 ms.topic: conceptual --- diff --git a/docs/create-packages/Creating-a-Package.md b/docs/create-packages/Creating-a-Package.md index 70d3d2260..9befb946d 100644 --- a/docs/create-packages/Creating-a-Package.md +++ b/docs/create-packages/Creating-a-Package.md @@ -1,7 +1,7 @@ --- title: Create a NuGet package using nuget.exe CLI description: A detailed guide on designing and creating a NuGet package, including files and versioning. -author: karann-msft +author: JonDouglas ms.author: feaguila ms.date: 07/09/2019 ms.topic: conceptual diff --git a/docs/create-packages/Overview-and-Workflow.md b/docs/create-packages/Overview-and-Workflow.md index cb4be7514..96984557b 100644 --- a/docs/create-packages/Overview-and-Workflow.md +++ b/docs/create-packages/Overview-and-Workflow.md @@ -1,8 +1,8 @@ --- title: Overview and workflow of creating NuGet packages description: An overview of the process of creating and publishing a NuGet package, with links to other specific parts of the process. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 07/26/2017 ms.topic: conceptual --- diff --git a/docs/create-packages/Prerelease-Packages.md b/docs/create-packages/Prerelease-Packages.md index 388ad2e41..c36bbe25a 100644 --- a/docs/create-packages/Prerelease-Packages.md +++ b/docs/create-packages/Prerelease-Packages.md @@ -1,8 +1,8 @@ --- title: Pre-release versions in NuGet packages description: Guidance for building pre-release packages -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 08/14/2017 ms.topic: conceptual --- diff --git a/docs/create-packages/Source-and-Config-File-Transformations.md b/docs/create-packages/Source-and-Config-File-Transformations.md index 35f81fec2..5b8b40e6c 100644 --- a/docs/create-packages/Source-and-Config-File-Transformations.md +++ b/docs/create-packages/Source-and-Config-File-Transformations.md @@ -1,8 +1,8 @@ --- title: Source and config file transformations for NuGet packages description: Details on the ability for NuGet packages to transform source code and configuration (XML) files when installed. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 04/24/2017 ms.topic: conceptual ms.reviewer: anangaur diff --git a/docs/create-packages/Supporting-Multiple-Target-Frameworks.md b/docs/create-packages/Supporting-Multiple-Target-Frameworks.md index b8ea24e7d..c91a9717e 100644 --- a/docs/create-packages/Supporting-Multiple-Target-Frameworks.md +++ b/docs/create-packages/Supporting-Multiple-Target-Frameworks.md @@ -1,8 +1,8 @@ --- title: Multi-targeting for NuGet Packages description: Description of the various methods to target multiple .NET Framework versions from within a single NuGet package. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 07/15/2019 ms.topic: conceptual --- diff --git a/docs/create-packages/Symbol-Packages.md b/docs/create-packages/Symbol-Packages.md index a9c02226a..56b42d038 100644 --- a/docs/create-packages/Symbol-Packages.md +++ b/docs/create-packages/Symbol-Packages.md @@ -1,8 +1,8 @@ --- title: Creating legacy symbol packages (.symbols.nupkg) description: How to create NuGet packages that contain only symbols to support debugging of other NuGet packages in Visual Studio. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 09/12/2017 ms.topic: conceptual ms.reviewer: anangaur diff --git a/docs/create-packages/author-packages-with-COM-interop-assemblies.md b/docs/create-packages/author-packages-with-COM-interop-assemblies.md index e98fbe7ba..27157c1e3 100644 --- a/docs/create-packages/author-packages-with-COM-interop-assemblies.md +++ b/docs/create-packages/author-packages-with-COM-interop-assemblies.md @@ -1,8 +1,8 @@ --- title: Create packages with COM interop assemblies description: Describes how to create packages that contain COM interop assemblies -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 07/09/2019 ms.topic: conceptual --- diff --git a/docs/create-packages/creating-a-package-dotnet-cli.md b/docs/create-packages/creating-a-package-dotnet-cli.md index c4a62b387..a0feed738 100644 --- a/docs/create-packages/creating-a-package-dotnet-cli.md +++ b/docs/create-packages/creating-a-package-dotnet-cli.md @@ -1,8 +1,8 @@ --- title: Create a NuGet package using the dotnet CLI description: A detailed guide to the process of designing and creating a NuGet package, including key decision points like files and versioning. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 02/20/2020 ms.topic: conceptual --- diff --git a/docs/create-packages/creating-a-package-msbuild.md b/docs/create-packages/creating-a-package-msbuild.md index 19ef818f2..259dfb344 100644 --- a/docs/create-packages/creating-a-package-msbuild.md +++ b/docs/create-packages/creating-a-package-msbuild.md @@ -1,8 +1,8 @@ --- title: Create a NuGet package using MSBuild description: A detailed guide to the process of designing and creating a NuGet package, including key decision points like files and versioning. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 02/20/2020 ms.topic: conceptual --- diff --git a/docs/create-packages/multiple-target-frameworks-project-file.md b/docs/create-packages/multiple-target-frameworks-project-file.md index c1100dffe..722d30796 100644 --- a/docs/create-packages/multiple-target-frameworks-project-file.md +++ b/docs/create-packages/multiple-target-frameworks-project-file.md @@ -1,8 +1,8 @@ --- title: Multi-targeting for NuGet Packages in your project file description: Description of the various methods to target multiple .NET Framework versions from within a single NuGet package. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 07/15/2019 ms.topic: conceptual --- diff --git a/docs/create-packages/set-package-type.md b/docs/create-packages/set-package-type.md index 98cc2bcd3..fe1f2ca44 100644 --- a/docs/create-packages/set-package-type.md +++ b/docs/create-packages/set-package-type.md @@ -1,8 +1,8 @@ --- title: Set a NuGet package type description: Describes packages types to indicate intended use of a package. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 07/09/2019 ms.topic: conceptual --- diff --git a/docs/guides/Create-NET-Standard-Packages-VS2015.md b/docs/guides/Create-NET-Standard-Packages-VS2015.md index 62b18a80f..8d4e839dc 100644 --- a/docs/guides/Create-NET-Standard-Packages-VS2015.md +++ b/docs/guides/Create-NET-Standard-Packages-VS2015.md @@ -1,8 +1,8 @@ --- title: Create .NET Standard and .NET Framework NuGet Packages with Visual Studio 2015 description: An end-to-end walkthrough of creating .NET Standard and .NET Framework NuGet packages using NuGet 3.x and Visual Studio 2015. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 02/02/2018 ms.topic: tutorial --- diff --git a/docs/guides/Create-UI-Controls.md b/docs/guides/Create-UI-Controls.md index 592531919..4dd8ca8bd 100644 --- a/docs/guides/Create-UI-Controls.md +++ b/docs/guides/Create-UI-Controls.md @@ -1,8 +1,8 @@ --- title: How to package UI controls with NuGet description: How to create NuGet packages that contain UWP or WPF controls, including the necessary metadata and supporting files for the Visual Studio and Blend designers. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 05/23/2018 ms.topic: tutorial --- diff --git a/docs/guides/Create-UWP-Packages.md b/docs/guides/Create-UWP-Packages.md index 641900c7d..dcb17dc79 100644 --- a/docs/guides/Create-UWP-Packages.md +++ b/docs/guides/Create-UWP-Packages.md @@ -1,8 +1,8 @@ --- title: Create NuGet Packages for the Universal Windows Platform description: An end-to-end walkthrough of creating NuGet packages using a Windows Runtime Component for the Universal Windows Platform. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 03/21/2017 ms.topic: tutorial --- diff --git a/docs/guides/Native-Packages.md b/docs/guides/Native-Packages.md index f4864c1c6..d35d663c5 100644 --- a/docs/guides/Native-Packages.md +++ b/docs/guides/Native-Packages.md @@ -1,8 +1,8 @@ --- title: Creating Native NuGet Packages description: Details on creating native NuGet packages that contains C++ code instead of managed code, for use in C++ projects. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/09/2017 ms.topic: conceptual --- diff --git a/docs/guides/create-packages-for-xamarin.md b/docs/guides/create-packages-for-xamarin.md index dca0b4361..0ec741a5f 100644 --- a/docs/guides/create-packages-for-xamarin.md +++ b/docs/guides/create-packages-for-xamarin.md @@ -1,8 +1,8 @@ --- title: Create NuGet Packages for Xamarin (for iOS, Android, and Windows) with Visual Studio 2017 or 2019 description: An end-to-end walkthrough of creating NuGet packages for Xamarin that use native APIs on iOS, Android, and Windows. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/05/2019 ms.topic: tutorial --- diff --git a/docs/hosting-packages/Local-Feeds.md b/docs/hosting-packages/Local-Feeds.md index 35fb0580b..01e409c9f 100644 --- a/docs/hosting-packages/Local-Feeds.md +++ b/docs/hosting-packages/Local-Feeds.md @@ -1,8 +1,8 @@ --- title: Setting up Local NuGet Feeds description: How to create a local feed for NuGet packages using folders on your local network -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 12/06/2017 ms.topic: conceptual --- diff --git a/docs/hosting-packages/NuGet-Server.md b/docs/hosting-packages/NuGet-Server.md index 80937e653..19d2467c6 100644 --- a/docs/hosting-packages/NuGet-Server.md +++ b/docs/hosting-packages/NuGet-Server.md @@ -1,8 +1,8 @@ --- title: Using NuGet.Server to Host NuGet Feeds description: How to create and host a NuGet package feed on any server running IIS using NuGet.Server, making packages available through HTTP and OData. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 03/13/2018 ms.topic: conceptual --- diff --git a/docs/hosting-packages/Overview.md b/docs/hosting-packages/Overview.md index bcf1c6e83..3671910cf 100644 --- a/docs/hosting-packages/Overview.md +++ b/docs/hosting-packages/Overview.md @@ -1,8 +1,8 @@ --- title: Overview of Hosting Your Own NuGet Feeds description: An overview of opens for hosting your own NuGet package feeds or galleries either locally or remotely. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 08/25/2017 ms.topic: conceptual ms.reviewer: anangaur diff --git a/docs/index.yml b/docs/index.yml index e543945d2..d39291d55 100644 --- a/docs/index.yml +++ b/docs/index.yml @@ -7,8 +7,8 @@ metadata: titleSuffix: "" description: NuGet is the package manager for Microsoft development platforms including .NET. The NuGet client tools provide the ability to create and consume packages. ms.topic: hub-page - author: karann-msft - ms.author: karann + author: JonDouglas + ms.author: jodou ms.date: 01/13/2020 highlightedContent: diff --git a/docs/install-nuget-client-tools.md b/docs/install-nuget-client-tools.md index acd97b38f..fbdb09bdc 100644 --- a/docs/install-nuget-client-tools.md +++ b/docs/install-nuget-client-tools.md @@ -1,8 +1,8 @@ --- title: Installing NuGet client tools description: Guidance on installing client tools, the dotnet and nuget command-line interfaces (CLI), and the Package Manager for Visual Studio. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 06/20/2019 ms.topic: quickstart --- diff --git a/docs/nuget-org/Publish-a-package.md b/docs/nuget-org/Publish-a-package.md index 4c7c40567..627ce921b 100644 --- a/docs/nuget-org/Publish-a-package.md +++ b/docs/nuget-org/Publish-a-package.md @@ -1,8 +1,8 @@ --- title: How to Publish a NuGet Package description: Detailed instructions for how to publish a NuGet package to nuget.org or private feeds, and how to manage package ownership on nuget.org. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 05/18/2018 ms.topic: conceptual ms.reviewer: anangaur diff --git a/docs/nuget-org/id-prefix-reservation.md b/docs/nuget-org/id-prefix-reservation.md index 586fd4e6a..61289bd22 100644 --- a/docs/nuget-org/id-prefix-reservation.md +++ b/docs/nuget-org/id-prefix-reservation.md @@ -1,8 +1,8 @@ --- title: ID Prefix Reservation description: Package ID Prefix Reservation feature description and author guide. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 09/07/2019 ms.topic: reference ms.reviewer: karann diff --git a/docs/nuget-org/policies/data-requests.md b/docs/nuget-org/policies/data-requests.md index 61166e32d..57cab4356 100644 --- a/docs/nuget-org/policies/data-requests.md +++ b/docs/nuget-org/policies/data-requests.md @@ -1,8 +1,8 @@ --- title: User Data Requests description: Policies for requesting user data export and delete -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 05/01/2018 ms.topic: conceptual --- diff --git a/docs/nuget-org/policies/deleting-packages.md b/docs/nuget-org/policies/deleting-packages.md index 0e8061241..fac1c35fa 100644 --- a/docs/nuget-org/policies/deleting-packages.md +++ b/docs/nuget-org/policies/deleting-packages.md @@ -1,8 +1,8 @@ --- title: Deleting NuGet Packages from nuget.org description: Policies for unlisting packages from nuget.org; permanent deletion is not supported except when packages violate other policies. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/18/2018 ms.topic: conceptual --- diff --git a/docs/nuget-org/policies/dispute-resolution.md b/docs/nuget-org/policies/dispute-resolution.md index 69a1e8634..94a1aea40 100644 --- a/docs/nuget-org/policies/dispute-resolution.md +++ b/docs/nuget-org/policies/dispute-resolution.md @@ -1,8 +1,8 @@ --- title: "NuGet Package Name Dispute Resolution" description: The process for resolving disputes between NuGet package publishers related to branding, trademarks, and other conflict situations. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/18/2018 ms.topic: conceptual --- diff --git a/docs/nuget-org/policies/export-control.md b/docs/nuget-org/policies/export-control.md index 3121b9d26..a0ce51d75 100644 --- a/docs/nuget-org/policies/export-control.md +++ b/docs/nuget-org/policies/export-control.md @@ -1,8 +1,8 @@ --- title: Export Control Policy description: Policies governing export control laws -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 06/27/2019 ms.topic: conceptual --- diff --git a/docs/policies/Ecosystem.md b/docs/policies/Ecosystem.md index a3857c763..542a0eb8f 100644 --- a/docs/policies/Ecosystem.md +++ b/docs/policies/Ecosystem.md @@ -1,8 +1,8 @@ --- title: Overview of the NuGet Ecosystem description: Comprehensive resources in the NuGet ecosystem including NuGet sources, non-Microsoft NuGet projects, utilities, and training materials. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/18/2018 ms.topic: conceptual --- diff --git a/docs/policies/Governance.md b/docs/policies/Governance.md index 885b91d84..fce9b9a5e 100644 --- a/docs/policies/Governance.md +++ b/docs/policies/Governance.md @@ -1,8 +1,8 @@ --- title: NuGet Project Governance description: The governance model for NuGet, including roles and responsibilities for committers, contributors, and users. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/18/2018 ms.topic: conceptual --- diff --git a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md index ebdd36583..9d5f812c9 100644 --- a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md +++ b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md @@ -1,8 +1,8 @@ --- title: Create and publish a NuGet package using the dotnet CLI description: A walkthrough tutorial on creating and publishing a NuGet package using the .NET Core CLI, dotnet. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 05/24/2019 ms.topic: quickstart --- diff --git a/docs/quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md b/docs/quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md index 9fee6a0b8..0711b66e2 100644 --- a/docs/quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md +++ b/docs/quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md @@ -1,8 +1,8 @@ --- title: Create and publish a .NET Framework NuGet package using Visual Studio on Windows description: A walkthrough tutorial on creating and publishing a .NET Framework NuGet package using Visual Studio on Windows. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 05/13/2018 ms.topic: quickstart --- diff --git a/docs/quickstart/create-and-publish-a-package-using-visual-studio.md b/docs/quickstart/create-and-publish-a-package-using-visual-studio.md index 307fed305..ab2615c72 100644 --- a/docs/quickstart/create-and-publish-a-package-using-visual-studio.md +++ b/docs/quickstart/create-and-publish-a-package-using-visual-studio.md @@ -1,8 +1,8 @@ --- title: Create and publish a .NET Standard NuGet package - Visual Studio on Windows description: A walkthrough tutorial on creating and publishing a .NET Standard NuGet package using Visual Studio on Windows. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 08/16/2019 ms.topic: quickstart --- diff --git a/docs/quickstart/install-and-use-a-package-in-visual-studio.md b/docs/quickstart/install-and-use-a-package-in-visual-studio.md index 52d6e4aef..5a830bd68 100644 --- a/docs/quickstart/install-and-use-a-package-in-visual-studio.md +++ b/docs/quickstart/install-and-use-a-package-in-visual-studio.md @@ -1,8 +1,8 @@ --- title: Install and use a NuGet package in Visual Studio description: A walkthrough tutorial on the process of installing and using a NuGet package in a Visual Studio project. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 07/24/2018 ms.topic: quickstart --- diff --git a/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md b/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md index 584b9b734..a7c02c577 100644 --- a/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md +++ b/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md @@ -1,8 +1,8 @@ --- title: Install and use a NuGet package using the dotnet CLI description: A walkthrough tutorial on the process of installing and using a NuGet package in a .NET Core project. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/23/2018 ms.topic: quickstart --- diff --git a/docs/reference/Errors-and-Warnings.md b/docs/reference/Errors-and-Warnings.md index 8832e4950..62cb85f48 100644 --- a/docs/reference/Errors-and-Warnings.md +++ b/docs/reference/Errors-and-Warnings.md @@ -1,8 +1,8 @@ --- title: NuGet Errors and Warnings Reference description: Complete reference for warnings and errors issued from NuGet during various NuGet operations. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 05/18/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/NuGet-Client-SDK.md b/docs/reference/NuGet-Client-SDK.md index 32284ff84..4720fde2e 100644 --- a/docs/reference/NuGet-Client-SDK.md +++ b/docs/reference/NuGet-Client-SDK.md @@ -1,8 +1,8 @@ --- title: NuGet Client SDK description: The API is evolving and not yet documented, but examples are available on Dave Glick's blog. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/09/2018 ms.topic: conceptual --- diff --git a/docs/reference/PowerShell-Reference.md b/docs/reference/PowerShell-Reference.md index 7924e5174..3a8bcf645 100644 --- a/docs/reference/PowerShell-Reference.md +++ b/docs/reference/PowerShell-Reference.md @@ -1,8 +1,8 @@ --- title: NuGet PowerShell Reference description: The complete reference to PowerShell commands available in the NuGet Package Manager Console in Visual Studio. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 10/02/2017 ms.topic: reference --- diff --git a/docs/reference/cli-reference/cli-ref-add.md b/docs/reference/cli-reference/cli-ref-add.md index 929b4b599..1f34fcb31 100644 --- a/docs/reference/cli-reference/cli-ref-add.md +++ b/docs/reference/cli-reference/cli-ref-add.md @@ -1,8 +1,8 @@ --- title: NuGet CLI add command description: Reference for the nuget.exe add command -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/18/2018 ms.topic: reference --- diff --git a/docs/reference/cli-reference/cli-ref-config.md b/docs/reference/cli-reference/cli-ref-config.md index fa7aecc49..c6a8a726e 100644 --- a/docs/reference/cli-reference/cli-ref-config.md +++ b/docs/reference/cli-reference/cli-ref-config.md @@ -1,8 +1,8 @@ --- title: NuGet CLI config command description: Reference for the nuget.exe config command -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/18/2018 ms.topic: reference --- diff --git a/docs/reference/cli-reference/cli-ref-delete.md b/docs/reference/cli-reference/cli-ref-delete.md index 39e45424c..af7bc2c57 100644 --- a/docs/reference/cli-reference/cli-ref-delete.md +++ b/docs/reference/cli-reference/cli-ref-delete.md @@ -1,8 +1,8 @@ --- title: NuGet CLI delete command description: Reference for the nuget.exe delete command -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/18/2018 ms.topic: reference --- diff --git a/docs/reference/cli-reference/cli-ref-environment-variables.md b/docs/reference/cli-reference/cli-ref-environment-variables.md index 77254b39f..7220ed04a 100644 --- a/docs/reference/cli-reference/cli-ref-environment-variables.md +++ b/docs/reference/cli-reference/cli-ref-environment-variables.md @@ -1,8 +1,8 @@ --- title: NuGet CLI environment variables description: Reference for the nuget.exe environment variables -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/18/2018 ms.topic: reference --- diff --git a/docs/reference/cli-reference/cli-ref-help.md b/docs/reference/cli-reference/cli-ref-help.md index 04771dc86..ddd222204 100644 --- a/docs/reference/cli-reference/cli-ref-help.md +++ b/docs/reference/cli-reference/cli-ref-help.md @@ -1,8 +1,8 @@ --- title: NuGet CLI help command description: Reference for the nuget.exe help command -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/18/2018 ms.topic: reference --- diff --git a/docs/reference/cli-reference/cli-ref-init.md b/docs/reference/cli-reference/cli-ref-init.md index 3cdb1750e..6b0289623 100644 --- a/docs/reference/cli-reference/cli-ref-init.md +++ b/docs/reference/cli-reference/cli-ref-init.md @@ -1,8 +1,8 @@ --- title: NuGet CLI init command description: Reference for the nuget.exe init command -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/18/2018 ms.topic: reference --- diff --git a/docs/reference/cli-reference/cli-ref-install.md b/docs/reference/cli-reference/cli-ref-install.md index 49e789042..e0b88655b 100644 --- a/docs/reference/cli-reference/cli-ref-install.md +++ b/docs/reference/cli-reference/cli-ref-install.md @@ -1,8 +1,8 @@ --- title: NuGet CLI install command description: Reference for the nuget.exe install command -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/18/2018 ms.topic: reference --- diff --git a/docs/reference/cli-reference/cli-ref-list.md b/docs/reference/cli-reference/cli-ref-list.md index 895a184e4..b2171fa5f 100644 --- a/docs/reference/cli-reference/cli-ref-list.md +++ b/docs/reference/cli-reference/cli-ref-list.md @@ -1,8 +1,8 @@ --- title: NuGet CLI list command description: Reference for the nuget.exe list command -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/18/2018 ms.topic: reference --- diff --git a/docs/reference/cli-reference/cli-ref-locals.md b/docs/reference/cli-reference/cli-ref-locals.md index 0c80f73fc..7baac4cea 100644 --- a/docs/reference/cli-reference/cli-ref-locals.md +++ b/docs/reference/cli-reference/cli-ref-locals.md @@ -1,8 +1,8 @@ --- title: NuGet CLI locals command description: Reference for the nuget.exe locals command -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 03/19/2018 ms.topic: reference --- diff --git a/docs/reference/cli-reference/cli-ref-mirror.md b/docs/reference/cli-reference/cli-ref-mirror.md index f8fa82242..6ee95cdc0 100644 --- a/docs/reference/cli-reference/cli-ref-mirror.md +++ b/docs/reference/cli-reference/cli-ref-mirror.md @@ -1,8 +1,8 @@ --- title: NuGet CLI mirror command description: Reference for the nuget.exe mirror command -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/18/2018 ms.topic: reference --- diff --git a/docs/reference/cli-reference/cli-ref-pack.md b/docs/reference/cli-reference/cli-ref-pack.md index a9298fa77..2679a0091 100644 --- a/docs/reference/cli-reference/cli-ref-pack.md +++ b/docs/reference/cli-reference/cli-ref-pack.md @@ -1,8 +1,8 @@ --- title: NuGet CLI pack command description: Reference for the nuget.exe pack command -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/18/2018 ms.topic: reference --- diff --git a/docs/reference/cli-reference/cli-ref-push.md b/docs/reference/cli-reference/cli-ref-push.md index ade9ddf00..769566f9d 100644 --- a/docs/reference/cli-reference/cli-ref-push.md +++ b/docs/reference/cli-reference/cli-ref-push.md @@ -1,8 +1,8 @@ --- title: NuGet CLI push command description: Reference for the nuget.exe push command -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/18/2018 ms.topic: reference --- diff --git a/docs/reference/cli-reference/cli-ref-restore.md b/docs/reference/cli-reference/cli-ref-restore.md index 7c2772f0e..bf62e4da3 100644 --- a/docs/reference/cli-reference/cli-ref-restore.md +++ b/docs/reference/cli-reference/cli-ref-restore.md @@ -1,8 +1,8 @@ --- title: NuGet CLI restore command description: Reference for the nuget.exe restore command -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/18/2018 ms.topic: reference --- diff --git a/docs/reference/cli-reference/cli-ref-setapikey.md b/docs/reference/cli-reference/cli-ref-setapikey.md index 289223244..d074f968c 100644 --- a/docs/reference/cli-reference/cli-ref-setapikey.md +++ b/docs/reference/cli-reference/cli-ref-setapikey.md @@ -1,8 +1,8 @@ --- title: NuGet CLI setapikey command description: Reference for the nuget.exe setapikey command -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/18/2018 ms.topic: reference --- diff --git a/docs/reference/cli-reference/cli-ref-sources.md b/docs/reference/cli-reference/cli-ref-sources.md index d2e715bc0..7f1f5b9d6 100644 --- a/docs/reference/cli-reference/cli-ref-sources.md +++ b/docs/reference/cli-reference/cli-ref-sources.md @@ -1,8 +1,8 @@ --- title: NuGet CLI sources command description: Reference for the nuget.exe sources command -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/18/2018 ms.topic: reference --- diff --git a/docs/reference/cli-reference/cli-ref-spec.md b/docs/reference/cli-reference/cli-ref-spec.md index d41085ad5..04e206701 100644 --- a/docs/reference/cli-reference/cli-ref-spec.md +++ b/docs/reference/cli-reference/cli-ref-spec.md @@ -1,8 +1,8 @@ --- title: NuGet CLI spec command description: Reference for the nuget.exe spec command -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/18/2018 ms.topic: reference --- diff --git a/docs/reference/cli-reference/cli-ref-update.md b/docs/reference/cli-reference/cli-ref-update.md index c49c19c82..0b28f30b8 100644 --- a/docs/reference/cli-reference/cli-ref-update.md +++ b/docs/reference/cli-reference/cli-ref-update.md @@ -1,8 +1,8 @@ --- title: NuGet CLI update command description: Reference for the nuget.exe update command -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 12/07/2017 ms.topic: reference --- diff --git a/docs/reference/dotnet-Commands.md b/docs/reference/dotnet-Commands.md index baf33240d..5b7f59b9f 100644 --- a/docs/reference/dotnet-Commands.md +++ b/docs/reference/dotnet-Commands.md @@ -1,8 +1,8 @@ --- title: dotnet CLI NuGet commands description: A short reference for NuGet-related commands using the dotnet command-line interface. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 06/24/2019 ms.topic: conceptual --- diff --git a/docs/reference/errors-and-warnings/NU3000.md b/docs/reference/errors-and-warnings/NU3000.md index d3c68799e..d71cd9e7e 100644 --- a/docs/reference/errors-and-warnings/NU3000.md +++ b/docs/reference/errors-and-warnings/NU3000.md @@ -2,7 +2,7 @@ title: NuGet Warning NU3000 description: NU3000 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/16/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU3001.md b/docs/reference/errors-and-warnings/NU3001.md index fe8d6c6dd..424ec1100 100644 --- a/docs/reference/errors-and-warnings/NU3001.md +++ b/docs/reference/errors-and-warnings/NU3001.md @@ -2,7 +2,7 @@ title: NuGet Error NU3001 description: NU3001 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/16/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU3002.md b/docs/reference/errors-and-warnings/NU3002.md index 2d2cc9a8c..abd57086b 100644 --- a/docs/reference/errors-and-warnings/NU3002.md +++ b/docs/reference/errors-and-warnings/NU3002.md @@ -2,7 +2,7 @@ title: NuGet Warning NU3002 description: NU3002 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/16/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU3003.md b/docs/reference/errors-and-warnings/NU3003.md index 8f890bbd1..32d509f14 100644 --- a/docs/reference/errors-and-warnings/NU3003.md +++ b/docs/reference/errors-and-warnings/NU3003.md @@ -2,7 +2,7 @@ title: NuGet Warning NU3003 description: NU3003 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/16/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU3004.md b/docs/reference/errors-and-warnings/NU3004.md index 987243df2..17a2de4f6 100644 --- a/docs/reference/errors-and-warnings/NU3004.md +++ b/docs/reference/errors-and-warnings/NU3004.md @@ -2,7 +2,7 @@ title: NuGet Error NU3004 description: NU3004 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/16/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU3005.md b/docs/reference/errors-and-warnings/NU3005.md index 0814854bc..4fee4e186 100644 --- a/docs/reference/errors-and-warnings/NU3005.md +++ b/docs/reference/errors-and-warnings/NU3005.md @@ -2,7 +2,7 @@ title: NuGet Error NU3005 description: NU3005 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/16/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU3006.md b/docs/reference/errors-and-warnings/NU3006.md index 549f938e2..08533cb4b 100644 --- a/docs/reference/errors-and-warnings/NU3006.md +++ b/docs/reference/errors-and-warnings/NU3006.md @@ -2,7 +2,7 @@ title: NuGet Warning NU3006 description: NU3006 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/16/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU3007.md b/docs/reference/errors-and-warnings/NU3007.md index 9ad06dcb0..b6972611e 100644 --- a/docs/reference/errors-and-warnings/NU3007.md +++ b/docs/reference/errors-and-warnings/NU3007.md @@ -2,7 +2,7 @@ title: NuGet Warning NU3007 description: NU3007 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/16/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU3008.md b/docs/reference/errors-and-warnings/NU3008.md index e9b0aef1a..7e9c5509c 100644 --- a/docs/reference/errors-and-warnings/NU3008.md +++ b/docs/reference/errors-and-warnings/NU3008.md @@ -2,7 +2,7 @@ title: NuGet Error NU3008 description: NU3008 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/16/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU3009.md b/docs/reference/errors-and-warnings/NU3009.md index f8946acc8..e45e9ee5d 100644 --- a/docs/reference/errors-and-warnings/NU3009.md +++ b/docs/reference/errors-and-warnings/NU3009.md @@ -2,7 +2,7 @@ title: NuGet Warning NU3009 description: NU3009 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/16/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU3010.md b/docs/reference/errors-and-warnings/NU3010.md index dd65b30ac..9257129d9 100644 --- a/docs/reference/errors-and-warnings/NU3010.md +++ b/docs/reference/errors-and-warnings/NU3010.md @@ -2,7 +2,7 @@ title: NuGet Warning NU3010 description: NU3010 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/16/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU3011.md b/docs/reference/errors-and-warnings/NU3011.md index 04edd54b5..ce8f9802d 100644 --- a/docs/reference/errors-and-warnings/NU3011.md +++ b/docs/reference/errors-and-warnings/NU3011.md @@ -2,7 +2,7 @@ title: NuGet Warning NU3011 description: NU3011 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/16/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU3012.md b/docs/reference/errors-and-warnings/NU3012.md index 012147533..fe4853df2 100644 --- a/docs/reference/errors-and-warnings/NU3012.md +++ b/docs/reference/errors-and-warnings/NU3012.md @@ -2,7 +2,7 @@ title: NuGet Error NU3012 description: NU3012 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/16/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU3013.md b/docs/reference/errors-and-warnings/NU3013.md index d55b23d5a..e8180bd75 100644 --- a/docs/reference/errors-and-warnings/NU3013.md +++ b/docs/reference/errors-and-warnings/NU3013.md @@ -2,7 +2,7 @@ title: NuGet Warning NU3013 description: NU3013 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/16/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU3014.md b/docs/reference/errors-and-warnings/NU3014.md index c78a85b55..db7748cc5 100644 --- a/docs/reference/errors-and-warnings/NU3014.md +++ b/docs/reference/errors-and-warnings/NU3014.md @@ -2,7 +2,7 @@ title: NuGet Warning NU3014 description: NU3014 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/16/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU3015.md b/docs/reference/errors-and-warnings/NU3015.md index 1140ef448..8443439e8 100644 --- a/docs/reference/errors-and-warnings/NU3015.md +++ b/docs/reference/errors-and-warnings/NU3015.md @@ -2,7 +2,7 @@ title: NuGet Warning NU3015 description: NU3015 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/16/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU3016.md b/docs/reference/errors-and-warnings/NU3016.md index bdff870b4..eb43ec64e 100644 --- a/docs/reference/errors-and-warnings/NU3016.md +++ b/docs/reference/errors-and-warnings/NU3016.md @@ -2,7 +2,7 @@ title: NuGet Warning NU3016 description: NU3016 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/16/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU3017.md b/docs/reference/errors-and-warnings/NU3017.md index 27fc08146..8a7a038f4 100644 --- a/docs/reference/errors-and-warnings/NU3017.md +++ b/docs/reference/errors-and-warnings/NU3017.md @@ -2,7 +2,7 @@ title: NuGet Warning NU3017 description: NU3017 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/16/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU3018.md b/docs/reference/errors-and-warnings/NU3018.md index 34f762752..0cd85ffee 100644 --- a/docs/reference/errors-and-warnings/NU3018.md +++ b/docs/reference/errors-and-warnings/NU3018.md @@ -2,7 +2,7 @@ title: NuGet Warning NU3018 description: NU3018 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/16/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU3019.md b/docs/reference/errors-and-warnings/NU3019.md index 74cc8d862..65fbf57ed 100644 --- a/docs/reference/errors-and-warnings/NU3019.md +++ b/docs/reference/errors-and-warnings/NU3019.md @@ -2,7 +2,7 @@ title: NuGet Warning NU3019 description: NU3019 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/16/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU3020.md b/docs/reference/errors-and-warnings/NU3020.md index 73476d09e..a4755a354 100644 --- a/docs/reference/errors-and-warnings/NU3020.md +++ b/docs/reference/errors-and-warnings/NU3020.md @@ -2,7 +2,7 @@ title: NuGet Warning NU3020 description: NU3020 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/16/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU3021.md b/docs/reference/errors-and-warnings/NU3021.md index e38cead3b..f528760a0 100644 --- a/docs/reference/errors-and-warnings/NU3021.md +++ b/docs/reference/errors-and-warnings/NU3021.md @@ -2,7 +2,7 @@ title: NuGet Warning NU3021 description: NU3021 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/16/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU3022.md b/docs/reference/errors-and-warnings/NU3022.md index ebf597d2c..73a97fa03 100644 --- a/docs/reference/errors-and-warnings/NU3022.md +++ b/docs/reference/errors-and-warnings/NU3022.md @@ -2,7 +2,7 @@ title: NuGet Warning NU3022 description: NU3022 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/16/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU3023.md b/docs/reference/errors-and-warnings/NU3023.md index a68b07867..8e815be5f 100644 --- a/docs/reference/errors-and-warnings/NU3023.md +++ b/docs/reference/errors-and-warnings/NU3023.md @@ -2,7 +2,7 @@ title: NuGet Warning NU3023 description: NU3023 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/16/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU3025.md b/docs/reference/errors-and-warnings/NU3025.md index fa58d32a4..f80ff68b3 100644 --- a/docs/reference/errors-and-warnings/NU3025.md +++ b/docs/reference/errors-and-warnings/NU3025.md @@ -2,7 +2,7 @@ title: NuGet Warning NU3025 description: NU3025 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/16/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU3027.md b/docs/reference/errors-and-warnings/NU3027.md index 2f19d17cb..4a0316d6e 100644 --- a/docs/reference/errors-and-warnings/NU3027.md +++ b/docs/reference/errors-and-warnings/NU3027.md @@ -2,7 +2,7 @@ title: NuGet Warning NU3027 description: NU3027 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/16/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5000.md b/docs/reference/errors-and-warnings/NU5000.md index 2d2dfa289..738ed464b 100644 --- a/docs/reference/errors-and-warnings/NU5000.md +++ b/docs/reference/errors-and-warnings/NU5000.md @@ -2,7 +2,7 @@ title: NuGet Error NU5000 description: NU5000 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/3/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5001.md b/docs/reference/errors-and-warnings/NU5001.md index b601f4c82..101d6682f 100644 --- a/docs/reference/errors-and-warnings/NU5001.md +++ b/docs/reference/errors-and-warnings/NU5001.md @@ -2,7 +2,7 @@ title: NuGet Error NU5001 description: NU5001 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/14/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5002.md b/docs/reference/errors-and-warnings/NU5002.md index 87581f8f6..556e0aae8 100644 --- a/docs/reference/errors-and-warnings/NU5002.md +++ b/docs/reference/errors-and-warnings/NU5002.md @@ -2,7 +2,7 @@ title: NuGet Error NU5002 description: NU5002 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/3/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5003.md b/docs/reference/errors-and-warnings/NU5003.md index f25dc137c..83e5e5c44 100644 --- a/docs/reference/errors-and-warnings/NU5003.md +++ b/docs/reference/errors-and-warnings/NU5003.md @@ -2,7 +2,7 @@ title: NuGet Error NU5003 description: NU5003 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/14/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5004.md b/docs/reference/errors-and-warnings/NU5004.md index 888ab115e..70d0121ac 100644 --- a/docs/reference/errors-and-warnings/NU5004.md +++ b/docs/reference/errors-and-warnings/NU5004.md @@ -2,7 +2,7 @@ title: NuGet Error NU5004 description: NU5004 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/14/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5005.md b/docs/reference/errors-and-warnings/NU5005.md index a678000d2..6506a3777 100644 --- a/docs/reference/errors-and-warnings/NU5005.md +++ b/docs/reference/errors-and-warnings/NU5005.md @@ -2,7 +2,7 @@ title: NuGet Error NU5005 description: NU5005 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/14/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5007.md b/docs/reference/errors-and-warnings/NU5007.md index bde655b85..203389722 100644 --- a/docs/reference/errors-and-warnings/NU5007.md +++ b/docs/reference/errors-and-warnings/NU5007.md @@ -2,7 +2,7 @@ title: NuGet Error NU5007 description: NU5007 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/14/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5008.md b/docs/reference/errors-and-warnings/NU5008.md index a59290e49..d013cdb86 100644 --- a/docs/reference/errors-and-warnings/NU5008.md +++ b/docs/reference/errors-and-warnings/NU5008.md @@ -2,7 +2,7 @@ title: NuGet Error NU5008 description: NU5008 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/14/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5009.md b/docs/reference/errors-and-warnings/NU5009.md index bb88502a2..3da5c1008 100644 --- a/docs/reference/errors-and-warnings/NU5009.md +++ b/docs/reference/errors-and-warnings/NU5009.md @@ -2,7 +2,7 @@ title: NuGet Error NU5009 description: NU5009 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/3/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5010.md b/docs/reference/errors-and-warnings/NU5010.md index 27f805fb5..4d94bf141 100644 --- a/docs/reference/errors-and-warnings/NU5010.md +++ b/docs/reference/errors-and-warnings/NU5010.md @@ -2,7 +2,7 @@ title: NuGet Error NU5010 description: NU5010 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/3/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5011.md b/docs/reference/errors-and-warnings/NU5011.md index a1a5d9d7a..87469ed52 100644 --- a/docs/reference/errors-and-warnings/NU5011.md +++ b/docs/reference/errors-and-warnings/NU5011.md @@ -2,7 +2,7 @@ title: NuGet Error NU5011 description: NU5011 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/3/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5012.md b/docs/reference/errors-and-warnings/NU5012.md index d8f2379db..4e46b3aa1 100644 --- a/docs/reference/errors-and-warnings/NU5012.md +++ b/docs/reference/errors-and-warnings/NU5012.md @@ -2,7 +2,7 @@ title: NuGet Error NU5012 description: NU5012 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/14/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5013.md b/docs/reference/errors-and-warnings/NU5013.md index 897ef33a4..e1c551b00 100644 --- a/docs/reference/errors-and-warnings/NU5013.md +++ b/docs/reference/errors-and-warnings/NU5013.md @@ -2,7 +2,7 @@ title: NuGet Error NU5013 description: NU5013 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/3/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5014.md b/docs/reference/errors-and-warnings/NU5014.md index 498163c4b..da935113f 100644 --- a/docs/reference/errors-and-warnings/NU5014.md +++ b/docs/reference/errors-and-warnings/NU5014.md @@ -2,7 +2,7 @@ title: NuGet Error NU5014 description: NU5014 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/3/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5015.md b/docs/reference/errors-and-warnings/NU5015.md index 35e8013a2..34ddf8367 100644 --- a/docs/reference/errors-and-warnings/NU5015.md +++ b/docs/reference/errors-and-warnings/NU5015.md @@ -2,7 +2,7 @@ title: NuGet Error NU5015 description: NU5015 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/3/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5016.md b/docs/reference/errors-and-warnings/NU5016.md index c1ce1a3e6..74c14cc5c 100644 --- a/docs/reference/errors-and-warnings/NU5016.md +++ b/docs/reference/errors-and-warnings/NU5016.md @@ -2,7 +2,7 @@ title: NuGet Error NU5016 description: NU5016 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/3/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5017.md b/docs/reference/errors-and-warnings/NU5017.md index dc3b06f97..ffda1be4e 100644 --- a/docs/reference/errors-and-warnings/NU5017.md +++ b/docs/reference/errors-and-warnings/NU5017.md @@ -2,7 +2,7 @@ title: NuGet Error NU5017 description: NU5017 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/3/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5018.md b/docs/reference/errors-and-warnings/NU5018.md index 6f4109482..44b50fcc9 100644 --- a/docs/reference/errors-and-warnings/NU5018.md +++ b/docs/reference/errors-and-warnings/NU5018.md @@ -2,7 +2,7 @@ title: NuGet Error NU5018 description: NU5018 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/3/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5019.md b/docs/reference/errors-and-warnings/NU5019.md index 69e0a6138..165772bf3 100644 --- a/docs/reference/errors-and-warnings/NU5019.md +++ b/docs/reference/errors-and-warnings/NU5019.md @@ -2,7 +2,7 @@ title: NuGet Error NU5019 description: NU5019 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/3/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5020.md b/docs/reference/errors-and-warnings/NU5020.md index 3a520d84e..b6c771748 100644 --- a/docs/reference/errors-and-warnings/NU5020.md +++ b/docs/reference/errors-and-warnings/NU5020.md @@ -2,7 +2,7 @@ title: NuGet Error NU5020 description: NU5020 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/14/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5021.md b/docs/reference/errors-and-warnings/NU5021.md index fcf414f21..d89e38f1c 100644 --- a/docs/reference/errors-and-warnings/NU5021.md +++ b/docs/reference/errors-and-warnings/NU5021.md @@ -2,7 +2,7 @@ title: NuGet Error NU5021 description: NU5021 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/14/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5022.md b/docs/reference/errors-and-warnings/NU5022.md index 0cb36ee7a..370c50b8e 100644 --- a/docs/reference/errors-and-warnings/NU5022.md +++ b/docs/reference/errors-and-warnings/NU5022.md @@ -2,7 +2,7 @@ title: NuGet Error NU5022 description: NU5022 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/8/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5023.md b/docs/reference/errors-and-warnings/NU5023.md index d951d7c2b..f88252691 100644 --- a/docs/reference/errors-and-warnings/NU5023.md +++ b/docs/reference/errors-and-warnings/NU5023.md @@ -2,7 +2,7 @@ title: NuGet Error NU5023 description: NU5023 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/8/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5024.md b/docs/reference/errors-and-warnings/NU5024.md index 5ec378dbe..c542ab37a 100644 --- a/docs/reference/errors-and-warnings/NU5024.md +++ b/docs/reference/errors-and-warnings/NU5024.md @@ -2,7 +2,7 @@ title: NuGet Error NU5024 description: NU5024 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/14/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5025.md b/docs/reference/errors-and-warnings/NU5025.md index 8feacb2b3..e041791ea 100644 --- a/docs/reference/errors-and-warnings/NU5025.md +++ b/docs/reference/errors-and-warnings/NU5025.md @@ -2,7 +2,7 @@ title: NuGet Error NU5025 description: NU5025 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/8/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5026.md b/docs/reference/errors-and-warnings/NU5026.md index 6b207d54e..56e330034 100644 --- a/docs/reference/errors-and-warnings/NU5026.md +++ b/docs/reference/errors-and-warnings/NU5026.md @@ -2,7 +2,7 @@ title: NuGet Error NU5026 description: NU5026 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/3/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5027.md b/docs/reference/errors-and-warnings/NU5027.md index c859518c3..e5261eeb7 100644 --- a/docs/reference/errors-and-warnings/NU5027.md +++ b/docs/reference/errors-and-warnings/NU5027.md @@ -2,7 +2,7 @@ title: NuGet Error NU5027 description: NU5027 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/8/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5028.md b/docs/reference/errors-and-warnings/NU5028.md index 49cfe2bf8..12c7ad06f 100644 --- a/docs/reference/errors-and-warnings/NU5028.md +++ b/docs/reference/errors-and-warnings/NU5028.md @@ -2,7 +2,7 @@ title: NuGet Error NU5028 description: NU5028 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/8/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5029.md b/docs/reference/errors-and-warnings/NU5029.md index 3241cf882..f6e5ff460 100644 --- a/docs/reference/errors-and-warnings/NU5029.md +++ b/docs/reference/errors-and-warnings/NU5029.md @@ -2,7 +2,7 @@ title: NuGet Error NU5029 description: NU5029 Error code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/8/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5036.md b/docs/reference/errors-and-warnings/NU5036.md index 405c7a57f..0859655d4 100644 --- a/docs/reference/errors-and-warnings/NU5036.md +++ b/docs/reference/errors-and-warnings/NU5036.md @@ -2,7 +2,7 @@ title: NuGet Error NU5036 description: NU5036 Error code author: rrelyea -ms.author: karann +ms.author: jodou ms.date: 8/8/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5100.md b/docs/reference/errors-and-warnings/NU5100.md index cd9185e7b..8ae38a462 100644 --- a/docs/reference/errors-and-warnings/NU5100.md +++ b/docs/reference/errors-and-warnings/NU5100.md @@ -2,7 +2,7 @@ title: NuGet Warning NU5100 description: NU5100 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/3/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5101.md b/docs/reference/errors-and-warnings/NU5101.md index f802320a1..9a20f02fb 100644 --- a/docs/reference/errors-and-warnings/NU5101.md +++ b/docs/reference/errors-and-warnings/NU5101.md @@ -2,7 +2,7 @@ title: NuGet Warning NU5101 description: NU5101 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/14/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5102.md b/docs/reference/errors-and-warnings/NU5102.md index 679baadc9..25cf64e5e 100644 --- a/docs/reference/errors-and-warnings/NU5102.md +++ b/docs/reference/errors-and-warnings/NU5102.md @@ -2,7 +2,7 @@ title: NuGet Warning NU5102 description: NU5102 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/8/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5103.md b/docs/reference/errors-and-warnings/NU5103.md index 3e6a6ef48..9f94a4c60 100644 --- a/docs/reference/errors-and-warnings/NU5103.md +++ b/docs/reference/errors-and-warnings/NU5103.md @@ -2,7 +2,7 @@ title: NuGet Warning NU5103 description: NU5103 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/8/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5104.md b/docs/reference/errors-and-warnings/NU5104.md index b374c1fc9..860b0d909 100644 --- a/docs/reference/errors-and-warnings/NU5104.md +++ b/docs/reference/errors-and-warnings/NU5104.md @@ -2,7 +2,7 @@ title: NuGet Warning NU5104 description: NU5104 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/8/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5105.md b/docs/reference/errors-and-warnings/NU5105.md index d209f2b2c..4c278c447 100644 --- a/docs/reference/errors-and-warnings/NU5105.md +++ b/docs/reference/errors-and-warnings/NU5105.md @@ -2,7 +2,7 @@ title: NuGet Warning NU5105 description: NU5105 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/8/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5106.md b/docs/reference/errors-and-warnings/NU5106.md index b4f7ec336..52524a311 100644 --- a/docs/reference/errors-and-warnings/NU5106.md +++ b/docs/reference/errors-and-warnings/NU5106.md @@ -2,7 +2,7 @@ title: NuGet Warning NU5106 description: NU5106 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/14/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5107.md b/docs/reference/errors-and-warnings/NU5107.md index a431df062..595d1ace8 100644 --- a/docs/reference/errors-and-warnings/NU5107.md +++ b/docs/reference/errors-and-warnings/NU5107.md @@ -2,7 +2,7 @@ title: NuGet Warning NU5107 description: NU5107 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/14/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5108.md b/docs/reference/errors-and-warnings/NU5108.md index 117581e97..dd7774181 100644 --- a/docs/reference/errors-and-warnings/NU5108.md +++ b/docs/reference/errors-and-warnings/NU5108.md @@ -2,7 +2,7 @@ title: NuGet Warning NU5108 description: NU5108 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/14/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5109.md b/docs/reference/errors-and-warnings/NU5109.md index 4938d5d74..26ff11cc8 100644 --- a/docs/reference/errors-and-warnings/NU5109.md +++ b/docs/reference/errors-and-warnings/NU5109.md @@ -2,7 +2,7 @@ title: NuGet Warning NU5109 description: NU5109 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/14/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5110.md b/docs/reference/errors-and-warnings/NU5110.md index 7f4c635b8..fe9b4a099 100644 --- a/docs/reference/errors-and-warnings/NU5110.md +++ b/docs/reference/errors-and-warnings/NU5110.md @@ -2,7 +2,7 @@ title: NuGet Warning NU5110 description: NU5110 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/14/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5111.md b/docs/reference/errors-and-warnings/NU5111.md index d2bb3c732..962d82d3d 100644 --- a/docs/reference/errors-and-warnings/NU5111.md +++ b/docs/reference/errors-and-warnings/NU5111.md @@ -2,7 +2,7 @@ title: NuGet Warning NU5111 description: NU5111 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/14/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5112.md b/docs/reference/errors-and-warnings/NU5112.md index 7b48f4217..192844f22 100644 --- a/docs/reference/errors-and-warnings/NU5112.md +++ b/docs/reference/errors-and-warnings/NU5112.md @@ -2,7 +2,7 @@ title: NuGet Warning NU5112 description: NU5112 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/14/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5114.md b/docs/reference/errors-and-warnings/NU5114.md index 4bda02de6..a2dfc2236 100644 --- a/docs/reference/errors-and-warnings/NU5114.md +++ b/docs/reference/errors-and-warnings/NU5114.md @@ -2,7 +2,7 @@ title: NuGet Warning NU5114 description: NU5114 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/14/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5115.md b/docs/reference/errors-and-warnings/NU5115.md index 7fee74c19..6003c84a0 100644 --- a/docs/reference/errors-and-warnings/NU5115.md +++ b/docs/reference/errors-and-warnings/NU5115.md @@ -2,7 +2,7 @@ title: NuGet Warning NU5115 description: NU5115 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/3/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5116.md b/docs/reference/errors-and-warnings/NU5116.md index c92faef3d..7127aaebe 100644 --- a/docs/reference/errors-and-warnings/NU5116.md +++ b/docs/reference/errors-and-warnings/NU5116.md @@ -2,7 +2,7 @@ title: NuGet Warning NU5116 description: NU5116 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/14/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5117.md b/docs/reference/errors-and-warnings/NU5117.md index d6f59dc04..3d198a771 100644 --- a/docs/reference/errors-and-warnings/NU5117.md +++ b/docs/reference/errors-and-warnings/NU5117.md @@ -2,7 +2,7 @@ title: NuGet Warning NU5117 description: NU5117 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/14/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5118.md b/docs/reference/errors-and-warnings/NU5118.md index 763d47810..a8bf62a31 100644 --- a/docs/reference/errors-and-warnings/NU5118.md +++ b/docs/reference/errors-and-warnings/NU5118.md @@ -2,7 +2,7 @@ title: NuGet Warning NU5118 description: NU5118 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/14/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5119.md b/docs/reference/errors-and-warnings/NU5119.md index 82f997107..f5924c4e5 100644 --- a/docs/reference/errors-and-warnings/NU5119.md +++ b/docs/reference/errors-and-warnings/NU5119.md @@ -2,7 +2,7 @@ title: NuGet Warning NU5119 description: NU5119 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/14/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5120.md b/docs/reference/errors-and-warnings/NU5120.md index cec7abdcb..bd45bd1d7 100644 --- a/docs/reference/errors-and-warnings/NU5120.md +++ b/docs/reference/errors-and-warnings/NU5120.md @@ -2,7 +2,7 @@ title: NuGet Warning NU5120 description: NU5120 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/14/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5121.md b/docs/reference/errors-and-warnings/NU5121.md index 8b6b214ab..31ee44496 100644 --- a/docs/reference/errors-and-warnings/NU5121.md +++ b/docs/reference/errors-and-warnings/NU5121.md @@ -2,7 +2,7 @@ title: NuGet Warning NU5121 description: NU5121 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/14/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5122.md b/docs/reference/errors-and-warnings/NU5122.md index 8dcf071ff..fa928b1fc 100644 --- a/docs/reference/errors-and-warnings/NU5122.md +++ b/docs/reference/errors-and-warnings/NU5122.md @@ -2,7 +2,7 @@ title: NuGet Warning NU5122 description: NU5122 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/14/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5123.md b/docs/reference/errors-and-warnings/NU5123.md index b1886d552..12e75c5fd 100644 --- a/docs/reference/errors-and-warnings/NU5123.md +++ b/docs/reference/errors-and-warnings/NU5123.md @@ -2,7 +2,7 @@ title: NuGet Warning NU5123 description: NU5123 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/14/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5500.md b/docs/reference/errors-and-warnings/NU5500.md index 5c94787c9..70b2b9401 100644 --- a/docs/reference/errors-and-warnings/NU5500.md +++ b/docs/reference/errors-and-warnings/NU5500.md @@ -2,7 +2,7 @@ title: NuGet Warning NU5500 description: NU5500 Warning code author: mishra14 -ms.author: karann +ms.author: jodou ms.date: 8/3/2018 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/extensibility/NuGet-Credential-Providers-for-Visual-Studio.md b/docs/reference/extensibility/NuGet-Credential-Providers-for-Visual-Studio.md index b5864c5a9..c26928c6f 100644 --- a/docs/reference/extensibility/NuGet-Credential-Providers-for-Visual-Studio.md +++ b/docs/reference/extensibility/NuGet-Credential-Providers-for-Visual-Studio.md @@ -1,8 +1,8 @@ --- title: NuGet credential providers for Visual Studio description: NuGet credential providers authenticate with feeds by implementing the IVsCredentialProvider interface in a Visual Studio extension. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/09/2017 ms.topic: conceptual --- diff --git a/docs/reference/extensibility/nuget-exe-Credential-Providers.md b/docs/reference/extensibility/nuget-exe-Credential-Providers.md index 5d334f5c5..67d55ae3b 100644 --- a/docs/reference/extensibility/nuget-exe-Credential-Providers.md +++ b/docs/reference/extensibility/nuget-exe-Credential-Providers.md @@ -1,8 +1,8 @@ --- title: nuget.exe Credential Providers description: nuget.exe credential providers authenticate with a feed, and are implemented as command-line executables that follow specific conventions. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 12/12/2017 ms.topic: conceptual --- diff --git a/docs/reference/nuget-config-file.md b/docs/reference/nuget-config-file.md index 14332ccab..98fe36782 100644 --- a/docs/reference/nuget-config-file.md +++ b/docs/reference/nuget-config-file.md @@ -1,8 +1,8 @@ --- title: nuget.config File Reference description: NuGet.Config file reference including the config, bindingRedirects, packageRestore, solution, and packageSource sections. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 08/13/2019 ms.topic: reference --- diff --git a/docs/reference/nuget-exe-CLI-Reference.md b/docs/reference/nuget-exe-CLI-Reference.md index ee54f7a21..814c72b56 100644 --- a/docs/reference/nuget-exe-CLI-Reference.md +++ b/docs/reference/nuget-exe-CLI-Reference.md @@ -1,8 +1,8 @@ --- title: NuGet Command-Line Interface (CLI) Reference description: Command-line reference index for the nuget.exe CLI -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/23/2018 ms.topic: reference --- diff --git a/docs/reference/nuspec.md b/docs/reference/nuspec.md index f41d63ed1..0149ec269 100644 --- a/docs/reference/nuspec.md +++ b/docs/reference/nuspec.md @@ -1,8 +1,8 @@ --- title: .nuspec File Reference for NuGet description: The .nuspec file contains package metadata used when building a package and to provide information to package consumers. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 05/24/2019 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/reference/packages-config.md b/docs/reference/packages-config.md index 75ef59c4d..0c4a0dd0f 100644 --- a/docs/reference/packages-config.md +++ b/docs/reference/packages-config.md @@ -1,8 +1,8 @@ --- title: NuGet packages.config File Reference description: In some project types, packages.config maintains the list of NuGet packages used in the project. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 05/21/2018 ms.topic: reference --- diff --git a/docs/reference/ps-reference/ps-ref-add-bindingredirect.md b/docs/reference/ps-reference/ps-ref-add-bindingredirect.md index 5e9cafc88..2160e5771 100644 --- a/docs/reference/ps-reference/ps-ref-add-bindingredirect.md +++ b/docs/reference/ps-reference/ps-ref-add-bindingredirect.md @@ -1,8 +1,8 @@ --- title: NuGet Add-BindingRedirect PowerShell Reference description: Reference for Add-BindingRedirect PowerShell command in the NuGet Package Manager Console in Visual Studio. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 12/07/2017 ms.topic: reference --- diff --git a/docs/reference/ps-reference/ps-ref-find-package.md b/docs/reference/ps-reference/ps-ref-find-package.md index 27f2a9958..435d9c782 100644 --- a/docs/reference/ps-reference/ps-ref-find-package.md +++ b/docs/reference/ps-reference/ps-ref-find-package.md @@ -1,8 +1,8 @@ --- title: NuGet Find-Package PowerShell Reference description: Reference for Find-Package PowerShell command in the NuGet Package Manager Console in Visual Studio. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 6/1/2017 ms.topic: reference --- diff --git a/docs/reference/ps-reference/ps-ref-get-package.md b/docs/reference/ps-reference/ps-ref-get-package.md index e49fbc49c..a52def1f4 100644 --- a/docs/reference/ps-reference/ps-ref-get-package.md +++ b/docs/reference/ps-reference/ps-ref-get-package.md @@ -1,8 +1,8 @@ --- title: NuGet Get-Package PowerShell Reference description: Reference for Get-Package PowerShell command in the NuGet Package Manager Console in Visual Studio. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 12/07/2017 ms.topic: reference --- diff --git a/docs/reference/ps-reference/ps-ref-get-project.md b/docs/reference/ps-reference/ps-ref-get-project.md index c828f8cac..5d071be5a 100644 --- a/docs/reference/ps-reference/ps-ref-get-project.md +++ b/docs/reference/ps-reference/ps-ref-get-project.md @@ -1,8 +1,8 @@ --- title: NuGet Get-Project PowerShell Reference description: Reference for GetProject PowerShell command in the NuGet Package Manager Console in Visual Studio. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 12/07/2017 ms.topic: reference --- diff --git a/docs/reference/ps-reference/ps-ref-install-package.md b/docs/reference/ps-reference/ps-ref-install-package.md index ac8eb3953..238e05bb2 100644 --- a/docs/reference/ps-reference/ps-ref-install-package.md +++ b/docs/reference/ps-reference/ps-ref-install-package.md @@ -1,8 +1,8 @@ --- title: NuGet Install-Package PowerShell Reference description: Reference for Install-Package PowerShell command in the NuGet Package Manager Console in Visual Studio. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 06/01/2017 ms.topic: reference --- diff --git a/docs/reference/ps-reference/ps-ref-open-packagepage.md b/docs/reference/ps-reference/ps-ref-open-packagepage.md index 81469c8b6..689de08f6 100644 --- a/docs/reference/ps-reference/ps-ref-open-packagepage.md +++ b/docs/reference/ps-reference/ps-ref-open-packagepage.md @@ -1,8 +1,8 @@ --- title: NuGet Open-PackagePage PowerShell Reference description: Reference for Open-PackagePage PowerShell command in the NuGet Package Manager Console in Visual Studio. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 12/07/2017 ms.topic: reference --- diff --git a/docs/reference/ps-reference/ps-ref-register-tabexpansion.md b/docs/reference/ps-reference/ps-ref-register-tabexpansion.md index 641fc197e..e92e7323c 100644 --- a/docs/reference/ps-reference/ps-ref-register-tabexpansion.md +++ b/docs/reference/ps-reference/ps-ref-register-tabexpansion.md @@ -1,8 +1,8 @@ --- title: NuGet Register-TabExpansion PowerShell Reference description: Reference for Register-TabExpansion PowerShell command in the NuGet Package Manager Console in Visual Studio. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 12/07/2017 ms.topic: reference --- diff --git a/docs/reference/ps-reference/ps-ref-sync-package.md b/docs/reference/ps-reference/ps-ref-sync-package.md index 2297e0cd9..b9a46e6c9 100644 --- a/docs/reference/ps-reference/ps-ref-sync-package.md +++ b/docs/reference/ps-reference/ps-ref-sync-package.md @@ -1,8 +1,8 @@ --- title: NuGet Sync-Package PowerShell Reference description: Reference for Sync-Package PowerShell command in the NuGet Package Manager Console in Visual Studio. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 12/07/2017 ms.topic: reference --- diff --git a/docs/reference/ps-reference/ps-ref-uninstall-package.md b/docs/reference/ps-reference/ps-ref-uninstall-package.md index d82637602..86eed0f01 100644 --- a/docs/reference/ps-reference/ps-ref-uninstall-package.md +++ b/docs/reference/ps-reference/ps-ref-uninstall-package.md @@ -1,8 +1,8 @@ --- title: NuGet Uninstall-Package PowerShell Reference description: Reference for Uninstall-Package PowerShell command in the NuGet Package Manager Console in Visual Studio. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 06/01/2017 ms.topic: reference --- diff --git a/docs/reference/ps-reference/ps-ref-update-package.md b/docs/reference/ps-reference/ps-ref-update-package.md index 1c10d00e2..b8af43043 100644 --- a/docs/reference/ps-reference/ps-ref-update-package.md +++ b/docs/reference/ps-reference/ps-ref-update-package.md @@ -1,8 +1,8 @@ --- title: NuGet Update-Package PowerShell Reference description: Reference for Update-Package PowerShell command in the NuGet Package Manager Console in Visual Studio. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 12/07/2017 ms.topic: reference --- diff --git a/docs/reference/target-frameworks.md b/docs/reference/target-frameworks.md index 181cf4060..06a8ede6e 100644 --- a/docs/reference/target-frameworks.md +++ b/docs/reference/target-frameworks.md @@ -1,8 +1,8 @@ --- title: Target Frameworks Reference for NuGet description: NuGet target framework references identify and isolate framework-dependent components of a package. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 12/11/2017 ms.topic: reference ms.reviewer: anangaur diff --git a/docs/release-notes/Known-Issues.md b/docs/release-notes/Known-Issues.md index e0fd56c8e..5476c5c08 100644 --- a/docs/release-notes/Known-Issues.md +++ b/docs/release-notes/Known-Issues.md @@ -1,8 +1,8 @@ --- title: Known Issues description: Known issues with NuGet including authentication, package installation, and tools. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-1.1.md b/docs/release-notes/NuGet-1.1.md index 9b2365e4c..6d42ca832 100644 --- a/docs/release-notes/NuGet-1.1.md +++ b/docs/release-notes/NuGet-1.1.md @@ -1,8 +1,8 @@ --- title: NuGet 1.0 and 1.1 Release Notes description: Release notes for NuGet 1.1 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-1.2.md b/docs/release-notes/NuGet-1.2.md index 3a7e1db10..6571b9e6e 100644 --- a/docs/release-notes/NuGet-1.2.md +++ b/docs/release-notes/NuGet-1.2.md @@ -1,8 +1,8 @@ --- title: NuGet 1.2 Release Notes description: Release notes for NuGet 1.2 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-1.3.md b/docs/release-notes/NuGet-1.3.md index 169b92816..91072d770 100644 --- a/docs/release-notes/NuGet-1.3.md +++ b/docs/release-notes/NuGet-1.3.md @@ -1,8 +1,8 @@ --- title: NuGet 1.3 Release Notes description: Release notes for NuGet 1.3 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-1.4.md b/docs/release-notes/NuGet-1.4.md index 076b717d7..662af2641 100644 --- a/docs/release-notes/NuGet-1.4.md +++ b/docs/release-notes/NuGet-1.4.md @@ -1,8 +1,8 @@ --- title: NuGet 1.4 Release Notes description: Release notes for NuGet 1.4 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-1.5.md b/docs/release-notes/NuGet-1.5.md index 048df086b..cdff018c2 100644 --- a/docs/release-notes/NuGet-1.5.md +++ b/docs/release-notes/NuGet-1.5.md @@ -1,8 +1,8 @@ --- title: NuGet 1.5 Release Notes description: Release notes for NuGet 1.5 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-1.6.md b/docs/release-notes/NuGet-1.6.md index 57dc183a6..7ccaa4892 100644 --- a/docs/release-notes/NuGet-1.6.md +++ b/docs/release-notes/NuGet-1.6.md @@ -1,8 +1,8 @@ --- title: NuGet 1.6 Release Notes description: Release notes for NuGet 1.6 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-1.7.md b/docs/release-notes/NuGet-1.7.md index 9847b0ede..a4e878be5 100644 --- a/docs/release-notes/NuGet-1.7.md +++ b/docs/release-notes/NuGet-1.7.md @@ -1,8 +1,8 @@ --- title: NuGet 1.7 Release Notes description: Release notes for NuGet 1.7 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-1.8.md b/docs/release-notes/NuGet-1.8.md index a8aaf490b..6895b29d3 100644 --- a/docs/release-notes/NuGet-1.8.md +++ b/docs/release-notes/NuGet-1.8.md @@ -1,8 +1,8 @@ --- title: NuGet 1.8 Release Notes description: Release notes for NuGet 1.8 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-2.0.md b/docs/release-notes/NuGet-2.0.md index 7464e809a..c37a7f8a3 100644 --- a/docs/release-notes/NuGet-2.0.md +++ b/docs/release-notes/NuGet-2.0.md @@ -1,8 +1,8 @@ --- title: NuGet 2.0 Release Notes description: Release notes for NuGet 2.0 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-2.1.md b/docs/release-notes/NuGet-2.1.md index f14c1f563..2727c3ca2 100644 --- a/docs/release-notes/NuGet-2.1.md +++ b/docs/release-notes/NuGet-2.1.md @@ -1,8 +1,8 @@ --- title: NuGet 2.1 Release Notes description: Release notes for NuGet 2.1 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-2.12-RC.md b/docs/release-notes/NuGet-2.12-RC.md index 1bf17f92c..ffd6d73ac 100644 --- a/docs/release-notes/NuGet-2.12-RC.md +++ b/docs/release-notes/NuGet-2.12-RC.md @@ -1,8 +1,8 @@ --- title: NuGet 2.12-RC Release Notes description: Release notes for NuGet 2.12 RC including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-2.12.md b/docs/release-notes/NuGet-2.12.md index 6a28a22e0..eef3d737a 100644 --- a/docs/release-notes/NuGet-2.12.md +++ b/docs/release-notes/NuGet-2.12.md @@ -1,8 +1,8 @@ --- title: NuGet 2.12 Release Notes description: Release notes for NuGet 2.12 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-2.2.1.md b/docs/release-notes/NuGet-2.2.1.md index 58c9a2ca2..776d22001 100644 --- a/docs/release-notes/NuGet-2.2.1.md +++ b/docs/release-notes/NuGet-2.2.1.md @@ -1,8 +1,8 @@ --- title: NuGet 2.2.1 Release Notes description: Release notes for NuGet 2.2.1 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-2.2.md b/docs/release-notes/NuGet-2.2.md index 60b814803..99fd38138 100644 --- a/docs/release-notes/NuGet-2.2.md +++ b/docs/release-notes/NuGet-2.2.md @@ -1,8 +1,8 @@ --- title: NuGet 2.2 Release Notes description: Release notes for NuGet 2.2 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-2.5.md b/docs/release-notes/NuGet-2.5.md index 81f519aee..dcc93aaef 100644 --- a/docs/release-notes/NuGet-2.5.md +++ b/docs/release-notes/NuGet-2.5.md @@ -1,8 +1,8 @@ --- title: NuGet 2.5 Release Notes description: Release notes for NuGet 2.5 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-2.6.1-for-WebMatrix.md b/docs/release-notes/NuGet-2.6.1-for-WebMatrix.md index e47fba975..606b1a7f3 100644 --- a/docs/release-notes/NuGet-2.6.1-for-WebMatrix.md +++ b/docs/release-notes/NuGet-2.6.1-for-WebMatrix.md @@ -1,8 +1,8 @@ --- title: NuGet 2.6.1 for WebMatrix Release Notes description: Release notes for NuGet 2.6.1 for WebMatrix including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-2.6.md b/docs/release-notes/NuGet-2.6.md index 35f426b71..a1e003383 100644 --- a/docs/release-notes/NuGet-2.6.md +++ b/docs/release-notes/NuGet-2.6.md @@ -1,8 +1,8 @@ --- title: NuGet 2.6 Release Notes description: Release notes for NuGet 2.6.1 for WebMatrix including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-2.7.1.md b/docs/release-notes/NuGet-2.7.1.md index aa067c0e2..d12300a97 100644 --- a/docs/release-notes/NuGet-2.7.1.md +++ b/docs/release-notes/NuGet-2.7.1.md @@ -1,8 +1,8 @@ --- title: NuGet 2.7.1 Release Notes description: Release notes for NuGet 2.7.1 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-2.7.2.md b/docs/release-notes/NuGet-2.7.2.md index 38aa3c31f..c82cab279 100644 --- a/docs/release-notes/NuGet-2.7.2.md +++ b/docs/release-notes/NuGet-2.7.2.md @@ -1,8 +1,8 @@ --- title: NuGet 2.7.2 Release Notes description: Release notes for NuGet 2.7.2 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-2.7.md b/docs/release-notes/NuGet-2.7.md index 8ab77029f..a7f84135f 100644 --- a/docs/release-notes/NuGet-2.7.md +++ b/docs/release-notes/NuGet-2.7.md @@ -1,8 +1,8 @@ --- title: NuGet 2.7 Release Notes description: Release notes for NuGet 2.7 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-2.8.1.md b/docs/release-notes/NuGet-2.8.1.md index cf6f48ed6..3c21a451d 100644 --- a/docs/release-notes/NuGet-2.8.1.md +++ b/docs/release-notes/NuGet-2.8.1.md @@ -1,8 +1,8 @@ --- title: NuGet 2.8.1 Release Notes description: Release notes for NuGet 2.8.1 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-2.8.2.md b/docs/release-notes/NuGet-2.8.2.md index 76891517b..2f9ddecaf 100644 --- a/docs/release-notes/NuGet-2.8.2.md +++ b/docs/release-notes/NuGet-2.8.2.md @@ -1,8 +1,8 @@ --- title: NuGet 2.8.2 Release Notes description: Release notes for NuGet 2.8.2 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-2.8.3.md b/docs/release-notes/NuGet-2.8.3.md index 4a091bc3d..b8a55b515 100644 --- a/docs/release-notes/NuGet-2.8.3.md +++ b/docs/release-notes/NuGet-2.8.3.md @@ -1,8 +1,8 @@ --- title: NuGet 2.8.3 Release Notes description: Release notes for NuGet 2.8.3 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-2.8.5.md b/docs/release-notes/NuGet-2.8.5.md index 84a9973cc..d034ac0f3 100644 --- a/docs/release-notes/NuGet-2.8.5.md +++ b/docs/release-notes/NuGet-2.8.5.md @@ -1,8 +1,8 @@ --- title: NuGet 2.8.5 Release Notes description: Release notes for NuGet 2.8.5 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-2.8.6.md b/docs/release-notes/NuGet-2.8.6.md index 9ece694a4..dbe2f5ee2 100644 --- a/docs/release-notes/NuGet-2.8.6.md +++ b/docs/release-notes/NuGet-2.8.6.md @@ -1,8 +1,8 @@ --- title: NuGet 2.8.6 Release Notes description: Release notes for NuGet 2.8.6 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-2.8.7.md b/docs/release-notes/NuGet-2.8.7.md index c1123da94..cb3dde359 100644 --- a/docs/release-notes/NuGet-2.8.7.md +++ b/docs/release-notes/NuGet-2.8.7.md @@ -1,8 +1,8 @@ --- title: NuGet 2.8.7 Release Notes description: Release notes for NuGet 2.8.7 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-2.8.md b/docs/release-notes/NuGet-2.8.md index ca6632837..55e019b88 100644 --- a/docs/release-notes/NuGet-2.8.md +++ b/docs/release-notes/NuGet-2.8.md @@ -1,8 +1,8 @@ --- title: NuGet 2.8 Release Notes description: Release notes for NuGet 2.8 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-2.9-RC.md b/docs/release-notes/NuGet-2.9-RC.md index 27cf95643..8ba73ad39 100644 --- a/docs/release-notes/NuGet-2.9-RC.md +++ b/docs/release-notes/NuGet-2.9-RC.md @@ -1,8 +1,8 @@ --- title: NuGet 2.9-RC Release Notes description: Release notes for NuGet 2.9 RC including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-3.0-Beta.md b/docs/release-notes/NuGet-3.0-Beta.md index 8d6518c4a..7ef229604 100644 --- a/docs/release-notes/NuGet-3.0-Beta.md +++ b/docs/release-notes/NuGet-3.0-Beta.md @@ -1,8 +1,8 @@ --- title: NuGet 3.0 Beta Release Notes description: Release notes for NuGet 3.0 Beta including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-3.0-Preview.md b/docs/release-notes/NuGet-3.0-Preview.md index d96f59375..8966e007d 100644 --- a/docs/release-notes/NuGet-3.0-Preview.md +++ b/docs/release-notes/NuGet-3.0-Preview.md @@ -1,8 +1,8 @@ --- title: NuGet 3.0 Preview Release Notes description: Release notes for NuGet 3.0 Preview including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-3.0-RC.md b/docs/release-notes/NuGet-3.0-RC.md index 676eee3f3..251214c8e 100644 --- a/docs/release-notes/NuGet-3.0-RC.md +++ b/docs/release-notes/NuGet-3.0-RC.md @@ -1,8 +1,8 @@ --- title: NuGet 3.0 RC Release Notes description: Release notes for NuGet 3.0 RC including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-3.0-RC2.md b/docs/release-notes/NuGet-3.0-RC2.md index 7979ab0f1..3f89104a1 100644 --- a/docs/release-notes/NuGet-3.0-RC2.md +++ b/docs/release-notes/NuGet-3.0-RC2.md @@ -1,8 +1,8 @@ --- title: NuGet 3.0 RC2 Release Notes description: Release notes for NuGet 3.0 RC2 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-3.0.0.md b/docs/release-notes/NuGet-3.0.0.md index e90e3ceb0..664e02e3c 100644 --- a/docs/release-notes/NuGet-3.0.0.md +++ b/docs/release-notes/NuGet-3.0.0.md @@ -1,8 +1,8 @@ --- title: NuGet 3.0 Release Notes description: Release notes for NuGet 3.0.0 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-3.1.1.md b/docs/release-notes/NuGet-3.1.1.md index 03c118a2f..3331410e0 100644 --- a/docs/release-notes/NuGet-3.1.1.md +++ b/docs/release-notes/NuGet-3.1.1.md @@ -1,8 +1,8 @@ --- title: NuGet 3.1.1 Release Notes description: Release notes for NuGet 3.1.1 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-3.1.md b/docs/release-notes/NuGet-3.1.md index 4b3d25786..2569a8487 100644 --- a/docs/release-notes/NuGet-3.1.md +++ b/docs/release-notes/NuGet-3.1.md @@ -1,8 +1,8 @@ --- title: NuGet 3.1 Release Notes description: Release notes for NuGet 3.1 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-3.2-RC.md b/docs/release-notes/NuGet-3.2-RC.md index cf774f4f6..5818ef1ca 100644 --- a/docs/release-notes/NuGet-3.2-RC.md +++ b/docs/release-notes/NuGet-3.2-RC.md @@ -1,8 +1,8 @@ --- title: NuGet 3.2 RC Release Notes description: Release notes for NuGet 3.2 RC including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-3.2.1.md b/docs/release-notes/NuGet-3.2.1.md index ec776d496..38d5a4564 100644 --- a/docs/release-notes/NuGet-3.2.1.md +++ b/docs/release-notes/NuGet-3.2.1.md @@ -1,8 +1,8 @@ --- title: NuGet 3.2.1 Release Notes description: Release notes for NuGet 3.2.1 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-3.2.md b/docs/release-notes/NuGet-3.2.md index e26d847fd..4601f808c 100644 --- a/docs/release-notes/NuGet-3.2.md +++ b/docs/release-notes/NuGet-3.2.md @@ -1,8 +1,8 @@ --- title: NuGet 3.2 Release Notes description: Release notes for NuGet 3.2 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-3.3.md b/docs/release-notes/NuGet-3.3.md index b35b1ddf4..c47b4eeff 100644 --- a/docs/release-notes/NuGet-3.3.md +++ b/docs/release-notes/NuGet-3.3.md @@ -1,8 +1,8 @@ --- title: NuGet 3.3 Release Notes description: Release notes for NuGet 3.3 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-3.4-RC.md b/docs/release-notes/NuGet-3.4-RC.md index ae9b9ac6f..de0e9bc03 100644 --- a/docs/release-notes/NuGet-3.4-RC.md +++ b/docs/release-notes/NuGet-3.4-RC.md @@ -1,8 +1,8 @@ --- title: NuGet 3.4-RC Release Notes description: Release notes for NuGet 3.4 RC including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-3.4.1.md b/docs/release-notes/NuGet-3.4.1.md index 1ba5a4081..f7bef3f6f 100644 --- a/docs/release-notes/NuGet-3.4.1.md +++ b/docs/release-notes/NuGet-3.4.1.md @@ -1,8 +1,8 @@ --- title: NuGet 3.4.1 Release Notes description: Release notes for NuGet 3.4.1 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-3.4.2.md b/docs/release-notes/NuGet-3.4.2.md index a87800eb2..f1914888f 100644 --- a/docs/release-notes/NuGet-3.4.2.md +++ b/docs/release-notes/NuGet-3.4.2.md @@ -1,8 +1,8 @@ --- title: NuGet 3.4.2 Release Notes description: Release notes for NuGet 3.4.2 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-3.4.3.md b/docs/release-notes/NuGet-3.4.3.md index c7b83344e..b190f78b9 100644 --- a/docs/release-notes/NuGet-3.4.3.md +++ b/docs/release-notes/NuGet-3.4.3.md @@ -1,8 +1,8 @@ --- title: NuGet 3.4.3 Release Notes description: Release notes for NuGet 3.4.3 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-3.4.4.md b/docs/release-notes/NuGet-3.4.4.md index 33b5a24f8..cd1396dd8 100644 --- a/docs/release-notes/NuGet-3.4.4.md +++ b/docs/release-notes/NuGet-3.4.4.md @@ -1,8 +1,8 @@ --- title: NuGet 3.4.4 Release Notes description: Release notes for NuGet 3.4.4 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-3.4.md b/docs/release-notes/NuGet-3.4.md index 0a4d49f96..13aa7651e 100644 --- a/docs/release-notes/NuGet-3.4.md +++ b/docs/release-notes/NuGet-3.4.md @@ -1,8 +1,8 @@ --- title: NuGet 3.4 Release Notes description: Release notes for NuGet 3.4 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-3.5-Beta.md b/docs/release-notes/NuGet-3.5-Beta.md index bddbcce4e..2a22bf74d 100644 --- a/docs/release-notes/NuGet-3.5-Beta.md +++ b/docs/release-notes/NuGet-3.5-Beta.md @@ -1,8 +1,8 @@ --- title: NuGet 3.5 Beta Release Notes description: Release notes for NuGet 3.5 Beta including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-3.5-Beta2.md b/docs/release-notes/NuGet-3.5-Beta2.md index 431744bb4..23b01454d 100644 --- a/docs/release-notes/NuGet-3.5-Beta2.md +++ b/docs/release-notes/NuGet-3.5-Beta2.md @@ -1,8 +1,8 @@ --- title: 3.5 Beta2 Release Notes description: Release notes for NuGet 3.5 Beta 2 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-3.5-RC.md b/docs/release-notes/NuGet-3.5-RC.md index 1ac24a31c..e7b46f94e 100644 --- a/docs/release-notes/NuGet-3.5-RC.md +++ b/docs/release-notes/NuGet-3.5-RC.md @@ -1,8 +1,8 @@ --- title: 3.5 RC Release Notes description: Release notes for NuGet 3.5 RC including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-3.5-RTM.md b/docs/release-notes/NuGet-3.5-RTM.md index 2520f3a14..30f5c3028 100644 --- a/docs/release-notes/NuGet-3.5-RTM.md +++ b/docs/release-notes/NuGet-3.5-RTM.md @@ -1,8 +1,8 @@ --- title: NuGet 3.5 Beta Release Notes description: Release notes for NuGet 3.5 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/11/2016 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-4.0-RC.md b/docs/release-notes/NuGet-4.0-RC.md index e94b606e7..636894afe 100644 --- a/docs/release-notes/NuGet-4.0-RC.md +++ b/docs/release-notes/NuGet-4.0-RC.md @@ -1,8 +1,8 @@ --- title: NuGet 4.0 RC Release Notes description: Release notes for NuGet 4.0 RC including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 02/03/2017 ms.topic: conceptual ms.reviewer: ananguar diff --git a/docs/release-notes/NuGet-4.3-RTM.md b/docs/release-notes/NuGet-4.3-RTM.md index c2e6887b1..aa9e7702b 100644 --- a/docs/release-notes/NuGet-4.3-RTM.md +++ b/docs/release-notes/NuGet-4.3-RTM.md @@ -1,8 +1,8 @@ --- title: NuGet 4.3 RTM Release Notes description: Release notes for NuGet 4.3 RTM including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 08/14/2017 ms.topic: conceptual ms.reviewer: anangaur diff --git a/docs/release-notes/NuGet-4.4-RTM.md b/docs/release-notes/NuGet-4.4-RTM.md index 5ca141eb5..e0e5c7b5a 100644 --- a/docs/release-notes/NuGet-4.4-RTM.md +++ b/docs/release-notes/NuGet-4.4-RTM.md @@ -1,8 +1,8 @@ --- title: NuGet 4.4 RTM Release Notes description: Release notes for NuGet 4.3 RTM including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 08/14/2017 ms.topic: conceptual ms.reviewer: anangaur diff --git a/docs/release-notes/NuGet-4.7-RTM.md b/docs/release-notes/NuGet-4.7-RTM.md index 5487a9150..4a189d084 100644 --- a/docs/release-notes/NuGet-4.7-RTM.md +++ b/docs/release-notes/NuGet-4.7-RTM.md @@ -1,8 +1,8 @@ --- title: NuGet 4.7 RTM Release Notes description: Release notes for NuGet 4.7.0 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 5/14/2018 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-4.8-RTM.md b/docs/release-notes/NuGet-4.8-RTM.md index f360e6e11..56896037f 100644 --- a/docs/release-notes/NuGet-4.8-RTM.md +++ b/docs/release-notes/NuGet-4.8-RTM.md @@ -1,8 +1,8 @@ --- title: NuGet 4.8 RTM Release Notes description: Release notes for NuGet 4.8.1 including known issues, bug fixes, added features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 5/14/2018 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-4.9-RTM.md b/docs/release-notes/NuGet-4.9-RTM.md index e098443d0..c139a7823 100644 --- a/docs/release-notes/NuGet-4.9-RTM.md +++ b/docs/release-notes/NuGet-4.9-RTM.md @@ -1,8 +1,8 @@ --- title: NuGet 4.9 RTM Release Notes description: Release notes for NuGet 4.9 including known issues, bug fixes, new features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 11/20/2018 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-5.0-RTM.md b/docs/release-notes/NuGet-5.0-RTM.md index 72bfbdc88..cb3cfbd3a 100644 --- a/docs/release-notes/NuGet-5.0-RTM.md +++ b/docs/release-notes/NuGet-5.0-RTM.md @@ -1,8 +1,8 @@ --- title: NuGet 5.0 RTM Release Notes description: Release notes for NuGet 5.0 including known issues, bug fixes, new features, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 04/02/2019 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-5.1-RTM.md b/docs/release-notes/NuGet-5.1-RTM.md index fa8ee4112..b661d0365 100644 --- a/docs/release-notes/NuGet-5.1-RTM.md +++ b/docs/release-notes/NuGet-5.1-RTM.md @@ -1,8 +1,8 @@ --- title: NuGet 5.1 RTM Release Notes description: Release notes for NuGet 5.1 including new features, bug fixes, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 05/21/2019 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-5.2-RTM.md b/docs/release-notes/NuGet-5.2-RTM.md index 74d5dea15..d08c67711 100644 --- a/docs/release-notes/NuGet-5.2-RTM.md +++ b/docs/release-notes/NuGet-5.2-RTM.md @@ -1,8 +1,8 @@ --- title: NuGet 5.2 RTM Release Notes description: Release notes for NuGet 5.2 including new features, bug fixes, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 07/23/2019 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-5.3.md b/docs/release-notes/NuGet-5.3.md index 2cf0e6a54..6bbf19858 100644 --- a/docs/release-notes/NuGet-5.3.md +++ b/docs/release-notes/NuGet-5.3.md @@ -1,8 +1,8 @@ --- title: NuGet 5.3 Release Notes description: Release notes for NuGet 5.3 including new features, bug fixes, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 09/06/2019 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-5.4.md b/docs/release-notes/NuGet-5.4.md index fdb20fe07..ddcd32535 100644 --- a/docs/release-notes/NuGet-5.4.md +++ b/docs/release-notes/NuGet-5.4.md @@ -1,8 +1,8 @@ --- title: NuGet 5.4 Release Notes description: Release notes for NuGet 5.4 including new features, bug fixes, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 09/06/2019 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-5.5.md b/docs/release-notes/NuGet-5.5.md index af88533a6..6bb6cc47f 100644 --- a/docs/release-notes/NuGet-5.5.md +++ b/docs/release-notes/NuGet-5.5.md @@ -1,8 +1,8 @@ --- title: NuGet 5.5 Release Notes description: Release notes for NuGet 5.5 including new features, bug fixes, and DCRs. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 03/19/2020 ms.topic: conceptual --- diff --git a/docs/visual-studio-extensibility/Project-System-Support.md b/docs/visual-studio-extensibility/Project-System-Support.md index 10c8cc15e..b220fdd9a 100644 --- a/docs/visual-studio-extensibility/Project-System-Support.md +++ b/docs/visual-studio-extensibility/Project-System-Support.md @@ -1,8 +1,8 @@ --- title: NuGet Support for the Visual Studio Project System description: Integration of NuGet into the Visual Studio project system for third-party project types. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/09/2017 ms.topic: reference --- diff --git a/docs/visual-studio-extensibility/Visual-Studio-Templates.md b/docs/visual-studio-extensibility/Visual-Studio-Templates.md index 7371506bc..046416985 100644 --- a/docs/visual-studio-extensibility/Visual-Studio-Templates.md +++ b/docs/visual-studio-extensibility/Visual-Studio-Templates.md @@ -1,8 +1,8 @@ --- title: NuGet Packages in Visual Studio templates description: Instructions for including NuGet packages as part of Visual Studio project and item templates. -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 01/03/2018 ms.topic: conceptual --- diff --git a/docs/what-is-nuget.md b/docs/what-is-nuget.md index 622581ab3..bad0e8bc8 100644 --- a/docs/what-is-nuget.md +++ b/docs/what-is-nuget.md @@ -1,8 +1,8 @@ --- title: What is NuGet and what does it do? description: A comprehensive introduction to what NuGet is and does -author: karann-msft -ms.author: karann +author: JonDouglas +ms.author: jodou ms.date: 05/24/2019 ms.topic: overview --- From dc78c9eccb462bd0486ccdaf0fad141096ba3435 Mon Sep 17 00:00:00 2001 From: "Mike Jones (DEVUE)" Date: Thu, 21 Jan 2021 10:44:15 -0800 Subject: [PATCH 247/988] link fixes --- .../create-and-publish-a-package-using-the-dotnet-cli.md | 2 +- docs/quickstart/install-and-use-a-package-in-visual-studio.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md index 9d5f812c9..a56ae04ab 100644 --- a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md +++ b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md @@ -119,7 +119,7 @@ To explore more that NuGet has to offer, select the links below. - [Pre-release Packages](../create-packages/Prerelease-Packages.md) - [Support multiple target frameworks](../create-packages/multiple-target-frameworks-project-file.md) - [Package versioning](../concepts/package-versioning.md) -- [Adding a license expression or file](../reference/msbuild-targets#packing-a-license-expression-or-a-license-file) +- [Adding a license expression or file](../reference/msbuild-targets.md#packing-a-license-expression-or-a-license-file) - [Creating localized packages](../create-packages/creating-localized-packages.md) - [Creating symbol packages](../create-packages/symbol-packages-snupkg.md) - [Signing packages](../create-packages/Sign-a-package.md) diff --git a/docs/quickstart/install-and-use-a-package-in-visual-studio.md b/docs/quickstart/install-and-use-a-package-in-visual-studio.md index 5a830bd68..612549b4f 100644 --- a/docs/quickstart/install-and-use-a-package-in-visual-studio.md +++ b/docs/quickstart/install-and-use-a-package-in-visual-studio.md @@ -9,7 +9,7 @@ ms.topic: quickstart # Quickstart: Install and use a package in Visual Studio (Windows only) -NuGet packages contain reusable code that other developers make available to you for use in your projects. See [What is NuGet?](../What-is-NuGet.md) for background. Packages are installed into a Visual Studio project using the NuGet Package Manager, the [Package Manager Console](../consume-packages/install-use-packages-powershell), or the [dotnet CLI](install-and-use-a-package-using-the-dotnet-cli.md). This article demonstrates the process using the popular [Newtonsoft.Json](https://www.nuget.org/packages/Newtonsoft.Json/) package and a Windows Presentation Foundation (WPF) project. The same process applies to any other .NET or .NET Core project. +NuGet packages contain reusable code that other developers make available to you for use in your projects. See [What is NuGet?](../What-is-NuGet.md) for background. Packages are installed into a Visual Studio project using the NuGet Package Manager, the [Package Manager Console](../consume-packages/install-use-packages-powershell.md), or the [dotnet CLI](install-and-use-a-package-using-the-dotnet-cli.md). This article demonstrates the process using the popular [Newtonsoft.Json](https://www.nuget.org/packages/Newtonsoft.Json/) package and a Windows Presentation Foundation (WPF) project. The same process applies to any other .NET or .NET Core project. Once installed, refer to the package in code with `using ` where \ is specific to the package you're using. Once the reference is made, you can call the package through its API. From 6495c615e58d0b6ec44a0f56040d315bd5842cc6 Mon Sep 17 00:00:00 2001 From: "Mike Jones (DEVUE)" Date: Thu, 21 Jan 2021 11:06:01 -0800 Subject: [PATCH 248/988] fixing a set of build suggestions --- docs/guides/Create-UWP-Packages-CS.md | 2 +- docs/quickstart/install-and-use-a-package-in-visual-studio.md | 2 +- docs/reference/errors-and-warnings/NU1100.md | 2 +- docs/reference/errors-and-warnings/NU1102.md | 2 +- docs/reference/errors-and-warnings/NU1106.md | 2 +- docs/reference/errors-and-warnings/NU1108.md | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/guides/Create-UWP-Packages-CS.md b/docs/guides/Create-UWP-Packages-CS.md index 1cb90780b..24edacd94 100644 --- a/docs/guides/Create-UWP-Packages-CS.md +++ b/docs/guides/Create-UWP-Packages-CS.md @@ -1,5 +1,5 @@ --- -title: Create NuGet Packages for the Universal Windows Platform +title: Create NuGet Packages for the UWP Platform (C#) description: An end-to-end walkthrough of creating NuGet packages using a Windows Runtime Component for the Universal Windows Platform in C#. author: rrelyea ms.author: rrelyea diff --git a/docs/quickstart/install-and-use-a-package-in-visual-studio.md b/docs/quickstart/install-and-use-a-package-in-visual-studio.md index 612549b4f..4a6572204 100644 --- a/docs/quickstart/install-and-use-a-package-in-visual-studio.md +++ b/docs/quickstart/install-and-use-a-package-in-visual-studio.md @@ -62,7 +62,7 @@ To install the package, you can use either the NuGet Package Manager or the Pack 1. Once the console opens, check that the **Default project** drop-down list shows the project into which you want to install the package. If you have a single project in the solution, it is already selected. - ![Locating Newtonsoft.Json package](media/QS_Use-08-Console1.png) + ![Select a project for the package](media/QS_Use-08-Console1.png) 1. Enter the command `Install-Package Newtonsoft.Json` (see [Install-Package](../reference/ps-reference/ps-ref-install-package.md)). The console window shows output for the command. Errors typically indicate that the package isn't compatible with the project's target framework. diff --git a/docs/reference/errors-and-warnings/NU1100.md b/docs/reference/errors-and-warnings/NU1100.md index 90c50fb34..2eab04263 100644 --- a/docs/reference/errors-and-warnings/NU1100.md +++ b/docs/reference/errors-and-warnings/NU1100.md @@ -1,5 +1,5 @@ --- -title: NuGet Error NU1001 +title: NuGet Error NU1100 description: NU1100 error code author: zhili1208 ms.author: lzhi diff --git a/docs/reference/errors-and-warnings/NU1102.md b/docs/reference/errors-and-warnings/NU1102.md index c772fea16..5585c7555 100644 --- a/docs/reference/errors-and-warnings/NU1102.md +++ b/docs/reference/errors-and-warnings/NU1102.md @@ -1,5 +1,5 @@ --- -title: NuGet Errors and Warnings Reference +title: NuGet Error NU1102 description: NU1102 error code author: zhili1208 ms.author: lzhi diff --git a/docs/reference/errors-and-warnings/NU1106.md b/docs/reference/errors-and-warnings/NU1106.md index cc85d27c3..081219020 100644 --- a/docs/reference/errors-and-warnings/NU1106.md +++ b/docs/reference/errors-and-warnings/NU1106.md @@ -1,5 +1,5 @@ --- -title: NuGet Errors and Warnings Reference +title: NuGet Error NU1106 description: NU1106 error code author: zhili1208 ms.author: lzhi diff --git a/docs/reference/errors-and-warnings/NU1108.md b/docs/reference/errors-and-warnings/NU1108.md index 80cb81a7f..b5eb9c862 100644 --- a/docs/reference/errors-and-warnings/NU1108.md +++ b/docs/reference/errors-and-warnings/NU1108.md @@ -1,5 +1,5 @@ --- -title: NuGet Errors and Warnings Reference +title: NuGet Error NU1108 description: NU1108 error code author: zhili1208 ms.author: lzhi From fd5ae642606fd9b373d8051509698b5477041a70 Mon Sep 17 00:00:00 2001 From: "Mike Jones (DEVUE)" Date: Thu, 21 Jan 2021 16:11:00 -0800 Subject: [PATCH 249/988] fixes to suggestions --- docs/create-packages/Symbol-Packages-snupkg.md | 4 ++-- docs/nuget-org/nuget-org-faq.md | 4 +--- docs/reference/cli-reference/cli-ref-search.md | 4 ++-- docs/release-notes/NuGet-3.5-RTM.md | 2 +- docs/release-notes/NuGet-4.0-RTM.md | 2 +- 5 files changed, 7 insertions(+), 9 deletions(-) diff --git a/docs/create-packages/Symbol-Packages-snupkg.md b/docs/create-packages/Symbol-Packages-snupkg.md index f22da8676..df95fa309 100644 --- a/docs/create-packages/Symbol-Packages-snupkg.md +++ b/docs/create-packages/Symbol-Packages-snupkg.md @@ -1,7 +1,7 @@ --- title: How to publish NuGet symbol packages using the new symbol package format '.snupkg'| Microsoft Docs -author: cristinamanu -ms.author: cristinamanu +author: JonDouglas +ms.author: jodou manager: skofman ms.date: 10/30/2018 ms.topic: reference diff --git a/docs/nuget-org/nuget-org-faq.md b/docs/nuget-org/nuget-org-faq.md index 783bacbed..70d4a8878 100644 --- a/docs/nuget-org/nuget-org-faq.md +++ b/docs/nuget-org/nuget-org-faq.md @@ -215,9 +215,7 @@ If, however, your NuGet.org account is not associated/linked with a Microsoft ac If you see an error like below during your login flow with your email account domain(@yourdomain.com), see the steps below to recover your NuGet.org account. -

- -

+![Error during login for AAD accounts](media/unmanaged-aad-tenant.png) **What is this unmanaged state thing during login? And why is this happening now?** diff --git a/docs/reference/cli-reference/cli-ref-search.md b/docs/reference/cli-reference/cli-ref-search.md index 71b4c1c51..a95ea8b35 100644 --- a/docs/reference/cli-reference/cli-ref-search.md +++ b/docs/reference/cli-reference/cli-ref-search.md @@ -1,8 +1,8 @@ --- title: NuGet CLI search command description: Reference for the nuget.exe search command -author: advay26 -ms.author: t-adtand +author: JonDouglas +ms.author: jodou ms.date: 08/17/2020 ms.topic: reference --- diff --git a/docs/release-notes/NuGet-3.5-RTM.md b/docs/release-notes/NuGet-3.5-RTM.md index 30f5c3028..e9a8ca006 100644 --- a/docs/release-notes/NuGet-3.5-RTM.md +++ b/docs/release-notes/NuGet-3.5-RTM.md @@ -1,5 +1,5 @@ --- -title: NuGet 3.5 Beta Release Notes +title: NuGet 3.5 RTM Release Notes description: Release notes for NuGet 3.5 including known issues, bug fixes, added features, and DCRs. author: JonDouglas ms.author: jodou diff --git a/docs/release-notes/NuGet-4.0-RTM.md b/docs/release-notes/NuGet-4.0-RTM.md index eea6e726a..48ae3e641 100644 --- a/docs/release-notes/NuGet-4.0-RTM.md +++ b/docs/release-notes/NuGet-4.0-RTM.md @@ -1,5 +1,5 @@ --- -title: NuGet 4.0 RC Release Notes +title: NuGet 4.0 RTM Release Notes description: Release notes for NuGet 4.0 RTM including known issues, bug fixes, added features, and DCRs. author: anangaur ms.author: anangaur From a8591e780187e688f52dff5987c17cd58c4c553f Mon Sep 17 00:00:00 2001 From: "Mike Jones (DEVUE)" Date: Thu, 21 Jan 2021 16:20:45 -0800 Subject: [PATCH 250/988] a few more fixes --- docs/api/catalog-resource.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/api/catalog-resource.md b/docs/api/catalog-resource.md index b56bc930d..f37c2c174 100644 --- a/docs/api/catalog-resource.md +++ b/docs/api/catalog-resource.md @@ -59,7 +59,7 @@ Catalog items are always added to the catalog in a monotonically increasing, chr The following request fetches the catalog index. - GET {@id} + GET {@id} The catalog index is a JSON document that contains an object with the following properties: @@ -96,7 +96,7 @@ URL. ### Sample request - GET https://api.nuget.org/v3/catalog0/index.json +GET https://api.nuget.org/v3/catalog0/index.json ### Sample response @@ -158,7 +158,7 @@ For more details about what each type means, see the [corresponding items type]( ### Sample request - GET https://api.nuget.org/v3/catalog0/page2926.json +GET https://api.nuget.org/v3/catalog0/page2926.json ### Sample response From 9613b3deaed95bdb51e0b0a2a91e69f66ba1c67e Mon Sep 17 00:00:00 2001 From: "Mike Jones (DEVUE)" Date: Thu, 21 Jan 2021 17:22:55 -0800 Subject: [PATCH 251/988] fixes to suggestions --- docs/api/NuGet-Protocols.md | 6 +- .../Supporting-Multiple-Target-Frameworks.md | 60 +++++++++---------- 2 files changed, 33 insertions(+), 33 deletions(-) diff --git a/docs/api/NuGet-Protocols.md b/docs/api/NuGet-Protocols.md index c64921739..ccd62ad2f 100644 --- a/docs/api/NuGet-Protocols.md +++ b/docs/api/NuGet-Protocols.md @@ -37,7 +37,7 @@ be used to validate that the package belongs to a particular user (account) on n Clients are required to pass the following header when they make API calls to **push** packages to nuget.org: - X-NuGet-Protocol-Version: 4.1.0 + `X-NuGet-Protocol-Version: 4.1.0` Note that the `X-NuGet-Client-Version` header has similar semantics but is reserved to only be used by the official NuGet client. Third party clients should use the `X-NuGet-Protocol-Version` header and value. @@ -52,7 +52,7 @@ If a client interacts with external services and needs to validate whether a pac This API is used to get a verify-scope key for a nuget.org author to validate a package owned by him/her. - POST api/v2/package/create-verification-key/{ID}/{VERSION} + `POST api/v2/package/create-verification-key/{ID}/{VERSION}` #### Request parameters @@ -75,7 +75,7 @@ X-NuGet-ApiKey | Header | string | yes | For example, `X-NuGet-ApiKey: {USE This API is used to validate a verify-scope key for package owned by the nuget.org author. - GET api/v2/verifykey/{ID}/{VERSION} + `GET api/v2/verifykey/{ID}/{VERSION}` #### Request parameters diff --git a/docs/create-packages/Supporting-Multiple-Target-Frameworks.md b/docs/create-packages/Supporting-Multiple-Target-Frameworks.md index c91a9717e..256d02647 100644 --- a/docs/create-packages/Supporting-Multiple-Target-Frameworks.md +++ b/docs/create-packages/Supporting-Multiple-Target-Frameworks.md @@ -27,15 +27,15 @@ You should never have a version of the library that is not specific to a framewo For example, the following folder structure supports four versions of an assembly that are framework-specific: - \lib - \net46 - \MyAssembly.dll - \net461 - \MyAssembly.dll - \uap - \MyAssembly.dll - \netcore - \MyAssembly.dll +\lib + \net46 + \MyAssembly.dll + \net461 + \MyAssembly.dll + \uap + \MyAssembly.dll + \netcore + \MyAssembly.dll To easily include all these files when building the package, use a recursive `**` wildcard in the `` section of your `.nuspec`: @@ -49,16 +49,16 @@ To easily include all these files when building the package, use a recursive `** If you have architecture-specific assemblies, that is, separate assemblies that target ARM, x86, and x64, you must place them in a folder named `runtimes` within sub-folders named `{platform}-{architecture}\lib\{framework}` or `{platform}-{architecture}\native`. For example, the following folder structure would accommodate both native and managed DLLs targeting Windows 10 and the `uap10.0` framework: - \runtimes - \win10-arm - \native - \lib\uap10.0 - \win10-x86 - \native - \lib\uap10.0 - \win10-x64 - \native - \lib\uap10.0 +\runtimes + \win10-arm + \native + \lib\uap10.0 + \win10-x86 + \native + \lib\uap10.0 + \win10-x64 + \native + \lib\uap10.0 These assemblies will only be available at runtime, so if you want to provide the corresponding compile time assembly as well then have `AnyCPU` assembly in `/ref/{tfm}` folder. @@ -76,11 +76,11 @@ If a match is not found, NuGet copies the assembly for the highest version that For example, consider the following folder structure in a package: - \lib - \net45 - \MyAssembly.dll - \net461 - \MyAssembly.dll +\lib + \net45 + \MyAssembly.dll + \net461 + \MyAssembly.dll When installing this package in a project that targets .NET Framework 4.6, NuGet installs the assembly in the `net45` folder, because that's the highest available version that's less than or equal to 4.6. @@ -92,12 +92,12 @@ If the project targets .NET framework 4.0 and earlier, NuGet throws an appropria NuGet copies assemblies from only a single library folder in the package. For example, suppose a package has the following folder structure: - \lib - \net40 - \MyAssembly.dll (v1.0) - \MyAssembly.Core.dll (v1.0) - \net45 - \MyAssembly.dll (v2.0) +\lib + \net40 + \MyAssembly.dll (v1.0) + \MyAssembly.Core.dll (v1.0) + \net45 + \MyAssembly.dll (v2.0) When the package is installed in a project that targets .NET Framework 4.5, `MyAssembly.dll` (v2.0) is the only assembly installed. `MyAssembly.Core.dll` (v1.0) is not installed because it's not listed in the `net45` folder. NuGet behaves this way because `MyAssembly.Core.dll` might have merged into version 2.0 of `MyAssembly.dll`. From eb6525ef3624add430ab2fccb3ca5d2a29d1fd90 Mon Sep 17 00:00:00 2001 From: "Mike Jones (DEVUE)" Date: Thu, 21 Jan 2021 17:50:17 -0800 Subject: [PATCH 252/988] fixed indents --- docs/api/NuGet-Protocols.md | 4 +- docs/api/package-base-address-resource.md | 12 +- docs/api/package-details-template-resource.md | 4 +- docs/api/package-publish-resource.md | 4 +- docs/api/registration-base-url-resource.md | 6 +- docs/api/report-abuse-resource.md | 4 +- docs/api/repository-signatures-resource.md | 2 +- .../search-autocomplete-service-resource.md | 4 +- docs/api/search-query-service-resource.md | 2 +- docs/api/service-index.md | 2 +- docs/api/tools-json.md | 2 +- docs/archive/project-json-and-uwp.md | 120 +++++++++--------- docs/concepts/Package-Versioning.md | 38 +++--- .../Supporting-Multiple-Target-Frameworks.md | 36 +++--- 14 files changed, 120 insertions(+), 120 deletions(-) diff --git a/docs/api/NuGet-Protocols.md b/docs/api/NuGet-Protocols.md index ccd62ad2f..1b75c7f9a 100644 --- a/docs/api/NuGet-Protocols.md +++ b/docs/api/NuGet-Protocols.md @@ -37,7 +37,7 @@ be used to validate that the package belongs to a particular user (account) on n Clients are required to pass the following header when they make API calls to **push** packages to nuget.org: - `X-NuGet-Protocol-Version: 4.1.0` + X-NuGet-Protocol-Version: 4.1.0 Note that the `X-NuGet-Client-Version` header has similar semantics but is reserved to only be used by the official NuGet client. Third party clients should use the `X-NuGet-Protocol-Version` header and value. @@ -75,7 +75,7 @@ X-NuGet-ApiKey | Header | string | yes | For example, `X-NuGet-ApiKey: {USE This API is used to validate a verify-scope key for package owned by the nuget.org author. - `GET api/v2/verifykey/{ID}/{VERSION}` + GET api/v2/verifykey/{ID}/{VERSION} #### Request parameters diff --git a/docs/api/package-base-address-resource.md b/docs/api/package-base-address-resource.md index ee90b7c38..6c70434d7 100644 --- a/docs/api/package-base-address-resource.md +++ b/docs/api/package-base-address-resource.md @@ -43,7 +43,7 @@ listing" for the package content API mentioned below. > [!Note] > This list contains both listed and unlisted package versions. - GET {@id}/{LOWER_ID}/index.json +GET {@id}/{LOWER_ID}/index.json ### Request parameters @@ -74,7 +74,7 @@ in the following endpoints. ### Sample request - GET https://api.nuget.org/v3-flatcontainer/owin/index.json +GET https://api.nuget.org/v3-flatcontainer/owin/index.json ### Sample response @@ -85,7 +85,7 @@ in the following endpoints. If the client knows a package ID and version and wants to download the package content, they only need to construct the following URL: - GET {@id}/{LOWER_ID}/{LOWER_VERSION}/{LOWER_ID}.{LOWER_VERSION}.nupkg +GET {@id}/{LOWER_ID}/{LOWER_VERSION}/{LOWER_ID}.{LOWER_VERSION}.nupkg ### Request parameters @@ -111,7 +111,7 @@ If the package does not exist on the package source, a 404 status code is return ### Sample request - GET https://api.nuget.org/v3-flatcontainer/newtonsoft.json/9.0.1/newtonsoft.json.9.0.1.nupkg +GET https://api.nuget.org/v3-flatcontainer/newtonsoft.json/9.0.1/newtonsoft.json.9.0.1.nupkg ### Sample response @@ -122,7 +122,7 @@ The binary stream that is the .nupkg for Newtonsoft.Json 9.0.1. If the client knows a package ID and version and wants to download the package manifest, they only need to construct the following URL: - GET {@id}/{LOWER_ID}/{LOWER_VERSION}/{LOWER_ID}.nuspec +GET {@id}/{LOWER_ID}/{LOWER_VERSION}/{LOWER_ID}.nuspec ### Request parameters @@ -147,7 +147,7 @@ If the package does not exist on the package source, a 404 status code is return ### Sample request - GET https://api.nuget.org/v3-flatcontainer/newtonsoft.json/6.0.4/newtonsoft.json.nuspec +GET https://api.nuget.org/v3-flatcontainer/newtonsoft.json/6.0.4/newtonsoft.json.nuspec ### Sample response diff --git a/docs/api/package-details-template-resource.md b/docs/api/package-details-template-resource.md index f9d6c9bbc..0e3cbe6c3 100644 --- a/docs/api/package-details-template-resource.md +++ b/docs/api/package-details-template-resource.md @@ -60,9 +60,9 @@ words, the server should accept also accept non-normalized versions. For example, nuget.org's package details template looks like this: - https://www.nuget.org/packages/{id}/{version} +https://www.nuget.org/packages/{id}/{version} If the client implementation needs to display a link to the package details for NuGet.Versioning 4.3.0, it would produce the following URL and provide it to the user: - https://www.nuget.org/packages/NuGet.Versioning/4.3.0 +https://www.nuget.org/packages/NuGet.Versioning/4.3.0 diff --git a/docs/api/package-publish-resource.md b/docs/api/package-publish-resource.md index 1b59da972..7e4ce5d47 100644 --- a/docs/api/package-publish-resource.md +++ b/docs/api/package-publish-resource.md @@ -42,7 +42,7 @@ endpoint, see below. nuget.org supports pushing new packages using the following API. If the package with the provided ID and version already exists, nuget.org will reject the push. Other package sources may support replacing an existing package. - PUT https://www.nuget.org/api/v2/package +PUT https://www.nuget.org/api/v2/package ### Request parameters @@ -109,7 +109,7 @@ HTTP method instead of the `DELETE` method. If the package is already listed, the request still succeeds. - POST https://www.nuget.org/api/v2/package/{ID}/{VERSION} +POST https://www.nuget.org/api/v2/package/{ID}/{VERSION} ### Request parameters diff --git a/docs/api/registration-base-url-resource.md b/docs/api/registration-base-url-resource.md index 98cb58496..ab3a53681 100644 --- a/docs/api/registration-base-url-resource.md +++ b/docs/api/registration-base-url-resource.md @@ -252,7 +252,7 @@ range | object | no | The allowed [version range](../concepts/packa ### Sample request - GET https://api.nuget.org/v3/registration3/nuget.server.core/index.json +GET https://api.nuget.org/v3/registration3/nuget.server.core/index.json ### Sample response @@ -289,7 +289,7 @@ The shape of the registration leaf objects is the same as in the registration in ## Sample request - GET https://api.nuget.org/v3/registration3/ravendb.client/page/1.0.531/1.0.729-unstable.json +GET https://api.nuget.org/v3/registration3/ravendb.client/page/1.0.531/1.0.729-unstable.json ## Sample response @@ -327,7 +327,7 @@ registration | string | no | The URL to the registration index ### Sample request - GET https://api.nuget.org/v3/registration3/nuget.versioning/4.3.0.json +GET https://api.nuget.org/v3/registration3/nuget.versioning/4.3.0.json ### Sample response diff --git a/docs/api/report-abuse-resource.md b/docs/api/report-abuse-resource.md index b058dd0b6..603ba98ac 100644 --- a/docs/api/report-abuse-resource.md +++ b/docs/api/report-abuse-resource.md @@ -57,9 +57,9 @@ whether the version is normalized. For example, nuget.org's report abuse template looks like this: - https://www.nuget.org/packages/{id}/{version}/ReportAbuse +https://www.nuget.org/packages/{id}/{version}/ReportAbuse If the client implementation needs to display a link to the report abuse form for NuGet.Versioning 4.3.0, it would produce the following URL and provide it to the user: - https://www.nuget.org/packages/NuGet.Versioning/4.3.0/ReportAbuse +https://www.nuget.org/packages/NuGet.Versioning/4.3.0/ReportAbuse diff --git a/docs/api/repository-signatures-resource.md b/docs/api/repository-signatures-resource.md index 4edb39e67..c23947a0e 100644 --- a/docs/api/repository-signatures-resource.md +++ b/docs/api/repository-signatures-resource.md @@ -107,7 +107,7 @@ All hash values must be lowercase, hex-encoded string representations of the has ### Sample request - GET https://api.nuget.org/v3-index/repository-signatures/index.json +GET https://api.nuget.org/v3-index/repository-signatures/index.json ### Sample response diff --git a/docs/api/search-autocomplete-service-resource.md b/docs/api/search-autocomplete-service-resource.md index cf07fdf07..f47f2848b 100644 --- a/docs/api/search-autocomplete-service-resource.md +++ b/docs/api/search-autocomplete-service-resource.md @@ -91,7 +91,7 @@ data | array of strings | yes | The package IDs matched by the request ### Sample request - GET https://api-v2v3search-0.nuget.org/autocomplete?q=storage&prerelease=true +GET https://api-v2v3search-0.nuget.org/autocomplete?q=storage&prerelease=true ### Sample response @@ -137,7 +137,7 @@ The package versions in the `data` array may contain SemVer 2.0.0 build metadata ### Sample request - GET https://api-v2v3search-0.nuget.org/autocomplete?id=nuget.protocol&prerelease=true +GET https://api-v2v3search-0.nuget.org/autocomplete?id=nuget.protocol&prerelease=true ### Sample response diff --git a/docs/api/search-query-service-resource.md b/docs/api/search-query-service-resource.md index 1da1eb716..b4c45266b 100644 --- a/docs/api/search-query-service-resource.md +++ b/docs/api/search-query-service-resource.md @@ -137,7 +137,7 @@ name | string | yes | The name of the package type. ### Sample request - GET https://azuresearch-usnc.nuget.org/query?q=NuGet.Versioning&prerelease=false&semVerLevel=2.0.0 +GET https://azuresearch-usnc.nuget.org/query?q=NuGet.Versioning&prerelease=false&semVerLevel=2.0.0 ### Sample response diff --git a/docs/api/service-index.md b/docs/api/service-index.md index a5a9f5888..060bc9f90 100644 --- a/docs/api/service-index.md +++ b/docs/api/service-index.md @@ -65,7 +65,7 @@ compatible `@type` can be used in a round-robin fashion in case of connection fa ### Sample request - GET https://api.nuget.org/v3/index.json +GET https://api.nuget.org/v3/index.json ### Sample response diff --git a/docs/api/tools-json.md b/docs/api/tools-json.md index d48eddeec..6bf068918 100644 --- a/docs/api/tools-json.md +++ b/docs/api/tools-json.md @@ -77,7 +77,7 @@ The `NuGet.CommandLine` package on nuget.org is typically only updated with `Rel ### Sample request - GET https://dist.nuget.org/tools.json +GET https://dist.nuget.org/tools.json ### Sample response diff --git a/docs/archive/project-json-and-uwp.md b/docs/archive/project-json-and-uwp.md index bea08ee81..6a348757d 100644 --- a/docs/archive/project-json-and-uwp.md +++ b/docs/archive/project-json-and-uwp.md @@ -68,11 +68,11 @@ The behavior of the `lib` folder hasn't changed significantly in NuGet v3. Howev An example lib structure: - lib - ├───net40 - │ MyLibrary.dll - └───wp81 - MyLibrary.dll +lib +├───net40 +│ MyLibrary.dll +└───wp81 + MyLibrary.dll The `lib` folder contains assemblies that are used at runtime. For most packages a folder under `lib` for each of the target TxMs is all that is required. @@ -86,23 +86,23 @@ Mechanically, the assemblies included in the `ref` folder are the reference asse The structure of the `ref` folder is the same as `lib`, for example: - └───MyImageProcessingLib - ├───lib - │ ├───net40 - │ │ MyImageProcessingLibrary.dll - │ │ - │ ├───net451 - │ │ MyImageProcessingLibrary.dll - │ │ - │ └───win81 - │ MyImageProcessingLibrary.dll - │ - └───ref - ├───net40 - │ MyImageProcessingLibrary.dll - │ - └───portable-net451-win81 - MyImageProcessingLibrary.dll +└───MyImageProcessingLib + ├───lib + │ ├───net40 + │ │ MyImageProcessingLibrary.dll + │ │ + │ ├───net451 + │ │ MyImageProcessingLibrary.dll + │ │ + │ └───win81 + │ MyImageProcessingLibrary.dll + │ + └───ref + ├───net40 + │ MyImageProcessingLibrary.dll + │ + └───portable-net451-win81 + MyImageProcessingLibrary.dll In this example the assemblies in the `ref` directories would all be identical. @@ -114,27 +114,27 @@ The runtimes folder contains assemblies and native libraries required to run on The following example shows a package that has a purely managed implementation for several platforms, but uses native helpers on Windows 8 where it can call into Windows 8-specific native APIs. - └───MyLibrary - ├───lib - │ └───net40 - │ MyLibrary.dll - │ - └───runtimes - ├───win8-x64 - │ ├───lib - │ │ └───net40 - │ │ MyLibrary.dll - │ │ - │ └───native - │ MyNativeLibrary.dll - │ - └───win8-x86 - ├───lib - │ └───net40 - │ MyLibrary.dll - │ - └───native - MyNativeLibrary.dll +└───MyLibrary + ├───lib + │ └───net40 + │ MyLibrary.dll + │ + └───runtimes + ├───win8-x64 + │ ├───lib + │ │ └───net40 + │ │ MyLibrary.dll + │ │ + │ └───native + │ MyNativeLibrary.dll + │ + └───win8-x86 + ├───lib + │ └───net40 + │ MyLibrary.dll + │ + └───native + MyNativeLibrary.dll Given the above package the following things happen: @@ -150,23 +150,23 @@ Only a single `lib` folder is ever be picked, so if there is a runtime specific Another way to use runtimes is to ship a package that is purely a managed wrapper over a native assembly. In this scenario you create a package like the following: - └───MyLibrary - └───runtimes - ├───win8-x64 - │ ├───lib - │ │ └───net451 - │ │ MyLibrary.dll - │ │ - │ └───native - │ MyImplementation.dll - │ - └───win8-x86 - ├───lib - │ └───net451 - │ MyLibrary.dll - │ - └───native - MyImplementation.dll +└───MyLibrary + └───runtimes + ├───win8-x64 + │ ├───lib + │ │ └───net451 + │ │ MyLibrary.dll + │ │ + │ └───native + │ MyImplementation.dll + │ + └───win8-x86 + ├───lib + │ └───net451 + │ MyLibrary.dll + │ + └───native + MyImplementation.dll In this case there is no top-level `lib` folder as that folder as there is no implementation of this package that doesn't rely on the corresponding native assembly. If the managed assembly, `MyLibrary.dll`, was exactly the same in both of these cases then we could put it in a top level `lib` folder, but because the lack of a native assembly doesn't cause the package to fail installing if it was installed on a platform that wasn't win-x86 or win-x64 then the top level lib would be used but no native assembly would be copied. diff --git a/docs/concepts/Package-Versioning.md b/docs/concepts/Package-Versioning.md index 4e9cb55fe..b2d29e768 100644 --- a/docs/concepts/Package-Versioning.md +++ b/docs/concepts/Package-Versioning.md @@ -31,10 +31,10 @@ A specific version number is in the form *Major.Minor.Patch[-Suffix]*, where the **Examples:** - 1.0.1 - 6.11.1231 - 4.3.1-rc - 2.2.44-beta1 +1.0.1 +6.11.1231 +4.3.1-rc +2.2.44-beta1 > [!Important] > nuget.org rejects any package upload that lacks an exact version number. The version must be specified in the `.nuspec` or project file used to create the package. @@ -54,14 +54,14 @@ That said, package developers generally follow recognized naming conventions: When resolving package references and multiple package versions differ only by suffix, NuGet chooses a version without a suffix first, then applies precedence to pre-release versions in reverse alphabetical order. For example, the following versions would be chosen in the exact order shown: - 1.0.1 - 1.0.1-zzz - 1.0.1-rc - 1.0.1-open - 1.0.1-beta - 1.0.1-alpha2 - 1.0.1-alpha - 1.0.1-aaa +1.0.1 +1.0.1-zzz +1.0.1-rc +1.0.1-open +1.0.1-beta +1.0.1-alpha2 +1.0.1-alpha +1.0.1-aaa ## Semantic Versioning 2.0.0 @@ -223,18 +223,18 @@ When obtaining packages from a repository during install, reinstall, or restore - Leading zeroes are removed from version numbers: - 1.00 is treated as 1.0 - 1.01.1 is treated as 1.1.1 - 1.00.0.1 is treated as 1.0.0.1 + 1.00 is treated as 1.0 + 1.01.1 is treated as 1.1.1 + 1.00.0.1 is treated as 1.0.0.1 - A zero in the fourth part of the version number will be omitted - 1.0.0.0 is treated as 1.0.0 - 1.0.01.0 is treated as 1.0.1 - + 1.0.0.0 is treated as 1.0.0 + 1.0.01.0 is treated as 1.0.1 + - SemVer 2.0.0 build metadata is removed - 1.0.7+r3456 is treated as 1.0.7 + 1.0.7+r3456 is treated as 1.0.7 `pack` and `restore` operations normalize versions whenever possible. For packages already built, this normalization does not affect the version numbers in the packages themselves; it affects only how NuGet matches versions when resolving dependencies. diff --git a/docs/create-packages/Supporting-Multiple-Target-Frameworks.md b/docs/create-packages/Supporting-Multiple-Target-Frameworks.md index 256d02647..5f478a06d 100644 --- a/docs/create-packages/Supporting-Multiple-Target-Frameworks.md +++ b/docs/create-packages/Supporting-Multiple-Target-Frameworks.md @@ -19,7 +19,7 @@ You must manually lay out the package as described in this article when using th When building a package that contains only one version of a library or target multiple frameworks, you always make subfolders under `lib` using different case-sensitive framework names with the following convention: - lib\{framework name}[{version}] +lib\{framework name}[{version}] For a complete list of supported names, see the [Target Frameworks reference](../reference/target-frameworks.md#supported-frameworks). @@ -107,7 +107,7 @@ If you want `MyAssembly.Core.dll` to be installed for .NET Framework 4.5, place NuGet also supports targeting a specific framework profile by appending a dash and the profile name to the end of the folder. - lib\{framework name}-{profile} +lib\{framework name}-{profile} The supported profiles are as follows: @@ -157,22 +157,22 @@ When packaging libraries targeting the Portable Class Library it can be tricky t With `packages.config`, content files and PowerShell scripts can be grouped by target framework using the same folder convention inside the `content` and `tools` folders. For example: - \content - \net46 - \MyContent.txt - \net461 - \MyContent461.txt - \uap - \MyUWPContent.html - \netcore - \tools - init.ps1 - \net46 - install.ps1 - uninstall.ps1 - \uap - install.ps1 - uninstall.ps1 +\content + \net46 + \MyContent.txt + \net461 + \MyContent461.txt + \uap + \MyUWPContent.html + \netcore +\tools + init.ps1 + \net46 + install.ps1 + uninstall.ps1 + \uap + install.ps1 + uninstall.ps1 If a framework folder is left empty, NuGet doesn't add assembly references or content files or run the PowerShell scripts for that framework. From a8d6dbd146350a55decd6bcd1b9f66de8dd0769d Mon Sep 17 00:00:00 2001 From: "Mike Jones (DEVUE)" Date: Thu, 21 Jan 2021 17:58:00 -0800 Subject: [PATCH 253/988] more of the same --- docs/api/NuGet-Protocols.md | 2 +- .../configuring-nuget-behavior.md | 16 ++++++++-------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/docs/api/NuGet-Protocols.md b/docs/api/NuGet-Protocols.md index 1b75c7f9a..c64921739 100644 --- a/docs/api/NuGet-Protocols.md +++ b/docs/api/NuGet-Protocols.md @@ -52,7 +52,7 @@ If a client interacts with external services and needs to validate whether a pac This API is used to get a verify-scope key for a nuget.org author to validate a package owned by him/her. - `POST api/v2/package/create-verification-key/{ID}/{VERSION}` + POST api/v2/package/create-verification-key/{ID}/{VERSION} #### Request parameters diff --git a/docs/consume-packages/configuring-nuget-behavior.md b/docs/consume-packages/configuring-nuget-behavior.md index f3bf1e668..64e68e5a1 100644 --- a/docs/consume-packages/configuring-nuget-behavior.md +++ b/docs/consume-packages/configuring-nuget-behavior.md @@ -115,14 +115,14 @@ As NuGet finds settings in these files, they are applied as follows: Let's say you have the following folder structure on two separate drives: - disk_drive_1 - User - disk_drive_2 - Project1 - Source - Project2 - Source - tmp +disk_drive_1 + User +disk_drive_2 + Project1 + Source + Project2 + Source + tmp You then have four `NuGet.Config` files in the following locations with the given content. (The computer-level file is not included in this example, but would behave similarly to the user-level file.) From b27126ba7477972edebb98a4d4cddd26b7765813 Mon Sep 17 00:00:00 2001 From: Gene Milener Date: Thu, 21 Jan 2021 23:09:16 -0800 Subject: [PATCH 254/988] Fixing 'code-block-indented' messages, in NuGet-Protocols.md Fixing 'code-block-indented' messages, in NuGet-Protocols.md. Experiencing how little time it takes to fix messages of this type. GeneMi (= MightyPen) --- docs/api/NuGet-Protocols.md | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/docs/api/NuGet-Protocols.md b/docs/api/NuGet-Protocols.md index c64921739..0a027b5c2 100644 --- a/docs/api/NuGet-Protocols.md +++ b/docs/api/NuGet-Protocols.md @@ -3,7 +3,7 @@ title: nuget.org Protocols description: The evolving nuget.org protocols to interact with NuGet clients. author: anangaur ms.author: anangaur -ms.date: 10/30/2017 +ms.date: 01/21/2021 ms.topic: conceptual ms.reviewer: kraigb --- @@ -37,7 +37,9 @@ be used to validate that the package belongs to a particular user (account) on n Clients are required to pass the following header when they make API calls to **push** packages to nuget.org: - X-NuGet-Protocol-Version: 4.1.0 +``` +X-NuGet-Protocol-Version: 4.1.0 +``` Note that the `X-NuGet-Client-Version` header has similar semantics but is reserved to only be used by the official NuGet client. Third party clients should use the `X-NuGet-Protocol-Version` header and value. @@ -52,7 +54,9 @@ If a client interacts with external services and needs to validate whether a pac This API is used to get a verify-scope key for a nuget.org author to validate a package owned by him/her. - POST api/v2/package/create-verification-key/{ID}/{VERSION} +``` +POST api/v2/package/create-verification-key/{ID}/{VERSION} +``` #### Request parameters @@ -75,7 +79,9 @@ X-NuGet-ApiKey | Header | string | yes | For example, `X-NuGet-ApiKey: {USE This API is used to validate a verify-scope key for package owned by the nuget.org author. - GET api/v2/verifykey/{ID}/{VERSION} +``` +GET api/v2/verifykey/{ID}/{VERSION} +``` #### Request parameters From 836fd2979307a121828cb2f9e3d21ed1fb665d7d Mon Sep 17 00:00:00 2001 From: "Mike Jones (DEVUE)" Date: Fri, 22 Jan 2021 09:30:50 -0800 Subject: [PATCH 255/988] Fixes to code-block-indented suggestions --- docs/api/catalog-resource.md | 12 +++++++++++- docs/api/package-base-address-resource.md | 12 ++++++++++++ docs/api/package-details-template-resource.md | 4 ++++ 3 files changed, 27 insertions(+), 1 deletion(-) diff --git a/docs/api/catalog-resource.md b/docs/api/catalog-resource.md index f37c2c174..d25fe04c1 100644 --- a/docs/api/catalog-resource.md +++ b/docs/api/catalog-resource.md @@ -59,7 +59,9 @@ Catalog items are always added to the catalog in a monotonically increasing, chr The following request fetches the catalog index. - GET {@id} +``` +GET {@id} +``` The catalog index is a JSON document that contains an object with the following properties: @@ -96,7 +98,9 @@ URL. ### Sample request +``` GET https://api.nuget.org/v3/catalog0/index.json +``` ### Sample response @@ -158,7 +162,9 @@ For more details about what each type means, see the [corresponding items type]( ### Sample request +``` GET https://api.nuget.org/v3/catalog0/page2926.json +``` ### Sample response @@ -259,7 +265,9 @@ The `published` timestamp is the time when the package was last listed. #### Sample request +``` GET https://api.nuget.org/v3/catalog0/data/2015.02.01.11.18.40/windowsazure.storage.1.0.0.json +``` #### Sample response @@ -287,7 +295,9 @@ item's commit timestamp. #### Sample request +``` GET https://api.nuget.org/v3/catalog0/data/2017.11.02.00.40.00/netstandard1.4_lib.1.0.0-test.json +``` #### Sample response diff --git a/docs/api/package-base-address-resource.md b/docs/api/package-base-address-resource.md index 6c70434d7..474882c16 100644 --- a/docs/api/package-base-address-resource.md +++ b/docs/api/package-base-address-resource.md @@ -43,7 +43,9 @@ listing" for the package content API mentioned below. > [!Note] > This list contains both listed and unlisted package versions. +``` GET {@id}/{LOWER_ID}/index.json +``` ### Request parameters @@ -74,7 +76,9 @@ in the following endpoints. ### Sample request +``` GET https://api.nuget.org/v3-flatcontainer/owin/index.json +``` ### Sample response @@ -85,7 +89,9 @@ GET https://api.nuget.org/v3-flatcontainer/owin/index.json If the client knows a package ID and version and wants to download the package content, they only need to construct the following URL: +``` GET {@id}/{LOWER_ID}/{LOWER_VERSION}/{LOWER_ID}.{LOWER_VERSION}.nupkg +``` ### Request parameters @@ -111,7 +117,9 @@ If the package does not exist on the package source, a 404 status code is return ### Sample request +``` GET https://api.nuget.org/v3-flatcontainer/newtonsoft.json/9.0.1/newtonsoft.json.9.0.1.nupkg +``` ### Sample response @@ -122,7 +130,9 @@ The binary stream that is the .nupkg for Newtonsoft.Json 9.0.1. If the client knows a package ID and version and wants to download the package manifest, they only need to construct the following URL: +``` GET {@id}/{LOWER_ID}/{LOWER_VERSION}/{LOWER_ID}.nuspec +``` ### Request parameters @@ -147,7 +157,9 @@ If the package does not exist on the package source, a 404 status code is return ### Sample request +``` GET https://api.nuget.org/v3-flatcontainer/newtonsoft.json/6.0.4/newtonsoft.json.nuspec +``` ### Sample response diff --git a/docs/api/package-details-template-resource.md b/docs/api/package-details-template-resource.md index 0e3cbe6c3..b2c7928f3 100644 --- a/docs/api/package-details-template-resource.md +++ b/docs/api/package-details-template-resource.md @@ -60,9 +60,13 @@ words, the server should accept also accept non-normalized versions. For example, nuget.org's package details template looks like this: +```http https://www.nuget.org/packages/{id}/{version} +``` If the client implementation needs to display a link to the package details for NuGet.Versioning 4.3.0, it would produce the following URL and provide it to the user: +```http https://www.nuget.org/packages/NuGet.Versioning/4.3.0 +``` From ed0f463b0c6dc1a8f52aa230b6f68706df32c70a Mon Sep 17 00:00:00 2001 From: "Mike Jones (DEVUE)" Date: Fri, 22 Jan 2021 09:48:00 -0800 Subject: [PATCH 256/988] More fixes --- docs/api/package-publish-resource.md | 8 +++++++- docs/api/registration-base-url-resource.md | 10 +++++++++- docs/api/report-abuse-resource.md | 4 ++++ docs/api/repository-signatures-resource.md | 6 +++++- docs/api/search-autocomplete-service-resource.md | 12 ++++++++++-- docs/api/search-query-service-resource.md | 6 +++++- docs/api/service-index.md | 6 +++++- docs/api/symbol-package-publish-resource.md | 4 +++- docs/api/tools-json.md | 10 ++++++++-- 9 files changed, 56 insertions(+), 10 deletions(-) diff --git a/docs/api/package-publish-resource.md b/docs/api/package-publish-resource.md index 7e4ce5d47..57ffa8e46 100644 --- a/docs/api/package-publish-resource.md +++ b/docs/api/package-publish-resource.md @@ -42,7 +42,9 @@ endpoint, see below. nuget.org supports pushing new packages using the following API. If the package with the provided ID and version already exists, nuget.org will reject the push. Other package sources may support replacing an existing package. +``` PUT https://www.nuget.org/api/v2/package +``` ### Request parameters @@ -84,7 +86,9 @@ implementations are free to interpret this signal as a hard delete, soft delete, [NuGet.Server](https://www.nuget.org/packages/NuGet.Server) (a server implementation only supporting the older V2 API) supports handling this request as either an unlist or a hard delete based on a configuration option. - DELETE https://www.nuget.org/api/v2/package/{ID}/{VERSION} +``` +DELETE https://www.nuget.org/api/v2/package/{ID}/{VERSION} +``` ### Request parameters @@ -109,7 +113,9 @@ HTTP method instead of the `DELETE` method. If the package is already listed, the request still succeeds. +``` POST https://www.nuget.org/api/v2/package/{ID}/{VERSION} +``` ### Request parameters diff --git a/docs/api/registration-base-url-resource.md b/docs/api/registration-base-url-resource.md index ab3a53681..04b9c0e67 100644 --- a/docs/api/registration-base-url-resource.md +++ b/docs/api/registration-base-url-resource.md @@ -88,7 +88,9 @@ The heuristic that nuget.org uses is as follows: if there are 128 or more versio into pages of size 64. If there are less than 128 versions, inline all leaves into the registration index. Note that this means packages with 65 to 127 versions will have two pages in the index but both pages will be inlined. - GET {@id}/{LOWER_ID}/index.json +``` +GET {@id}/{LOWER_ID}/index.json +``` ### Request parameters @@ -252,7 +254,9 @@ range | object | no | The allowed [version range](../concepts/packa ### Sample request +``` GET https://api.nuget.org/v3/registration3/nuget.server.core/index.json +``` ### Sample response @@ -289,7 +293,9 @@ The shape of the registration leaf objects is the same as in the registration in ## Sample request +``` GET https://api.nuget.org/v3/registration3/ravendb.client/page/1.0.531/1.0.729-unstable.json +``` ## Sample response @@ -327,7 +333,9 @@ registration | string | no | The URL to the registration index ### Sample request +``` GET https://api.nuget.org/v3/registration3/nuget.versioning/4.3.0.json +``` ### Sample response diff --git a/docs/api/report-abuse-resource.md b/docs/api/report-abuse-resource.md index 603ba98ac..dd052189a 100644 --- a/docs/api/report-abuse-resource.md +++ b/docs/api/report-abuse-resource.md @@ -57,9 +57,13 @@ whether the version is normalized. For example, nuget.org's report abuse template looks like this: +``` https://www.nuget.org/packages/{id}/{version}/ReportAbuse +``` If the client implementation needs to display a link to the report abuse form for NuGet.Versioning 4.3.0, it would produce the following URL and provide it to the user: +``` https://www.nuget.org/packages/NuGet.Versioning/4.3.0/ReportAbuse +``` diff --git a/docs/api/repository-signatures-resource.md b/docs/api/repository-signatures-resource.md index c23947a0e..1b67ccdc3 100644 --- a/docs/api/repository-signatures-resource.md +++ b/docs/api/repository-signatures-resource.md @@ -58,7 +58,9 @@ signing certificate list. The following request fetches the repository signatures index. - GET {@id} +``` +GET {@id} +``` The repository signature index is a JSON document that contains an object with the following properties: @@ -107,7 +109,9 @@ All hash values must be lowercase, hex-encoded string representations of the has ### Sample request +``` GET https://api.nuget.org/v3-index/repository-signatures/index.json +``` ### Sample response diff --git a/docs/api/search-autocomplete-service-resource.md b/docs/api/search-autocomplete-service-resource.md index f47f2848b..bec6ca03c 100644 --- a/docs/api/search-autocomplete-service-resource.md +++ b/docs/api/search-autocomplete-service-resource.md @@ -43,7 +43,9 @@ a package typeahead feature in a user interface integrated with a NuGet package A package with only unlisted versions will not appear in the results. - GET {@id}?q={QUERY}&skip={SKIP}&take={TAKE}&prerelease={PRERELEASE}&semVerLevel={SEMVERLEVEL}&packageType={PACKAGETYPE} +``` +GET {@id}?q={QUERY}&skip={SKIP}&take={TAKE}&prerelease={PRERELEASE}&semVerLevel={SEMVERLEVEL}&packageType={PACKAGETYPE} +``` ### Request parameters @@ -91,7 +93,9 @@ data | array of strings | yes | The package IDs matched by the request ### Sample request +``` GET https://api-v2v3search-0.nuget.org/autocomplete?q=storage&prerelease=true +``` ### Sample response @@ -104,7 +108,9 @@ versions for a provided package ID. A package version that is unlisted will not appear in the results. - GET {@id}?id={ID}&prerelease={PRERELEASE}&semVerLevel={SEMVERLEVEL} +``` +GET {@id}?id={ID}&prerelease={PRERELEASE}&semVerLevel={SEMVERLEVEL} +``` ### Request parameters @@ -137,7 +143,9 @@ The package versions in the `data` array may contain SemVer 2.0.0 build metadata ### Sample request +``` GET https://api-v2v3search-0.nuget.org/autocomplete?id=nuget.protocol&prerelease=true +``` ### Sample response diff --git a/docs/api/search-query-service-resource.md b/docs/api/search-query-service-resource.md index b4c45266b..17cf2378c 100644 --- a/docs/api/search-query-service-resource.md +++ b/docs/api/search-query-service-resource.md @@ -45,7 +45,9 @@ package metadata fields may also be considered. An unlisted package should never appear in search results. - GET {@id}?q={QUERY}&skip={SKIP}&take={TAKE}&prerelease={PRERELEASE}&semVerLevel={SEMVERLEVEL}&packageType={PACKAGETYPE} +``` +GET {@id}?q={QUERY}&skip={SKIP}&take={TAKE}&prerelease={PRERELEASE}&semVerLevel={SEMVERLEVEL}&packageType={PACKAGETYPE} +``` ### Request parameters @@ -137,7 +139,9 @@ name | string | yes | The name of the package type. ### Sample request +``` GET https://azuresearch-usnc.nuget.org/query?q=NuGet.Versioning&prerelease=false&semVerLevel=2.0.0 +``` ### Sample response diff --git a/docs/api/service-index.md b/docs/api/service-index.md index 060bc9f90..faacd9351 100644 --- a/docs/api/service-index.md +++ b/docs/api/service-index.md @@ -50,7 +50,9 @@ The `@id` is a URL that must be absolute and must either have the HTTP or HTTPS The `@type` is used to identify the specific protocol to use when interacting with resource. The type of the resource is an opaque string but generally has the format: - {RESOURCE_NAME}/{RESOURCE_VERSION} +``` +{RESOURCE_NAME}/{RESOURCE_VERSION} +``` Clients are expected to hard code the `@type` values that they understand and look them up in a package source's service index. The exact `@type` values in use today are enumerated on the individual resource reference documents @@ -65,7 +67,9 @@ compatible `@type` can be used in a round-robin fashion in case of connection fa ### Sample request +``` GET https://api.nuget.org/v3/index.json +``` ### Sample response diff --git a/docs/api/symbol-package-publish-resource.md b/docs/api/symbol-package-publish-resource.md index c2ea9a943..8e9fe1a80 100644 --- a/docs/api/symbol-package-publish-resource.md +++ b/docs/api/symbol-package-publish-resource.md @@ -39,7 +39,9 @@ The `PUT` HTTP method is supported by this resource. nuget.org supports pushing new symbol packages format ([snupkg](../create-packages/Symbol-Packages-snupkg.md)) using the following API. - PUT https://www.nuget.org/api/v2/symbolpackage +``` +PUT https://www.nuget.org/api/v2/symbolpackage +``` Symbol packages with the same ID and version can be submitted multiple times. A symbol package will be rejected in the following cases. diff --git a/docs/api/tools-json.md b/docs/api/tools-json.md index 6bf068918..692e45b0e 100644 --- a/docs/api/tools-json.md +++ b/docs/api/tools-json.md @@ -29,11 +29,15 @@ unauthenticated HTTP requests. The endpoint can be fetched using the `GET` method: - GET https://dist.nuget.org/tools.json +``` +GET https://dist.nuget.org/tools.json +``` The [JSON schema](https://json-schema.org/) for the endpoint is available here: - GET https://dist.nuget.org/tools.schema.json +``` +GET https://dist.nuget.org/tools.schema.json +``` ## Response @@ -77,7 +81,9 @@ The `NuGet.CommandLine` package on nuget.org is typically only updated with `Rel ### Sample request +``` GET https://dist.nuget.org/tools.json +``` ### Sample response From 35a0d7709633dd3bbca42f897c9855d0b45f82a8 Mon Sep 17 00:00:00 2001 From: "Mike Jones (DEVUE)" Date: Fri, 22 Jan 2021 10:04:30 -0800 Subject: [PATCH 257/988] Ditto --- .../consume-packages/Team-Foundation-Build.md | 78 +++---- .../install-use-packages-powershell.md | 2 +- .../Creating-Localized-Packages.md | 74 +++--- docs/create-packages/Prerelease-Packages.md | 18 +- docs/create-packages/Symbol-Packages.md | 48 ++-- docs/guides/Create-UI-Controls.md | 45 ++-- .../api/query-for-all-published-packages.md | 16 +- docs/hosting-packages/Local-Feeds.md | 10 +- docs/reference/nuspec.md | 218 +++++++++--------- 9 files changed, 261 insertions(+), 248 deletions(-) diff --git a/docs/consume-packages/Team-Foundation-Build.md b/docs/consume-packages/Team-Foundation-Build.md index 600a28597..07e299903 100644 --- a/docs/consume-packages/Team-Foundation-Build.md +++ b/docs/consume-packages/Team-Foundation-Build.md @@ -49,26 +49,26 @@ Our demo project is a simple command line tool that uses the command line argume The structure of the repository looks as follows: - - │ .gitignore - │ .tfignore - │ build.proj - │ - ├───src - │ │ BingSearcher.sln - │ │ - │ └───BingSearcher - │ │ App.config - │ │ BingSearcher.csproj - │ │ packages.config - │ │ Program.cs - │ │ - │ └───Properties - │ AssemblyInfo.cs - │ - └───tools - └───NuGet - nuget.exe + + │ .gitignore + │ .tfignore + │ build.proj + │ + ├───src + │ │ BingSearcher.sln + │ │ + │ └───BingSearcher + │ │ App.config + │ │ BingSearcher.csproj + │ │ packages.config + │ │ Program.cs + │ │ + │ └───Properties + │ AssemblyInfo.cs + │ + └───tools + └───NuGet + nuget.exe You can see that we haven't checked-in the `packages` folder nor any `.targets` files. @@ -93,33 +93,33 @@ To communicate to version control that we don’t intent to check-in the **packa The `.gitignore` file looks as follows: - syntax: glob - *.user - *.suo - bin - obj - packages - *.nupkg - project.lock.json - project.assets.json +syntax: glob +*.user +*.suo +bin +obj +packages +*.nupkg +project.lock.json +project.assets.json The `.gitignore` file is [quite powerful](https://www.kernel.org/pub/software/scm/git/docs/gitignore.html). For example, if you want to generally not check-in the contents of the `packages` folder but want to go with previous guidance of checking in the `.targets` files you could have the following rule instead: - packages - !packages/**/*.targets +packages +!packages/**/*.targets This will exclude all `packages` folders but will re-include all contained `.targets` files. By the way, you can find a template for `.gitignore` files that is specifically tailored for the needs of Visual Studio developers [here](https://github.com/github/gitignore/blob/master/VisualStudio.gitignore). TF version control supports a very similar mechanism via the [.tfignore](/vsts/tfvc/add-files-server#customize-which-files-are-ignored-by-version-control) file. The syntax is virtually the same: - *.user - *.suo - bin - obj - packages - *.nupkg - project.lock.json - project.assets.json +*.user +*.suo +bin +obj +packages +*.nupkg +project.lock.json +project.assets.json ## build.proj diff --git a/docs/consume-packages/install-use-packages-powershell.md b/docs/consume-packages/install-use-packages-powershell.md index 7840c66ad..c165d8b03 100644 --- a/docs/consume-packages/install-use-packages-powershell.md +++ b/docs/consume-packages/install-use-packages-powershell.md @@ -157,7 +157,7 @@ Some packages install new commands for the console. For example, `MvcScaffolding A PowerShell profile lets you make commonly-used commands available wherever you use PowerShell. NuGet supports a NuGet-specific profile typically found at the following location: - %UserProfile%\Documents\WindowsPowerShell\NuGet_profile.ps1 +*%UserProfile%\Documents\WindowsPowerShell\NuGet_profile.ps1* To find the profile, type `$profile` in the console: diff --git a/docs/create-packages/Creating-Localized-Packages.md b/docs/create-packages/Creating-Localized-Packages.md index e783a156b..ddc3344d5 100644 --- a/docs/create-packages/Creating-Localized-Packages.md +++ b/docs/create-packages/Creating-Localized-Packages.md @@ -22,34 +22,34 @@ Including localized resource assemblies in a single package is typically the sim For example, the following folder structure supports, German (de), Italian (it), Japanese (ja), Russian (ru), Chinese (Simplified) (zh-Hans), and Chinese (Traditional) (zh-Hant): - lib - └───net40 - │ Contoso.Utilities.dll - │ Contoso.Utilities.xml - │ - ├───de - │ Contoso.Utilities.resources.dll - │ Contoso.Utilities.xml - │ - ├───it - │ Contoso.Utilities.resources.dll - │ Contoso.Utilities.xml - │ - ├───ja - │ Contoso.Utilities.resources.dll - │ Contoso.Utilities.xml - │ - ├───ru - │ Contoso.Utilities.resources.dll - │ Contoso.Utilities.xml - │ - ├───zh-Hans - │ Contoso.Utilities.resources.dll - │ Contoso.Utilities.xml - │ - └───zh-Hant - Contoso.Utilities.resources.dll - Contoso.Utilities.xml +lib +└───net40 + │ Contoso.Utilities.dll + │ Contoso.Utilities.xml + │ + ├───de + │ Contoso.Utilities.resources.dll + │ Contoso.Utilities.xml + │ + ├───it + │ Contoso.Utilities.resources.dll + │ Contoso.Utilities.xml + │ + ├───ja + │ Contoso.Utilities.resources.dll + │ Contoso.Utilities.xml + │ + ├───ru + │ Contoso.Utilities.resources.dll + │ Contoso.Utilities.xml + │ + ├───zh-Hans + │ Contoso.Utilities.resources.dll + │ Contoso.Utilities.xml + │ + └───zh-Hant + Contoso.Utilities.resources.dll + Contoso.Utilities.xml You can see that the languages are all listed underneath the `net40` target framework folder. If you're [supporting multiple frameworks](../create-packages/supporting-multiple-target-frameworks.md), then you have a folder under `lib` for each variant. @@ -87,10 +87,10 @@ Similar to how .NET Framework supports satellite assemblies, this method separat Do to this, your primary package uses the naming convention `{identifier}.{version}.nupkg` and contains the assembly for the default language (such as en-US). For example, `ContosoUtilities.1.0.0.nupkg` would contain the following structure: - lib - └───net40 - ContosoUtilities.dll - ContosoUtilities.xml +lib +└───net40 + ContosoUtilities.dll + ContosoUtilities.xml A satellite assembly then uses the naming convention `{identifier}.{language}.{version}.nupkg`, such as `ContosoUtilities.de.1.0.0.nupkg`. The identifier **must** exactly match that of the primary package. @@ -100,11 +100,11 @@ The satellite assembly **must** also declare an exact version of the primary pac The satellite package's structure must then include the resource assembly and XML IntelliSense file in a subfolder that matches `{language}` in the package filename: - lib - └───net40 - └───de - ContosoUtilities.resources.dll - ContosoUtilities.xml +lib +└───net40 + └───de + ContosoUtilities.resources.dll + ContosoUtilities.xml **Note**: unless specific subcultures such as `ja-JP` are necessary, always use the higher level language identifier, like `ja`. diff --git a/docs/create-packages/Prerelease-Packages.md b/docs/create-packages/Prerelease-Packages.md index c36bbe25a..6aea247a6 100644 --- a/docs/create-packages/Prerelease-Packages.md +++ b/docs/create-packages/Prerelease-Packages.md @@ -72,15 +72,15 @@ With this in mind, it's generally good to follow recognized naming conventions s Whatever suffixes you use, however, NuGet will give them precedence in reverse alphabetical order: - 1.0.1 - 1.0.1-zzz - 1.0.1-rc - 1.0.1-open - 1.0.1-beta.12 - 1.0.1-beta.5 - 1.0.1-beta - 1.0.1-alpha.2 - 1.0.1-alpha +1.0.1 +1.0.1-zzz +1.0.1-rc +1.0.1-open +1.0.1-beta.12 +1.0.1-beta.5 +1.0.1-beta +1.0.1-alpha.2 +1.0.1-alpha As shown, the version without any suffix will always take precedence over pre-release versions. diff --git a/docs/create-packages/Symbol-Packages.md b/docs/create-packages/Symbol-Packages.md index 56b42d038..3c1698417 100644 --- a/docs/create-packages/Symbol-Packages.md +++ b/docs/create-packages/Symbol-Packages.md @@ -41,42 +41,42 @@ A legacy symbol package can target multiple target frameworks in the same way th For example, a legacy symbol package that targets .NET 4.0 and Silverlight 4 would have this layout: - \lib - \net40 - \MyAssembly.dll - \MyAssembly.pdb - \sl40 - \MyAssembly.dll - \MyAssembly.pdb +\lib + \net40 + \MyAssembly.dll + \MyAssembly.pdb + \sl40 + \MyAssembly.dll + \MyAssembly.pdb Source files are then placed in a separate special folder named `src`, which must follow the relative structure of your source repository. This is because PDBs contain absolute paths to source files used to compile the matching DLL, and they need to be found during the publishing process. A base path (common path prefix) can be stripped out. For example, consider a library built from these files: - C:\Projects - \MyProject - \Common - \MyClass.cs - \Full - \Properties - \AssemblyInfo.cs - \MyAssembly.csproj (producing \lib\net40\MyAssembly.dll) - \Silverlight - \Properties - \AssemblyInfo.cs - \MySilverlightExtensions.cs - \MyAssembly.csproj (producing \lib\sl4\MyAssembly.dll) - -Apart from the `lib` folder, a legacy symbol package would need to contain this layout: - - \src +C:\Projects + \MyProject \Common \MyClass.cs \Full \Properties \AssemblyInfo.cs + \MyAssembly.csproj (producing \lib\net40\MyAssembly.dll) \Silverlight \Properties \AssemblyInfo.cs \MySilverlightExtensions.cs + \MyAssembly.csproj (producing \lib\sl4\MyAssembly.dll) + +Apart from the `lib` folder, a legacy symbol package would need to contain this layout: + +\src + \Common + \MyClass.cs + \Full + \Properties + \AssemblyInfo.cs + \Silverlight + \Properties + \AssemblyInfo.cs + \MySilverlightExtensions.cs ## Referring to files in the nuspec diff --git a/docs/guides/Create-UI-Controls.md b/docs/guides/Create-UI-Controls.md index 4dd8ca8bd..8a42106d4 100644 --- a/docs/guides/Create-UI-Controls.md +++ b/docs/guides/Create-UI-Controls.md @@ -31,10 +31,10 @@ Alternately, edit the the project file to add `true Edit a Copy](/windows/uwp/controls-and-patterns/xaml-styles#modify-the-default-system-styles)** feature works, you must include the `Generic.xaml` and any resource dictionaries that it merges in the `\Themes` folder (again, using your actual assembly name). (This file has no impact on the runtime behavior of a control.) The folder structure would thus appear as follows: - \lib - \uap10.0.14393 - \Design - \MyControl.design.dll - \your_assembly_name - \Themes - Generic.xaml - +\lib + \uap10.0.14393 + \Design + \MyControl.design.dll + \your_assembly_name + \Themes + Generic.xaml For WPF, continuing with the example where you would like your WPF controls package to be consumed by projects targeting .NET Framework v4.6.1 or higher: - \lib - \net461 - \Design - \MyControl.design.dll - \your_assembly_name - \Themes - Generic.xaml +\lib + \net461 + \Design + \MyControl.design.dll + \your_assembly_name + \Themes + Generic.xaml > [!Note] > By default, control properties will show up under the Miscellaneous category in the property inspector. diff --git a/docs/guides/api/query-for-all-published-packages.md b/docs/guides/api/query-for-all-published-packages.md index b5d94c0d6..b96b594ab 100644 --- a/docs/guides/api/query-for-all-published-packages.md +++ b/docs/guides/api/query-for-all-published-packages.md @@ -49,7 +49,9 @@ DateTime cursor = DateTime.UtcNow.AddHours(-1); The location of every resource (endpoint) in the NuGet API should be discovered using the [service index](../../api/service-index.md). Because this guide focuses on nuget.org, we'll be using nuget.org's service index. - GET https://api.nuget.org/v3/index.json +``` +GET https://api.nuget.org/v3/index.json +``` The service document is JSON document containing all of the resources on nuget.org. Look for the resource having the `@type` property value of `Catalog/3.0.0`. The associated `@id` property value is the URL to the catalog index itself. @@ -57,13 +59,17 @@ The service document is JSON document containing all of the resources on nuget.o Using the `@id` property value found in the previous step, download the catalog index: - GET https://api.nuget.org/v3/catalog0/index.json +``` +GET https://api.nuget.org/v3/catalog0/index.json +``` Deserialize the [catalog index](../../api/catalog-resource.md#catalog-index). Filter out all [catalog page objects](../../api/catalog-resource.md#catalog-page-object-in-the-index) with `commitTimeStamp` less than or equal to your current cursor value. For each remaining catalog page, download the full document using the `@id` property. - GET https://api.nuget.org/v3/catalog0/page2926.json +``` +GET https://api.nuget.org/v3/catalog0/page2926.json +``` Deserialize the [catalog page](../../api/catalog-resource.md#catalog-page). Filter out all [catalog leaf objects](../../api/catalog-resource.md#catalog-item-object-in-a-page) with `commitTimeStamp` less than or equal to your current cursor value. @@ -75,7 +81,9 @@ At this point, you can perform any custom processing you'd like on the catalog i If you are interested in the metadata about the package (such at the description, dependencies, .nupkg size, etc), you can fetch the [catalog leaf document](../../api/catalog-resource.md#catalog-leaf) using the `@id` property. - GET https://api.nuget.org/v3/catalog0/data/2015.02.01.11.18.40/windowsazure.storage.1.0.0.json +``` +GET https://api.nuget.org/v3/catalog0/data/2015.02.01.11.18.40/windowsazure.storage.1.0.0.json +``` This document has all of the metadata included in the [package metadata resource](../../api/registration-base-url-resource.md), and more! diff --git a/docs/hosting-packages/Local-Feeds.md b/docs/hosting-packages/Local-Feeds.md index 01e409c9f..3babf8f1e 100644 --- a/docs/hosting-packages/Local-Feeds.md +++ b/docs/hosting-packages/Local-Feeds.md @@ -20,11 +20,11 @@ To enable the source, add its pathname (such as `\\myserver\packages`) to the li The hierarchical versioned folder tree has the following general structure: - \\myserver\packages - └─ - └─ - ├─..nupkg - └─ +\\myserver\packages + └─ + └─ + ├─..nupkg + └─ NuGet creates this structure automatically when you use the [`nuget add`](../reference/cli-reference/cli-ref-add.md) command to copy a package to the feed: diff --git a/docs/reference/nuspec.md b/docs/reference/nuspec.md index 0149ec269..1cc4130ad 100644 --- a/docs/reference/nuspec.md +++ b/docs/reference/nuspec.md @@ -147,6 +147,7 @@ If you use a custom license that isn't supported by license expressions, you can For the MSBuild equivalent, take a look at [Packing a license expression or a license file](msbuild-targets.md#packing-a-license-expression-or-a-license-file). The exact syntax of NuGet's license expressions is described below in [ABNF](https://tools.ietf.org/html/rfc5234). + ```cli license-id = @@ -169,7 +170,7 @@ license-expression = 1*1(simple-expression / compound-expression / UNLICENSED) > iconUrl is deprecated. Use icon instead. A URL for a 128x128 image with transparency background to use as the icon for the package in UI display. Be sure this element contains the *direct image URL* and not the URL of a web page containing the image. For example, to use an image from GitHub, use the raw file URL like https://github.com/\/\/raw/\/\. - + When uploading a package to nuget.org, the `iconUrl` field is limited to 4000 characters. #### icon @@ -265,14 +266,19 @@ display purposes. #### packageTypes *(3.5+)* A collection of zero or more `` elements specifying the type of the package if other than a traditional dependency package. Each packageType has attributes of *name* and *version*. See [Setting a package type](../create-packages/set-package-type.md). + #### dependencies A collection of zero or more `` elements specifying the dependencies for the package. Each dependency has attributes of *id*, *version*, *include* (3.x+), and *exclude* (3.x+). See [Dependencies](#dependencies-element) below. + #### frameworkAssemblies *(1.2+)* A collection of zero or more `` elements identifying .NET Framework assembly references that this package requires, which ensures that references are added to projects consuming the package. Each frameworkAssembly has *assemblyName* and *targetFramework* attributes. See [Specifying framework assembly references GAC](#specifying-framework-assembly-references-gac) below. + #### references *(1.5+)* A collection of zero or more `` elements naming assemblies in the package's `lib` folder that are added as project references. Each reference has a *file* attribute. `` can also contain a `` element with a *targetFramework* attribute, that then contains `` elements. If omitted, all references in `lib` are included. See [Specifying explicit assembly references](#specifying-explicit-assembly-references) below. + #### contentFiles *(3.3+)* A collection of `` elements that identify content files to include in the consuming project. These files are specified with a set of attributes that describe how they should be used within the project system. See [Specifying files to include in the package](#specifying-files-to-include-in-the-package) below. + #### files The `` node may contain a `` node as a sibling to ``, and a `` child under ``, to specify which assembly and content files to include in the package. See [Including assembly files](#including-assembly-files) and [Including content files](#including-content-files) later in this topic for details. @@ -529,66 +535,66 @@ Each `` element specifies the following attributes: **Single assembly** - Source file: - library.dll +Source file: + library.dll - .nuspec entry: - +.nuspec entry: + - Packaged result: - lib\library.dll +Packaged result: + lib\library.dll **Single assembly specific to a target framework** - Source file: - library.dll +Source file: + library.dll - .nuspec entry: - +.nuspec entry: + - Packaged result: - lib\net40\library.dll +Packaged result: + lib\net40\library.dll **Set of DLLs using a wildcard** - Source files: - bin\release\libraryA.dll - bin\release\libraryB.dll +Source files: + bin\release\libraryA.dll + bin\release\libraryB.dll - .nuspec entry: - +.nuspec entry: + - Packaged result: - lib\libraryA.dll - lib\libraryB.dll +Packaged result: + lib\libraryA.dll + lib\libraryB.dll **DLLs for different frameworks** - Source files: - lib\net40\library.dll - lib\net20\library.dll +Source files: + lib\net40\library.dll + lib\net20\library.dll - .nuspec entry (using ** recursive search): - +.nuspec entry (using ** recursive search): + - Packaged result: - lib\net40\library.dll - lib\net20\library.dll +Packaged result: + lib\net40\library.dll + lib\net20\library.dll **Excluding files** - Source files: - \tools\fileA.bak - \tools\fileB.bak - \tools\fileA.log - \tools\build\fileB.log +Source files: + \tools\fileA.bak + \tools\fileB.bak + \tools\fileA.log + \tools\build\fileB.log - .nuspec entries: - - +.nuspec entries: + + - Package result: - (no files) +Package result: + (no files) ## Including content files @@ -609,108 +615,108 @@ For content files, simply use the same format as for assembly files, but specify **Basic content files** - Source files: - css\mobile\style1.css - css\mobile\style2.css +Source files: + css\mobile\style1.css + css\mobile\style2.css - .nuspec entry: - +.nuspec entry: + - Packaged result: - content\css\mobile\style1.css - content\css\mobile\style2.css +Packaged result: + content\css\mobile\style1.css + content\css\mobile\style2.css **Content files with directory structure** - Source files: - css\mobile\style.css - css\mobile\wp7\style.css - css\browser\style.css +Source files: + css\mobile\style.css + css\mobile\wp7\style.css + css\browser\style.css - .nuspec entry: - +.nuspec entry: + - Packaged result: - content\css\mobile\style.css - content\css\mobile\wp7\style.css - content\css\browser\style.css +Packaged result: + content\css\mobile\style.css + content\css\mobile\wp7\style.css + content\css\browser\style.css **Content file specific to a target framework** - Source file: - css\cool\style.css +Source file: + css\cool\style.css - .nuspec entry - +.nuspec entry + - Packaged result: - content\style.css +Packaged result: + content\style.css **Content file copied to a folder with dot in name** In this case, NuGet sees that the extension in `target` does not match the extension in `src` and thus treats that part of the name in `target` as a folder: - Source file: - images\picture.png +Source file: + images\picture.png - .nuspec entry: - +.nuspec entry: + - Packaged result: - content\images\package.icons\picture.png +Packaged result: + content\images\package.icons\picture.png **Content files without extensions** To include files without an extension, use the `*` or `**` wildcards: - Source file: - flags\installed +Source file: + flags\installed - .nuspec entry: - +.nuspec entry: + - Packaged result: - flags\installed +Packaged result: + flags\installed **Content files with deep path and deep target** In this case, because the file extensions of the source and target match, NuGet assumes that the target is a file name and not a folder: - Source file: - css\cool\style.css +Source file: + css\cool\style.css - .nuspec entry: - - or: - +.nuspec entry: + + or: + - Packaged result: - content\css\cool\style.css +Packaged result: + content\css\cool\style.css **Renaming a content file in the package** - Source file: - ie\css\style.css +Source file: + ie\css\style.css - .nuspec entry: - +.nuspec entry: + - Packaged result: - content\css\ie.css +Packaged result: + content\css\ie.css **Excluding files** - Source file: - docs\*.txt (multiple files) +Source file: + docs\*.txt (multiple files) - .nuspec entry: - - or - +.nuspec entry: + + or + - Packaged result: - All .txt files from docs except admin.txt (first example) - All .txt files from docs except admin.txt and log.txt (second example) +Packaged result: + All .txt files from docs except admin.txt (first example) + All .txt files from docs except admin.txt and log.txt (second example) @@ -746,19 +752,19 @@ The package project should structure content using the following pattern: For example: - Language- and framework-agnostic: - /contentFiles/any/any/config.xml +Language- and framework-agnostic: + /contentFiles/any/any/config.xml - net45 content for all languages - /contentFiles/any/net45/config.xml +net45 content for all languages + /contentFiles/any/net45/config.xml - C#-specific content for net45 and up - /contentFiles/cs/net45/sample.cs +C#-specific content for net45 and up + /contentFiles/cs/net45/sample.cs Empty folders can use `.` to opt out of providing content for certain combinations of language and TxM, for example: - /contentFiles/vb/any/code.vb - /contentFiles/cs/any/. +/contentFiles/vb/any/code.vb +/contentFiles/cs/any/. #### Example contentFiles section From 113c37bc88f78e106b01c44359fe286b1d9300aa Mon Sep 17 00:00:00 2001 From: "Mike Jones (DEVUE)" Date: Fri, 22 Jan 2021 10:33:37 -0800 Subject: [PATCH 258/988] likewise --- .../consume-packages/Team-Foundation-Build.md | 8 +++++ .../Creating-Localized-Packages.md | 6 ++++ docs/create-packages/Prerelease-Packages.md | 2 ++ docs/create-packages/Symbol-Packages.md | 6 ++++ docs/guides/Create-UI-Controls.md | 10 ++++++ docs/hosting-packages/Local-Feeds.md | 2 ++ docs/reference/nuspec.md | 34 ++++++++++++++++++- 7 files changed, 67 insertions(+), 1 deletion(-) diff --git a/docs/consume-packages/Team-Foundation-Build.md b/docs/consume-packages/Team-Foundation-Build.md index 07e299903..31ad42f2a 100644 --- a/docs/consume-packages/Team-Foundation-Build.md +++ b/docs/consume-packages/Team-Foundation-Build.md @@ -49,6 +49,7 @@ Our demo project is a simple command line tool that uses the command line argume The structure of the repository looks as follows: +``` │ .gitignore │ .tfignore @@ -69,6 +70,7 @@ The structure of the repository looks as follows: └───tools └───NuGet nuget.exe +``` You can see that we haven't checked-in the `packages` folder nor any `.targets` files. @@ -93,6 +95,7 @@ To communicate to version control that we don’t intent to check-in the **packa The `.gitignore` file looks as follows: +``` syntax: glob *.user *.suo @@ -102,16 +105,20 @@ packages *.nupkg project.lock.json project.assets.json +``` The `.gitignore` file is [quite powerful](https://www.kernel.org/pub/software/scm/git/docs/gitignore.html). For example, if you want to generally not check-in the contents of the `packages` folder but want to go with previous guidance of checking in the `.targets` files you could have the following rule instead: +``` packages !packages/**/*.targets +``` This will exclude all `packages` folders but will re-include all contained `.targets` files. By the way, you can find a template for `.gitignore` files that is specifically tailored for the needs of Visual Studio developers [here](https://github.com/github/gitignore/blob/master/VisualStudio.gitignore). TF version control supports a very similar mechanism via the [.tfignore](/vsts/tfvc/add-files-server#customize-which-files-are-ignored-by-version-control) file. The syntax is virtually the same: +``` *.user *.suo bin @@ -120,6 +127,7 @@ packages *.nupkg project.lock.json project.assets.json +``` ## build.proj diff --git a/docs/create-packages/Creating-Localized-Packages.md b/docs/create-packages/Creating-Localized-Packages.md index ddc3344d5..bb8385772 100644 --- a/docs/create-packages/Creating-Localized-Packages.md +++ b/docs/create-packages/Creating-Localized-Packages.md @@ -22,6 +22,7 @@ Including localized resource assemblies in a single package is typically the sim For example, the following folder structure supports, German (de), Italian (it), Japanese (ja), Russian (ru), Chinese (Simplified) (zh-Hans), and Chinese (Traditional) (zh-Hant): +``` lib └───net40 │ Contoso.Utilities.dll @@ -50,6 +51,7 @@ lib └───zh-Hant Contoso.Utilities.resources.dll Contoso.Utilities.xml +``` You can see that the languages are all listed underneath the `net40` target framework folder. If you're [supporting multiple frameworks](../create-packages/supporting-multiple-target-frameworks.md), then you have a folder under `lib` for each variant. @@ -87,10 +89,12 @@ Similar to how .NET Framework supports satellite assemblies, this method separat Do to this, your primary package uses the naming convention `{identifier}.{version}.nupkg` and contains the assembly for the default language (such as en-US). For example, `ContosoUtilities.1.0.0.nupkg` would contain the following structure: +``` lib └───net40 ContosoUtilities.dll ContosoUtilities.xml +``` A satellite assembly then uses the naming convention `{identifier}.{language}.{version}.nupkg`, such as `ContosoUtilities.de.1.0.0.nupkg`. The identifier **must** exactly match that of the primary package. @@ -100,11 +104,13 @@ The satellite assembly **must** also declare an exact version of the primary pac The satellite package's structure must then include the resource assembly and XML IntelliSense file in a subfolder that matches `{language}` in the package filename: +``` lib └───net40 └───de ContosoUtilities.resources.dll ContosoUtilities.xml +``` **Note**: unless specific subcultures such as `ja-JP` are necessary, always use the higher level language identifier, like `ja`. diff --git a/docs/create-packages/Prerelease-Packages.md b/docs/create-packages/Prerelease-Packages.md index 6aea247a6..3b487f89b 100644 --- a/docs/create-packages/Prerelease-Packages.md +++ b/docs/create-packages/Prerelease-Packages.md @@ -72,6 +72,7 @@ With this in mind, it's generally good to follow recognized naming conventions s Whatever suffixes you use, however, NuGet will give them precedence in reverse alphabetical order: +``` 1.0.1 1.0.1-zzz 1.0.1-rc @@ -81,6 +82,7 @@ Whatever suffixes you use, however, NuGet will give them precedence in reverse a 1.0.1-beta 1.0.1-alpha.2 1.0.1-alpha +``` As shown, the version without any suffix will always take precedence over pre-release versions. diff --git a/docs/create-packages/Symbol-Packages.md b/docs/create-packages/Symbol-Packages.md index 3c1698417..6a49f689e 100644 --- a/docs/create-packages/Symbol-Packages.md +++ b/docs/create-packages/Symbol-Packages.md @@ -41,6 +41,7 @@ A legacy symbol package can target multiple target frameworks in the same way th For example, a legacy symbol package that targets .NET 4.0 and Silverlight 4 would have this layout: +``` \lib \net40 \MyAssembly.dll @@ -48,9 +49,11 @@ For example, a legacy symbol package that targets .NET 4.0 and Silverlight 4 wou \sl40 \MyAssembly.dll \MyAssembly.pdb +``` Source files are then placed in a separate special folder named `src`, which must follow the relative structure of your source repository. This is because PDBs contain absolute paths to source files used to compile the matching DLL, and they need to be found during the publishing process. A base path (common path prefix) can be stripped out. For example, consider a library built from these files: +``` C:\Projects \MyProject \Common @@ -64,9 +67,11 @@ C:\Projects \AssemblyInfo.cs \MySilverlightExtensions.cs \MyAssembly.csproj (producing \lib\sl4\MyAssembly.dll) +``` Apart from the `lib` folder, a legacy symbol package would need to contain this layout: +``` \src \Common \MyClass.cs @@ -77,6 +82,7 @@ Apart from the `lib` folder, a legacy symbol package would need to contain this \Properties \AssemblyInfo.cs \MySilverlightExtensions.cs +``` ## Referring to files in the nuspec diff --git a/docs/guides/Create-UI-Controls.md b/docs/guides/Create-UI-Controls.md index 8a42106d4..7a9520ff1 100644 --- a/docs/guides/Create-UI-Controls.md +++ b/docs/guides/Create-UI-Controls.md @@ -31,10 +31,12 @@ Alternately, edit the the project file to add `true Edit a Copy](/windows/uwp/controls-and-patterns/xaml-styles#modify-the-default-system-styles)** feature works, you must include the `Generic.xaml` and any resource dictionaries that it merges in the `\Themes` folder (again, using your actual assembly name). (This file has no impact on the runtime behavior of a control.) The folder structure would thus appear as follows: +``` \lib \uap10.0.14393 \Design @@ -125,9 +132,11 @@ To configure where the control properties show up in the property inspector, add \your_assembly_name \Themes Generic.xaml +``` For WPF, continuing with the example where you would like your WPF controls package to be consumed by projects targeting .NET Framework v4.6.1 or higher: +``` \lib \net461 \Design @@ -135,6 +144,7 @@ For WPF, continuing with the example where you would like your WPF controls pack \your_assembly_name \Themes Generic.xaml +``` > [!Note] > By default, control properties will show up under the Miscellaneous category in the property inspector. diff --git a/docs/hosting-packages/Local-Feeds.md b/docs/hosting-packages/Local-Feeds.md index 3babf8f1e..de95954d3 100644 --- a/docs/hosting-packages/Local-Feeds.md +++ b/docs/hosting-packages/Local-Feeds.md @@ -20,11 +20,13 @@ To enable the source, add its pathname (such as `\\myserver\packages`) to the li The hierarchical versioned folder tree has the following general structure: +``` \\myserver\packages └─ └─ ├─..nupkg └─ +``` NuGet creates this structure automatically when you use the [`nuget add`](../reference/cli-reference/cli-ref-add.md) command to copy a package to the feed: diff --git a/docs/reference/nuspec.md b/docs/reference/nuspec.md index 1cc4130ad..9314f696f 100644 --- a/docs/reference/nuspec.md +++ b/docs/reference/nuspec.md @@ -535,6 +535,7 @@ Each `` element specifies the following attributes: **Single assembly** +``` Source file: library.dll @@ -543,9 +544,11 @@ Source file: Packaged result: lib\library.dll +``` **Single assembly specific to a target framework** +``` Source file: library.dll @@ -554,9 +557,11 @@ Source file: Packaged result: lib\net40\library.dll +``` **Set of DLLs using a wildcard** +``` Source files: bin\release\libraryA.dll bin\release\libraryB.dll @@ -567,9 +572,11 @@ Source files: Packaged result: lib\libraryA.dll lib\libraryB.dll +``` **DLLs for different frameworks** +``` Source files: lib\net40\library.dll lib\net20\library.dll @@ -580,9 +587,11 @@ Source files: Packaged result: lib\net40\library.dll lib\net20\library.dll +``` **Excluding files** +``` Source files: \tools\fileA.bak \tools\fileB.bak @@ -595,6 +604,7 @@ Source files: Package result: (no files) +``` ## Including content files @@ -615,6 +625,7 @@ For content files, simply use the same format as for assembly files, but specify **Basic content files** +``` Source files: css\mobile\style1.css css\mobile\style2.css @@ -625,9 +636,11 @@ Source files: Packaged result: content\css\mobile\style1.css content\css\mobile\style2.css +``` **Content files with directory structure** +``` Source files: css\mobile\style.css css\mobile\wp7\style.css @@ -640,9 +653,11 @@ Packaged result: content\css\mobile\style.css content\css\mobile\wp7\style.css content\css\browser\style.css +``` **Content file specific to a target framework** +``` Source file: css\cool\style.css @@ -651,11 +666,13 @@ Source file: Packaged result: content\style.css +``` **Content file copied to a folder with dot in name** In this case, NuGet sees that the extension in `target` does not match the extension in `src` and thus treats that part of the name in `target` as a folder: +``` Source file: images\picture.png @@ -664,11 +681,13 @@ Source file: Packaged result: content\images\package.icons\picture.png +``` **Content files without extensions** To include files without an extension, use the `*` or `**` wildcards: +``` Source file: flags\installed @@ -677,11 +696,13 @@ Source file: Packaged result: flags\installed +``` **Content files with deep path and deep target** In this case, because the file extensions of the source and target match, NuGet assumes that the target is a file name and not a folder: +``` Source file: css\cool\style.css @@ -692,9 +713,11 @@ Source file: Packaged result: content\css\cool\style.css +``` **Renaming a content file in the package** +``` Source file: ie\css\style.css @@ -703,9 +726,11 @@ Source file: Packaged result: content\css\ie.css +``` **Excluding files** +``` Source file: docs\*.txt (multiple files) @@ -717,6 +742,7 @@ Source file: Packaged result: All .txt files from docs except admin.txt (first example) All .txt files from docs except admin.txt and log.txt (second example) +``` @@ -744,7 +770,9 @@ When installing a package, NuGet applies the child elements of `` The package project should structure content using the following pattern: - /contentFiles/{codeLanguage}/{TxM}/{any?} +``` +/contentFiles/{codeLanguage}/{TxM}/{any?} +``` - `codeLanguages` may be `cs`, `vb`, `fs`, `any`, or the lowercase equivalent of a given `$(ProjectLanguage)` - `TxM` is any legal target framework moniker that NuGet supports (see [Target frameworks](../reference/target-frameworks.md)). @@ -752,6 +780,7 @@ The package project should structure content using the following pattern: For example: +``` Language- and framework-agnostic: /contentFiles/any/any/config.xml @@ -760,11 +789,14 @@ net45 content for all languages C#-specific content for net45 and up /contentFiles/cs/net45/sample.cs +``` Empty folders can use `.` to opt out of providing content for certain combinations of language and TxM, for example: +``` /contentFiles/vb/any/code.vb /contentFiles/cs/any/. +``` #### Example contentFiles section From f9fbb8cd24c706ab8f2ad868b1b2609fac4cf9a2 Mon Sep 17 00:00:00 2001 From: "Mike Jones (DEVUE)" Date: Fri, 22 Jan 2021 10:41:33 -0800 Subject: [PATCH 259/988] corrections --- docs/archive/project-json-and-uwp.md | 8 ++++++++ docs/concepts/Package-Versioning.md | 4 ++++ docs/consume-packages/configuring-nuget-behavior.md | 2 ++ .../Supporting-Multiple-Target-Frameworks.md | 12 ++++++++++++ 4 files changed, 26 insertions(+) diff --git a/docs/archive/project-json-and-uwp.md b/docs/archive/project-json-and-uwp.md index 6a348757d..b36ab5d20 100644 --- a/docs/archive/project-json-and-uwp.md +++ b/docs/archive/project-json-and-uwp.md @@ -68,11 +68,13 @@ The behavior of the `lib` folder hasn't changed significantly in NuGet v3. Howev An example lib structure: +``` lib ├───net40 │ MyLibrary.dll └───wp81 MyLibrary.dll +``` The `lib` folder contains assemblies that are used at runtime. For most packages a folder under `lib` for each of the target TxMs is all that is required. @@ -86,6 +88,7 @@ Mechanically, the assemblies included in the `ref` folder are the reference asse The structure of the `ref` folder is the same as `lib`, for example: +``` └───MyImageProcessingLib ├───lib │ ├───net40 @@ -103,6 +106,7 @@ The structure of the `ref` folder is the same as `lib`, for example: │ └───portable-net451-win81 MyImageProcessingLibrary.dll +``` In this example the assemblies in the `ref` directories would all be identical. @@ -114,6 +118,7 @@ The runtimes folder contains assemblies and native libraries required to run on The following example shows a package that has a purely managed implementation for several platforms, but uses native helpers on Windows 8 where it can call into Windows 8-specific native APIs. +``` └───MyLibrary ├───lib │ └───net40 @@ -135,6 +140,7 @@ The following example shows a package that has a purely managed implementation f │ └───native MyNativeLibrary.dll +``` Given the above package the following things happen: @@ -150,6 +156,7 @@ Only a single `lib` folder is ever be picked, so if there is a runtime specific Another way to use runtimes is to ship a package that is purely a managed wrapper over a native assembly. In this scenario you create a package like the following: +``` └───MyLibrary └───runtimes ├───win8-x64 @@ -167,6 +174,7 @@ Another way to use runtimes is to ship a package that is purely a managed wrappe │ └───native MyImplementation.dll +``` In this case there is no top-level `lib` folder as that folder as there is no implementation of this package that doesn't rely on the corresponding native assembly. If the managed assembly, `MyLibrary.dll`, was exactly the same in both of these cases then we could put it in a top level `lib` folder, but because the lack of a native assembly doesn't cause the package to fail installing if it was installed on a platform that wasn't win-x86 or win-x64 then the top level lib would be used but no native assembly would be copied. diff --git a/docs/concepts/Package-Versioning.md b/docs/concepts/Package-Versioning.md index b2d29e768..e76775f8f 100644 --- a/docs/concepts/Package-Versioning.md +++ b/docs/concepts/Package-Versioning.md @@ -31,10 +31,12 @@ A specific version number is in the form *Major.Minor.Patch[-Suffix]*, where the **Examples:** +``` 1.0.1 6.11.1231 4.3.1-rc 2.2.44-beta1 +``` > [!Important] > nuget.org rejects any package upload that lacks an exact version number. The version must be specified in the `.nuspec` or project file used to create the package. @@ -54,6 +56,7 @@ That said, package developers generally follow recognized naming conventions: When resolving package references and multiple package versions differ only by suffix, NuGet chooses a version without a suffix first, then applies precedence to pre-release versions in reverse alphabetical order. For example, the following versions would be chosen in the exact order shown: +``` 1.0.1 1.0.1-zzz 1.0.1-rc @@ -62,6 +65,7 @@ When resolving package references and multiple package versions differ only by s 1.0.1-alpha2 1.0.1-alpha 1.0.1-aaa +``` ## Semantic Versioning 2.0.0 diff --git a/docs/consume-packages/configuring-nuget-behavior.md b/docs/consume-packages/configuring-nuget-behavior.md index 64e68e5a1..c486fcd6c 100644 --- a/docs/consume-packages/configuring-nuget-behavior.md +++ b/docs/consume-packages/configuring-nuget-behavior.md @@ -115,6 +115,7 @@ As NuGet finds settings in these files, they are applied as follows: Let's say you have the following folder structure on two separate drives: +``` disk_drive_1 User disk_drive_2 @@ -123,6 +124,7 @@ disk_drive_2 Project2 Source tmp +``` You then have four `NuGet.Config` files in the following locations with the given content. (The computer-level file is not included in this example, but would behave similarly to the user-level file.) diff --git a/docs/create-packages/Supporting-Multiple-Target-Frameworks.md b/docs/create-packages/Supporting-Multiple-Target-Frameworks.md index 5f478a06d..91576a3c8 100644 --- a/docs/create-packages/Supporting-Multiple-Target-Frameworks.md +++ b/docs/create-packages/Supporting-Multiple-Target-Frameworks.md @@ -19,7 +19,9 @@ You must manually lay out the package as described in this article when using th When building a package that contains only one version of a library or target multiple frameworks, you always make subfolders under `lib` using different case-sensitive framework names with the following convention: +``` lib\{framework name}[{version}] +``` For a complete list of supported names, see the [Target Frameworks reference](../reference/target-frameworks.md#supported-frameworks). @@ -27,6 +29,7 @@ You should never have a version of the library that is not specific to a framewo For example, the following folder structure supports four versions of an assembly that are framework-specific: +``` \lib \net46 \MyAssembly.dll @@ -36,6 +39,7 @@ For example, the following folder structure supports four versions of an assembl \MyAssembly.dll \netcore \MyAssembly.dll +``` To easily include all these files when building the package, use a recursive `**` wildcard in the `` section of your `.nuspec`: @@ -49,6 +53,7 @@ To easily include all these files when building the package, use a recursive `** If you have architecture-specific assemblies, that is, separate assemblies that target ARM, x86, and x64, you must place them in a folder named `runtimes` within sub-folders named `{platform}-{architecture}\lib\{framework}` or `{platform}-{architecture}\native`. For example, the following folder structure would accommodate both native and managed DLLs targeting Windows 10 and the `uap10.0` framework: +``` \runtimes \win10-arm \native @@ -59,6 +64,7 @@ If you have architecture-specific assemblies, that is, separate assemblies that \win10-x64 \native \lib\uap10.0 +``` These assemblies will only be available at runtime, so if you want to provide the corresponding compile time assembly as well then have `AnyCPU` assembly in `/ref/{tfm}` folder. @@ -76,11 +82,13 @@ If a match is not found, NuGet copies the assembly for the highest version that For example, consider the following folder structure in a package: +``` \lib \net45 \MyAssembly.dll \net461 \MyAssembly.dll +``` When installing this package in a project that targets .NET Framework 4.6, NuGet installs the assembly in the `net45` folder, because that's the highest available version that's less than or equal to 4.6. @@ -92,12 +100,14 @@ If the project targets .NET framework 4.0 and earlier, NuGet throws an appropria NuGet copies assemblies from only a single library folder in the package. For example, suppose a package has the following folder structure: +``` \lib \net40 \MyAssembly.dll (v1.0) \MyAssembly.Core.dll (v1.0) \net45 \MyAssembly.dll (v2.0) +``` When the package is installed in a project that targets .NET Framework 4.5, `MyAssembly.dll` (v2.0) is the only assembly installed. `MyAssembly.Core.dll` (v1.0) is not installed because it's not listed in the `net45` folder. NuGet behaves this way because `MyAssembly.Core.dll` might have merged into version 2.0 of `MyAssembly.dll`. @@ -157,6 +167,7 @@ When packaging libraries targeting the Portable Class Library it can be tricky t With `packages.config`, content files and PowerShell scripts can be grouped by target framework using the same folder convention inside the `content` and `tools` folders. For example: +``` \content \net46 \MyContent.txt @@ -173,6 +184,7 @@ With `packages.config`, content files and PowerShell scripts can be grouped by t \uap install.ps1 uninstall.ps1 +``` If a framework folder is left empty, NuGet doesn't add assembly references or content files or run the PowerShell scripts for that framework. From fe5a22a54592ceec3082cfc0faa4adfd1de26f74 Mon Sep 17 00:00:00 2001 From: "Mike Jones (DEVUE)" Date: Fri, 22 Jan 2021 11:06:28 -0800 Subject: [PATCH 260/988] More fixes --- docs/guides/analyzers-conventions.md | 4 +- .../nuget-exe-Credential-Providers.md | 8 +- docs/release-notes/Known-Issues.md | 106 ++++++++++-------- docs/release-notes/NuGet-1.3.md | 10 ++ docs/release-notes/NuGet-1.4.md | 10 ++ docs/release-notes/NuGet-1.5.md | 4 +- docs/release-notes/NuGet-2.0.md | 36 +++--- docs/release-notes/NuGet-2.1.md | 32 ++++-- docs/release-notes/NuGet-2.7.2.md | 12 +- docs/release-notes/NuGet-2.7.md | 24 ++-- docs/release-notes/NuGet-2.8.md | 54 +++++---- docs/release-notes/NuGet-3.1.md | 4 +- 12 files changed, 183 insertions(+), 121 deletions(-) diff --git a/docs/guides/analyzers-conventions.md b/docs/guides/analyzers-conventions.md index 58337d4f1..87e0beadc 100644 --- a/docs/guides/analyzers-conventions.md +++ b/docs/guides/analyzers-conventions.md @@ -38,7 +38,9 @@ Also note that because this package has no platform-specific requirements, the ` The use of the `analyzers` folder is similar to that used for [target frameworks](../create-packages/supporting-multiple-target-frameworks.md), except the specifiers in the path describe development host dependencies instead of build-time. The general format is as follows: - $/analyzers/{framework_name}{version}/{supported_architecture}/{supported_language}/{analyzer_name}.dll +``` +$/analyzers/{framework_name}{version}/{supported_architecture}/{supported_language}/{analyzer_name}.dll +``` - **framework_name** and **version**: the *optional* API surface area of the .NET Framework that the contained DLLs need to run. `dotnet` is presently the only valid value because Roslyn is the only host that can run analyzers. If no target is specified, DLLs are assumed to apply to *all* targets. - **supported_language**: the language for which the DLL applies, one of `cs` (C#) and `vb` (Visual Basic), and `fs` (F#). The language indicates that the analyzer should be loaded only for a project using that language. If no language is specified then the DLL is assumed to apply to *all* languages that support analyzers. diff --git a/docs/reference/extensibility/nuget-exe-Credential-Providers.md b/docs/reference/extensibility/nuget-exe-Credential-Providers.md index 67d55ae3b..520083e37 100644 --- a/docs/reference/extensibility/nuget-exe-Credential-Providers.md +++ b/docs/reference/extensibility/nuget-exe-Credential-Providers.md @@ -65,9 +65,11 @@ A provider must do the following: Example stdout: - { "Username" : "freddy@example.com", - "Password" : "bwm3bcx6txhprzmxhl2x63mdsul6grctazoomtdb6kfbof7m3a3z", - "Message" : "" } +``` +{ "Username" : "freddy@example.com", + "Password" : "bwm3bcx6txhprzmxhl2x63mdsul6grctazoomtdb6kfbof7m3a3z", + "Message" : "" } +``` ## Troubleshooting a credential provider diff --git a/docs/release-notes/Known-Issues.md b/docs/release-notes/Known-Issues.md index 5476c5c08..a23680c06 100644 --- a/docs/release-notes/Known-Issues.md +++ b/docs/release-notes/Known-Issues.md @@ -64,7 +64,9 @@ This is caused by the type library for the `VSLangProj.dll` COM component being Run this command from an **elevated prompt** to re-register the type library for `VSLangProj.dll` - regsvr32 "C:\Program Files (x86)\Common Files\microsoft shared\MSEnv\VsLangproj.olb" +``` +regsvr32 "C:\Program Files (x86)\Common Files\microsoft shared\MSEnv\VsLangproj.olb" +``` If the command fails, check to see if the file exists in that location. @@ -93,41 +95,45 @@ Alternatively, the workaround is to simply uninstall NuGet (while running Visual When running the Package Manager console, you may run into the following exception message if you have the Reflector VS Add-in installed. - The following error occurred while loading the extended type data file: - Microsoft.PowerShell.Core, C:\Windows\SysWOW64\WindowsPowerShell\v1.0\types.ps1xml(2950) : - Error in type "System.Security.AccessControl.ObjectSecurity": - Exception: Cannot convert the "Microsoft.PowerShell.Commands.SecurityDescriptorCommandsBase" - value of type "System.String" to type "System.Type". - System.Management.Automation.ActionPreferenceStopException: - Command execution stopped because the preference variable "ErrorActionPreference" or common parameter - is set to Stop: Unable to find type +``` +The following error occurred while loading the extended type data file: +Microsoft.PowerShell.Core, C:\Windows\SysWOW64\WindowsPowerShell\v1.0\types.ps1xml(2950) : +Error in type "System.Security.AccessControl.ObjectSecurity": +Exception: Cannot convert the "Microsoft.PowerShell.Commands.SecurityDescriptorCommandsBase" +value of type "System.String" to type "System.Type". +System.Management.Automation.ActionPreferenceStopException: +Command execution stopped because the preference variable "ErrorActionPreference" or common parameter +is set to Stop: Unable to find type +``` or - System.Management.Automation.CmdletInvocationException: Could not load file or assembly 'Scripts\nuget.psm1' or one of its dependencies.
The parameter is incorrect. (Exception from HRESULT: 0x80070057 (E_INVALIDARG)) ---> System.IO.FileLoadException: Could not load file or
assembly 'Scripts\nuget.psm1' or one of its dependencies. The parameter is incorrect. (Exception from HRESULT: 0x80070057 (E_INVALIDARG))
---> System.ArgumentException: Illegal characters in path. - at System.IO.Path.CheckInvalidPathChars(String path) - at System.IO.Path.Combine(String path1, String path2) - at Microsoft.VisualStudio.Platform.VsAppDomainManager.d__1.MoveNext() - at Microsoft.VisualStudio.Platform.VsAppDomainManager.InnerResolveHandler(String name) - at Microsoft.VisualStudio.Platform.VsAppDomainManager.ResolveHandler(Object sender, ResolveEventArgs args) - at System.AppDomain.OnAssemblyResolveEvent(RuntimeAssembly assembly, String assemblyFullName) - --- End of inner exception stack trace --- - at Microsoft.PowerShell.Commands.ModuleCmdletBase.LoadBinaryModule(Boolean trySnapInName, String moduleName, String fileName,
Assembly assemblyToLoad, String moduleBase, SessionState ss, String prefix, Boolean loadTypes, Boolean loadFormats, Boolean& found) - at Microsoft.PowerShell.Commands.ModuleCmdletBase.LoadModuleNamedInManifest(String moduleName, String moduleBase,
Boolean searchModulePath,
String prefix, SessionState ss, Boolean loadTypesFiles, Boolean loadFormatFiles, Boolean& found) - at Microsoft.PowerShell.Commands.ModuleCmdletBase.LoadModuleManifest(ExternalScriptInfo scriptInfo, ManifestProcessingFlags
manifestProcessingFlags, Version version) - at Microsoft.PowerShell.Commands.ModuleCmdletBase.LoadModule(String fileName, String moduleBase, String prefix, SessionState ss,
Boolean& found) - at Microsoft.PowerShell.Commands.ImportModuleCommand.ProcessRecord() - at System.Management.Automation.Cmdlet.DoProcessRecord() - at System.Management.Automation.CommandProcessor.ProcessRecord() - --- End of inner exception stack trace --- - at System.Management.Automation.Runspaces.PipelineBase.Invoke(IEnumerable input) - at System.Management.Automation.Runspaces.Pipeline.Invoke() - at NuGetConsole.Host.PowerShell.Implementation.PowerShellHost.Invoke(String command, Object input, Boolean outputResults) - at NuGetConsole.Host.PowerShell.Implementation.PowerShellHostExtensions.ImportModule(PowerShellHost host, String modulePath) - at NuGetConsole.Host.PowerShell.Implementation.PowerShellHost.LoadStartupScripts() - at NuGetConsole.Host.PowerShell.Implementation.PowerShellHost.Initialize() - at NuGetConsole.Implementation.Console.ConsoleDispatcher.Start() - at NuGetConsole.Implementation.PowerConsoleToolWindow.MoveFocus(FrameworkElement consolePane) +``` +System.Management.Automation.CmdletInvocationException: Could not load file or assembly 'Scripts\nuget.psm1' or one of its dependencies.
The parameter is incorrect. (Exception from HRESULT: 0x80070057 (E_INVALIDARG)) ---> System.IO.FileLoadException: Could not load file or
assembly 'Scripts\nuget.psm1' or one of its dependencies. The parameter is incorrect. (Exception from HRESULT: 0x80070057 (E_INVALIDARG))
---> System.ArgumentException: Illegal characters in path. + at System.IO.Path.CheckInvalidPathChars(String path) + at System.IO.Path.Combine(String path1, String path2) + at Microsoft.VisualStudio.Platform.VsAppDomainManager.d__1.MoveNext() + at Microsoft.VisualStudio.Platform.VsAppDomainManager.InnerResolveHandler(String name) + at Microsoft.VisualStudio.Platform.VsAppDomainManager.ResolveHandler(Object sender, ResolveEventArgs args) + at System.AppDomain.OnAssemblyResolveEvent(RuntimeAssembly assembly, String assemblyFullName) + --- End of inner exception stack trace --- + at Microsoft.PowerShell.Commands.ModuleCmdletBase.LoadBinaryModule(Boolean trySnapInName, String moduleName, String fileName,
Assembly assemblyToLoad, String moduleBase, SessionState ss, String prefix, Boolean loadTypes, Boolean loadFormats, Boolean& found) + at Microsoft.PowerShell.Commands.ModuleCmdletBase.LoadModuleNamedInManifest(String moduleName, String moduleBase,
Boolean searchModulePath,
String prefix, SessionState ss, Boolean loadTypesFiles, Boolean loadFormatFiles, Boolean& found) + at Microsoft.PowerShell.Commands.ModuleCmdletBase.LoadModuleManifest(ExternalScriptInfo scriptInfo, ManifestProcessingFlags
manifestProcessingFlags, Version version) + at Microsoft.PowerShell.Commands.ModuleCmdletBase.LoadModule(String fileName, String moduleBase, String prefix, SessionState ss,
Boolean& found) + at Microsoft.PowerShell.Commands.ImportModuleCommand.ProcessRecord() + at System.Management.Automation.Cmdlet.DoProcessRecord() + at System.Management.Automation.CommandProcessor.ProcessRecord() + --- End of inner exception stack trace --- + at System.Management.Automation.Runspaces.PipelineBase.Invoke(IEnumerable input) + at System.Management.Automation.Runspaces.Pipeline.Invoke() + at NuGetConsole.Host.PowerShell.Implementation.PowerShellHost.Invoke(String command, Object input, Boolean outputResults) + at NuGetConsole.Host.PowerShell.Implementation.PowerShellHostExtensions.ImportModule(PowerShellHost host, String modulePath) + at NuGetConsole.Host.PowerShell.Implementation.PowerShellHost.LoadStartupScripts() + at NuGetConsole.Host.PowerShell.Implementation.PowerShellHost.Initialize() + at NuGetConsole.Implementation.Console.ConsoleDispatcher.Start() + at NuGetConsole.Implementation.PowerConsoleToolWindow.MoveFocus(FrameworkElement consolePane) +``` We've contacted the author of the add-in in the hopes of working out a resolution. @@ -137,12 +143,14 @@ We've contacted the author of the add-in in the hopes of working out a resolutio You might see these errors when trying to open the Package Manager Console: - The following error occurred while loading the extended type data file: Microsoft.PowerShell.Core, C:\Windows\SysWOW64\WindowsPowerShell\v1.0\types.ps1xml(2977) : Error in type "System.Security.AccessControl.ObjectSecurity": Exception: The getter method should be public, non void, static, and have one parameter of type PSObject. - The following error occurred while loading the extended type data file: Microsoft.PowerShell.Core, C:\Windows\SysWOW64\WindowsPowerShell\v1.0\types.ps1xml(2984) : Error in type "System.Security.AccessControl.ObjectSecurity": Exception: The getter method should be public, non void, static, and have one parameter of type PSObject. - The following error occurred while loading the extended type data file: Microsoft.PowerShell.Core, C:\Windows\SysWOW64\WindowsPowerShell\v1.0\types.ps1xml(2991) : Error in type "System.Security.AccessControl.ObjectSecurity": Exception: The getter method should be public, non void, static, and have one parameter of type PSObject. - The following error occurred while loading the extended type data file: Microsoft.PowerShell.Core, C:\Windows\SysWOW64\WindowsPowerShell\v1.0\types.ps1xml(2998) : Error in type "System.Security.AccessControl.ObjectSecurity": Exception: The getter method should be public, non void, static, and have one parameter of type PSObject. - The following error occurred while loading the extended type data file: Microsoft.PowerShell.Core, C:\Windows\SysWOW64\WindowsPowerShell\v1.0\types.ps1xml(3005) : Error in type "System.Security.AccessControl.ObjectSecurity": Exception: The getter method should be public, non void, static, and have one parameter of type PSObject. - The term 'Get-ExecutionPolicy' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again. +``` +The following error occurred while loading the extended type data file: Microsoft.PowerShell.Core, C:\Windows\SysWOW64\WindowsPowerShell\v1.0\types.ps1xml(2977) : Error in type "System.Security.AccessControl.ObjectSecurity": Exception: The getter method should be public, non void, static, and have one parameter of type PSObject. +The following error occurred while loading the extended type data file: Microsoft.PowerShell.Core, C:\Windows\SysWOW64\WindowsPowerShell\v1.0\types.ps1xml(2984) : Error in type "System.Security.AccessControl.ObjectSecurity": Exception: The getter method should be public, non void, static, and have one parameter of type PSObject. +The following error occurred while loading the extended type data file: Microsoft.PowerShell.Core, C:\Windows\SysWOW64\WindowsPowerShell\v1.0\types.ps1xml(2991) : Error in type "System.Security.AccessControl.ObjectSecurity": Exception: The getter method should be public, non void, static, and have one parameter of type PSObject. +The following error occurred while loading the extended type data file: Microsoft.PowerShell.Core, C:\Windows\SysWOW64\WindowsPowerShell\v1.0\types.ps1xml(2998) : Error in type "System.Security.AccessControl.ObjectSecurity": Exception: The getter method should be public, non void, static, and have one parameter of type PSObject. +The following error occurred while loading the extended type data file: Microsoft.PowerShell.Core, C:\Windows\SysWOW64\WindowsPowerShell\v1.0\types.ps1xml(3005) : Error in type "System.Security.AccessControl.ObjectSecurity": Exception: The getter method should be public, non void, static, and have one parameter of type PSObject. +The term 'Get-ExecutionPolicy' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again. +``` If so, follow the solution [discussed on StackOverflow](http://stackoverflow.com/questions/12638289/embedding-powershell-v2-0-in-net-app-on-windows-8-rtm) to fix them. @@ -185,11 +193,13 @@ After following these steps, you should be able to continue. You might get the following error if you installs FluentNHibernate with the Package Manager console and then compile your project with "Code Analysis" turned on. - Error 3 CA0058 : The referenced assembly - 'NHibernate, Version=3.0.0.2001, Culture=neutral, PublicKeyToken=aa95f207798dfdb4' - could not be found. This assembly is required for analysis and was referenced by: - C:\temp\Scratch\src\MyProject.UnitTests\bin\Debug\MyProject.UnitTests.dll. - MyProject.UnitTests +``` +Error 3 CA0058 : The referenced assembly +'NHibernate, Version=3.0.0.2001, Culture=neutral, PublicKeyToken=aa95f207798dfdb4' +could not be found. This assembly is required for analysis and was referenced by: +C:\temp\Scratch\src\MyProject.UnitTests\bin\Debug\MyProject.UnitTests.dll. +MyProject.UnitTests +``` By default, FluentNHibernate requires NHibernate 3.0.0.2001. However, by design NuGet will install NHibernate 3.0.0.4000 in your project and add the appropriate binding redirects so that it will work. You project will compile just fine if code analysis is not turned on. In contrast to the compiler, code analysis tool doesn't properly follow the binding redirects to use 3.0.0.4000 instead of 3.0.0.2001. You can work around the issue by either installing NHibernate 3.0.0.2001 or tell the code analysis tool to behave the same as the compiler by doing the following: @@ -201,7 +211,9 @@ By default, FluentNHibernate requires NHibernate 3.0.0.2001. However, by design This is a known issue. Instead of calling Write-Error, try calling throw. - throw "My error message" +``` +throw "My error message" +``` ## Installing NuGet with restricted access on Windows 2003 can crash Visual Studio @@ -215,7 +227,9 @@ Clicking OK with that checked crashes Visual Studio. Make sure to uncheck that o Windows Phone Tools does not have support for the Visual Studio Extension Manager. In order to uninstall NuGet, run the following command. - vsixinstaller.exe /uninstall:NuPackToolsVsix.Microsoft.67e54e40-0ae3-42c5-a949-fddf5739e7a5 +``` +vsixinstaller.exe /uninstall:NuPackToolsVsix.Microsoft.67e54e40-0ae3-42c5-a949-fddf5739e7a5 +``` ## Changing the capitalization of NuGet package IDs breaks package restore diff --git a/docs/release-notes/NuGet-1.3.md b/docs/release-notes/NuGet-1.3.md index 91072d770..1074a060c 100644 --- a/docs/release-notes/NuGet-1.3.md +++ b/docs/release-notes/NuGet-1.3.md @@ -31,25 +31,35 @@ This command makes it easy to get to the project page for a package from within Console. It also provides options to open the license URL and the report abuse page for the package. The syntax for the command is: + ``` Open-PackagePage -Id [-Version] [-Source] [-License] [-ReportAbuse] [-PassThru] + ``` The `-PassThru` option is used to return the value of the specified URL. Examples: + ``` PM> Open-PackagePage Ninject + ``` Opens a browser to the project URL specified in the Ninject package. + ``` PM> Open-PackagePage Ninject -License + ``` Opens a browser to the license URL specified in the Ninject package. + ``` PM> Open-PackagePage Ninject -ReportAbuse + ``` Opens a browser to the URL at the current package source used to report abuse for the specified package. + ``` PM> $url = Open-PackagePage Ninject -License -WhatIf -PassThru + ``` Assigns the license URL to the variable, $url, without opening the URL in a browser. diff --git a/docs/release-notes/NuGet-1.4.md b/docs/release-notes/NuGet-1.4.md index 662af2641..8ec3d86d9 100644 --- a/docs/release-notes/NuGet-1.4.md +++ b/docs/release-notes/NuGet-1.4.md @@ -24,15 +24,21 @@ The `Update-Package` command now makes it easier to: #### Update all packages in a single project + ``` Update-Package -Project MvcApplication1 + ``` #### Update a package in all projects + ``` Update-Package PackageId + ``` #### Update all packages in all projects + ``` Update-Package + ``` #### Perform a "safe" update on all packages The `-Safe` flag constrains upgrades to only versions with the same Major and Minor version component. For example, @@ -40,7 +46,9 @@ if version 1.0.0 of a package is installed, and versions 1.0.1, 1.0.2, and 1.1 a flag updates the package to 1.0.2. Upgrading without the `-Safe` flag would upgrade the package to the latest version, 1.1. + ``` Update-Package -Safe + ``` ### Managing Packages at the Solution Level Prior to NuGet 1.4, installing a package into multiple projects was cumbersome using the dialog. It required launching @@ -152,7 +160,9 @@ so to install NuGet for Windows Phone Tools, you may need to download and run th To uninstall NuGet for Windows Phone Tools, run the following command. + ``` vsixinstaller.exe /uninstall:NuPackToolsVsix.Microsoft.67e54e40-0ae3-42c5-a949-fddf5739e7a5 + ``` ## Bug Fixes NuGet 1.4 had a total of 88 work items fixed. 71 of those were marked as bugs. diff --git a/docs/release-notes/NuGet-1.5.md b/docs/release-notes/NuGet-1.5.md index cdff018c2..364687dbf 100644 --- a/docs/release-notes/NuGet-1.5.md +++ b/docs/release-notes/NuGet-1.5.md @@ -94,7 +94,9 @@ dependencies along with the package. ### `Get-Package` command improvement The `Get-Package` command now supports a `-ProjectName` parameter. So the command - Get-Package –ProjectName A +``` +Get-Package –ProjectName A +``` will list all packages installed in project A. diff --git a/docs/release-notes/NuGet-2.0.md b/docs/release-notes/NuGet-2.0.md index c37a7f8a3..d7e2f3592 100644 --- a/docs/release-notes/NuGet-2.0.md +++ b/docs/release-notes/NuGet-2.0.md @@ -68,23 +68,25 @@ Note that mixing the two formats is not allowed. For example, the following snip In addition to assembly references, content files and PowerShell scripts can also be grouped by target framework. The same folder structure found in the `lib` folder for specifying target framework can now be applied in the same way to the `content` and `tools` folders. For example: - \content - \net11 - \MyContent.txt - \net20 - \MyContent20.txt - \net40 - \sl40 - \MySilverlightContent.html - - \tools - \init.ps1 - \net40 - \install.ps1 - \uninstall.ps1 - \sl40 - \install.ps1 - \uninstall.ps1 +``` +\content + \net11 + \MyContent.txt + \net20 + \MyContent20.txt + \net40 + \sl40 + \MySilverlightContent.html + +\tools + \init.ps1 + \net40 + \install.ps1 + \uninstall.ps1 + \sl40 + \install.ps1 + \uninstall.ps1 +``` **Note**: Because `init.ps1` is executed at the solution level and is not dependent on any individual project, it must be placed directly under the `tools` folder. If placed within a framework-specific folder, it will be ignored. diff --git a/docs/release-notes/NuGet-2.1.md b/docs/release-notes/NuGet-2.1.md index 2727c3ca2..5a3b00df4 100644 --- a/docs/release-notes/NuGet-2.1.md +++ b/docs/release-notes/NuGet-2.1.md @@ -17,14 +17,18 @@ NuGet 2.1 was released on October 4, 2012. NuGet 2.1 gives you greater flexibility in controlling NuGet settings by way of recursively walking up the folder structure looking for `NuGet.Config` files and then building the configuration from the set of all found files. As an example, consider the scenario where a team has an internal package repository for CI builds of other internal dependencies. The folder structure for an individual project might look like the following: - C:\ - C:\myteam\ - C:\myteam\solution1 - C:\myteam\solution1\project1 +``` +C:\ +C:\myteam\ +C:\myteam\solution1 +C:\myteam\solution1\project1 +``` Additionally, if package restore is enabled for the solution, the following folder will also exist: - C:\myteam\solution1\.nuget +``` +C:\myteam\solution1\.nuget +``` In order to have the team’s internal package repository available for all projects that the team works on, while not making it available for every project on the machine, we can create a new Nuget.Config file and place it in the c:\myteam folder. There is no way to specificy a packages folder per project. @@ -117,16 +121,20 @@ Over the past several iterations, changes have been introduced to the NuGet gall Prior to NuGet 2.1, NuGet would skip updating a package when there was a not a high version number. This introduced friction for certain scenarios – particularly in the case of build or CI scenarios where the team did not want to increment the package version number with each build. The desired behavior was to force an update regardless. NuGet 2.1 addresses this with the ‘reinstall’ flag. For example, previous versions of NuGet would result in the following when attempting to update a package that did not have a more recent package version: - PM> Update-Package Moq - No updates available for 'Moq' in project 'MySolution.MyConsole'. +``` +PM> Update-Package Moq +No updates available for 'Moq' in project 'MySolution.MyConsole'. +``` With the reinstall flag, the package will be updated regardless of whether there is a newer version. - PM> Update-Package Moq -Reinstall - Successfully removed 'Moq 4.0.10827' from MySolution.MyConsole. - Successfully uninstalled 'Moq 4.0.10827'. - Successfully installed 'Moq 4.0.10827'. - Successfully added 'Moq 4.0.10827' to MySolution.MyConsole. +``` +PM> Update-Package Moq -Reinstall +Successfully removed 'Moq 4.0.10827' from MySolution.MyConsole. +Successfully uninstalled 'Moq 4.0.10827'. +Successfully installed 'Moq 4.0.10827'. +Successfully added 'Moq 4.0.10827' to MySolution.MyConsole. +``` Another scenario where the reinstall flag proves beneficial is that of framework re-targeting. When changing the target framework of a project (for example, from .NET 4 to .NET 4.5), Update-Package -Reinstall can update references to the correct assemblies for all NuGet packages installed in the project. diff --git a/docs/release-notes/NuGet-2.7.2.md b/docs/release-notes/NuGet-2.7.2.md index c82cab279..d00da9daf 100644 --- a/docs/release-notes/NuGet-2.7.2.md +++ b/docs/release-notes/NuGet-2.7.2.md @@ -20,11 +20,13 @@ For quite some time, Microsoft has included the NuGet packages for several popul To mitigate this issue, NuGet 2.7.2 allows the script author to include the license text block within a specially marked section which looks as follows. - /************** NUGET: BEGIN LICENSE TEXT ************** - * The following code is licensed under the MIT license - * Additional license information below is informational - * only. - ************** NUGET: END LICENSE TEXT ***************/ +``` +/************** NUGET: BEGIN LICENSE TEXT ************** + * The following code is licensed under the MIT license + * Additional license information below is informational + * only. + ************** NUGET: END LICENSE TEXT ***************/ +``` When updating packages with content files containing this block, NuGet does not factor the contents of the block into the comparison with the version on the NuGet gallery, and can therefore delete and update the content file as though it matches the original copy. diff --git a/docs/release-notes/NuGet-2.7.md b/docs/release-notes/NuGet-2.7.md index a7f84135f..565ff307b 100644 --- a/docs/release-notes/NuGet-2.7.md +++ b/docs/release-notes/NuGet-2.7.md @@ -159,23 +159,23 @@ We added some new APIs to our extensibility services to fill the gap of missing #### IVsPackageInstallerServices - ```cs - // Checks if a NuGet package with the specified Id and version is installed in the specified project. - bool IsPackageInstalledEx(Project project, string id, string versionString); +```cs +// Checks if a NuGet package with the specified Id and version is installed in the specified project. +bool IsPackageInstalledEx(Project project, string id, string versionString); - // Get the list of NuGet packages installed in the specified project. - IEnumerable GetInstalledPackages(Project project); - ``` +// Get the list of NuGet packages installed in the specified project. +IEnumerable GetInstalledPackages(Project project); +``` #### IVsPackageInstaller - ```cs - // Installs one or more packages that exist on disk in a folder defined in the registry. - void InstallPackagesFromRegistryRepository(string keyName, bool isPreUnzipped, bool skipAssemblyReferences, Project project, IDictionary packageVersions); +```cs +// Installs one or more packages that exist on disk in a folder defined in the registry. +void InstallPackagesFromRegistryRepository(string keyName, bool isPreUnzipped, bool skipAssemblyReferences, Project project, IDictionary packageVersions); - // Installs one or more packages that are embedded in a Visual Studio Extension Package. - void InstallPackagesFromVSExtensionRepository(string extensionId, bool isPreUnzipped, bool skipAssemblyReferences, Project project, IDictionary packageVersions); - ``` +// Installs one or more packages that are embedded in a Visual Studio Extension Package. +void InstallPackagesFromVSExtensionRepository(string extensionId, bool isPreUnzipped, bool skipAssemblyReferences, Project project, IDictionary packageVersions); +``` ### Development-Only Dependencies diff --git a/docs/release-notes/NuGet-2.8.md b/docs/release-notes/NuGet-2.8.md index 55e019b88..c7c2411df 100644 --- a/docs/release-notes/NuGet-2.8.md +++ b/docs/release-notes/NuGet-2.8.md @@ -39,13 +39,15 @@ NuGet 2.8 was released on January 29, 2014. When resolving package dependencies, NuGet has historically implemented a strategy of selecting the lowest major and minor package version which satisfies the dependencies on the package. Unlike the major and minor version, however, the patch version was always resolved to the highest version. Though the behavior was well-intentioned, it created a lack of determinism for installing packages with dependencies. Consider the following example: - PackageA@1.0.0 -[ >=1.0.0 ]-> PackageB@1.0.0 +``` +PackageA@1.0.0 -[ >=1.0.0 ]-> PackageB@1.0.0 - Developer1 installs PackageA@1.0.0: installed PackageA@1.0.0 and PackageB@1.0.0 +Developer1 installs PackageA@1.0.0: installed PackageA@1.0.0 and PackageB@1.0.0 - PackageB@1.0.1 is published +PackageB@1.0.1 is published - Developer2 installs PackageA@1.0.0: installed PackageA@1.0.0 and PackageB@1.0.1 +Developer2 installs PackageA@1.0.0: installed PackageA@1.0.0 and PackageB@1.0.1 +``` In this example, even though Developer1 and Developer2 installed PackageA@1.0.0, each ended up with a different version of PackageB. NuGet 2.8 changes this default behavior such that the dependency resolution behavior for patch versions is consistent with the behavior for major and minor versions. In the above example, then, PackageB@1.0.0 would be installed as a result of installing PackageA@1.0.0, regardless of the newer patch version. @@ -59,24 +61,28 @@ Though NuGet 2.8 changes the _default_ behavior for resolving dependencies, it a In addition to the -DependencyVersion switch detailed above, NuGet has also allowed for the ability to set a new attribute in the Nuget.Config file defining what the default value is, if the -DependencyVersion switch is not specified in an invocation of install-package. This value will also be respected by the NuGet Package Manager Dialog for any install package operations. To set this value, add the attribute below to your Nuget.Config file: - - - +```xml + + + +``` ## Preview NuGet Operations With -whatif Some NuGet packages can have deep dependency graphs, and as such, it can be helpful during an install, uninstall, or update operation to first see what will happen. NuGet 2.8 adds the standard PowerShell -whatif switch to the install-package, uninstall-package, and update-package commands to enable visualizing the entire closure of packages to which the command will be applied. For example, running `install-package Microsoft.AspNet.WebApi -whatif` in an empty ASP.NET Web application yields the following. - PM> install-package Microsoft.AspNet.WebApi -whatif - Attempting to resolve dependency 'Microsoft.AspNet.WebApi.WebHost (≥ 5.0.0)'. - Attempting to resolve dependency 'Microsoft.AspNet.WebApi.Core (≥ 5.0.0)'. - Attempting to resolve dependency 'Microsoft.AspNet.WebApi.Client (≥ 5.0.0)'. - Attempting to resolve dependency 'Newtonsoft.Json (≥ 4.5.11)'. - Install Newtonsoft.Json 4.5.11 - Install Microsoft.AspNet.WebApi.Client 5.0.0 - Install Microsoft.AspNet.WebApi.Core 5.0.0 - Install Microsoft.AspNet.WebApi.WebHost 5.0.0 - Install Microsoft.AspNet.WebApi 5.0.0 +``` +PM> install-package Microsoft.AspNet.WebApi -whatif +Attempting to resolve dependency 'Microsoft.AspNet.WebApi.WebHost (≥ 5.0.0)'. +Attempting to resolve dependency 'Microsoft.AspNet.WebApi.Core (≥ 5.0.0)'. +Attempting to resolve dependency 'Microsoft.AspNet.WebApi.Client (≥ 5.0.0)'. +Attempting to resolve dependency 'Newtonsoft.Json (≥ 4.5.11)'. +Install Newtonsoft.Json 4.5.11 +Install Microsoft.AspNet.WebApi.Client 5.0.0 +Install Microsoft.AspNet.WebApi.Core 5.0.0 +Install Microsoft.AspNet.WebApi.WebHost 5.0.0 +Install Microsoft.AspNet.WebApi 5.0.0 +``` ## Downgrade Package @@ -96,12 +102,14 @@ When developing applications for multiple target platforms, it's common to have Though NuGet packages are typically consumed from a remote gallery such as [the NuGet gallery](http://www.nuget.org/) using a network connection, there are many scenarios where the client is not connected. Without a network connection, the NuGet client was not able to successfully install packages - even when those packages were already on the client's machine in the local NuGet cache. NuGet 2.8 adds automatic cache fallback to the package manager console. For example, when disconnecting the network adapter and installing jQuery, the console shows the following: - PM> Install-Package jquery - The source at nuget.org [https://www.nuget.org/api/v2/] is unreachable. Falling back to NuGet Local Cache at C:\Users\me\AppData\Local\NuGet\Cache - Installing 'jQuery 2.0.3'. - Successfully installed 'jQuery 2.0.3'. - Adding 'jQuery 2.0.3' to WebApplication18. - Successfully added 'jQuery 2.0.3' to WebApplication18. +``` +PM> Install-Package jquery +The source at nuget.org [https://www.nuget.org/api/v2/] is unreachable. Falling back to NuGet Local Cache at C:\Users\me\AppData\Local\NuGet\Cache +Installing 'jQuery 2.0.3'. +Successfully installed 'jQuery 2.0.3'. +Adding 'jQuery 2.0.3' to WebApplication18. +Successfully added 'jQuery 2.0.3' to WebApplication18. +``` The cache fallback feature does not require any specific command arguments. Additionally, cache fallback currently works only in the package manager console - the behavior does not currently work in the package manager dialog. diff --git a/docs/release-notes/NuGet-3.1.md b/docs/release-notes/NuGet-3.1.md index 2569a8487..6164bae11 100644 --- a/docs/release-notes/NuGet-3.1.md +++ b/docs/release-notes/NuGet-3.1.md @@ -52,7 +52,9 @@ The NuGet command-line executable was updated and moved to a new distributable l The new distributable location resides on the dist.nuget.org host, with a folder structure that follows this template: - {platform supported}/{version}/nuget.exe +``` +{platform supported}/{version}/nuget.exe +``` ### New Features From 21fcfa73d4f92a6ab5e6cf5fb23f5e3366ad8ecc Mon Sep 17 00:00:00 2001 From: "Mike Jones (DEVUE)" Date: Fri, 22 Jan 2021 11:13:38 -0800 Subject: [PATCH 261/988] more --- docs/release-notes/NuGet-1.3.md | 30 +++++++++++++++--------------- docs/release-notes/NuGet-1.4.md | 30 +++++++++++++++--------------- 2 files changed, 30 insertions(+), 30 deletions(-) diff --git a/docs/release-notes/NuGet-1.3.md b/docs/release-notes/NuGet-1.3.md index 1074a060c..a11854951 100644 --- a/docs/release-notes/NuGet-1.3.md +++ b/docs/release-notes/NuGet-1.3.md @@ -31,35 +31,35 @@ This command makes it easy to get to the project page for a package from within Console. It also provides options to open the license URL and the report abuse page for the package. The syntax for the command is: - ``` - Open-PackagePage -Id [-Version] [-Source] [-License] [-ReportAbuse] [-PassThru] - ``` +``` +Open-PackagePage -Id [-Version] [-Source] [-License] [-ReportAbuse] [-PassThru] +``` The `-PassThru` option is used to return the value of the specified URL. Examples: - ``` - PM> Open-PackagePage Ninject - ``` +``` +PM> Open-PackagePage Ninject +``` Opens a browser to the project URL specified in the Ninject package. - ``` - PM> Open-PackagePage Ninject -License - ``` +``` +PM> Open-PackagePage Ninject -License +``` Opens a browser to the license URL specified in the Ninject package. - ``` - PM> Open-PackagePage Ninject -ReportAbuse - ``` +``` +PM> Open-PackagePage Ninject -ReportAbuse +``` Opens a browser to the URL at the current package source used to report abuse for the specified package. - ``` - PM> $url = Open-PackagePage Ninject -License -WhatIf -PassThru - ``` +``` +PM> $url = Open-PackagePage Ninject -License -WhatIf -PassThru +``` Assigns the license URL to the variable, $url, without opening the URL in a browser. diff --git a/docs/release-notes/NuGet-1.4.md b/docs/release-notes/NuGet-1.4.md index 8ec3d86d9..144fa5524 100644 --- a/docs/release-notes/NuGet-1.4.md +++ b/docs/release-notes/NuGet-1.4.md @@ -24,21 +24,21 @@ The `Update-Package` command now makes it easier to: #### Update all packages in a single project - ``` - Update-Package -Project MvcApplication1 - ``` +``` +Update-Package -Project MvcApplication1 +``` #### Update a package in all projects - ``` - Update-Package PackageId - ``` +``` +Update-Package PackageId +``` #### Update all packages in all projects - ``` - Update-Package - ``` +``` +Update-Package +``` #### Perform a "safe" update on all packages The `-Safe` flag constrains upgrades to only versions with the same Major and Minor version component. For example, @@ -46,9 +46,9 @@ if version 1.0.0 of a package is installed, and versions 1.0.1, 1.0.2, and 1.1 a flag updates the package to 1.0.2. Upgrading without the `-Safe` flag would upgrade the package to the latest version, 1.1. - ``` - Update-Package -Safe - ``` +``` +Update-Package -Safe +``` ### Managing Packages at the Solution Level Prior to NuGet 1.4, installing a package into multiple projects was cumbersome using the dialog. It required launching @@ -160,9 +160,9 @@ so to install NuGet for Windows Phone Tools, you may need to download and run th To uninstall NuGet for Windows Phone Tools, run the following command. - ``` - vsixinstaller.exe /uninstall:NuPackToolsVsix.Microsoft.67e54e40-0ae3-42c5-a949-fddf5739e7a5 - ``` +``` +vsixinstaller.exe /uninstall:NuPackToolsVsix.Microsoft.67e54e40-0ae3-42c5-a949-fddf5739e7a5 +``` ## Bug Fixes NuGet 1.4 had a total of 88 work items fixed. 71 of those were marked as bugs. From d85bf672b58eeea45dbcc8b247d7d96b38638c0e Mon Sep 17 00:00:00 2001 From: "Mike Jones (DEVUE)" Date: Fri, 22 Jan 2021 11:26:40 -0800 Subject: [PATCH 262/988] More fixes --- docs/api/package-base-address-resource.md | 6 +++--- docs/api/registration-base-url-resource.md | 2 +- .../multiple-target-frameworks-project-file.md | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/api/package-base-address-resource.md b/docs/api/package-base-address-resource.md index 474882c16..d3bf8e43d 100644 --- a/docs/api/package-base-address-resource.md +++ b/docs/api/package-base-address-resource.md @@ -54,7 +54,7 @@ Name | In | Type | Required | Notes LOWER_ID | URL | string | yes | The package ID, lowercased The `LOWER_ID` value is the desired package ID lowercased using the rules implemented by .NET's -[`System.String.ToLowerInvariant()`](/dotnet/api/system.string.tolowerinvariant?view=netstandard-2.0#System_String_ToLowerInvariant) method. +[`System.String.ToLowerInvariant()`](/dotnet/api/system.string.tolowerinvariant?view=netstandard-2.0#System_String_ToLowerInvariant&preserve-view=true) method. ### Response @@ -101,7 +101,7 @@ LOWER_ID | URL | string | yes | The package ID, lowercase LOWER_VERSION | URL | string | yes | The package version, normalized and lowercased Both `LOWER_ID` and `LOWER_VERSION` are lowercased using the rules implemented by .NET's -[`System.String.ToLowerInvariant()`](/dotnet/api/system.string.tolowerinvariant?view=netstandard-2.0#System_String_ToLowerInvariant) +[`System.String.ToLowerInvariant()`](/dotnet/api/system.string.tolowerinvariant?view=netstandard-2.0#System_String_ToLowerInvariant&preserve-view=true) method. The `LOWER_VERSION` is the desired package version normalized using NuGet's version @@ -142,7 +142,7 @@ LOWER_ID | URL | string | yes | The package ID, lowercase LOWER_VERSION | URL | string | yes | The package version, normalized and lowercased Both `LOWER_ID` and `LOWER_VERSION` are lowercased using the rules implemented by .NET's -[`System.String.ToLowerInvariant()`](/dotnet/api/system.string.tolowerinvariant?view=netstandard-2.0#System_String_ToLowerInvariant) method. +[`System.String.ToLowerInvariant()`](/dotnet/api/system.string.tolowerinvariant?view=netstandard-2.0#System_String_ToLowerInvariant&preserve-view=true) method. The `LOWER_VERSION` is the desired package version normalized using NuGet's version [normalization rules](../concepts/package-versioning.md#normalized-version-numbers). This means that build metadata diff --git a/docs/api/registration-base-url-resource.md b/docs/api/registration-base-url-resource.md index 04b9c0e67..9db79b657 100644 --- a/docs/api/registration-base-url-resource.md +++ b/docs/api/registration-base-url-resource.md @@ -99,7 +99,7 @@ Name | In | Type | Required | Notes LOWER_ID | URL | string | yes | The package ID, lowercased The `LOWER_ID` value is the desired package ID lowercased using the rules implemented by .NET's -[`System.String.ToLowerInvariant()`](/dotnet/api/system.string.tolowerinvariant?view=netstandard-2.0#System_String_ToLowerInvariant) method. +[`System.String.ToLowerInvariant()`](/dotnet/api/system.string.tolowerinvariant?view=netstandard-2.0#System_String_ToLowerInvariant&preserve-view=true) method. ### Response diff --git a/docs/create-packages/multiple-target-frameworks-project-file.md b/docs/create-packages/multiple-target-frameworks-project-file.md index 722d30796..326dc1e6f 100644 --- a/docs/create-packages/multiple-target-frameworks-project-file.md +++ b/docs/create-packages/multiple-target-frameworks-project-file.md @@ -1,6 +1,6 @@ --- title: Multi-targeting for NuGet Packages in your project file -description: Description of the various methods to target multiple .NET Framework versions from within a single NuGet package. +description: Description of the various methods to target multiple .NET Framework versions from within a single NuGet package in your project file. author: JonDouglas ms.author: jodou ms.date: 07/15/2019 From 6d1e252402a9e8210b4b04f416adbc0b06ab19b4 Mon Sep 17 00:00:00 2001 From: drewgillies Date: Fri, 17 Jul 2020 13:52:50 +1000 Subject: [PATCH 263/988] Add catalog and metadata vulnerability details --- docs/api/_data/catalog-package-details.json | 8 ++++++++ docs/api/_data/package-registration-index.json | 8 +++++++- docs/api/catalog-resource.md | 12 ++++++++++++ docs/api/registration-base-url-resource.md | 10 ++++++++++ 4 files changed, 37 insertions(+), 1 deletion(-) diff --git a/docs/api/_data/catalog-package-details.json b/docs/api/_data/catalog-package-details.json index 228b2977b..f5cdc865e 100644 --- a/docs/api/_data/catalog-package-details.json +++ b/docs/api/_data/catalog-package-details.json @@ -72,5 +72,13 @@ "V3", "Protocol", "Example" + ], + "vulnerabilities": [ + { + "@id": "https://api.nuget.org/v3/catalog0/data/2015.02.01.11.18.40/windowsazure.storage.1.0.0.json#vulnerability/GitHub/999", + "@type": "Vulnerability", + "advisoryUrl": "https://github.com/advisories/ABCD-1234-5678-9012", + "severity": "2" + } ] } diff --git a/docs/api/_data/package-registration-index.json b/docs/api/_data/package-registration-index.json index 59d3ae709..41007944f 100644 --- a/docs/api/_data/package-registration-index.json +++ b/docs/api/_data/package-registration-index.json @@ -37,7 +37,13 @@ "summary": "", "tags": [ "" ], "title": "", - "version": "3.0.0-beta" + "version": "3.0.0-beta", + "vulnerabilities": [ + { + "advisoryUrl": "https://github.com/advisories/ABCD-1234-5678-9012", + "severity": "2" + } + ] }, "packageContent": "https://api.nuget.org/v3-flatcontainer/nuget.server.core/3.0.0-beta/nuget.server.core.3.0.0-beta.nupkg", "registration": "https://api.nuget.org/v3/registration3/nuget.server.core/index.json" diff --git a/docs/api/catalog-resource.md b/docs/api/catalog-resource.md index d25fe04c1..a12e6c603 100644 --- a/docs/api/catalog-resource.md +++ b/docs/api/catalog-resource.md @@ -241,6 +241,7 @@ summary | string | no | tags | array of strings | no | title | string | no | verbatimVersion | string | no | The version string as it's originally found in the .nuspec +vulnerabilities | array of objects | no | The security vulnerabilities of the package The package `version` property is the full version string after normalization. This means that SemVer 2.0.0 build data can be included here. @@ -263,6 +264,17 @@ The `published` timestamp is the time when the package was last listed. > [!Note] > On nuget.org, the `published` value is set to the year 1900 when the package is unlisted. +#### Vulnerabilities + +An array of `vulnerability` objects. Each vulnerability has the following properties: + +Name | Type | Required | Notes +------------ | ------ | -------- | ----- +advisoryUrl | string | yes | Location of security advisory for the package +severity | string | yes | Severity of advisory: "0" = Low, "1" = Moderate, "2" = High, "3" = Critical + +If the `severity` property contains values other than those listed here, the severity of the advisory is to be treated as Low. + #### Sample request ``` diff --git a/docs/api/registration-base-url-resource.md b/docs/api/registration-base-url-resource.md index 9db79b657..1bf753365 100644 --- a/docs/api/registration-base-url-resource.md +++ b/docs/api/registration-base-url-resource.md @@ -181,6 +181,7 @@ summary | string | no | tags | string or array of string | no | title | string | no | version | string | yes | The full version string after normalization +vulnerabilities | array of objects | no | The security vulnerabilities of the package The package `version` property is the full version string after normalization. This means that SemVer 2.0.0 build data can be included here. @@ -252,6 +253,15 @@ Name | Type | Required | Notes id | string | yes | The ID of the alternate package range | object | no | The allowed [version range](../concepts/package-versioning.md#version-ranges), or `*` if any version is allowed +#### Vulnerabilities + +An array of `vulnerability` objects. Each vulnerability has the following properties: + +Name | Type | Required | Notes +------------ | ------ | -------- | ----- +advisoryUrl | string | yes | Location of security advisory for the package +severity | string | yes | Severity of advisory: "0" = Low, "1" = Moderate, "2" = High, "3" = Critical + ### Sample request ``` From 451d54deb5b4879c3330f681d43f2c768b52c6ba Mon Sep 17 00:00:00 2001 From: Geoff <40442315+Geoff1900@users.noreply.github.com> Date: Tue, 26 Jan 2021 00:19:18 +0000 Subject: [PATCH 264/988] fix: add missing 'is' in second sentence add missing 'is' in the second sentence of the first paragraph --- docs/reference/packages-config.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/packages-config.md b/docs/reference/packages-config.md index 0c4a0dd0f..92fb21497 100644 --- a/docs/reference/packages-config.md +++ b/docs/reference/packages-config.md @@ -9,7 +9,7 @@ ms.topic: reference # packages.config reference -The `packages.config` file is used in some project types to maintain the list of packages referenced by the project. This allows NuGet to easily restore the project's dependencies when the project to be transported to a different machine, such as a build server, without all those packages. +The `packages.config` file is used in some project types to maintain the list of packages referenced by the project. This allows NuGet to easily restore the project's dependencies when the project is to be transported to a different machine, such as a build server, without all those packages. If used, `packages.config` is typically located in a project root. It's automatically created when the first NuGet operation is run, but can also be created manually before running any commands such as `nuget restore`. From 5630c455fd4fc3021f8e33af47a3295cd4de485b Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Tue, 26 Jan 2021 17:52:04 -0500 Subject: [PATCH 265/988] I hope this is publishable --- .../Package-authoring-best-practices.md | 44 +++++++------------ 1 file changed, 17 insertions(+), 27 deletions(-) diff --git a/docs/guides/Package-authoring-best-practices.md b/docs/guides/Package-authoring-best-practices.md index a453ad3fc..736984cea 100644 --- a/docs/guides/Package-authoring-best-practices.md +++ b/docs/guides/Package-authoring-best-practices.md @@ -31,24 +31,24 @@ And finally, **Do not** recommendations indicate something you should almost nev ❌ DO NOT use the `LicenseUrl` metadata property. -## Where do I define my package? +## Create a NuGet package -TODO: Talk about how and where to make the suggested changes through out the guide (Visual Studio properties, project file, packages.config) +The latest recommended way to to create a NuGet package is from an [SDK-style project](https://docs.microsoft.com/en-us/nuget/resources/check-project-format). SDK-style project properties, including target [framework](#framework-targeting) and [package metadata](#package-metadata), are defined in the project file (.csproj). -## Framework targeting - -Authors should consider making their packages as inclusive as possible if they would like to maximize the number of potential consumers and overall impact in the .NET ecosystem. +Create package from your SDK-style project by defining the required properties and packing in [Visual Studio](https://docs.microsoft.com/nuget/quickstart/create-and-publish-a-package-using-visual-studio?tabs=netcore-cli) or the [dotnet CLI](https://docs.microsoft.com/en-us/nuget/quickstart/create-and-publish-a-package-using-the-dotnet-cli). -Highly inclusive packages are cross-platform and compatible with as many frameworks as possible. Today, that means using .NET Standard. .NET Standard is a specification of .NET APIs that are available on all .NET implementations. +✔️ DO create an SDK-style project and create (pack) your package using Visual Studio or the dotnet CLI. -✔️ DO start with including a `netstandard2.0` target. -> Most general-purpose libraries should not need APIs outside of .NET Standard 2.0. .NET Standard 2.0 is supported by all modern platforms and is the recommended way to support multiple platforms with one target. +For more detailed guidance regarding package creation including necessary client tools, project file example, and commands, see [Create a NuGet package using the dotnet CLI](https://docs.microsoft.com/nuget/create-packages/creating-a-package-dotnet-cli). +## Framework targeting -See the .NET [Cross-platform targeting guidance](https://docs.microsoft.com/dotnet/standard/library-guidance/cross-platform-targeting) for more advanced suggestions regarding cross-platform and multitargeting scenarios. +Understanding the differences between target frameworks and deciding which one or ones that are right for your library can be very confusing given the wide variety of options available from .NET Framework to .NET 5. So let's try to make it as straightforward as possible. +✔️ CONSIDER starting with [the latest .NET target framework](https://docs.microsoft.com/dotnet/standard/frameworks#latest-versions). +> Using the latest .NET target framework will allow you to take advantage of the latest .NET technology and language features. ## Package metadata -Metadata is a foundational component of any NuGet package. The quality of your metadata can vastly influence the discoverability and usability of your package. +Metadata is a foundational component of any NuGet package. The quality of your metadata can vastly influence the discoverability, usability, adn trustworthiness of your package. In Visual Studio, the recommended way to specify package metadata is to go Project > [Project Name] Properties > Package. @@ -137,7 +137,7 @@ Example: Copyright (c) Contoso 2020 ### Project URL ✔️ CONSIDER including a link to an associated project, repository, or company website. -> Company website links, even if not specific to the package/project, still improve consumer trust. +> Your project site should have everything users need to know about your package and will likely be where users look for documentation. ### Icon @@ -153,12 +153,12 @@ Example: Copyright (c) Contoso 2020 ✔️ CONSIDER including a repository type and URL to make it easy for package consumers to view source code, report issues, and view repository documentation. -✔️ CONSIDER setting up [Source Link](https://docs.microsoft.com/dotnet/standard/library-guidance/sourcelink) to add source control metadata to your assemblies and NuGet package. -> Source Link will automatically adds `Repository URL` and `Repository Type` to the package metadata. It also adds the specific commit associated with your package version. +✔️ CONSIDER setting up [Source Link](https://docs.microsoft.com/dotnet/standard/library-guidance/sourcelink) to add source control metadata to your NuGet package and make your library easier to debug. +> Source Link automatically adds `Repository URL` and `Repository Type` to the package metadata. It also adds the specific commit associated with your package version. ### Tags ✔️ DO include several tags with key terms related to your package to enhance discoverability. -> Tags are taken into account in NuGet's search algorithm and are especially helpful for terms that are not in the Package ID but are relevant. +> Tags are taken into account in NuGet.org's search algorithm and are especially helpful for terms that are not in the Package ID but are relevant. For example, if I published a package to log strings to the console, I would include: "logging, log, console, string, output" @@ -173,17 +173,7 @@ For example, if I published a package to log strings to the console, I would inc > > If you already track release notes or a changelog in your repo, you can also include a link to the relevant file. -## Dependencies - -### Lean packages - -✔️ DO review your package for unnecessary dependencies. -> Unnecessary dependencies needlessly increase the size of your package as well as increase likelihood of version conflicts for both yourself and your consumers! - -### Dependency version ranges - -❌ DO NOT have NuGet package references with no minimum version. - -❌ AVOID NuGet package references that demand an exact version. +## Related topics -❌ AVOID NuGet package references with a version upper limit. +- [Create and publish a package (dotnet CLI)](https://docs.microsoft.com/en-us/nuget/quickstart/create-and-publish-a-package-using-the-dotnet-cli) +- [Create and publish a package (Visual Studio)](https://docs.microsoft.com/en-us/nuget/quickstart/create-and-publish-a-package-using-visual-studio?tabs=netcore-cli) From be9daa5004d5e77b998bf6b095f9c5ac788d55a7 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Tue, 26 Jan 2021 18:03:11 -0500 Subject: [PATCH 266/988] change --- docs/guides/Package-authoring-best-practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guides/Package-authoring-best-practices.md b/docs/guides/Package-authoring-best-practices.md index 736984cea..ede91a27d 100644 --- a/docs/guides/Package-authoring-best-practices.md +++ b/docs/guides/Package-authoring-best-practices.md @@ -33,7 +33,7 @@ And finally, **Do not** recommendations indicate something you should almost nev ## Create a NuGet package -The latest recommended way to to create a NuGet package is from an [SDK-style project](https://docs.microsoft.com/en-us/nuget/resources/check-project-format). SDK-style project properties, including target [framework](#framework-targeting) and [package metadata](#package-metadata), are defined in the project file (.csproj). +The latest recommended way to to create a NuGet package is from an [SDK-style project](https://docs.microsoft.com/nuget/resources/check-project-format). SDK-style project properties, including target [framework](#framework-targeting) and [package metadata](#package-metadata), are defined in the project file (.csproj). Create package from your SDK-style project by defining the required properties and packing in [Visual Studio](https://docs.microsoft.com/nuget/quickstart/create-and-publish-a-package-using-visual-studio?tabs=netcore-cli) or the [dotnet CLI](https://docs.microsoft.com/en-us/nuget/quickstart/create-and-publish-a-package-using-the-dotnet-cli). From cff270132208564b67c610f230bd3d600ed1488c Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Tue, 26 Jan 2021 18:04:26 -0500 Subject: [PATCH 267/988] change 1 --- docs/guides/Package-authoring-best-practices.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/guides/Package-authoring-best-practices.md b/docs/guides/Package-authoring-best-practices.md index ede91a27d..0c876b70a 100644 --- a/docs/guides/Package-authoring-best-practices.md +++ b/docs/guides/Package-authoring-best-practices.md @@ -35,7 +35,7 @@ And finally, **Do not** recommendations indicate something you should almost nev The latest recommended way to to create a NuGet package is from an [SDK-style project](https://docs.microsoft.com/nuget/resources/check-project-format). SDK-style project properties, including target [framework](#framework-targeting) and [package metadata](#package-metadata), are defined in the project file (.csproj). -Create package from your SDK-style project by defining the required properties and packing in [Visual Studio](https://docs.microsoft.com/nuget/quickstart/create-and-publish-a-package-using-visual-studio?tabs=netcore-cli) or the [dotnet CLI](https://docs.microsoft.com/en-us/nuget/quickstart/create-and-publish-a-package-using-the-dotnet-cli). +Create package from your SDK-style project by defining the required properties and packing in [Visual Studio](https://docs.microsoft.com/nuget/quickstart/create-and-publish-a-package-using-visual-studio?tabs=netcore-cli) or the [dotnet CLI](https://docs.microsoft.com/nuget/quickstart/create-and-publish-a-package-using-the-dotnet-cli). ✔️ DO create an SDK-style project and create (pack) your package using Visual Studio or the dotnet CLI. @@ -175,5 +175,5 @@ For example, if I published a package to log strings to the console, I would inc ## Related topics -- [Create and publish a package (dotnet CLI)](https://docs.microsoft.com/en-us/nuget/quickstart/create-and-publish-a-package-using-the-dotnet-cli) -- [Create and publish a package (Visual Studio)](https://docs.microsoft.com/en-us/nuget/quickstart/create-and-publish-a-package-using-visual-studio?tabs=netcore-cli) +- [Create and publish a package (dotnet CLI)](https://docs.microsoft.com/nuget/quickstart/create-and-publish-a-package-using-the-dotnet-cli) +- [Create and publish a package (Visual Studio)](https://docs.microsoft.com/nuget/quickstart/create-and-publish-a-package-using-visual-studio?tabs=netcore-cli) From f4d357eeaa9ad1e990af05319dc94ccb0288223d Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 27 Jan 2021 14:30:54 -0500 Subject: [PATCH 268/988] Changes to Author suggestions --- docs/guides/Package-authoring-best-practices.md | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/docs/guides/Package-authoring-best-practices.md b/docs/guides/Package-authoring-best-practices.md index 0c876b70a..f42c637c8 100644 --- a/docs/guides/Package-authoring-best-practices.md +++ b/docs/guides/Package-authoring-best-practices.md @@ -60,7 +60,7 @@ Below is a table mapping and describing available packages metadata elements: |-----------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------| | [`Package id`](#package-id) | [`PackageId`](https://docs.microsoft.com/dotnet/core/tools/csproj#packageid) | [`id`](https://docs.microsoft.com/nuget/reference/nuspec#id) | The package name or identifier. | | [`Package version`](#package-version) | [`PackageVersion`](https://docs.microsoft.com/dotnet/core/tools/csproj#packageversion) | [`version`](https://docs.microsoft.com/nuget/reference/nuspec#version) | NuGet package version. | -| [`Authors`](#authors) | [`Authors`](https://docs.microsoft.com/dotnet/core/tools/csproj#authors) | [`authors`](https://docs.microsoft.com/nuget/reference/nuspec#authors) | A comma-separated list of package authors. | +| [`Authors`](#authors) | [`Authors`](https://docs.microsoft.com/dotnet/core/tools/csproj#authors) | [`authors`](https://docs.microsoft.com/nuget/reference/nuspec#authors) | A comma-separated list of package authors, often using the author's real name or organization name. | | [`Description`](#description) | [`Description`](https://docs.microsoft.com/dotnet/core/tools/csproj#description) | [`description`](https://docs.microsoft.com/nuget/reference/nuspec#description) | A description of the package. | | [`Copyright`](#copyright) | [`Copyright`](https://docs.microsoft.com/dotnet/core/tools/csproj#copyright) | [`copyright`](https://docs.microsoft.com/nuget/reference/nuspec#copyright) | Copyright details for the package. | | [`Licensing - Expression`](#licensing) | [`PackageLicenseExpression`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="expression"`](https://docs.microsoft.com/nuget/reference/nuspec#license) | An SPDX license expression. | @@ -95,9 +95,8 @@ See the [.NET library versioning guide](https://docs.microsoft.com/dotnet/standa ### Authors -✔️ CONSIDER including the current NuGet.org owners for consistency across NuGet clients. -> Visual Studio currently displayed `Authors` on the Browse tab. It is also in the criteria for ID prefix reservation. - +✔️ DO use the author field for you or your organization's "pretty name." +> For example, if my NuGet.org username is "jdoe" then using "Jane Doe" for the author field may help consumers recognize me as an author. If my organization's NuGet.org username is "ContosoToolkit" then using "Contoso Corporation" may be more recognizable and inspire more consumer trust. ### Description ✔️ DO include a short description (up to 4000 characters) for your package that describes what it's for. @@ -141,7 +140,7 @@ Example: Copyright (c) Contoso 2020 ### Icon -✔️ CONSIDER including an icon with your package to help visually differentiate it. It's a relatively small addition that can improve perception of package quality. +✔️ CONSIDER [including an icon with your package](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-an-icon-image-file) to help visually differentiate it. It's a relatively small addition that can improve perception of package quality. > Icons can be specific to individual packages or be a brand logo. ✔️ DO use an image that is 128x128 and has a transparent background (PNG) for best viewing results. From 25b103d36d3210feaad75e26d3ce9efda4006806 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 27 Jan 2021 14:33:29 -0500 Subject: [PATCH 269/988] Minor wording fixes --- docs/guides/Package-authoring-best-practices.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/guides/Package-authoring-best-practices.md b/docs/guides/Package-authoring-best-practices.md index f42c637c8..b3244764b 100644 --- a/docs/guides/Package-authoring-best-practices.md +++ b/docs/guides/Package-authoring-best-practices.md @@ -60,7 +60,7 @@ Below is a table mapping and describing available packages metadata elements: |-----------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------| | [`Package id`](#package-id) | [`PackageId`](https://docs.microsoft.com/dotnet/core/tools/csproj#packageid) | [`id`](https://docs.microsoft.com/nuget/reference/nuspec#id) | The package name or identifier. | | [`Package version`](#package-version) | [`PackageVersion`](https://docs.microsoft.com/dotnet/core/tools/csproj#packageversion) | [`version`](https://docs.microsoft.com/nuget/reference/nuspec#version) | NuGet package version. | -| [`Authors`](#authors) | [`Authors`](https://docs.microsoft.com/dotnet/core/tools/csproj#authors) | [`authors`](https://docs.microsoft.com/nuget/reference/nuspec#authors) | A comma-separated list of package authors, often using the author's real name or organization name. | +| [`Authors`](#authors) | [`Authors`](https://docs.microsoft.com/dotnet/core/tools/csproj#authors) | [`authors`](https://docs.microsoft.com/nuget/reference/nuspec#authors) | A comma-separated list of package authors, often using the individual's or an organization's "pretty name." | | [`Description`](#description) | [`Description`](https://docs.microsoft.com/dotnet/core/tools/csproj#description) | [`description`](https://docs.microsoft.com/nuget/reference/nuspec#description) | A description of the package. | | [`Copyright`](#copyright) | [`Copyright`](https://docs.microsoft.com/dotnet/core/tools/csproj#copyright) | [`copyright`](https://docs.microsoft.com/nuget/reference/nuspec#copyright) | Copyright details for the package. | | [`Licensing - Expression`](#licensing) | [`PackageLicenseExpression`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="expression"`](https://docs.microsoft.com/nuget/reference/nuspec#license) | An SPDX license expression. | @@ -95,7 +95,7 @@ See the [.NET library versioning guide](https://docs.microsoft.com/dotnet/standa ### Authors -✔️ DO use the author field for you or your organization's "pretty name." +✔️ DO use the author field for your or your organization's "pretty name." > For example, if my NuGet.org username is "jdoe" then using "Jane Doe" for the author field may help consumers recognize me as an author. If my organization's NuGet.org username is "ContosoToolkit" then using "Contoso Corporation" may be more recognizable and inspire more consumer trust. ### Description From 18298d17e1e6d7cb52bb6bd07d887724cc5dfa6d Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 27 Jan 2021 14:42:12 -0500 Subject: [PATCH 270/988] Wording changes --- docs/guides/Package-authoring-best-practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guides/Package-authoring-best-practices.md b/docs/guides/Package-authoring-best-practices.md index b3244764b..9a9d896f0 100644 --- a/docs/guides/Package-authoring-best-practices.md +++ b/docs/guides/Package-authoring-best-practices.md @@ -99,7 +99,7 @@ See the [.NET library versioning guide](https://docs.microsoft.com/dotnet/standa > For example, if my NuGet.org username is "jdoe" then using "Jane Doe" for the author field may help consumers recognize me as an author. If my organization's NuGet.org username is "ContosoToolkit" then using "Contoso Corporation" may be more recognizable and inspire more consumer trust. ### Description -✔️ DO include a short description (up to 4000 characters) for your package that describes what it's for. +✔️ DO include a short description (up to 4000 characters) to describe your package. > Package descriptions are one of the most prominent fields surfaced in NuGet search and will likely be the first thing a potential consumers looks at to determine if a package is right for them. ### Copyright From 03544208ecbfa4977751e3bbfcf9364b2e7901f2 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 27 Jan 2021 15:03:03 -0500 Subject: [PATCH 271/988] removing specific .NET TFM suggestion --- docs/guides/Package-authoring-best-practices.md | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/docs/guides/Package-authoring-best-practices.md b/docs/guides/Package-authoring-best-practices.md index 9a9d896f0..f198a4100 100644 --- a/docs/guides/Package-authoring-best-practices.md +++ b/docs/guides/Package-authoring-best-practices.md @@ -35,17 +35,14 @@ And finally, **Do not** recommendations indicate something you should almost nev The latest recommended way to to create a NuGet package is from an [SDK-style project](https://docs.microsoft.com/nuget/resources/check-project-format). SDK-style project properties, including target [framework](#framework-targeting) and [package metadata](#package-metadata), are defined in the project file (.csproj). -Create package from your SDK-style project by defining the required properties and packing in [Visual Studio](https://docs.microsoft.com/nuget/quickstart/create-and-publish-a-package-using-visual-studio?tabs=netcore-cli) or the [dotnet CLI](https://docs.microsoft.com/nuget/quickstart/create-and-publish-a-package-using-the-dotnet-cli). +Create a package from your SDK-style project by defining the required properties and packing in [Visual Studio](https://docs.microsoft.com/nuget/quickstart/create-and-publish-a-package-using-visual-studio?tabs=netcore-cli) or the [dotnet CLI](https://docs.microsoft.com/nuget/quickstart/create-and-publish-a-package-using-the-dotnet-cli). ✔️ DO create an SDK-style project and create (pack) your package using Visual Studio or the dotnet CLI. For more detailed guidance regarding package creation including necessary client tools, project file example, and commands, see [Create a NuGet package using the dotnet CLI](https://docs.microsoft.com/nuget/create-packages/creating-a-package-dotnet-cli). -## Framework targeting -Understanding the differences between target frameworks and deciding which one or ones that are right for your library can be very confusing given the wide variety of options available from .NET Framework to .NET 5. So let's try to make it as straightforward as possible. +To help decide which .NET frameworks to target, see our [latest guidance for cross-platform targeting](https://docs.microsoft.com/dotnet/standard/library-guidance/cross-platform-targeting). -✔️ CONSIDER starting with [the latest .NET target framework](https://docs.microsoft.com/dotnet/standard/frameworks#latest-versions). -> Using the latest .NET target framework will allow you to take advantage of the latest .NET technology and language features. ## Package metadata Metadata is a foundational component of any NuGet package. The quality of your metadata can vastly influence the discoverability, usability, adn trustworthiness of your package. From 1444f3e0d3ab4e697b2a87f01bd03cbba13dd4be Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Mon, 1 Feb 2021 16:16:17 -0500 Subject: [PATCH 272/988] Loic's fixes are added --- .../guides/Package-authoring-best-practices.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/docs/guides/Package-authoring-best-practices.md b/docs/guides/Package-authoring-best-practices.md index f198a4100..3f8d71483 100644 --- a/docs/guides/Package-authoring-best-practices.md +++ b/docs/guides/Package-authoring-best-practices.md @@ -9,7 +9,7 @@ ms.topic: conceptual # Package authoring best practices -This guidance is intended to give NuGet.org package authors a lightweight end to end reference for creating and publishing high quality packages. It will primarily focus on package-specific best practices such as metadata and packing. For more in-depth suggestions for building high quality libraries, see the .NET [Open-source library guidance](https://docs.microsoft.com/dotnet/standard/library-guidance/). +This guidance is intended to give NuGet package authors a lightweight reference to create and publish high-quality packages. It will primarily focus on package-specific best practices such as metadata and packing. For more in-depth suggestions for building high quality libraries, see the .NET [Open-source library guidance](https://docs.microsoft.com/dotnet/standard/library-guidance/). ## Types of recommendations @@ -33,7 +33,7 @@ And finally, **Do not** recommendations indicate something you should almost nev ## Create a NuGet package -The latest recommended way to to create a NuGet package is from an [SDK-style project](https://docs.microsoft.com/nuget/resources/check-project-format). SDK-style project properties, including target [framework](#framework-targeting) and [package metadata](#package-metadata), are defined in the project file (.csproj). +The latest recommended way to to create a NuGet package is from an [SDK-style project](https://docs.microsoft.com/nuget/resources/check-project-format). SDK-style project properties, including target [framework](#framework-targeting) and [package metadata](#package-metadata), are defined in the [project file](https://docs.microsoft.com/visualstudio/ide/solutions-and-projects-in-visual-studio?view=vs-2019#project-file). Create a package from your SDK-style project by defining the required properties and packing in [Visual Studio](https://docs.microsoft.com/nuget/quickstart/create-and-publish-a-package-using-visual-studio?tabs=netcore-cli) or the [dotnet CLI](https://docs.microsoft.com/nuget/quickstart/create-and-publish-a-package-using-the-dotnet-cli). @@ -45,13 +45,13 @@ To help decide which .NET frameworks to target, see our [latest guidance for cro ## Package metadata -Metadata is a foundational component of any NuGet package. The quality of your metadata can vastly influence the discoverability, usability, adn trustworthiness of your package. +Metadata is a foundational component of any NuGet package. The quality of your metadata can vastly influence the discoverability, usability, and trustworthiness of your package. In Visual Studio, the recommended way to specify package metadata is to go Project > [Project Name] Properties > Package. Package metadata elements can also be [specified directly in the project file](https://docs.microsoft.com/nuget/create-packages/creating-a-package-msbuild#set-properties). -Below is a table mapping and describing available packages metadata elements: +Below is a table mapping and describing available package metadata elements: | Visual Studio property name | [Project file/ MSBuild property name](https://docs.microsoft.com/dotnet/core/tools/csproj#packagereleasenotes) | [Nuspec property name](https://docs.microsoft.com/nuget/reference/nuspec#general-form-and-schema) | Description | |-----------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------| @@ -79,6 +79,7 @@ If you're publishing a completely new package: ✔️ CONSIDER choosing a NuGet package name with a prefix that meets NuGet's [prefix reservation criteria](https://docs.microsoft.com/nuget/nuget-org/id-prefix-reservation#id-prefix-reservation-criteria). > Reserving the prefix ID for your package will let you get the verified check mark: > ![image](media/Verified-check-mark.png) +> > Check out the [Package ID prefix reservation docs](https://docs.microsoft.com/nuget/nuget-org/id-prefix-reservation) to learn more. ### Package Version @@ -88,7 +89,7 @@ If you're publishing a completely new package: ✔️ DO publish a package as a [pre-release package](https://docs.microsoft.com/dotnet/standard/library-guidance/nuget#pre-release-packages) if it is non-stable or a preview. -See the [.NET library versioning guide](https://docs.microsoft.com/dotnet/standard/library-guidance/versioning) for more advanced guidance including assembly versioning. +See the [.NET library versioning guide](https://docs.microsoft.com/dotnet/standard/library-guidance/versioning) for more advanced guidance. ### Authors @@ -97,7 +98,7 @@ See the [.NET library versioning guide](https://docs.microsoft.com/dotnet/standa ### Description ✔️ DO include a short description (up to 4000 characters) to describe your package. -> Package descriptions are one of the most prominent fields surfaced in NuGet search and will likely be the first thing a potential consumers looks at to determine if a package is right for them. +> Package descriptions are one of the most prominent fields surfaced in NuGet search and will likely be the first thing potential consumers looks at to determine if a package is right for them. ### Copyright @@ -147,10 +148,9 @@ Example: Copyright (c) Contoso 2020 ### Repository Type and URL -✔️ CONSIDER including a repository type and URL to make it easy for package consumers to view source code, report issues, and view repository documentation. - -✔️ CONSIDER setting up [Source Link](https://docs.microsoft.com/dotnet/standard/library-guidance/sourcelink) to add source control metadata to your NuGet package and make your library easier to debug. +✔️ CONSIDER setting up [Source Link](https://docs.microsoft.com/dotnet/standard/library-guidance/sourcelink) to automatically add source control metadata to your NuGet package and make your library easier to debug. > Source Link automatically adds `Repository URL` and `Repository Type` to the package metadata. It also adds the specific commit associated with your package version. + ### Tags ✔️ DO include several tags with key terms related to your package to enhance discoverability. From ec5c390d9d728a5d3f680b4448c4aaea5a792c32 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Mon, 1 Feb 2021 16:30:29 -0500 Subject: [PATCH 273/988] fixed a link --- docs/guides/Package-authoring-best-practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guides/Package-authoring-best-practices.md b/docs/guides/Package-authoring-best-practices.md index 3f8d71483..12e123511 100644 --- a/docs/guides/Package-authoring-best-practices.md +++ b/docs/guides/Package-authoring-best-practices.md @@ -33,7 +33,7 @@ And finally, **Do not** recommendations indicate something you should almost nev ## Create a NuGet package -The latest recommended way to to create a NuGet package is from an [SDK-style project](https://docs.microsoft.com/nuget/resources/check-project-format). SDK-style project properties, including target [framework](#framework-targeting) and [package metadata](#package-metadata), are defined in the [project file](https://docs.microsoft.com/visualstudio/ide/solutions-and-projects-in-visual-studio?view=vs-2019#project-file). +The latest recommended way to to create a NuGet package is from an [SDK-style project](https://docs.microsoft.com/nuget/resources/check-project-format). SDK-style project properties, including [target framework](https://docs.microsoft.com/dotnet/standard/frameworks) and [package metadata](#package-metadata), are defined in the [project file](https://docs.microsoft.com/visualstudio/ide/solutions-and-projects-in-visual-studio?view=vs-2019#project-file). Create a package from your SDK-style project by defining the required properties and packing in [Visual Studio](https://docs.microsoft.com/nuget/quickstart/create-and-publish-a-package-using-visual-studio?tabs=netcore-cli) or the [dotnet CLI](https://docs.microsoft.com/nuget/quickstart/create-and-publish-a-package-using-the-dotnet-cli). From 2b9aace94d67808c15e9af781d32f246f1d933be Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Mon, 1 Feb 2021 16:32:51 -0500 Subject: [PATCH 274/988] fixed another link --- docs/guides/Package-authoring-best-practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guides/Package-authoring-best-practices.md b/docs/guides/Package-authoring-best-practices.md index 12e123511..54f2103b8 100644 --- a/docs/guides/Package-authoring-best-practices.md +++ b/docs/guides/Package-authoring-best-practices.md @@ -33,7 +33,7 @@ And finally, **Do not** recommendations indicate something you should almost nev ## Create a NuGet package -The latest recommended way to to create a NuGet package is from an [SDK-style project](https://docs.microsoft.com/nuget/resources/check-project-format). SDK-style project properties, including [target framework](https://docs.microsoft.com/dotnet/standard/frameworks) and [package metadata](#package-metadata), are defined in the [project file](https://docs.microsoft.com/visualstudio/ide/solutions-and-projects-in-visual-studio?view=vs-2019#project-file). +The latest recommended way to to create a NuGet package is from an [SDK-style project](https://docs.microsoft.com/nuget/resources/check-project-format). SDK-style project properties, including [target framework](https://docs.microsoft.com/dotnet/standard/frameworks) and [package metadata](#package-metadata), are defined in the [project file](https://docs.microsoft.com/visualstudio/ide/solutions-and-projects-in-visual-studio#project-file). Create a package from your SDK-style project by defining the required properties and packing in [Visual Studio](https://docs.microsoft.com/nuget/quickstart/create-and-publish-a-package-using-visual-studio?tabs=netcore-cli) or the [dotnet CLI](https://docs.microsoft.com/nuget/quickstart/create-and-publish-a-package-using-the-dotnet-cli). From 60f07596d40d3b6780e351d6ff2083327c26239e Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Mon, 1 Feb 2021 17:00:19 -0500 Subject: [PATCH 275/988] Moved location of best practices guide --- docs/TOC.md | 1 + .../Package-authoring-best-practices.md | 175 ++++++++++++++++++ 2 files changed, 176 insertions(+) create mode 100644 docs/create-packages/Package-authoring-best-practices.md diff --git a/docs/TOC.md b/docs/TOC.md index b0ce19b55..7700d4ffe 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -38,6 +38,7 @@ ## [Support multiple target frameworks in your project file](create-packages/multiple-target-frameworks-project-file.md) ## [Build a prerelease package](create-packages/prerelease-packages.md) ## [Create a symbol package](create-packages/symbol-packages-snupkg.md) +## [NuGet.org package authoring best practices](create-packages/Package-authoring-best-practices.md) ## Advanced tasks ### [Support multiple target frameworks](create-packages/supporting-multiple-target-frameworks.md) ### [Modify source code and config files](create-packages/source-and-config-file-transformations.md) diff --git a/docs/create-packages/Package-authoring-best-practices.md b/docs/create-packages/Package-authoring-best-practices.md new file mode 100644 index 000000000..54f2103b8 --- /dev/null +++ b/docs/create-packages/Package-authoring-best-practices.md @@ -0,0 +1,175 @@ +--- +title: Package authoring best practices +description: A general guide of best practices for creating high quality NuGet packages. +author: chgill-MSFT +ms.author: chgill +ms.date: 09/17/2020 +ms.topic: conceptual +--- + +# Package authoring best practices + +This guidance is intended to give NuGet package authors a lightweight reference to create and publish high-quality packages. It will primarily focus on package-specific best practices such as metadata and packing. For more in-depth suggestions for building high quality libraries, see the .NET [Open-source library guidance](https://docs.microsoft.com/dotnet/standard/library-guidance/). + +## Types of recommendations + +Each article presents four types of recommendations: **Do**, **Consider**, **Avoid**, and **Do not**. The type of recommendation indicates how closely it should be followed. + +You should almost always follow a **Do** recommendation. For example: + +✔️ DO include a short description for your package that describes what it's for. + +On the other hand, **Consider** recommendations should generally be followed, but there are legitimate exceptions to the rule: + +✔️ CONSIDER choosing a NuGet package name with a prefix that meets NuGet's prefix reservation [criteria](https://docs.microsoft.com/nuget/reference/id-prefix-reservation). + +**Avoid** recommendations mention things that are generally not a good idea, but breaking the rule sometimes makes sense: + +❌ AVOID NuGet package references that demand an exact version. + +And finally, **Do not** recommendations indicate something you should almost never do: + +❌ DO NOT use the `LicenseUrl` metadata property. + +## Create a NuGet package + +The latest recommended way to to create a NuGet package is from an [SDK-style project](https://docs.microsoft.com/nuget/resources/check-project-format). SDK-style project properties, including [target framework](https://docs.microsoft.com/dotnet/standard/frameworks) and [package metadata](#package-metadata), are defined in the [project file](https://docs.microsoft.com/visualstudio/ide/solutions-and-projects-in-visual-studio#project-file). + +Create a package from your SDK-style project by defining the required properties and packing in [Visual Studio](https://docs.microsoft.com/nuget/quickstart/create-and-publish-a-package-using-visual-studio?tabs=netcore-cli) or the [dotnet CLI](https://docs.microsoft.com/nuget/quickstart/create-and-publish-a-package-using-the-dotnet-cli). + +✔️ DO create an SDK-style project and create (pack) your package using Visual Studio or the dotnet CLI. + +For more detailed guidance regarding package creation including necessary client tools, project file example, and commands, see [Create a NuGet package using the dotnet CLI](https://docs.microsoft.com/nuget/create-packages/creating-a-package-dotnet-cli). + +To help decide which .NET frameworks to target, see our [latest guidance for cross-platform targeting](https://docs.microsoft.com/dotnet/standard/library-guidance/cross-platform-targeting). + +## Package metadata + +Metadata is a foundational component of any NuGet package. The quality of your metadata can vastly influence the discoverability, usability, and trustworthiness of your package. + +In Visual Studio, the recommended way to specify package metadata is to go Project > [Project Name] Properties > Package. + +Package metadata elements can also be [specified directly in the project file](https://docs.microsoft.com/nuget/create-packages/creating-a-package-msbuild#set-properties). + +Below is a table mapping and describing available package metadata elements: + +| Visual Studio property name | [Project file/ MSBuild property name](https://docs.microsoft.com/dotnet/core/tools/csproj#packagereleasenotes) | [Nuspec property name](https://docs.microsoft.com/nuget/reference/nuspec#general-form-and-schema) | Description | +|-----------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------| +| [`Package id`](#package-id) | [`PackageId`](https://docs.microsoft.com/dotnet/core/tools/csproj#packageid) | [`id`](https://docs.microsoft.com/nuget/reference/nuspec#id) | The package name or identifier. | +| [`Package version`](#package-version) | [`PackageVersion`](https://docs.microsoft.com/dotnet/core/tools/csproj#packageversion) | [`version`](https://docs.microsoft.com/nuget/reference/nuspec#version) | NuGet package version. | +| [`Authors`](#authors) | [`Authors`](https://docs.microsoft.com/dotnet/core/tools/csproj#authors) | [`authors`](https://docs.microsoft.com/nuget/reference/nuspec#authors) | A comma-separated list of package authors, often using the individual's or an organization's "pretty name." | +| [`Description`](#description) | [`Description`](https://docs.microsoft.com/dotnet/core/tools/csproj#description) | [`description`](https://docs.microsoft.com/nuget/reference/nuspec#description) | A description of the package. | +| [`Copyright`](#copyright) | [`Copyright`](https://docs.microsoft.com/dotnet/core/tools/csproj#copyright) | [`copyright`](https://docs.microsoft.com/nuget/reference/nuspec#copyright) | Copyright details for the package. | +| [`Licensing - Expression`](#licensing) | [`PackageLicenseExpression`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="expression"`](https://docs.microsoft.com/nuget/reference/nuspec#license) | An SPDX license expression. | +| [`Licensing - File`](#licensing) | [`PackageLicenseFile`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="file"`](https://docs.microsoft.com/nuget/reference/nuspec#license) | Path to a custom license file. | +| [`Project URL`](#project-url) | `PackageProjectUrl` | [`projectUrl`](https://docs.microsoft.com/nuget/reference/nuspec#projecturl) | A URL for the project homepage. | +| [`Icon File`](#icon) | [`PackageIcon`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-an-icon-image-file) | [`icon`](https://docs.microsoft.com/nuget/reference/nuspec#icon) | Path to the package icon image file. | +| [`Repository URL`](#repository-type-and-url) | [`RepositoryUrl`](https://docs.microsoft.com/dotnet/core/tools/csproj#repositoryurl) | [`repository url`](https://docs.microsoft.com/nuget/reference/nuspec#repository) | URL to the repository from which the package was built. | +| [`Repository type`](#repository-type-and-url) | [`RespositoryType`](https://docs.microsoft.com/dotnet/core/tools/csproj#repositorytype) | [`repository type`](https://docs.microsoft.com/nuget/reference/nuspec#repository) | Type of repository the repository URL is pointing to (i.e. "git"). | +| [`Tags`](#tags) | [`PackageTags`](https://docs.microsoft.com/dotnet/core/tools/csproj#packagetags) | [`tags`](https://docs.microsoft.com/nuget/reference/nuspec#tags) | A space-delimited list of tags and keywords that describe the package. Tags are used when searching for packages. | +| [`Release notes`](#release-notes) | [`PackageReleaseNotes`](https://docs.microsoft.com/dotnet/core/tools/csproj#packagereleasenotes) | [`releaseNotes`](https://docs.microsoft.com/nuget/reference/nuspec#releasenotes) | A description of the changes made in this release of the package. | | + +### Package ID + +If you're publishing a completely new package: + +✔️ DO choose a package ID that is unique and clearly differentiated from existing packages on NuGet.org. +> You can check if a package ID is unique and differentiable by searching for the ID on NuGet.org or checking if the following link exists: https://www.nuget.org/packages/. + +✔️ CONSIDER choosing a NuGet package name with a prefix that meets NuGet's [prefix reservation criteria](https://docs.microsoft.com/nuget/nuget-org/id-prefix-reservation#id-prefix-reservation-criteria). +> Reserving the prefix ID for your package will let you get the verified check mark: +> ![image](media/Verified-check-mark.png) +> +> Check out the [Package ID prefix reservation docs](https://docs.microsoft.com/nuget/nuget-org/id-prefix-reservation) to learn more. + +### Package Version + +✔️ CONSIDER using [SemVer](https://semver.org/) to version your NuGet package. +> Essentially, this means using the Major.Minor.Patch[-prerelease] format. + +✔️ DO publish a package as a [pre-release package](https://docs.microsoft.com/dotnet/standard/library-guidance/nuget#pre-release-packages) if it is non-stable or a preview. + +See the [.NET library versioning guide](https://docs.microsoft.com/dotnet/standard/library-guidance/versioning) for more advanced guidance. + +### Authors + +✔️ DO use the author field for your or your organization's "pretty name." +> For example, if my NuGet.org username is "jdoe" then using "Jane Doe" for the author field may help consumers recognize me as an author. If my organization's NuGet.org username is "ContosoToolkit" then using "Contoso Corporation" may be more recognizable and inspire more consumer trust. +### Description + +✔️ DO include a short description (up to 4000 characters) to describe your package. +> Package descriptions are one of the most prominent fields surfaced in NuGet search and will likely be the first thing potential consumers looks at to determine if a package is right for them. + +### Copyright + +✔️ CONSIDER copyrighting your package with "Copyright (c) ." +>A copyright notice essentially indicates that your work cannot be copied without your permission. Including a copyright notice in your package is easy and won't do any harm! + +Example: Copyright (c) Contoso 2020 + +### Licensing + +✔️ DO [include a license expression or license file in your package](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file). +> [!IMPORTANT] +> A project without a license defaults to [exclusive copyright](https://choosealicense.com/no-permission/), meaning that you have not granted anyone permission to use your project. + +❌ DO NOT use the deprecated `LicenseUrl` metadata property. +> This presents legal ambiguity as license changes at the URL will retroactively change the displayed license for previous package versions. + +#### If your package is [open source](https://opensource.org/osd) + +✔️ DO [choose an open source license](https://choosealicense.com/) to make your package open source. +> *"Open source licenses are licenses that comply with the Open Source Definition — in brief, they allow software to be freely used, modified, and shared."* - Open Source Initiative. To learn more about open source software and the Open Source Initiative, check out https://opensource.org/. + +✔️ CONSIDER [including a license expression in your package](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file). +> License expressions are surfaced the most clearly and make it more obvious to consumers if they can use your package or if the license has changed. +> [!Note] +> NuGet.org only accepts license expressions for licenses that are approved by the Open Source Initiative or the Free Software Foundation. + +#### If your package is not open source + +✔️ DO [include a license file in your package](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file). +> Any license file (.txt or .md) can be added to your package, including non-standard licenses. + +### Project URL + +✔️ CONSIDER including a link to an associated project, repository, or company website. +> Your project site should have everything users need to know about your package and will likely be where users look for documentation. + +### Icon + +✔️ CONSIDER [including an icon with your package](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-an-icon-image-file) to help visually differentiate it. It's a relatively small addition that can improve perception of package quality. +> Icons can be specific to individual packages or be a brand logo. + +✔️ DO use an image that is 128x128 and has a transparent background (PNG) for best viewing results. +> NuGet will automatically scale your image to the client it is being displayed on. + +❌ DO NOT use the deprecated `IconUrl` metadata property. + +### Repository Type and URL + +✔️ CONSIDER setting up [Source Link](https://docs.microsoft.com/dotnet/standard/library-guidance/sourcelink) to automatically add source control metadata to your NuGet package and make your library easier to debug. +> Source Link automatically adds `Repository URL` and `Repository Type` to the package metadata. It also adds the specific commit associated with your package version. + +### Tags + +✔️ DO include several tags with key terms related to your package to enhance discoverability. +> Tags are taken into account in NuGet.org's search algorithm and are especially helpful for terms that are not in the Package ID but are relevant. + +For example, if I published a package to log strings to the console, I would include: "logging, log, console, string, output" + +### Release notes + +✔️ CONSIDER including release notes with each update describing what changes were made. +> While there is no specific format required for release notes, we recommend including: +> +> 1. Breaking changes +> 2. New features +> 3. Bug fixes +> +> If you already track release notes or a changelog in your repo, you can also include a link to the relevant file. + +## Related topics + +- [Create and publish a package (dotnet CLI)](https://docs.microsoft.com/nuget/quickstart/create-and-publish-a-package-using-the-dotnet-cli) +- [Create and publish a package (Visual Studio)](https://docs.microsoft.com/nuget/quickstart/create-and-publish-a-package-using-visual-studio?tabs=netcore-cli) From 5ccb99929ffd66e215f38f064fc5d8e603d5f21c Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Mon, 1 Feb 2021 17:09:08 -0500 Subject: [PATCH 276/988] Fixed title on TOC --- docs/TOC.md | 2 +- .../Package-authoring-best-practices.md | 175 ------------------ 2 files changed, 1 insertion(+), 176 deletions(-) delete mode 100644 docs/guides/Package-authoring-best-practices.md diff --git a/docs/TOC.md b/docs/TOC.md index 7700d4ffe..9cbab7c6d 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -38,7 +38,7 @@ ## [Support multiple target frameworks in your project file](create-packages/multiple-target-frameworks-project-file.md) ## [Build a prerelease package](create-packages/prerelease-packages.md) ## [Create a symbol package](create-packages/symbol-packages-snupkg.md) -## [NuGet.org package authoring best practices](create-packages/Package-authoring-best-practices.md) +## [Package authoring best practices](create-packages/Package-authoring-best-practices.md) ## Advanced tasks ### [Support multiple target frameworks](create-packages/supporting-multiple-target-frameworks.md) ### [Modify source code and config files](create-packages/source-and-config-file-transformations.md) diff --git a/docs/guides/Package-authoring-best-practices.md b/docs/guides/Package-authoring-best-practices.md deleted file mode 100644 index 54f2103b8..000000000 --- a/docs/guides/Package-authoring-best-practices.md +++ /dev/null @@ -1,175 +0,0 @@ ---- -title: Package authoring best practices -description: A general guide of best practices for creating high quality NuGet packages. -author: chgill-MSFT -ms.author: chgill -ms.date: 09/17/2020 -ms.topic: conceptual ---- - -# Package authoring best practices - -This guidance is intended to give NuGet package authors a lightweight reference to create and publish high-quality packages. It will primarily focus on package-specific best practices such as metadata and packing. For more in-depth suggestions for building high quality libraries, see the .NET [Open-source library guidance](https://docs.microsoft.com/dotnet/standard/library-guidance/). - -## Types of recommendations - -Each article presents four types of recommendations: **Do**, **Consider**, **Avoid**, and **Do not**. The type of recommendation indicates how closely it should be followed. - -You should almost always follow a **Do** recommendation. For example: - -✔️ DO include a short description for your package that describes what it's for. - -On the other hand, **Consider** recommendations should generally be followed, but there are legitimate exceptions to the rule: - -✔️ CONSIDER choosing a NuGet package name with a prefix that meets NuGet's prefix reservation [criteria](https://docs.microsoft.com/nuget/reference/id-prefix-reservation). - -**Avoid** recommendations mention things that are generally not a good idea, but breaking the rule sometimes makes sense: - -❌ AVOID NuGet package references that demand an exact version. - -And finally, **Do not** recommendations indicate something you should almost never do: - -❌ DO NOT use the `LicenseUrl` metadata property. - -## Create a NuGet package - -The latest recommended way to to create a NuGet package is from an [SDK-style project](https://docs.microsoft.com/nuget/resources/check-project-format). SDK-style project properties, including [target framework](https://docs.microsoft.com/dotnet/standard/frameworks) and [package metadata](#package-metadata), are defined in the [project file](https://docs.microsoft.com/visualstudio/ide/solutions-and-projects-in-visual-studio#project-file). - -Create a package from your SDK-style project by defining the required properties and packing in [Visual Studio](https://docs.microsoft.com/nuget/quickstart/create-and-publish-a-package-using-visual-studio?tabs=netcore-cli) or the [dotnet CLI](https://docs.microsoft.com/nuget/quickstart/create-and-publish-a-package-using-the-dotnet-cli). - -✔️ DO create an SDK-style project and create (pack) your package using Visual Studio or the dotnet CLI. - -For more detailed guidance regarding package creation including necessary client tools, project file example, and commands, see [Create a NuGet package using the dotnet CLI](https://docs.microsoft.com/nuget/create-packages/creating-a-package-dotnet-cli). - -To help decide which .NET frameworks to target, see our [latest guidance for cross-platform targeting](https://docs.microsoft.com/dotnet/standard/library-guidance/cross-platform-targeting). - -## Package metadata - -Metadata is a foundational component of any NuGet package. The quality of your metadata can vastly influence the discoverability, usability, and trustworthiness of your package. - -In Visual Studio, the recommended way to specify package metadata is to go Project > [Project Name] Properties > Package. - -Package metadata elements can also be [specified directly in the project file](https://docs.microsoft.com/nuget/create-packages/creating-a-package-msbuild#set-properties). - -Below is a table mapping and describing available package metadata elements: - -| Visual Studio property name | [Project file/ MSBuild property name](https://docs.microsoft.com/dotnet/core/tools/csproj#packagereleasenotes) | [Nuspec property name](https://docs.microsoft.com/nuget/reference/nuspec#general-form-and-schema) | Description | -|-----------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------| -| [`Package id`](#package-id) | [`PackageId`](https://docs.microsoft.com/dotnet/core/tools/csproj#packageid) | [`id`](https://docs.microsoft.com/nuget/reference/nuspec#id) | The package name or identifier. | -| [`Package version`](#package-version) | [`PackageVersion`](https://docs.microsoft.com/dotnet/core/tools/csproj#packageversion) | [`version`](https://docs.microsoft.com/nuget/reference/nuspec#version) | NuGet package version. | -| [`Authors`](#authors) | [`Authors`](https://docs.microsoft.com/dotnet/core/tools/csproj#authors) | [`authors`](https://docs.microsoft.com/nuget/reference/nuspec#authors) | A comma-separated list of package authors, often using the individual's or an organization's "pretty name." | -| [`Description`](#description) | [`Description`](https://docs.microsoft.com/dotnet/core/tools/csproj#description) | [`description`](https://docs.microsoft.com/nuget/reference/nuspec#description) | A description of the package. | -| [`Copyright`](#copyright) | [`Copyright`](https://docs.microsoft.com/dotnet/core/tools/csproj#copyright) | [`copyright`](https://docs.microsoft.com/nuget/reference/nuspec#copyright) | Copyright details for the package. | -| [`Licensing - Expression`](#licensing) | [`PackageLicenseExpression`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="expression"`](https://docs.microsoft.com/nuget/reference/nuspec#license) | An SPDX license expression. | -| [`Licensing - File`](#licensing) | [`PackageLicenseFile`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="file"`](https://docs.microsoft.com/nuget/reference/nuspec#license) | Path to a custom license file. | -| [`Project URL`](#project-url) | `PackageProjectUrl` | [`projectUrl`](https://docs.microsoft.com/nuget/reference/nuspec#projecturl) | A URL for the project homepage. | -| [`Icon File`](#icon) | [`PackageIcon`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-an-icon-image-file) | [`icon`](https://docs.microsoft.com/nuget/reference/nuspec#icon) | Path to the package icon image file. | -| [`Repository URL`](#repository-type-and-url) | [`RepositoryUrl`](https://docs.microsoft.com/dotnet/core/tools/csproj#repositoryurl) | [`repository url`](https://docs.microsoft.com/nuget/reference/nuspec#repository) | URL to the repository from which the package was built. | -| [`Repository type`](#repository-type-and-url) | [`RespositoryType`](https://docs.microsoft.com/dotnet/core/tools/csproj#repositorytype) | [`repository type`](https://docs.microsoft.com/nuget/reference/nuspec#repository) | Type of repository the repository URL is pointing to (i.e. "git"). | -| [`Tags`](#tags) | [`PackageTags`](https://docs.microsoft.com/dotnet/core/tools/csproj#packagetags) | [`tags`](https://docs.microsoft.com/nuget/reference/nuspec#tags) | A space-delimited list of tags and keywords that describe the package. Tags are used when searching for packages. | -| [`Release notes`](#release-notes) | [`PackageReleaseNotes`](https://docs.microsoft.com/dotnet/core/tools/csproj#packagereleasenotes) | [`releaseNotes`](https://docs.microsoft.com/nuget/reference/nuspec#releasenotes) | A description of the changes made in this release of the package. | | - -### Package ID - -If you're publishing a completely new package: - -✔️ DO choose a package ID that is unique and clearly differentiated from existing packages on NuGet.org. -> You can check if a package ID is unique and differentiable by searching for the ID on NuGet.org or checking if the following link exists: https://www.nuget.org/packages/. - -✔️ CONSIDER choosing a NuGet package name with a prefix that meets NuGet's [prefix reservation criteria](https://docs.microsoft.com/nuget/nuget-org/id-prefix-reservation#id-prefix-reservation-criteria). -> Reserving the prefix ID for your package will let you get the verified check mark: -> ![image](media/Verified-check-mark.png) -> -> Check out the [Package ID prefix reservation docs](https://docs.microsoft.com/nuget/nuget-org/id-prefix-reservation) to learn more. - -### Package Version - -✔️ CONSIDER using [SemVer](https://semver.org/) to version your NuGet package. -> Essentially, this means using the Major.Minor.Patch[-prerelease] format. - -✔️ DO publish a package as a [pre-release package](https://docs.microsoft.com/dotnet/standard/library-guidance/nuget#pre-release-packages) if it is non-stable or a preview. - -See the [.NET library versioning guide](https://docs.microsoft.com/dotnet/standard/library-guidance/versioning) for more advanced guidance. - -### Authors - -✔️ DO use the author field for your or your organization's "pretty name." -> For example, if my NuGet.org username is "jdoe" then using "Jane Doe" for the author field may help consumers recognize me as an author. If my organization's NuGet.org username is "ContosoToolkit" then using "Contoso Corporation" may be more recognizable and inspire more consumer trust. -### Description - -✔️ DO include a short description (up to 4000 characters) to describe your package. -> Package descriptions are one of the most prominent fields surfaced in NuGet search and will likely be the first thing potential consumers looks at to determine if a package is right for them. - -### Copyright - -✔️ CONSIDER copyrighting your package with "Copyright (c) ." ->A copyright notice essentially indicates that your work cannot be copied without your permission. Including a copyright notice in your package is easy and won't do any harm! - -Example: Copyright (c) Contoso 2020 - -### Licensing - -✔️ DO [include a license expression or license file in your package](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file). -> [!IMPORTANT] -> A project without a license defaults to [exclusive copyright](https://choosealicense.com/no-permission/), meaning that you have not granted anyone permission to use your project. - -❌ DO NOT use the deprecated `LicenseUrl` metadata property. -> This presents legal ambiguity as license changes at the URL will retroactively change the displayed license for previous package versions. - -#### If your package is [open source](https://opensource.org/osd) - -✔️ DO [choose an open source license](https://choosealicense.com/) to make your package open source. -> *"Open source licenses are licenses that comply with the Open Source Definition — in brief, they allow software to be freely used, modified, and shared."* - Open Source Initiative. To learn more about open source software and the Open Source Initiative, check out https://opensource.org/. - -✔️ CONSIDER [including a license expression in your package](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file). -> License expressions are surfaced the most clearly and make it more obvious to consumers if they can use your package or if the license has changed. -> [!Note] -> NuGet.org only accepts license expressions for licenses that are approved by the Open Source Initiative or the Free Software Foundation. - -#### If your package is not open source - -✔️ DO [include a license file in your package](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file). -> Any license file (.txt or .md) can be added to your package, including non-standard licenses. - -### Project URL - -✔️ CONSIDER including a link to an associated project, repository, or company website. -> Your project site should have everything users need to know about your package and will likely be where users look for documentation. - -### Icon - -✔️ CONSIDER [including an icon with your package](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-an-icon-image-file) to help visually differentiate it. It's a relatively small addition that can improve perception of package quality. -> Icons can be specific to individual packages or be a brand logo. - -✔️ DO use an image that is 128x128 and has a transparent background (PNG) for best viewing results. -> NuGet will automatically scale your image to the client it is being displayed on. - -❌ DO NOT use the deprecated `IconUrl` metadata property. - -### Repository Type and URL - -✔️ CONSIDER setting up [Source Link](https://docs.microsoft.com/dotnet/standard/library-guidance/sourcelink) to automatically add source control metadata to your NuGet package and make your library easier to debug. -> Source Link automatically adds `Repository URL` and `Repository Type` to the package metadata. It also adds the specific commit associated with your package version. - -### Tags - -✔️ DO include several tags with key terms related to your package to enhance discoverability. -> Tags are taken into account in NuGet.org's search algorithm and are especially helpful for terms that are not in the Package ID but are relevant. - -For example, if I published a package to log strings to the console, I would include: "logging, log, console, string, output" - -### Release notes - -✔️ CONSIDER including release notes with each update describing what changes were made. -> While there is no specific format required for release notes, we recommend including: -> -> 1. Breaking changes -> 2. New features -> 3. Bug fixes -> -> If you already track release notes or a changelog in your repo, you can also include a link to the relevant file. - -## Related topics - -- [Create and publish a package (dotnet CLI)](https://docs.microsoft.com/nuget/quickstart/create-and-publish-a-package-using-the-dotnet-cli) -- [Create and publish a package (Visual Studio)](https://docs.microsoft.com/nuget/quickstart/create-and-publish-a-package-using-visual-studio?tabs=netcore-cli) From 0d37050cd084473d1cd6015aef28525f8997a8e2 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Mon, 1 Feb 2021 17:16:13 -0500 Subject: [PATCH 277/988] Fixed path for prefix image --- .../media/Verified-check-mark.png | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename docs/{guides => create-packages}/media/Verified-check-mark.png (100%) diff --git a/docs/guides/media/Verified-check-mark.png b/docs/create-packages/media/Verified-check-mark.png similarity index 100% rename from docs/guides/media/Verified-check-mark.png rename to docs/create-packages/media/Verified-check-mark.png From 92ed5736303a2432aa66cd1689a347f4b35e0395 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Mon, 1 Feb 2021 17:30:22 -0500 Subject: [PATCH 278/988] Changed ordering of best practices doc in TOC --- docs/TOC.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/TOC.md b/docs/TOC.md index 9cbab7c6d..74185de39 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -35,10 +35,10 @@ ## [Create a package (dotnet CLI)](create-packages/creating-a-package-dotnet-cli.md) ## [Create a package (nuget.exe CLI)](create-packages/creating-a-package.md) ## [Create a package (MSBuild)](create-packages/creating-a-package-msbuild.md) -## [Support multiple target frameworks in your project file](create-packages/multiple-target-frameworks-project-file.md) +## [Package authoring best practices](create-packages/Package-authoring-best-practices.md) ## [Build a prerelease package](create-packages/prerelease-packages.md) ## [Create a symbol package](create-packages/symbol-packages-snupkg.md) -## [Package authoring best practices](create-packages/Package-authoring-best-practices.md) +## [Support multiple target frameworks in your project file](create-packages/multiple-target-frameworks-project-file.md) ## Advanced tasks ### [Support multiple target frameworks](create-packages/supporting-multiple-target-frameworks.md) ### [Modify source code and config files](create-packages/source-and-config-file-transformations.md) From bce3ccf99bab6e8c31678a8b8853e309c934e399 Mon Sep 17 00:00:00 2001 From: Trivalik Date: Fri, 5 Feb 2021 07:06:25 +0100 Subject: [PATCH 279/988] update path to Package-restore-troubleshooting.md --- docs/consume-packages/Package-Restore.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Package-Restore.md b/docs/consume-packages/Package-Restore.md index 9fd9254fd..ca37681b0 100644 --- a/docs/consume-packages/Package-Restore.md +++ b/docs/consume-packages/Package-Restore.md @@ -239,4 +239,4 @@ To test the automatic package restore: ## Troubleshooting -See [Troubleshoot package restore](package-restore-troubleshooting.md). +See [Troubleshoot package restore](Package-restore-troubleshooting.md). From df3a58b8f217aeec9d16ae630da88507e71a18a6 Mon Sep 17 00:00:00 2001 From: Nabeel Valley <36758308+nabeelvalley@users.noreply.github.com> Date: Mon, 8 Feb 2021 09:45:34 +0200 Subject: [PATCH 280/988] Fix typo --- docs/reference/errors-and-warnings/NU3028.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/errors-and-warnings/NU3028.md b/docs/reference/errors-and-warnings/NU3028.md index c23555fd5..a98a2c1dc 100644 --- a/docs/reference/errors-and-warnings/NU3028.md +++ b/docs/reference/errors-and-warnings/NU3028.md @@ -20,7 +20,7 @@ f1_keywords: Certificate chain building failed for the timestamp signature. The timestamp signing certificate is untrusted, revoked, or revocation information for the certificate is unavailable. ### Solution -Use a trusted and valid certificate. Check internet connectivity.gits +Use a trusted and valid certificate. Check internet connectivity. ### Revocation check mode *(4.8.1+)* If the machine has restricted internet access (such as a build machine in a CI/CD scenario), installing/restoring a signed nuget package will result in this warning since the revocation servers are not reachable. This is expected. From f0891f6afef199083df28753d5e2ec4f54aa635f Mon Sep 17 00:00:00 2001 From: Ben Bodenmiller Date: Mon, 8 Feb 2021 12:32:27 -0800 Subject: [PATCH 281/988] Improve formatting --- docs/reference/nuget-config-file.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/reference/nuget-config-file.md b/docs/reference/nuget-config-file.md index 98fe36782..dba04929f 100644 --- a/docs/reference/nuget-config-file.md +++ b/docs/reference/nuget-config-file.md @@ -27,8 +27,8 @@ Contains miscellaneous configuration settings, which can be set using the [`nuge | Key | Value | | --- | --- | | dependencyVersion (`packages.config` only) | The default `DependencyVersion` value for package install, restore, and update, when the `-DependencyVersion` switch is not specified directly. This value is also used by the NuGet Package Manager UI. Values are `Lowest`, `HighestPatch`, `HighestMinor`, `Highest`. | -| globalPackagesFolder (projects using PackageReference only) | The location of the default global packages folder. The default is `%userprofile%\.nuget\packages` (Windows) or `~/.nuget/packages` (Mac/Linux). A relative path can be used in project-specific `nuget.config` files. This setting is overridden by the NUGET_PACKAGES environment variable, which takes precedence. | -| repositoryPath (`packages.config` only) | The location in which to install NuGet packages instead of the default `$(Solutiondir)/packages` folder. A relative path can be used in project-specific `nuget.config` files. This setting is overridden by the NUGET_PACKAGES environment variable, which takes precedence. | +| globalPackagesFolder (projects using PackageReference only) | The location of the default global packages folder. The default is `%userprofile%\.nuget\packages` (Windows) or `~/.nuget/packages` (Mac/Linux). A relative path can be used in project-specific `nuget.config` files. This setting is overridden by the `NUGET_PACKAGES` environment variable, which takes precedence. | +| repositoryPath (`packages.config` only) | The location in which to install NuGet packages instead of the default `$(Solutiondir)/packages` folder. A relative path can be used in project-specific `nuget.config` files. This setting is overridden by the `NUGET_PACKAGES` environment variable, which takes precedence. | | defaultPushSource | Identifies the URL or path of the package source that should be used as the default if no other package sources are found for an operation. | | http_proxy http_proxy.user http_proxy.password no_proxy | Proxy settings to use when connecting to package sources; `http_proxy` should be in the format `http://:@`. Passwords are encrypted and cannot be added manually. For `no_proxy`, the value is a comma-separated list of domains the bypass the proxy server. You can alternately use the http_proxy and no_proxy environment variables for those values. For additional details, see [NuGet proxy settings](http://skolima.blogspot.com/2012/07/nuget-proxy-settings.html) (skolima.blogspot.com). | | signatureValidationMode | Specifies the validation mode used to verify package signatures for package install, and restore. Values are `accept`, `require`. Defaults to `accept`. From 871b9358406261a4a83f0d31da05bdf2e87638fd Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 15:39:59 -0600 Subject: [PATCH 282/988] Initial drop --- docs/concepts/Security-Best-Practices.md | 164 ++++++++++++++++++ docs/concepts/media/advisories.png | Bin 0 -> 22836 bytes docs/concepts/media/dependencies.png | Bin 0 -> 13749 bytes docs/concepts/media/opensource-percent.png | Bin 0 -> 15288 bytes .../media/vulnerability-lifecycle.png | Bin 0 -> 12149 bytes 5 files changed, 164 insertions(+) create mode 100644 docs/concepts/Security-Best-Practices.md create mode 100644 docs/concepts/media/advisories.png create mode 100644 docs/concepts/media/dependencies.png create mode 100644 docs/concepts/media/opensource-percent.png create mode 100644 docs/concepts/media/vulnerability-lifecycle.png diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md new file mode 100644 index 000000000..9e300bb72 --- /dev/null +++ b/docs/concepts/Security-Best-Practices.md @@ -0,0 +1,164 @@ +--- +title: Best Practices for a Secure Supply Chain +description: Best practices for securing your supply chain software using NuGet & GitHub. +author: JonDouglas +ms.author: jodou +ms.date: 02/08/2021 +ms.topic: conceptual +--- + +# Best Practices for a Secure Supply Chain + +Open Source is everywhere. It is in many proprietary codebases and community projects. For organizations and individuals, the question today is not that you are or are not using open-source code, but what open-source code you are using, and how much. + +If you are not aware of what is in your software supply chain, an upstream vulnerability in one of your dependencies can be fatal, making you, and your customers, vulnerable to a potential compromise. In this document, we will dive deeper into what the term “software supply chain” means, why it matters, and how you can help secure your project’s supply chain with best practices. + +![The State of the Octoverse 2020 - Open Source](media/opensource-percent.png) + +## Dependencies + +The term software supply chain is used to refer to everything that goes into your software and where it comes from. It is the dependencies and properties of your dependencies that your software supply chain depends on. A dependency is what your software needs to run. It can be code, binaries, or other components, and where they come from such as a repository or package manager. + +It includes who wrote the code, when it was contributed, how it was reviewed for security issues, known vulnerabilities, supported versions, license information, and just about anything that touches it at any point of the process. + +Your supply chain also encompasses other parts of your stack beyond a single application such as your build and packaging scripts or the software that runs the infrastructure your application relies on. + +## Vulnerabilities + +Today, software dependencies are pervasive. It is quite common for your projects to use hundreds of open-source dependencies for functionality that you did not have to write yourself. This may mean that most of your application consists of code that you did not author. + +![The State of the Octoverse 2020 - Dependencies](media/dependencies.png) + +Possible vulnerabilities in your third-party or open-source dependencies, are presumably dependencies you cannot control as tightly as the code you write, which can create potential security risks in your supply chain. + +If one of these dependencies has a vulnerability, the chances are you have a vulnerability as well. This can be scary as one of your dependencies may change without you even knowing. Even if a vulnerability exists in a dependency today, but is not exploitable, it can be exploitable in the future. + +Being able to leverage the work of thousands of open-source developers & library authors means that thousands of strangers can effectively contribute directly to your production code. Your product, through your software supply chain, is affected by unpatched vulnerabilities, innocent mistakes, or even malicious attacks against dependencies. + +## Supply Chain Compromises + +The traditional definition of a supply chain comes from manufacturing, it is the chain of processes required to make and supply something. It includes planning, supply of materials, manufacturing, and retail. A software supply chain is similar, except instead of materials, it is code. Instead of manufacturing it is development. Instead of digging ore from the ground, code is sourced from suppliers, commercial or open source, and, in general, the open-source code comes from repositories. Adding code from a repository means your product takes a dependency on that code. + +One example of a software supply chain attack occurs when malicious code is purposefully added to a dependency, using the supply chain of that dependency to distribute the code to its victims. Supply chain attacks are real. There are many methods to attack a supply chain, from directly inserting malicious code as a new contributor, to taking over a contributor’s account without others noticing, or even compromising a signing key to distribute software that is not officially part of the dependency. + +Software supply chain attacks are in and of itself rarely the end goal, rather it is the beginning of an opportunity for an attacker to insert malware or provide a backdoor for future access. + +![The State of the Octoverse 2020 - Vulnerability Lifecycle](media/vulernability-lifecycle.png) + +## Unpatched Software + +The use of open source today is significant and is not expected to slow down anytime soon. Given that we are not going to stop using open-source software, the threat to supply chain security is unpatched software. Knowing that, how can you address the risk that a dependency of your project has a vulnerability? + +- **Knowing what is in your environment.** This requires discovering your dependencies and any transitive dependencies to understand the risks of those dependencies such as vulnerabilities or licensing restrictions. +- **Manage your dependencies.** When a new security vulnerability is discovered, you must determine whether you are impacted, and if so, update to the latest version and security patch available. This is especially important to review changes that introduce new dependencies or regularly auditing older dependencies. +- **Monitor your supply chain.** This is by auditing the controls you have in place to manage your dependencies. This will help you enforce more restrictive conditions to be met for your dependencies. + +![The State of the Octoverse 2020 - Advisories](media/advisories.png) + +We will cover various tools & techniques that NuGet & GitHub provides that you can use today to address potential risks inside your project. + +## Knowing what is in your environment + +### NuGet Dependency Graph + +You can view your NuGet dependencies in your project by looking directly at the respective project file. + +This is typically found in one of two places: + +- [`packages.config`](https://docs.microsoft.com/en-us/nuget/reference/packages-config) – Located in the project root. +- [``](https://docs.microsoft.com/en-us/nuget/consume-packages/package-references-in-project-files) – Located in the project file. + +Depending on what method you use to manage your NuGet dependencies, you can also use Visual Studio to view your dependencies directly in the [Solution Explorer](https://docs.microsoft.com/en-us/visualstudio/ide/solutions-and-projects-in-visual-studio?view=vs-2019#solution-explorer) or [NuGet Package Manager](https://docs.microsoft.com/en-us/nuget/consume-packages/install-use-packages-visual-studio). + +For CLI environments, you can use the [`dotnet list package`](https://docs.microsoft.com/en-us/dotnet/core/tools/dotnet-list-package) command to list out your project or solution’s dependencies. + +For more information on managing NuGet dependencies, [see the following documentation](https://docs.microsoft.com/en-us/nuget/consume-packages/overview-and-workflow). + +### GitHub Dependency Graph + +You can use GitHub’s dependency graph to see the packages your project depends on and the repositories that depend on it. This can help you see any vulnerabilities detected in its dependencies. + +For more information on GitHub repository dependencies, [see the following documentation](https://github.co/dependency-graph). + +### Dependency Versions + +To ensure a secure supply chain of dependencies, you will want to ensure that all your dependencies are regularly updated to the latest stable version. Your dependencies can include code you depend on, binaries you consume, tooling you use, and other components. This can include: + +- [Visual Studio](https://visualstudio.microsoft.com/downloads/) +- [.NET SDK & Runtime](https://dotnet.microsoft.com/download) +- [NuGet](https://www.nuget.org/downloads) +- [NuGet Packages](https://docs.microsoft.com/en-us/nuget/consume-packages/reinstalling-and-updating-packages) + +## Manage your dependencies + +### NuGet Deprecated & Vulnerable Dependencies + +You can use the [dotnet CLI](https://docs.microsoft.com/en-us/dotnet/core/tools/dotnet-list-package) to list any known deprecated or vulnerable dependencies you may have inside your project or solution. You can use the command `dotnet list package --deprecated` or `dotnet list package --vulnerable` to provide you a list of any known deprecations or vulnerabilities. + +### GitHub Vulnerable Dependencies + +If your project is hosted on GitHub, you can leverage [GitHub Security](https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/automatically-scanning-your-code-for-vulnerabilities-and-errors) to find security vulnerabilities and errors in your project and Dependabot will fix them by opening up a pull request against your codebase. + +Catching vulnerable dependencies before they are introduced is one goal of the [“Shift Left”](https://en.wikipedia.org/wiki/Shift-left_testing) movement. Being able to have information about your dependencies such as their license, transitive dependencies, and the age of dependencies helps you do just that. + +For more information about Dependabot alerts & security updates, [see the following documentation](https://docs.github.com/en/github/managing-security-vulnerabilities/about-alerts-for-vulnerable-dependencies). + +### NuGet Feeds + +Packages can come from different feeds. To ensure you are secure, knowing what feed your packages are coming from is a best practice. One such best practice is the use of a single feed. You can accomplish this by using multiple upstream source feeds to bring your packages into a single feed. + +For more information about single NuGet feeds, [see the following documentation](https://docs.microsoft.com/en-us/azure/devops/artifacts/concepts/upstream-sources?view=azure-devops). + +### Client Trust Policies + +There are policies that you can opt-into in which you require the packages you use to be signed. This allows you to trust a package author so long as it is author signed or trust a package if it is owned by a specific user or account that is repository signed by NuGet.org. + +To configure client trust policies, [see the following documentation](https://docs.microsoft.com/en-us/nuget/consume-packages/installing-signed-packages). + +### Lock Files + +Lock files store the hash of your package’s content. If the content hash of a package you want to install matches with the lock file, it will ensure you package repeatability. + +To enable lock files, [see the following documentation](https://docs.microsoft.com/en-us/nuget/consume-packages/package-references-in-project-files#locking-dependencies). + +## Monitor your supply chain + +### Publish to NuGet.org + +NuGet.org serves as a central repository to over 200,000 unique packages. Whenever you publish a package, NuGet.org will go through numerous validations and indexing that can benefit you in the long term. These can include scanning the package for viruses, [providing a repository signature](https://docs.microsoft.com/en-us/nuget/reference/signed-packages-reference) on the package, and even protecting your package ID so only you can push updates to it. + +To learn more about the benefits of publishing on NuGet.org, [see the following documentation](https://docs.microsoft.com/en-us/nuget/nuget-org/publish-a-package#package-validation-and-indexing). + +### GitHub Secret Scanning + +GitHub will scan repositories for NuGet API keys to prevent fraudulent uses of secrets that were accidentally committed. + +To learn more about secrete scanning, [see the following documentation](https://docs.github.com/en/github/administering-a-repository/about-secret-scanning). + +### Author Package Signing + +[Author signing](https://docs.microsoft.com/en-us/nuget/reference/signed-packages-reference) allows a package author to stamp their identity on a package and for a consumer to verify it came from you. This protects you against content tampering & serves as a single source of truth about the origin of the package and the package authenticity. + +To author sign a package, [see the following documentation](https://docs.microsoft.com/en-us/nuget/create-packages/sign-a-package). + +### Two-Factor Authentication (2FA) + +Enabling two-factor authentication (2FA) can add an extra layer of security when [logging into your GitHub account](https://docs.github.com/en/github/authenticating-to-github/securing-your-account-with-two-factor-authentication-2fa) or the [NuGet.org public package repository](https://docs.microsoft.com/en-us/nuget/nuget-org/individual-accounts#enable-two-factor-authentication-2fa). It is recommended to enable two-factor authentication to protect your account. + +### Package ID Prefix Reservation + +To protect the identity of your packages, you can reserve a package ID prefix to associate a matching owner if your package ID prefix properly falls [under the following criteria](https://docs.microsoft.com/en-us/nuget/nuget-org/id-prefix-reservation#id-prefix-reservation-criteria). + +To learn about reserving ID prefixes, [see the following documentation](https://docs.microsoft.com/en-us/nuget/nuget-org/id-prefix-reservation). + +### Deprecating & Unlisting a Vulnerable Package + +To protect the .NET package ecosystem. When you are aware of a vulnerability in a package you have authored, do your best to deprecate & unlist the package so it is hidden from users searching for packages. If you are consuming a package that is deprecated & unlisted, you should avoid using the package. + +To learn how to deprecate & unlist a package, see the following documentation on [deprecating](https://docs.microsoft.com/en-us/nuget/nuget-org/deprecate-packages) & [unlisting packages](https://docs.microsoft.com/en-us/nuget/nuget-org/policies/deleting-packages#unlisting-a-package). + +## Summary + +Your software supply chain is anything that goes into or affects your code. Even though supply chain compromises are real and growing in popularity, they are still rare – and so the most important thing you can do is protect your supply chain by **being aware of your dependencies, managing your dependencies** and **monitoring your supply chain.** + +You learned about various methods NuGet & [GitHub](https://docs.microsoft.com/en-us/learn/modules/maintain-secure-repository-github/) provides that are available to you today to be more effective in viewing, managing, and monitoring your supply chain. \ No newline at end of file diff --git a/docs/concepts/media/advisories.png b/docs/concepts/media/advisories.png new file mode 100644 index 0000000000000000000000000000000000000000..0402b6e2d727a4f8080dff52390743f399a66b08 GIT binary patch literal 22836 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 literal 0 HcmV?d00001 diff --git a/docs/concepts/media/dependencies.png b/docs/concepts/media/dependencies.png new file mode 100644 index 0000000000000000000000000000000000000000..5ac749919b4dda50e0d981363dba72cec23c7f7a GIT binary patch literal 13749 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�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 literal 0 HcmV?d00001 diff --git a/docs/concepts/media/vulnerability-lifecycle.png b/docs/concepts/media/vulnerability-lifecycle.png new file mode 100644 index 0000000000000000000000000000000000000000..41ea40f6b8223499c0432e4796c2f204d50ec557 GIT binary patch literal 12149 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 Date: Mon, 8 Feb 2021 15:42:53 -0600 Subject: [PATCH 283/988] Update TOC --- docs/TOC.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/TOC.md b/docs/TOC.md index 74185de39..55cc05137 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -69,6 +69,7 @@ ## [Package installation process](concepts/package-installation-process.md) ## [Package versioning](concepts/package-versioning.md) ## [Dependency resolution](concepts/dependency-resolution.md) +## [Best Practices for a Secure Supply Chain](concepts/Security-Best-Practices.md) # Reference ## [.nuspec](reference/nuspec.md) ## [nuget.config file](reference/nuget-config-file.md) From 8973cb24eb6ef0000df7c52e26fb95b7ee20a5ce Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 15:46:00 -0600 Subject: [PATCH 284/988] Fix URL links & image typo --- docs/concepts/Security-Best-Practices.md | 40 ++++++++++++------------ 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 9e300bb72..5f0f8a412 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -43,7 +43,7 @@ One example of a software supply chain attack occurs when malicious code is purp Software supply chain attacks are in and of itself rarely the end goal, rather it is the beginning of an opportunity for an attacker to insert malware or provide a backdoor for future access. -![The State of the Octoverse 2020 - Vulnerability Lifecycle](media/vulernability-lifecycle.png) +![The State of the Octoverse 2020 - Vulnerability Lifecycle](media/vulnerability-lifecycle.png) ## Unpatched Software @@ -65,14 +65,14 @@ You can view your NuGet dependencies in your project by looking directly at the This is typically found in one of two places: -- [`packages.config`](https://docs.microsoft.com/en-us/nuget/reference/packages-config) – Located in the project root. -- [``](https://docs.microsoft.com/en-us/nuget/consume-packages/package-references-in-project-files) – Located in the project file. +- [`packages.config`](https://docs.microsoft.com/nuget/reference/packages-config) – Located in the project root. +- [``](https://docs.microsoft.com/nuget/consume-packages/package-references-in-project-files) – Located in the project file. -Depending on what method you use to manage your NuGet dependencies, you can also use Visual Studio to view your dependencies directly in the [Solution Explorer](https://docs.microsoft.com/en-us/visualstudio/ide/solutions-and-projects-in-visual-studio?view=vs-2019#solution-explorer) or [NuGet Package Manager](https://docs.microsoft.com/en-us/nuget/consume-packages/install-use-packages-visual-studio). +Depending on what method you use to manage your NuGet dependencies, you can also use Visual Studio to view your dependencies directly in the [Solution Explorer](https://docs.microsoft.com/visualstudio/ide/solutions-and-projects-in-visual-studio?view=vs-2019#solution-explorer) or [NuGet Package Manager](https://docs.microsoft.com/nuget/consume-packages/install-use-packages-visual-studio). -For CLI environments, you can use the [`dotnet list package`](https://docs.microsoft.com/en-us/dotnet/core/tools/dotnet-list-package) command to list out your project or solution’s dependencies. +For CLI environments, you can use the [`dotnet list package`](https://docs.microsoft.com/dotnet/core/tools/dotnet-list-package) command to list out your project or solution’s dependencies. -For more information on managing NuGet dependencies, [see the following documentation](https://docs.microsoft.com/en-us/nuget/consume-packages/overview-and-workflow). +For more information on managing NuGet dependencies, [see the following documentation](https://docs.microsoft.com/nuget/consume-packages/overview-and-workflow). ### GitHub Dependency Graph @@ -87,13 +87,13 @@ To ensure a secure supply chain of dependencies, you will want to ensure that al - [Visual Studio](https://visualstudio.microsoft.com/downloads/) - [.NET SDK & Runtime](https://dotnet.microsoft.com/download) - [NuGet](https://www.nuget.org/downloads) -- [NuGet Packages](https://docs.microsoft.com/en-us/nuget/consume-packages/reinstalling-and-updating-packages) +- [NuGet Packages](https://docs.microsoft.com/nuget/consume-packages/reinstalling-and-updating-packages) ## Manage your dependencies ### NuGet Deprecated & Vulnerable Dependencies -You can use the [dotnet CLI](https://docs.microsoft.com/en-us/dotnet/core/tools/dotnet-list-package) to list any known deprecated or vulnerable dependencies you may have inside your project or solution. You can use the command `dotnet list package --deprecated` or `dotnet list package --vulnerable` to provide you a list of any known deprecations or vulnerabilities. +You can use the [dotnet CLI](https://docs.microsoft.com/dotnet/core/tools/dotnet-list-package) to list any known deprecated or vulnerable dependencies you may have inside your project or solution. You can use the command `dotnet list package --deprecated` or `dotnet list package --vulnerable` to provide you a list of any known deprecations or vulnerabilities. ### GitHub Vulnerable Dependencies @@ -107,27 +107,27 @@ For more information about Dependabot alerts & security updates, [see the follow Packages can come from different feeds. To ensure you are secure, knowing what feed your packages are coming from is a best practice. One such best practice is the use of a single feed. You can accomplish this by using multiple upstream source feeds to bring your packages into a single feed. -For more information about single NuGet feeds, [see the following documentation](https://docs.microsoft.com/en-us/azure/devops/artifacts/concepts/upstream-sources?view=azure-devops). +For more information about single NuGet feeds, [see the following documentation](https://docs.microsoft.com/azure/devops/artifacts/concepts/upstream-sources?view=azure-devops). ### Client Trust Policies There are policies that you can opt-into in which you require the packages you use to be signed. This allows you to trust a package author so long as it is author signed or trust a package if it is owned by a specific user or account that is repository signed by NuGet.org. -To configure client trust policies, [see the following documentation](https://docs.microsoft.com/en-us/nuget/consume-packages/installing-signed-packages). +To configure client trust policies, [see the following documentation](https://docs.microsoft.com/nuget/consume-packages/installing-signed-packages). ### Lock Files Lock files store the hash of your package’s content. If the content hash of a package you want to install matches with the lock file, it will ensure you package repeatability. -To enable lock files, [see the following documentation](https://docs.microsoft.com/en-us/nuget/consume-packages/package-references-in-project-files#locking-dependencies). +To enable lock files, [see the following documentation](https://docs.microsoft.com/nuget/consume-packages/package-references-in-project-files#locking-dependencies). ## Monitor your supply chain ### Publish to NuGet.org -NuGet.org serves as a central repository to over 200,000 unique packages. Whenever you publish a package, NuGet.org will go through numerous validations and indexing that can benefit you in the long term. These can include scanning the package for viruses, [providing a repository signature](https://docs.microsoft.com/en-us/nuget/reference/signed-packages-reference) on the package, and even protecting your package ID so only you can push updates to it. +NuGet.org serves as a central repository to over 200,000 unique packages. Whenever you publish a package, NuGet.org will go through numerous validations and indexing that can benefit you in the long term. These can include scanning the package for viruses, [providing a repository signature](https://docs.microsoft.com/nuget/reference/signed-packages-reference) on the package, and even protecting your package ID so only you can push updates to it. -To learn more about the benefits of publishing on NuGet.org, [see the following documentation](https://docs.microsoft.com/en-us/nuget/nuget-org/publish-a-package#package-validation-and-indexing). +To learn more about the benefits of publishing on NuGet.org, [see the following documentation](https://docs.microsoft.com/nuget/nuget-org/publish-a-package#package-validation-and-indexing). ### GitHub Secret Scanning @@ -137,28 +137,28 @@ To learn more about secrete scanning, [see the following documentation](https:// ### Author Package Signing -[Author signing](https://docs.microsoft.com/en-us/nuget/reference/signed-packages-reference) allows a package author to stamp their identity on a package and for a consumer to verify it came from you. This protects you against content tampering & serves as a single source of truth about the origin of the package and the package authenticity. +[Author signing](https://docs.microsoft.com/nuget/reference/signed-packages-reference) allows a package author to stamp their identity on a package and for a consumer to verify it came from you. This protects you against content tampering & serves as a single source of truth about the origin of the package and the package authenticity. -To author sign a package, [see the following documentation](https://docs.microsoft.com/en-us/nuget/create-packages/sign-a-package). +To author sign a package, [see the following documentation](https://docs.microsoft.com/nuget/create-packages/sign-a-package). ### Two-Factor Authentication (2FA) -Enabling two-factor authentication (2FA) can add an extra layer of security when [logging into your GitHub account](https://docs.github.com/en/github/authenticating-to-github/securing-your-account-with-two-factor-authentication-2fa) or the [NuGet.org public package repository](https://docs.microsoft.com/en-us/nuget/nuget-org/individual-accounts#enable-two-factor-authentication-2fa). It is recommended to enable two-factor authentication to protect your account. +Enabling two-factor authentication (2FA) can add an extra layer of security when [logging into your GitHub account](https://docs.github.com/en/github/authenticating-to-github/securing-your-account-with-two-factor-authentication-2fa) or the [NuGet.org public package repository](https://docs.microsoft.com/nuget/nuget-org/individual-accounts#enable-two-factor-authentication-2fa). It is recommended to enable two-factor authentication to protect your account. ### Package ID Prefix Reservation -To protect the identity of your packages, you can reserve a package ID prefix to associate a matching owner if your package ID prefix properly falls [under the following criteria](https://docs.microsoft.com/en-us/nuget/nuget-org/id-prefix-reservation#id-prefix-reservation-criteria). +To protect the identity of your packages, you can reserve a package ID prefix to associate a matching owner if your package ID prefix properly falls [under the following criteria](https://docs.microsoft.com/nuget/nuget-org/id-prefix-reservation#id-prefix-reservation-criteria). -To learn about reserving ID prefixes, [see the following documentation](https://docs.microsoft.com/en-us/nuget/nuget-org/id-prefix-reservation). +To learn about reserving ID prefixes, [see the following documentation](https://docs.microsoft.com/nuget/nuget-org/id-prefix-reservation). ### Deprecating & Unlisting a Vulnerable Package To protect the .NET package ecosystem. When you are aware of a vulnerability in a package you have authored, do your best to deprecate & unlist the package so it is hidden from users searching for packages. If you are consuming a package that is deprecated & unlisted, you should avoid using the package. -To learn how to deprecate & unlist a package, see the following documentation on [deprecating](https://docs.microsoft.com/en-us/nuget/nuget-org/deprecate-packages) & [unlisting packages](https://docs.microsoft.com/en-us/nuget/nuget-org/policies/deleting-packages#unlisting-a-package). +To learn how to deprecate & unlist a package, see the following documentation on [deprecating](https://docs.microsoft.com/nuget/nuget-org/deprecate-packages) & [unlisting packages](https://docs.microsoft.com/nuget/nuget-org/policies/deleting-packages#unlisting-a-package). ## Summary Your software supply chain is anything that goes into or affects your code. Even though supply chain compromises are real and growing in popularity, they are still rare – and so the most important thing you can do is protect your supply chain by **being aware of your dependencies, managing your dependencies** and **monitoring your supply chain.** -You learned about various methods NuGet & [GitHub](https://docs.microsoft.com/en-us/learn/modules/maintain-secure-repository-github/) provides that are available to you today to be more effective in viewing, managing, and monitoring your supply chain. \ No newline at end of file +You learned about various methods NuGet & [GitHub](https://docs.microsoft.com/learn/modules/maintain-secure-repository-github/) provides that are available to you today to be more effective in viewing, managing, and monitoring your supply chain. \ No newline at end of file From 2d5ac9b2d751fe39b79ee8112f97fbf8966a66f8 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 15:50:58 -0600 Subject: [PATCH 285/988] Larger Pictures --- docs/concepts/media/advisories.png | Bin 22836 -> 29795 bytes docs/concepts/media/dependencies.png | Bin 13749 -> 25282 bytes docs/concepts/media/opensource-percent.png | Bin 15288 -> 21354 bytes .../media/vulnerability-lifecycle.png | Bin 12149 -> 18114 bytes 4 files changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/concepts/media/advisories.png b/docs/concepts/media/advisories.png index 0402b6e2d727a4f8080dff52390743f399a66b08..8856d78f8bfaaf59d73a333d762cb5563f008f3e 100644 GIT binary patch literal 29795 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 diff --git a/docs/concepts/media/dependencies.png b/docs/concepts/media/dependencies.png index 5ac749919b4dda50e0d981363dba72cec23c7f7a..ee5ff5b9b1627c3079a9db169732256b2d6da827 100644 GIT binary patch literal 25282 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 literal 13749 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�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 literal 15288 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 diff --git a/docs/concepts/media/vulnerability-lifecycle.png b/docs/concepts/media/vulnerability-lifecycle.png index 41ea40f6b8223499c0432e4796c2f204d50ec557..179d33e3abbed73fe6c6147934387ddb641de3e8 100644 GIT binary patch literal 18114 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 Date: Mon, 8 Feb 2021 15:59:20 -0600 Subject: [PATCH 286/988] Add link to a security report. --- docs/concepts/Security-Best-Practices.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 5f0f8a412..22b50679d 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -161,4 +161,6 @@ To learn how to deprecate & unlist a package, see the following documentation on Your software supply chain is anything that goes into or affects your code. Even though supply chain compromises are real and growing in popularity, they are still rare – and so the most important thing you can do is protect your supply chain by **being aware of your dependencies, managing your dependencies** and **monitoring your supply chain.** -You learned about various methods NuGet & [GitHub](https://docs.microsoft.com/learn/modules/maintain-secure-repository-github/) provides that are available to you today to be more effective in viewing, managing, and monitoring your supply chain. \ No newline at end of file +You learned about various methods NuGet & [GitHub](https://docs.microsoft.com/learn/modules/maintain-secure-repository-github/) provides that are available to you today to be more effective in viewing, managing, and monitoring your supply chain. + +For more information about securing the world's software, see [The State of the Octoverse 2020 Security Report](https://octoverse.github.com/static/github-octoverse-2020-security-report.pdf). \ No newline at end of file From 0c5e20d296110f983c39ae53eb078e0d527132c9 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:44:04 -0600 Subject: [PATCH 287/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 22b50679d..239213498 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -17,7 +17,7 @@ If you are not aware of what is in your software supply chain, an upstream vulne ## Dependencies -The term software supply chain is used to refer to everything that goes into your software and where it comes from. It is the dependencies and properties of your dependencies that your software supply chain depends on. A dependency is what your software needs to run. It can be code, binaries, or other components, and where they come from such as a repository or package manager. +The term software supply chain is used to refer to everything that goes into your software and where it comes from. It is the dependencies and properties of your dependencies that your software supply chain depends on. A dependency is what your software needs to run. It can be code, binaries, or other components, and where they come from, such as a repository or package manager. It includes who wrote the code, when it was contributed, how it was reviewed for security issues, known vulnerabilities, supported versions, license information, and just about anything that touches it at any point of the process. @@ -163,4 +163,4 @@ Your software supply chain is anything that goes into or affects your code. Even You learned about various methods NuGet & [GitHub](https://docs.microsoft.com/learn/modules/maintain-secure-repository-github/) provides that are available to you today to be more effective in viewing, managing, and monitoring your supply chain. -For more information about securing the world's software, see [The State of the Octoverse 2020 Security Report](https://octoverse.github.com/static/github-octoverse-2020-security-report.pdf). \ No newline at end of file +For more information about securing the world's software, see [The State of the Octoverse 2020 Security Report](https://octoverse.github.com/static/github-octoverse-2020-security-report.pdf). From e83e5714710f0144bef39c6d5855effb4b78112c Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:44:21 -0600 Subject: [PATCH 288/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 239213498..250e1e3b4 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -33,7 +33,7 @@ Possible vulnerabilities in your third-party or open-source dependencies, are pr If one of these dependencies has a vulnerability, the chances are you have a vulnerability as well. This can be scary as one of your dependencies may change without you even knowing. Even if a vulnerability exists in a dependency today, but is not exploitable, it can be exploitable in the future. -Being able to leverage the work of thousands of open-source developers & library authors means that thousands of strangers can effectively contribute directly to your production code. Your product, through your software supply chain, is affected by unpatched vulnerabilities, innocent mistakes, or even malicious attacks against dependencies. +Being able to leverage the work of thousands of open-source developers and library authors means that thousands of strangers can effectively contribute directly to your production code. Your product, through your software supply chain, is affected by unpatched vulnerabilities, innocent mistakes, or even malicious attacks against dependencies. ## Supply Chain Compromises From 6cf8126e4b75d4d23d5e5138c1d25f1d6b835a13 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:44:41 -0600 Subject: [PATCH 289/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 250e1e3b4..3a8dbd8fb 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -37,7 +37,7 @@ Being able to leverage the work of thousands of open-source developers and libra ## Supply Chain Compromises -The traditional definition of a supply chain comes from manufacturing, it is the chain of processes required to make and supply something. It includes planning, supply of materials, manufacturing, and retail. A software supply chain is similar, except instead of materials, it is code. Instead of manufacturing it is development. Instead of digging ore from the ground, code is sourced from suppliers, commercial or open source, and, in general, the open-source code comes from repositories. Adding code from a repository means your product takes a dependency on that code. +The traditional definition of a supply chain comes from manufacturing; it is the chain of processes required to make and supply something. It includes planning, supply of materials, manufacturing, and retail. A software supply chain is similar, except instead of materials, it is code. Instead of manufacturing, it is development. Instead of digging ore from the ground, code is sourced from suppliers, commercial or open source, and, in general, the open-source code comes from repositories. Adding code from a repository means your product takes a dependency on that code. One example of a software supply chain attack occurs when malicious code is purposefully added to a dependency, using the supply chain of that dependency to distribute the code to its victims. Supply chain attacks are real. There are many methods to attack a supply chain, from directly inserting malicious code as a new contributor, to taking over a contributor’s account without others noticing, or even compromising a signing key to distribute software that is not officially part of the dependency. From ce6d6d01bfe355a8ed4098b6f117514971f8593b Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:44:55 -0600 Subject: [PATCH 290/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 3a8dbd8fb..01e1c4916 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -21,7 +21,7 @@ The term software supply chain is used to refer to everything that goes into you It includes who wrote the code, when it was contributed, how it was reviewed for security issues, known vulnerabilities, supported versions, license information, and just about anything that touches it at any point of the process. -Your supply chain also encompasses other parts of your stack beyond a single application such as your build and packaging scripts or the software that runs the infrastructure your application relies on. +Your supply chain also encompasses other parts of your stack beyond a single application, such as your build and packaging scripts or the software that runs the infrastructure your application relies on. ## Vulnerabilities From 462c07d6ee39933f078578dc279db540b6c1b868 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:45:12 -0600 Subject: [PATCH 291/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 01e1c4916..6f6c2cf6c 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -41,7 +41,7 @@ The traditional definition of a supply chain comes from manufacturing; it is the One example of a software supply chain attack occurs when malicious code is purposefully added to a dependency, using the supply chain of that dependency to distribute the code to its victims. Supply chain attacks are real. There are many methods to attack a supply chain, from directly inserting malicious code as a new contributor, to taking over a contributor’s account without others noticing, or even compromising a signing key to distribute software that is not officially part of the dependency. -Software supply chain attacks are in and of itself rarely the end goal, rather it is the beginning of an opportunity for an attacker to insert malware or provide a backdoor for future access. +A software supply chain attack is in and of itself rarely the end goal, rather it is the beginning of an opportunity for an attacker to insert malware or provide a backdoor for future access. ![The State of the Octoverse 2020 - Vulnerability Lifecycle](media/vulnerability-lifecycle.png) From aac757335ba6e01de02dc5e60c2768e03c907852 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:45:27 -0600 Subject: [PATCH 292/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 6f6c2cf6c..6ed72a4a7 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -55,7 +55,7 @@ The use of open source today is significant and is not expected to slow down any ![The State of the Octoverse 2020 - Advisories](media/advisories.png) -We will cover various tools & techniques that NuGet & GitHub provides that you can use today to address potential risks inside your project. +We will cover various tools and techniques that NuGet and GitHub provides, which you can use today to address potential risks inside your project. ## Knowing what is in your environment From e2aa9543dcea147017c5040acb973d0a372c8b16 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:45:44 -0600 Subject: [PATCH 293/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 6ed72a4a7..22a514370 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -65,7 +65,7 @@ You can view your NuGet dependencies in your project by looking directly at the This is typically found in one of two places: -- [`packages.config`](https://docs.microsoft.com/nuget/reference/packages-config) – Located in the project root. +- [`packages.config`](../reference/packages-config.md) – Located in the project root. - [``](https://docs.microsoft.com/nuget/consume-packages/package-references-in-project-files) – Located in the project file. Depending on what method you use to manage your NuGet dependencies, you can also use Visual Studio to view your dependencies directly in the [Solution Explorer](https://docs.microsoft.com/visualstudio/ide/solutions-and-projects-in-visual-studio?view=vs-2019#solution-explorer) or [NuGet Package Manager](https://docs.microsoft.com/nuget/consume-packages/install-use-packages-visual-studio). From fbdeb8abab8db0b81da23e5bfea3326bcec0dfbf Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:46:01 -0600 Subject: [PATCH 294/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 22a514370..964c1740f 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -66,7 +66,7 @@ You can view your NuGet dependencies in your project by looking directly at the This is typically found in one of two places: - [`packages.config`](../reference/packages-config.md) – Located in the project root. -- [``](https://docs.microsoft.com/nuget/consume-packages/package-references-in-project-files) – Located in the project file. +- [``](../consume-packages/package-references-in-project-files.md) – Located in the project file. Depending on what method you use to manage your NuGet dependencies, you can also use Visual Studio to view your dependencies directly in the [Solution Explorer](https://docs.microsoft.com/visualstudio/ide/solutions-and-projects-in-visual-studio?view=vs-2019#solution-explorer) or [NuGet Package Manager](https://docs.microsoft.com/nuget/consume-packages/install-use-packages-visual-studio). From d2f40b78e3279b5ecb86911d6c76212d19f736c7 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:46:17 -0600 Subject: [PATCH 295/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 964c1740f..6d5ed3d93 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -68,7 +68,7 @@ This is typically found in one of two places: - [`packages.config`](../reference/packages-config.md) – Located in the project root. - [``](../consume-packages/package-references-in-project-files.md) – Located in the project file. -Depending on what method you use to manage your NuGet dependencies, you can also use Visual Studio to view your dependencies directly in the [Solution Explorer](https://docs.microsoft.com/visualstudio/ide/solutions-and-projects-in-visual-studio?view=vs-2019#solution-explorer) or [NuGet Package Manager](https://docs.microsoft.com/nuget/consume-packages/install-use-packages-visual-studio). +Depending on what method you use to manage your NuGet dependencies, you can also use Visual Studio to view your dependencies directly in [Solution Explorer](/visualstudio/ide/solutions-and-projects-in-visual-studio?view=vs-2019#solution-explorer) or [NuGet Package Manager](../consume-packages/install-use-packages-visual-studio.md). For CLI environments, you can use the [`dotnet list package`](https://docs.microsoft.com/dotnet/core/tools/dotnet-list-package) command to list out your project or solution’s dependencies. From 87889c2e9aa2d7d324a6cf0f7f9941b315e3e899 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:46:37 -0600 Subject: [PATCH 296/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 6d5ed3d93..8906d6208 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -70,7 +70,7 @@ This is typically found in one of two places: Depending on what method you use to manage your NuGet dependencies, you can also use Visual Studio to view your dependencies directly in [Solution Explorer](/visualstudio/ide/solutions-and-projects-in-visual-studio?view=vs-2019#solution-explorer) or [NuGet Package Manager](../consume-packages/install-use-packages-visual-studio.md). -For CLI environments, you can use the [`dotnet list package`](https://docs.microsoft.com/dotnet/core/tools/dotnet-list-package) command to list out your project or solution’s dependencies. +For CLI environments, you can use the [`dotnet list package`](/dotnet/core/tools/dotnet-list-package) command to list out your project or solution’s dependencies. For more information on managing NuGet dependencies, [see the following documentation](https://docs.microsoft.com/nuget/consume-packages/overview-and-workflow). From f472dcc4ad5d5cc5e5a11f77e629b8541b812e18 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:46:48 -0600 Subject: [PATCH 297/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 8906d6208..4588e1375 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -72,7 +72,7 @@ Depending on what method you use to manage your NuGet dependencies, you can also For CLI environments, you can use the [`dotnet list package`](/dotnet/core/tools/dotnet-list-package) command to list out your project or solution’s dependencies. -For more information on managing NuGet dependencies, [see the following documentation](https://docs.microsoft.com/nuget/consume-packages/overview-and-workflow). +For more information on managing NuGet dependencies, [see the following documentation](../consume-packages/overview-and-workflow.md). ### GitHub Dependency Graph From 0394e6c890c73180417b14453e29f1c13824973f Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:46:59 -0600 Subject: [PATCH 298/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 4588e1375..a786a8b08 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -87,7 +87,7 @@ To ensure a secure supply chain of dependencies, you will want to ensure that al - [Visual Studio](https://visualstudio.microsoft.com/downloads/) - [.NET SDK & Runtime](https://dotnet.microsoft.com/download) - [NuGet](https://www.nuget.org/downloads) -- [NuGet Packages](https://docs.microsoft.com/nuget/consume-packages/reinstalling-and-updating-packages) +- [NuGet packages](../consume-packages/reinstalling-and-updating-packages.md) ## Manage your dependencies From b4a9cdc9ae102bfb7e06261d837970a57479e601 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:47:20 -0600 Subject: [PATCH 299/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index a786a8b08..19d84be35 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -93,7 +93,7 @@ To ensure a secure supply chain of dependencies, you will want to ensure that al ### NuGet Deprecated & Vulnerable Dependencies -You can use the [dotnet CLI](https://docs.microsoft.com/dotnet/core/tools/dotnet-list-package) to list any known deprecated or vulnerable dependencies you may have inside your project or solution. You can use the command `dotnet list package --deprecated` or `dotnet list package --vulnerable` to provide you a list of any known deprecations or vulnerabilities. +You can use the [dotnet CLI](/dotnet/core/tools/dotnet-list-package) to list any known deprecated or vulnerable dependencies you may have inside your project or solution. You can use the command `dotnet list package --deprecated` or `dotnet list package --vulnerable` to provide you a list of any known deprecations or vulnerabilities. ### GitHub Vulnerable Dependencies From 972e04f8f7db10071c43154731795a00baaf0924 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:47:29 -0600 Subject: [PATCH 300/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 19d84be35..b1be10a60 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -109,7 +109,7 @@ Packages can come from different feeds. To ensure you are secure, knowing what f For more information about single NuGet feeds, [see the following documentation](https://docs.microsoft.com/azure/devops/artifacts/concepts/upstream-sources?view=azure-devops). -### Client Trust Policies +### Client trust policies There are policies that you can opt-into in which you require the packages you use to be signed. This allows you to trust a package author so long as it is author signed or trust a package if it is owned by a specific user or account that is repository signed by NuGet.org. From 381a38b3e84952acd650d683de8b574d9db9da3e Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:47:38 -0600 Subject: [PATCH 301/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index b1be10a60..0b3a48e37 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -115,7 +115,7 @@ There are policies that you can opt-into in which you require the packages you u To configure client trust policies, [see the following documentation](https://docs.microsoft.com/nuget/consume-packages/installing-signed-packages). -### Lock Files +### Lock files Lock files store the hash of your package’s content. If the content hash of a package you want to install matches with the lock file, it will ensure you package repeatability. From ed30e78d05fbc5cdbdcbcdfb1e0bbf76548b8c0c Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:47:46 -0600 Subject: [PATCH 302/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 0b3a48e37..517b794f3 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -129,7 +129,7 @@ NuGet.org serves as a central repository to over 200,000 unique packages. Whenev To learn more about the benefits of publishing on NuGet.org, [see the following documentation](https://docs.microsoft.com/nuget/nuget-org/publish-a-package#package-validation-and-indexing). -### GitHub Secret Scanning +### GitHub secret scanning GitHub will scan repositories for NuGet API keys to prevent fraudulent uses of secrets that were accidentally committed. From 5a6531491c951114a7975793b0bcd3b324831514 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:47:56 -0600 Subject: [PATCH 303/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 517b794f3..cb34e313b 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -153,7 +153,7 @@ To learn about reserving ID prefixes, [see the following documentation](https:// ### Deprecating & Unlisting a Vulnerable Package -To protect the .NET package ecosystem. When you are aware of a vulnerability in a package you have authored, do your best to deprecate & unlist the package so it is hidden from users searching for packages. If you are consuming a package that is deprecated & unlisted, you should avoid using the package. +To protect the .NET package ecosystem when you are aware of a vulnerability in a package you have authored, do your best to deprecate and unlist the package so it is hidden from users searching for packages. If you are consuming a package that is deprecated and unlisted, you should avoid using the package. To learn how to deprecate & unlist a package, see the following documentation on [deprecating](https://docs.microsoft.com/nuget/nuget-org/deprecate-packages) & [unlisting packages](https://docs.microsoft.com/nuget/nuget-org/policies/deleting-packages#unlisting-a-package). From 77213efc4fb4db9849bbb7ff6e8802fd89af3cc7 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:48:07 -0600 Subject: [PATCH 304/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index cb34e313b..054081f50 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -155,7 +155,7 @@ To learn about reserving ID prefixes, [see the following documentation](https:// To protect the .NET package ecosystem when you are aware of a vulnerability in a package you have authored, do your best to deprecate and unlist the package so it is hidden from users searching for packages. If you are consuming a package that is deprecated and unlisted, you should avoid using the package. -To learn how to deprecate & unlist a package, see the following documentation on [deprecating](https://docs.microsoft.com/nuget/nuget-org/deprecate-packages) & [unlisting packages](https://docs.microsoft.com/nuget/nuget-org/policies/deleting-packages#unlisting-a-package). +To learn how to deprecate and unlist a package, see the following documentation on [deprecating](../nuget-org/deprecate-packages.md) and [unlisting packages](../nuget-org/policies/deleting-packages.md#unlisting-a-package). ## Summary From 2824ceafb7f0508e29a17fba8c734e0c11964587 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:48:15 -0600 Subject: [PATCH 305/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 054081f50..548842e1c 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -159,7 +159,7 @@ To learn how to deprecate and unlist a package, see the following documentation ## Summary -Your software supply chain is anything that goes into or affects your code. Even though supply chain compromises are real and growing in popularity, they are still rare – and so the most important thing you can do is protect your supply chain by **being aware of your dependencies, managing your dependencies** and **monitoring your supply chain.** +Your software supply chain is anything that goes into or affects your code. Even though supply chain compromises are real and growing in popularity, they are still rare; so the most important thing you can do is protect your supply chain by **being aware of your dependencies, managing your dependencies** and **monitoring your supply chain.** You learned about various methods NuGet & [GitHub](https://docs.microsoft.com/learn/modules/maintain-secure-repository-github/) provides that are available to you today to be more effective in viewing, managing, and monitoring your supply chain. From 9555e3753c8ec8952e63ec48c837ddbf2164f364 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:48:22 -0600 Subject: [PATCH 306/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 548842e1c..6a79449ff 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -145,7 +145,7 @@ To author sign a package, [see the following documentation](https://docs.microso Enabling two-factor authentication (2FA) can add an extra layer of security when [logging into your GitHub account](https://docs.github.com/en/github/authenticating-to-github/securing-your-account-with-two-factor-authentication-2fa) or the [NuGet.org public package repository](https://docs.microsoft.com/nuget/nuget-org/individual-accounts#enable-two-factor-authentication-2fa). It is recommended to enable two-factor authentication to protect your account. -### Package ID Prefix Reservation +### Package ID prefix reservation To protect the identity of your packages, you can reserve a package ID prefix to associate a matching owner if your package ID prefix properly falls [under the following criteria](https://docs.microsoft.com/nuget/nuget-org/id-prefix-reservation#id-prefix-reservation-criteria). From 3915251f1945fccc6f12a1e4b6979f6d9ae1a711 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:48:32 -0600 Subject: [PATCH 307/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 6a79449ff..66cbb5845 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -9,7 +9,7 @@ ms.topic: conceptual # Best Practices for a Secure Supply Chain -Open Source is everywhere. It is in many proprietary codebases and community projects. For organizations and individuals, the question today is not that you are or are not using open-source code, but what open-source code you are using, and how much. +Open Source is everywhere. It is in many proprietary codebases and community projects. For organizations and individuals, the question today is not whether you are or are not using open-source code, but what open-source code you are using, and how much. If you are not aware of what is in your software supply chain, an upstream vulnerability in one of your dependencies can be fatal, making you, and your customers, vulnerable to a potential compromise. In this document, we will dive deeper into what the term “software supply chain” means, why it matters, and how you can help secure your project’s supply chain with best practices. From 08d67f7932fd1cc62f1c1f971d49338e659d8839 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:48:41 -0600 Subject: [PATCH 308/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 66cbb5845..74f0c70e4 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -11,7 +11,7 @@ ms.topic: conceptual Open Source is everywhere. It is in many proprietary codebases and community projects. For organizations and individuals, the question today is not whether you are or are not using open-source code, but what open-source code you are using, and how much. -If you are not aware of what is in your software supply chain, an upstream vulnerability in one of your dependencies can be fatal, making you, and your customers, vulnerable to a potential compromise. In this document, we will dive deeper into what the term “software supply chain” means, why it matters, and how you can help secure your project’s supply chain with best practices. +If you're not aware of what is in your software supply chain, an upstream vulnerability in one of your dependencies can be fatal, making you, and your customers, vulnerable to a potential compromise. In this document, we will dive deeper into what the term “software supply chain” means, why it matters, and how you can help secure your project’s supply chain with best practices. ![The State of the Octoverse 2020 - Open Source](media/opensource-percent.png) From 6edc8647f0f309e27a3116953f606223256ea862 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:49:33 -0600 Subject: [PATCH 309/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 74f0c70e4..b89a1e340 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -1,5 +1,5 @@ --- -title: Best Practices for a Secure Supply Chain +title: Best practices for a secure supply chain description: Best practices for securing your supply chain software using NuGet & GitHub. author: JonDouglas ms.author: jodou From 58fe5ae8595c9aa116fde9d910d191f5d26d2d7f Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:50:06 -0600 Subject: [PATCH 310/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index b89a1e340..98c017704 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -7,7 +7,7 @@ ms.date: 02/08/2021 ms.topic: conceptual --- -# Best Practices for a Secure Supply Chain +# Best practices for a secure supply chain Open Source is everywhere. It is in many proprietary codebases and community projects. For organizations and individuals, the question today is not whether you are or are not using open-source code, but what open-source code you are using, and how much. From f59abfb15d629d5e3831329a79d4834e0e6983d7 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:50:26 -0600 Subject: [PATCH 311/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 98c017704..6b209b59c 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -35,7 +35,7 @@ If one of these dependencies has a vulnerability, the chances are you have a vul Being able to leverage the work of thousands of open-source developers and library authors means that thousands of strangers can effectively contribute directly to your production code. Your product, through your software supply chain, is affected by unpatched vulnerabilities, innocent mistakes, or even malicious attacks against dependencies. -## Supply Chain Compromises +## Supply chain compromises The traditional definition of a supply chain comes from manufacturing; it is the chain of processes required to make and supply something. It includes planning, supply of materials, manufacturing, and retail. A software supply chain is similar, except instead of materials, it is code. Instead of manufacturing, it is development. Instead of digging ore from the ground, code is sourced from suppliers, commercial or open source, and, in general, the open-source code comes from repositories. Adding code from a repository means your product takes a dependency on that code. From e91eb923cd98029ab22b22c94c3fa14549cfb70d Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:50:47 -0600 Subject: [PATCH 312/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 6b209b59c..cb73c7b3a 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -45,7 +45,7 @@ A software supply chain attack is in and of itself rarely the end goal, rather i ![The State of the Octoverse 2020 - Vulnerability Lifecycle](media/vulnerability-lifecycle.png) -## Unpatched Software +## Unpatched software The use of open source today is significant and is not expected to slow down anytime soon. Given that we are not going to stop using open-source software, the threat to supply chain security is unpatched software. Knowing that, how can you address the risk that a dependency of your project has a vulnerability? From 174891a274ec621946ba9e2ae4c19f01c5f44481 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:51:09 -0600 Subject: [PATCH 313/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index cb73c7b3a..995fbcb65 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -59,7 +59,7 @@ We will cover various tools and techniques that NuGet and GitHub provides, which ## Knowing what is in your environment -### NuGet Dependency Graph +### NuGet dependency graph You can view your NuGet dependencies in your project by looking directly at the respective project file. From 646babe74578b159df036976dec84e1798bdc3ee Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:51:29 -0600 Subject: [PATCH 314/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 995fbcb65..e13a9dbd6 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -74,7 +74,7 @@ For CLI environments, you can use the [`dotnet list package`](/dotnet/core/tools For more information on managing NuGet dependencies, [see the following documentation](../consume-packages/overview-and-workflow.md). -### GitHub Dependency Graph +### GitHub dependency graph You can use GitHub’s dependency graph to see the packages your project depends on and the repositories that depend on it. This can help you see any vulnerabilities detected in its dependencies. From 198582f28a8612e50626c173828d57dbcad8e335 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:51:48 -0600 Subject: [PATCH 315/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index e13a9dbd6..2ee02eddc 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -80,7 +80,7 @@ You can use GitHub’s dependency graph to see the packages your project depends For more information on GitHub repository dependencies, [see the following documentation](https://github.co/dependency-graph). -### Dependency Versions +### Dependency versions To ensure a secure supply chain of dependencies, you will want to ensure that all your dependencies are regularly updated to the latest stable version. Your dependencies can include code you depend on, binaries you consume, tooling you use, and other components. This can include: From 78e2d67f18e0bb2ccc0755da0b2607dd12d0aa66 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:52:45 -0600 Subject: [PATCH 316/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 2ee02eddc..af13626f8 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -107,7 +107,7 @@ For more information about Dependabot alerts & security updates, [see the follow Packages can come from different feeds. To ensure you are secure, knowing what feed your packages are coming from is a best practice. One such best practice is the use of a single feed. You can accomplish this by using multiple upstream source feeds to bring your packages into a single feed. -For more information about single NuGet feeds, [see the following documentation](https://docs.microsoft.com/azure/devops/artifacts/concepts/upstream-sources?view=azure-devops). +For more information about single NuGet feeds, [see the following documentation](/azure/devops/artifacts/concepts/upstream-sources?view=azure-devops). ### Client trust policies From 9d9ff57c43c4e1a78a5b5cd6bb3b016aa3a86fa7 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:53:02 -0600 Subject: [PATCH 317/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index af13626f8..442ad9424 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -111,7 +111,7 @@ For more information about single NuGet feeds, [see the following documentation] ### Client trust policies -There are policies that you can opt-into in which you require the packages you use to be signed. This allows you to trust a package author so long as it is author signed or trust a package if it is owned by a specific user or account that is repository signed by NuGet.org. +There are policies that you can opt-into in which you require the packages you use to be signed. This allows you to trust a package author, as long as it is author signed, or trust a package if it is owned by a specific user or account that is repository signed by NuGet.org. To configure client trust policies, [see the following documentation](https://docs.microsoft.com/nuget/consume-packages/installing-signed-packages). From 8f3d27fb38b8cedfea7553f2343b96ab586905de Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:53:54 -0600 Subject: [PATCH 318/988] Update docs/concepts/Security-Best-Practices.md Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 442ad9424..4881b71e4 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -113,7 +113,7 @@ For more information about single NuGet feeds, [see the following documentation] There are policies that you can opt-into in which you require the packages you use to be signed. This allows you to trust a package author, as long as it is author signed, or trust a package if it is owned by a specific user or account that is repository signed by NuGet.org. -To configure client trust policies, [see the following documentation](https://docs.microsoft.com/nuget/consume-packages/installing-signed-packages). +To configure client trust policies, [see the following documentation](../consume-packages/installing-signed-packages.md). ### Lock files From 53daa60df2062409a24fb550c6710b522d9fe590 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:55:06 -0600 Subject: [PATCH 319/988] Apply suggestions from code review Co-authored-by: Mike Jones --- docs/concepts/Security-Best-Practices.md | 32 ++++++++++++------------ 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 4881b71e4..e5d36c1cd 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -91,11 +91,11 @@ To ensure a secure supply chain of dependencies, you will want to ensure that al ## Manage your dependencies -### NuGet Deprecated & Vulnerable Dependencies +### NuGet deprecated and vulnerable dependencies You can use the [dotnet CLI](/dotnet/core/tools/dotnet-list-package) to list any known deprecated or vulnerable dependencies you may have inside your project or solution. You can use the command `dotnet list package --deprecated` or `dotnet list package --vulnerable` to provide you a list of any known deprecations or vulnerabilities. -### GitHub Vulnerable Dependencies +### GitHub vulnerable dependencies If your project is hosted on GitHub, you can leverage [GitHub Security](https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/automatically-scanning-your-code-for-vulnerabilities-and-errors) to find security vulnerabilities and errors in your project and Dependabot will fix them by opening up a pull request against your codebase. @@ -103,7 +103,7 @@ Catching vulnerable dependencies before they are introduced is one goal of the [ For more information about Dependabot alerts & security updates, [see the following documentation](https://docs.github.com/en/github/managing-security-vulnerabilities/about-alerts-for-vulnerable-dependencies). -### NuGet Feeds +### NuGet feeds Packages can come from different feeds. To ensure you are secure, knowing what feed your packages are coming from is a best practice. One such best practice is the use of a single feed. You can accomplish this by using multiple upstream source feeds to bring your packages into a single feed. @@ -117,41 +117,41 @@ To configure client trust policies, [see the following documentation](../consume ### Lock files -Lock files store the hash of your package’s content. If the content hash of a package you want to install matches with the lock file, it will ensure you package repeatability. +Lock files store the hash of your package’s content. If the content hash of a package you want to install matches with the lock file, it will ensure package repeatability. -To enable lock files, [see the following documentation](https://docs.microsoft.com/nuget/consume-packages/package-references-in-project-files#locking-dependencies). +To enable lock files, [see the following documentation](../consume-packages/package-references-in-project-files#locking-dependencies.md). ## Monitor your supply chain ### Publish to NuGet.org -NuGet.org serves as a central repository to over 200,000 unique packages. Whenever you publish a package, NuGet.org will go through numerous validations and indexing that can benefit you in the long term. These can include scanning the package for viruses, [providing a repository signature](https://docs.microsoft.com/nuget/reference/signed-packages-reference) on the package, and even protecting your package ID so only you can push updates to it. +NuGet.org serves as a central repository to over 200,000 unique packages. Whenever you publish a package, NuGet.org will go through numerous validations and indexing that can benefit you in the long term. These can include scanning the package for viruses, [providing a repository signature](../reference/signed-packages-reference.md) on the package, and even protecting your package ID so only you can push updates to it. -To learn more about the benefits of publishing on NuGet.org, [see the following documentation](https://docs.microsoft.com/nuget/nuget-org/publish-a-package#package-validation-and-indexing). +To learn more about the benefits of publishing on NuGet.org, see [Package validation and indexing](../nuget-org/publish-a-package.md#package-validation-and-indexing). ### GitHub secret scanning -GitHub will scan repositories for NuGet API keys to prevent fraudulent uses of secrets that were accidentally committed. +GitHub scans repositories for NuGet API keys to prevent fraudulent uses of secrets that were accidentally committed. -To learn more about secrete scanning, [see the following documentation](https://docs.github.com/en/github/administering-a-repository/about-secret-scanning). +To learn more about secret scanning, see [About secret scanning](https://docs.github.com/en/github/administering-a-repository/about-secret-scanning). ### Author Package Signing -[Author signing](https://docs.microsoft.com/nuget/reference/signed-packages-reference) allows a package author to stamp their identity on a package and for a consumer to verify it came from you. This protects you against content tampering & serves as a single source of truth about the origin of the package and the package authenticity. +[Author signing](../reference/signed-packages-reference.md) allows a package author to stamp their identity on a package and for a consumer to verify it came from you. This protects you against content tampering and serves as a single source of truth about the origin of the package and the package authenticity. -To author sign a package, [see the following documentation](https://docs.microsoft.com/nuget/create-packages/sign-a-package). +To author sign a package, see [Sign a package](../create-packages/sign-a-package.md). ### Two-Factor Authentication (2FA) -Enabling two-factor authentication (2FA) can add an extra layer of security when [logging into your GitHub account](https://docs.github.com/en/github/authenticating-to-github/securing-your-account-with-two-factor-authentication-2fa) or the [NuGet.org public package repository](https://docs.microsoft.com/nuget/nuget-org/individual-accounts#enable-two-factor-authentication-2fa). It is recommended to enable two-factor authentication to protect your account. +Enabling two-factor authentication (2FA) can add an extra layer of security when [logging into your GitHub account](https://docs.github.com/en/github/authenticating-to-github/securing-your-account-with-two-factor-authentication-2fa) or the [NuGet.org public package repository](../nuget-org/individual-accounts.md#enable-two-factor-authentication-2fa). It is recommended that you enable two-factor authentication to protect your account. ### Package ID prefix reservation -To protect the identity of your packages, you can reserve a package ID prefix to associate a matching owner if your package ID prefix properly falls [under the following criteria](https://docs.microsoft.com/nuget/nuget-org/id-prefix-reservation#id-prefix-reservation-criteria). +To protect the identity of your packages, you can reserve a package ID prefix to associate a matching owner if your package ID prefix properly falls under the [specified criteria](../nuget-org/id-prefix-reservation.md#id-prefix-reservation-criteria). -To learn about reserving ID prefixes, [see the following documentation](https://docs.microsoft.com/nuget/nuget-org/id-prefix-reservation). +To learn about reserving ID prefixes, see [Package ID prefix reservation](../nuget-org/id-prefix-reservation.md). -### Deprecating & Unlisting a Vulnerable Package +### Deprecating and unlisting a vulnerable package To protect the .NET package ecosystem when you are aware of a vulnerability in a package you have authored, do your best to deprecate and unlist the package so it is hidden from users searching for packages. If you are consuming a package that is deprecated and unlisted, you should avoid using the package. @@ -161,6 +161,6 @@ To learn how to deprecate and unlist a package, see the following documentation Your software supply chain is anything that goes into or affects your code. Even though supply chain compromises are real and growing in popularity, they are still rare; so the most important thing you can do is protect your supply chain by **being aware of your dependencies, managing your dependencies** and **monitoring your supply chain.** -You learned about various methods NuGet & [GitHub](https://docs.microsoft.com/learn/modules/maintain-secure-repository-github/) provides that are available to you today to be more effective in viewing, managing, and monitoring your supply chain. +You learned about various methods that NuGet and [GitHub](/learn/modules/maintain-secure-repository-github/) provide that are available to you today to be more effective in viewing, managing, and monitoring your supply chain. For more information about securing the world's software, see [The State of the Octoverse 2020 Security Report](https://octoverse.github.com/static/github-octoverse-2020-security-report.pdf). From ee8e6db18208524874ec1943700b358480c54076 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 18:57:07 -0600 Subject: [PATCH 320/988] Update TOC again. --- docs/TOC.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/TOC.md b/docs/TOC.md index 55cc05137..5f71efcbc 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -69,7 +69,7 @@ ## [Package installation process](concepts/package-installation-process.md) ## [Package versioning](concepts/package-versioning.md) ## [Dependency resolution](concepts/dependency-resolution.md) -## [Best Practices for a Secure Supply Chain](concepts/Security-Best-Practices.md) +## [Best practices for a secure supply chain](concepts/Security-Best-Practices.md) # Reference ## [.nuspec](reference/nuspec.md) ## [nuget.config file](reference/nuget-config-file.md) From 79855281385e3f3c36e17936ba67d194d38cca38 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Feb 2021 19:00:47 -0600 Subject: [PATCH 321/988] Fix anchor on lock files. --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index e5d36c1cd..e1d7bb09b 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -119,7 +119,7 @@ To configure client trust policies, [see the following documentation](../consume Lock files store the hash of your package’s content. If the content hash of a package you want to install matches with the lock file, it will ensure package repeatability. -To enable lock files, [see the following documentation](../consume-packages/package-references-in-project-files#locking-dependencies.md). +To enable lock files, [see the following documentation](../consume-packages/package-references-in-project-files#locking-dependencies). ## Monitor your supply chain From 35c2cc8dd50213914d8ce304e8230f86d648e3a1 Mon Sep 17 00:00:00 2001 From: Joel Verhagen Date: Tue, 9 Feb 2021 10:10:01 -0800 Subject: [PATCH 322/988] Clarify criteria for namespace reservation (#2310) * Clarify criteria for namespace reservation * Update id-prefix-reservation.md --- docs/nuget-org/id-prefix-reservation.md | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/docs/nuget-org/id-prefix-reservation.md b/docs/nuget-org/id-prefix-reservation.md index 61289bd22..ce98a2f08 100644 --- a/docs/nuget-org/id-prefix-reservation.md +++ b/docs/nuget-org/id-prefix-reservation.md @@ -68,23 +68,25 @@ After the application is submitted, you are notified of acceptance or rejection ### ID prefix reservation criteria -When reviewing any application for ID prefix reservation, the [nuget.org](https://www.nuget.org/) team will evaluate the application against the below criteria. Not all criteria needs to be met for a prefix to be reserved, but the application may be denied if there is not substantial evidence of the criteria being met (with an explanation given): +When reviewing any application for ID prefix reservation, the [NuGet.org](https://www.nuget.org) team will evaluate the application against the below criteria. Please note that not all criteria need to be met for a prefix to be reserved, but the application may be denied if there is not substantial evidence of the criteria being met (with an explanation given): -1. Does the package ID prefix properly and clearly identify the package owner? +1. Does the package ID prefix properly and clearly identify the reservation owner? -1. Has the package owner [enabled 2FA for their NuGet.org account](individual-accounts.md#enable-two-factor-authentication-2fa)? - -1. Are a significant number of the packages that have already been submitted by the owner under the package ID prefix? +1. Has the owner [enabled 2FA for their NuGet.org account](individual-accounts.md#enable-two-factor-authentication-2fa)? 1. Is the package ID prefix something common that should not belong to any individual owner or organization? -1. Would *not* reserving the package ID prefix cause ambiguity and confusion for the community? +1. Would *not* reserving the package ID prefix cause ambiguity, confusion, or other harm to the community? + +When publishing packages to NuGet.org within your ID prefix reservation, the following best practices must be considered: 1. Are the identifying properties of the packages that match the package ID prefix clear and consistent (especially the package author)? 1. Do the packages have a license (using the [license](../reference/nuspec.md#license) metadata element and NOT licenseUrl which is being deprecated)? -1. If the packages have an icon (using the iconUrl metadata element), are they also using the [icon](../reference/nuspec.md#icon) metadata element (it is not a requirement to remove the iconUrl)? +1. If the packages have an icon (using the iconUrl metadata element), are they also using the [icon](../reference/nuspec.md#icon) metadata element? It is not a requirement to remove the iconUrl but embedded icons must be used. + +Consider reviewing the full [package authoring best practices guide](../create-packages/package-authoring-best-practices.md) in addition to the points above. ## Third party feed provider scenarios From 96bbcb7b459369ec6e636488dd7b5cea9a4c13f9 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Wed, 10 Feb 2021 12:01:08 -0600 Subject: [PATCH 323/988] Add whitepaper --- docs/concepts/Security-Best-Practices.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index e1d7bb09b..c6e79b38b 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -163,4 +163,6 @@ Your software supply chain is anything that goes into or affects your code. Even You learned about various methods that NuGet and [GitHub](/learn/modules/maintain-secure-repository-github/) provide that are available to you today to be more effective in viewing, managing, and monitoring your supply chain. +To secure your package feeds, see [3 Ways to Mitigate Risk When Using Private Package Feeds](https://azure.microsoft.com/en-us/resources/3-ways-to-mitigate-risk-using-private-package-feeds/). + For more information about securing the world's software, see [The State of the Octoverse 2020 Security Report](https://octoverse.github.com/static/github-octoverse-2020-security-report.pdf). From 4151f7acc0161d81898c7b30bfe6ca9e1fa92ae0 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Wed, 10 Feb 2021 12:08:44 -0600 Subject: [PATCH 324/988] Update feed guidance. --- docs/concepts/Security-Best-Practices.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index c6e79b38b..c95fb4e82 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -107,7 +107,7 @@ For more information about Dependabot alerts & security updates, [see the follow Packages can come from different feeds. To ensure you are secure, knowing what feed your packages are coming from is a best practice. One such best practice is the use of a single feed. You can accomplish this by using multiple upstream source feeds to bring your packages into a single feed. -For more information about single NuGet feeds, [see the following documentation](/azure/devops/artifacts/concepts/upstream-sources?view=azure-devops). +For more information to secure your package feeds, see [3 Ways to Mitigate Risk When Using Private Package Feeds](https://azure.microsoft.com/en-us/resources/3-ways-to-mitigate-risk-using-private-package-feeds/). ### Client trust policies @@ -163,6 +163,4 @@ Your software supply chain is anything that goes into or affects your code. Even You learned about various methods that NuGet and [GitHub](/learn/modules/maintain-secure-repository-github/) provide that are available to you today to be more effective in viewing, managing, and monitoring your supply chain. -To secure your package feeds, see [3 Ways to Mitigate Risk When Using Private Package Feeds](https://azure.microsoft.com/en-us/resources/3-ways-to-mitigate-risk-using-private-package-feeds/). - For more information about securing the world's software, see [The State of the Octoverse 2020 Security Report](https://octoverse.github.com/static/github-octoverse-2020-security-report.pdf). From f60b9ad25a88f4e073dff90248f9b9aa95257450 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Wed, 10 Feb 2021 12:16:32 -0600 Subject: [PATCH 325/988] Update title to be more accurate --- docs/TOC.md | 2 +- docs/concepts/Security-Best-Practices.md | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/TOC.md b/docs/TOC.md index 5f71efcbc..67cf000e3 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -69,7 +69,7 @@ ## [Package installation process](concepts/package-installation-process.md) ## [Package versioning](concepts/package-versioning.md) ## [Dependency resolution](concepts/dependency-resolution.md) -## [Best practices for a secure supply chain](concepts/Security-Best-Practices.md) +## [Best practices for a secure software supply chain](concepts/Security-Best-Practices.md) # Reference ## [.nuspec](reference/nuspec.md) ## [nuget.config file](reference/nuget-config-file.md) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index c95fb4e82..9974bf9fe 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -1,13 +1,13 @@ --- -title: Best practices for a secure supply chain -description: Best practices for securing your supply chain software using NuGet & GitHub. +title: Best practices for a secure software supply chain +description: Best practices for securing your software supply chain using NuGet & GitHub. author: JonDouglas ms.author: jodou ms.date: 02/08/2021 ms.topic: conceptual --- -# Best practices for a secure supply chain +# Best practices for a secure software supply chain Open Source is everywhere. It is in many proprietary codebases and community projects. For organizations and individuals, the question today is not whether you are or are not using open-source code, but what open-source code you are using, and how much. From 11ed99d3eeadd78f9fe9b8efc10289be908e7dac Mon Sep 17 00:00:00 2001 From: Rob Johnston Date: Sat, 13 Feb 2021 09:53:05 -0500 Subject: [PATCH 326/988] Fix last two examples by removing hypen `nuget` is the command, not `nuget-trusted-signers`. --- docs/reference/cli-reference/cli-ref-trusted-signers.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/reference/cli-reference/cli-ref-trusted-signers.md b/docs/reference/cli-reference/cli-ref-trusted-signers.md index 907ea4c59..22009b8c7 100644 --- a/docs/reference/cli-reference/cli-ref-trusted-signers.md +++ b/docs/reference/cli-reference/cli-ref-trusted-signers.md @@ -170,7 +170,7 @@ nuget trusted-signers Add -Name author1 -CertificateFingerprint CE40881FF5F0AD3E nuget trusted-signers Add -Repository .\..\MyRepositorySignedPackage.nupkg -Name TrustedRepo -nuget-trusted-signers Remove -Name TrustedRepo +nuget trusted-signers Remove -Name TrustedRepo -nuget-trusted-signers Sync -Name TrustedRepo +nuget trusted-signers Sync -Name TrustedRepo ``` From ced7d45e374bf9d28cb78b53dcc77cfdbf09fb15 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Wed, 17 Feb 2021 08:42:16 -0600 Subject: [PATCH 327/988] Updated w/ Feedback --- docs/concepts/Security-Best-Practices.md | 40 ++++++++++++++++++------ 1 file changed, 30 insertions(+), 10 deletions(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 9974bf9fe..1f3d7e107 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -61,6 +61,8 @@ We will cover various tools and techniques that NuGet and GitHub provides, which ### NuGet dependency graph +📦 Package Consumer + You can view your NuGet dependencies in your project by looking directly at the respective project file. This is typically found in one of two places: @@ -76,13 +78,17 @@ For more information on managing NuGet dependencies, [see the following document ### GitHub dependency graph +📦 Package Consumer | 📦🖊 Package Author + You can use GitHub’s dependency graph to see the packages your project depends on and the repositories that depend on it. This can help you see any vulnerabilities detected in its dependencies. For more information on GitHub repository dependencies, [see the following documentation](https://github.co/dependency-graph). ### Dependency versions -To ensure a secure supply chain of dependencies, you will want to ensure that all your dependencies are regularly updated to the latest stable version. Your dependencies can include code you depend on, binaries you consume, tooling you use, and other components. This can include: +📦 Package Consumer | 📦🖊 Package Author + +To ensure a secure supply chain of dependencies, you will want to ensure that all of your dependencies & tooling are regularly updated to the latest stable version as they will often include the latest functionality and security patches to known vulnerabilities. Your dependencies can include code you depend on, binaries you consume, tooling you use, and other components. This may include: - [Visual Studio](https://visualstudio.microsoft.com/downloads/) - [.NET SDK & Runtime](https://dotnet.microsoft.com/download) @@ -93,10 +99,14 @@ To ensure a secure supply chain of dependencies, you will want to ensure that al ### NuGet deprecated and vulnerable dependencies +📦 Package Consumer | 📦🖊 Package Author + You can use the [dotnet CLI](/dotnet/core/tools/dotnet-list-package) to list any known deprecated or vulnerable dependencies you may have inside your project or solution. You can use the command `dotnet list package --deprecated` or `dotnet list package --vulnerable` to provide you a list of any known deprecations or vulnerabilities. ### GitHub vulnerable dependencies +📦 Package Consumer | 📦🖊 Package Author + If your project is hosted on GitHub, you can leverage [GitHub Security](https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/automatically-scanning-your-code-for-vulnerabilities-and-errors) to find security vulnerabilities and errors in your project and Dependabot will fix them by opening up a pull request against your codebase. Catching vulnerable dependencies before they are introduced is one goal of the [“Shift Left”](https://en.wikipedia.org/wiki/Shift-left_testing) movement. Being able to have information about your dependencies such as their license, transitive dependencies, and the age of dependencies helps you do just that. @@ -105,54 +115,64 @@ For more information about Dependabot alerts & security updates, [see the follow ### NuGet feeds -Packages can come from different feeds. To ensure you are secure, knowing what feed your packages are coming from is a best practice. One such best practice is the use of a single feed. You can accomplish this by using multiple upstream source feeds to bring your packages into a single feed. +📦 Package Consumer + +When using multiple public & private NuGet source feeds, a package can be downloaded from any of the feeds. To ensure your build is predictable and secure from known attacks such as [Dependency Confusion](https://medium.com/@alex.birsan/dependency-confusion-4a5d60fec610), knowing what specific feed(s) your packages are coming from is a best practice. You can use a single feed or private feed with upstreaming capabilities for protection. For more information to secure your package feeds, see [3 Ways to Mitigate Risk When Using Private Package Feeds](https://azure.microsoft.com/en-us/resources/3-ways-to-mitigate-risk-using-private-package-feeds/). ### Client trust policies +📦 Package Consumer + There are policies that you can opt-into in which you require the packages you use to be signed. This allows you to trust a package author, as long as it is author signed, or trust a package if it is owned by a specific user or account that is repository signed by NuGet.org. To configure client trust policies, [see the following documentation](../consume-packages/installing-signed-packages.md). ### Lock files +📦 Package Consumer + Lock files store the hash of your package’s content. If the content hash of a package you want to install matches with the lock file, it will ensure package repeatability. To enable lock files, [see the following documentation](../consume-packages/package-references-in-project-files#locking-dependencies). ## Monitor your supply chain -### Publish to NuGet.org - -NuGet.org serves as a central repository to over 200,000 unique packages. Whenever you publish a package, NuGet.org will go through numerous validations and indexing that can benefit you in the long term. These can include scanning the package for viruses, [providing a repository signature](../reference/signed-packages-reference.md) on the package, and even protecting your package ID so only you can push updates to it. - -To learn more about the benefits of publishing on NuGet.org, see [Package validation and indexing](../nuget-org/publish-a-package.md#package-validation-and-indexing). - ### GitHub secret scanning +📦🖊 Package Author + GitHub scans repositories for NuGet API keys to prevent fraudulent uses of secrets that were accidentally committed. To learn more about secret scanning, see [About secret scanning](https://docs.github.com/en/github/administering-a-repository/about-secret-scanning). ### Author Package Signing -[Author signing](../reference/signed-packages-reference.md) allows a package author to stamp their identity on a package and for a consumer to verify it came from you. This protects you against content tampering and serves as a single source of truth about the origin of the package and the package authenticity. +📦🖊 Package Author + +[Author signing](../reference/signed-packages-reference.md) allows a package author to stamp their identity on a package and for a consumer to verify it came from you. This protects you against content tampering and serves as a single source of truth about the origin of the package and the package authenticity. When combined with client trust policies, you can verify a package came from a specific author. To author sign a package, see [Sign a package](../create-packages/sign-a-package.md). ### Two-Factor Authentication (2FA) +📦🖊 Package Author + Enabling two-factor authentication (2FA) can add an extra layer of security when [logging into your GitHub account](https://docs.github.com/en/github/authenticating-to-github/securing-your-account-with-two-factor-authentication-2fa) or the [NuGet.org public package repository](../nuget-org/individual-accounts.md#enable-two-factor-authentication-2fa). It is recommended that you enable two-factor authentication to protect your account. ### Package ID prefix reservation -To protect the identity of your packages, you can reserve a package ID prefix to associate a matching owner if your package ID prefix properly falls under the [specified criteria](../nuget-org/id-prefix-reservation.md#id-prefix-reservation-criteria). +📦🖊 Package Author + +To protect the identity of your packages, you can reserve a package ID prefix with your respective namespace to associate a matching owner if your package ID prefix properly falls under the [specified criteria](../nuget-org/id-prefix-reservation.md#id-prefix-reservation-criteria). To learn about reserving ID prefixes, see [Package ID prefix reservation](../nuget-org/id-prefix-reservation.md). ### Deprecating and unlisting a vulnerable package +📦🖊 Package Author + To protect the .NET package ecosystem when you are aware of a vulnerability in a package you have authored, do your best to deprecate and unlist the package so it is hidden from users searching for packages. If you are consuming a package that is deprecated and unlisted, you should avoid using the package. To learn how to deprecate and unlist a package, see the following documentation on [deprecating](../nuget-org/deprecate-packages.md) and [unlisting packages](../nuget-org/policies/deleting-packages.md#unlisting-a-package). From b6111dd81388b2693c4adaec8743765eb7318123 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Wed, 17 Feb 2021 08:47:51 -0600 Subject: [PATCH 328/988] Bold these to look better. --- docs/concepts/Security-Best-Practices.md | 26 ++++++++++++------------ 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 1f3d7e107..9d9582b4a 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -61,7 +61,7 @@ We will cover various tools and techniques that NuGet and GitHub provides, which ### NuGet dependency graph -📦 Package Consumer +**📦 Package Consumer** You can view your NuGet dependencies in your project by looking directly at the respective project file. @@ -78,7 +78,7 @@ For more information on managing NuGet dependencies, [see the following document ### GitHub dependency graph -📦 Package Consumer | 📦🖊 Package Author +**📦 Package Consumer | 📦🖊 Package Author** You can use GitHub’s dependency graph to see the packages your project depends on and the repositories that depend on it. This can help you see any vulnerabilities detected in its dependencies. @@ -86,7 +86,7 @@ For more information on GitHub repository dependencies, [see the following docum ### Dependency versions -📦 Package Consumer | 📦🖊 Package Author +**📦 Package Consumer | 📦🖊 Package Author** To ensure a secure supply chain of dependencies, you will want to ensure that all of your dependencies & tooling are regularly updated to the latest stable version as they will often include the latest functionality and security patches to known vulnerabilities. Your dependencies can include code you depend on, binaries you consume, tooling you use, and other components. This may include: @@ -99,13 +99,13 @@ To ensure a secure supply chain of dependencies, you will want to ensure that al ### NuGet deprecated and vulnerable dependencies -📦 Package Consumer | 📦🖊 Package Author +**📦 Package Consumer | 📦🖊 Package Author** You can use the [dotnet CLI](/dotnet/core/tools/dotnet-list-package) to list any known deprecated or vulnerable dependencies you may have inside your project or solution. You can use the command `dotnet list package --deprecated` or `dotnet list package --vulnerable` to provide you a list of any known deprecations or vulnerabilities. ### GitHub vulnerable dependencies -📦 Package Consumer | 📦🖊 Package Author +**📦 Package Consumer | 📦🖊 Package Author** If your project is hosted on GitHub, you can leverage [GitHub Security](https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/automatically-scanning-your-code-for-vulnerabilities-and-errors) to find security vulnerabilities and errors in your project and Dependabot will fix them by opening up a pull request against your codebase. @@ -115,7 +115,7 @@ For more information about Dependabot alerts & security updates, [see the follow ### NuGet feeds -📦 Package Consumer +**📦 Package Consumer** When using multiple public & private NuGet source feeds, a package can be downloaded from any of the feeds. To ensure your build is predictable and secure from known attacks such as [Dependency Confusion](https://medium.com/@alex.birsan/dependency-confusion-4a5d60fec610), knowing what specific feed(s) your packages are coming from is a best practice. You can use a single feed or private feed with upstreaming capabilities for protection. @@ -123,7 +123,7 @@ For more information to secure your package feeds, see [3 Ways to Mitigate Risk ### Client trust policies -📦 Package Consumer +**📦 Package Consumer** There are policies that you can opt-into in which you require the packages you use to be signed. This allows you to trust a package author, as long as it is author signed, or trust a package if it is owned by a specific user or account that is repository signed by NuGet.org. @@ -131,7 +131,7 @@ To configure client trust policies, [see the following documentation](../consume ### Lock files -📦 Package Consumer +**📦 Package Consumer** Lock files store the hash of your package’s content. If the content hash of a package you want to install matches with the lock file, it will ensure package repeatability. @@ -141,7 +141,7 @@ To enable lock files, [see the following documentation](../consume-packages/pack ### GitHub secret scanning -📦🖊 Package Author +**📦🖊 Package Author** GitHub scans repositories for NuGet API keys to prevent fraudulent uses of secrets that were accidentally committed. @@ -149,7 +149,7 @@ To learn more about secret scanning, see [About secret scanning](https://docs.gi ### Author Package Signing -📦🖊 Package Author +**📦🖊 Package Author** [Author signing](../reference/signed-packages-reference.md) allows a package author to stamp their identity on a package and for a consumer to verify it came from you. This protects you against content tampering and serves as a single source of truth about the origin of the package and the package authenticity. When combined with client trust policies, you can verify a package came from a specific author. @@ -157,13 +157,13 @@ To author sign a package, see [Sign a package](../create-packages/sign-a-package ### Two-Factor Authentication (2FA) -📦🖊 Package Author +**📦🖊 Package Author** Enabling two-factor authentication (2FA) can add an extra layer of security when [logging into your GitHub account](https://docs.github.com/en/github/authenticating-to-github/securing-your-account-with-two-factor-authentication-2fa) or the [NuGet.org public package repository](../nuget-org/individual-accounts.md#enable-two-factor-authentication-2fa). It is recommended that you enable two-factor authentication to protect your account. ### Package ID prefix reservation -📦🖊 Package Author +**📦🖊 Package Author** To protect the identity of your packages, you can reserve a package ID prefix with your respective namespace to associate a matching owner if your package ID prefix properly falls under the [specified criteria](../nuget-org/id-prefix-reservation.md#id-prefix-reservation-criteria). @@ -171,7 +171,7 @@ To learn about reserving ID prefixes, see [Package ID prefix reservation](../nug ### Deprecating and unlisting a vulnerable package -📦🖊 Package Author +**📦🖊 Package Author** To protect the .NET package ecosystem when you are aware of a vulnerability in a package you have authored, do your best to deprecate and unlist the package so it is hidden from users searching for packages. If you are consuming a package that is deprecated and unlisted, you should avoid using the package. From 5d6947dade92502f2292cd8470298973735e1356 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Thu, 18 Feb 2021 09:05:15 -0800 Subject: [PATCH 329/988] Explain differences between NuGet's version strings and SemVer (#2324) --- docs/concepts/Package-Versioning.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/docs/concepts/Package-Versioning.md b/docs/concepts/Package-Versioning.md index e76775f8f..3a965e322 100644 --- a/docs/concepts/Package-Versioning.md +++ b/docs/concepts/Package-Versioning.md @@ -243,3 +243,13 @@ When obtaining packages from a repository during install, reinstall, or restore `pack` and `restore` operations normalize versions whenever possible. For packages already built, this normalization does not affect the version numbers in the packages themselves; it affects only how NuGet matches versions when resolving dependencies. However, NuGet package repositories must treat these values in the same way as NuGet to prevent package version duplication. Thus a repository that contains version *1.0* of a package should not also host version *1.0.0* as a separate and different package. + +## Where NuGetVersion diverges from Semantic Versioning + +If you want to programatically use NuGet package versions, it is strongly recommended to use [the package NuGet.Versioning](https://www.nuget.org/packages/NuGet.Versioning). The static method `NuGetVersion.Parse(string)` can be used to parse the version strings, and `VersionComparer` can be used to sort `NuGetVersion` instances. + +If you are implementing NuGet functionality in a language that does not run on .NET, here are the known list of differences between `NuGetVersion` and Semantic Versioning, and the reasons why an existing Semantic Versioning library might not work for packages already published on nuget.org. + +1. `NuGetVersion` supports a 4th version segment, `Revision`, to be compatible with, or a superset of, [`System.Version`](/dotnet/api/system.version). Therefore, excluding prerelease and metadata labels, a version string is `Major.Minor.Patch.Revision`. As per version normalization described above, if `Revision` is zero, it is omit from the normalized version string. +2. `NuGetVersion` only requires the major segment to be defined. All others are optional, and are equivalent to zero. This means that `1`, `1.0`, `1.0.0`, and `1.0.0.0` are all accepted and equal. +3. `NuGetVersion` uses case insenstive string comparisons for pre-release components. This means that `1.0.0-alpha` and `1.0.0-Alpha` are equal. From ab3391a6667e491d6ae39e423b28a25f7d069258 Mon Sep 17 00:00:00 2001 From: Fernando Aguilar Date: Mon, 22 Feb 2021 12:00:24 -0800 Subject: [PATCH 330/988] Testing no-loc syntax --- docs/reference/msbuild-targets.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index e433bbc54..a6d4571de 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -43,9 +43,9 @@ Note that the `Owners` and `Summary` properties from `.nuspec` are not supported | Attribute/NuSpec Value | MSBuild Property | Default | Notes | |--------|--------|--------|--------| -| Id | PackageId | AssemblyName | $(AssemblyName) from MSBuild | -| Version | PackageVersion | Version | This is semver compatible, for example “1.0.0”, “1.0.0-beta”, or “1.0.0-beta-00345” | -| VersionPrefix | PackageVersionPrefix | empty | Setting PackageVersion overwrites PackageVersionPrefix | +| `Id` | `PackageId` | AssemblyName | $(AssemblyName) from MSBuild | +| :::no-loc text="Version"::: | :::no-loc text="PackageVersion"::: | Version | This is semver compatible, for example “1.0.0”, “1.0.0-beta”, or “1.0.0-beta-00345” | +| :::no-loc text="`VersionPrefix`"::: | :::no-loc text="`PackageVersionPrefix`"::: | empty | Setting PackageVersion overwrites PackageVersionPrefix | | VersionSuffix | PackageVersionSuffix | empty | $(VersionSuffix) from MSBuild. Setting PackageVersion overwrites PackageVersionSuffix | | Authors | Authors | Username of the current user | A semicolon-separated list of packages authors, matching the profile names on nuget.org. These are displayed in the NuGet Gallery on nuget.org and are used to cross-reference packages by the same authors. | | Owners | N/A | Not present in NuSpec | | From e9f79e0022dcc0b741e099162e8cae7c1735175d Mon Sep 17 00:00:00 2001 From: Mircea Teodor Oprea Date: Mon, 22 Feb 2021 22:15:41 +0200 Subject: [PATCH 331/988] Fix grammar on 'Deleting packages' page --- docs/nuget-org/policies/deleting-packages.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/nuget-org/policies/deleting-packages.md b/docs/nuget-org/policies/deleting-packages.md index fac1c35fa..3a5502206 100644 --- a/docs/nuget-org/policies/deleting-packages.md +++ b/docs/nuget-org/policies/deleting-packages.md @@ -11,7 +11,7 @@ ms.topic: conceptual nuget.org does not support permanent deletion of packages. Doing so would break every project depending on the availability of the package, especially with build workflows that involve package restore. -nuget.org does supports [unlisting a package](#unlisting-a-package), which can be done in the package management page on the web site. Unlisted packages don't appear on nuget.org or in the Visual Studio UI, and do not appear in search results. Unlisted packages, however, can still be downloaded and installed by using an exact version number, which supports package restore. In addition, unlisted packages may still be discovered in the following specific scenarios: +nuget.org does support [unlisting a package](#unlisting-a-package), which can be done in the package management page on the web site. Unlisted packages don't appear on nuget.org or in the Visual Studio UI, and do not appear in search results. Unlisted packages, however, can still be downloaded and installed by using an exact version number, which supports package restore. In addition, unlisted packages may still be discovered in the following specific scenarios: - Package restore using floating versions (for example, `1.0.0-*`), if the latest available package matching the version or dependency constraints is an unlisted package. - Replication of packages through the catalog (as the catalog also contains unlisted packages). From 24ed5d52dc066ff450c7104da21b8b87d94f49d9 Mon Sep 17 00:00:00 2001 From: Fernando Aguilar Date: Mon, 22 Feb 2021 20:06:51 -0800 Subject: [PATCH 332/988] Added inline code blocks to NuGet MSBuild property table reference. Minor proofreading --- docs/reference/msbuild-targets.md | 197 +++++++++++++++--------------- 1 file changed, 99 insertions(+), 98 deletions(-) diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index a6d4571de..533581843 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -17,7 +17,7 @@ With MSBuild 15.1+, NuGet is also a first-class MSBuild citizen with the `pack` ## Target build order -Because `pack` and `restore` are MSBuild targets, you can access them to enhance your workflow. For example, let’s say you want to copy your package to a network share after packing it. You can do that by adding the following in your project file: +Because `pack` and `restore` are MSBuild targets, you can access them to enhance your workflow. For example, let's say you want to copy your package to a network share after packing it. You can do that by adding the following in your project file: ```xml @@ -33,93 +33,94 @@ Similarly, you can write an MSBuild task, write your own target and consume NuGe > [!NOTE] > `$(OutputPath)` is relative and expects that you are running the command from the project root. -## pack target +## NuGet pack target For .NET projects that use the `PackageReference` format, using `msbuild -t:pack` draws inputs from the project file to use in creating a NuGet package. The following table describes the MSBuild properties that can be added to a project file within the first `` node. You can make these edits easily in Visual Studio 2017 and later by right-clicking the project and selecting **Edit {project_name}** on the context menu. For convenience, the table is organized by the equivalent property in a [`.nuspec` file](../reference/nuspec.md). -Note that the `Owners` and `Summary` properties from `.nuspec` are not supported with MSBuild. +> [!NOTE] +> `Owners` and `Summary` properties from `.nuspec` are not supported with MSBuild. -| Attribute/NuSpec Value | MSBuild Property | Default | Notes | +| Attribute/nuspec Value | MSBuild Property | Default | Notes | |--------|--------|--------|--------| -| `Id` | `PackageId` | AssemblyName | $(AssemblyName) from MSBuild | -| :::no-loc text="Version"::: | :::no-loc text="PackageVersion"::: | Version | This is semver compatible, for example “1.0.0”, “1.0.0-beta”, or “1.0.0-beta-00345” | -| :::no-loc text="`VersionPrefix`"::: | :::no-loc text="`PackageVersionPrefix`"::: | empty | Setting PackageVersion overwrites PackageVersionPrefix | -| VersionSuffix | PackageVersionSuffix | empty | $(VersionSuffix) from MSBuild. Setting PackageVersion overwrites PackageVersionSuffix | -| Authors | Authors | Username of the current user | A semicolon-separated list of packages authors, matching the profile names on nuget.org. These are displayed in the NuGet Gallery on nuget.org and are used to cross-reference packages by the same authors. | -| Owners | N/A | Not present in NuSpec | | -| Title | Title | The PackageId| A human-friendly title of the package, typically used in UI displays as on nuget.org and the Package Manager in Visual Studio. | -| Description | Description | "Package Description" | A long description for the assembly. If `PackageDescription` is not specified, then this property is also used as the description of the package. | -| Copyright | Copyright | empty | Copyright details for the package. | -| RequireLicenseAcceptance | PackageRequireLicenseAcceptance | false | A Boolean value that specifies whether the client must prompt the consumer to accept the package license before installing the package. | -| license | PackageLicenseExpression | empty | Corresponds to ``. See [Packing a license expression or a license file](#packing-a-license-expression-or-a-license-file). | -| license | PackageLicenseFile | empty | Path to a license file within the package if you're using a custom license or a license that hasn't been assigned an SPDX identifier. You need to explicitly pack the referenced license file. Corresponds to ``. See [Packing a license expression or a license file](#packing-a-license-expression-or-a-license-file). | -| LicenseUrl | PackageLicenseUrl | empty | `PackageLicenseUrl` is deprecated. Use `PackageLicenseExpression` or `PackageLicenseFile` instead. | -| ProjectUrl | PackageProjectUrl | empty | | -| Icon | PackageIcon | empty | A path to an image in the package to use as a package icon. You need to explicitly pack the referenced icon image file. For more information, see [Packing an icon image file](#packing-an-icon-image-file) and [`icon` metadata](/nuget/reference/nuspec#icon). | -| IconUrl | PackageIconUrl | empty | `PackageIconUrl` is deprecated in favor of `PackageIcon`. However, for the best downlevel experience, you should specify `PackageIconUrl` in addition to `PackageIcon`. | -| Tags | PackageTags | empty | A semicolon-delimited list of tags that designates the package. | -| ReleaseNotes | PackageReleaseNotes | empty | Release notes for the package. | -| Repository/Url | RepositoryUrl | empty | Repository URL used to clone or retrieve source code. Example: *https://github.com/NuGet/NuGet.Client.git*. | -| Repository/Type | RepositoryType | empty | Repository type. Examples: `git` (default), `tfs`. | -| Repository/Branch | RepositoryBranch | empty | Optional repository branch information. `RepositoryUrl` must also be specified for this property to be included. Example: *master* (NuGet 4.7.0+). | -| Repository/Commit | RepositoryCommit | empty | Optional repository commit or changeset to indicate which source the package was built against. `RepositoryUrl` must also be specified for this property to be included. Example: *0e4d1b598f350b3dc675018d539114d1328189ef* (NuGet 4.7.0+). | -| PackageType | `DotNetCliTool, 1.0.0.0;Dependency, 2.0.0.0` | | | -| Summary | Not supported | | | - -### pack target inputs +| `Id` | `PackageId` | `$(AssemblyName)` | `$(AssemblyName)` from MSBuild | +| `Version` | `PackageVersion` | Version | This is semver compatible, for example `1.0.0`, `1.0.0-beta`, or `1.0.0-beta-00345` | +| `VersionPrefix` | `PackageVersionPrefix` | empty | Setting `PackageVersion` overwrites `PackageVersionPrefix` | +| `VersionSuffix` | `PackageVersionSuffix` | empty | `$(VersionSuffix)` from MSBuild. Setting `PackageVersion` overwrites `PackageVersionSuffix` | +| `Authors` | `Authors` | Username of the current user | A semicolon-separated list of packages authors, matching the profile names on nuget.org. These are displayed in the NuGet Gallery on nuget.org and are used to cross-reference packages by the same authors. | +| `Owners` | N/A | Not present in nuspec | | +| `Title` | `Title` | The `PackageId` | A human-friendly title of the package, typically used in UI displays as on nuget.org and the Package Manager in Visual Studio. | +| `Description` | `Description` | "Package Description" | A long description for the assembly. If `PackageDescription` is not specified, then this property is also used as the description of the package. | +| `Copyright` | `Copyright` | empty | Copyright details for the package. | +| `RequireLicenseAcceptance` | `PackageRequireLicenseAcceptance` | `false` | A Boolean value that specifies whether the client must prompt the consumer to accept the package license before installing the package. | +| `license` | `PackageLicenseExpression` | empty | Corresponds to ``. See [Packing a license expression or a license file](#packing-a-license-expression-or-a-license-file). | +| `license` | `PackageLicenseFile` | empty | Path to a license file within the package if you're using a custom license or a license that hasn't been assigned an SPDX identifier. You need to explicitly pack the referenced license file. Corresponds to ``. See [Packing a license expression or a license file](#packing-a-license-expression-or-a-license-file). | +| `LicenseUrl` | `PackageLicenseUrl` | empty | `PackageLicenseUrl` is deprecated. Use `PackageLicenseExpression` or `PackageLicenseFile` instead. | +| `ProjectUrl` | `PackageProjectUrl` | empty | | +| `Icon` | `PackageIcon` | empty | A path to an image in the package to use as a package icon. You need to explicitly pack the referenced icon image file. For more information, see [Packing an icon image file](#packing-an-icon-image-file) and [`icon` metadata](/nuget/reference/nuspec#icon). | +| `IconUrl` | `PackageIconUrl` | empty | `PackageIconUrl` is deprecated in favor of `PackageIcon`. However, for the best downlevel experience, you should specify `PackageIconUrl` in addition to `PackageIcon`. | +| `Tags` | `PackageTags` | empty | A semicolon-delimited list of tags that designates the package. | +| `ReleaseNotes` | `PackageReleaseNotes` | empty | Release notes for the package. | +| `Repository/Url` | `RepositoryUrl` | empty | Repository URL used to clone or retrieve source code. Example: *https://github.com/NuGet/NuGet.Client.git*. | +| `Repository/Type` | `RepositoryType` | empty | Repository type. Examples: `git` (default), `tfs`. | +| `Repository/Branch` | `RepositoryBranch` | empty | Optional repository branch information. `RepositoryUrl` must also be specified for this property to be included. Example: *master* (NuGet 4.7.0+). | +| `Repository/Commit` | `RepositoryCommit` | empty | Optional repository commit or changeset to indicate which source the package was built against. `RepositoryUrl` must also be specified for this property to be included. Example: *0e4d1b598f350b3dc675018d539114d1328189ef* (NuGet 4.7.0+). | +| `PackageType` | `DotNetCliTool, 1.0.0.0;Dependency, 2.0.0.0` | | | +| `Summary` | Not supported | | | + +### NuGet pack target inputs | Property | Description | | - | - | -| IsPackable | A Boolean value that specifies whether the project can be packed. The default value is `true`. | -| SuppressDependenciesWhenPacking | Set to `true` to suppress package dependencies from the generated NuGet package. | -| PackageVersion | Specifies the version that the resulting package will have. Accepts all forms of NuGet version string. Default is the value of `$(Version)`, that is, of the property `Version` in the project. | -| PackageId | Specifies the name for the resulting package. If not specified, the `pack` operation will default to using the `AssemblyName` or directory name as the name of the package. | -| PackageDescription | A long description of the package for UI display. | -| Authors | A semicolon-separated list of packages authors, matching the profile names on nuget.org. These are displayed in the NuGet Gallery on nuget.org and are used to cross-reference packages by the same authors. | -| Description | A long description for the assembly. If `PackageDescription` is not specified, then this property is also used as the description of the package. | -| Copyright | Copyright details for the package. | -| PackageRequireLicenseAcceptance | A Boolean value that specifies whether the client must prompt the consumer to accept the package license before installing the package. The default is `false`. | -| DevelopmentDependency | A Boolean value that specifies whether the package is marked as a development-only dependency, which prevents the package from being included as a dependency in other packages. With `PackageReference` (NuGet 4.8+), this flag also means that compile-time assets are excluded from compilation. For more information, see [DevelopmentDependency support for PackageReference](https://github.com/NuGet/Home/wiki/DevelopmentDependency-support-for-PackageReference). | -| PackageLicenseExpression | An [SPDX license identifier](https://spdx.org/licenses/) or expression, for example, `Apache-2.0`. For more information, see [Packing a license expression or a license file](#packing-a-license-expression-or-a-license-file). | -| PackageLicenseFile | Path to a license file within the package if you're using a custom license or a license that hasn't been assigned an SPDX identifier. | -| PackageLicenseUrl | `PackageLicenseUrl` is deprecated. Use `PackageLicenseExpression` or `PackageLicenseFile` instead. | -| PackageProjectUrl | | -| PackageIcon | Specifies the package icon path, relative to the root of the package. For more information, see [Packing an icon image file](#packing-an-icon-image-file). | -| PackageReleaseNotes| Release notes for the package. | -| PackageTags | A semicolon-delimited list of tags that designates the package. | -| PackageOutputPath | Determines the output path in which the packed package will be dropped. Default is `$(OutputPath)`. | -| IncludeSymbols | This Boolean value indicates whether the package should create an additional symbols package when the project is packed. The symbols package's format is controlled by the `SymbolPackageFormat` property. For more information, see [IncludeSymbols](#includesymbols). | -| IncludeSource | This Boolean value indicates whether the pack process should create a source package. The source package contains the library's source code as well as PDB files. Source files are put under the `src/ProjectName` directory in the resulting package file. For more information, see [IncludeSource](#includesource). | -| PackageTypes -| IsTool | Specifies whether all output files are copied to the *tools* folder instead of the *lib* folder. For more information, see [IsTool](#istool). | -| RepositoryUrl | Repository URL used to clone or retrieve source code. Example: *https://github.com/NuGet/NuGet.Client.git*. | -| RepositoryType | Repository type. Examples: `git` (default), `tfs`. | -| RepositoryBranch | Optional repository branch information. `RepositoryUrl` must also be specified for this property to be included. Example: *master* (NuGet 4.7.0+). | -| RepositoryCommit | Optional repository commit or changeset to indicate which source the package was built against. `RepositoryUrl` must also be specified for this property to be included. Example: *0e4d1b598f350b3dc675018d539114d1328189ef* (NuGet 4.7.0+). | -| SymbolPackageFormat | Specifies the format of the symbols package. If "symbols.nupkg", a legacy symbols package is created with a *.symbols.nupkg* extension containing PDBs, DLLs, and other output files. If "snupkg", a snupkg symbol package is created containing the portable PDBs. The default is "symbols.nupkg". | -| NoPackageAnalysis | Specifies that `pack` should not run package analysis after building the package. | -| MinClientVersion | Specifies the minimum version of the NuGet client that can install this package, enforced by nuget.exe and the Visual Studio Package Manager. | -| IncludeBuildOutput | This Boolean value specifies whether the build output assemblies should be packed into the *.nupkg* file or not. | -| IncludeContentInPack | This Boolean value specifies whether any items that have a type of `Content` are included in the resulting package automatically. The default is `true`. | -| BuildOutputTargetFolder | Specifies the folder where to place the output assemblies. The output assemblies (and other output files) are copied into their respective framework folders. For more information, see [Output assemblies](#output-assemblies). | -| ContentTargetFolders | Specifies the default location of where all the content files should go if `PackagePath` is not specified for them. The default value is "content;contentFiles". For more information, see [Including content in a package](#including-content-in-a-package). | -| NuspecFile | Relative or absolute path to the *.nuspec* file being used for packing. If specified, it's used **exclusively** for packaging information, and any information in the projects is not used. For more information, see [Packing using a .nuspec](#packing-using-a-nuspec). | -| NuspecBasePath | Base path for the *.nuspec* file. For more information, see [Packing using a .nuspec](#packing-using-a-nuspec). | -| NuspecProperties | Semicolon separated list of key=value pairs. For more information, see [Packing using a .nuspec](#packing-using-a-nuspec). | - -## pack scenarios - -### Suppress dependencies +| `IsPackable` | A Boolean value that specifies whether the project can be packed. The default value is `true`. | +| `SuppressDependenciesWhenPacking` | Set to `true` to suppress package dependencies from the generated NuGet package. | +| `PackageVersion` | Specifies the version that the resulting package will have. Accepts all forms of NuGet version string. Default is the value of `$(Version)`, that is, of the property `Version` in the project. | +| `PackageId` | Specifies the name for the resulting package. If not specified, the `pack` operation will default to using the `AssemblyName` or directory name as the name of the package. | +| `PackageDescription` | A long description of the package for UI display. | +| `Authors` | A semicolon-separated list of packages authors, matching the profile names on nuget.org. These are displayed in the NuGet Gallery on nuget.org and are used to cross-reference packages by the same authors. | +| `Description` | A long description for the assembly. If `PackageDescription` is not specified, then this property is also used as the description of the package. | +| `Copyright` | Copyright details for the package. | +| `PackageRequireLicenseAcceptance` | A Boolean value that specifies whether the client must prompt the consumer to accept the package license before installing the package. The default is `false`. | +| `DevelopmentDependency` | A Boolean value that specifies whether the package is marked as a development-only dependency, which prevents the package from being included as a dependency in other packages. With `PackageReference` (NuGet 4.8+), this flag also means that compile-time assets are excluded from compilation. For more information, see [DevelopmentDependency support for PackageReference](https://github.com/NuGet/Home/wiki/DevelopmentDependency-support-for-PackageReference). | +| `PackageLicenseExpression` | An [SPDX license identifier](https://spdx.org/licenses/) or expression, for example, `Apache-2.0`. For more information, see [Packing a license expression or a license file](#packing-a-license-expression-or-a-license-file). | +| `PackageLicenseFile` | Path to a license file within the package if you're using a custom license or a license that hasn't been assigned an SPDX identifier. | +| `PackageLicenseUrl` | `PackageLicenseUrl` is deprecated. Use `PackageLicenseExpression` or `PackageLicenseFile` instead. | +| `PackageProjectUrl` | | +| `PackageIcon` | Specifies the package icon path, relative to the root of the package. For more information, see [Packing an icon image file](#packing-an-icon-image-file). | +| `PackageReleaseNotes` | Release notes for the package. | +| `PackageTags` | A semicolon-delimited list of tags that designates the package. | +| `PackageOutputPath` | Determines the output path in which the packed package will be dropped. Default is `$(OutputPath)`. | +| `IncludeSymbols` | This Boolean value indicates whether the package should create an additional symbols package when the project is packed. The symbols package's format is controlled by the `SymbolPackageFormat` property. For more information, see [IncludeSymbols](#includesymbols). | +| `IncludeSource` | This Boolean value indicates whether the pack process should create a source package. The source package contains the library's source code as well as PDB files. Source files are put under the `src/ProjectName` directory in the resulting package file. For more information, see [IncludeSource](#includesource). | +| `PackageType` | | +| `IsTool` | Specifies whether all output files are copied to the *tools* folder instead of the *lib* folder. For more information, see [IsTool](#istool). | +| `RepositoryUrl` | Repository URL used to clone or retrieve source code. Example: *https://github.com/NuGet/NuGet.Client.git*. | +| `RepositoryType` | Repository type. Examples: `git` (default), `tfs`. | +| `RepositoryBranch` | Optional repository branch information. `RepositoryUrl` must also be specified for this property to be included. Example: *master* (NuGet 4.7.0+). | +| `RepositoryCommit` | Optional repository commit or changeset to indicate which source the package was built against. `RepositoryUrl` must also be specified for this property to be included. Example: *0e4d1b598f350b3dc675018d539114d1328189ef* (NuGet 4.7.0+). | +| `SymbolPackageFormat` | Specifies the format of the symbols package. If "symbols.nupkg", a legacy symbols package is created with a *.symbols.nupkg* extension containing PDBs, DLLs, and other output files. If "snupkg", a snupkg symbol package is created containing the portable PDBs. The default is "symbols.nupkg". | +| `NoPackageAnalysis` | Specifies that `pack` should not run package analysis after building the package. | +| `MinClientVersion` | Specifies the minimum version of the NuGet client that can install this package, enforced by nuget.exe and the Visual Studio Package Manager. | +| `IncludeBuildOutput` | This Boolean value specifies whether the build output assemblies should be packed into the *.nupkg* file or not. | +| `IncludeContentInPack` | This Boolean value specifies whether any items that have a type of `Content` are included in the resulting package automatically. The default is `true`. | +| `BuildOutputTargetFolder` | Specifies the folder where to place the output assemblies. The output assemblies (and other output files) are copied into their respective framework folders. For more information, see [Output assemblies](#output-assemblies). | +| `ContentTargetFolders` | Specifies the default location of where all the content files should go if `PackagePath` is not specified for them. The default value is "content;contentFiles". For more information, see [Including content in a package](#including-content-in-a-package). | +| `NuspecFile` | Relative or absolute path to the *.nuspec* file being used for packing. If specified, it's used **exclusively** for packaging information, and any information in the projects is not used. For more information, see [Packing using a .nuspec](#packing-using-a-nuspec). | +| `NuspecBasePath` | Base path for the *.nuspec* file. For more information, see [Packing using a .nuspec](#packing-using-a-nuspec). | +| `NuspecProperties` | Semicolon separated list of key=value pairs. For more information, see [Packing using a .nuspec](#packing-using-a-nuspec). | + +## NuGet pack scenarios + +### Suppressing dependencies To suppress package dependencies from generated NuGet package, set `SuppressDependenciesWhenPacking` to `true` which will allow skipping all the dependencies from generated nupkg file. -### PackageIconUrl +### `PackageIconUrl` `PackageIconUrl` is deprecated in favor of the [`PackageIcon`](#packageicon) property. Starting with NuGet 5.3 and Visual Studio 2019 version 16.3, `pack` raises the [NU5048](./errors-and-warnings/nu5048.md) warning if the package metadata only specifies `PackageIconUrl`. -### PackageIcon +### `PackageIcon` > [!Tip] > To maintain backward compatibility with clients and sources that don't yet support `PackageIcon`, specify both `PackageIcon` and `PackageIconUrl`. Visual Studio supports `PackageIcon` for packages coming from a folder-based source. @@ -163,7 +164,7 @@ See [Package References in Project Files](../consume-packages/package-references ### Project to project references -Project to project references are considered by default as nuget package references, for example: +Project to project references are considered by default as NuGet package references. For example: ```xml @@ -276,7 +277,7 @@ For historical reasons, NuGet & MSBuild treat paths without an extension as dire When using `MSBuild -t:pack -p:IsTool=true`, all output files, as specified in the [Output Assemblies](#output-assemblies) scenario, are copied to the `tools` folder instead of the `lib` folder. Note that this is different from a `DotNetCliTool` which is specified by setting the `PackageType` in `.csproj` file. -### Packing using a .nuspec +### Packing using a .nuspec file Although it is recommended that you [include all the properties](../reference/msbuild-targets.md#pack-target) that are usually in the `.nuspec` file in the project file instead, you can choose to use a `.nuspec` file to pack your project. For a non-SDK-style project that uses `PackageReference`, you must import `NuGet.Build.Tasks.Pack.targets` so that the pack task can be executed. You still need to restore the project before you can pack a nuspec file. (An SDK-style project includes the pack targets by default.) @@ -345,7 +346,7 @@ Example: ``` -#### TargetsForTfmSpecificContentInPackage +#### `TargetsForTfmSpecificContentInPackage` Write a custom target and specify it as the value of the `$(TargetsForTfmSpecificContentInPackage)` property. For any files to include in the package, the target should write those files into the ItemGroup `TfmSpecificPackageFile` and set the following optional metadata: @@ -370,7 +371,7 @@ An example: ``` -## restore target +## NuGet restore target `MSBuild -t:restore` (which `nuget restore` and `dotnet restore` use with .NET Core projects), restores packages referenced in the project file as follows: @@ -393,27 +394,27 @@ Additional restore settings may come from MSBuild properties in the project file | Property | Description | |--------|--------| -| RestoreSources | Semicolon-delimited list of package sources. | -| RestorePackagesPath | User packages folder path. | -| RestoreDisableParallel | Limit downloads to one at a time. | -| RestoreConfigFile | Path to a `Nuget.Config` file to apply. | -| RestoreNoCache | If true, avoids using cached packages. See [Managing the global packages and cache folders](../consume-packages/managing-the-global-packages-and-cache-folders.md). | -| RestoreIgnoreFailedSources | If true, ignores failing or missing package sources. | -| RestoreFallbackFolders | Fallback folders, used in the same way the user packages folder is used. | -| RestoreAdditionalProjectSources | Additional sources to use during restore. | -| RestoreAdditionalProjectFallbackFolders | Additional fallback folders to use during restore. | -| RestoreAdditionalProjectFallbackFoldersExcludes | Excludes fallback folders specified in `RestoreAdditionalProjectFallbackFolders` | -| RestoreTaskAssemblyFile | Path to `NuGet.Build.Tasks.dll`. | -| RestoreGraphProjectInput | Semicolon-delimited list of projects to restore, which should contain absolute paths. | -| RestoreUseSkipNonexistentTargets | When the projects are collected via MSBuild it determines whether they are collected using the `SkipNonexistentTargets` optimization. When not set, defaults to `true`. The consequence is a fail-fast behavior when a project's targets cannot be imported. | -| MSBuildProjectExtensionsPath | Output folder, defaulting to `BaseIntermediateOutputPath` and the `obj` folder. | -| RestoreForce | In PackageReference based projects, forces all dependencies to be resolved even if the last restore was successful. Specifying this flag is similar to deleting the `project.assets.json` file. This does not bypass the http-cache. | -| RestorePackagesWithLockFile | Opts into the usage of a lock file. | -| RestoreLockedMode | Run restore in locked mode. This means that restore will not reevaluate the dependencies. | -| NuGetLockFilePath | A custom location for the lock file. The default location is next to the project and is named `packages.lock.json`. | -| RestoreForceEvaluate | Forces restore to recompute the dependencies and update the lock file without any warning. | -| RestorePackagesConfig | An opt-in switch, that restores projects with packages.config. Support with `MSBuild -t:restore` only. | -| RestoreUseStaticGraphEvaluation | An opt-in switch to use static graph MSBuild evaluation instead of the standard evaluation. Static graph evaluation is an experimental feature that's significantly faster for large repos and solutions. | +| `RestoreSources` | Semicolon-delimited list of package sources. | +| `RestorePackagesPath` | User packages folder path. | +| `RestoreDisableParallel` | Limit downloads to one at a time. | +| `RestoreConfigFile` | Path to a `Nuget.Config` file to apply. | +| `RestoreNoCache` | If true, avoids using cached packages. See [Managing the global packages and cache folders](../consume-packages/managing-the-global-packages-and-cache-folders.md). | +| `RestoreIgnoreFailedSources` | If true, ignores failing or missing package sources. | +| `RestoreFallbackFolders` | Fallback folders, used in the same way the user packages folder is used. | +| `RestoreAdditionalProjectSources` | Additional sources to use during restore. | +| `RestoreAdditionalProjectFallbackFolders` | Additional fallback folders to use during restore. | +| `RestoreAdditionalProjectFallbackFoldersExcludes` | Excludes fallback folders specified in `RestoreAdditionalProjectFallbackFolders` | +| `RestoreTaskAssemblyFile` | Path to `NuGet.Build.Tasks.dll`. | +| `RestoreGraphProjectInput` | Semicolon-delimited list of projects to restore, which should contain absolute paths. | +| `RestoreUseSkipNonexistentTargets` | When the projects are collected via MSBuild it determines whether they are collected using the `SkipNonexistentTargets` optimization. When not set, defaults to `true`. The consequence is a fail-fast behavior when a project's targets cannot be imported. | +| `MSBuildProjectExtensionsPath` | Output folder, defaulting to `BaseIntermediateOutputPath` and the `obj` folder. | +| `RestoreForce` | In PackageReference based projects, forces all dependencies to be resolved even if the last restore was successful. Specifying this flag is similar to deleting the `project.assets.json` file. This does not bypass the http-cache. | +| `RestorePackagesWithLockFile` | Opts into the usage of a lock file. | +| `RestoreLockedMode` | Run restore in locked mode. This means that restore will not reevaluate the dependencies. | +| `NuGetLockFilePath` | A custom location for the lock file. The default location is next to the project and is named `packages.lock.json`. | +| `RestoreForceEvaluate` | Forces restore to recompute the dependencies and update the lock file without any warning. | +| `RestorePackagesConfig` | An opt-in switch, that restores projects with packages.config. Support with `MSBuild -t:restore` only. | +| `RestoreUseStaticGraphEvaluation` | An opt-in switch to use static graph MSBuild evaluation instead of the standard evaluation. Static graph evaluation is an experimental feature that's significantly faster for large repos and solutions. | #### Examples @@ -458,7 +459,7 @@ msbuild -t:build -restore The same logic applies to other targets similar to `build`. -### Restoring PackageReference and packages.config with MSBuild +### Restoring PackageReference and packages.config projects with MSBuild With MSBuild 16.5+, packages.config are also supported for `msbuild -t:restore`. From ca47bb4fe958ad2748d6e41943222fe240ad5589 Mon Sep 17 00:00:00 2001 From: Fernando Aguilar Date: Mon, 22 Feb 2021 20:19:03 -0800 Subject: [PATCH 333/988] Updated global no-loc entries --- docs/reference/msbuild-targets.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index 533581843..01dc193f6 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -5,6 +5,7 @@ author: nkolev92 ms.author: nikolev ms.date: 03/23/2018 ms.topic: conceptual +no-loc: [NuGet, MSBuild, .nuspec, nuspec] --- # NuGet pack and restore as MSBuild targets @@ -273,11 +274,12 @@ For historical reasons, NuGet & MSBuild treat paths without an extension as dire ``` [File without an extension sample](https://github.com/NuGet/Samples/blob/master/PackageLicenseFileExtensionlessExample/). + ### IsTool When using `MSBuild -t:pack -p:IsTool=true`, all output files, as specified in the [Output Assemblies](#output-assemblies) scenario, are copied to the `tools` folder instead of the `lib` folder. Note that this is different from a `DotNetCliTool` which is specified by setting the `PackageType` in `.csproj` file. -### Packing using a .nuspec file +### Packing using a :::no-loc text=".nuspec"::: file Although it is recommended that you [include all the properties](../reference/msbuild-targets.md#pack-target) that are usually in the `.nuspec` file in the project file instead, you can choose to use a `.nuspec` file to pack your project. For a non-SDK-style project that uses `PackageReference`, you must import `NuGet.Build.Tasks.Pack.targets` so that the pack task can be executed. You still need to restore the project before you can pack a nuspec file. (An SDK-style project includes the pack targets by default.) @@ -323,7 +325,7 @@ The `pack` target provides two extension points that run in the inner, target fr - `TargetsForTfmSpecificBuildOutput` target: Use for files inside the `lib` folder or a folder specified using `BuildOutputTargetFolder`. - `TargetsForTfmSpecificContentInPackage` target: Use for files outside the `BuildOutputTargetFolder`. -#### TargetsForTfmSpecificBuildOutput +#### `TargetsForTfmSpecificBuildOutput` Write a custom target and specify it as the value of the `$(TargetsForTfmSpecificBuildOutput)` property. For any files that need to go into the `BuildOutputTargetFolder` (lib by default), the target should write those files into the ItemGroup `BuildOutputInPackage` and set the following two metadata values: From 6f346706c0a7d83aa3c0fff22429d5749a974d63 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Tue, 23 Feb 2021 17:57:37 -0500 Subject: [PATCH 334/988] First draft of readme on nuget.org docs --- .../nuget-org/media/readme-upload-preview.PNG | Bin 0 -> 108124 bytes docs/nuget-org/package-readme-on-nuget-org.md | 39 ++++++++++++++++++ 2 files changed, 39 insertions(+) create mode 100644 docs/nuget-org/media/readme-upload-preview.PNG create mode 100644 docs/nuget-org/package-readme-on-nuget-org.md diff --git a/docs/nuget-org/media/readme-upload-preview.PNG b/docs/nuget-org/media/readme-upload-preview.PNG new file mode 100644 index 0000000000000000000000000000000000000000..6c280ce8feee5685ca2e372e5ab261302251618c GIT binary patch literal 108124 zcmeFZhg*}`+CIvRC|D>q5R{^*s5I%)f}j$WrqWA5q;~`Y1PoC?u~0;WNDYW|2!hnm zR7P6p5L$qUlt3VamIM-#oG`QJ+syadf517vv)}9T3VBK1wbrwqa^Lr}@YOvdAkQJ; zLmV6&Ja=y2e89oMrOUy=d4c-?`;JsUZz}ucw}1ygT@GZ=nML*+PFEd69S)B2_`^F6 z``Pag`rWn);NTFru>0?~I}gsUa&WM6@7&Ze4Y6BpBn5yhprkVGEL@5lpZY*foYuj_ zgMRWtc|l4Bj^~6YYB}wPUggOvUnGM;Id4*jUmZN<`0fgK#MNfo#5^BPPV|l12jW9U z$L*!y!m|RnPX2TG=S`n+I!%~j458b!-}nGH##mTc!0?nS5#cH(vY0;NIj{T*OzEu} zu?s_x0iGn$-`KPK_qA}9TlXJ#vS!4&cNg+M*VDL2@e}{^ZubXu-iUkuxUq2UzYqEU zx=kv*yE@&B<2O(FYRkgE8;hqrZwu-mL+v1-dNYbvIX|;XT+XlqsY-^-HQ7~91w0_= zyRUpW?}L?UbMCWSVSJh9618w~-WeuO;pnq8jkxxSq*c;hH|aY8;*VHAc3f+5QA!gQQR0^xj<7d?+_*g%~23EuzTvPRySg;XN-u+ zEUSnyo#8tJcpuhCZ_QL0;UtjubIj(bA+GY{b2U z=fG;c&d{w_bE}D`1Y740c%n|1I99Cw0TALA)7GE`e&4Zb2z)@9JOdD>G8G@#-wkLx z{}}r~ELKAj=))%#TTlOB8>1ym9dN`hZREaa+dI_5L8wlFh!4o>ts-Ld3Y3C}=1iTD z(xL9p=811>#K+k3XjfQ;gk%8>d!L>Oli$gjt6cc-X@9nmZR(klULgN&w)*>eo3_HM z3zh9muqo-akoF>c7q6UNtEJBx+&CtjHlOV1$$I>QGyCsP@4ia$>J(7RW@>B@ScgH3 zzJe;$fHJ8jzR!06SV+J_{Tbc$PJy(Ka!2q(Lw zdeR&H$0XZ&Flc8=xTjEpUw_q3vH#<7oB3GUmNm)OPR(~R?52x7k85EHIV zICO`^6N+Z#kLJ9n0SufH0>Z!O=LuJz-eZL<#k1Vrr;egPc{>Mx{pOwn)reD#GcRd` z4QLr_aq3SYpGW8XX3?x_EaMdu?ZHFopmele_nLm?uo!HFlgpv<0ht1Pl5hlozkxoG z+FH$ul-!6PkI@pPzTnCsIe{qEUz(P;93Pv+&7CBDIbGWO%X-?8DZcsgOmj0Xb-2Q} z{tWDLdbgxA*7`)0T`2f&&<~bCmuQ8wB-I*$Q%gEFwQtXC0|h{=xV}U#u8$<{MvUfb zWesk#U_+b!2j-{pUG`_o{m@k;krLj@D{`ATO0a&RyRIIKvO8tWeJ_XCNKc~H=}`^{ zryxtdv{{s1*G4M|l0MSW=1*b1U$v4s9_1o*P{4#>RUC0ori>3u7tvTjOFECHy5a_J zwXXcWXBH*iC^>G!Dto=&w9gCg3?>z&fq8f*hp|I%k+$z0gRY~fPBKT*G|q@<)iNoM z)i&OxP>ZCswJ&hRrH=NVOqaRYGVl-eg@TTdSSznea)UFv3^mnlJ`8*%5sk^-hB}3@E*QVO`##dh*f0Qu&fYYXz*3F`9(!q?B zcaD5<=x2?Q3J;s%CZ+rB0u+3rom5@+N5*~|Tecwf6|)U=LDGVj*{3+z=Ct!|AG7{8 zmroNwp`r?)t5^-<$&ohsUOW2o`-_JP$G)ck58=fHjtnP<`3#LmmzKBvx^l6SXK(xZ8CUsYth8bZT| z7~Hs~C1-l1>+HLeFXwr6LDLQ;C4^@I^?xSN<>1bh!@%%RtVyx4YWvoH7#m&v&-E0U zU5`7Os(bz^0edB9(A8-r*V)R>E?JRF1pVeY=y_xxbvY4AsaK>|qfKutoaEuB`<=s_3WwCn+Zi0ub%Yt$+~ybN+j=oK>mNAlG2{3+Y10ux-o7l< zD50(}JX+&eq~e{Vf0AU)j_!8k#O4>@8g5IsHAv$AM3fnO7qM22=yLlW=n{cWz^;Tg0=45dd z`MhY(Cr8Mgyaw-UfPnk5pf%Rd0P=Eyt*@akMJkw|aH;q=I^%OfLh@yDNrm_jHuLr+ zUkB~hEv*&>+r#T1lJ#Dsx$uN-EWo$E1cuE~g(FS{0c3|q@!g&*EbmOkJdc5J;Rhp4PNj?Snuff(iSZV0 z2tfDAMZf&-r~ck%_G{K@ac)EL%N#?&hN3l* zm80uOyHoH|cLz5YeuB)*j$7dS`PdwVrT9SG*hj7j=a{5|=n4BN&B>oUC+C;?bo$Z@r@3?wrtBkij~KoqvzSvc4sj1I21C zawioBC=kXE0JZEgr!ZG1k?xQ7LhJ=2Ze0^gfQD?nkF8i&uy^xvsNb*{Nbul*E!xKJ zZKD0DWF5saS6tcwCqL3rwe5Ehq}O;5D5=i)W+b|)QL-fgidLZilwIV*!RnZ;AcgQ@ zTv7YFFwjgE{bTX|7KF|MIT?a?zQEE%D8LgXdViz($eA{91KH58uDNko}YAn>b!w3%QBC2u33E74ix#KK**5Psu6?hPuuT#miSZgq4nl)we*$w(klxM)ZwwPh$|x!pze8#TVk6gzd*d3rh*)V56gtlA^@l?^PPa4@UI$ z)jTnG+GZVg-Q4>2XmjINi64I``CXS$Tqk8R<7m;*C|yx*-NeYgIeh+X`&6kyPl3n3 zC$sQ?TUU!LUn>}Xv}bk=hBRMun>eTAw!gvO_JD?))2aB@=bHRc7rC-^#{78y9cb67 zy8MLgZv1y4-M~P%C#k>qqg3|kT$+9Mzoz#Jc}Q3JXH5L&&eq`cA7@Fd(9HnH$K1MU z&%{rxU+2HOmzTZ0Il`GeFOo&$wmtrWIU*N*{Kb=P7!Y4BV^l7#B;U79zM!`8+(D?} zaif^W=H_MxS(WszKjkXr>Td;T+iW+b+g8l}_c2pra!U;7kR_D2W!wkwkApaU)RKTA zG=8(uz4!=hI>wd;z7`ufCurQ6&=@%Y^RCT+j-bD06AM7EsU# z1&yTV&wf<(^yw;pQz}tGDkqmT_iIoF1sfY>Zr7$iQzh@mV!znYe8rL-1<&XoTADCd z^wv|8)fPL`+g{N)qn0~&O0uFCtw4QF^oJslj&Orp$<5M-^OqfSz@A^FW)dqNdi&2d zK)}N=$-HJw-%y$2wNI$D>rN21{Lo|*x#7cz4EV5)_uO33252 z`28L{VdHYK_rLd&!*V9@7Jt#V{3hyPmcs&8?3nf`<(-G+fJXE$Q~oIHY#cdwIdP4v zZSLtoe#4MzO{unq=6G00{X~{St4%ffH%1Muy~GLcPZoEkl!Gd!_{zIbgzN{+HBD|# zE)+TLbjtS9ge11*YKd=~smzDM0JC{s-y{GCQI!dGSXIB~{zDfjzS((8t@;KWCy8zL zh|VG}GOiOcAF`;EkD;HDO+*EZ-w|Y}^ORWE3>TEE0m9q9>aA|v95bbT=E*#_ZrLsX z39qxHKO6=VW!q54+7Ia(?{9;#`7~1=Gvn|(_8agc9nq=Z<{Vbr_$}Ncg>S2EST+Cw zH|qRc7*O+L7^^BigLnK^creD(+08fKB5rN56q>1VCb_xHj9S*!vE}VhV6Bl!cY=$J z-s(*lhXj~Y%fmB=;-ZI>+Sa+ks^&neoo7qvO~dk6f_9e3B_u;^2)K`~(Cm)?6I ze$?vCd#q?*%wkx>%&{FCt?ftG?q^o-Nj(o^2bCps$q6-g+-?iQoO~vJDTzhNYHI%E z5~>%DNO!K=da~?$@nNU(p`nXM9!w3$F;w}`L;BMQ9yX!d7yi&cGRB^pH6L&%Z$&IP z<`^4$QQcmiL`r2jU71F*7NA~Sk^U>{#J`KESmnsU5W7+_! zdhPK%(K!;dWW*`nYUeijx{wPyj_vDX_ZLSL?$2cR6+2uXt^vihb#``*)KHz`IL0L; zxQRVYZ$F*|*PoEmI-P~#pF*vZp@ZNFwx*jiU4J(%AR_3H1 zqs!~u&i<#32h2#^hKFvD%j?$MX9V)M#g(>f9J3ZajftB^Rs^g#5eZ$-#FchdQ(kZk z{J`W>x6kT3RZe3R{lD_PrF5iNt}dJtj*>;E@GTXf#Lu9USV9ft70*j>H6hrWl?~aH zP~{zynCHI z6JNBTrb_whfoVNj1@z1>fX;|B^|wYm<3l&E(kBKH=Yj0!;{yLq>`#^NTI|pE&^&^H)#tsjNuQ7G8!z~Q)tl>* z5-Pv2)>%+zrIs}~;cp;(uA&(38xez}_pUioc*nVi!h3^IZgxF&G(}R4II`&{UFfgi%KLa!-UU?6@2Qz-w zTSSSQDmyH|SvB+k_z!mgH|D5|D=+WXv*!ndX~=eoe1UWcOe(Lg30^TrkI1o5)CG0; zED%Z~={GowhahIA9xCN7Wgu3b79Le(3}YjLUr+g6)#7Xnoql;FwQn$h5xY;}XLIx8 zYaus_8(|LZYHzQu_qPc}rTVv5zZO?=7n%>S5MR8BD-F$WN_A2c zqK(Dg{>F2I{Kd1Tb5+o&Q@7<#Lxqmp|Muu4odTMD^D;B+-H*a^+&pzkQf(xh>`2_r9DdEhfdj~aM_Ik*@0~iBf0mQKXl@ka0brx6~{jJx(#GulDIqg4vzv6chguNVk zqD6;eEMVqn-6`f+{+PJZ^!;3b%a}&qcW3)|g(9fN6{=Bcu;I8)#-Va#~cWnuD@j>CSm*ZB(JWg zEn7Zg1S2W8aa`T?SK)KBcD^>DY_m*!tJ~ehtf{<2UEbf_J*Z?1&YIr(DPJQ^OYdPH_9oHSgj}+~hlM zHve7#$M7W)k*F)ekCH`%iZ+rC>m;!!?wq2bAs9AM;D0}E;+G+o|JU{zca{6W83+l_JK-+42?8vF8P?PQ{*o|M+qx3%hQP8Qf zSR*YV<4nzDSfDLMq+89-?^Z_>ZAOY$@sK=YDxh8G1pTK}pFMh)P)h#*u z4@qimm*(F9xf;lu9nVr|3Gz94VLsHjS0G7Pqj+0z6uI01`!4dHi7`R@;nfq~|1jM} z5wWOhzT<4#OIGD;|0*LJKcoj#IdFA)=T9I?j|k?Q`l3%O<4LZADv0`g==abXpym-P zNZe#&^T8WSu^Ys(23mV@EqCz~TBh8(lJpSV^`N zLW*{4YZlftua+;cd0VK_=)U7TO!dTxd<$J(oOH-K@ImK;@WC5pZmW6N0f{Bwi8*3@ zO_v7UxzXOJEixf~E$cSEPVERBNrZ!_A#-7VmemA}Gi8$(Or`;~zt@j1m}*tm@Nkjd zY|e`eF{sQb>MP8Ns26P`*ft$j?XKu+(-N#p$v-m^YDH_K%zu_05{)kz+J|aV^-h|O zBs)`aFx$8-a`Qv}q6Vc4^*f^R)==eHJ1ss~)lCymL@;K`96{}FNHQR0=(AH1Fzzc5HHQDAwYzzVdagb6?bH#EAm!W{m=y2f0%3QwR^{mlf65M5?cEv`>Azddj2`6^ND< z%1BSrU%MY=myw3TMY-vOsH;Qod-__k^f|LT*CWz5<6;jAGQ9oX`)WkoyFglNrro`l zye}{AIbD7wDd9`zAMEvi5KGy}Q=YRD=O(lDGtmR>-zws^N#|wytM^2Fi4M1JedeZk zuIItXzKI--J^X>=p_vZo`aMwY%5k_k4|`L~VBkvQVWJjK2ST0<>Z& zIozs@UPb}Q?W^HKCzu@mo~E;RS;K7Ic<%!^`X2K~?SUK|9M{`)_A*%Zhefz_F8$*> zfoJ~vkpCap#PeA|&cNWHNx-J<7S(9Jvm^$Gn!@4$b<8*kh2RT2^=-=xa>c@;(EFLP zD6xNdNK~K>zq(Y8`O8x^B*T5XUEwp@!I#s+PY(R1vyj{ItsPKX8lB4K5-*=rGsV%=Q`8R)M-6YT3K=Q zPXNyB_2uiou{)KGjM|}A0XwU=iDD}?y2`zO%EfC%+4~~q7M? zV+d+YXh4Yqx30uL!{fRDC%Ze}1Ln-Okn2d1JA(chODizX$TLPZL*Ow+JstknUUg$E z=A8(C1|vImI{hdg||h zGyeT0l+Io01-@y2x+`btlvdLEwVxJ^(6v0V5EJ{_IPw6D{`t(>e4Vh-yXcQPZsVJf zh`zbQCJLeXW=ytN^K(kVe?9k{4bR@id7g~u6O8W|e&1ULfEffm&(20SVOyPhLSebP z%9zL?hL}i9jQuwA{dmg&;wqyl?1cnO|M32JgSgJ82U%Xeo7DkhQg2R+AQn}$1Y)C; z=JNS!;U~x0y^MF%*di&xT@D$!Z@{(tbd~)JgynP6vprG($J4uu1h()e;K&=K0C3aXXni3S~t*3koSw&c=OGm7wr7h31lNt*;) zBgo!xcBh)y7<$KO$}ve_^Sa?fHgMYopUTGUM6MuspvS`g)e4Cxdc#Y3@3c$I*y1JK zN8@KmFg`uT=9?8Ry7wmTRo#;ZFFer;iTxYXxEq^V*{*r<9b1uHPFs}Ugle~G?K9R( z5|?w97VF5CEi*3g{9ueW)qrg0N-M_m+Lb4dz*=#%e^zXt%xI z$i|>~s(OhW$|*_Qx^Tp2v9k@z)&imd(WM;0ZKlhh^1V~*yTcz<1l{NVbJ3Dt`0&0j zCHujDwTgS(y*zc?ytH}}UgPy7Hs*yz7LQ|trQA$EI^-z(o?qxvXfjfD|CaYgLC0

@!gH*LP`@XH#alP-c3fepQy~EFt%e|N7zj*_RM)H>dN? zh$Gqp$VI{hwe9KfB}EO}n7DJ8zk06C!@bDPToW#*tX}4m{SkdzVfysy&V{ZB>5&6n zc1d$^m$@xQjzW^6m+dQYCFX5=k%X}M+&Nl3s7x09y>3P!RGY-LH_{dY+3AyfqxlnX zmaQR%hfQ&Mo&}B11k!1rdTBLUo&MXerrTW~(;FZ}SPg)?dn)hi7VVuCoAdFN^(Dl1NBK9XL$XlnN?W8Zlw}<=2Kl8Y{Xv954u>$p#8$YB)XXB-9ygu#J zC`iF?hBl7hJuLQ2gW6G^qEB9YlI%?R24V}_S0`zwgFCjYpi8cS8p61Gh?%TWd?zxk zjPH9J`v}6)l!OAkhqrLbmQre`;$VR`Tt)xirpt-;8=8+#JN3J zHOLa84&XKmCl}kF-E;q(%GS7NS(R->ALTm#>z8{jP_a~PiS_@T_YF4sfns2$mf?S1 zp233~_i~mt&L7mpvb#!qtrb*?{5g;-5+T6D4v_!!O9iA9r!p!pUY~!Q-S#@V=PLIE z?}t|-R~3<-0Gt0jt`bVO_dICh^nZSIg~$Jm_b-<0^aMAV)Ny7LpNpT^W3Qw2<`I28 z|GoEL8~oP~{u>MI#PI*#e4yC)WV@nay;EwP#A1?qdjHB|BSoCq8Hd^Rqxy&a&M(1r zCbijqYAr6fJ-C?;!Yj3|tv!aRGs>0%ZkC|8BQj*cXC6Caer_ltwqqLBVtwCdW@e^F zMn*Cj>7Jrq&HDQK>)CwJc3-(>Cb>)_U*{(K`U7>b#4DGbI@#pd2Dv@AwX@Tp$=DoR z|9)6*Re$|8=#6s;mRjFTuMY=~vvv@yLABVmpWh;xfi(LO{7Xyt#(oVD;o7gx?M4#R zm`0~F0%Va>ZHw$70bb2Ct%oB>5VJgVHUXGED85?F1c z&YBpjd}rBJJHTkLg!Tr+m_srnEMOf=sV>TNv_11dUS8fTdxWx`VPA&%jr>={C3{xr zc8)epVtXClEUnF0G|oV`=xJof9MpZR9J==FRvm+aWvFbGF$rbqgD1>1&XMZynRnIC zc2@+_0qY6z?XaCTn36%u--b(1OH0Hti8xBHDq|&Qq@9g_SY@n~@Mo-VeBodDPFs|7 zX8#Fpe#As4m%bIR)Z&j4Fl}CC!CC9}J96(~+i=*Th22PCcY(brc$@YEECZHx!?&-l zer{L+mu=KE$J9)P7PHU+BkSc~IzNb?u*gwI(c&~#R+rM47A#^a@}>F%8;y6xZi5II z6H>RN@T zpzK={$_q}JCfo~%ZSm1H#UP7<91h+B0Oqkm{lr#9fV{1*o<-~-d; zMi(En9kn4@G_9XxX%-U}xog*tMg0lP1O`vqn#<_8g^6>^6o^En#`*K)ZDzzG7tyus zx&gNfy)#8d25)1FNZC8%BTeSl(%%$|Fj#ojju_sRcyFKjq&Cm8Qf+|Y;9ZTnUH7Y^ zt)u18GBp#wM${Nb|9~;^F!g-&jB)t-@$C%Uwg}9s=s?Om!{Zj_r^&v)k~zPohxz&< zK(9vjS`o0!MS20+uI6*&f1Vz}@lH3(V!NrYia*NZy6UxS3%>bruQ5kWk&DA9;t^eq z#y_V}B+}$En|t7+a17fbGaZSNjJ5*Sye~74g{w?Rw<6^DkrQfB>6HO5{tDnnOLLkw z^uLEx6t%9_{S#qY-_zj6#4Shwm&vWWWp?BDr*xAu%1Tof{7=0wJGC0h|9m%8q-4vLL%Db;-|9LPsPNLeb=S!8` zU*PzWJn?IV*|Dfy#|)3y`8AN#wvY=;e&16z(2WVOVlZ7QZxacHxpta z&9Nt=f^G;MkNV|7*~TN_r+pjx%YyBQHf|C6JxiJP*5*a>8jM540tvI}11tZl!pO^xhBFgNqp>CG%Uld^bQ zQVYUf_-i6tlF$7!=Xi3(2TweXwrzScrUpt?e`gBo%96MS+nEuglTKsipg;GCy=861 zv;2AzKQWN~9UXV@N_zisE*hV`lKzz-k>aKd_K0EIr8t@li^K=m%3|HV8P;?TIWNAs z(4WJsc3&<2?XzbpChNs1;mX|D)J{i@h`y=^t=6irwKw+dNm3T+2-h*Bcx4glSw@-r zo2u@SYMioRDq?3=lCj;*-Lo6uteQ9_%+Y)# zL%LPRSabHwTvjm8P32Qnc&SHI;-<}8;mi#Lbp+cb0YO0KgnZZZ6R&Hn(Uux|`1$!+69mnacpniYwB(qry^+$pCBm+WAVQ_o(J1r#s=rbLTpm3- zH&9-j^Ns8qB(!*`sf^8r6Sl$X(B{vwGqW9u3B8>K_-5IqK?Ji>`{SrGkAMYku8_1j zG*fUk&olLWl~#YkCrSf_d}GP!Nv4uvL8@z@$H4YSe0h^^h?CPzI~Hw(K6r|3J6a!H z_JkCM^Hk^V51_xX-}(5Zbo8@Br1k&^HhcdQbTDWbGetmE66JH8!BEsxJ|bLQ0c1Pb zmXaa_3-oD_wxgm(I)47l(qwMUNDbU?{`~o8O=%IcnURv5kc?SaD8TiMW8EocXw+@& z61#-%6rRKdj?7 zpM*|7X9wF@^{;XKKzf=OtuJ~f;14_Cz~f=hcst)f*k-DeoLqeAHRIU%oq;9K9h7HJ znH+2z9o`twZJ&!`sGqYJdyHI)9Z@SKp~_h6a;#tJ+8suoiCxerVzP|Q4tWVSgAm$y z!n&=2H{4!OGp}qa-K1t!R$Ej10V`{a!GNkU$pg7n#|iAhMtKnw@fZ6m|1cih_ZQQ3 z(@BiDXV(043WCpIx~fhFCN^ySdXvz*k*dm#kwZZuKPh$7D%4MaMQG3MZs^F^j3`N! z27Or2P{PrMYiRVhxi4bwNR%(HOFv488QrTR3pZl?3Sx+p*uoA_V*G%u|5KM-@RI z3gfF7y{sK$e4wo1%Oaf)Hu7SrHtOy4i!ln7vdv)>>F~hxzz#I2Ot{c8Tu#ZeBz5b(Kf@SRjuHablh1|svI(|Ys7D~ zD!oXFda_7s+(Kh~7uJx%t?H_~&CxsA(V|zLFg;hVYHFr0eJEu68-3PQo1PM2Wkq-b zTN8vOc*2H4AfqTkNGk2t4McU;((ps0G9Guly;K?WG5OT2mMU0FxL|?#p68l1B(rFI z_y`Y=8eGr6gKAAbqXajf_92eVPIOjw7D9T5C+Ckv=apt!M zPrf{@4eW-Li8zQc7JzeOt_U*vw)Wt4X}~#CWu26!8|xalZKD=EgfRkRSk!ILr!j~f zp~2?`Mq>ULIw~U9yi*Y%44*$bvKC|uys(IS!})U_l~{xPqgPNw=Mhq0_+B~ys$OAe zZBYgA2y^X8`8Xm+Tvc%>mAwJaMOTjGu*$GyIfvgMC7X=rA8(FNYXAT%@hgJ?*4Xa+ z%+O9g)Gu^jfPL@LfTpGR^OdCo-XncC^ZQvI*!(tQtY(H$zVG~HJ}Z>^2-xWZ(*}J< zqZ!Nyg7y=Kh{MDh*z#jG7M}(9@M-V(m2OPg#ZMX$LNmiw)S5wxgH1~y(mOT~Ds+I{ zAyhPNcl*-XI^XAu0!!hPsy~(!A+$x?TLDFZqLUaAr&(uN40i2M12 z>v8Zmb>SZtySCkb_XPFsKsS4q>XB0a0JBQO#`zT`8Q05f2zdwYpjZfW>eJcTzv$oND)t_Q3^^}UC~@{;g*>KYQdMKBdIgUgxJedew&g_*=ML-e z1R3Nv0GiZ{8+W#QVRm7{5pl1F`wfwcF>7Qu*U(`#4^kq)TL*#4S{g_gMJ~>aFAdEU z<`fJf%ZeK9A+YoJTSM?DHJ9? zCgeI5SQc>W_c(JzzHrvkj1AZt6p!px&bW^@6FWNfx@{(ve%PC;6xDg?G1z9Mo&nBe&0K{+Hl;Xua(dr(B?w(a zqCoR9B_TjvRjiR49rzbN`C!kO!v0+;y5SEQx+$BvHd2+_{w4NyZ6xsju zZCKNTp+1tTJ)h?}X1Q&r^14jMYl_raBh`uQ=0|a9Ocl}-ADU?-n6r3f2-+Un=3X4p zmsD_?q87@orw{OT<6bWdGiqqpY(aYF5JxrTkRgr-XiH!KD(_XXL|dh7%0o2MKtsDb z?CD0}UBXNVxx7IgI@Pw3x^WA)zepq>B?Gx(TY5wIDPadf$b~jaDLlA0;>cxc^(}Ht zQY57S+~~&ru*Y{$KAmdY&**0;%%z-soz%Z#J3{65VDy0nAPwO=O%lCY&*B6+54Cv{ zQQ6M!qTA_t?(v3x`Pju&WB~+u5YXUI%sGff3tUFfk2m z`UtkEf>~yLa~OB@#|lM-Q@$X`u%W=8U!QexVBO%c)j*`X7cuB#d#I_2@$1Utf0FFm z{No*Lem(T$U=MAeRKzXsOa1NqM2~1`HcV8``S3dCwMWt}>7S#*SX73$tm3cXn9=UR zgyOlPC97BBfyzncMHw@<(B|Frg%BTA#`LHsG0i>JG}jYQT?lQ@Uf-9?`<*!=(MI=2Blh(E0+?!(3{3~lF+ z*ZwlcyI!o<%OK*B{#e$f8xP!OXVx6`dFp)&6->{uBh_%m(pKwY_N>XQ}EFvhV-|Ed*p|YOZ>8C-!h%NijN73a*uY;Ot>#g zG%DAWxaU>XVg}59pCb6iJ)&C^pLZZl*pIMzN8+}jYyE+{!qRnl@~L9CXBR)Hrf%eV zP4h86d25Qmr{nq%dzTf39H3cV2$@ z&N%gC_xs$U?3$J0WOu3Xdx{}5} z%{{oxAfi%9pPC{~;Mwu9w$|4EMmZjJguq=>CM)=ui|}~sCFWw#MUj0;C8y`p@280{ zKGKoI8~rmrdWQ%N~VjYwM6T*X!@0|r%eAe54~CL!F2#4YL)uQ9YMYyYZe_!f!ImHTgPchmDj zONTsN2IQ@znrMXLUENaqivh;SCo#qyZ)K}-WJGHqC1NQ|B(-v$I|ioHRe80V4M+xYS9Q$&%z`vb6g!%IzA8^ zACJ~x>!Sv&pL|U5wMHWpVjR-v;WFIF7$v97x(8BXIR%%;t z@X9t1bCD>d)8y5*yWNLcE4l{9@B=ZI`mdVaxIdy~85_jqYrg6or$0U;PrRQa+)$r) zpGX#1bW_FaXCBSJ<5C43hxm%FVGXi!(DLy^2B#g|D0egh-^2tejd*1k?>jr91Q|LS zu09~=S!pjsq`!87SvrWpOT=jJF)?n#L3Y@%5v9D?q3Y6;XAK9Gb+9D1bU|jS)xJAh zkcuC7jTY}_KD~uDyKxnSNUrfrP0}>(j(<5o_~BvEtEKo$t+<;wtJ3iyFtbjHo(tAk z%9Jg$(l+pP<+r9pUkuVn*qjlo&v2`jCW^V8ulg&!TB`0*c1C#=#I4E4OgUHUO54a4g@pbjeH)wQVb`QVtOLMVGV zpU?!UX)HQ=;e&lZ%s_;zM&Rwk*UU_!2YxqE^sjUS)~neEIwi*W`5PuWn`2#r=aY&2 zDybE>>*rITSAJrsDe#}?>`{hX2|f8DbJmNX!9uGH!&bI;_026Q zxli9qruCRYoj~tUBEr%aN?TTJy9X~P<^@T+aosQwNtLS{g>EW&qrhu4pCkdZWlYDehFShVCB*Wdv4z-sPgPe50$SQ%M-j z7YZ`(mExs(0?u@=4}1?CEKe6mMk(RnWF8Oosm<#cuw8mL4xm5&W`*}ncF`UjxB6my zs|BR^@zPRgYOcs7Gf=aEmBsz!qPk?K#z@)t(6WzYniz9hY{$=&#bi`bHseod^)kmrC_@#L_QNpscC`f|Q| z@gNdwHLvE|O(`+`S5^cYT8`cQmsE`ovLwjOR2{#su~-o<Y`-JsT;{-J%OD>3fOnxKwrGV^$FW!5 z@A|zw&8-St#w&s8g33$L?zdJX28Y(sUl3-M7;BYz`9Uk<&6Cb|{ubaF%<;bgF3~9W zqdkg@UO+Gx5ws1D{EVQfx;#bub_)}J4^r?K(oF+};>d5|V&+MCNg3gJgP*`VW^*2w z9N{cl8S9D|Ypd(&AdS6g7r)BHg){{l_JRr}E9cm6!Wu}dG} zjDg0_pYI*^I>5!nxF-RK-PUbNjku@bh9Wi5(+8D2&AB2Qo5$}w)LyR=8r1V~uOqN^ zDQ1zM^851AAQw@(Ev05K_clX0L+=haFn39BDxmV^ z_#!fcVD(!*d;8o@5j?a%gFUn`6~S8mLouse>fzNc5G3_!%6%xZx1vkke%)>S^{49I z%2-rvD4@0n@zKLAQR#bK7huf0KO=Z*(biQc4Lad9agOLOO78DgS5WhW2wRT-R&c;V zcp&}SV_mkoim#DF0=ry5g57vCV!XbI*kMvCN@y72Ii$dM78L{HBDx5V%nLWOqZchdQ}-z=2)wTP0<`uTe=@8?3qSPRrR$= z3|7Zh4g6_!3>fRD9!>fp9RhT?m3;n;-3h0|N=3h;ORJm{6PZo!b4l91Y zj?4cf`IJ$&t&6m`B_A$fq!8~0af~)ohI^Qwct5#x5gztYXBX)Hfv3$0=!V6c287kp z0nEKtz0zPV-ZQH;w=|AbnOFkNYx82${!fcjUbcJ!5*Kq$kP}|3$HrZM4T~$qgd5mD z8LB=g`$cbaJT>^WN8d4RE&~z$qQmYk8FCOM?^_SBHOF$8Ug%{LjD)AP^Hh*p**q#2 zEWaqyDx6G6yd0=5@?(qL@RXy5DStt}aTe>gxmgeR0GuH-r}5mdfe^m{_nF@p+pzVt zplN~&!A?(}Xdb&u;DhXHHu%l%BI-~mbSTK|h9!^VMs-IKsKyp?dc(-I-hBMLV**s# zMAXWIo=f~7JMyfD`=&2t2j<9fdB(?$XcE4NWV$}rrkGneojI{7% z@XlxDah<>&5!m?J3N0*^vc4%_H%|%zx~0US|D84P!XZ@zt+&xh?l*kL(K?|@rG)j*q1+KY<;Y!J~@cs1|>5<1`b)oiFu(^!{X z)Rf}YX`>AzX1Lz%UvK2p^QCeo1>kkjR}?&IcJWyPREc;u$yiCAR14OMvjZ)XbRa9) z8*amJw&L|TJ|#cn`d{Z0_AsbFC7Lk<{vx}Ekn&-nPZ>eN5o|W+syi(Bu)ZaK8IC=d z0iYcw?ebWJd5ujCP8npi5qR|j@2CH11uL1M26PtKFs&pmUm7f$VL?4xYG*DKRU~Dl zx}KTitmKe?;A5WQy{be|-v87`~CTR?s~G8ux6n*yh@~- zOoTY|VJ@U>3Kts&-_%W;6$1D=(0fEx@cNV3#>9tWOM09YGPM!^ma7+!Myw`%+21*_e9*W(^pxgGu%GnWeZ@^sies5#?ZSAcaYET;gi#vhsfuE_gIA|zOykE_DJ(uyiRs(t&hi~=-s3aUjuHP@7%P#ZobdOJv6)!1U;O0M;&SIPD zr4mo16yF2OH8yYMgy;4cG@j*x3h&ey{jeLejTywF`yzGw_zg!FslU+18jy4*+rQXz zmhjWVG&i!FGjMu6TH5ur?HI2tz$)JX1r>w=PonTsZHL7+3J5zA5)#)!k9%bE9#Xt! zOqhJ3hv`s4cuEOI*EYo&vGMmW0W&@;8NCU_q-2aNJb<2Pd;`tvRJDHC6g9dOtNy@J zFRpQ}Jq6!vVwli+NMa72?E;GETi>Xcla*yI!xRDUVAwQiBb&sLt#n>QQIu`2(#vOx60LiDAk-Y* z4-aKi9cU&=D#z`fb3>m?UYYjFKcNz!MCK4Tfqdy+muF_D*QcI&$RBtL%f020vSF|C ztN7B|{2%Ix>hWc5Ew6LKp+QwUd!^$;Vh3G^Nh!Oc$rMpwLcVPh)`q2Yw6B(bjw}y` ze^1i?udK4Ez3RpJhr@EsOztF_{1%5r4vUMYYno7AFL)1Of0=L~+|VbACk{0uREZ6_ z2oYeyQC~a!871GtQLuo*z;k=6v6=zKrYT&6eK;_+61HcP9)DX#j(vvZ%bD|K_S~Tc z6akNzSrq%shcAS1D@?`tPT077g}mFDNA)X!MolGoA*hwbX=)X*>_*=_A0Xv@58h>A zr$F4>7VnnM2-C-Zm(B?*RzU=_Kt@#{u5T$xH3ucr=jlbvz3MfgS+kV%li`zhEaoOM zVnX#*t>m0~s?hoReEkOrNKv;k7BIqkqM|*!t*xzF@9A6--xj~hdUUQ7bXk#bRoy(K z*Op5~h_8{A^x98R&kl&RD~K;7-AHhQPYX|85sX_Z~8#2AMpM3iR2Y@NyU%Uti|%sz5k zkL+PHV2G&;^e?E{@l<4eza2TRK=768q~cr2v(CdjP5fjvCf6Yd(nk)1j`wkSZ$mY>7UPeAl1qKe4a>KB zrLG4>q@dYzW{k1q6sldVON|)F#yPshCt-w7J=XA#9J4y$zRRD`E3?Rl_e1u2(-pA` zgEzphM$EWjPr^a-_0ZScba&s2bt^454~sdyWnY76+T{OmWw#^yjk(jq-hIa}OPLnq zz)0=ZZEDqUGk_{_sfz?FcHr#uYfO-cBrXhBp&2oN6#*6EmpLz6w_gs5zeVvg_;a?S zTeH*v#{(&IEpXOv>bwRZ{tdV`@R~%)ulk_$090Ce0f6T3sV7JRB*Vmfx46ESnHPSe zcMrqmyICK0ur7F+3Ln-gY&^xSML_zZ9Xu9QJw@dUFt(tc&3dzmxksv-+w+C$>KYxc zqE<`R_UQ~2p_f^5`Waq!=A$1~o@`A|yyQHZ-cPteNi}7CD@kl8ad`B%PoE+oz%-$s zJYpN{k7X?E8V@GdF#CMNP4`KGRYO$N2oFK6me{fIOm9ME0#iDm?Rq1F`Mr={IXqp& z+G`}BjYWgM{;c^B4|N&lnF!=}FU-r!YlyPgq-gFn>=n8b++frwpQwh(fd%|8Pg5GV zingG4e;sNjT$SNRi@F!?XmT)no#+-Wmb6cHoJlg7(`X4X3=q39e+~FT&WLsY-985( zBFq*)<~c@{@An_@@+LQ?1T|i=fMhyLS0{vsF2M5X9+~+r83h2-8e`9iA*Wn$%!*Ss z%wjS0^@O>K=}NxsOB6p-yy!!%RJn&F>bObP&BUhv?udcO{rqhK4~t;hXPfX^lg~c_ z4(lWC1IrGn6LUSnpZWk#bO+42V_v}~Q;K^4qM}=Rrq1e%h76+u`~p;?Iu1;#-TC>0 zmuTKZTQPn9N=CICE%vpH}Gc5PAwuLP- zUYHG}`^q7UjYkx~jRUsSs!y`REr%8~oY{}GabM^Z94ler2CGyYW{Vdp8I^1@wIWG_ zn@~IuqY}>(`QYcqC3Mtc*H3F$Xf?uGImG1kLk@8S&LtJlNjE1n@Q0f6Ylf8#ddR(s zN=hlC8jF5hq>=Ra)@?8nN>+nv_gJ)>Lb8-@41uwD(SoOHI*U=MN%6clFd8!7U6}O- z&;@Bi84$B~XG@=Yf?8KoVwFR`tzpDWnq?OipqjmKRJ`a=)e|EdbN0{aN6&3qmzxAX zF)ARvcPV#4vI;QTb(ei7u01%MWLpM)Q@NzE7<5dX0JTRmhQyd3hLvQ3)Q$7Yi*j~) z-5&IO8Yw50?TViEEwRJTaE)$y;4KpF10?^&U-&R-n6>zS1R0PXP)RXpR5aDE!Xv6G&z2)+7<*q zE;iK_!y_z|KPWpJv)m z)e$wwS;jsN%W0Vp34puwls%KO>#(kM;H;;4O%-u0+AU4X8)aPgHX+La13{35W*8{S z=1g>PSveO;xauE&c34)=td5`rsMQNa)n^Oq=!!O>(hBkh-$Z7pomF?RsSydd-B@l)C|j&lf>zz(@<%sydxpm&MydEfBZiq~LLJ8Ag2@2$L~H)#r@2yo z%Zi>S+;m$P)QYbPa6x1ff>(|ruuQPeDgf?Tg2iud-mNngQ}Im8TuEz48{8BCT(G?j zs1ebOKp9gx9)P+!odSI8LL~u4A1Qmk?~6wz1T)9<04eU_w;gN8%Dv{A^mm&H(`(#9 zMIUmyd{(02)MV5*aE(`nT84iggxt8|W~7?2Wlep7=F-DbJ^muESn-?JKKP4GNxy8_ zdaw545i_IJ{O{EWFQGJI+ee3(J^{xxW;*AWNqZkM?;p}oHgW1v5Z1MbRfKRPraJ+1 zUljiw8Cd%^zULBj5-QeHN*!;2gg-mykRP}jwgSn4VDZ0MRK-E9Ls5waG7$F1R)EOd za)5`+2~Te`F7#$N06`T3U+5F^Fi*n6$*MfHdMvw_X3f*(-Lom`4&Hq=vc97q7aJ56 z6-`<4CKM}D|O~p{*o(RR+^s_Ow>qG$y zh9YMuroLR^YEz3jqQLqra~oSaUDC6=Pd87^HZ4v~iFsNMzE>kUzjFr3wf*Mlz_&A= zUP*C%D|tS7*#;pZgG6~VhF!$hM26lAS)Ma;&~5%-EHZ!W)wm^AKRsY$+x%4_Ys&=;{UPR5>%BP!P)5y2}q8Of9y`-2viP3 z^Uip>)xb;&HL|V5@JkuIelHIrpKNlqC<&xx0s;Ko=QBV?ka2s zrf$%rpy=L3TSB0DyIzwtG_!=LYu8ds2?<+L=nrf??T}rT~kg#cj4ScVRbJOGUFKT%{tu6My6Us>MNbgz2tY#rG zC8SH85b=X~A=HvuWhd9$;?ZO=3x8X}ySPW49Pt+{)?dCYxg@-g0Dtqm*P4m?uSUN5 z--aDFCd24`g9HMll`^cvbFmy=9eM9|8h3z5p)J6ppzWEL(Dy{^_U&Hezght6e^W~M z0^WirKC5rMeB_IQef<+H@^*(xev84G@3p3rC+XDRWJ^-NbL%f&ELTw49{MRc2zVi| z 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

| -| [Package Manager Console (Visual Studio)](install-use-packages-powershell.md) | (Windows only) Retrieves and installs the package identified by \ from a selected source into a specified project in the solution, then adds a reference to the project file. Also retrieves and installs dependencies. | -| [nuget.exe CLI](install-use-packages-nuget-cli.md) | (All platforms) CLI tool for .NET Framework libraries and non-SDK-style projects that target .NET Standard libraries. Retrieves the package identified by \ and expands its contents into a folder in the current directory; can also retrieve all packages listed in a `packages.config` file. Also retrieves and installs dependencies, but makes no changes to project files or `packages.config`. | +| Tool | Platforms | Description | +| --- | --- | --- | +| [dotnet CLI](install-use-packages-dotnet-cli.md) | All | CLI tool for .NET Core and .NET Standard libraries, and for SDK-style projects that target .NET Framework (see [SDK attribute](/dotnet/core/tools/csproj#additions)). Retrieves the package identified by \ and adds a reference to the project file. Also retrieves and installs dependencies. | +| Visual Studio | Windows and Mac | Provides a UI through which you can browse, select, and install packages and their dependencies into a project from a specified package source. Adds references to installed packages to the project file.
  • [Install and manage packages using Visual Studio](install-use-packages-visual-studio.md)
  • [Including a NuGet package in your project (Mac)](/visualstudio/mac/nuget-walkthrough)
| +| [Package Manager Console (Visual Studio)](install-use-packages-powershell.md) | Windows only | Retrieves and installs the package identified by \ from a selected source into a specified project in the solution, then adds a reference to the project file. Also retrieves and installs dependencies. | +| [nuget.exe CLI](install-use-packages-nuget-cli.md) | All | CLI tool for .NET Framework libraries and non-SDK-style projects that target .NET Standard libraries. Retrieves the package identified by \ and expands its contents into a folder in the current directory; can also retrieve all packages listed in a `packages.config` file. Also retrieves and installs dependencies, but makes no changes to project files or `packages.config`. | From 98f2338070f1379a5955f0219595871b83140e96 Mon Sep 17 00:00:00 2001 From: Austin Drenski Date: Thu, 11 Mar 2021 15:58:57 -0500 Subject: [PATCH 347/988] Fix code snippet indent Silly little patch, but noticed live docs site is collapsing the markdown indent and code snippet indent for these two snippets, such that the rendered snippets are not indented. --- docs/consume-packages/install-use-packages-dotnet-cli.md | 6 +++--- .../install-and-use-a-package-using-the-dotnet-cli.md | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/consume-packages/install-use-packages-dotnet-cli.md b/docs/consume-packages/install-use-packages-dotnet-cli.md index 0db9dca19..4da4baf17 100644 --- a/docs/consume-packages/install-use-packages-dotnet-cli.md +++ b/docs/consume-packages/install-use-packages-dotnet-cli.md @@ -42,9 +42,9 @@ This article shows you basic usage for a few of the most common dotnet CLI comma You can open the `.csproj` file to see the added reference: ```xml - - - + + + ``` ## Install a specific version of a package diff --git a/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md b/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md index a7c02c577..1b239805e 100644 --- a/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md +++ b/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md @@ -47,9 +47,9 @@ NuGet packages can be installed into a .NET project of some kind. For this walkt 2. After the command completes, open the `.csproj` file to see the added reference: ```xml - - - + + + ``` ## Use the Newtonsoft.Json API in the app From a213149701fa7289d2d5798ada1db256017d185d Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Thu, 11 Mar 2021 19:46:51 -0800 Subject: [PATCH 348/988] 5.9 release notes draft --- docs/TOC.md | 1 + docs/release-notes/Index.md | 2 + docs/release-notes/NuGet-5.9.md | 250 ++++++++++++++++++++++++++++++++ 3 files changed, 253 insertions(+) create mode 100644 docs/release-notes/NuGet-5.9.md diff --git a/docs/TOC.md b/docs/TOC.md index 67cf000e3..87ab574a2 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -291,6 +291,7 @@ ## Release notes ### [Known Issues](release-notes/known-issues.md) ### NuGet 5.x +#### [NuGet 5.9](release-notes/NuGet-5.9.md) #### [NuGet 5.8](release-notes/NuGet-5.8.md) #### [NuGet 5.7](release-notes/NuGet-5.7.md) #### [NuGet 5.6](release-notes/NuGet-5.6.md) diff --git a/docs/release-notes/Index.md b/docs/release-notes/Index.md index e64c0f9b7..2b1eae9ff 100644 --- a/docs/release-notes/Index.md +++ b/docs/release-notes/Index.md @@ -11,6 +11,8 @@ ms.topic: conceptual [Known Issues](../release-notes/known-issues.md) +[NuGet 5.9](../release-notes/NuGet-5.9.md) + [NuGet 5.8](../release-notes/NuGet-5.8.md) [NuGet 5.7](../release-notes/NuGet-5.7.md) diff --git a/docs/release-notes/NuGet-5.9.md b/docs/release-notes/NuGet-5.9.md new file mode 100644 index 000000000..bd3d4d6f5 --- /dev/null +++ b/docs/release-notes/NuGet-5.9.md @@ -0,0 +1,250 @@ +--- +title: NuGet 5.9 Release Notes +description: Release notes for NuGet 5.9 including new features, bug fixes, and DCRs. +author: erdembayar +ms.author: eryondon +ms.date: 3/11/2021 +ms.topic: conceptual +--- + +# NuGet 5.9 Release Notes + +NuGet distribution vehicles: + +| NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | +|:---|:---|:---| +| [**5.9**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.9](https://visualstudio.microsoft.com/downloads/) | [5.0](https://dotnet.microsoft.com/download/dotnet-core/5.0)1 | + +1 Installed with Visual Studio 2019 with .NET Core workload + +> [!NOTE] +> Visual Studio 16.9, MSBuild 16.9, and .NET 5.0 require NuGet.exe 5.9 or later. + +## Summary: What's New in 5.9 + +* Show requested version in the Solution Level UI - [#9827](https://github.com/NuGet/Home/issues/9827) + +* Extend the `.nupkg.metadata` file to include the installation source - [#10354](https://github.com/NuGet/Home/issues/10354) + +* Add Update context menu item for package dependencies that launches Package Manager UI with preselected packages to update - [#10378](https://github.com/NuGet/Home/issues/10378) + +* Enable recommender for PackageReference style projects - [#10053](https://github.com/NuGet/Home/issues/10053) + +* Introduce a new msbuild property to exclude build output for specific tfms during pack task - [#10396](https://github.com/NuGet/Home/issues/10396) + +* INuGetPackageFileService - Fetch Images and embedded licenses for Codespaces-connected and standalone - [#10151](https://github.com/NuGet/Home/issues/10151) + +### Issues fixed in this release + +**DCRs:** + +* The down icon icon when the latest package version is installed is not intuitive. The old green tick was perfect - [#9789](https://github.com/NuGet/Home/issues/9789) + +* Nuget Debug verbosity should say where a package came from - [#3055](https://github.com/NuGet/Home/issues/3055) + +* NuGet pack should catch incorrect omitting of the dot in version numbers - [#9215](https://github.com/NuGet/Home/issues/9215) + +* [CPVM] Disable pinning of the central transitive dependencies - [#10132](https://github.com/NuGet/Home/issues/10132) + +* net5 tfm: produce error when missing TPV - [#9441](https://github.com/NuGet/Home/issues/9441) + +* Log package contenthash during restore logging (during extraction) - [#10384](https://github.com/NuGet/Home/issues/10384) + +* Implement a pre-registration mechanism for legacy PR projects that call restore at solution open - [#9986](https://github.com/NuGet/Home/issues/9986) + +* NuGet package recommender should work when more than one source is selected in package manager - [#10433](https://github.com/NuGet/Home/issues/10433) + +* When restoring at normal verbosity, log which source a package is being restored from - [#10461](https://github.com/NuGet/Home/issues/10461) + +**Bugs:** + +* VS OE: IProjectMetadataContextInfo missing formatter - [#10079](https://github.com/NuGet/Home/issues/10079) + +* [CPVM-Perf] Reduce the information written to centralTransitiveDependencyGroups - [#10002](https://github.com/NuGet/Home/issues/10002) + +* Restore operations that throw due to a project not being loaded are reported as `NoOp` in telemetry - [#9985](https://github.com/NuGet/Home/issues/9985) + +* Icons with certain color pallets causes PM UI to crash VS - [#10037](https://github.com/NuGet/Home/issues/10037) + +* [CPVM-Perf] Reduce the PackageSpec clone when adding the CPVM information - [#10003](https://github.com/NuGet/Home/issues/10003) + +* PM UI - asyncify icon loading - [#10009](https://github.com/NuGet/Home/issues/10009) + +* UI delay when loading icon URLs in PM UI - [#8505](https://github.com/NuGet/Home/issues/8505) + +* Thread affinity in BitmapSource and WPF UI threads - [#9161](https://github.com/NuGet/Home/issues/9161) + +* Warning for warning NU5128 when packastool with targetframework alias - [#10097](https://github.com/NuGet/Home/issues/10097) + +* OutputPath logic in Pack targets in a customized build doesn't work properly - [#9234](https://github.com/NuGet/Home/issues/9234) + +* VS OE: cache IServiceBroker instance on client - [#10141](https://github.com/NuGet/Home/issues/10141) + +* Make creating NuGetProjectActions for uninstall from PM UI a parallel operation - [#9956](https://github.com/NuGet/Home/issues/9956) + +* Performance: Reduce UIDelays in GetPackageSpecsAsync for Legacy projects and non PR projects - [#9953](https://github.com/NuGet/Home/issues/9953) + +* ``dotnet nuget push *.nupkg`` doesn't push more than one file - [#4393](https://github.com/NuGet/Home/issues/4393) + +* Remove LSL related code - [#9301](https://github.com/NuGet/Home/issues/9301) + +* Output is wrapped at 80 characters on macOS when redirected - [#10198](https://github.com/NuGet/Home/issues/10198) + +* Restore fails with -Source - [#9406](https://github.com/NuGet/Home/issues/9406) + +* netcoreapp5.0-windows does not round trip and does not parse platform information - [#10177](https://github.com/NuGet/Home/issues/10177) + +* Custom CPS projects require AssemblyReferences project capability in order to restore. - [#8071](https://github.com/NuGet/Home/issues/8071) + +* License and icon file existence check should always use a case-sensitive comparison - [#9817](https://github.com/NuGet/Home/issues/9817) + +* DotnetCLiToolReference restores make it difficult to reason about no-op projects count/uptodateprojectscount - [#10038](https://github.com/NuGet/Home/issues/10038) + +* Hard to see the dash-line box of package format when navigating by tab through the “Choose NuGet Package Manager Format” dialog in Dark theme - [#9729](https://github.com/NuGet/Home/issues/9729) + +* Exclude transitive framework references from `CollectFrameworkReferences` - [#10314](https://github.com/NuGet/Home/issues/10314) + +* Comparer static properties should be idempotent - [#10339](https://github.com/NuGet/Home/issues/10339) + +* resolve internal contracts assembly loading (fix RPS or get exception) - [#9919](https://github.com/NuGet/Home/issues/9919) + +* Replace GetService with GetServiceAsync in NuGet.Clients, Part 1 - [#10362](https://github.com/NuGet/Home/issues/10362) + +* CLI installs should not install unlisted packages - [#7466](https://github.com/NuGet/Home/issues/7466) + +* Static msbuild graph restore - unnnecessary logging about MSBuildStartupDirectory - [#10335](https://github.com/NuGet/Home/issues/10335) + +* Project Dependencies of ProjectReferences marked as PrivateAssets should not be included in the lock file up to date check - [#8565](https://github.com/NuGet/Home/issues/8565) + +* SDK projects with bad data not showing restore errors in VS - [#10406](https://github.com/NuGet/Home/issues/10406) + +* NU1004 when restoring a solution that has mixed Legacy and netstandard2 projects from cmd line with LockedMode - [#9623](https://github.com/NuGet/Home/issues/9623) + +* Pack includes content brought in through dependency packages into the current project's package (SDK based projects only) - [#8867](https://github.com/NuGet/Home/issues/8867) + +* Add telemetry for NuGet's VS extensibility API faults - [#10062](https://github.com/NuGet/Home/issues/10062) + +* Add GenerateRestoreGraphFile in static graph restore to improve debugability. - [#10365](https://github.com/NuGet/Home/issues/10365) + +* Cannot open the NuGet Package manager - [#10336](https://github.com/NuGet/Home/issues/10336) + +* NVDA/Narrator is not reading "License" label for "Apache-2.0" link - [#10425](https://github.com/NuGet/Home/issues/10425) + +* The up to date status bar message is not great in VS - [#9402](https://github.com/NuGet/Home/issues/9402) + +* packages.config package.lock.json uses an incorrect target framework - [#10257](https://github.com/NuGet/Home/issues/10257) + +* Codespaces: fix telemetry from https://github.com/NuGet/NuGet.Client/pull/3786 - [#10439](https://github.com/NuGet/Home/issues/10439) + +* Error NU1004 disappears when building solution after enabling “RestoreLockedMode” - [#8973](https://github.com/NuGet/Home/issues/8973) + +* Tabbing through PMUI in the reverse should mirror forward direction - [#10234](https://github.com/NuGet/Home/issues/10234) + +* Debugging PMUI in Experimental Instance sometimes throws InvalidCastException from SolutionView to ProjectView - [#10416](https://github.com/NuGet/Home/issues/10416) + +* The default version is null after clicking a deprecated package in Browse tab - [#10380](https://github.com/NuGet/Home/issues/10380) + +* The NuGet manager in Visual Studio reloads when focus is regained - [#4176](https://github.com/NuGet/Home/issues/4176) + +* Remove IPackageSourceProvider2 and related types - [#10098](https://github.com/NuGet/Home/issues/10098) + +* Package 'NameOfPackage' is incompatible with 'all' frameworks in project - [#5127](https://github.com/NuGet/Home/issues/5127) + +* CreateVersionsAsync does unnecessary NuGetVersion Compares - [#10436](https://github.com/NuGet/Home/issues/10436) + +* NuGet.Client should replace using of ManagedImageMonikers with KnownMonikers - [#9977](https://github.com/NuGet/Home/issues/9977) + +* The deprecated icon overlaps with the version of the deprecated package in Browse tab - [#10452](https://github.com/NuGet/Home/issues/10452) + +* PackageReference NU1604 error handling is different across VS and command line (Restore & Package Manager UI) - [#9289](https://github.com/NuGet/Home/issues/9289) + +* Codespaces: necessary formatters not registered - [#10467](https://github.com/NuGet/Home/issues/10467) + +* Remove net45 as as a target framework from NuGet.Frameworks - [#10470](https://github.com/NuGet/Home/issues/10470) + +* Implementation - Add new telemetries to track events related to PMC and Powershell usage. - [#10142](https://github.com/NuGet/Home/issues/10142) + +* Only one package shows in the Preview Changes window when there are multiple packages available to update in the Package Manager UI - [#10483](https://github.com/NuGet/Home/issues/10483) + +* Empty frameworkReferences groups should be generated when packing multitargeted projects - [#10218](https://github.com/NuGet/Home/issues/10218) + +* Hard to see the check-box of package in ‘Updates’ Tab is focused with a dash-line box when navigating through Tab in Blue/Blue (Extra Contrast)/Light themes - [#8963](https://github.com/NuGet/Home/issues/8963) + +* Updates Tab checkboxes do not work well with screen-readers - [#10449](https://github.com/NuGet/Home/issues/10449) + +* Updating in PMUI causes Object reference not set to an instance of an object - [#9882](https://github.com/NuGet/Home/issues/9882) + +* Implementation - Add new telemetries to track events related to PMC and Powershell usage follow up. - [#10478](https://github.com/NuGet/Home/issues/10478) + +* Copy-paste error in V2FeedPackageInfo - [#10480](https://github.com/NuGet/Home/issues/10480) + +* NuGetPackageFileService fix - use using for disposable memorystream - [#10503](https://github.com/NuGet/Home/issues/10503) + +**Nones:** + +* Relative links are broken in NuGet.Client debugging guide - [#10100](https://github.com/NuGet/Home/issues/10100) + +* Windows SDK 10 link is broken in NuGet.Client Contribution guide - [#10099](https://github.com/NuGet/Home/issues/10099) + +* Build of NuGet libraries is broken when assembly signing is disabled - [#10173](https://github.com/NuGet/Home/issues/10173) + +* [Test Failure][Localization] The information from command ‘get-help NuGet’ in PMC is not localized - [#4604](https://github.com/NuGet/Home/issues/4604) + +* Design for warning on improper casing for PackageLicenseFile and PackageIcon - [#10049](https://github.com/NuGet/Home/pull/10049) + +* No error occurred after packing and installing a package with an invalid .txt format icon - [#9311](https://github.com/NuGet/Home/issues/9311) + +* Remove Temp fix on patching - [#8952](https://github.com/NuGet/Home/issues/8952) + +* Cannot run Nuget.Client library - [#10390](https://github.com/NuGet/Home/issues/10390) + +* Clean-up the contributing docs - [#10399](https://github.com/NuGet/Home/issues/10399) + +* Enhance the coding guidelines - add rule for parameter names & namespace names - [#10485](https://github.com/NuGet/Home/issues/10485) + +* tfm_raw error happening for some TFMs during pack - [#10656](https://github.com/NuGet/Home/issues/10656) + +**StillOpens:** + +* PM UI: not automatically closed when project unloaded/removed - [#9935](https://github.com/NuGet/Home/issues/9935) + +* E2E test GetPackageUpdatesAfterSwitchToSourceThatDoesNotContainInstalledPackageId is flaky - [#10254](https://github.com/NuGet/Home/issues/10254) + +* Race condition during restore for DotnetCliToolReference packages in the default parallel processing mode - [#10075](https://github.com/NuGet/Home/issues/10075) + +* Test: TestPackageManager_UpgradePackageFor_TopParentProject_Success is flaky - [#10208](https://github.com/NuGet/Home/issues/10208) + +* Test: TestPacMan_PreviewInstallPackage_BuildIntegrated_RaiseTelemetryEventsWithWarningCode is flaky - [#10093](https://github.com/NuGet/Home/issues/10093) + +* Telemetry: Replace EmitTelemetryEvent with proper telemetry activities - [#9581](https://github.com/NuGet/Home/issues/9581) + +**[List of all issues fixed in this release - 5.9](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5f6be8c10485c0236b7ef889)** + +**[List of commits in this release - 5.8.1](https://github.com/NuGet/NuGet.Client/compare/5.8.1.7021...5.9.0.7134)** + +### Community contributions + +Thank you to all the contributors who helped make this NuGet release awesome! + +|Who|PRs|Issues| +|----|----|----| +[omajid](https://github.com/omajid) | [3865](https://github.com/NuGet/NuGet.Client/pull/3865) | Copy-paste error in V2FeedPackageInfo - [#10480](https://github.com/NuGet/Home/issues/10480) +[marcin-krystianc](https://github.com/marcin-krystianc) | [3812](https://github.com/NuGet/NuGet.Client/pull/3812) | Missing tests for the case where packages are referenced with PrivateAssets="All" attribute - [#10397](https://github.com/NuGet/Home/issues/10397) +[marcin-krystianc](https://github.com/marcin-krystianc) | [3739](https://github.com/NuGet/NuGet.Client/pull/3739) | Adding support for pushing multiple packages - [#4393](https://github.com/NuGet/Home/issues/4393) +[marcin-krystianc](https://github.com/marcin-krystianc) | [3723](https://github.com/NuGet/NuGet.Client/pull/3723) | Build of NuGet libraries is broken when assembly signing is disabled - [#10173](https://github.com/NuGet/Home/issues/10173) +[kant2002](https://github.com/kant2002) | [3807](https://github.com/NuGet/NuGet.Client/pull/3807) | Clean-up the contributing docs - [#10399](https://github.com/NuGet/Home/issues/10399) +[PathogenDavid](https://github.com/PathogenDavid) | [3754](https://github.com/NuGet/NuGet.Client/pull/3754) | License and icon file existence check should always use a case-sensitive comparison - [#9817](https://github.com/NuGet/Home/issues/9817) +[campersau](https://github.com/campersau) | [3677](https://github.com/NuGet/NuGet.Client/pull/3677) | Use BitmapCreateOptions.IgnoreColorProfile to workaround WPF issue when using DecodePixelWidth - [#10037](https://github.com/NuGet/Home/issues/10037) +[bjorkstromm](https://github.com/bjorkstromm) | [3697](https://github.com/NuGet/NuGet.Client/pull/3697) | Windows SDK 10 link is broken in NuGet.Client Contribution guide - [#10099](https://github.com/NuGet/Home/issues/10099) +[bjorkstromm](https://github.com/bjorkstromm) | [3696](https://github.com/NuGet/NuGet.Client/pull/3696) | Relative links are broken in NuGet.Client debugging guide - [#10100](https://github.com/NuGet/Home/issues/10100) + +## Feedback welcome + +Your feedback is important to us. If there are any problems with this release, check our +[GitHub Issues](https://github.com/NuGet/Home/issues) and +[Visual Studio Developer Community](https://developercommunity.visualstudio.com/) +for existing issues. For new issues within NuGet, please report a +[GitHub Issue](https://github.com/NuGet/Home/issues/new). +For general NuGet experience issues, let us know via the +[Report a Problem](/visualstudio/ide/how-to-report-a-problem-with-visual-studio) +option found in your favorite IDE under **Help > Report a Problem**. \ No newline at end of file From 9b2e8c2c736984e487b807ccf42bb457e1513e2c Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Fri, 12 Mar 2021 11:09:01 -0500 Subject: [PATCH 349/988] Update docs/release-notes/NuGet-5.9.md --- docs/release-notes/NuGet-5.9.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/release-notes/NuGet-5.9.md b/docs/release-notes/NuGet-5.9.md index bd3d4d6f5..bac26265b 100644 --- a/docs/release-notes/NuGet-5.9.md +++ b/docs/release-notes/NuGet-5.9.md @@ -22,7 +22,7 @@ NuGet distribution vehicles: ## Summary: What's New in 5.9 -* Show requested version in the Solution Level UI - [#9827](https://github.com/NuGet/Home/issues/9827) +* Show the requested version (including floating version or version range request) in the "Version" column of the project list in the solution level Package Manager UI - [#9827](https://github.com/NuGet/Home/issues/9827) * Extend the `.nupkg.metadata` file to include the installation source - [#10354](https://github.com/NuGet/Home/issues/10354) @@ -247,4 +247,4 @@ for existing issues. For new issues within NuGet, please report a [GitHub Issue](https://github.com/NuGet/Home/issues/new). For general NuGet experience issues, let us know via the [Report a Problem](/visualstudio/ide/how-to-report-a-problem-with-visual-studio) -option found in your favorite IDE under **Help > Report a Problem**. \ No newline at end of file +option found in your favorite IDE under **Help > Report a Problem**. From 577a50f922154b6b1f286e05df29da1345aa917c Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Fri, 12 Mar 2021 11:50:35 -0500 Subject: [PATCH 350/988] Feature images --- docs/release-notes/NuGet-5.9.md | 16 +++++++++------- .../media/releasenotes-59-context-update.gif | Bin 0 -> 1142122 bytes .../releasenotes-59-requested-version.png | Bin 0 -> 21386 bytes 3 files changed, 9 insertions(+), 7 deletions(-) create mode 100644 docs/release-notes/media/releasenotes-59-context-update.gif create mode 100644 docs/release-notes/media/releasenotes-59-requested-version.png diff --git a/docs/release-notes/NuGet-5.9.md b/docs/release-notes/NuGet-5.9.md index bac26265b..24f5075e3 100644 --- a/docs/release-notes/NuGet-5.9.md +++ b/docs/release-notes/NuGet-5.9.md @@ -18,19 +18,21 @@ NuGet distribution vehicles: 1 Installed with Visual Studio 2019 with .NET Core workload > [!NOTE] -> Visual Studio 16.9, MSBuild 16.9, and .NET 5.0 require NuGet.exe 5.9 or later. +> Visual Studio 16.9, MSBuild 16.9, and .NET 5.0.3 requires NuGet.exe 5.9 or later. ## Summary: What's New in 5.9 -* Show the requested version (including floating version or version range request) in the "Version" column of the project list in the solution level Package Manager UI - [#9827](https://github.com/NuGet/Home/issues/9827) +* Add "Update" context menu item for package dependencies that launches Package Manager UI with preselected packages to update - [#10378](https://github.com/NuGet/Home/issues/10378) -* Extend the `.nupkg.metadata` file to include the installation source - [#10354](https://github.com/NuGet/Home/issues/10354) + ![Right-click package "Update" experience gif](media/releasenotes-59-context-update.gif) -* Add Update context menu item for package dependencies that launches Package Manager UI with preselected packages to update - [#10378](https://github.com/NuGet/Home/issues/10378) +* Show the requested version (including floating version or version range request) in the "Version" column of the project list in the solution level Package Manager UI - [#9827](https://github.com/NuGet/Home/issues/9827) -* Enable recommender for PackageReference style projects - [#10053](https://github.com/NuGet/Home/issues/10053) + ![Requested version in solution level Package Manager UI](media/releasenotes-59-requested-version.png) + +* Extend the `.nupkg.metadata` file to include the installation source - [#10354](https://github.com/NuGet/Home/issues/10354) -* Introduce a new msbuild property to exclude build output for specific tfms during pack task - [#10396](https://github.com/NuGet/Home/issues/10396) +* Introduce a new msbuild property to exclude build output for specific TFMs during pack task - [#10396](https://github.com/NuGet/Home/issues/10396) * INuGetPackageFileService - Fetch Images and embedded licenses for Codespaces-connected and standalone - [#10151](https://github.com/NuGet/Home/issues/10151) @@ -46,7 +48,7 @@ NuGet distribution vehicles: * [CPVM] Disable pinning of the central transitive dependencies - [#10132](https://github.com/NuGet/Home/issues/10132) -* net5 tfm: produce error when missing TPV - [#9441](https://github.com/NuGet/Home/issues/9441) +* net5 TFM: produce error when missing TPV - [#9441](https://github.com/NuGet/Home/issues/9441) * Log package contenthash during restore logging (during extraction) - [#10384](https://github.com/NuGet/Home/issues/10384) diff --git a/docs/release-notes/media/releasenotes-59-context-update.gif b/docs/release-notes/media/releasenotes-59-context-update.gif new file mode 100644 index 0000000000000000000000000000000000000000..f04d388a74789d9106dcea538ff980715051cc0a GIT binary patch literal 1142122 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 z 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

PZoJ5{5^?$| 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

X_vQ16=oErtsfEDPY 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¨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%0AT>kYGfL5Enwk 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%0A^4t(_neFWx;hEpwnIRR&Z;P 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

wN>e2O*q~*V&W;L`Ywd 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

WI$%l>Cqx>(kkuJ3Q?VAhY>MI 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 z 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ᄛ>ODs&9sJnC3!MAVc;S@BK1c z6A>FlhU!`(UePZZfPVWcuF0*H81tt%w;(xY(yt_P_S&eg$tijcuxU$~Onx{%S!S3a}7f}szeGJ4n_)!q8&<^qCC75ku5#O%fit*oKFgU$Y z0DmqIfiP7A<;8Qb*|bSkk!us;Gv$C3bR+1(b&08rBrAt$J@E@lx?1g&v?v@SDv9j= zxq?*mbZ~#u{eSq*jAAT+Rq4i}lIv2Npf?#^OUD{UN>r`vVxAW3h72&1fX#x`>}*=& z7VNH8QRW2bOB$`ExmCZ%6sWoDpSf*a>N9ZFvTY9GCInFCGD_#E`RDjJUF+(zZulwY zF14u+z1dSQlMDIpN~e-G>i>KwXm0v=4bkbAW`f=Jg|W(}eTf@#QSBE5JD?`4H-`h_ z{7R_s%4Xs$k@892OY(!h)hje%T4^fa%OH%*q|_yA)A`dWtThNKrvCILj-?~jE1S!z zLMs-2r+XXbXf>`&%&sZGRbCmMD`am}koBim*T8PQl(u3+E=~2RGmO^aZC~_K?!Ol)R#-zFuPoGQ z8kPDp**)EkMJ6_CKI|nCn927n-ZnLh%`iEIX5frYF4SZRp8gBV5ZPjH{wuG}?3O>4 zj2n{FD%J5vsPIhq$fdcBbtM|2mtpfJvAO+Fh{b0v#_*!9`A5Sq#r9{#KGUD(QA28=vooATUEbqZbRT=V zK)D5Ty-vGjz}@Sl#`iNZtScH60)QB0p&Cyr{9zWpg+ULO^sQ}7D;*w7zsfUpI01?-(ShjEt~3x*e^YP_^c^` zJe%H`>}3BYnvIRspqmIfwc)hwFbQ$j$yb~^2I_6YV1%L28V2b@0idyYo~+F)ot@O6 z7bw79H8i_7j-hX~guKtqTf|r1W^IcoQI91`mypPj1N*Ej-6a;2$th-S2S|a*GP1Vi zKS|Q$=|uRKiI^Ya!~}QwEJw$JeLW>j>N1# zz-#-kGm(1X9ESF4U_Y^P2X}ZS{k>;qnFi^}n|P4`&Qg|_f96@P84Ly2Wq~gs^FaGm zB=ZBQC7~8)BhU6Oy?@s`0wZ|j@Qz^pYauI$O}YS|!hfB2ekVTTJ8|geW_nj}rJ``0 zm+zgFs*@S*RsSlgt*7fnvhqlUf@(kPX=>Ji_)`Mxr_~utc))W&0#651KSaX@9CFVJ zan216G~kg~oYDAJQDO-P2uWfbK@XMB8&72Xe&P*H1J69M)S#`1-$Qrrb?5kct#vaZI>7NZ)S2S|>O` zkmg3KCK<%*5Mxw1me)qG{Uj4GTVm)r5P2Jt`o^PVq*sy>&>mzsAK&p;39td12-&$B zPCIbf1}MgVP>g}!rj3JXH~-;aLUo5s4zH3xijsbi!9kM)#wu@S8T56gEU4KWlcv07>Fn%!2fy>km?;=h`#Yk*+w9q!e4SZL zrp7d7`5c#-_=sVQs)V;Vf5i9mLBKtnL^JZ6ql&{Z07Z7gH(}W4Ly6vFQRuNOMKQAVL=y z3mwf_(4-UkZqJi6EaJ& zZf&?SOUot`PJwhLE_1uEaL~Yn5i@_=9UpA6$FUkTT}!nb3>>H>Fx1r7tuk2qd%!bV zNb^Xlb(>j|MbtQ9Y%)tVuu=%kNT|75aQ>T0Dq!v2#Hhoa_#y>-VAi>>>65YjP61%t zY96412W0DUZ&&yq=#=eCzZ6=d8d|8XOFHC(1PeeC*=!$M6*|;Rt*hFI5*j`T45o!} z)1*yVoBBnoW}}p#Uj-^T1^ZMI4+vrMy+xhje+DEoz-%*P&s*ywKo4dBh#eY*I<39Z z&;%K0VmcK`h+HLNLS?a-lB!TObqUiF(2bBaB`M0FaIj>b=NMq2nQCq#9D6bZfpvayU_Ih;#iocChiz^ID+IpYUFN@j>dQjS>XZ z9+6v8kQjue4UHIQscFR8Pu!qnT#Bg?f}hl;4!u;osl`~hwBs5i>Zrxh4!dFTM0W>k zY3U`jn+0x`&|e9H$y8~)U&7l@3?c%oFh}J&h!ObE>#s&(j1N07VjKJFthKuG@!XA-B1%a9?Ito?mx;>HBXa|>KP_UTU-b+Zb8mQs4xDQn!CWl8 zSb-p~biwS7 zJGYc5V+N^)XDIdd9iXZ{%>1qnaQ3Ew!@!1AP0@O9Q9=4;xv1S)1wBI(Vn0$^dN@8? zJK5EuiUZc;221+Jep$`q=@#Y?>#eNCqeboUhXbhHNuRkgsFksbx?IgC7nj44=sP3Z z=sM0`ElsB$($jgga6uYxHaoikG5?6t1NtCExZgMNeYgBPW@$C+_}2jOlrt2FWz` zbuGHnl~Sv+j`|!u(3-W3U}c2p*f3~BN0e%My-B5N{Ac~vWC^b?!XAHcb5t!q-r4r4 z5nr=wXfy|@IA^^gr^D!t;CG7nCWFC&hKV8z3B7fmsoGVSD_D{`y0cR6uMi8G#qD$# zRD{rqAsMf`yRh4*UN4nybqpKi^!Upa^zzJ_Ncvhdf9S0MhE43qDNN-jRMV3Nj5N@C zN^D}u_9!t|3NZs{nApJ^xLhb4Y=rejKhVWugN)I*P4JpbNV!cY!UDrV_z3`nuwd+D zJWOB@2{yl{)$2t$9zzJh4<(%g+1KzC+-&E+nRmqVRa z92l{6FWFl^LO|FbELXINA;5O#oC%8^lAhg?h03stYop|oP;s!Te&)pNnE627|90sG zLa&@Wr!#s3Co;t8_}McVrHvc0ctgW*n~Lxy(>#LyEup;ynTa=(2HPi+|O-PJ9A0zBpUAd_qxb}zq1b` zkpVvn_7ZPt1L*qJ{HWIAB+r__dT};PyhBcUdIj@(6MfC;Mtkc<^7yXuj27#Gr+@9G z=z-z%H%%U7p0AaH1%c7O#YOsb2D8`M>yi0ru%^-Cc;r*O z;$cqioZDGrJ3giXyH6C2g@bo5yrQ7|r>`1W8;sl1^i zpVytnSAVY}Veo*#Q&f-TVy?{BTW&idkP>9t0*OnmpXM?r)i`vKn>R=T=XS7og$4I=w0rRh zrqO^fW&C_J{!;Kl4wiH0xsooFb0T0F5R>p@A9*>}KaHXJ#0sxH^-_OxXe~bT!{*3e zNE0l?6PRRpLCbIv5paaQ2Mrdoihp-3&li;I^T%=Y@kpYc!6^9gs*jz=xkV>B_+a?} z1q}!Wa5~XCB|rv2A>$G;CYa=OL%|TM8Xr&hhDQ<-;nwVsnMj~BvjPCYDtn^Q@HmEo z@N9Xq-!UkOl&v|agHT8W!|=6(!~4*vV4}BI*b2r&IbFF^N_vKRVgV9BoM9EPjT|75 zz|wx@!9*e-Cks`-C5U>mS^>?ez{!~WJGzY-Ny&6>_ZpPO5eaW;TD3&Px2vxc-rMls zb43L3xdmD*_399jY;j^WLwfsTsItR!aNVqD@@3Pw{R!M{7Rq&+J>Cf(Ed)G&c}ya$ z*7tU`^z{nyxjRA()kY0bvKn_gAB_BDQR>VLaycF+r3EGcK~b=XMA%Os#C~2kdn0K) zf&WJ{bHPinGGxbC7g{R6)==~37`jJUs0^O>+H!U8FjQ_JAQ~qrSjyy6!992z$ z4g-NQ8sEGh%$}Ga_F0xMF@quP_BI2!squlQ!LU2Frp*X)v98J!{54((DL4$Efd!5* z%F&xe&(?&*Ga9o+B&wDHidqy##zJ|afbwYhl;42p+4t~8RA_ZO6xm+sWfQ?=>9LA6 z+isZCJW-e@vPiMK!^OWM6zWQa;YL++ICT)`$(X7!5uq|QTjPMCsiSs45bTEfC=Fh{ z>*N&c1N}T7Uy?eN${pflu3EmJ%#`7dV7)48XC@A#qHR``daweO+@!!6^66JWq3-&8 zNPgF?&_!jGC{ge*lH+I;+jd$&^!pHAvtc^}HWJN0J z%T^8N@;Hl~)KYHc`|xL7ouyzrk4wIpyhmUCI%hP-%mzaKotaRo!gKDWsUN#iCsXC2 zoENy&-?lpvt!VzT!&JkJ&Ve+9D2j=!s}vfkGM@XU zDpZt({<#aN?R08^o1noU`}e29lc{wtY&;^fob9CB=QrWe+w}Kwoykd`M-Chkj3`<4 zUCiIh5;WWswkpZH*rnQ%42BpnI`g}@e_L`;+-bRiHgcO^lgY`=$&jpg#WA8;^YClg z9AuS$;vFBuh~wwQdQwnCJw9SK_E(3)-05{`)1+P!S7|?njDpFM8q4GL8MI^Vw2QPmWBdII|5$2+QlHW^asV!)X}##@A!#K}Zfx5)bXyscxoS9S1!WXP^!Sh=X)3!NTo`WH$YA%*6P zA_$p=3i%l8%jz^uFV*)&q*YkD(W*!X*6(*|0Ib=eIHKydf5ZbuvBN+D5J$F z4p|l$cxPi+`{}-OE0sG;WFEeGbZZ|jXf(J{@uzvq#yK#j{CPPuSSm|x3YkuI7NcTy zcV+MBmoPXgi_s>=sY}Z(Gjf$&lqHmx{YEaE=1Y~-=tQ+Trkdo@d?u&Ln<(cq8&U86 z`w00Jr>9Zkki0auA4Xz%YM;8inX43lGpL0w@log9_>CDs>2@kD0Iz*VF%PX6ikQUb z-cpQ6)V(T+m?9dl^CsoW??i8F`5e3JdEqMHdCdq6{&?y#GOzsB{|hS@bs?5wwT~n@ z2O5fTCr&Yika$AbgaZHpZ{a4P@uW=>C&ej&zJV_RQrLyqlIVA5bN(iS+=MGIP-oYu zg<`G0My-OVkD4B(B)8wUubqcS%=$Ahc9%NiaFAJwJ^l|PLCbOr zEEZQ?f;X}mb()l^iRN(RkM@JP1m1v4c2^tNIk=j1t||@OL`Z3(NJo>|s^jRGFQvCDc(XrKIqk&K4e!g++BscOW&H=Uu#^bqb8#O^ zWZy{ue+U--3tG_Gu+cgyF1C0rRYGA@&%*?RdXR<1ag*sO5NLvXaR*s7(DZH0st3I` zEsl$S_~YlY5pwE>KU&{%G5hYe0E5GB;2i6M1L!DOhcw7@CDU#4x%TlC zNsg0pjG2}LO;4_$|My_RfrvW42dR_KJBjE3_qD*Y>21HoFK8yW7B6u_$bx0;_bQp? z1%$QTB6Bg(F-U~K8?-78)Li|Z$z3}Ad(*90gxC@-?Pb2y(7oJfqpOyLu+q%MIA$+h z;)^s4y(vaa!6=F}5FAWWiTEHJ1Ed5iC!{cM7?oxGU)-jRc zcz^5EvDg#u0mRFS= z&m*SW8?Mo$L+t(KEkl~&B+NScCaZNY$-e^TtB$y;O%nQzxgM>L+uvv><07OlGie|9 zEY%M>W9hphkncOS-3JLja1LTdu+ekl>DwTEzTNG5u0iA?J6H)$f`Ai4V;IOl)E zSCengTY+GXxEDxe09*n9iM5OSii@9xJV*jtA{T&bBGED>(F;VD34%@>mEsM?niq|m z+{O|PUS7Qfr^*<>TS9~XRAo@x3Jr!+7F|Fap~KFZ{fqpum2hc!KLumbA7k zLnBd>6ubcxLcNkSGFcz&&n1PhCFC1itQkPvHg-b}9AXY!L@huDh%Xz2ER_TO z_2-w2nJ<4Z2*9#t-(#mfCK*uHYC5FY2tGAalq#Gq45GfzqG?nJgM2i}FuXYxV#P4* zR#AL}V6;tR)EXcP`VNY=F-ph`REVhQXMs5w0|@2vVN(Np69@bW1qY)_hNs#&I73E? zNltNFWLV2(ih;g_K@nbt5NV8o7=(0a3@N5cDSeB$orBK-LdI96(n_S#Q{BF<{xD4> zz`EMP{~V`d(zs$qQ6|#(e(n{p+m6nlT~JZPB*q2-(R_l?H;pMX>gbM)Q4n)JV-_^! zv-H)N3>m|)7gNCE+G|X9hCWqBMHJexS;i?$rjBFQmMZcU7ho(VvwHzT;w&6?58ah2 zWo-}=*e3{C)rAp^$qJ>$Isk?8Z~;V0%)fVJ#Y-x+0@jyv_1){uXC1|)WuMYI!WBNSO97)9#=IUvP5#7 zK5{%|j-5p8(E(=!9D}H+gCT5UxCJa{^s= zs0^-L%pAON>`1LSaOx18Oz3G#EX``dM@hoI*FY=P$YtdY%X;D0da52QQ7CoM z;%XkPJ)W&PL5@UBpCF{gB%!rCW}{qyPmc)0yci4Tzm{7rD`gb%+Q>RAaq)RlxMT^i z{JcczS3!+XK`d;F#vFj?EZvVg& z*`;K~HSA(lPA*MsId5msGf=9$L9UvU5-k`SlS~netqheC)iTR<;|lv-T^Y;$V?9}g za6zR!QdX@`md*96cP+9{5S_HD)XltH1||k#Hv+bXx^#*<+hP7PI$LPNmIMZ>{DMa4 zm5P~$rj@%*XQa3T&VMk|2hFHDRV)ky9{>iYyVTG&=*(Ek%7k(*2Qa*?0se!do6p4^ zP{J@~D}I+mEs~5~n4$;uL$eDcLnN-=tM2O_G8WQkK_O)2Ot7@^@F^lO;lrJ8`D25XQ_DY#90&_N6CKZ0fq zwiX}{+znSaC@*k~GT8B>#Dkb&Y3*260o2N1^Ispe=HeF?7@E%&N#aQEA{*%2O&XS- z9@_+qR)M(I41=cOhzK&5FntJuRLaRsnX&m#vJk zGr94d8uw$fG1c#5I=A(e-P4PZg-(tW985cK^7Oih_nbr5P)RYay`z3z3c5J+!qN^_ z;`B~=l77sATio`>!E=6c!4{5VDI0&P@yJmy^G_S(2zh!0i+OP&hIkn5g(`-IjhTjP zQ3RYZ82!3Xayb*y{bi1E806mkT~)&v4aZ7aCCpVjGQ~PLW;wE}KA2crTCm$1FD>K> z6A6`Ey0XIGeaw9+)S?~NP8I*#{S!>bzj4F(%Yf*Z(#mMGy;!xq@DtkrUxh4A*w~?n z!0*3Krl<2Sc@;o5jwio<7@bCf@e?RGqEcEU+H(LQJyAlq&H_O`7Rw$L+D5454efO5 zGUTnCNY#huRJ2;z@Jvv=-c2qs>-Xa(mljDHi$>&pNm*hUy?OtOue=UV&hd+vw(A9^dLx3|^$K1PIwq(Eb_ z{fQK_W=aXU6i;zCJ#{4`w`v6r2{W}6Cs-zbj*PD%iHPuW8ZXQskrqmb3FTmQJ(1&h z2cn<|^?1`WTd2@9j@_BwO3KAwWCX?OOVCc{M9JWQDyaNq)-h$NXSw|YfSgG>?Muqz zxu#VMmBt^I!nDM5j-=JJAZg2NQD>-yp ztoYPdcQBEw+pr9U?@0bsPLW1hP1?oXDt}EKuZ|A7`7~Qkn1Ln4>tIPeWYbm}PAx+| zIIu*=$;G$=C9Fh6s_t25{%Ko{+G>7|npglMP8OUp$;elQk=b&k&q&#p zDQ)U&TxPn1TPyqi3R}G;do5gr#R;U|Yqn$y6>vHCD@|hTN+9W))VH_&Nh${>?5gEf zC!Mqs+35ThcL2Yk81Ok+STf`iIR+l>W;w!F5xWT!uD~UuY3Rl*b^HKWafI@Kgv)HXWmGP`OuEt~5oK*uDZD@8E+4g+i5vw)8fPfQhtL|C zx!g1tX@3UAa7NZ$Bmo>@n)m_HBDP9-n|QV6;SUK~DQrTkd@35>?+69y8(i_v=|(t) zEexbdzk2PQCA)(Px)t-&0h)@pX^Cr#MnqcjkJ$7e3&@@qgft#4ae?1Ve>Lk~g&~jI z#y`e;^57dgu-g^cjDD}T9?{TZ4XZs4bnWDOd@ohZ6v!-jY3pl)Y|MZp`rVxp(v8?| zEgsA~oMAJO+yp%9G0lXG#>w9{?(R!woaIu$A{r}s9lkOiMeI#>``b05HJH{u9>$p? z<3FJNyGi%WN*bf)g_8&!XFRN!fNL}_<|-uRauV5#+(UB)LmT-5@RcbKdK-*hP=n;f z7b=qgTqN>~_^~^2xr4G)@U|uqOlTlPUycNB5EMI7<)6+ufKO6daH;Tlht z_Nrc_>a?)y z7Wc0NNySrnjIFO|>Z8_FTs<_KjjnpHR~}0+ec~xjZu)qZLp&7)cCU~>{H!3Lh;q?5 z3B)D3svIElSh`9ZT&In?&W79qcXwAse88_&$s$Q_ZZys+PgW2s*pGmPZ)t-~vK^evq_UU|`!|p%9qg$c(B9`~xAO2_zg{ z`Sf5yVAy};g5?T8`;$QH?5D~Vg7_0*l=1e}7UH&qNmV4OXFNjw$} zS7T4Uc%HFXuK5+$D4kK`s~sXN{L0GV;0KRDBuK&X{M_qTXJd@lUEaXN4+nio_ItYi zd>=?pO+6sBc)SDgJ7CaSoRdO&l)I->`WI`}(MG$++Xv$B=IfpQ2yEWy-z~RWR)9+r zcr>8iR4(myc*k##6>vzHKTnq(9?v&hZ5hx$-k&)!Bnk<|%;%?gaeubf6~o*0@&5Pi z4TP-c3xOo2XAh1Os^(+@(|3DpnAvKiJ7!SjYO2qlUZGYBKg z4mAj;0uCEQ&`GH2MH+|Q2!V6A#}7hrUJe)Fb^hSHZ=#%pqinvM$jV*M$4~E9R3ykpD4uFF&uvVq2G$%FE207+w=C~XIiQfH z8P9fjXwCyCFQm0~a0X^$e^%5ks zR`iSlCb*4EC#Od6WS5{|lu{U4bJg--nf=(@1PRy^GZg+re!U-|g$riDYrtRGQhc-}@Zhzf| zqij@F9m1F|qm3pH`i~oUfvHZN;gy(}` zKTH%OWj{ie6KOw6<&t{i4Lwf~8TI9l-7uQkap(Y=VK?C&45<;uvWWT4L21J@X&{!O zg@I6<{sS94orsK21DKJ>;@Vv156qTSIYrgR*=a{Q+Eq(E9jImLs9ljqQ+F>!)OBua zcTE9{D^5o}d;~v=l@xw;_L(0&t8=D)G16r#QrKx}#hy`zPsIkTbQ)a^BlD`e*4o~) zGYT%(XAp@gAYoV8gc6aJ8FOZilWl9od&~|ZH3A_iLa?=aF*Q)flTPB*{HRz!Sg>-j z*=HGeZD)xys|J!JG}?Zf;b7Ax|4h`&E?(58{nMsTPS#f*nq-bOk^$_d22&r(3+@UDO8J<5t$lYLYpTsOpuAfS9Hx$($KLo2>NPL(c7>PgrgiHkX z6hy&72!T-8=X%I+-PuQ&M`UJ1tCjgisd_g^kSgiPeOjWlZgG<4jFG6tI!u*YO0YB{ z<@&ic%a{rch_uBT_`+aC)Tj^ypAjm|Q#uPLaoM-9X${TK>PHGRPDWO%jNO*R;r?0} zc?ZmDkW%)%OOjO$Y529fLQT2x@40OYRcSc%qeHd+>~l$i%$lWd-~`maimpR-rHFP- z1~`X;^dLV6HldUK21wC;qhxkBYA<2pggB>&D^Ji#l_{vjk*e4m{fRJ&#Nud22O`#) zP_bxX#?)RT*whHOmL+CK>>F<3cVks%jtG}3=)3(!d6dAk=jDL zff8gF_6b6`Xh^s0WZZ)=cKt9aP;d~YL9_{t2qV0>ukl@!K_SqU$^x)((|t+Nq3`W` zuOO@Zk$kNF>f#Nrz6j{Hp?|EcsK>CHVWh)7?1c`dGaQG5K zd@h_ugyO`UlgQsKDeO8rQAAzs%Zx*cyoS41-iPY4OgqH*!{yEm71ouOx@Q@-qt1=> zm6g`E5o_y*=#A|w>0EJjB!$a2fhvjQ{90gNy-X}^c=*CqmlaSrNhIidNJAZKet@Rq zEB57~^htralJRE}!Of0^ll-5H3heSTA(kBU;&2vnNM;zhm!vQk`SqI|tOG<|d~l|m z2^&v~GARy92A@-=GxT^&ZW{-5?m0~YCJRjjkYD%h$9DDl6aVyp%g~pvW8)I@N2I}< zi0eWMqU^gzqOpzvYUWoo|i~8-u%e-QO}^BDfw~bwiw8nF9U67zX#g zRKoD`n-pkhqHsn*?sI2{6pSX2MF#bjpTrO}&IQeaEu&&Y?O%Od}_jsJj#g||_ zm&0gNz0TFg@_8c%$b@QbJ??+TTweK)4+<2!mZA;>%QP#;w|W9*3x2B$iC7POKWJko zA1Y(Y$iypSMt|ddRT?eMri>qxwp_;K(pBHHDN94Ym@0i;zs7^Pyo_VW9b{g$ zAMql;PVcGQJ>GCxK_)22x}@EMuU34y!Bao#$$qG>^70}=iu1tG*@CJvjAGV8so)>? zMr+dD!`9_}Z-H*OtLeDQL4H5B6uqCX>U^k*c|UIxdtFzJLI&@8y<94h+okV%VMNAt zXGEoL5#oMRQrM{=HIfza{^=4MbF+(D_ne@6_yR)q1%Gx~6$SZzG4q8E^<5_S^&JAs z_$HsGer5js=9!M00yh;Z_sCK7CgiH2*nj;j9&GFvES4L{Yiaj z-Ulbek6A2$l|m9WG=QTtfNMCQ&N$%9kqrsI&9SIAZ!`Ab0;@=Aprq>`qGEv({~wG( z{+jxRu1rDd`TnRWKCz~rZ!Wxy%M4N!!G>bNOtS%|p`Qi$!InRnjKz$>U9@O~+zs}E zZxyVZLPOjri2eBKw!a85pmT3N+ENUoeLtqtTJ|>z_Br_u1y{{`HN)#p5tbkp*3lE3 z5*n6P8kPY=oOG;FH)LS{Mc9=)y~@hNeg9Gk2RM_(LAUo}ggQpDVe#XOkB=#!b~l*XLodB#!% zJi)|*x42!4#eOl5g;r;RD2s(3iA6k##UYf6fYEpwihN06z{UthE{nrnp@TVz!-tJ0 zq$I)-k0&*cC+7$=NcO2O4K?{1MFE?@D2`7gp1^9Jz@A3HRF=RslE7{5fr{xyZ)QUC z6YuCaK{PCp!Y@H`BvJY#S{yb>o-#=hQwC)v^5q%i|32)gG?K({lBf%tte+O9EuL&_ zo@`ncG#Q#SRvKDhoM;A{0!EqaAfDnB=4%(0;#QX8VUF`dHM*c7`Svc}Q#^IUEF~l? zHSEMKXe2f2B-Jd;XM8x`R~*mwB{d~1;#1Si7)f&uPRoH!&vT2X`I&a$ig%os6i1N` zNDIk2Nw0#=SR@|3rJvS#lELybqlYrHZ-lSQJaZ^4Gx29)*stiA zp%@Htw~3U@IauF*^Q@(?ECRu-wUMk1aX)Hx-bBpQr=^Td^X!V0tdp|rGj*b)lk6+l zoYW`(NzCkR^SF|t^qaCAnxX9XlN^vb;Tt6=7g8d(sv+|sEd$LwdiuoY%W1Cd*WB+^ zd8n_sXcl=GoP37GKGu|p7)voTVR?kB8mJQaq~+N};rW#1`4p9=QOrLdZkxGf670t>{;3&Y(CrB4fG!%@5`BgRMa4q%H^ zUl}CJi!`y4)lQ3a)ANhVk`3KWqEk&~VT;Yn>9j_Rtt}EP;7aVubJSqnCNR^69g7Dj zN<7^8Y)(sjG-5reN(0<8F;q>Auo9nIJYU31qd2{M;mYE|qoO6slHAh-!gJ}&ijqgm zx(Lg1;L6*V%L*jQO*zu;InppO3d}S><(2Ljd2oQ5@?f9@pkXy3&p63ZgCWBLP(%gj zf~)wo4Cs@nz;R20bI(;vO9!b{RAN<3!BxU7SIkLNK9=T&4af720v1+FXHF}(T2t4l zfP14+cO!YJR3-u9z$7@}#VL@a33x+Q)p{IM8(RLOsq(J8_-eH3UBdJgt{OZegzi`3 zt)WTObEq&?wdZLS;#oCMbM<%X8n&NtVdVgHO$|VK2`Zof`K$&%LK=s`;H;MZjgN-9j`_?pcr>q0t-8IehQ*_Z;jE4q!1SBCUhvIjB)m56ClC){%ijo{{S!Q5b&KHec2@bk;ZkXdhd{9uCjo$f#%>YX^k2 zFJL#!MRcsdgITrYB?HQ1nrl}h+7=}{d8j*&&f4NfIuu(oXCpeJ)jMy_YOf@_fMXp7 z?hVG_IZ~Qk`IKFtH&FFEb$5bCrAv8?1$GuTSGOH(H{yB~JVKA3Wr<4!umrpF``Wv6I3G6-tgcRNJL96mXTdhj*$kM5|NIrxit(8Hy_ClBOp}zDwe)lTg z_5QzWL*ivaA)W<66~mS3jX{>pn(f0RVZ#Yh`Egbw$ri1ABYl_|&4HdHoZ=&S2)Q{@ zqXF(MFCL>X>!94C@r3;I(eshf8ibPZu&%IDU@cBURmIp!*jPto(KEp3Ew$F|bgZR) zZ0L99K*hKyTq2FsP*6m(Bz50dd)%0 zW2+t+t4Ros$*b|g3z{h;_kob~#&Vj1yY|@Y@hRuBDNuXPh(-6bR5n9JH5hK}d&RUt z*fgS7_QU!_E8GZDRwTUjjEwjUrgT=cRb5EiWOl{Omg@|0R05&(Y?pb{qh}=p=P;(* z?1|VcqjUnj^jt+6VDc*8*6yLXiBtl!O3;OFe^&mdeL}f=8$T-)GZF$Yq3{s(M~(c zR(eSRb6ATzr{Q_R$vWKrVyRMoe5Oy&J zF*7o1#nNmgLpuJnV$z>xA~S0~O?uUoVzp!=_OU!;@;uoiYSl<>wWcGWN_q{UxyliuC3@`Q{OABn0tzT6tG!)F!Li=FPj?mGoAT+B$EmkJZL3oYqz& zIcN)1Y5z{U?cO}{WWCJEy^R604R2!)d%11&yn$D_w)4KdKD3R|X^IBi5m_E~rfLVY z?tnseh`mh-ZFVt_^S`|>{P5mw5Z$HcF{P#30}tH_;+~$#9Au{RVwl`(D%#_v^M)4e zakWk#M%@3ixF?QOBRaXydou3R9@Dn5pIWl7yeX|1eNdRPbksVV8x{9A>%iLNz%W}{ z-{#P_WR?n;4C8&MBy(sh!*5M@gom+nQc?HDedG&$Te}^2H92XiMf2t?nQvYAI0Xa*E{g!iMM! z=?XcZ2D<%3cx3kmN%9hSMI3hZPDd;tvy3-!_<2OV=qn=bSt5s{1c^=b^uz{B`ktw>}lM`v$4yzt9&16VHtK&osO*zqfXJF7E-J zFFv|2_**XwIS)`BdH5E0dGw|^vNxqww?68R8eI1kTlnQ&ueDn@6Oj$ZpzCa#&pDO1 zuUl^zR~vhjMIrcqdvD&Leg1x*x=xF!^y>Qi68EcKY!+j<3UFP!(fCQt_>Hk+V#pU*f!c^E7izk)N{zo&FNT${948&ACluBo{ z-t1Rr?v}~s_WFRrQaYB)7mmUcPFFfnD3;FR3Bpo7RVr7m)EP)uK2rf|cX)rnR;ifD z{QuER&5`l6VAKfpdIO-@Nx*6Xg`mCuS2Nwh$@srC(|<5i+=tu$4`wRecD>cz4*SOT zpGs7R|6-;IivJg8+O}}G(E<8j%~Y2=wP`01=F1y85+k_b{lA(i{-yK(TQe=c7yMt% zG`4-i*Dwa`0nTuk@Z~2noxneuY5x+!|7xaM@cn(M-qwlHJ=ibyG#g{0guCM>Fk;VEP};^zW(E|7fNTB-^WFGu-g+ zLKNdKWTSPTm}wNe%zrUcmKKFhYC4!$XVVy3LbV*kZVl`B9B|J6*D z3#C2o5mmLh-j({G(246+^g{+}mH(res*?U!GsSL^G8466#<7`ZEc(<;p;P{=nF`td zM>AcB65w0fOJE=vF#6O?GpPTgnQl#8{zo(YNhbRy^t_16PYcuw!H*u-{f}lk;{UH^ z`fHWjfz@mZ&I1=|d5}|tOY!k!4ks1 zn5jk=uG{;Vq?^}5qd6dn=U>cJqZ{xqW~!T@G56$5R(gaqWP-g5{1-D7xBM3~U8@3R z?tS6Vu?j$7v+Y^QYWqhs&1~!WS2JbZWxcI?QhBo*%aZ<&W?C}#k7im7@@%!WL{=nV zbQd=5n4kRAOg{@I{?SZfAJ;ZYxGVoUZy_dee`=;B&n};usrRx=UNJh4uCxr#D|6UC znrTwfKbq-O!u?1W4u^g`yH%>kT|_(2Kbq;i=ci`sGaT#j*6jG?9?c8FSoudYO`F&K zM>B=mkudehz&R*Ir-ERU;|B%&gP9UQ|AUzdO`iO9&Vw`&bDHkcgPCCF{|7Uj`>qeC z+$=DBjcC0PzAE58B!ESB6v*DMkHoF`FJ@{6T1f&Q8{~i7z6uddj6(W+eI_&c@~>tp zncvfSa~#B+Xn;;QCq(Bw6Cplh@blAsa`i(N{EDNV%J)lzZTBF;Hqa1f?Nc)imQ$oJ z%z>yI=;nN^p|yiDB1kzF6+plBf*Zq)9%rj6$DEBb{%%Ai3U`uNMKeNS%rUmpGn?E5h5i1mjO(W}N=jEd3~dm{ z_yqV|>QH9dQ)1fi&yT^-VHPsRA`a;m{<-ue$K~6?!LhQ78qei=(tj}10>8P;Bc&xe zNmE{Ah)bj6-=rJ|9J0whbJ2GUsdO)w3v8LsyAraH3*%HSC!;J^9Vqv= zH)-V3xbc?#Vy@z)rd*r6pk*LzsXfjNN@&7@EF5DVO>@-(qb_lGJ5jXkFI(k2=UgD>LD@s;T6~ zdM9(5)n0{wmUxBsjoscc}G$!E;(~+=#@I2ci z4F35;+pa%u6JN9ipJ?fGpo0`a*GGY&R}9Ss5cgutS?# zo{I5SAJYLMzXQft7K# zPM!%pxB6(XGOdg4Sor1DOaj{>iLUWBhuVu(+$B9T<0~u8lSUp@-ECRkVSR}*t+Z0p zYJyUrQ#|X%X>R4}VsD`n5K-KMN*Bv1D!3eI?QCffqp&Y1j zICO(U&W4jw2-nd%&r{osXA>)OWZwx7p!td0!2`N|*?DZr> zDsAYTh%E}&$3?`@-!+;px7>yw7Ftio^Bkb^@sw=K0@04~^G*3-u7%?=@}v`EU76)2 z9YZovrUoQi56+3rC&4|hYxqWub>@tYDm3q1pRT{|pB?d!8r<=!*zP<$_^#ta-ZvFp zUXC?7#~}Sh*Mk<_lJk@;-96E+`sp(-=1ZP;B_^N04-ek2sFr0uquisESI4gz;vXRV zln+!s^)&oaYMvaFX7G6wFr)5N`EKYRNqK!;!<4uk0o_#Q-3Y&v;rIC@U^x$WIdSZ| zkOIFWvhXJm_5A2Z?WN{pC$4i>>>=jp!Tg={v!0(*zAbO9`1-9FTL>QuN+9F5hj1Ll z_l~MF9c#gygoq@bz)|3relJBue3~GMlRKDRGY4gT9QnQg+e|M#2?}u}yD$7NJxD>U zlU|m{cxEF(OvX-Rql)iVeShWpIIZG2`uo1Uv@c?F!jJda*7Wfi#qpB#Lzm?&Kyu?j zRS1Bfg!mo%QT6-9q++i!_)IJ)m=lFy-1?<|1ElVS?g=>K_^XH{x@G5)WrTzw7zdOS zzim)4Ocn5a7!JIN4QN2cs`m?D4gdOUkCAalo;fz~y>>uYHRTy1N1@1i=%7tuv^A9IvTvVcLA5o!=v{(a@M2os9*f zwbjtF+>rb4D7XHh;m`(4^}=_>7EdiCj~~M`V8j0F5%rcG$?>8A?U8P`}Z?uThthZ8C)T^BonF!O9E<45G2R0N9!HK>x?90&BW)-%iF038XXZD>LrVE$J*y% zPWsZSm_<8SM%sQz<%5m)l8nha7Prtyv15%7B7_gjk9{-ZSO;K5y3L?P9QyQHBr6KYOE+S9XZkFD!tq;U0xv&NYj!U z*s~#(xNar2lR5hLPKuXMd@mAqmqzB0Wwi9HHONo`KR{;5ak8y_GWWMY(dtkvNPY4G zs_1-P=B9Au%7b~)vT>V5w*K=%Wi=HaS>0Bbd>uKJ;40hJF8i|2=(I{>Vm11%mG)Ok z68u8!K5`7>4Ev2mE{|k4B!eCsA&m(l3>3!#JCX$OYf@rv?sdm=NJ#>LTHq zQ@T)6OA?~{zF>(^qfn$A9jolOz91GT++bND^{yOstn5LvC{QsmyjCi@F=JRcWJKD( zc|IOYtYjXgY$h#gH6ci{o~7fkh`q4*IXKCIFfVa0dwoA-k63JXA>wQ;Xi-^f*`t_S zsO;jU>dM{sBWT3MQ(1Xn$!va!S&J=hpK^_6$v0@w?~9-bRkb&Zq>ZwgfzdMkJjvTi z@t>%fFxt)HVlsF;VKLJo>-)BtVq1Ay6PJdn8g2v-@V_nwd*7j=H{@TBNBPjDE#|9TYjcn5W?U3h0 zNYP5Nw`oA-$5%eI%}!y`Arex}%6?r;I$o?so(dr;stY~W1O1n~og+ySj6+IPn`xrx zE@J1-0OQRo!@{0-E%Hl!3iQrhk5x;dW!%Btt+`!VXEo4x5+U0f!(b;PQl~1;+O@s` zr1BoCiQ$@|5>!wtx4Qfp)E)<02WKNUR^Ks7hd>f8}Nluhbr7eVJdl~H#XO7Zh&PK$M+CY7WL5tYA z)8e|F5GUp^(;A-En)^lBU>(;>?S|xEjXbS@!il2>3!CDz)<(;m1cOtO0hh+( zPPXQ*M~>JBIX}L$3zqXx!ShT>RT=aBX1epC!KUG84q~ZXluo0p!E?_!t5gR|qT9|) znfYn-iy6EY&iBQ3oAWcJi*Xa{xVg%byQKt~y_Ju~RrHpONz2$U>*IZEr@M>jj9mrh zjku1}-Q>nS;4kCyed^cqdFRWc;L8x~LuZgTe=*PI8C~PK_b)BuHA!rnL#Qh=)T_Wd z)}l#Vxn#=|=__ST+dxR=OYgorw#gT=##g*w7)rW|bBAMxwz7A&-lzl4A1Cg@ClIO) zkX!5+`9`oqiV!Z>VgY|V-sIDQ&N`xx;IHZtT-Xu4Ey0pTp3#lJ4gL8p%Fg8^d}(sM zp>o4-c!R!WrevdgMYn}na)X83oD7aoiT3<@Ip+2gmDQQGx?~bgz6!>z-iF#+sY{(ogxM6e4f>FyV%7&9O znZ)hDn{-EB;-C+C$&aUdczDL`Qp*FvV6)of|265rO?pqu?5HiM7mdEijWmmFdr#nT zuLWuI(`A5gYeLetR;r`{R@;cbL5`=gJ=5aaj5jEja`p#&b z?M5Q!%u2V~x~kq(MT;=Si5>09jQmN|&>2^WbYA4n3IEBNy`FLlU}bXbSNwER`{W^O zq3UD%>*&cl2Ixc2qJJ?U7IX89-PK3*`FEX=Oo_e5$7Kj|b?8uClTwvx*W+Tp>&xtO z6u$mL$CeWE%U5hSwmOGHZl@;@?Q>#EWs<2|bjfMB=uL6*OF)SmvtlK|ltilNOV(0# zHmKGl`#8sE2es)>ehF;>h^ek~)k?~R*~vXA!#}DZeXdva7&Y*qShLsJFWP;${*&|e1Mo&fY`g1ZTV;CRnN!(C&y?Y# zfdq7CWc}MG`WN3}l}<;=#pE{C=Wk2+Uwp;EhK9iy_KESQw~3S*C|Nm9FE<@%>zNXd z*%ZbHCJ$Vw_i3Z|Y5Vsjawn#Hi(;S0Rq~28-I@n9&;88ziF+?>$PbjWsYFEgg{I3r z(EI*T^=sCj3L5XRz>i)~{KrX`sc-UFXwuvHRqaI+0}7IX8hiWTk-`l=)2&Z66t3VT z@U+Ut=Fx}g$)&p1+bOu!d$``m7lz;uL684eWFo23KZJe3NcaMg6m~=d;pn&!!=-k_ zL(zD={s@%zBqQ-;viVYF_M~IUbh^Efln!JQ>1?*U<7E!yQ`tN|5QtQc6f^lEF+_+G zpDApyOcopNH&&|oawTXec|HPue-y+Yzr?7VX;x}Yrt+l$&a`Wp7+bwj)Gl-zt?OdE!tl@BcGDlsGcy^Vzni62Y3>iE-d5U^ z(5UJHX&eH(AyKued;GyOt9#*@+pm2nIVCnatOQ^U)esFc?bM+i)@z3F13Y5~i4(MH zN0RB_=*+Ck$FCB}`*7-{2L$7F)*ZqIcvy3N1+kAU3VDdL>P3GsZ`9Ap zx_~}KCPhVUCwpYW6e0j>n^nUSxghSRJ(YmCwPae5)wpU_^IVxAU8cd}f?lP~-fg^> z)wJocWYV-F9iPw%K;oWed+fts$$mZKl~FL3ce? z(9(7{CAh_SH>aq}U25Hi=hA6EwORGBMU2_;yq7>v`+QW8^N~a|RN3;jF6vhEdN-!l z`Tn$*L;3!8x78K0Qc~ecC6Nh&Th9GU$lwPz9}kXw+zst*>aYqaw;ugOq{hz>0D4d- zfaW^xfiq_aB*M`*`LV#$#~}$5nL?cXL(wXs5-Zvyn_o+sp+!o4molo_t6+T@ zp*9`pQuSk$&YM1hl%98XR2Kr(y#t4g(LMm0CReQ1Bi?ju)+ZD z9&DBYC}fqVoUrv*wB5iV=h!Ra03%9>267s6=weQ~^xm0YWRi2IC5?O3%Em&D8y7mO zPl*mP=RzQ^@WNY6D=f@9{RlK9M24I86JW`Qbf6HXwkSn&vsC_hfWS_>DiY?;QaFE0 zAuefAT+#F00Z4uDCCOBQJ)EVOX<$Lp(n66q>&^>nf)F{$Ns(=mrBq;HOE$tn>ARgw zL28|GIF|c74H9d)!o-{+z+&Nxd4ja=IvKB*`vQp!YlQ*goa&gx;thopK&roplF@Y$ zKbjS2zc8(NX0deOY8Q{~q%C@d)!PEWR{i~!S|5HbyyTlIaUj6nN;{+K6rZlXW3AFU=0NAtX8HZX zpS_)M1);ySxh210p=h@#+hy%+Gq{4i^Xy`gf;4r)Yj6Z`YrN_4cBbop&fY!KK$~za zJ`5~Z?e2J^57+{1LtmkLxCvXEM1|;G@h>|gZvJs$KHr%kOYEkCm;Sl(qQ7AGYhaw4 zF#@|y`3*0+Y{lAcTgl3BdG^GPR+IHpVz!YS2EhPg2;4(Q(jw*gh5p z$Ed#-Q&Lp9S}|Tq^0D>FPXK~3WdH|I2k%Z&Hgv_P)qK#XQ6qJYW|6h8B|n^7gF)frpT6P}&lm-)M~3q9W9IEVnFmMrNUaM z6t3uzoraKx??(F?P_9Cw>tLXgE#jsdI7IGJ&ni=o8o25aEYj+1Pvm=b@6u_A(Y@|E zSnZzaZ+D9C(i_0i6Yc3??lBQT2hnC1fW=~Y6ES;>GHDpb${Dit27{v1YHIS?S_fIf z_uPFAIe@_`9n#;j@d?w3TO;?lM&&-o4vqBiO<)ZaJ@@tq^2LVI+JwC}gm&KEKPi`;E@T$W6^i41Gp4oK&PS~ZFc(CFZ)L4`|`KK z@>B=X`)hxDbV%&C6}}=UC>)@PA1L?sTaOTgi;<|12`l@PYP%k&0ioc)4Ww<-4&#dC zgN-#MCN+9V#bY;%Ytk17ihi^h>nQYV-yVo=uSxNwi#`@%o*3%`XY`23z?O+5kPO~Q zO$>gT81*h0J{I*e>W+!0vM7)lNtl=t^_$$1N|d89c4C{M6r1KB@}-(+74M3SZleN= zH3|={zVcZCNztJ^()35ae*V3av>LqVz*Zkp+;=<#aws1FYY2_p1Xx> z6p5U0`sTAGa>FJ1m*i51hgz3&UoDP&E`@y1i~W)d%PF-Tkc#{vzWAS#272#9+-_oY zkOxf$2euXk8yFe*VP_?kgg8TmI8%f%8GUy1pXA|(?*@i77DeEZa1PG&1d;QU7e;Qv zMEVy+e;CTa9T}q;`Ms7(UYo_Bm;FYW7*#7~h%SxBGgl@ni(fQD*CC***-M<1N+c>u zPTvbOPkON)Oc^vArJcxhma$=JWvQ!9$CgD5mSs*-vd+$W zT`DianB>IwXP=VfG3}XY;GQ2)hGUgW5}h)gt|@%akj~aFEbcF8Bq{#brD+jg>CuX| zx5%@w5R0~;gE*nkUdhd-5=|^GYqX%YIB+dDFNi+|Xc$#A5|w68)3%lYqoIH*B-P3J zeuRq-;Z!xP<<(?`wI&9`3z+p9UjPu)b!>n-nO&VIHEv*7rF&_^BXOe)k;IN^xk+g= z9d&ajaVwR9j5aRSD4skDptYB{4ShEYsYG1^Cyt7`0|@AN%rlS6;^d*|hVbo*F6i0a zsTfS%$)xTkssR0>s=zVP5B;jpPG!}vv)4aJnA%A0#!6;rTro&SJXE_QlV7QM5+v-kx#JgQJSaZ5DmuHV9@pCCZmHAy|)n?J3g|FzK+ zxI)@bbwSN!jdr{2v`X>!CwZ$3?Se`r3LL34l3|a8^^(T!l0R+V=3c>1#90-3r!#j9T65CvdCFFN=6Bz z;so0zHqRwuFbZ7J-Y(Vg!KMCTXYOP7CIPqAra#?bxD6cVCu=!Y?h5oP2A%?eFxl$6 zB5R#MebDSA-Ot5Km|z^9G*v7zK=Y%`&kx`QoGo!WA&bcFBG%Q7jQ*`N!AY<+F_G4d z0pMPS{y~9Yip}<}f#TG@>bpDr7o99cbhYyj(-*v*7aoFbIx;ZClgrM^w?l%zWZRFW z8d-M%QIEoi_taaP_-g!Gj4>1Kl4u(QUXcd=sXvTf#BeCji0}17b;z3NTV` z@rvb^4*4ht8T4oWD`CvL?S_2y_d0x(82oL{9T09M#1PdFjNBg)`03v(npjB>(DzU+ zZ$M9Wc26tupxM$IZHtv;#^2W6^76#C8DGi*^i96@|gc*)G<`ST_tUSAC!v2N(b zUVP1!H{2}&YVGxRnG?>FD)(z5SzTiMt@w`%MA<(CiuO0^wZtV0Z5nt8rgr2Wx8z4U zoHj*|BurlEx0D6;XARYjjT7Hw&$Y34SM5i4%3?ZNhHPfu!T8~_hGOK7M!?_cYV z5Sh=Emuj#un8pB1^bY&1cPHS7*TrZPGWM)4o2(((sp)!PK^5NdHS9;YzXI?GEVe4` zc4!OgSOLrjjPzWnmBx)so`ZG2r|R~scU#40JH=|Tub4L-jC|0(#Omf)lwkTs-I6ST1}U-vNB!n(Wz zEHNoY!m!g`d(c+QT0Nyv)2vr}W9lSaE z6Lz4dPBgSNH32=CK;x3NnXo`GNk=?(#Wl{nZ*e1+$QwRdWN2DK)0Q zF4mSVBNx+!C`e|irmhiBt}a?9tJOHHPi5sUEj3L;u%%FaK&PQ=PkK!+7cGL%-JZi) zmjVVK<_sUh^>}n^z0)QMY}YEnU;U&>uR6(>WOv@Yzbb^E`yQAAP-xsm{~z-1GN`S# z{TFtEJHf5E6nA%b_aMbxiWV;k(Bkf{#odFuyK4)@T?&-ayXDROJpb7r-%oqb?3tZ! znas+{oXPc@l{Lq8o(`XXZ+&JnlgpRKi^kn{fiCxhs2xB#BI~?3?Z+pCld;hLfU{{ytg{uM4sV4Q|V38hAI4T z+uS1s-rI;|IR(6SrTgh^x44o7WT|atm2Rgias~^*VrpPnEg~JW&CGm0IrAdPtFZiS z?k@#C!HMSu)B%O2xkmJjC6H$?{H|QGmtrpSccvdG!UIZcHcF)^SiJ(sU%fm{1JkU! zS`=Pf60(ZC&nuP#DiOD78n8C2smQ7L1FA&%RXm=j~KEL)c$D zuLF}GU+V3=9G34B=07wEZ8R41O8UUUC-Lf21zF3+2`+TSDA@1gP=wnd1 zrw>FhJ#O0Xb@0c_pw?C^--nKhrw*~6Aen#4I99BM_F+GcM=65G*vJbK`Icjte zAKg=OmhQpVKE7=~W%GOL6>JyepJVV(`gD)q;y;C(Chme5Gvmi|Ht_LFWMZ#9CY!v8 z1ie!fA$hBOMSKlTn17rFCFZ3h^72J0F4#X3wYOPFINC|%opna{Ypv$mZ+Ne7G;Ch9 zm&+H5Z`6d?Hc4bB=ck--4&%P;G#Kv&Wph_I8RUwV--mqrEs^fj7SEZM~t82b6~@9#({X#hw#$xsnO*q+FA(n*4ex)O(fM`BUi}tcm0_F{7fX4;RZ0fVaQyT;+`l1ESvwYVYkyoAieQ zQHfv0vplSZ=?a+)d$K%j#uI6kGQ_jJ?4~n$ev0>Gdppb*%0v=Ni{m)V@W2kKT);d$QJ>>-YZKCq7gX$vl70gYo3IMtym(g>Uo4N|}=RfxZ{(O%C7w zX^y|>aO)dsj};oc>f2hZFzPSpT|2(nAJ3F3{2224=N+P3e_?3o>njjTdjMD$bQXKv z<6;BJJTKvB=tYau9ztg!bjGRo3YUfBzRFOf~aocNt0|%GrV1| zw6M#iX|6#my_qkq?8`HJi|Tr_0@Nw!P~ziar%0KK;biVvtPt7+#U+U!Gz*am0)x|b(@ z`=%c_o_#Zj&L#dXfwFb$cJvq4&fPfeP3GMsOGBPv7E#9P{cL93&X0MSZ|Of4Rk-ps ziWmQGJgmB5?LMwsq4LuJXn!FAc>w?b`xzP)f)0QcPzHDfFfuYd|N1Q@r3k{Kq@`s* zLn9&}q$MR|!o(y+LD(VNfeedi&Dzv75Hb? z74+cZppFy~0kI=gM<*5Yj zf2xb|Z*_B#s1Qt$Q~_V$)rFUKWMl+h-M4R<;nf`+9E2AY1CxlHf|i+?6%~~L2bWA) zStUI^or;QHQc9+`ZxCK-c)c4N8#_BYyL*zVs;c7SC(67gT}2BQDt%Pp?ZG!{KTKZ* z_U|?Nt8?bgpSA|hx_8%LECy*dY~MWhe4M}e{R)AGg-3WJM}CTqiH(a-NK8sjNli=7 z&?aTX$jr+xC@d;2DJ}a_o``}%f{k2J-_Y39+|t_C-eFONfKuD}pKob+WOU33VG@B5 zqi%eDVR31BWp&LJWeR}-gMR(n-v0N4!=w5w6dWWB#N+Fm+q?T859XUwL`cYpSC4;R z0f-oHnANvAL;j%wnN2hn4@ZJtNePP}0I837e9k))O{GeVDA+XW&rM~MsmyvY-X2_J zz*rK4sXUdI@>yLZa&2WMuWz%jh0@^|lv^iu;Xz!#@yw@MtClPDABa2vMQ;@=ja!^| zUs?v#Xi-?-9jUh0Znoelm6%Vr*KK=UjP>QKb=2>6`~NuKo$hG()(=6%q*Cu}+#il2 zV0$;y*>o_TM6Xt$4r@M|&f;_VIsQfu|~ z{Q7aaTw^ic*ZceD?ZI@RR)620-_JiTzRmadzrF%cnD-z^n%>d~$V`=%^r$pRgJB>= zv3t0%Ca-6@RAr9EB1Iq=6JgF_)hrM>7^wevjqWY?21>FF9Jr2_JVN z#R^Im9VAL4aNEQS&=tufDGyE1$5TXD%A{z=2s0$}d+kAEb?njiQv@_2kPJ&sVY_(5 zV8}qWRk;dHG^RcXfGAnbQUQ5Gr42v;`iq^Tb`k&r!Vjb*K!p_iQsEUKDG9x~>4Hj1!Jtx- zl2%rdQWVACZ*JBKt)y;XP)W-|*cJSVHSFd_5(1Nzm4m>pEDKgwuWsNAHh=m0YON6d za^c!dF%#C>&CS!()7{-26n1lZdg|=#B575)e0pzHxK_M+z137z!UFR54}h;(Fxcb^ zH_7+We)x)BTe|__y@A2H78e&6aucabzH4ji@bC(5Zf;6ST0^Z0mkLrRCMF8k))voy z4t>9ar|HdFS6NvZe7z?pr?l-oh}IqPRUcwt5W_!*P48JwPOgZE*bS`k^Ym5!-koyu z@y*Q*?5b-G*45P11T9$Iy7&QsKw(hpo3%Aqp*0k?##MDV@yU;rjQ;5M5w?1TiAkc{ zar*V^R~Qt!cC%*Ia}F(BlWaI9A)(J$zJ;yb6haGOH*4^Ka_B!B7#JwDf{q>B1&v=+ zZ@`NI)oMF|!PcPAuDQ9nsi?rXxOfPx3tmSnE9>?3bv`~}!_HGCAzgSnNlK|$Nm_ls zejvvpvx2}RpHa4L`D{H8vRbpb&=g*PEGy-kAx3HV8 z|BVUu|KMApy~3L=zfo>18VpAxVEv!)qgTySZYmj#CH-&sjVIE`#k^5z{!jQ-n@u)< zna&3c37a15o| zzuD)wT>YQy>+m?3`ahq2T37@BEBiva?*Glce)E5`?^{Rg>%ZaWaC^F3D)gW5gEPQF zYRdnFU(1*I!oI&VE(^EcAV|(@-=Jqi%3vgyPMV^B!;b)sMmlW>U75DB*biT^T@e}Q z1M~MNdg$#SDvkVtHU_hgM_7!48*`~I11GTz9uef(GG6?NSqF*9OB)!2sW4EI#7Qo2 zkTU-(%NSSW{PZwQpUT!6SvYL~7{g69VvWqUHvo+_M;SfL2I{M9#OtV59p{Q8`~sr# zI9kf0%NaT*B{O?8hGCHJY0IR@6;GCF;d6ID^ihoW%z)1_oAy!ajN}6)iQpKPygURC zMjY~pz>^FX;)kQcVrP&Xsx5}yDZFFs>y{Y;1`UHW;=CIM)Eh^-?ZP|BdZp5vto*~al_>P-g^wwQT~azL(Yg~!yS3_4R;phE%T z-PzlsDh$=i?1rh+OYc1#+xikjC(K4YENy^!BMH&vn^q>;X%Cs17@rHD(PIV=A2c?G zv$ixrpSwXWb9GMj@2W!0I&`JE?n#$jHH?{nJk|G=HE?91_3NAhzj?;M6*QmuGJT=f z4DW;mAPefbYMTG0u02A`nA0l#DtqFiK^<;()h6;`p-C2u_&Wvmr%&I@=dBdOqq=QP z-1es4+ZD$x)LBX$r1N%m)&gd#*J$Tnn?8TOIT4r6o1r#he$RR&C$$cpSXA?*p_x&R zj#3Q@Q~ZTLvK)9v$`twnKBSKC2u_#4?-s_^Ki)pdRN7#r9th@R?;fB->t9q`yWLC= zXZJZlh!o0mpt~`t2%+h#>)s<&%eh+TJ%0j&&V4ZjplVs8fUb>d{<({m^qdJL2$i+26)1+?#v&W$9y@M#=Qj3GJn_A)UM2rf(2p_{}`6*4^9~JyH@4@~p$1Iz{atk=F-mhr5w@3srYHvB~Ae>V_iS>XF4Ke+R1Dt+E zFO4~{y64dMpm7^A!b+p{YMVY3)5xi0?*YX(=k6p5)cWM1QUoG7mHS(FWT;R!-Ozk0 z=(Gz0nAXbOaMZuOMqjb>($KohHna2)4QUp0!O$Fs7w zYV9Dh?deGq!LGa!_yM9&;6lsD2I(L~1ISgwcaB_`c^7Fbyv@Ojv&P);2}JIa<77yV zX*qx)fd@jtcz}s5N~YYFPt1>d$f7X=XazP?#-bzXRj!&1NGwqjRJt)CX~npxiXcn! zkrd(`o3ja0dHI)H1YJ@)nLLps(wqz11tdG~e>!KVKj@|RzS!?RJ+Fh_>l4rYsWuL`02z02U0jt-Kb%vL9I*`gI0M5i*;J=#D*b!)SDQ&!m|421;23gb!rGuRL- zXs;L)WA<2PSjaNV0-rGUUcyBy(nvE0zfHu;vclXdTeR9-zjmI-k6V zEzA~$T|zm_R>p^{88fh_^;$;)JFiKM9nXRmvE2JQF(Sb6mrH(sr{IMpSZBo-2eGeT^p4$%>B=R|( zH%vF!qA@0~lV0lCbZUo3j*cZMSC(h;ecK%`8%jqG3P)`LMPrjQyI};p2^%SLl~+iX z0xjymYhQIOX?Cm_$DQGiA?PgveUc(#_1Xa5vTHq#Mu)OT^so9>-yi&TNBota9$h6- zcuP90e{^u-zZe66@o-gI+hU18C zCq2r9G{Wia#I>i_C_nAjRcW&#ObU&W95%3R70h~pm>=2O+6GnSQPF79f2`(;Xa&g- zpcR>3J1FjAnCDS@AOtQ+egZFPOuzG8+%N)xuHFn}dc37{QvYgO>_-2Yz2f2)4R0Zh!< zCwN5?`gkR(LRU&amt)A6*l&X7*&ozS-T!ky1e?Rh@BR2W73*o5?)lo7fY{~^`gf zM3PZSl<%LjaYfJ-He{)%^mjde=zfapIB>K3>TbvJW=8ZIJ0D*DP>&SD@gebxf2!c{ zN(aFiV?+8?sHW*8^}F`eW5e6GlpkjG{O5vaYaMdy0r&@gz#@adPqPL*wr^u%k^b3y zwGi3$I3i9o0=Lu#eGTx(_h?ez3jESS!W$a>tPzMtNi<`f_u*E$bxG(rAlOHzz#jB- z)NjJUZwy~>MHdow%=fXwUbh^iJpTT0++FCzPV(UW6{0|Ag-#}eheJjH@;(Im)~i~c zliJZ68_3@z2*smeTaFO=EKQkl5QZR3StAsL;U7kPWXa?oysIORC2Z%`1`>93*l!E# z|LN5tAfxack&yu*7q-`o@*2edL?8$d($;Jew9XR;9Owb|}BXm4y z(1~CDM4%#CSmOkk*O6VlQq(~&h>wU;Vm+FzLvJBdJ!2x6!GP_HqdB901fj6r;e-G1 zGyBkbbYi)YE2&qpT&yT+aOh(kL59@|erS4xm7FhIn!bvSF@VQWb3{+nDNEu0P|{eN zZNvuIdQXxdTo2{MB6kR2bn6WG#f?nhs95pwNryX&4rsB?Z1FR)eTk*83c-gW`;Sr`z#r6DTSqS6L~t zDDW<8C;})VM^c(}v63PIOF`S9B$za$8BOIw=hyV}B1{XC1;>#(LP`}yG)v>ggadY> z;;)EZxU!DsPgh^b>K>bzB^h8r1sD4Cea#@9?qgs>#99|=V(>`W*u zkCn3BDf$zsJWB|lamhaa9nFer1uACyj@koTz1S3;K!Qas3(Oygz`lRNldG&vD14$E z#_?j&QfSGj=%X#C!czQvoU$fTa?moAVX>`rx#8;>p(mQ_q?A!-atpk2sHfo*qr$2F z;>A&-*|4-WmI%ZHKbZ+ofOOawr92j6rz>LiRhA%Gf&9!U(9A0x_mmQ(_1JI^><he3*y=$O4Z-a^q^NBeVQP-*q&H#r7a=+vcK07(c6wP8W8Vs^+`WN0!Cw;7YVk62&V9-bH>Iw;$KXj89` z2=&CspE0NyAaKGvY_KG(^Cy?t>obDiw)0iN@Zmt8aI%wvD-Vu4Kt> z!o;j9m#KX!%Vez@%2N1rmXO?59XXzjqHM+e+AO@VR25TNT{u-uXU(#QFPO{A zj&bNJFQx#^0`claxvyA9ZX^%BBnzn4uHJa+bzqp+4V!NyW_&5&Y8OVyKWaL7tNHbv`G(a3xwx^Ksf;P zOG*|b0ID>Kb4|(kX#?LtP$_6@k!0EoTx!E#U%0{BZ5mOXb?t2~%3tJOJfx~4F4qLz z4)T=`>=Do8wp;iMkTfslIhhQk9|&}pij#gLYfW$TGgq)b|I_wbvG!247O|4L7 z+OE|qbyWL^T?Zb1M>LRST$Q?NpfsGA)_A(qJ;DZkMTg##cO``lB~8U%KXr8vNj1Aj zAvK{C=zbyvpyn zCe@BW(6e-G!FVi>KzFvp>1V0f2dr|0*Q|E6iTEr3FgNg+10OG|(3rgF1c~uS_nnH_ zDE6JD4yUo)EZ3oboF;S3CLy)yAIQuc&p?5{20Osy1-u=JK& zr^nrAHmHQtFm7%-d32Xz?y-qdoQ#Y>Vu7_dghmNO+X&PEPq(XcKE%y>takrFoVr60 zy&ynOpyqz=2Q+&W#( zA(Yk{Yjaks(($X_yKDA*pSj%Dd+ydeX5V;SRVF2`1;*olm0by!coV$49@)E*amQ9P zxzU-t;gOFh072khK#@v{O6uLr+uigyT-e)LU%CTI4ImVRY*prOanWv;U{g|qkd*7T znkBYdvGHnmw-%BS`LwrtcDMUxK^^hi^E!wupzZ#Uor&3vL5`g{C_;Ds&I09be(%oA z?i&%n+EV`RR^94~`R>ds6lt6C>vxHT-K$;7+ns~_ujhZ5j;?m48^7LCev?@Gy1EN2 z=lJ%V{|#C8+iE=R%b#xm9O{2&cXTXwfFJkJsNNuQ?rmC>GpEa<|B?mO#A)pd7+B|GR_bJ79-H zc0TxXJ(jPSq@Z6Mo&qP{Q(BQVl?D^ZA^tMJ9S6_BokY0cnAYmVFqt`Fl*>k?tUW-> zlFB=_xg$Zu+d_yZ{#8Y&8)@lu8uXe{p(IJbev3dpiD&}>WEGs{d___(O75D4?--&C z_6Xufgat+=&p*$zLbDrjI0Lsuv_WU{azJrMu~KCvRCr zl{fb16}grX@07DzPEz!^RRq}k(_z=Y3O-PriSZzEHy$b#oqfH&`lx+msl7u_c)oat zP=<5*tln(%6`x`2Jh>VV_Ek#Ml<0>hNmcbZzEzEJliD_)KvaTKiv6%izulK22{&iwlL z?;HK3Ym2^X!dKE8UQgfK`WqFcAGMg5gY`dr`i`jwZw-=N%sQ`C)buGDCi!v!(H?gI z?3NBrRjf^)o)2=}_b!M{r>M}LeguEElSe8kf;3J9u;slh4FVGvqWS{xgZ6jc#rs8` z13km@RQew+r$4x?eo%Yfh$sBi4kZefB7s`q$!ZZ%#M}5J*0keSDQJcSzWWI^yg}D_ zwiZs;sc_MYWFbH;CR(csM1N{Pd9ixM$D=`~g#Q*S?q!qc#Vqf^+{kYLUq2!IoP%C- zOLb>E-4(T8SmT5szfC067Hz_s#GN`h6jCPCW*;s*N80;sDQV$W{@K->7pJJDXMVy; z`H$?IfY4XpKeJltbJ^?|TDSP@W1%sB^lX;)E&jYK=xiwatNi+h;90Y;|Ke^gq`dTR z!0GwEpXMnp2!Mo>1{#1jxJM-7%=6$L_=Jdo%ugz9`F$_~Qvk!&m_}9(6_XZe0OUyz z0OGQ;@>|kE5#mvJdwQ~TXu`1>k*9(KbZM0f*&SG!9liG^kd;x}W zXDOVh2{p(?@2(Ilg5ECji9Q_FHI)eUtqdI;Oi+gUQA_<%Dc7Zl>I=W8U!XzE?#Ai6 z!#ZafcxiT?6@ToacNw^3#~Nry5yEor#cWuv7p%24aiXiwpraLj{;UU*+s|lrFCzq= z&M?e2B2TN;(NjMghTZ0u%q!OfhDB$ct|6)!c;?uUD| zYT2m!iFk}^{JP|qQdR^8;l1Ln*maqeUQR>yp&YvwMBnrI-ewPjS)yCHGi+yga_M#?2%@9(rEI0;C$Z0COQbqE z3*aZAM)V>w9RR{|X-(v4C_u)mE1_v>-umglUjnxkJ|A0Mr@TBTt=g1=@^mquH!CH~ zBs+a|a2Cs0$7E#+-+9|zr`K@RM$c`^*zx897ctgY@SZ3wrs6o zmt6EQe^_9T$fnlW7#icXNMmS01{SBM%wzZh;He7wBeTV zLXv>$*{#?eE9`6k!f!8&c`rkfSn-{y=5$>Zu(m`y^4BLO>o82>Hn8;joer1UJ^_06bV5&v^RR3c=H1zKk zxzk}$#1|2S(wLSRe5izvB}liFeDz#EOUP#r=})Ppw!L|?+jk+T{kr$VLEGv;7FaF3= znyPV+OK#4{V?9mSxGzU|0)`I1cs6#EtfVb=z;$^O!$(g6qEs*mwk{P1T}6b`AsF4F zjF~7SS>7f9{|yH!g#7%_P@zXl@mIhFF-X^`;3n?Kh&Zz=9&z|E9X-QVFwk&(v zem%pc*fy|I3EfGhj=U)Kd~t%|w8i#8`NL#tk}hp{4>+#&8PI2-ozYUp_&SElxKEmF zg1eW99}*UUkp$4xbJ@$I+Q?+or@^4CWkjY=LLjtVprr-?O~1ZIzR4Ho;eAVP{X}dl zI8i&|Az-r}$;wi1>BQ-OuwsS7!aql?TbZg#NcZ6lQ&Rvd1H!L|=xl_a!(`X2aqMJ{ zbc4UL(h0H6h;zS#GFQkyb}<#A`eI=vGf=;8XDub<-52i$LW zUX1KiTHTpZaBR^#8O(AgewJlCRVmfAlB@IydEkp1ulxAfgm$DiYnH86x)a!0d)bNV zoB!t$oF+%UxxNLwTZ0PsU^tS6lHn&9Wh38~)Trf*^U%HpZHPq}^4QEQWX{ zPe!S$8LL~)huMA6+A7QdX4}55q+evQN`LM&6o_3^MRUFcW2zqh=`%@6ikqu(g;M;A zU;|f;WmLE1y9Dj#8r<^YTbqu?V0fl1cZv+4#PzD-2;U<2gZQ{731{%$oMzJc0FZq{ z-v2$XMtd89jb`F9EkGGtmV?0WE(&%xV!||p{jzQHd)Nq}#@u-mb8jylbK?EPva;$k zU63QN`2iYf9&y&xJVnG2$HQQA>a)R4)~5Pf`rdk)=rzSgAigZeby|^#VAE)qWD0> z0k&sP652C(j+gEZg?W;dR>*iU*8SLJ0c+PUpa{|1j2z7MRygYN=RBOM0-*8Z6v|zRV@!(Yp79t;eCZ&BG0LG2z@Q_R@&&5is^`|=M@3Np1OHo zQW<)2J!t#9E+OQT0}>C)REdDGcS)0f=#&`-KICtf)s2TN=G!y9!=553+^rb5_-jJm z;6i-;03PK%NuQ1?|5T?%S_xr-r1CL~mJ-DEk%sHDVbPsJaI^Z0s@TwHQtG>7$Pu!e zx^d|Ju}V9o$3f|nIo08@w1#&Bw>pqItNv~Z2)24owpSFle<@`+Zk?!!P0Jih%(&Jv3Uq!Ke##mIu0_WwQEPWBM^r3h(_osnOpbe_>-?ss4Q z{I04ytNrANh_ityb{4B^s?g^chEWOB4DK?mNk(gg62S^Y_!CQ_le>l#A}fboR+Nol%GpXvq*mQ|u`VQg}RG;EGg3~k+ zUCbX5Jz=YlNXJ*uAchsu~MjiCWjzq_j&y*F@;(FsCxFBgG1_2}=1v=@tx`UaHR`t!5!flG2 z?T8t{@YtQQnO*tm*DWl~{WqH5^ZGxPHjsuDPyQnuxf5N?Fh#uwP*t89XidfPR~=@b z%P7^jy2J-+Bf8thOYy1QKGfcsVO}%j-}{s)yqW&CGkhJV^(#;7{wKL5NVmk zD?%OGbWD(r;@I<;*G>w~DjMUe^0$aiCJtTJI{2Q5X}BrI^Ux7!Qpv}YIz_A|5u5M2 z=VEFkSTj?7y*Pw4!E}W}^g1Ur|0e4R*XfD%>WTZto8&+>ZNexyu*lH#$shz|Xl>Xf z%i24q5J^Km=#_m2cXMB6n@qj$>Nr;Gq8~`wAC=QGhh4F zQp0=-D7Wdth%zj{0GQYqy3QK9?HamY89KytkwBnGM-bdfXl<;aDY=Kz-b!bbaQZq8#prroD~m--)_jM z1LyXF^Jc;MyWoN=aN!?t5w=M&rAY~gNvVWMnTE+1bCYs6lZp_N%6OBie3R-rlbT+W z+F6sjU6cANlZHPgjo7A5l%~xbrY#btts18AE97=J(~c0+&UjN;zG+vTX?L$_&#YD8*?)o4>6mFH=E2io2oOL?lqg4HJjZvo4Ycb z|6{g*ZN5lpzQkd^EMX4sz`km3zUHgWGgbTS;b;g@!Pxvu# zGY5BaOQ{-gFbBtTa3=?UCpeXZ%Q>}_MYxuOTRJ!jgPS=xn1k!F#p@e5iA!0$hMPG! zm=hKjhAX<8n8n!4(|{1cHk(xTS+DI=G*ME4uyt?{Gy2 zCvSLp=?S-r$xF4&dN^4le58oGx`~ z39jg}vvc4A4^HdgoX#UJIMe;N))UW~u3_8LsYbmYSOvui?Zk zHFXJ2>)>(@ZtURv4sPJ!@D48R;NlI=q2Uw{j_0nguWy>u;77nI9-P@VduYJP9RVRV z9N58m9499a+~gr5BEsPv9MZw*9$e<#EG@yAU9*QLT)%lVFTo)loYpm`YQTM7^UV?* z@WFi^T>bv*_MlL>z4K^lhU2_ck2E;8OI7!P<2ksu`>)S~Q@o{APq@8jf7H8eD` zw|9UmJvhRHLp`{qgCjf-k7l^@Yi?eG<2*RggL}KwrYpF{BPJ#}K0by!yi|3K^78WL z<}0|>Q)f{3U{G&pXi)cPf?GYf!-IQ4IMjnfz|_>{!a{4f+-puvTS`rX~-m{R#7Ka1mWSgu^Rb`u^&Ut2=s*M1li$#y-9srP`{Txh3>}iC`8(KT* zXMr(V88b1ptL){;b%DdVe1Q`dGIZC^OjznG9^bV=XlEyd5ERzaq6p%b3Kc7_Ge%h? z{(+-(JK40;^jNBu(^6~RPf*M(YjP)Dhj(O9?Nr?tJM&^g4CxY78i;l!V%)3f(w8Kv zG-m8K{75ymjpeZ823*b!L|nf);{$2o^NE9eNd&UAq%gFlv(^HO)w?33u7b0nEU4*A%tahk|rMh@YmLyq3|&zSZV%oK+l18=}* zY$~}XnBH={^Q|>nC(UM!W#7kaf8R`HEpa66ssz3I2;?xW_P}?G zTZnk8|23@RYgb3Ct6cbvAEN!85k2odU7bX7U>~6Eeq5TTR+rcDPgri-7v=Cd-(lSF zt9@*G!?=n~3Iayk?aq!rA9lzYSx0t}^8=*W2h^sHZbCvO2X04y$G7c6Ys3KcWKL8s zra7_X!3Unm5({fQ;A`H@Y^i<`Ii1)(v(hgX7(X(Ocx@T`1v0O-*SXp`Z6c?>iinLV z(CS{JkT!Q@$EhhqNp#lMP-K=MP* z;Yq>8jMSf0ekkz9C6XU74R&^{1gJ!SUCYjxMN}~*-4fH)cLydiYxu0E606m0Igy7Z zw8oY)i3SHSy3)A9%&y|06y;y7qenlXrDkDxQezo}0V(!sEKXd|a4?(0?Y}1aTBIgl zW?7DuqIpE0Ug{Glq*S6Yoa><;$Ps04RxP#t$VZAk5$_jz?L^mP(`XOYht)GHPd43I zP9RB>9SIMa<8Tz2k)JX!q5%TF$OIB>92cp^11D`K9{YyQ%vahS1^MRTrB zD!(pylpol+XI#pfYb~p&IaO1to(k5)3_$F(ms2rmHCxk#hf}ioZM3}*cr(S~UewK} zE>54MW=fTDjmELml!>8RxLNV@8=YALTShIB*U61pqC|7?X=1IP9y$h;sh`Z&d&#os zF9Z~|P{Y=LklW^-n-8M>g?u}SS?e1z^C?Ad{-Wf9wCG%I|Gw@s!sjP$THYv@bNOEm z(bA_1@;ilj38w^Y62kd-f0f1bz~$i_17qF{H_xq+TH5Y7>j=mQ3tsGKoBG+O`kOy3kYeoqSsBa|ncqq%&_jN1hTkmZam z%#pxm>m*3tb0_h|ZnXzQF9zS}Zal0sXPt=J_zv^T{$uvT8`k;WU+%|N%5-~PUH64B zK@RfT9N*r?AJFZTz~VDTTPH@ZMT@3MPt2>kJR%+0nN|^CiNykDX8QMDtuR>OI_zY& zCct|c{-a1|7g!%-5^JPnV>t+QBV92 zjkkp6o}ZH5$-|s{&YU)hlx%xPL zg;NgrJ37qVH-J^A*b$;W?v!DMT-i0s+way3ryo1u}hxn3X~17$o*rA-JS|+3UPN z#ym)~RLPCqiz-Y#+9838p_PYb>EqB7CchIKNbyJjA&Gys9K@eE5M7u9NbG|OLMAY< zXNIV2wkWq%sQIoqJ?fgYWdzTx`L}k6ycmFZAzZ^kAIcvY=UV|<${?Lipx(s$ieVwQ zvWNyo9R`R}nje+sfuU=8$N_<9j-n+M3EpIi^PBq+D;s*MVjr|*pF<&O^>w@!MVIyu z)&s+y*O>ui+))F^VQC|w)vqP8lLntSGs54YLClfOBE~*=7;>18N9Y_xRnP@eW{(2o{lm!8!)jNcB~cuSN}&;GkO}*6 zv$PmYpb>o%5*|0r-xQ|zr@Db(wB^tM#e&+$z7cFi*31j0S&C8lNWuO>>P}ukM+#id zr=NO9Q4AduHadg1I}_GU<7LymBg#>cNTdY#5{SkS(xg$4%BhU>nCOaxo|W-r(3I>W zjaIWjga<}ENtU1%=YVHt)P3iW)5zm-O*T?ihFc6|fzVIFG0<_gL;93>`4kmCAyx;s zhE-lmBZwePT(Coo<}0xh#K^ZbEtGQ9dwnT7vm=Hln+;1j&JPu8Wt4{QsfY`XGf7XQ z^!ICvimf+J=R~(Q1c!DB$MjTs^gUY-R5}QdrB#H5sSBhEOenCAq!|#gF{dOwkSYR? zgTCmq)JJL@;V1lk$332-)k$^c_F;m_^HOi3h=N5x!i zFjKihppc-Avxt9{(kF>XKT(+MN{Sro%14yqw8IG}8s9Vtmb@O3jJ1qtz9-*QpLZQ9 z`Sct5Eb`&sUe5ydVV)*u)_vdemXt$NjC}jb-mjrc%mg?-R|MaA$GO5{Ha2w)1Qch4 zJY$X!25d9=Kl26zn3j_!BvxfZNV1T&n5#Z1B&sOhJ{MtwiZ6BT_@7iTFoLn11=t5Z zA3)`Nd~NQH@Q$8TA}8fIJwh<>lI;j+L@iMX&qVht@M@hvVUIbD0n+hCtm`8w#y*N~ ziK57f^eyPhBs=YCgo6;8pvorcIDQ77m6?VD-XRQ|juPe}p=Lbrr>*}g(+Jc+M+9EM z|5-+-Mlh5=FzFjkrM4I$bXu3AMV6n5q%WhFG;cWSS5++N2|q2DIh{wtMtu3xMQ2xI zVZsF!ufkvEBg>zC6`kG|#7?D?iIgK&g>xYR7f<;8eff}_<4?ScipwK>REk%>zq@75 z;#ah7XR*j;t*+my9<2BzZ0wsC?sPz;m-fs3Xs`;~5~aXWj&UpPY}5+xE$c$oJ8_{3 z0UHZl-5kGrBZmV4P-zZXaw+nDjyNlCC@EjLKPLyGD|wd?Wk$deUA<_V&cTO=m~z1f;B$3(HDW{aIM*$>B1f+=!nxqiS@97T zv0@N&Cuoi{T@euI@9!Mvx?cbA6pNBuh(V|v?aY_am9ArBZx0_`@GKo_R8>OS^sc(9 z|5ctJSw!|3U#QqwfMtO-K*TVsyk-~)JWrA(y2`rPksx83U|rS9YgBWaVR|R$`b)O8 z>YNqTgxV@aZu}G5AIGK}UK%SgbAeb8_X`ta7>~JJsVpIncS;>;0KM2&-BO@i>2t*PHeH1a$S~}Oyk-7KZ;h8yTpC})m$9}i&yUS4J>1AX~b1Ch}{-WM$3?n4kbT< zeWvI_$BRr~=gq2WrL=UEz=RKD0@km$$Zb0o`~oSfRp0@nw5D2XSR*!VdpFn^w_dxQ z@>oE{YrOlyy%rtuNX?A)M%6^qJ!i=MEo_V>(d@mLb-MS60wBbE%N&PgYB$qT?gexv z5MoIq-j*t8$GL<0N1a!AszY@d@_t82hUy)`;DDlbI>35Tz>A5eQ5lvku#-DiY2p!Y@`zz66yo6DX{wz5QXv*@RyJq?9xkEKAL8yF zH(+bWEVrrv?+`=>`YLqFHxH@ zxEZf#6ts^Go};>(8UZ1$bxs%Ns zbG&Ox55@=lE=uDKg*nyY`qp$5G4d;Gd}XAeXxt9KQSGCgVFR(4_ZaD4x`Cp{`T2FUs*3xArbT;FWt0r&BH3Nl#}lgqkrcBzp41y&#AvYoKhEx{JF~6} z)OBn;v2EL^*tTukNyWC4iYm69ic_&|+g2rccHXbGz1I2q0rOy<%r;ve*XXxM#(twZ zpsMj)F<&Gh!{o?QYM#H_m`q`*ZA*dnVpwhU{Ley z=V4H|a6;y?<4{rkIU^_e;9UBMl9oW~m(t}KGX2+E_0d=l*4ha0F&WkwKsQJPHZoN< zy7V_0g#Qe8Q)<^F4d^ored{-UR4@Fkae}c8owcbePICFJO?^~iAkFlaKXE<7#@ZCc z48iuP{Wpv6J(DNui`zQ-q~@Ll(^7(PF@lgFhH!L(^jh8i`rL``-aI7OaW`V%a)J~C z*@f%bJ%8A~%jM&mh3uT#MK{=cVA;O?+$BYWQZU*h{Mv)s-^I=2lK_E0L)xd#+g~Bs z#Sz>mIRGc9-Ded%*df_xjOR1n-C*xI;3p)&4mbc0g%l7x6x+uCfpple3eIA1D7Sss z?|dk=&8fS4sAh1~3AzDB0s_ViuD5+;@O5NFcx)ngtmgm`q7Dx0aAebSTo-f%QgCEO zc;X^>0=PB0??3j+J1N~eW}G96zBN*D+V>GW4XwrY+dhE>ifM@`oyKmTra7N7l0YLL zg9l%qrU#r!1;IV}@4R*Id=j80Zlgke8KuRal?I&Sf`e)$k|7KbL-Hq;MeX|SfiKHr zWm+#YQWSPMUp!Bun9HFJq)e;aUGNHDmQQ0F^!c+e!*d$J#_mEn^ueU>f+;D1Ba-g< zfU2FjfulP!cGl8>KkF-3skR58$EjR zM@BioQxU<+pvriHPbwUUe=;Uw5*a}`sCpLoi4G8g5XuLORC@HQyES2kVgWhu{0)wL z3<+?iOpn4aHRN*M!5U}|k>3&r=M!*Qew{~Lz)*gUMV8AZLd}W8cn?5xbaZ7ke9=~h zU`Yf^n0+x!1oPj4uvG$g5qdFj1`ka;zB;Cks(a0xp-%6`%C8*JFqF}H{zumEiZu7O z`cgg)M9Ke&QN;8<{1au$@m&iP)By14JM&@)Gy zFwJDDA!xg1Y}}IyI(bFyO|P9HN93Xg#P>P3iXeBkJl@)Paop_>L#8s=e04q?OJlO! z-h6X`5tQrut+eIy#6;QrYu4q{CkLA&ho8!@hX;a`%b?B@h#TpY?Cl$(N3>R0+JIxR zukQx}T=?~h2LoPxf58NY4gmoI1}MO$OTb7zM`YL#5mo9>Ge~iyiedCSF9-X9Urr~A zjv7}3r+;5xnxNt}3kA#eYpgifCgzH6g4&K&2%L_V77k0$#F>IVw zUb2P#PXilG1$r_msj?aKXagzPoY-2=yWH>M*6N!+h&sFKF_MML#vi52W~vg|K5BFF zVcZvhnPoqEduE;#xIzV#tWd;iAj(_yI6W~2Ih^PNX_}jg3|-5kikvqYfNdA%Ft)7& z>H!gqUJiSZ?_zn?q3c?y1SA#LXUt7QrpxMP`KcA)P>K~lN&mZ_Gx=6|1kQIa!2p`H zqB#~0Zx0z3($<=iNg2B}1SNSC1PlbsOrwEh^s$A8I)8{W#=gt_cd_+~Isyb1Sy5y; zN@HZ;Mm=kxhZH7xa||kLd}t&a;PIA?!LH?KSvM4#8v$g|#Ew>PS}Iv{B*-Ti&NNHo zwsEKCRJ~m{dpa0a&zY@hLLxR~;7&0V+BK`$1KNvgdkuzD>j>S(mwgp98FF_gkVBtK zg469ii^f<~fqUyS7T0SOm>Xp76KER;cWeB9m}|9zqT0^6;cMv{Yw*45N4CVJr4-gW zxAtDeF37kjOQv9ikmo#|y);{+4;;(SX#gHsVOsD+_Er^Xq_~QU$fR#*=~BadNu6te zY`|$cECeK&*$KlRgp3nefo_Mm(Ya-r*vm~c*+edqWQDJOgJ#Y69+#zyNZzwQm|RU? z+H&M*RxiayQI7@|z6vpT0NYXO4e=puo8ve3A6bK#1j}d76}-fHD!iDRntwsxUGj>& z&|~hWZF`_U#hyJSq3r?m{MTE$qbA&Oh_Ry&ugmslL1WTZMJ!|s&bFA;KFU>4IP>MY zG&n&c3d}o_;o}Az5RA^Mcf@Xz9g=_Q-fto0&mV`7<%cAo)@yHOOEGidI0A$cwb19; zXfR^G5&Q|(pPGU?S5a~klsK=U9RM*vPFNmHxH)TEN>(5J5)nd4IYe7&+9lmK%~L@+ zgos!<7Tj5cKw>2i?~kRX#C;s}#XMW@cWISVBp)A7M1)X=S(M%+ua2_>m5VSe4o$>B zXXs?a9dw?Gj(q%lS1kjQ)>_`XA*TGB(_+6%nfz2sCv+rj@a~`x_w`c+p<*vZHKqpW-~w8dczRX3@;nj;^GUcW`LTYU)44-g;B;8b;$qr=b#8 zIv_$@hJ*}(P2?s}p~WkxbkWsQ$EsO?LX$EMyQjy82;2=}>p6zv)jD+yluoJ&Z1iA1 zryP>g8i}vG2`-q63*0^t1`E1R+uM))*OxVx#A^2A(wa)nm3lnc#@bv4Oh}sPc|P3j zCXE>ENKDIzl1@C-oS;NX;mvEl-ONo-^sfs24d*Y!C6!-K#j|oNrl}pTu3{P`=l#zk z3w1R@R)!&S?VPlUFR*iEV(xTdoigPsi_K*h(k0~so{4R|hjmVnmfEg^E4mh}CGJxw zsz;r8z;FqT#*`9z4Yr4%;>c#2Cy2luuZIrOp+3}YWenjqDb)G|h)9Vc z7@_i0NB&TMv+6;9pRnkJl{(%u7m3ZfN& z3|6jk=e;Ghq%O4O)ieK#iCC>jydSu5PhI4y*IF686V*MU3p&&i2Xn<-i`&DC1Sn8_5mH|9VHfz@%&4YGm$y%7YCRd*1M`?~8&1%(fRZX6Nm z0PJ@gT1yV-`a2$FRmX%8(BL>jIZn%$*tNq@YuZ*lV*Vx5V^F#!4l6wfrm|#iIfWqI zUZH?;9!PK$p2cUV-8wWWzc$M8G9f1*lLc;9 zs>&{nDSt7%G#_`|7w~7;LX5#jQcuD$6V5gBB?<6dczG-!FE!Tb{JWq$&7S4CZ_$jZ zz0!5u^0nK-%k~4n-EU4uJ%V?{JJg4`qTOG)J{zje@q1*0C&*JyDP;ZGM@1n~1kp(y zf`imj+h=;^T%~#n!#2yFo;%@wy<;a1Lq^A)3b++k zQL0XQiF*DLE+5C$k@-Fv)YnyKEJ8GJ6Zr$OCp-GB@TMEZU)>)#T>nvt_~w;u;(*dg zLkTSCz%$qlYI2TH$nu(gjyw7+R!KOSR_YxaV5srH3|&2>l0P&(O`pth=YV#eT&c7# zm+Wqgu}?Db3cWKP^h!N-h(@*{hPq+jfUqy0uB>Fc!YH7HVi|2+oDvNsLKlWP$LT|) zREA)p$Ke5F(j0^nC*RuZMNd&YJDRJ$GKrciiFkE5MYM8{El!M;BJfVKv6~{O84vl! zPPQ}Eykam5`i4$_B<=oH=DtbuxRu#NBL87hX=Gm?cXTVy`RHIR_@=v-YyfND!jCI{6u03u&kE7J2(SJI&nuv39PFQvFUL_rcFaXS<}`F`}zzm(iwsSWw_$^(YtRT8+(O!aeBZa}*YUI-MQ6i+4xjQ$tZLF8B$ zH|DS8s!EdYMg+G|8X9p|;|9`2U#QIk5=(gy9=1@wHQ#{|bC?&F_!z;i4OeS_qnj;n zLLnmar~nBox?p?#(LJ{={I8W+rY7ppl}Lm|rAlms_H`rXQa0{xuQ*)0x--+#;(~60 zE^h2p;n@OVyi}3+atL}`046MN?4AfG3G*^uj2X*7t7->}n$Q9oH!u$e{^wru_eE=6 zwm}qU0M{mn-?2^o{}VH{T^=(!WdMI@(Mbv!pSDB0`~YDx;?9_F$Ue!TD> zcUfUN@PR4rKIzl~`mv}aJh=TL?%6;PFV#xDqO2m3CWAjDG6#Z;NrRVs!z`C+#)lob zw|LZ{16Y?ZhC^INf8alGBn)L!a)_Bv&jw6#@`&9~i(YfyR3#*0hu(|^XU1rTtp{=g zL6#$9{m_%3(HYtHL_hB&gV-s&5l{{7X73Onuv_yMl3@g4F*AU5!e^Nrhok2dAk? zqkPcYGaoR^oMJbQYxV6YjYF<=No!M=o5inJ%1HN*A2N^6%*pKD%0!QfX5&lg zfKC+f%Qo|qb_K%WI5lpbBWBnhf;Gv>_T$SnhL+)w zat+AIH9tx?s>zM`$pIFlakYmdZRvI*Cm`pBW1WAO1_t6K_Nj+*BIt>;%;xlk$}Qse z4YL=1TJ!#}=C9 zkJ(v@*-62$!^ynS%j^^`is{!5r!F=XuE}$PnZXqSX#}f)bY9+RJ7N6wR2q1|3VQWp zWRSX+c$4Vg$%-JS3x$u%mZe995$~Lj4@K{Bg&_zfFb1WQ*|>9-)S)$WNx0gY-w5wk z^`Nh3OCpx*s~bmpGucG^3%ou{thvKfbtFc+^3i_ru|%0dD~z#46ex7 zF5C#@8v6M?{%lkbhZDx!ru1QK(7dxUDT4}`zWNeNsB{qQ;n=xQC{UF-C~97Xo z6qa5O2G=#4koSD#bO060m26d0GE)0L_$QS0ACcHQj_0O zQ~1_z6v!~Ut+-lUEo`7F`dzpnZHoHp8usd%-}=p8rah$#Ppb=$8SKwOm)4fL!Iiq< z=aSH0H6sEI69$d{U%zQs*lSq&Ygol;Sm$ck)M(gt|6l#)_^IK9sOe0g>B6AtDxm51 zfArgTwlVJiMZW?6uYT)B7tsoi`=5T}&IO~m)k^wLzpY`01=27FC9D5WzimyYyRYGA z{!hOV$iWnZTzReK{!hQPRcT*==oJ2^-_}RZwI_siO8=+d23gkgyR|F-({Jn5k82FU zI<^1lw~gKU^{aBwdWvuTw$b3O6WkfpZ2qm^Hp)3R)bBtk3cmH*MzQ;bx^l4KDLBQb zZqK)V%hfK*4JKs{64U}K<^NB=CA#a1j0W*AgA!$ekA3U6sa2ZDp!l#r!CA;*$k6F; z{pPPl0izF7ucx`VxfrLvrmh8}1V+Xj!~gy1xSgxdX*--UwO zf%Gtf2;YIGGz4$mg~Qwd88(8A-$m>(dgL$!KpDe0>>@530Wplx1a|?~yBHS6FL6fL z$A&n^yO@;5sCj$X)BjD|3BHVxYK@7vjlrgkk&pLC2zSUljIkI^D6fr47>$V(OlWIO z=z2`(r%f2P_aF54(Y{ye3GOnr?mRJ=vX$-tX?u3q3`{v4Ot}I~-@;6J@=Up(4L{8H zAsP3142-!bO?i(^KS~Z*TTMkg_Bk03g$T{S2zSMv4|tbNIa?2;!VlRz4rMqGCBn_5 zIZb7U&BS^R#qtinu1w`H&BUh8zt zO_DuMkucBjdrqjntfHQ+GUKhY@~pEhjDw~R;=`?DEDkxAcRT`4%(g8o^2~oLSW-!x zaZ}ouE7-_-oTz`9tEHQkNm#lKTX^(XRrZ*(LmgLm9M<-j<%L^TD(uy098@scR&m-k zmmUVS9@Q*c)L0xge;sRl*|Y^%bUB>Mwc2#FT6AHWmoVB`TwnAN9-~v*u})uT##{U) zyr}Z9v3Ich@nzdzYd6tjH#u!*C2?sIerYj$*#vd!BY4q?X`eNGmU(@`opl#;sln%v=W_u3ytJhb`5?7TyCr8`X z@$n9c&-QRV2TKYEdluF+%l4+EUA&uz!AFXPK$`-bD|taSVN=QF-mYqXvVdyA`a2M3Y(n`*+tw{6>{+Cx~y z3(){uQ;F-I;bTeusksP8*PuE6lPBl#|PU(?=LToCgJ+ z8<(BNj_(?WZHbUCFpzC0dYrL$>`U-9!DfMFBdL*B$|{k*tr0ziYr2)fTtUtyU~;j;9)TJTDF}gjd`@oiV7+i~?Li z^B>@TxYCy05m=s)S=>P&IWciwGuE9`l)0h@Jgz&~vpm~Luj~=eT+wj3$^N+HxN$pz zaz8^lkTT%bbasQlt6#eN0_HwF1_2B2= zj-j#p+Tt>7Vb2VGFA?Fc{PNUN>Ow{31|Yhm%J7hsJhsVyR(dg$w{#Oq@IcCV(6oH& zE`3gkzdvMj6~}b5c64ySd_07*bXGi3CwfpqKKGh&^((V7%ReTGaQ1>eA?$s@R;;L;c>e%td9PtwG^)PRHq4soh=)Lmf z^3pN%a^iX#_xuRXc+de2hO1O|@au?R{O6c|OmHg;zeQ(OR?=f_$(|nofIqEO_ zXrsFP?#lxwPHgk2e5UKXc98@2B0jew>??kp*j)Qh6TWp(J_Itou|xYt3ciOSdkyA0 zUnKm?P`v$R86c4H01pi`0=fulenk-Z)=2tt8v3*=en@M+trC6mCAcjbzFcrR=Ztv# z`w>vt_U{QA1{4$mhMb$ZuRj<9i`DM*mSiv#6<&s)JBd^*5|c$?b2W)fG69OkA{Iu) zSR|E9y%Aq(j$$&2$h5MWdbVgZnb-6F^6Y_Xwm>8TmBFU@@NcS&Ch4CyR0@SKNj%D$ zj=9Q(QXN%6dANrQ`B0OQWCqz~Befc0=WKgl4-45+mnM&HxMdoR7TvqxtqU&Nv1S5D zONvXNCZ*~xAKg-MUC*n{N)A!XTD`Q=!(mwr@L_!ICjFrh64ftVj~a^!%q^E|8BbQT zSwDiN06f0yy>6w!z^R? z13LOM3|;16u}Fe1$1sU}q9LEN0`T${*G+KX+OtF->?O9uk(aP`Lt~87u%xBNG}mHI z{Mnac0nyZ^k&`@LML!Fj)eD_5e8LNY*uW&UV!3(W$WxVNc#cx9%&iK3dSp?hDbsZV z!_6apJfCP8Z_jb&hMgmFp+&<6uVy78Q$kx>Gmst={xVK~`RzY)<)Ibt2L?m*8`8o1 z(46<2XQKdee$*t>1#a2YK_<;oHzs0x%*+&}5wkq52^81FtDsc6Qrq9Aea|Y*M~1Le zmeHm>^q%82&wBr?ldi7&{hhAfGWVS9cSu0RvBzOt`DJ-~CGCEk$dcw^JU@+0RpuGT z1!ori^8A6E4P&v8!}(riWinrx zZFS`Zm3nEVIBs*@URizcWaX<(VG9_(r2_nx&2`@$XEs^)1d=qx7{xC?*6|f@z~O?`wHB9U##%uIIOc@*UQHT>Fxe&XFXo1armuI>y!0=QlaGc^ETl8YzwYT zE-Zde5_mr4H~IWAEV?<)daQcT$;GXL$e*&T#>3OEiW}=h+>czAk9+PB5beqykiU_v zNRHl*va1in3*g?50&d>7Y2CbX?@eU=%bA^m%Y8l+e`miE0{8mjIsF|Y$a_}u%fP3% zoiL8HCqCKtse7b{(P}~aWP-RHukE^Yr_=!d`bN68igDEyI-jExp~~TT`H0uFF zNoE5qL@rupw72=jKH{koK~x%|)zolr&?B3d|JH^eljrvedNgSG-?;NPV_b8ew1e*7 z7+F*k&#(LY#8xe-n$;&aCn(& zOj?E2oV{x%--b%$4FxvEA7ukec#N@USI%;Pw$Qw~d|W-=LHNcru?GkR%?|Sg@9HUb zM7H$WGYjLGLe9R|`4P#FU{mjjN3KDjyDEi_o1D>H@e8gggO4-0K`t5X5d0_X#7O9s zA^wFqyl9pLJ>$Z!5V9h`LdCQ@p@JIL`wR-=DdSSHOiINAHfru!s}SL-RP_fHowJtk z^4x8Txh!SB6OOQTDN-B~E;UIN&YWM3OY>SJI4Mfb_qKAy zlRH!_7z;HZ&6VnlrN8;x`Noq{R9n=tg-qKQZKoc8yZ@o)vBUw&{aSYj?VB`n3)PlL zVqNg9@})wFiX7}#cu4Euk7NDCGpOs6R%#q;xno34^2c5|9bUbPW{qZTOhqHg{OD+b zwsh860jcf4>K3Yh*Zf8vhm*@lLt+%`6wNa|R^o=X73mbr0&!dVNC zcBvgAR)A-)Tr^d*9u?m~yqoqYI9^PRS!THb+3MB|BYusw*DBpFtl&H5&tMn_xp9+uFRWFHKX`F%z3_xTY&pKCekn)TpMRRAsn0=2pW5L8VKKBkRrTAilAF0nzf0 zV^2m^!#?zScD+RHgG4El#Lbc0)<<*gyfq+Po{S)>W33#xu5OmQR;KG{%QG~u-tXhT z;V6H(9wyP;$l1eU9@904obamD2}z?1T3m6GuHgZ?%9Jd6qO@H3G;l(XPSjhb4kifa z`=*u`5=U(c6!fr*<)CHg&iNask~qrPQOHTpW8bc3zp;$^oZ`pTDWj zmyaQV+H-xrs=F|SK#*T7cDBnA&(cMM zcpFJ!ac)%Vsh0GYrMc*{DjmhM2Av%{G9|`JiEJD=i4tmi!kBB;!>K;W0+lSwxXS}i zj$z;r#$>+up&P?31X*AjSWAH`AZpPSF21Fo{!f1qR+DdbX3By8=cl+kavxZ^pj*%b z;vQGT_vyBA`(VSA73a^y?6mY3y_@ve0A9vf6MFV>)%YSFN4#b?ho@+aiA9o?%$}55 z=H8*)L%OavnYAt3LAOs=;e;n|%h(n`tioA8V}r&jBX1iXUUyeY=gDd9I*$nkxdv12D#pLv z_=99omf^0Ir)pIb#O6aQeZq_waU);MmF#(75C3s5xM_lG+$0kfSC0O)e97=h5mLT;}Cj5ng1pq*2Uocce%cg3K3M9-L? zmJIUN{i0X2n+kAKtE>G*pzXgi)D_geVM&g6#l*%v~Xg3t=Mt z=Da~fi2aV-6AZ#@|Lk7az8Mn3^74%*_swUDJPVdBwlsoe0r6D|4Uo(N!@j)JKLsvh zMxby)a0*-HPfJ3NyWLs8mhCl#?TFLgfZ2!oIPY-^yH|@6v%~<*)Hi$xR7U;Wzni7@ zY3cTR-R*OaN9$qi5l7~EIC;jpr&=vMeXyIq^6G!T|Hj47HcVX0W%Sl<@P~ys$5J@M z6K~!I$srKuHk^wK-Gnr_+cQ*9*B)v|69$+J3W(o&Pv2ljqxnq3C+oe&Mu{~OLgNnI zXN{912~l*0B5vvJjncG4Yjy0j# z&wA;=lRVtF0Y#3U!Z(Z42H!&e0Ku#6SF;B#;4mnv>c{mH+CSkpHscq%#M!={GthD- z-2T7?&)&&4A0;eY*7Tm}Ab}#T1n!{tD1aS`a81L5r;*+HuVW#R&K+%u!4zG~?UOv_ zosb*aI%9CjLlDy*3Jnu6Czkq6|8@q@tmO*2oATw3?d=pPz8&sKntN`;d~-<23vimwRo{J=fh z{fk%gv8lsKN-wzjw}L|V9Ee7kUfe~1%5;l4; z&UymdvvJoE?1mG`^JmQBl0}M9kyAVtij8Sg!xmNPkYl3=IqA3yr(WypK@kqR=G4l& zdX`vhiFyYz1I^G3iKtL=p$K4~VD*;<6v)21iSVS!@DT;F$@gf6N`&*+PLI^d<}ZCu zp%Ba-h!Mfhb91`_BJkZ@NSRQ7+CCwG+0z+;@CQEOq$Q0ExkR4<%~u&n?Dr$e0SckM z9}I$ z*}2hzI}jh10do5~tQI1Td32OkhCT|Up;TqtVyjcz{b~{ogqtx59r;9>}_0$!dRKh}4T^tv}Ugsx9Tk)Mk)B*aXm_w!Orj|Z* z)YIp3siiX=z&(pfx~eam^vWt>ArtCVYD=H8uDq)5WF*+_(4Kp`p7TmNiHOW+7)Kl{ zJWfkB{QWl6?>C(LP5E0+i^4d(7}RgyDZq{*h(fcKI&k>_O(zt+5U;?6q#*ow!`JkCnvnpc`2nir)k4U9#GUrxt5dz>ux$ofDC3=hFs5jmvhWl5 zYpZT3U@c^6)oJ;6*nxp!nQXC;uC~-r)r#Ss{<1bGbBUtgyiigDlU99*ev;EPxD+IY z^yF)`;-(U9vw;-eY+qPvuUzB=w#9A+aL)K_Hle?&Ij-Zfdii6ICY55uNM!$}zY@}@ zMmW|Mjdn|jpCZ_&cGt!9uL*VVfUVdv!#mW0->}059JvgDJQU`%^|?x@@8YjL(_xPh znuZBN-ongJtR7jx3HV<2wz?UvXROW;c~ zkS;X-1a!u+!lh`nf(eGo{%&6vQI%9g=yt854%CxIgqtO)^=2Z{ddE6Oy)zh20b*XD z{PivzQ^0YK8;d)D+NBg`bed&+mn2AwBD>Ur(xRk6gFdv{4lT$E%0ew~z4ptDB=0x$ z6I3d$%cxPF6ZbSB3jEbv2X$X9bM19)dF{zoKyK`|^wZnj0i~^K`-y~84f;Y%73t~q zmi-oO!)qnPip?Q)W&Wy;g_;cYO!76f?ClfHT|})ob%I!jg>xVFjVe+ zfaQiTR7Z?ek>##V|=SI zWqsgW5)oTZ@&ZNq?tbBg_|i?d+rH64XuUrE{q>h1ePw4Bu_it%nImUI!zn@3&>DgQ z{XK15Dpt=h*~8@wtq@AY!_8Q|b>YyzcRD{C$mM4?9tje3uCNzOcHy$nPt1tbyqyxA z2Xza`6_;DIK?ZVBDpk5%vFTln7dEHTW1D!_AQfUbQFjeCcj8(x?U@^Yk?@mYhYntG zte9aKxP9&rg-e-o{R~GhiTcu7SBk2t({x&8AgnRk_m_pGT{)Bw-mT9CNF-NqPh?QS zf_KGBCALq?a_;~E+S`();v(YdTFvS_;~kpWd27+gCQN;!y6ZfieL0R>FBb6te^0nv z@#`axTs8Jo0`P)4qYp<(MZo2mR)07=1|ix+63-g8DSn{?a{oeoqmfnQX&d#(iLOwk z(t#o{lRrwp6#*!u8aTl=k9M zH^PKlQ;6EYBan$%1De|m!u{^r$;;sJ3#{SvkyFozxMrRzK=jUJhE~dG*CzwXN|sHU z|5?4wQ$rIfgw4Z$#MCClE2`OwWFOLU=Jjmx*e1c&-}Df$-4^Ewe5B&?*c$da#c%`T z53;dgNuDMbIrI?G()U4j^i%MHwBouLcdzcbOIEnO=IB7yxH|(Y*ZD^%iTvtf7$w!# zQP;OMF%XJw<7s}IchD*`ac-b-=pC(ZcTfXa>i*YD7lq^6jY{FEw$?()^89CrSkVO+ zf=B}&^p*{>H)SW41bzKF*etBVdtIlC#-XQHSp&kvfO@tgpzU6V>ojdzEUC>_B*#xvTLi(eT(C!IpfCVC4JpDucrWssLf zpmotf)P`hcd`f@44dGo~``5ZZAI(8iMaY{Z0py)RPlvl$h)8JuKK?}v%Ov-9^4oc+e_y9p(8D-fn6peFTmoOng`oi=jXXH zlZ$Q;v4s;!c4J89ZtlA0*$7J?GP9uT)1rl6tz|wfZSHc9%!)kjr}$@ODFO>AM(uSz zTVjh9kk4eM6f+!A5uk`eBh;g%T!?VxZEbQWib_n0!OBm8=WP{>Kdm?Fa;(1m7l- zW;SFH6ho6Ym3hx{z7UZ?tJ$j2NG?i*gf_O*4cMn#rW68qWql6{7Y*Cs(43`oyb`Q0 z-b2sLQ3BE`3T`A&S#P%<&Ve>vlc`3$84k#mz=&i49VkcE+7z!|?T;D?yvxI;CB7HU z(h1>=d&?vq>{W&q#AbdgvYH2#+d0a5H5Fbm!c&CFS$bB?^Rvg4z(ezL+8d0*;tIg` zb~&2J;_{r{WL7(?ntN8z$$fOlBdapxisOBL0?DQMCAN{}^Rj*6`0g>Y{rUI|+r8ZO zv$yBzI~4cw0wn5PEyM!|-Z`nr2Ii=smRGlgzQ<4{fbiK-=F3GpF^56m(R4;q;?jd4 z5cyaS2J@~@R7MWjTu`P?;vx%SBAVKZ1E&U9;VObY-f5_2Moq@(n!Z<7w!-FiDi4Eq z2Au&SbvP<;@tHA*~2&aaC z3A0wYi#cLjh6ntjP!&ve`npX`H|B<2%U1e^L-!}**0W6$IpaQ?gs4sc`0NhRJ=W}A166m^Nn zay;{p2ziEPSI*lM%@ZbcaUT1o658xOo67)&gpMrDo_E0*<05eV!M)5}^sq~uwXR`h}QU8e)QNN7_T zyF1GRs>~c6ESV^?i_>nq$p3+9$nrcR)4sybR=BNAV7EB(wu=!Up_p~@Ygb3x$e}4A zz_5~cMnu@#k^h!%Vzvc`&weK5rJXW2s8R-iPg55cuTdEc{UNo!elDceVBjJd z!Z8Zv9!7L947Cs zF9aawfHRB_5vd$GFjXmw&x|R?In>8Z;>+@kh*jpJqg!bv|1S3!nh*D5{x_MzhEe{v9lyF5$^th#t)wW{0Y2r> z%^tetKhy)0A1>N`R&2_7xogtxuP7LT^0bM(_HwGBY5eg=P7;609Q9)OA%jc ziGvfoQPTl|HLhw=`s$KOWP##BX33&cqh^uPQglO!EYP9*A}V9m;~Gop#UF>^Je$VI zj;!^NA{X@Ho6ABC&USj&{7}qFz4Z4qBQ)U5%t(-kppWK#18@nOAA`K?)4$&{t`Z3L9I*tN=VUze$lhnYrn!3bw!d4>J35iI>#^7Ge~^KP z(6?^!*XW6$&NDUPS2H>@bv?EJUgKUp>dsxR-u&bz4UliJ70$jxsE#)b#1y+gGsSIG zg{z?iFz?uVUgooK`cDl&{s#o`*bcN`;ftObD(VsnPYLS90er9S_VDKVu=2Wa`mM3- zRN?X;x&q8YLUp#hJFe2(eZqD+b6e?kdVS5EU>!fFBEkrBHGkp|cm1pgGGx*eNY%~f zCg849ftZ*%gPgf;QVFy_72nYH&8HNo_zOG*id z{!SN00IY*V)DtG?9dMAJDA+u9$P70KiZdV4j#vwcCxMALxr{fl^1Q%H<~kh!+*2*A zV*|k05#*EkP3-Ptvv#A^3DFwjdyNEko73%VJ!G5{ihkl1CX%Y)5%kLq_)7wONFrKV zHKD4)OlsZQbi$p}EpnM6s;e>_2Fi9OJyyqDBf$I)zn*Zbo|vs3Qx+CsD;9xGh3wbC zQ~eyaZv*xQ%cfuw`JNK_oy{qf7_NWCgV3G-05a;!6oG6KG2RT0KFX`o9R4o_oZpHV z6ArhBRs@I&FOiNPHg(4zlRKF6>+yFGYfK-k4bwu(m>_=rPGvsVI=2ET{s?BsEUQ!6=LesHv}sn6R_t=CE(=^*BJ+M5ZQZs^7}18jTsT zeJ}$BF!crK%>a1F`wP@t{HFV}oO#GO6{;vy`iI8N@J4!;l+A!fT6ok?k=xgRSk|pM z#)AYx!~3^%WoUbOg01_n0#=;8IcjIrvuxHIgN4h$c{=NO2q+Q(BUre^T6R^2vt$lQ7vk?<4)q5*G8bxF zX92P%eyS^$e@cRFcgL&sZ}-Z)y#OxIJ9OE3zPC9V5?8@BRUXU66Ixg3GgT&aIV9@` zQh|G+qI*`)xmoJQ?L$;iHZ}4qM?%n4%!*`yb`z60J25cs9#oTwxe0CL4+yod(>>)Q z2vO2c-i6cnc?nfj5%&fGVKzZ|76DgQZczAt^~#?H?7Mb%crT6VGAX=CsO0||5DA>c z=ob0AlqI#Dh>z-7BW@(>(2o}#@FQIDIhx4fAMX><hu`qhLU8fazFIS`qCOr*Xz zsI1qjlBhMWZWllfS5xk(ZWX68>OTt3E#NLB3xg*^jHPnpEueY32t#wgbKL#_qQDQj zD*SlFzH*WNY*KEyCuU-&ia}-1P?gnprS)A<>Az#ANaJ5wRL9|v!U3qx$%{HJ0e#Q~ zBp+2nScS^eq(@vC@=?T>~*WPKcYR)1G@ zVGPcVTSI|anKuq8#U;r%WX&QC>c88x(*THLBW)wm&(w43!1f>kMkDvd~gF-Ihf z&7K^UwUf{Z07N_cX2%5D*@E?u53L>!Xp3k=2Ser#uEcTdugEbvJlu>Ux^s1h`KT&zv9(-AtE!8y)3~$x9u)HulKWlIOQ(l5rS}9JJ z^n8;aEmj=Ov7FnMMBSCpPSW3=JwAX=%Oc$?q0p<8G^uZ#8DSZNw))MM!dOZqi#Lf} zKcAjpYS7$|+5-Na!;xZZ31=#aq9KK$zFRE#WIP+KHB*iygb2Te3%H>ETs$eh_c~cL zv`tmWdO^+L3i{Pz>WgUsx~fX#qA&0qx_}*~&583DD`gxjzAcQc>ctzU$@Q)+GDs^y z_LV6{J;Haj&cO&)sx6WM%|~^{e^B|EI4R28H4gsOUbR7w&fV7gg$Bre|E?KA_a+ai zduhFvdxHTW}>(b1ceaSVAGedk)vEqYlMk9y56en`%}NnS%{F~Ya%T#ma`rpG&M#V{xZtK|@Z@grPUuK?GM>ro z=M+!iscYSh?(NuG?YIo)HbhehWYLQ1N0VxLOYVNnt#XURc`?u6DJW6bjY2UH&z8B0 z1F2Y)`g`f%*>RES1=^qGb(B>)1<+Y&@Yj4z*L}rR)J}U?6~f|3HP0?zNe-Y=qCoKp z5XC9JN+Rf3iWcQkdSVG_YB#fff>Gvp{_x~I$nfyz%Ea-hlGccx(=sf=cs<76v}1q# zSR#L5zMI*@87xotVoDDR6H9XQOl&!|%c&`>CtDs;m3lds?oXUw78_OPj!|+j&DK z&06E#f-9C@EQ?dFLuTSOo8uv$%_>(~wVqw8j@BuABnVi8)#)0Z-P64E1NuF|KMfo7 zMdZ6qorrIu>vrENcgpBu&MvO)UtO`R6jhoxVmhJ}0YX(V-7W{89ERWJ`NUoLK74A_ zC8WA#HeiN<R48QhPeWpgzsqRV;i|bD@u2I%@Fbs8)}M?)#SR(0 zLC<9_0oO6BKXsDbJ*e+}fh6S+9pAEF@_~9(zg}*ZfT~$sJ-$708QXc2ql3QSuf@b8 z-BgSdh?A<+EyHIhstX2`HJbM`1xW&SQq%aKG_}1lo9G)b(*82B}7Jf z`tz&soUB7D3Gdi{{pLpb^4{J;5W^_2?F3??3IwBM{TGOt zsracDPorr3#LE;B;pxf;f=I&qeY#fP_dkHl=X$MJzWu#gxj6dTb|ho|KYhyeGs1*> zE2j7ez*~Tx_RClBJ2m@IG(CjfJITB%rxkIQ?qsDXWR@;mD+;SJZ)kSa=USIUv-b6u z{Px;AwZ_he?mP;Wm+Zn}PiYzBd@Uyv0VBWQEW;naX0r2PCRnqE9#hKQFmhSR4VnGP z6gJ8cMnJK_gsA2-T>i*ycsk0eMQd{K(?;XU#3ZJlT-w65PW-OVe6U*xwceEX-+)r# zhWSY9y1z^#VQ>n5{Y<}OH(?KR&IGk|w{;Nxdi^9Mk2Ki1GX1^b17$a_8TU zL1eb9xg|E2hO(P^^F9+c7-EuQ1`%W8f(YQ9s0yeFP1zrzRisn7)Ky4;r8kCTgnyoy z=BKfrJ=_M&E&BX>hAxnSvwT~kdhUl7RQ?|Ze<2a+b2-_(W^Zy@{4$;^_l=P!cagZJ zz+}GwU(89oo1G_n?t3B1Y8d_o0sUmL#0{{(=_dMiExs|1is)yZW(MNblm2~D~?%_DgI!?YnP+Iw>N zFu=;9Lt2+;MS3f1gHbkB-xz*+?0+c&EM!kn>B4Cwt%sUF7W<3i4M#ve4|tYI4~jo) zicNJF7Tg`t9B5D{3d8$MH#Q82Oncrc5_BcXBGa;+DFW1#Vn$Z~0g zDaVqqpN*rz44QR9HqYw0q;AFl3lX zkFd(;p9XcXlRtFjux^9o8Gn+^_^Om0C7>X(77{(1SRlwsWb31Bm0v8BHmaK2E;VZ{ zD>zc}BLUlfZnoHM_r(L-e{3iQo8DIOd0ib205b#yw<;bNtHZfz>WDg@&sXw7_4&xV zUvGB0eIXcvJ-;6|%b@!B2rUMCeAPr(=Q<1ZTG1G+`sE+~`X_!-{#iD?AnZ06nGNOb zOrs(4=MplSA@Zf+ejh4XL>%OwPVszTh(t|2;3s3zqT)gHn-en)d5tSI>Ntu-#m!u%07xNTFYs=c!tY~6fcEYUc6&iA{)1Ira) zC2DIplifvag-ES~2EppQfJ4!~esh)?JM_*rC;pxUE}~!5 z2rkuIYsEIOMmDVQp+>&7(b9HB1o%Q5nRDn)EB>%o>({YjimM-M(L2u%#OQLEU4zV~ z)hy&08YHc|Yiu0>kKdEypzG?eGc3vyfH$d13EsDH%-y-J|GgyevhD^{NEh=)BIReq zc)uNli?2tSVk0Bm8~V*ZSriWbCY2uBf)TM8l={LWY6r&Ts!SgMp#L^Cj11eiPqQ^F z=O?EwC>umYArD39AvfGO{RT>9rCgLVK^ph`4_Q(oj5n_Ei|aEbG^42l zH6UutFifDls5+1~I}hprzYH2MXn;3j@+RuichKr6dJj6l)#Cx0s>llCZ$Xl>Uw_pV z>0n7lni@l4RtPClFabsUVz6aOGN%_t!xBv}%TCxi*m$ed#+*}K3{|sOmqz0sQTL^I zHUuskojs>TNSoNCNF|Zw+y|~oX@roc^pWK}bE~t+y&#)f-ZL^kpDElj)B`>kg z*iVR%)TJdP$4QW+>%7awN~7^@`JMuk-_Ei&B&B#I8q-9(^MFdG-Fyghp^B5(2T;*X zfDrZqI=v#kziqP|dy6qtI;l`QSruMGAa#WBl;+fOaaTzkryH?YQV3}?D?Cz|96sTU z_x-bSIk+Z|nGwlAIEKNn^2Z_Y%QA&E$8Yr3{13sxv1SH7;kjTxuI)cHSwzDU%eh^cD-txXbB< zN%uOpQ*hjj^=^{n185R3)Hf8JNt)GA7D;QXc zp=qS(W9l$q8<~MIe2Bt?&CP>75homBa>S(n@VjvlrKv7a9g7i8)1)6}ddO?f*ChF$ z4hjLb?a&ytZ0-QmfFQjjku`LB6MY-8tzYUWx>d~|VL47#zaYz?ATHi^js1UH+)W#* z3znNbsk*fE*sj6ya+3N+%TCorU;L3eh8K&XkV2M_(tlASQ!&eyXN%MPQ|#G|Wl^GL zH{jyqjyIQ+F&UiZv7qBFt2D6msY(&I{uUdSe&i%9f;#^w!C^m;caNCHCM{}-FLtZo zVEjfv?PM66R8DNrqC2d;vD%?o^s_P1pMQ$n|9-5CvB^1spD5B6s~tLp+R7A+nE?Ns z(JpS!2$VJp9=L6sEv6R9tgO!#Za)t*s{*T_qsgyq=HK7b5iGKj(F ztXBHnJSp4MG7ZZT7ndS8?{#CO+8fQyXkyyp+L?diW^eZ?-Xt(!&GyMFYFh8*kA5Ii|RC0QE=k zO_1YfQUQAW2vgrluvO)-xLT82fM+R?H)dSxx3kX7Tw`? zMV!ke>o7#80@=Ki5~z27uRhb`cFO&QnT(jI-yyP}iF)o5J}whi>l-rS*Tvb2#g%d= z0%)GrQ}bhI2w(Uvq1hf}I{sl%v!EW;=vmq8N*53ww#ucXxLjp(Q@7_E*BBCU za`%tT$WRlCneTlE)C)8t3oiZ~)7FUli&cW=Xt%ZaM+2k#Vb!&~e2qny{Kps6Y5WWy zYVVKZmFj<*1oPMFMu`?f5-}wQKmG=&q;N0(ewit)=x~!hwlJmh+B+X}QRz~Kb)YNG z^yFl3``#iC6WBJ(Y@^pj*R*Z5C^5!!S?+8hTK99g+hn=sJ|EZM;x6{j@X9Y~g?KrN z{KvF7gx6Y`fU18{zuOnu5&abd9F%>XEqMSCyf-T$+9&Z34hE)YbwW*LtVOO9Zk32) z>(z3~cCnx>1cgU+2gL{7-L#-HiNL#5n-p;|$0xf}4L;}Rz{g)WX3thF#~KtOf^5J1 zhOsro)`AJow1mUGGl$4A@D047ZOg-05nR=AXbir2iJpzqnZwEPeDl#wm-UqhA6@dx z(!%^03wO0}TBCF}sdPpXQ}Cg&p*p6I;P6L}z$uh)G1azkrZwjn(>`D`FZu;`-|(Ko&Qezmd={(hgD8 zZAL=iH6!S&g|ZU9SL|0sjBhGh-we>gAOUio`Xr~JO6`)vLk6_i;qhLsWC#kpFWj$g z0If#siE@I4mS~<}o|iC%cx`18)94?Fo}<=ML>{i(t!~IEA?2sm9>1{Xr42SF43%lQ zX^WhGRj6_;%AatXIjoD08=LH8@?dE5LVe?~3PLasRYrP+$x6~wk~U~9lc5c!FFK4z zMpAG~7f-W_m9+K&H*5OvL^!O{RZArcOGaYZ_=!hoVVKw=gMxO7Y*E{+oZ921%sh#* z99=r(RzkwVVSQ=eQbM7T${XNeF)cSK;8cZCQbzV)WYG(3JCpQdTMW5qa2@HVj^9H*;}1Tax&gm+L< zT4t)i(QU4n8xjJ|Wc>A>^+na8!!|`daW!KnB=TMjk1kTL2Vr2^0%F9oH?<`lgK0Oo z^(Yo(VNHPFp4~k{zT#Mlmn@NkXw79Moya5=VMUd+!ZDR8;5$69c}-R9ODNJ#axo5} z5yo^=!Mc3-5+=tPEFr35-~2S9l39_pxyN`7qVhX~9rX|*Z|KZ-qr77?aN5LFf~~ME zpG?;gGDx^1`=rcjQX+fUAx^iKKFoyXveK6Ij}c*_3W!Ujfg&EZNt_=Kq=71~uB9f` zDz3@Tg+FleEF}NK-m<4!C5;Xu;P%v$YetMjaAPjA*JvkY;IptPVVNbcqrXttr6`di zl*X7MU9=$iN>RKG4VXb-Ed-ZDM&MH(tJ|E~l!&qr;1ugLtBUzheMH&|{&6WoDx2x# zApn)($+~AuSTmS%P8FBw*%r{4{OEl%03?&i;jpBg;gOtZ1Y4NQG?P+*&Bqo+H`K+* zk`q53SS5Z*TW*o++whQ`k(wOyv78s}9CPhL+az)L5hEtQuBE`)MrMuR;vrY{FM(nC z5?E}i&OOLTjyOZkA$U?NcCuO-)u$?el;nStDb=ce5S{97Tc;BI#Oq6I=Mr4vD)t>h zRT$h9xr-cgX_XHcut7wU`7RQIK4`Pp7!1)dd;%ZTAX@03k#7- z*GK)rDuckZ?nqa)silVR8_fovuMAagtZN;?MCIZ)a5R!nxJS0? z)592Odl=BK-&tZi^pZD`nNMF=Y&4&0%Vk-x&EN} zg~Ep*g76gCiI|r`=9vqH| z!pu}~qy=v}cSjLQ&!B31x1Q07O^<*K$rnmf(agg1G0ATTX(HP!VW@5W6)Bl9om_~m zr5SCTIgY?avn_@=my!e>Nj`$|u7|HSC35x9vX)pBE;Ubhy{^^w0OKvW9*=2BfJMXO zd$mn4#9oolEOWG9MUVFZG3hU$u|CK705u=OKDN3!zfoNJnxSW?#5oes-S?-j?43wA ztouu@S(|wifjEYS(6~ zl4@13;-HP4Xw@olTc4FL!_2UfeqmR(11?%kz*QR%E7Vnch%l13_Pw7dSCEb{QHFRp zhnSgIL@5sFoH3$pu97oV+?Zd~A%QxS&)Y3^jrn^L&&PgG4Pkr8U6ZhzKL2CQ{v%ex{D)M7Ulcd}BBY$?>+X8JIGp>cGdUQq< zm?__%%r(@DfUIQkAFI_E>qp?SKIi-8#Hwl^J}=HzjTq}MlFRq1DsRu9r@iPq-Lo}Q zY7=wq+r1`?Bzb(;H^ftuaUDfN-7PsofirS77mT!Vh46XR<0Soh_WAwnJxo~>HCPK= zJ&ru~g_!80x%2}L)=;mNw(!abAy&ZOu1yTZ6dpZO1SU~NzSA=^BeC+M_~^@TGlO0X z3s3x2r!(HKxsl`_)9mpnA2Ugt4EbrX6F^{bZguxocr%?Sqn13WPR-=@j=k3@WW^{g zgnQe3#HwXfZg3ZEB7mfC602RDbd^zltoD5RI;XlqY`I~2(y=xS+F$O$az^rErLbqx zD5pP#f2vAriti?=cV=3bmK*j_>t%&G@=7$3h%j9jTR3Y)R(@RL>%4tVU+9emoc}s{ z^o+Z~jJSUvW?V-o$!v!F1Uut0Qm@%}EP?5*wOQYm{H3jbd~5CoT!&HfsS~BXN8k+G z%{nd_LG$oz`Sk{c@kZY@RerDMZ-u6LU5T6nY5X%Y2K^1&+y0Cb`_)r+ObbB|;j-VxUu$avY{UM^7* zO8V~ntcFJKYGi8{N6k>1yyM_sAHlx|bMfsYBwcB};GYb{8angWVf~-5uwt+soTN#(?)Au{AS&Rb)s)iitG(JWfc{Cnb=zR2=JCJ22?fO(9lFR6^9 z^*4XJyYv=b!X%!++3&Xf-f6R3(vwz)gQIHgE{0v%_c?v0(Z2>~y!Pt{yjyEGDXRJX zdUa;#io4-xhc*~m16P|bH5d827r3_vZC0oHf*Z2FdtJ$Uk6#a=$so)6aVt7JZSHgX zP+R*n{9SB@ZQpl~$I&km^4F8%dR_7lD;p<0q7DTnuTvFIc>W&R<{d2G9NH$Vg$Pa* z(yTD&oh9zA817!r1yoz^ZWHXBA~9X;2%Z)s>`*fMb^A@%?CpAyZV2Wdi2H8t^hFwe z%;)7^Jy)Id4V~!Qhj07#%wZf=-8!bq&(te!()FF5{N4IT2C^kS56r&-D%_ZMuTQ9K z8Oh(o*k6qY%!2i%0EUyo{`V8H!@B{u-nSRIw>LD7g9G{($vC&jIptr0-V4{}|!FbHTg$ z*}apt+ZSq~%~!!()wye$glCMKL+`)yOJwsV`7hkFKNr`#rY8uaez$jfuec|#W7&s6QhDBA4LsB`Gj3tG4`nbS4kxoQapoHs8Dv^yN;FPT)z&Vr8puyWq zrE9jFNayos17xX`E~H|J^_hD=A1!7{_;Sr=x>Ts-V3c6&$}CrC7E8*|w|Zk!uU8q! zslrdIGi{})H8P)~;1_SUiiQ60|ATwC(`)6NZo&8cTCT%G;i`2zqfC1^n4t^cmv+Bi z41%tok$G#{Ps|etL?G2|`ONR~S%iy+eD zxju9@qS|A^ZQ4KWzdlRf>2TVrZ;Hp6_x|g6b2-KfF)EnVV^O`Z)>$sk?19nr`#&uff%6s6%=h=bSXA~^N@97T-!Lcjy)&89ilPr!c1eP# zbK4jL;{cfN;#g9EWO3N{VJFTN7=0DNovNm|+Kr%)svdlYT!)&jq~%-QuYtG?qY+L3 z6q-jg*Xt1!gH-29A``wP(SLBI4E)=sVb~M1sr+(MA3xyO>H7G3?kC@aYUX%Jr(5Qy z??M<=hu?~iorfsPhH)6_ph@cG^Sk7#n7$;>+;YQh>pRY!Ym&r`O)Z4s_Wr_Uyq{%; zZ?)!7;J&e!Wl#!rQ{uvFO`SN}DOF`=jpk_WgCH+9(~qiH;kB+F7rRyQG9t!t&WpBU ztM(IyzQ1s(M3zl0o8Y@St->OrYpS9%oiwN-Sk$Hgkw5|+yG!wnwIHB?Y%N#O3ge1tRE|DcwZhGag$`lO7(y>*t+L_59Hz4*R99*+ok? zI=nv@Nu(Z4yiCdQytjsbr`r#Gku~*fAf2=CindKu{+_ZXsG2$=!P{*bRw>))L><8< zX~Z4Fvzp#QI@DzAr#)c*Twya6hX%URv&I;C>Zz56ODp}U|?0lyyMWj^rcaUeWf z051@s!*dYt+)uEo7K0( z_xT|{07Gx)vaOZA@jwxp21|xcA~W+7!z0l2_^ptWj%ZZKOf1ql8Yh3NmaY~MPtD(V+ind_>aW6 zyD}^u&SVSUmo_DH1?*kaZlp1%c$<)trRY0Zj&!^;C3o?feVh_4AR*ZmKOGgtHg-l& z+~D_6){%_AGaePwyh;9BN7}@-ToO@P2`Z2yERd(TWanm4dOuYw%VO)N zh2h+1;&%%Fp;vT|Bc+emmVG)^6dWujrd!nDK9XP&Yfk+JSkD-m`#WpyA-@14z)Rlo z;2`HQZO~>IEu|80Yx!fx60&L9S?dt|-8xRM_?|IZ=4O{I?BB^T^>?I}70y~C+Zn+36uW8?`}eKIO47+R8}?%E_gXr>l1ctFlVRzfB!-;Y^JhIQm7k?_Q{8 z&N!}q^@p}Ah5UEJI*Q9|=KIpV*<00+K^JUE9%B7{BHG);``(Hkl z{Lq4|BKKa>cp{%8n}#MlIXfP?Uz@XJ5Oga`i=D{E@`w%2Ymm;Y(7_)LCCTYIqY(+;Tj6rh~GPS z6pt!mv~S!?o}=CbHCl}%wJWTA_8ugkM{9pLl{=EoO4Prs4(zQG$uXE4(U?co$|<5P z&#!Y7+!+wyuzS_%^|4oX<8JRM0JyFTBboU`M(Ot(pX`$CA1H01pTx&y2`m$g4(BCM!i$W8$MTZ1GS9W$iBKbdxJHz{9C zect@;H}+pr#fwYWV7 zAc5muqj`aLt4fgZCaJ0dc;BZ*6~U}@gpO0Ez<(~c{_CY}>tn2t_k@1Zy^bTwhLG0# zl6-7pTGyub4^+NCIpyJmMW46laK}z-P zqPP5fcK+UFdh>2D-LfzV+*kV0A+JRmxuyn%rdp&OVG@+8(V{LhQNCAOa*n3&nyz^Z z>_g_;BJtkC0=Dr<4DAKee4NCc5AULuL_F^}z^85=%3N06?JB%DN^X+EOjjWx2uE(! z5x#$R*Bn)UJ&5%mbU(Sg(ELN8tRG(|N*}5HFkA_6vAI|xjGkYfn~c3fu)1dtM9P6% z@43Y<-Xp?N+EK~gFYMdt2s46oGD5X8`s*<}A(*-Vc1XaFf>B1is!CYPjhU9Qc>isH zBd)$`c$D))Ks2t0B1{l=BulnSJR7Dft7&k1n!$>n8(Uxai=6;FiP(Xhn7xY-9{+f$ zZ2d%NCvN9xR%rbTu-B?ZqTh5R4k-D=E8(l(r!6+PlGE_eSv?=&0C?;oii*0R4iY_>-}mvT8267n@8i#8P#EB z2>7M5ONFsMrkBDd=ZHjZu8B;1`x4+JcX3Jv|rMv0sLMJYS6mr$qE8AHP@2 zeAAJ_@(H-HN^q&AZ-=NjOMTueb=KRj%5|%b?t{JeN>E{C?2oAYe_b-j^y2q|QWN|&w{Wf_m<$cY!OW0fSkB>yOPJ^2ka?a&Ou zPJhONwXP72;V2ixsIbkdvD|P-*bX_bC~;VDLC?q$zVOjN^d;GO)n0w41sv4zZAo?g zdRB?1{?#l=^Wy|C09kjNel^QrwUXYF3~q`}{ViE4HCx=oStTP;S~;o6;HbpUqd-&0 z_--~$oin9qpg|MP4onr*`0S7HrHnIIR6w7lxNc0Xo=!d%GAA8Pcw9~9s9cs+ZG>HN zFz;qiP}>h0P_k!sQdn^VD1TYyYaW^W@pqoDM@s5O&dMMEo=na_{YwOi~{qP%hXR>1~&$^1=#^dS5Z~5p_~#8?vZ|qP!&B3(bpF7>0?=B1&%V} z2155(i90orpMZCt1I`~0$DiT&>gjoDDB&Dcq%_>;j^jWKKMZV&Zkh^wj zEL)R2r@5JQIhJ!>7JW-de9`7Zb3B&)H%N~;ZYVBiok@HPcSILMRdk#@(Zp4Yy;VE2 zrJBZlEc6A7NNghDw2#hxd%Q=~r&^EfX7q!2lQy;$gIay4bH|!gJ*{MUN_}JqPq=|d zFz9bb?$3^0luEZ&HtQBSWmo=?lhW%D4KYrUE|QHB&fRW3*0M)IW=7>l(1$ZVn&IX&Fxi(h z#g%2e70>*PFU<$LPbTvWgh+Ac9}Tvo|H@$s?g)?832?T{_zGC>?lLlLwzK6zskfr8 zHMYSUTD!Hef~IiN^kCZzh)%|~(uCU?_Q0u!wJW?Fe?hQoI>&0-SN40|q=#UeQOueh zWr0lyI$76|@`tYWNZtrJVCM)okHT_CVOCPaM|~T{1Pc8aXu)d`s>~v|7ezf2bu#cz z!wlwCk#WzU(!9sBjk~Ne7x%6~ju$ zsvPl7U&|;B-}A5zTtQTIYC+Ge*mMKp8Quuo;Jn4Uox~bRE-R@ASNdOL5yQ3(>bbDt zWvu2o;~It(ePt-TCHuVn#^%iw@JzL{$v}z4w?;ksZ)WkQI`{5-2D9Q3O}zVV+JdiB z&y4#4a0;d23lD?TJLr4=Nk}+7o1@>Fw~8`Z=|^GN4M#yihHlsnMxj8l@9xi2EijADcj*Y}#rgXu)QCqSjjFtZ)?BcPafM|3YPywP&HH zaVp=m=i@P(`8v3i{GWSUo0jI0NUKc-l>u(~abTVqAl-C!cB(J9R4JbeMAl`Na4tG$ zERA7mS7&SZQMIuzY`_M&#i7$}?{0qVtb(R6bAj+1jyF=*~E!RwX z$JY>QZPwvN0k^E?wp8)DVnB+cTIBwC{T>!heBr3gkCIfJ25sL5}c(iH1VL zhC%w8$Pb$W1t)}>kR^wN3R6@pjt7r~TUl4%(Ad=6(%RPE(b?7A)7#fSFgP?kk_Zhw zJU%fvHQhfu*SoOTy}Z)7w%)$E)w;9WynoPmbXD&D7bM8p(=g29N0IGuN&r3>Q=VX&YODH$ah8P%tf zpL$YI06qo$l<`x;Pd)#qR{z&+cnG-))c+RH{<_bJad?Dv&a3XuuO1sF$5EP*$a&!4 zX2PD&chdM+rdC%2F<8_4#wSPR#`q6Yj{9bPefe()NCmkI84~c=$sNUVM-_zoCN#QT6S1CGyqy5MsZyS z5CsDUv9q7I0HtYQbZmTLa%y^Jc5Z%QacOyFb!~lPb8CBNcW?jT@aXvD^z8iN^6L8M z&F$U&!{gKQ%j>V-Z-3rD{{DkN!J?2zHxv$rBH_^MPc#$_M`BXR=1MmfkH!+P+wM#> zmW(Hoi^Y)0G?h+*Xw{Ue^e3CjrZZU0rgCMPrJ!I594SA)34=%TQR!jOg`H_tq9qeW z<*Qaqf-00tnB!$zFNdl$@=VjVoEWqs45=dW{@_AsGy&#N!vBDnf-wKTI)wVHLlpQ{ zn2Jvm1O|;RMKx$w}Clzz!e>GL)9eTfKMImjcOC%cU$zt818fx$w&vgTUt} zm%BHgmpWoB5VpVn5a!Wn<7Rxkb$NgL*w)q-CToj?grcb_Gkg0ameAzu>zklyTUAvJ z0;SK*ErJ7U3|(t9HMNa3vnQ%+Hb-(m@=jSHjp{8|6&nvNOV^)m|L$NwKM8Csn`mii z3(jY_h37wsz!;=qS0BdtLvnu zW~_Vf!AU-~GTgAHrXwS#=HUKlW~gy)?h({5UYq7Q&{BARd6WaLIhb1!j4Ehb0y&4}Rb^DRw~o}> zq>g|C?V6gFd^#tWnwr2JqertXbN6c&Kz`5E_R86ljv8=AN2gAFW0RBf#^7L}P2lGJ zQR8is7r6UJY2)1evA1T}^3{q>kcYHOQ=Dfa2(+|$zi_`l&;(LA=&c#a@d}gm{PcQ! zLkrL%Ce<^2?s}mKlnMeh-YqRT0pw#W_@xY^MN9V&dI!cg7Qo;|6;N}>{FzQ{=@KY) zWaV7Vrltqn4{q;>k^-s)_B%B;0 zi8P4bV5$YYT!HEN7$)0VwOXy+Y`Z(vTD@LxJj|TNr%|)nY`t7%Fx^(W-R^We1<=#1 z+wJyxy4sy?uix+YxLkvm?`Sw2j>2IuoZ)FW7)zp(%a`wLI-Sm>K_ScSY(Aea6pJNO z=sLBGDO0O9ob778UXM^JiBRZnyV>q=y{@D4eZAcu2u1x*@x$G5ZWP2|G}qJl)H+@u zSD@J2^>WRlWVS!o+x_eAfD;u$Ak5YC_H?ma9m#|z{PuExJYAp!xl;^2zFXg)@9&2| z^jZ-Qg5bVd9|V6#jyecI>vX0Rn$8ltP?Zoq(RURkszg`?C3M0^+B#D2uIZ2lO20lrV=ej%rDNE9w zrmAb&d`^3@1fQnsd%S5&8b;8aWtykkoMl;;gU_<<+b+*?oW|(RbCqnxX>w0aJ#nY<8^$2?*EKC`TNPDpQ)^Ym-Dg+V^#ceDKO07}W9%B;USyM-Cb+IY zGfE^GZdzo?-tF@9+ol+sS3It7+7BWaZoz9F)3x~<%+<_Y*X7f<-M3@gw>|eu4353O z_p0lAKhC!A`u-uH-48&%GBymt{a52OghuuAe&`D~+QSI87RkdXu9>~_7>VQ0#xZhF zlE-n%4Ee`NstWt2DcbshP&P3wknqJzh#HK_J=)2?Fnb^FKo?(2@z zGLz@7*M4pLE;SY8mvY6^R~4wWpr^d{X*tKU+m$%(+uz4YfjM;TT3_-A2^peAp2}BlI7p;lMI%VlNeNG@5}W0DyH>8 z7M8$|XLh0fzc2gsf&V^^?;!sm*Z)Bw(hB>G&QOLwrM_-taKb#!d7s4=!qG?%qR>lQ zj_dsQjsg`vZGd9jb(H}xB|U_leXr*|L?-cdqL0CgRTm@91R7RajBw2}nyB|Ksow@*J8RV&mi#KpTRchCk9WI3L6vvWHwDJxZ_pphk}i^%&CtvmA~RMlrIE zH!eNKmaU?yQ=>l%=NT^KCmSP%ZHf~tEycU$oZvA-MfS^UT<~f!(eL9Bn%b0K06gy| zp$xnBfhpbafaJFiECJBSOv(-+`&ZBn{YO9tC8W=U!qS3EKt(4hmtuhc0}e)ZV8uj% z3YMyb3!*>9oz_7KN`titrt{=&!KIH$HK!BBMLCe1$!j97+d)H7RL0ccVoZmH9%MLf zow59&t9J1G%7+Vl}9P;^_$WO+_~jJmaI0B zc)r_VCF9@JS%+6TBsgcw>?`jizbX2>v(F`1T%k+Bm2NVOt!3)>;Q8Z~mXdbBgpjw4 zdZ7hYrf5urxUZ-Rx%XWryfavA-3Bx7h_(bOiC$gp3ZRbBD#IZ?#C6z#Q|}R7V2f>| z?u){ZneI-0vqLK)9HV9l<6iw{pQhtEr1bcEIY|QD9&})%(RF_St8o)Aza1tMiZ!Vw zj1@}Ym&#Z3ZCQ=66+F^Fuh3=wTE_#lXU>yOZph{^EykM=%8*LV{`xftSLIrlL07p6 z(wSBTGdUz*(S@_V#AObg1RHyGfmUFQTWfo-jlA`?&&XCfVf}B1;es@FAJgj*4=uX| zeRl-OIODK=6O{n(+n&j61`D5nO|k54i5gF-OaFTA?QX*+vhfZh4Qy{&`lKGVc&Xnv zOLad{sgG^d>A4oJs*Ph*I&RyN))khZ!nT=@Q~?9MI(5d}HKi81T2QNu_5s>5TB9)J zb=2|I*$HW#ko-HE69;UL!2{z;wnLo9*~K`!9<|^do^h$629W%=Q5%fR1dJq(_XOA& zss1WQ$&31j(#OFwQ?wfH7=vE&PXTmTn=JY>)<_ldFHIy|Gv*>-{sP^dFJYaK(l<^J z%BFqk1f@dEE_Sw%km!Z+(Dvx8)2Z*spm>hv2TYw|A#6)-B!UBC6rr11d= zmq(S%jiXCWYb#~>lrEa_al64mx=>@Y!L-;Rmv1O|26<#qCg&2DJGX1oCv+Sx<2ctk z&DCq_n%T}mXfg(l?em9W6@l^Fii%Xg%JMalIxM?uZ=J2KIWp;{PT5&Oxu>=jQl!T9 z)*VH$?vgu3>45O+b!*gtC0Bv=f{bn>5g>svS)I$2?3RuP>FbII1DN3j&ol&?1PRWn z+@oaL>4MLXee);xvNDm?G1$9`wzUctX9^P^_Lb)_E#^N;;O65}R;K_2fri8VkDA2B zdpY?nyNDp#EJ2MvJyW3fRCBk6dwcYNMR6ouU(y=@WhiG}wb z6yMnHDQyi0dm~c!P-*@%Sa6q!AiqUH0m2fsphD3!9bS4&FZoSNP3jjZl_&uZZ$t3jFkdcWzk#Y;aWX% zkgLC_pndYsuoqKMY*OGKcBQ7#o{yYOy_;!-?6N}7isZoP3NLJ|KsJ0V-86UjjzIm@ zKvZX)tVm0wS6iI)ApUc&X7^xWE(_+>fazBKopx^rPZ(TUKFYK0`LuQmz$2l@=4NTf{6!UmN`U3yHFSt9~L8dK6U z06sZDC_~PG7SDOZ%5}pElB&}@V$XgWVb2NsI_}Px77zjH2xHTVI*BxWeT{e$w_(d< zj;FOqv<`YSw{ad-y-L+7K=Nd#j&W^|h$aXKy9nSPQ(cn6^y$zJQu~p75ffPv@JBo{ z*~;rQGIlpSQ2&=!l(wePsers!*dd-Kt`oX?8?!KyAk)S783NSLvBDaT0KPJoRj+tR zTKs>;a$jCt?Yg%O%qiw6(PRNMSqG->|hEZltJm+^k8R+favI=nqxk>c%! z(ZqsRrDT9nS~3!0)S*@q-kW_0MF?zBWTi*M9&MyO{B(6*)sSG5O{tt7ORcrm=zJ~RSx?OHjPyILpn)iTxU8I2%Vcw8C}6aIU3$_; z8Vx2m_k1n4u0r0(n`H4a=MK-VPuhdvEKd!Bkk3VEl?$U#5@nw|WIT!#4AqdaGuv|&YQX+k5DOEHn&P8WC%Nf zg|9|1r?RhniT$7F47az0jkF@9Y;P*r;x62x6q(%ONLjXvOcfn}L2{evp+caGHYK6H zzfOp=gt1CUV#x@V$6C%oS)Ou6IJivKM%!_2k{Q*ebS0wnlZyiPTS-aFR5T(|)HCLf zH;FX2kHEQ))*nxuDla!`(0>}iC99FTl4%xG?iwh5Knhzn+t7wiS4MARvJMMcW=+0%p;=wA!Wi&8@&pW(z=m~UVmx4{D2EH6tRn}KzD<1?gT9oV0h zN*gXkMQ5;4d|^H)w&a^hR=SaUQ3_itFvaI|?3flrF(nhvvQA&CffCgnSyk-WLHTV} zJMgNIHrx5AgbAO7pjNF`-C(9E-$O3-rL3^C)Ew(J=QU9>D(H$29>agX6E$f?Q74ly zyxml$D!fn<5!+l&eUfB}DtBx!VYPDGx-g-o%fkVA{aJ3zuR8P{6&F>QYlMnJnO@|` zP=8;wRxT^fG#ik;8!pcU_fE{yvpp>y+!aM#Qg8 zC8t3qlc`5hsTzdF7{qbuk!5!fI*ZC?dE5qgat*bv(n9LWY%*DmT8|XfGzF*M(3G2@ zkzfT?YFz-5)#6p;e@RNSK2AUpl#V}DYTK5YcGl9FEmyc%_-kl?5mgo5W0ipp8&GI4 z7sZ#Z+H)MRvcFyH;Zr|>$XB#Mo^)1=%)|5P~t$w6M!S-G@GtyUVTbZxr&Q5Nf6QYbxY-RzK+?UU`L{Q{SglT_Q?H1E+Arq#6i6+{cn8lmmVv@6iUPvg}DBinQl zAa(ocnwoFdoLo4I5xZVNR@!}*LTx>oP{w-ADOy{7th-ifYFbK=r&_Optry+QOcxrD zs(l;oeJ#kX1<38GGPTpC#@=)i_*Kl!_^IVI-?pk~Yny7Lk7{EH>*Uz$hKcH1Hp@^g z1_@}DqN}YxdGg(&soZk)1T~p>(`9KFWmFNEnzo%0^aR7(sR7oY$(5em>T>p)_5rVw zh2H@U+xe_OIbz?`Z~7zOyDQ+QVy~i;!gVX2wT9FX`eVC#B(5uMQB17yQI8FD!rc)?)>Mz*c`%!H^rk?IR{QXa7P@38WZ>n$C z^tVf$cw29IvD7?wFb84&^o;v$itd%VoJ6JWB{tlDw5jSqU3=Z`!t3b(+4`0bV?d7$ z@Iz?<;N0V#LsQw*)ibBEGtEipsKPk(Qy@x0L*(A$OLsD zqmm4KEf|IxnX)ZdQZD~hQYfq?5B#@81QLSVk4|+XuFO$K`?!R>gkpHgg!+pgd|)Kp zUCZ=UKlNctnadJ=O9&*ojWhC5p*$IqjmS8>Au!O2hPo1LAXp3B(YGqx# zXB~4;U1|8ts-CNOj!1r24btUI)q<*R=gF~343ka$*XjD7HCAiznGmYP)`!h?o## z+Vm3Ja5>u?4Vib9mlSDE)A-smCB7$p8nJZ6uWW}pK-0E6fA09SHkrIlSVW7nt;!Ol z6#T!jS(J|oQV{>i&jmqqefouQ3Y(Noyo?>XtIB=9h{PG}ym|Oa#x+Y5i@`j}-h0iw zBFlGi4c_R7v-IqMbNhe+ix5&pfclKYxqHkC-n&{C(epXY1`FT+jmkXd*!o?7_-$k? z3jn$mYVggP)hkr9S=o3Sa};Q*zS&L#?4{F+sFGO&zc-f-MZS~C$N8#*tEFZn7NR;1 zaU0E;G0@{%htYtncX|0%QYFVcOttOk$WYEl6-blG?QS;SvXXhlF$}J=12{$V$#fCQ zIT2$fH>8H-%3VEoS)9~0*3cuXlWI=XYu5{cXxAfJXb)}Rpt{2zOyNSQm7F+<=scWx z-cr&=&W``Of41ahO+9l}7T_4DT=BNL36Z$)l#EIVabX9!Fr{u3wytKwd5q zJw0BbbR=k=T3WT`vD=h2$0_p8R)#8S1RCn_){b!e(R8Jp*$2!DVWD+RqF|ly$vyD5 z>!|fEyIz*mv7G6x3i1C=YS>Iu2O+Ia49fx-&iUc#ezvh;h`S55QY z2?71%%d+v~(X7=ZX<*`cE1=^Jr#-UwMk4o6a_$q1?tLHkR~96Ke^H9R_}r5CPl!}e;`b25_hE$79;OVM zx40rUX|}z%2Od?cMy%xbeZ#5GfHmzWd86E0XoW}7)28}hE7YNXxs7RDq%W^--&4w% ztWi!!j|BOUPxm>_JiO(Z9M{QVp7*6Z{LF9oPWG4-`}b!4^OY~4zi(x8zcY+)<^%uc zWH6(-RtP!*)DAlG|pKd+c z(d$>R0D^`kTh{APvuV|?4J)Py*P>Q`YF#R~BvZRi^9H3#_wL?|eE;5^`p_@XzJ!qi z4&1nKRmEHx!+pH>@Z!ivu}+pe*m2~`p5tCMnpi1k%%4kB?s+gXVxp)850(E5Shiu! zxo4k#dYkfZ;K79tCtm#VXyeIuCuAFTu7Kvv{YIx=y`$T#qPONXomx3*)!(zju8jBf zaq;2n2KW73J$cXV%{P{hemzw1zD-Zw&)Yxz%sBc8xA!Out+Vm~q>VuC&YP{i)cT_@ zJ_;waP(lnV%VBXPwFakGw~$X+x{C_iMhQ7tjVfDA^jjt1>I9ou>(W14L|UNOmDU2l-yCb?sjZ2MFu_8OS>f(EbvP2dJHnlEvsbmM=}vY z;e;Dp;POES#q{wv{eb&XN-U`i6HGkw)Duq{}-tQ)~Xt5E+$zsfN=&gP8G zK?n&P63RL&4X;m0flRPI#xAqU(J)bqlulA1?5;L12|KY&JNa`{w@KZT5IF?f12w#m zT+$T91hxF{)z9QxmAyTSHTGC!`2@7cWStuHxJ1tqDq3m*z|Oy00o~NeFTcz-)A^eG zlhQ7mEp}8kx%{?UUdc5vy(lMbRJqA)@=44`)%_JoQfV!1r+=-zcH^2Wn*ERQQtdBi-Oh56x zTB>Iu`}ok0Zxn-oG{8{fiYwFrBa$}W)md(>c%Im2V5t^)!;_sJZ|10%mU{5Mu?1So z%?^*y%A%Ei(r~{^&KhMnwG~#?C+&V&?#Vm%{PV1D)BN+W9~v95vJ17NtScfRK<1V2 z^Xu}M1J`qO$0P5JU(RobwRWL%4_^1Kdma~W$_bx4=ufe<8h8V}7JhGl^^Oz1iy3}+ zd+oc={(J7h-+9^Bj12$$cAvFt?4UeO{e36`P`YVUZJ$2Y$8kp7a>WtsmuI>Juy4b< zl%=+2KjevvSj00P^;AQ$ob`@z1S8<{x&=4}W)OkmB4GdF_UAMUf=+}Z)K~Xnx4fS< z%POU74EqT6J{Ydxbx(6y4LkU_PW3N=kvm|y@+LT@VUKsvOWxm%7(wgx4{}6vp2UVX zryUxHRf!XhY$|v-+$qnANF-qwz4%4_rAvWbWFd1l_8J(b5ddCDK=rtIx6DKljAL9A z*Yboe+~rY=Vq6*D2B<_LR`Gs8+@kdEn8G&#v4ki*VG=b6v)y?Qed43!BrPdPOlEI< z#UorLF)20~y^vZoQezsgFvCEeN|6zq5(e{^!6-s;fvn=A0~^^mTSAhM@fsQ+S;ndF z?C?m5tRpUW$vwxNkf1t zGK(IJ9+L1@KaXbelAh%0PJOCVpyqUQwL@M{O=!j!AqJd3u_z3`fJ*$alY@3_Cpz`^ z%8w!xa}T7aP2ET{CjRu8DwPwmaGJX*!RtIlP3dy*NKgu1m2O)V*glUKR*2@+nmyzs zFty4kq*^CMOEq0n--iaf(hIArgp>|}*317-GP0|YeA7uEs#cBu)sK`_7$TvG*0!e8 zp?i#)K@}=cdWNvFr!^Wk_4-=a29%SF{h~ynb4H;QLASf*ZEt=1Ti^zlx2sFk7wUIV zdn&N9A&sqPe<#_RmQ|!wHL2z{Tg)OVHe$2=;brmZ+{Dt6rGkVmKMPvJp#IdT>s4=i z(`(tqQCD~DT^J~n8cy7XN4WdtZ+~@5fNJUCs!|2kYO@R1mdcj4cMY!rm1wed;T5cx zwCaMj>(?debGr>RW`$YXq+w3DRg7KbbxT`Sufn&vD>fEiRW_fQN_V2(oDgA~m4<3T zLc8YlFd^URVg?gWn)2G@9PxVIzY_mB!VZ>{UynT2nU?g!;}tI*kIY;k#`w7`=5m)a zI?NT@_HlN=m1RO<@))1+KuiryY)w85gzY+RGsX(gMw z(L*)soflZ;LJRt+p6)ZKQ=3vOLwMCHoUE69eJ<_|5yiYlNCJdlY-Ar>*~o@L0$}iL z7_^}c$WC?w4sdO3XItCb=61H1eQalg8{7#Xce%}dZgi(x-RedI7{E~mc$a|?E1>rZ zgi(fiub>RW$TuP44R3loo814+7I?u4PH=IPJK@v@ce9(lY=aM6;0K?$#3O!jiVGa# zFxdFRmHlysD_r6ZpZLN_e)5r59OWz5xUm<0Y>!u4+#qLp##4@Pk%wI6H{ZF=U!L=Z z^ZemH7x~YLPVI~*UE(IUc+GeIY?)X4=~K^m&@tY0syiD7OD<5H={&tBV^_^p7NB>h zJjLEwZC!x=b=yNnR)#v=;bSoN80ap9Xit0Hd*^%K`A&Dg2VU@CaQDCEP49c-yWa5T z_X_-N_<##u@{^~0K(T0Q)aM z{e5tR`l~kC_n~mKnHw4^b3I_0D%!`zYh2S1^hk{_y7uoKo9)D z2IK+`tUwTSKoTeb96-MfM8N&?fbtW;3@kwhl)w&@LG#HY(qC}KsAuR0GvbmLqH^;!vN%j0=NPPJU|xQzZ5WmHylJl41f?| zff`&t9bCWw_`yPa#P@SVNW8%hD1aC&zZLw$K-54CWW-54ze7w!58OZ%z{C;!zD4B3 zL?lI16h#jtH@nD{DV(k&JTfJWGA%-lC#*tSI}=?olM|SUfhwj=*BwazdM}6q0|5@C;&8IKtHs{oovboL_~p9!F()7r>sgs zlt2nt0uDe&@DqWlEWZQXM6dkEbQFOJj7kSgNO%0o^ixYhghht@0H0_cso^D)+(Pnr z!i2iQEmH`+JjtN=Nb-3PqFJsi478XEJ7ru<>AOqv%Dq>sNt#4MGz@?yC_}5PN+>9R zB*;HH)IXu@M$p8}_FF-w%*?7}M+;<2)ND-|ECCL{0o5!&e=J8BT)^6t$JzWqw?x0( zY|H-wD9AxvNQG#PBAlx?VzUAG%T3xd<_xa^5X?yWCFo>K>+~`w>oPMWO`0@A?CU<) z+{tUi0@1X?04z!kU;%Jc$^zg@_8Uk3bI%P_K-k>B6#TwA;6FGpMf&6b`vkxI+`s)a zzX1KuuI$82EP&JeJ_+PM6$r@EWXrK+#QDsC1YOYYgU=RZzX}yW{=?7$MZxle%@oLh z{EWd6wZ{qNLF zD2Or@fH572d!fiQITM0t0lVOcI(>*YWmCVbNU7M4p62=kl9X@thgJb;`G&v-n5{hL3}6hLm&#w6IkUTwb<6i)T4&p%|!`HTe? z!~qyZzyWPU43t&`q*nE`)~@W0vun5|UG};sR3Xn96oal(85n7@>31GZ|q4f%k zSX3g^%cGUTsU--E$kdzA%b5jQr`6i4{l%mGMKE+Tm)x`KtlNH?m9aI|Ore1!NSdJ- z)ZP=rF$B+D-A?bkOkdqeFz`wA3_$b5!%AEM224_e>{kFSfE=`dB0WG5h=LkCQ3}=E z8Z}4E^;{AJT?Rb@ri9JR1%WLXgw(a%0Ps+B^url_QMNQ$*S*gMjlus0MaTNYQ1Igd z3vk_ngim`s#MR}18iY+ukc1u_M<&qM0gY08+}+sS!Ah*%{kvVT6w&WH!PAV=4CR37 zDdpwpb?2q|1t3ZMju7=VySQ%FB*C!MU(&VYd(>QJ9Y<3xzi}MU0tP?v_08PXTuXMu zOeW<`X1`eez5_&H^!3DXtU>a1KeepnRwTh&{$B4*;QXaciFH!pj8f};=Kht~QU2ch z+-37~Su-tDmbe#+;0TPkVQ{gCH2susZc_=y2s-uKGbsft6cC_D=c*9rBQ}XRwTLw? zAU8!?I*r;dUR0z_h%c5?ByL&(u!x)`3c;j^k9<^wrsw~uuxE-yV~XV9a25&DQq?P> zzUpdKS`BHCUNopcfnXTElrUAf;9Ig46OQOTmX6?8O;v@6#yO5-#I0j_Jb?Jag2qJx zpa$ym)Bq$Pg93m8@|#?aT|aGRU$HFScD!a-9$l{#MX3&7N#;ZZ9LMzi&8}A8BTeh9*3o6g)=MPcLw;89dsy{T zS+0g^yawyN4rHe$W%3Q+vS!4Gg=|Jt>krsOx~9qiVBl^}2zidnoq&mj28z%A33-+Z z-XQ*LH#2t}l|jZoDjGGFD9Fc8R^HJuWy2z!2@>W9i~+|!&4rj^>WI>00W*_Zv zO777L@9)%I=C>Yf0QT?<@9`@IzusI?3ui$T{m}B`W}o#5hM-`=P(tH`4TgB`h429> z2S(fTTIyDa+8)#aiSi7#?Gw0iB^+C?$l3op1&bJn)Ze~my;Sqpwqlr00wymHOWp16 zo{BN|0gS#2CEUo3&}a!ZVgPbAkkW2LCocw}V#BZjDb(kokWNg+TET@2!`(ic)YbNO z?`k}NDA+$TNCKfI>ioMyBvl;=9QA3|?C`Y4hdo z(}7rGFSm<6Z(1_%h|xxFG?q?Kb&UUmf9*c)JvdhrzMb=*7}KPIbVbi|efM{R9tl9N zXaM;5Q+=ek4au2ad68!Mk)AcrPHvMpVbdOYz;N^giEVjzph&Cf^_FAoLv>A$$7|d_ zEMNgpCu$_{0XiVk0$71ee?QjcWU=1s4;RFDLPhz5i;y$ML_9 z*mM_8|5bYfc6_$nZ}rR165Z@J0_}Nkh@UXdC)Z%s#^LBD4BsB@*wzS+Fo@CD{E!cL z&7k)?Z~cU@2;62)+CPX}9P|IsR}9#9=z(tNdtUwGbYLtOc}0!+xeT_sZOlV&et`P? zKgVH;E()9n3fKpE&#_gYxAaSo`k|-B1BgRn=RZ3TdI&s04Bz%aUe>Pf<+azqS$}`> z{puN~aK--mT;@<{hkyIGM^y%h00IXREGV#pg#sQ5k|>}efQSziG7JoH#G$|v98#Dt zSdj&Y5fCj*JV=rv!G;S1G{jL*MuCtX1-`&&u;If12uscsak8gGlmSApu(?yHK$S@g zxFiTu=1h%HX%^rapk_{!JdXIFM2SXcXi?FMzPcRAzBC5{*{* z*cFT}3KYU7BF+DV5QrBOPRqeB2|x;Gt-cCcZ~+Q79Sxmu=GUvWO2*b+y+Za{tMnZw>|}Y- zkc5B7C1Hnbt?I@rv$<_cS**tnSR7l%x`k_Or`3mTU!~DEz__^u$6L6-83$Sm0|Yy) z06bvvTV2box8Hu{5u94V-W{wO!wWl%FvJZ<{IJ9oQ+)Bn8C$F|#v6OwF~}T8JXu}p zwiU2jvEBa%fOV_w*PqG%4d~X)AB$`=&I=3R;DS9j=<@+hoH#VmMH^kAiAVDZBGXK3 zxn$EZ?TM+4JudpGjY8775=>2}0EkUgZ{1|n1-x+tq#nts>5*4v^kLL#59HM%WsBLh z(_pK)k*8&rozs+JyM0yJZ}b@z-)9{zctM0Z74_F)w|zBLQ5!C|jg|*xD$@_GU8PV^ zV>GAeOv{vF)H#ijfU1852G`0fgTU{s408v2?D_c>JAVAu3~s(E$DSPSx%2dsU(_Z6FA zH@E*s@%{f5xIh2>`~N=x)zh5;WyV${yU+G)HyM~=XJ*~|P4fbn9-jTIf)7fX(lV&Q z4RX*d2-pAt7@&ZNr0yn7(;C(U!Xq55qyw9)8VfVWB(UgYa!Gm{h(dxEKlOxdJYn1o z{pPg35##~{Ab=9+FcG{dN(K~oLmx7r02%`7PjHjk+%HdFII}E@FL#P0O&;k;V zAix4VQWKXrZXhmH)JvFF78(*Nh)~lZ+IVP?JB~nbc=MbV5As44c1|aQ9Fo`iCc3Gl zsynp{%wAR&v+_A>WT07@WeyX``%Ln8)9Du$md7txNpdpeN*T3QR>{>o&p#-G*Ruaw zX)9PpMwa)AmjS_rNw>7}G$`Zc`Iuw7O;$@Vp4?XP*mpAWkw<3|1kW?0Da~n8vzq1k zBm)(w8h_=II}D6qW^@N2?^*La3Gx{NdN2V3Bwzv(;2DH4aKs}{AdMZo=Rm?Z&wV-o zpZ>(a10Fzte)`jB02Syw30lyFa?prKRAL4yfKY`Je)dEh!CF$h`>Jic_O-wF{J{L=MgFDSF>0&uXP2kEeHhYvAG{4)Uxv|X<|bwS`Dt$n$Fbe{|@6*OID0Lze|k+XKFCFtX7*W-KkOw z#MAWb_O`zLEpV&Zyl?{HF{`v4aZ%fruI>gj?Gnr{gZmwVAZS5oRSP@QxS%E=0IqTE zYX%`8(8G4{gWgRjcqs&dBa%0zcNODk4YJ<6&a=Jo742dn>R8DZde{#b*dNkm@skLP38Y$c*3l0EzYtt zQwz7$w&UTjbYm>z8Phm50jo;_R|A(_@u!%qtQTgIuvOX0_(0V?5Ly|K0Cqay$W6F_ zK$jd>&>n5R|IMI235vlASvkEAPAot>o6ik+`O7KIZ(}El*Z>b?v7PV|1eAaXMgT*P zZT_s8^PK0>4s5pUp|Jm8teycCjF$I$ag2NGX95ZJJ4AJHiKR-`NsqPClD0IZFRf`1 zYx6NosKYFSu$<>5Ct%?j0L--W%V`aV)ss|lrenPy2b~kG1Zaa=)@o$VPGAi5q_WYv zY}XA4RInKmww?#OUo~e)g^b4LjCNK2MRu9F0TQs6q6p(P!^B>)(d@fIR~Awii94 z$lyS>(SQa^*nH&yxI3P&e)4cL9-obbHE;jj;e5B7wvzvEaZT|T;_JLN!g9` zM>>C@eEqy1KJfvtK7GSp|07D_`(uYPeHC3kMI8}@A3@+B0l=01MOGX5UtA4A)X`r6 zSQPgm-2^~jUMZCGNnrc=U$JqNcS#u8V?a38DQsp{#8hrcI#~R$&xg zVN;3Ths6{U8X*wE8Wm<*T1lA*9f0u36Y%xb4+ud$G2ih~U0%u6+eu#xUK9e_U=6CA z19(}@B_RAI;6~M54WeAn_0tB5S@h-K7|kL5eOt|)SADf$&wW?<^_&0-gg#waKD}Sh z9oErJV*c4v(}ChXvEBVaA|>XbBEBIhHlLaq#0+-g5U^q)RvX+6!~tAZ9rn`E2`XxZer4z=9U3MK`_6`4pV<{gPy`Rnz7<+*i$%&#s$yM}SA||Gw z1a@82Rn~lE--7fb*%1H{q)|paWF^KN7=54d9o|NL8_9Xp(PiY?En)=vqD8iuK-QfB z3PjqWB>jaMdGx%c&%M*`m_nS(cHcFjnQztd8hy7&Q8z>1AUxZs9T7+ZRqA=snuH4WWrS<5n&s zH@2l)z9s2NBUvumG0NpM=~`QXQ4gp^8tvspVL*hvlN+{OXFcLRs@-7?od%NM&Pj;e z;o(jm=7AvFRMH|ua$w%coqaKwVuJsdt&J3BI$a-1rdjNlCRXCgdFDtWB}G=GWPV%M z4diRupDiL{Xu{oSQq;FO77^H;P~PS{Rp$MD-(>=04eH}l4kA?EVe&rI@ z8;Ol&Q5mCb*`+fU+Wu%K5^|V!Vx#>4TIfMx7@nsUq9+!nCwrFX50<6Csi#oA69(B@ z#~D!qFaQL?01OafJThl3vZh`s-cugpJ{2bcH04Z~7xu zf{@`6gs@R)N5$mW#ohPmU)5u38Id+CaVTzYewp-`YE2hYD|_CvH|MSE$SXJsjnJDbe`Tdy56vo zUYfFH5{6|lCgXN;seAStvV!I6O{thxYrvgaH}c*#vPBs-h+bwFgshj834u|ToMVMu zmL*MOnIdK4qqHrZN96ye0Wu?|tNj6KL9nD!N+mw3X0eTttQN!pM3zKqT~bB(p zBhqSKU?7nKAP52kLI`|o*i`^KEg1}CEj$9GAJ%DMl9|ZDBMrVCLPlkcnpa{vszCr2 z5mX>W9i`fGDBGqg$(rqQYUJ2$iY{qEC zifn+TrXw&y0Is5!lbR=$N|(-BtMG!UYLRJnnkhIAt+tj^c=(=_t(6&q5Ib6JI;w>PETr$H z(V_O!XnNOSjUq1!X_2PnWB#G`2Gm6zrGUzy_--u8a^gNgYT|7mT(Mui3a+2lRZ4E| z`i&9&HmCU6U&TtI#JXsxGS~_hB7zL;q%I!+>J`g!Yy0Ns_guLu zX$KoBDv}rE0_Eh^Xyl$P`Ym7gF)-TZq#n$#KoP-=>M9sZ>Jq1_24nF7dRO=|F-4ZK z!hUd7Ccqf*ZqF+3m{Mc0zOW-ptIaN}m8NhBI~CC;?{zM%Cr2$PD{Uy7NE0?`m$qr2_EkULTvBU84|Go-bwKy-5ejV!)3sMO_GRa`Zg(fM zMs{mcQ}a|%(txy)p|)`!H*zQU4Jxt>qw;UZwwEe4P!IKM%UCr6cU*fVT+20gZ?|`c z^0g*wck5JMi}pFelV2;hdapNox3|%_t`|Ob&Pv*1k2P;^bVGOce1r8*M>J#aHh`y= zv2r);N;h`91x=SXXuCIqH@Jg8cww^+Swpwa+Vy`Y^l7m+Thq3Mi}xizcYudD@$xi^ z>347m_h&zd&_Fngx44Td_g2exT0gQ{7d2T=_HPljiCg1%$M$#k_>Tv9c02#;bTc7- z54mjt&3TviXur6VKRJ}AwuB>enxb%lyC-bVcz9p9l}9&3<2dlzwuq1UVmr4LX1SPe zbc&xeo2Pe_zd4-8d9oQcr0qDD2eqB!d6C2L&4RgWd%1U}Ihhao@PashQ+U9w`A7G) zoHx3oKl+>tfq-jTj`6cuBb^p0EYWqVIySQJrp^J5O*BFXZ5KJ?=w737eyT7|fFgFRC zJFa*7eRsQs`}wAOxxL?3s(U-Bhq}NA{6){KTmJiHG&_?!`-9z;ep1K>ohH10*`ZQ>(3%~uakP(4}7V!zU!a)L~plDsk@>F0K4m11Ppz=_PyalIV%I3=2zQB z1wUd%z}^pyJYhcZ$E~EIltguX$MgQ?f4$oCdEB4yua&u+rNCw7d+^D ze>5@sc~=+1JDAh={^LKo!*@YydS81%S+6d?dl`T4Q%LeVrt||u0D%JqVjv)aU_ylp z88#GH;ei7M4k=c&coAbpf(RNgn5YqCNRbQ^Bp4t7Wy+HRR;E;mvZYIzGilbed2{AU zoj7^+g!z*t(3d`W?j&jyDbS=imlDnCv}RMNQ>j+9dKLd`R;^pPc6DmhYgDCU!fH zZ0LC5kAsgZ5?0I^G-%ABNnNV7~hZkZhv}43r|Wy*m2HvH3hI@IC|yGRQy+7m|>` z4Kh^dzs&|JPa^jE3Lr$uA{>yy0~NZnV@($9ez^W9} zOf}uKt46u24pggb10%T&^?2>RkE z&t5-c%*O@azWT%$v-$2tQb=+Y5|&|z=?s9x zZP!H1TLOMPjN*kSKJ|fx`{T%AiGM{f;f(PGw6xPcT}@I_Q_F5UMZ@y+WlC?lRA%0K z{u$_?g$DXjuWTOrDVK&|t3ZC$szA*)7+4xbB9sV0K5r#!lZY{h_{c;EBR~+M2_S5M z2v!$U@WcZ1Y_mNYqivhuv;%~(?Fb_J$i9B9bgw@QRUErqv$IVbL4*3M06u{KR$EtY z8x9g~jvHz-NcJq;l282Hy^QdOHZWF4_wHspT>L(&T<&s%{JbD&sib>N#hcAr^=!Q~ zC`iT~BCJ`-1u{`Gh!A%OM#BaAVIu#M*JO|5`AlD1c-}{B+IKRfTeb@!WPzY>4} zHJ5mX`8Yz0OIlP!Ee%yQo^cM2W=DO_lv16O&L95%ult{W0Q6q~2{=HcMane>6kyC! zA_4jI;5~2A%+zF6AgoylTF^t8hx}$c48CqYUyI%A0?;PQU8Z1X^PGT4SHj#41al~a zR=`L|Cd>5AKVHHZ-Bu{17E8W-Ph~Azo;z5#uum>FD-DgbbwxiSExCRT#<$}Vo!i@=#VyDtaJZD(Fzp?!VPc?0uMMA5Y zDvgmKF$^DQ#*l#CB#?neao_({j&{IEoliDKTc7>@=SWIg5|f$KGgA|`3=NC#$H8hcsYNR3~ zxxk|3tbU+86mmA%QICE!XrJ85M41vaj~rk=<9Q3zaIupw&~6Qq807^0Q=$c)n@ z2wtcLHv@^#nJLs~p5oZb+(#$!jsailG0XY_Fe#*O5FX zP=x}6@-4QK8y(fmIJzl_UKD?x^dDslXi?327POre?PohnS&;T*w2@^% z2;8Ysx1cgT>X~CJnK;wo1+<4wgz8uELZiD(%|U3j=56)DR;wP>M~uNxkUV(ThP6jU zLLDer=_*g9T9sbaoSQtCtIpxhvABVyE;-+-)#b@fx|jjuTCatxHBo4sY^R0o78B}K}W37e0xBqf?+ zPupP+kCelyb?_vEmLHV%;H_;r0OnLY+nAD(gi!@*LAHog;zmxIQ3T&pg*#C2YQ#rl zyh{S8M&lbEks)j3aUa7gOn1hYsd8#zypn396ROq5KZcPs?`TE)mbJ!9HYa*dRL_R2 zQJz=aGC?OYS6mSFZ4+!a^e#`EtQ;R<%w)GJY>`EJY$Z*=Lyf-auVnditDVe-~7f|AJLPtM^lnJ z3+n$pur9kZk^mtbn!%N|H-`beS>0SX?+ae^hViXoLGwM*iB~))4=!+cBVJ~v+JI}- zasgJ!c9otU4X9=5Qvj`Z)jI5w#ulJ1k@GUW{4LkBTDT$li~*Z4)EDT{c$Z(@i{m8^ zn3VJwSl8LQ>|&*|Ks=8h(CdEmz3;UPi+Ud^?8!dA8ra*{B&IE5Mq+Aevcnc~SCd%| zB1*7`#5iWM)|VPaB3nJK&JX>19hz-wr%);uHpd1*S;&9HZU({gd)V`2WtyqQf~sMgoz03 zb%X`}y3f9D3tP&i>nH+DawrOU&`UNjZb0N-$SMi1C86REB>oKljAPyekFg+ZfecOG zC@cU;<=!fV;PkKm=Fkr75Dy(s4>2na^DPfCYb{#rEd((>E^Z+VQ4A9?z!WhgyonJX z5fUR&5-0Hy|E%!}r40Q~4G$2~+AsnA&+vL?@CuL=J!%y95CHX#@Dy+^T5&A~F)a|0 z5-ITpXVC%=%ocM|7k7~tZLyFf1!qoi--MA33(WxE5by4=Q;M+^o6#99DHH$EP!$pB z@C1M$T1*gSs}Or}5;=z(Bd3PGQ5?sS9LrHKEHVE$(G2O3|1=S@`p^xb@eJkg59bjT z?@<}^u^#ae;QS54_AM2aaVFve77MZ!WyKuDuof9{J~rq9nlK?FQX(gEBFE>kh_Na> zF(Zv}lRO0;MRDFjk?^AN8B0=APEmiDF(ydTE8rp<|`c$QYUv( z7fYg{)Da{D&%!v8qF7QNg_0Wg&Lo$TDI;yNFp^V@Vj#5fB?;0hc@j`+QV}6046)KH zzY;7-qa*-;EX&d?&k`-uQZ3h#E!)y9-x4n4QZDC`F6+`R?-DQbQZN7ak}vzxFaHuS z15+>ulQ0X@Fc0%3t8y-yKo-N&F&`5$BU3W{ECCMFGA|P|GgC7+lQTQhGd~kFLsK+I zb2DSoG+|LLWO6cBlQmn@HCuBmNmDjwlQwJ9Hg6L*b5l2WlQ-S+G!=6y8}l`XlQ@gh zIJq%4ds8`=lR2ByIiC|cqfHPJ>L^PJ`%*m-Qnte5q^vFxc8o4uiAi@9 zN~07?6QBo%)Jm@uOS2S90n{ah#I*td#pVtp=3|}kOG?iaO?R|MwUkZU)J@;?KGjoB zEp0qxWkLZ1%hFU&_jF1t6HfmWPy@r_l|t8aP$N}RCzVnO z(?10PnB4U)mSU_P=~-nN+MO#!%P1))#{*5WwwyOba3~^1p7Q@ z2X=r948U8dAPlr18Mc*NcYqDN)d0Y?T+J0-+tpp)6<*^NU4xZg>$M_O^jPy%U-wl@ zB_x6h;&?2ryih6-5srsOs6?R7U-_>4E7G(!QRQZ)J;iwqB|9Wv7;Et9CzWR52iqlm-?70wGV#Y?fAL2a~Fu zC^iq|AYC(dY15WlIaXtv7H&xvYUlP>SJrCp7H|LaRySSMMy;++U6pCVl&<`StHP{d z2Q08CRtq+kXcyOAl@?tgc3amrZY$RS=oWJw)o%5cb34~_ITLW_0!cMBQv=svtE)z= zb!-Cw^aLw$8<%mzbz|EVa?zD&w^d>-*K#wLclUI2KNom|S9trfbX5#$w$^4LKmwWv z&a6!2&M8j;2G4*t19rd>&=z(dms`acQ@0-&I{H_j^ZHd<$4jhZTJjSb-N9Et_Tm)Pp^0 zly8+Zb(~HHGj44XAk3alF&uVHAhv(OwSWI3cY6&08kRPDJN8@$SY8d-g;5k=8CZsA z*nAHa1DG{c)|Y86?N#G<{S4$Viq8RBH~KasTX`>HQTT2Bw_DY9UC&iry_bdI^@XeW zLdlngvsjDwl|!Ir0tlc+pY?%G*9x8L1Xq{&jCi*U#Ax|;*T{s1x#R&GI@_rc_C!Ej{!xN1DTU`@dZM8 zmJh3!eVLY728$Efn2$M7Gu22PLM{KA0FuSflB1bvFlt)=0f_aZ`IVVd1 zn^pNQz*&=bIec>2oD;&9OXHJ$Ignp@7P;A-R~b;`*_Y|L-4Ga=_nDt1HFN{9Z?W;2 z<4>9kx`jz2m-iT+6(XTUnUqa=CuKRE)wuxh*&<#boCA57aXFM1njqGhF7()<1>&0B z`JG{T67Bh(Sw^MBnV9vtpJQ64+Z1r&!lp0oP6^tecN&io+LtFy08=CtP8-ZWx%5VPe8E0ArYfbnjl2r0}LB5G8?Q3q60cRe2TfPPaCxnbb`~f zIv4Xs0fnyXnz0K&4Z@iMGJv8B;1rJFuOCyee_67dnyWE_n^i!Tt$MayIjpf-B$(Q% zb33$qQI>C;-KHD2=`My-Tf4X0L2p__WAU~BB({0lt_z?Wgu9|Qd#DWokoP#Ny*j-m zJEPq@sL}hBgZZ*2yR4%+kf~d~U3wr|8mtAJvMYkWJ;19kdm#9mudmy=xf-+!9J)0j zvIl~>yBfd)fWS}r!3)5@EkeKl6@s$|8^6Q4q@TMYa@nxQdXVKAxwko#Km4jS*|Q&- z#uH++NnD|ufVUewP+*$7gIvhtlpulACBwTk#(SsB+qio>z{A-C+S{Q?y21q_sbd_s zf19$od7&p;mpl2R(V8H$az+ZX8D`Kl}d#e|_p@(~{-vGV)`?_bmo4NVJFMJ@# z+`rS@#V>-)HyO->dZ@Qtvjc$7>zpC%IjuW<77Crt!`!5gn$amD(Fa1yRe;M)0KQjQ zYKI)uL)|LAZG5;He3(VR7I6E@rTWUvd90~B1bVyxqJ5P`fDFEz)-(FUJ$|qy8w*g} zz@>bZLHon`o8v>C-5H#onft`!ThFf?p0AvqS$x5zT*f`Q&@Eo%uY2N^o8&`V=P4q> zA$rW`9G)|N)&oF~qy5k|9NU3=AaEX*58lclo!wi_i!K)nKC48yT z+oQ)it1sNT;XdDgUGW*d%h8*j8(+Z}f}8t3qiH$sW&FfH{KP;1*iHJw$2#&e+M7W^ z(E|YACtAQ!KlAH;7!qUuhYt!FW_&3kAw-A^8?qFr0^>)HFAZ)ic@ksHnKWJgEI@Fg%$g(%n1m^_ zK+Xi^09d_>HLKRGT)TSx3O20Rv1H4dJ&QK2+O=%kx_t{buH3nF>)O4GH*bIgdkgaI z3;3_#zdZ{ZK8!ekfyIm)J2tT7apTC2DMz-v`0|p?nI$t$4BGI~oGT%Ea41mZ&eR5F z%#^qqso|llb%Lyo@u-S=?R0wumLV4QdM^;g(Y5D_$< zeKpDdS0G0T;F4E_5>7~Ag%)0jVTKxR$YF;bT4<19e)%P0Uk5Z%*a|AH$YP5wzQ|%> zo;_xS5ds-8#baK0F-49B?D)kOP+S286g5^+MUh1cROA+0%xD09QbzY%eyLHHUTocc zN8odYHDz5vUJ?i3MF|3RTvTBeq+3T|D#sjwiOKNLfY=3arc*)jm)?KIg-0cTpByM= zR0BR`UY&ii`5Izl`gzftLK$iwqM?mf(|LC?3Ll>Jk>_7em}Y?7p(jcD5|;}}u*-+8 zz6xusvd&6tt+w8ZYgi+i$ZLor9za+|Fb+#>i!wsVSdBOO*w~Jo84yJjP<-K}lSfwn z;pCFkRtx2nQ;t>;mnjTdKuub<*65=zp-Nv$WCmCoQ5K#1uA6Eqr)a2$8E9vBBcaEW zrg8@Qr@IX)I@54@5{0P1i}E&8fT9NHFQ;W5bgyl8qA6u;Pw}a*l^65t)DlsJoRP;P zEIiXw?5c#G2it&=Yt1&_jC0O9@62=0W(DS}i6sIXEJiANd)U!EA)BlbMGC2-7tco9 z;~Ji=QKJ)1Sj{xj_<@UYb>baiFrCfCCb3ExtJf*p!u7#n~Jd+f5$F5=KZ50>HzUgv%+(=}%MMbu09NHw#MVQqvHQ82yO?x2A! zGRKp1*(a6{Yo1(2SX!EB-UbQ$)b>H)J@Dxchy0U!)Ng$K_cvj#op*s-T=ALRVcEA~ z=aZTD3%iNGxcQw9f1&G1`l6FRh)IV}0Wuqb1eU-3bUUDll4!gWq6=mC5+F_?c~L+Tl5#jT9vY8E$#Vh_ zO(_~8x-EO2Dq9i-q@X8KvNdsJSWxyxlr0srW#dy~l_0mo=!v8$X>(?|GJs4(ng?L^ z(bpRbr_F*`&o==IK_kTGIXfB0ft4Cx26?m0wi#$Rj+{x~7}w3Z*{P9yv)l{f*|^iC z5h5#C-6s!<(1a>L{*RB;YSV)%5bI_ZYb_4ss6EG1`0hFVD9L=Zh!AWxXG`i7H*m8S(9XTxcthm zwgYTW2J1ZZDu#wrh-{CXq*xs;rm;1u5iKK&(#h&~zx?g5e_^P&{|b1(1cqDZ3XI?Y zBp?CdZLotM3}Nr~6{596(Rop6Q4C|0hP7NwkFIcq_{I`R^)Mbk|xu!KF?Wm*km8B0moZ=cwdCF9l z>-?&WWfs3U%P_n#kG~A&FpK$Cd*MrY$ve>i3>j%fX5K3CYXBQ6S!y74@{CT3EH3ML z&k5c#pZ~018UuPtULLcd4~^(VfH%C)TEx0pG$3+LMwXJtZucdy)xbs{gp(4&2aCK^=1@XT1m0&;hig;XH*M&*zWTl zv5)<|vJMQ{8Bz7CpAGG3hZ!)lp0I_59O?9Cd%ch8kw8q^UR^WB+XY~3a&zEK#pZdhmrWJ!6)j zY{fTz^^NzzL#~hp%gcWDv@dW1V8Hp@>wfoXfhgaFCVFk(+Vq9rLIJSA3Dzs0@kn6F z6(nE#=u3b4h`~JXuaEuQ^Bd@YS99RmOnTxI{_t2x!t$}ef#qv}IZ>d#``-`$W-~bZ z^sm3}8$Dhi2Y+{97r)VMQ~=4Rd~x#s0n3L35Al8Rr+^C>ch+Zr4+w!9mw#sl7+rT^ zBsYBiXLMz!dW(kyj29;Yk$%dT1Ofql42Xg$XmJi0fi38Qul9NTMoJf$QvIiaKvV?< z@BtsldfZe1BglGWqXsHSghe=Y^Y?;DsD#kAeV^BTLpLQhc!Nv>1qIN7%ol=00fdex z5Ju>QUs!iNu!LhshKeSG+_!&%mw{8rGz3=w1865(2!aKG24HB1cL-`MScZGZhZ3fB zKvxhJh;0}+Lu`n0ImiO5hXh$@A9APxATfk^D2bDZWw+OdmxzfD)`a~wgM(Ou;b(|U zb9f}MdW<+Aa#(_rK#8l!iZG`ChnWbAvB*h)NNt4igvEl3FtUcB=owyMg;+=w^+5+( z$c0eQipPkI1NMrt$c)VhLca%k{w8#}NR2U4h`fj_RcL-5SRX8a1T%pI!w3=H*mzx- zjOU1sxU`JU$d2vkGn@EOWmaR@$UNHUff|4Ww~>e%0FL1(5M+P^Jh*t~$YL>ZTU7QP z2kATpSwN=5kcaURrgd=$p^!vKkqsFd>*$Uf$&tCTiRE=|Ft!*}umf5k0`#aOzsQ3h z$O7c}jS#_jbie|)|0u3OU5af?O92ANtqQVpGKIU zpkay4>7W0JA@CUgbe}0;p=p-axflZB18>QeGqHNC>47Flo&<27^{JQZxi0iMW$)Qv z`$?FGX`45PoRO)a8Ht1dilQlM7Zdn#11gpzd7ucIgGV5cD~XS)xp?3Chy@Ud27v(- zTALS2UDl&7l1Y`wfieoTZ11@dePbX=+C7RACe}k$xY?u_$&g4IKoTRIMw&pep#l+U zm@bi}YLzm<5vKNu7*AR#eN(311Eyj+Nj*iRq4B26R!F&pmqa9|17&P4F;A1S5L#*w zclt0&IikSSHV>krjq0f4#TN+B14^I(6|eylkN^(Q7e7D%m?{PGhyV@10F}A{1V8|q zS`ZLmszCbx5t`?%}gU;T~POoAGK)#~}@v^r%bAv}NHJlF9&GkN^ZQ zwLlvG0SiX86CeeEm9AZ|s;24y2oM2Z%c=!Y0S^GKWQ(f>(Y0wCt_ESLqZ$Bbs{}8h zs%!famWrwdA)9iGuI~D^6*>y+&0EvJIg%An!N}Deb3Vl!kvbqz- zfg1jC9+)5rvzEtM$1d!HBs0$X4m)Zx1vAW0N^vKD)<39(KbW2DbJ z2<_6b+WS=;(-Xt{J;jSL;p@HNd%cbG9f|3eyW0`Hn;4A=z2M{@9}y}J0l)4mJs`pV zyAJ`Scya{$%K=I0lv{wl3gjR5yTHbEHT028pbp^B-fDz>95tLVA`ax1nv zj1d*k0I^yamK(%uJH$c!qkCHcpNg&#kOrPW28$;PhTEF_7z$tz4vZ%Y(>ezr@qDdX zwnePFAi=qw@DL#I29Picb+8*4Fb#dM0vGYa^S}WjQ30^)4Ge(+N?;GkF~tSJ3TSW% znI$o^YhYF~czw%G?`C zLCUv$O@*PH9Bj?YDFKlR!dq)*G&}@EBbx-k!hc(~DBP)d8_sJR#Z8>5=St3d`?p3c z#D04LusWd?nzs)?sj>OQ?Toh=VXhKTR#@f1~^!A~KBnD;r;4cWa%4H8LxrnYSV6xSot@ToQ{ z?bGR0B||+nh~m{4gP}f^J;uqQX1&ow>!j^t5Y>FmZ_Sks5CZ7h0}Ozxe^CLMDv#zo z&OH3j6P*!v>(BYD#5~N-KfJ^J{I@k60XIz88PT^;48(Rz01I#c1I-D0zy}Krp^c}l zt$=O(Po35-aNg;3uor}t$fCfE|28D171fT?nfCe2A2(fz$|9p{q z8cfBVo3xRY6HDLe%McDxy+7Gg4{7D2#obgs-LAFN5}c?l9p<*-m{2~Z<{ild{M{~l zmF%sX%zc&A;U36L-*U?2H${|mUO3QUoJN_bMj6cvG3DY!SNVFVGTPVyW+s-ddHhGDso-RTE@sEYA213(F!7PUoS(|*{2j!6aRHF-7pgko4Gz%m?CI)k&w-86 zFaO}6?(r0At_q&dpKcI8@Bog@;YJ+AJ%I*la0OqS3mk9-YJdg@V6G;77^M9Y=DH0l z!0bg&0O{bdAvrOy!W)#eK|1L-%Fs} zuw9NC_w&5eZSZT}J$3&6l13)Bb5TQbc3^$(q7;E_6u3^WdfN)gVx*tMg-I~HAmn)8pDIwetVb>P+>#ozm-SZHhqD%1BMugB$)8q z^=t>q{cdo82vVwsn;kT|V-Ugvcs@b@yaD4$lFJU~s%7}g#sY;!r*ttI$V8h2h9xE5 zFVK=Chk`bb;FoA8*8(UhyN2uoP`~{Q95AW%76I@lhGdBFjrD|r$f*lcs*nW*GZacG zp@1qXfEPMcu%;0H18^r19bAe;4gq|_L-IDOQaCL6aW!vM*M0_5kdTR zbSTLChAfh&2O})8M=BY5QOX#Vlt@1rzyL!pF~=mcOf%0!Gfg$uWV1~--#qi60}$9i z3CR$ z5KWZ6gAP?x(Ft(FpwvXAh~U)!ONCQZ)Po>kfE7?&(rmW{GO?rqMHjfK0QW4}Kv5;6 zF$TQ|lt84ATc+uwjsmhk$2XfedQv6=`O|jW`UF)E!44jOy zK9lkrq1~mj%rZxMH&PH^9A%WZ%c+h4H(-Gu!ZBZ?B-FPheq92wpE1^ehv6K&3+ zv&nANYS$>EP1f8VNW1I*Olxz=fhfLUkLPSx(P4@W$4#TRG1amOu&sNlyNj~v&@ zYf|`fgeBJ;#+WguxpRjSNT6ubPe(m<)mLY|b=S{I>;OLHq&>00WJj#Q+(l>n(6)I8 zzH{H5D|>g!-3>l@<(FqZYzj4Qe!%BH7d_(Or*A%Uhpb29h@~Bhj)4^a1Y!_{I7A{AF-{glqWT!JK@_^iZ-#3k@1E$y5jqZmQN&^v9TXvk z$*(6|EK%}Gc(^ZKDSBfZqvn2SL^ih3jcPW{qGBJyp%Gw|&2g(M8P?V=c zWhzyB952a{GMLN=LUi6#mL#Rhpx>A<5^nV~FX-s80Q%i2rq=<2*OLe+ap7xY? zFr{fwg*wy;a?+s7#GOx-x>Tk%^&mhcYE-2R0V5T#R|`x zo;0IfMQd8sD$TEs)va%Z>zFoaP}}8nt#`$1URjxd9>mqJe+8^wEE>+N>eaA^MQr@~ z8Cb?P*0E~&<}#C*%fwdJvX@m}TOYew&ieJJ4Y}x9F*{n)mbO8f?QCjQJ5{41)v5uo zt7&EbJ6qYJcD1*~ZA=HNOwrQTx4*@!ZF4(Z;tq7KW$i6+mAhQ03b(k=g>E;^%FN_4 z*SgnrsdJ;dUGCD7y067)VX-@2@;bDy-9>MDyII!AR=2$Gg|Aorsb2clmzcYqr+eeO zU;a{4yY>ZefFlUb>7um12S)HX|0`eyH&}d=EwFwQJYfopa={M9aE4R&S=S;pwiO0( zh);Q84VT!&KWi<4ZAV!Vx7fu|B=L!5JYzP2*T%7v@QZc4V@cB3$3HF_fj4+d1M}F( zM`m7(fxKiU%Z0M+r6-c5Jmt21^S+ld<>f*&t8 zyqfsClnnqIw;8v$MCtpU2G6$Ka;0q;7kk_nZ!j(c02>1A371VEW#=9PMa{wgTUG8p zILVtwZ-MWR;eSi0w?`v$DoP4?1n*m`enTg_vHXvXd%2?Ym`{l7oQmJBIL4Kp@fFXC z0ST}ZZ=WXb%M~tp24|er6PhZ%9pnNie|X$9(}Q|P&v#BFJE}Trxx~zK!k| zv8yuNOUFB04N9vvbezZt5P}dM0QSad9eAE%zz`f~_)z%e#Z`Pm`h2QbjX;H`bBA3Q+ilS91X8&~_=mvb|Z zZ)mG@kM;QBygCt(Jnz}Qd5isirFEyd-7Q{v>KB&)3AjGh5I`#hKp+AC>b6}4gdl~f z5ejQHsZ^pe!}U_xjr}$kTXQ}`Jk~s(GObyR1l}L2hP>ZuW!nt(L%&k#w<==4!BY+Z z^c4X#zh9XfYdM_v8@jSNo2*H{o)e7<^o&>;K%uLS-B18Jalo95mE3y`q!S^~pp(cD zK?ZaP|7!^2QyW*=zqJb?Zc9J-6O_1X5D82`5Y!E}*+Bl&n#j<=t06+t@W3Jr!3EU8 z*C;{O(7lZVy&D9<7JR~kfWa!8zUuSB+qymin1IAHx6&vKs^OE@3xV>3!jn6iVrjns zs6AB?l>m&x_?tRNF~Q|nJFgp**`UK*0hJ_tlr9*=KBT)qJPpAAImAVA6v!|{MGOr| zB#quPltDz4M`VC5I60FeM9A1b2k=Bh97TC6#6z^3AjF#bV~ESE9~InesM7l#jv9Y;B zIS$|}MWmw>S3$hrU_8J1oggg02`~&O1dUY58hZS>%|MOCNH||v$V6<&d925r13eMy zI*Ken2BZuk7z3o6KU%ao%9wyQh{s4#!3e;OuSv*@^cxlbY`4+Kl$InuCd`%WW5}6{ zfPB20eH6;$BbpuwG zK+wELkbFa%+YGy5&7PD?t;5VW1RIC6Ot3sR&LqoFq7#an8q1^_8KlPIFif6Y#H%4q zx@$^%jJw59P1uCW)(lDMOdAoL%|5KnT)9ou3;>n?>^D}_yxz>rtaLYad>p#8%k_*X zjoZzGV2uzMI|l$vs_RJ(#JsLMP3e@I$7maPG|fGnA0mi7cY7NC6rr~9Ic7ACRMEE( zBFy-cj0J_l2GvidTu#M!0Er_wdb66~2Y>-5y1WB@#kI^xhnqpu^o$Lyi4H}$4;?)7D?rKnPVZ#V6V*@YycQ#Q043!=m65gQBU?1Q-D%5_&mp@u?!6OKG{Lf9K_E^alwPo(Kc+v&LGa? zOSk2_P{T91L*$Jr+RP!;K@Ymp6`W8&g}?OwlgmJ5J6C*-Kb0E$gdc80&q%=yH$_oI z&5WHCP)Eg5N|BU4RTVqUH-Ssbg6u{6QPc*BPz)_N5KK-?kyO_lp-QEn^h1>6RJcOn z)XPiD9sRiyO~iO>xGxQxF&ooljVpuNP1&InJNXMcVN-eIx~wTkI3%3o99Ci_RUTBE zmK>0pbPhgc%y@%T=OD}$tVrJQR6^C%Y!pL*^UOvqJ9mv#cbn8&omC5^)+YtkO?6bn z3(qP{)qmYqb3N1ty*yO4$<|QU$D7wuYS&KDSA3<_NHrYzsaAWe!*}gfo%GaL-PKSn z*HJZAi-9#|RoSpQJ-xI?DOegQz@5PVWX>tfPm+U9hL}?>ZID}B%;roLA+S&76V`(> z*w0MZ2@OgP&Bu{_Jm~ZznQT-cb(^NGSR@VBCAAD;^){QG%&fIk744g}D@`hDSag-q zER0bOg;hD#R*_{ss2x(gAx%%A+8DIjd&SyV^+SsVSQNZju;o=L9ovKp*`(atR`sDS zT-nAIDix!`vm6XMaey9>R@p(*TtST~a@D|f&P%z|Z#B)w3|o#pO~Mmgwe`0U!cFt* z*rVmhr@hb@^v+0mUE$nYO5NAz*j(7S-Ne1eC7pmNJlujsTMI?qt9eeUV^|(_(U9%R z0cqXK(ABFAQQh@h-rYIhP2DN~J_P5?DdJrY3z=3l1;j{8koTAawM^jQAQ4Oso!Hat%S z^_2!b+a27UeAQd7G04}zzTXYeAhcG6G+cts;Oo7~qv-)gM9sxeQs&sX@%;-%tUPiR z!pX4Ur%d6#-QbJGT@QwhwoHKPJz5ej4ihF`6n5U+U15f3VKri0^rhmEx<2HH409_- z#8^San^}2#IS0_uQPfsgSrkzrl|iI9bJaMI_AOa@N`(F2H+*XIbUH35H~FhMTmxX5ui^Z)QfJ!$oNx5N?KB&^YI6 zepN|^B3yO1R%Ydjoo7E}W?0@^d|rUAt>p8=WuDDwZ)Kcc4(5=CBaJhuBD*%-ah%x` zF_q3DmTn@D7U`J(HlhgYq+mPgo7O92mFb=SCvcLi(6Td}7HZl`S)Mj(=>lq!9*kQX z>ZUF&m_F*LcAykfGpDv{%z|pE)@t&hv{bWc-Z6l%7VEJl>#{cMvqtN*M(e9)>&D6I zt%mFG=`xFQ>EKc8yT%@8MxCZRiQEE^7YSGc_!$$1G?(4-y*(na}$9AKn z2DZ8ep2W87%QkDq)@;`xN67Z6(`JaG{_NG3Bf3H^$_DGwmTkpG z?bH5i*2Zm}xv^AhCfGLY*#_>ru5H_P?A$i)2AZyQ^X<+F?&e;?z&s`}|0Lz?nVo(Vo24R>x1kB}HY2pOnx|4Eq^AEyKV5fvvHE^=|+IT0!k9v+Vn z=)v)UkO&=j4Ty;HY*C~63i3AJFi%^b2rq0tw8Vx`^5$l80AY}FiID$>@p0;K$*~AC zmlziRVeu_*oI!7hKj(8o4;wHC5HaT}aY=FK;ea$(^UG;(H|KQNq3P$alMfS}oei5i z5AHl)k`I3gGU)S$=yF7lCJ|tDi9qxN7x1u|7%hLC9CwIUKM+K6^c`pMmbvjs2X;#z z_C(V31@H7`Zvk29_6hHh}l-miPNmgL%=I85b5qhjnr)BZwynGVh`R5qL*(oQA)YfalWw zKZqB=^qA260{DXa_=3-O^8UGchbSWs7>Ro~2^a7DG*A6w@BGh~h|n(pXCN7kY5o3) z`T=45BI)vq>2liFnBISViQoVRxqL~dkYfjmtH1XgG7*#DfGvOc1b>Rg|9unxp!$!X zag}6;;8t714j=mI2H&wQ3lEa z9x95kK(b{43K;@)uz*s<3zR8LOf11+D9r*OMp*n<^d-d-9}3KDd6Z($q8xu#wW=ax zfDk9I0>u~;rL(UsZBEQubSq1gFV)iI*^=o*uRA9y{h2Z6&a8SrMn$P|B43VWi`pa+ z*eKG9PK$Ct8=x&?ib`EtcH8vBVvbWO7A_zctWeF9Tk0Kom#bsWRzFYw9Lw<$F95c0 zEd z+YfaAegJ&~1_~xZAh3XS00a#P;3pt~A_n~x?Yjrx1M>y2PzF2XA%{Ub?4VFVYlP8Y zL=#dN5q%fZr<4jZ%p{pzHBn*KV3c7N)KgZW6`Ced>BXT{C~-iSYF5$Z;)^Avbt6_c zZk5r8uQe7LR92}3S4(Wo6@ZaD$(E91GkumtNp@w{nX%b&QeJfwC0YSR#q_RwU%gGvaCTRwA7E>_vDt78Dk%1<+)V zt)pMKNgL@p@lMk;fNYEqnaoQk0L*c-RMyA zz&O335q08MXb{E~2D&hTP2|WZP%*tPf-#I@93vUaXhs0+CsGL@(Di9Q=M9$ z)SyPG|MVb0+yP&!e&8SVT`d6palm`RCJ+OxVSc*Gp8>?SKZo$o0Fjg=B`LWC|2YJJ zXA@ut`sRT!#qMpE(~Ky^!mtZoOp6#4-i$axlEal!UmDz^-zZli)*LX2R4QRbCRe=5 z4X|>(vxr}SVxtSnuwhMN;zcO)g=aF$aI1{};4d+=xS3E3Vx${^T|i)tnQY}F+TvhR zgtyFdMa2tW_}B)gNS|1yErOjy$ukmg#(Uy3pZeSSYiwfzh}OOC=&?Ip z0mTX$nhIL1;3l|eXhaWS231gW1ZL;}LmN5?6NG?L_91|K3c{;Je$4it= z#0y)P!W3c}g=a$H3Q&N;N~=(XokFt!JC&)~G>IVr>JSGrdPylK7d#K{GKYmLS1seI z!Nsvtn&qVCQ>*&2!2vUby0nN^M=8t}p756Vy5+psnZbHt(ITNSp$j`>nz>GMmMPRs zSKHMXrF@bkDQLo1aPT3Obd|0;91}19En+edI5BWmWveNrx>%ru1{U`8CuckB+0TMD zw1&bSLNSnl1PBzhY&>WnvuB3a2EYtmf#@Y(YugZ{;-VD21OjY}(T|3dA{96l0T{%f zguIV_D{bjZ8R7*m(3Buixak+RVBIbBvprosR65D5n8E8_ z8mmNd<`rQbpejnf1kcNI&a!c$8%DM@CAqpcm}>Q8FE2ODt%~NUR*Y-i0z6rcU_uvE zWeR((im+i~wJ4v-%7#c15^=6!OJ#zuEE%g`uol1=WFJFc%U^aTc&78>~YKLGKcd)7!BMgBH9bYi1?!MaGyW^evhuJbYB6EPFx_Wr4q7FlnX!(0?dx9yJJ>+u@usjxk?R$0J>s)SL*r}_ z1T-5X5qUE~R=Qm%G^EV>n{JvNvSuT+*;mdUuLrTTYWVt6E&PocRCC16SW}jAQ^`u+ z9(_w#3l4-IVWyzT8sJF(cUrx4IrOb5um~ui(8B+PiG#y6t`eZwTLH%6fwQu*{(j{Y z>_SVJ)F9X?Wd#$Gm9(cF>&f{>Hm@Lj!IvEN?zZMDvosbq&1-J+o8!DW#Qu)4k!=xW zXC&I=o`}#b;wv^g!KXf5$aAN#Z8X;uB1jka&}~S#xXseeg!W}$57&We+@!)3iP*d- zHr0B~2x3$Pmz6TDST6Lf)l}JBR}u}GsffMNj+;`WLnC)$dS(l%Eb+qKzUYP>ONC;m zxC&tgx0cH?f{QaD*;8otk~_xUr*3?u;AZ$}~j={|J=)4i~SsB=5&51Bfgt3E8knF*HYZXwpO`Gl}LSayEp9CwKX zx4?8a<%YM&kDwV&3l17cm`^KRx^J$ymESDS`~s~P!(Rq(|JDUqf0o8i@qo9oC{|q4 z;jl!vxMkn9j9v5{*kw>2o#|g#V4a2q&aRc7>Oo)xO5g;Z(ar(X>m6IAh({9y-3k~V zl6j!CRS5Cz)bGWV?>*ggDP0wqSwRrr|9l{VnGn4NPE%b@TFnmVSyoWk+rv;10uG*| zy~xFhoh_Xo-DOzH!CIs3)#fl^##Gg1TpWHi5CL|^8!!xoO`I-~oV!_t6=jT!JMa1>-pSzbl?Zpp8HS;n?(UZl%W2U z8SqV46s%wiRvWnSUh&1CEVUo5*&qnH9J3UmMPOYG8Hue4Si%k94o(%_eZ*iSAv@(A zTG7&(FySiF)$bf1uE|y3C>DCz#60B-tlgg_0*qpXfE1k<%n{n8Nrhx}o>v`OD?Q)e zbjG@EqA}t`-|(6pQe!n*<27c71^S%py;IKd;*)D~R93AUgLR>4ZG zR71Srghb*z(qlc^<2~XdeLPhS6AJmqEES_5x^rwLSjIIWJrqSNNUmxAe^F+WJ;>!N>;=`BIHZLWK2?H zMJ%KSVqgGtN*@}ZLd;Sh8IgBWl}1o@p%O}E#*@}=cfTL0Ix0%vdz8y^Pd9!^9~dL?Q)TUai{C2>TxAtpRd0Y^C9nc>u8E}aX`=0osicY5cA zkccOK=XipoZwlvmqGx(03Sep_SC-~iY7%o6gmV@^Mb74O6~Jpw*LChxb~a);QXP2; z=ztPvftKe3s%L^K=z>m11{#}aie^_{1bhOJd^RU0l}(1KW)(z%9bCZ`NP-%yKqMGw ziJIt%q9}%#CxfzRi@K1=!-IGlfEc720#QP00YcNO|Hj%M9nuUXPjB+Lqv#iX<3d2;z<_35zvAE4LLuyiYw2GGAXobuVn1-pT?f@J7N)&Je z7WjY$$m*=pY7(4?9mHOwk|d%onH?Fakml)-)(4*oYn=TloMugu+Q+DNhnyNJ+VJX< z0qUJ*&5?mhuj0o8Oe@+ftJORz+DxjYitD)g{M~GVF;m>a|*I0MMzT21}HEV7QWN%Bn0(LMQ@200Xqa8$oD&2!Rl2E3?5X zefZI+f~p8o$f@G1uf)NsRtU0O0VfD-(#|Rp49*q&Xh_m&k{W5CCTpHbEk6F~kTUAd zvIfRtNYqa4#a1nRkd)Sf&!+|p*Tx{qu58=7Z8gs9%N_%fjV1#801W7Xwk{imW`xO- zs?SnLgamDc3~dLj0ku7Z6BGazAc4|i0S73p1`LiJAmvD1ZP-=>`Rvge{bSZrt)9v& z&+aM7UWnylZboQs_H4knPQ-ArE^CBtBql%)ylw5;E;gdp1SCNJmP)AtK!B`lV+9C- z6gU~$T7nro*+rBJe$2!YuLmbE=5d^QW!O)^As}_X# z?f^cp3({)99`J!6tS=uB0vLcnBM2-WSV0-I0vJextB|a`W-G(4&qy(^@=h;C6mPL! z#M9sh0Kdv`EigqaFS9l(SF>jXbA*`kWoxQ7F~>kRj>MJ#U+!>|Hu@a2N6eta;2 z3=(U^N2-)?ek7?2_psNVO#;Bc?Q(G!%OQTCmZ*dW1gz2jv0~uehCuPEPY=A7v;tDE z?uY*_nG~A<^3L(rzz?r<8AB-2;0`VMR_`I{E2?hUsTvm=fWbY?D*FmTJn(@k$glj8 zz#{X36NL-?FV}Lb+;W!YvN4b9HUIJiG);V5Zbhgu4C}HR2Y@r*F%}C8+j{Xm<8!YK z!FXW6K1V6=x>1$3?gmHzdEjycR6+<27ZEsd5LW>I9MuuCMgRhI0Hrwad<1eJY_CIn zDVT0=A0ra|5X2udM1kssTB8U^JI4 z1QP&5yNW?!C|fn0T4bFfxhwON0)3Ul>Hku}zsHI_;lNzKOxmk&mGu4Gfq2@4WllWrCxXg-_v zY2#Q!P6YTYfI$~@rNl=F96<5zEks6{I`?h=$T}HEvGeu>vi&rKA$#=L9LPWnElm9} z;##kQ7y!cUf)(WSOT)z^fB|P{fc>_#tRewN9I^RyYA*CHHUY| z4)z_H?y#~q0qALWaIn+-(OLh;>NYgPIvMA#_5=v4Pk*YewzHH)jTzf@lCFvb$FLp% zM?kp0;kJ1*HAVQ*cf0FIjp|^3G6!3DMYOm2Y(RaZuoR28tH|kuA6b8AHZZe>8E<$+ z?6u$0bFkPmYSVa)=M$9nfPbraq&R?V7dX*Pf;6X3e~h-;l5Ij;4Iu@x_XhX9M#LFt zK{D)X`4X*3^~w@(1S7jN{Pqn;$TYifz%W=c|E&%V8Wib+^KyE}skKHxc@sGTV@-sU z?d5hhpGvI_1GQN9>5tFw)zWt|uX&>)Hi%;lm0B&F<~4u|`ke16pw{(LSFval^HDps z*eW`Gpt%YIs(o#C>6HKR8*pcCt&_xZ$vux78gn#-_UPpgr4w|LFCjobRI zgHhc2xAvq_f3)^&8!-g5@g4Ipp~vnXJ-}-jb4kGub9<>4bU;KL#2y>SltT!ZCIc9- zf+a^c8q~vLFaa1K5C_<=CAYK`sR13Wwb8)JtE2hyuCsu|yI+5+kn^&NIJp;HE0v?ydV0rZNR7SyAh}Q zy^E~Jzx$E_JjLsKia%--lX^y6K)z#aksiCr8&$32dd=JX^2BHeb8e(eN{_8af%k_Q z;6lYR>xavCq=Pf~411j_Kp-awL;&ryMF^7{07=VFNAExrfI+!ifvg(CEO-LAg8_+ZFsEAiDlYrl)N!iqcxKTVcK8OAPr$}>#}U-~f1Jfq)o zqPF{J3p0%8wW7ZLI>$W=&ppTEJ=%hL$6LPM?{H`byuvdX!3Tb5qb)UeKH6hIQtDxH8mNtgu_@B)27?sZ#1J8%FLsC{{}v#Sd{p_6UL%5{W; ziupGg`k#2--~Ie&KFUk&vHSh!v-Y#)5kM>m5CB1h2?7TuB-ns~f`JGaI#dXO078lg z6)G%PF=K!V8yY6W@IZpbh!0P8r077R!U_)#cGMW*0mg(cSuPBj@B#q`884#TIk4x? zi5v^Y6iHHO%Yi{R+9cRR=|=`bWO{@t5#msyJ|+GjP%>dxr&-YkNYDd7TeolF#+5sl zZe6=~@#fXLmv3Lce*p&;|2&v*VZ(~Le?%nswg zlP?F}Tso8jNi<~Fz@k7XPaIevDKMT%84csdv(S#m%7+4G2VwvVl&Q|MK|3au`t*U< zj`DMws6P03@(C!8>{CdzqXg1ysEx=XFd_U_%BUx$^plA|37*C$nKCy zV(~!(@yN4c4mt|ZgbwXw;iJ9xQd)AT7P+D^01;d%;1;?p7dPTYt@p6YC%zm{-C zF$5MsFvX|JIz$M*XQQ2#L4ts+GlDxK)D=mDJ~|eI2@;r~C47TzgqbQr20=KPk)ckwIN#&gsCa{~gH z3_u1Z`Y0rj|9wHmsM+}Jg_ug25=g+znQ5-s=9_WOS?8U3?inuvVn%o}2o9pwL99S) zLdTv!2H61Mn>IbA)F>22Z+)!6u(J|Axlk-S~Rz&77fU(d!?Fmt*EL0S=IW1vKCR5tu*)_61~jYE!i;^Ck(nNlp%+ zR_lHuFs&#~Dy=Kl`fQ||9T+M&iCUCy#@4nQK z4}8#JcF@zeP-!4mf>Tuz3UCFCN$n>k;J|ns2RRC4U?7z9)%B7`1dNPNBO6Fw$ZkY{ zdYvwH+4>%iPJ%7dNz6$YG+%^bH@n(h?_&fwNQQRjxu0w(c9&3y73HTsCTa+T?PA!} zrbM97jqZ*4siPRd*deQtQCAJCo%are5jScOV@jZdvnM+;nl9#=tjARnxre6k=GQxb>F_D=NuRV&H&2;87*FeMI zRG|Qk*x@x#)jw=rvk?VQ12Q{c0lxjw7E}yCIH#CQb*>Xzv~w7U+WF3P&Xb-pVH_yy znNNN0lb-TKra$?4&wQ5P15Yq#M&6aocFwbwy>#e9AsSJMPL!g20p>*`_{)q+2B7>z z<}#ldQjv~y3Q64N4z+pG?6?OF$drLB(;@;3q|>AOT&O~!MZ22r^q2zW=}&TGC5p&C`GPL--v9n(g!s?lP0bf_5_=~uz(%r9I=rF$y?{}ReN z9J?Rm=nar0W6)kU-DSAB65fb!|2?_!1YH1n(#-X+& zApq@oR8ZI2atF6{o$Yv1n~~Mh_M9_?EB|_X1Q6&{1Rt1UbBRmTSQbEXZyktCr|3lT zBxJbMwP*i=OQn~hhqMX#Z2`)AUFT*%yW<>4ck#I^a`a6VxPuv9RGZ_C<*92F2yq@srV7vBVr z#}I`@%aRMwWD8$6z&}=REJ2CkA^VugPTp~ku}mcbdsoZFrNB30i38h)IUz{4a%rnv zfGILt9DCi{++R9_DE~5)96DWgHyA7^0 zk&P@9-6opHe1=004l80&kDAn_Hg#c2OyU!tc&#aR^+3Q-01nJ}hh{|rt+nHxZ>p2N z4^A`)w$R!D@Qe$hq?|E`@2+MPDGt5vst zgKKYm>r~&r-U2>nD{XNWT+TXO_Z9{*5MuB9+5P^u!!z#e91ouPMZR- zh={>;>cnL?ThqMl-@$<$@-4FSQLV&XBA3+Whq{gg>5;(I)k!vt-DkHd zcKN!O%3bg4*UN3r4!9@2FmJPa63+Iw_gN+{g|~SX|6cc=|F-aYKPTd;40w|F8SldF z^J&E`-zmer?ZQ6oEc@QS7W%+k<%A~z&yV&3ko+dl0=ADk22AtdZ^E9;!2+rMz>c(>DE=~H(~4^Y3qTQkj`(0O z24!#tbLRMpPNQ0F`S_{{oR0&1;OVw03EYDNGQpz^|4;rrFTA=7(Ohr+{>;egN(G~^ zuxu}uXsWyXYw*%(3J>n_#P90TP4zUd%o$F({!u3(y0u~E(rrKBi>54 ztg8$Ifc2`df8KEa6vF)Q3Ja;E3GHzIn(*J0OYQ7#!dA-#Y48ytF%l&aOGqrEjOpld zPzU$w0GO@-$RG)BO~&+wx31v&YHGFG%?}Mwwzg~YC`|%^>wXDy=dGwQALDP%=yrAT{v-)Iio`u>kC#D|adm zYtjIdam^@=CL!-8J#QJ)4lPhIBj%D7m+>Vntjy|C0ZsA`fif%fkET}gCdH3&;8MDb zvhx5FlnV1Cr>*W*3zQhsz#J1I50me(|IH^mkSLvU8zV5iDsv!w;QP?=-#}9y4Xhro zvNc`vHBHUvDsi&B5+DyC6V%`eV2J~+zz+H#`ReHf}JFli6E zx)VClg5VCS4hGIWD9+r75iM77+90suc5mdEkw4XQK<6_(84&^*Gd#Bp1(otN?bE<$ zsv>L7I@6Lgr4lwdv_m~~vG~#GfU`EevLTac%p&c-7BuntCk2XZIRlH%u5HXbAT=Q` zmfisUWE4DY&dM5a%yRTER}n-K|E#+Fa3z<~{B|@gpe)&@>)MbMGG}TLrpv#UR5d^H zN{jQ@d@Q$mG)2$R9V75b#ghZX^dd(Eh9dSC(TT@@1nHWJk7UZ8lsV)?`OiW_h+}$8=DAcCQLHXuXnVZ}w=B)=l-b z5>b|Do%U&=HfjylXp^>Tt=1~%^!RpGYPq&+z4mL-m1?hcY{@nfm31~TYHPuEZP~VM z-FC0Uwru5gZiP=ak&mO^HgENIZ}~Q#;+Ad!H*iZWYq3gg`}S}VH*wqcZw0q;9oMl+ zc9{CHX%)9}E%$Q&|CMnccXK&+s&e*o4Ht7ocXUZtUah2aQ8#rJYc}teqbRp@VK;VV zm#;Keb#3={ZHaIpD|BbKcYXJF^Qv}ncX)|cfXej-c^7z3OBMd%gEdbk`DJS9{5~d@q-Kzc+o=*D=mkXOq`_;WvIq7k$^ae(jeq zj#otGcYpa8cIo$i0XTpg_M(m#Z{N3n5jcU@_J0MqfgKnw&bA+eX?zv9f-Tr%8Tf%U zSb(WFL_vdsFF1rn*mT)qgH8B^_fc}I_kc&Zgt(Ut@nj>c!wu8 zgK7AOhqr?X|5$ukn1_w{h-=e_fq02i7j11gZIL*NrC3^(n2D|Uar3w6KzNF|xQqFz zimy0~0atfVc8k6EjL{gGz*vmgm~6?IT8cQ0<#>+QX^q?Xj+3^4_mz(MxR1ZsTk$xM zJ6De(){Oo5Uz5U++%=(A)C0TV-?OPZCGfH+cKIU}1@^S{rP9fq*lrDS} zhG_EyL#V=#LU}**2`5r1eKe#2Mu(Bpf{{siu#%3JAsLV-xtHmdSuF!xB1>tU#-kuY zN{o4ZT<4g21exP%m6eZ_UFVTg7LP{BBpAt~TvroX}~C_(~8!gHiVu+!R+H3P6! z|Dv!L#(bu^iyES`mFKTN+d^6fL?k<)9T{tEgd#vjN=`d*QX7##yI{=1v(s9TKt>9z zxvJd-Bou(QSy{3TyQaB0u)hdT_=T}Cd#5F$D0JF(%K0I9dr3k&jHX+&pPPJu8>o5t zt+_j4fd*)qw^#FPDcAs{{AUL$X&Jy5n0Y zx}d+=d$1uUbdsAOK;pmKyGaE6K%7}7UZS|2#6h}1kJP(Z7(%}tpuz`+cWk695PZQs z;*p%jAh5zR2wJ)Q8^8m6!4X;}*d+kqWU!qlR}vhdQlhb6hQKX5#cN!;VS9t@|3|P; zrp8~kt-Jfksj|cm00T<=TiWCYipEVoVuI2;0_cSZB;rG^M+!s&jOYY(K89Q#fC$*+ ztd*GnupA}ur67iapT9hmz!_b4GvyrZU1j->+bd?pM!mi63@ zXq+PspeKl64ALA)cEYm}g3;UHDmo<6t^6i7V3uXs&o?5{^E^P9MyzF8mHCCt=N!`m zy5$IJJwjUsLM%dH(WPA`GzbD}A}jcrxfO&&sz$5Td)NykgVI{6rQ`yH|GV7drHhmT zKWyCBN2E?Rxr=}a86qBCkQko66I!RGUMr}+0ZyDK_#Ji7-grh^>S;USv-#@FM|~c?tMPp9 zfdu7?z5$MY?F$+s++5bNexl(6@9ASdx?Yy8e(wukCAQurgquL%|K9JL+h3KP<~1KH zaX3WSWHQLRB$m7)D(EPhCUH(gwQC!np@(-uVw=tU;mi7GllDG$r{(1R_pLfE=KcJ$j*&H)~KjJfc`l|35P_k`j|>z9sPMpnNQn|TGQfy3Wyg>xF+7Nv zkmJXjFcCC>DG>qzmNgq#WT`V}go`bUid2fyC(wx%2_S8`{}5qIms3;jT)I`FL8}g( z2IZOXYtx?!8G_X~v1?DX9JAJpkbvmXryJceeT&iNO^-RP*wCU5RQ=?3f0D$Y)uw%=fO}n=3+qiS<-p#wW z@87_K3m;Crxbfr2lPh1&yt(t|(4!|j5PNkWyhg!GZ^=b0l&y?cujzf6U}t znk3lBM~9SN*ruVxABNeJR(u(4OP?lDwp0WUOy(X}qhWSdfGCmFSZ5s>SQ3Ke1z?tb z{9PCpToG8t7JmVVWfNW$O%>N<0wQ)6OA1~!VoMcl|3DU7DyI0~K^4{*10a@^bp;YR90!_l~`t}<(6D_>E)MTVwv5T0o-LBMKJUr z(03OqX482aaYmzd@BJvyejUmenOQB)3E6&v^@rk#Hdd9RPc(t3>w5m|3uYH5i1c_kH4N99+G}8Ml0>K)K-g|NYr641a(eXcL08&67-dL9a+Uu z0_!2rLwO`UhGS;$*3<(_B*9SOhaIArV!P$3|Ht4&J;VzzQL>6SuS5LWs1pHX+3G2% zeI1-oy&}=*SDhD_TT#Og@RVVA7*YzdkQ0?V7rMJ1>K{pwVlY7h6C}o2XL=RvpSqc< z%kBdL`xG;-0`KLS#3RXAaj0&BhH-!kH_ULXyhaRE!W2Edp~p1`y)Lp`cYPXb)`l(i z*kqS&_StBs?Hd6JNVO7mbYXO+jPeoGgoXxvWuM<5 ziG*ljU=<#!Slv`B&=YC3;qBRKwVz)Uwsq!FXMWjM7c%feOxDIih=jKe|dYf zH_|o(wa`Zea)!EE3g?cn;2+6l&;!IX|AbfInfG0@QJH&GI+B6@4*bN(^A0+!D~=w0 zsEGfy{iQ4?&!gAqa}BoI?6>d!`|!sv|NLw#Zyf}6S(nfc5)f3K?4kl5TO>C=ht%#c zjQf{+V)Cjog(f7q3JUlR7^l>6Pd@|jg6PIy6*g^wWx+z=Bz z<-_z@F@5WspBA^s#V&gBi(u@{bf}}h?2yr0W1P+v*T}{;y77&vDI*-`NXI(b@s4=R zqiPZWgE0E>kAMuMAO{&Hl#r23|8hK|9v8{TMmqA5kc^}xCrQb#DT|Pp%%mna$;nOv z;D2L6;~_!$ol2VWl&DOlDp$$MRvIgdo{Xg|XGzOiPRk+sL!%lIDMwfO@|VC2rZ9&| zOwvTjmdH$|GMC9rQa}WY^Of=$E>%mEqIw2w>YbTmpu~Q{>c@$L6SF8gi zWo9mFfQe*vnuXm&Uxj7kVHZo=+S;}_6T@P6lxh!x&bHmgG*N&NmEgdilcnT6VPBjef|ZugNo5iUeWdfW1v_q@Q-YeG7dfIHpuTfaS) zOvHPvJUwZ?|JbpZ@c9E6=%FNCRSn;)7}z97X36}dh>t!BTIkl%#n#BZ2XdH8R&o`CSO!sh zj$WTX@)V_XcQSVVbCA-)LlhQCD3X4QM^N+?7K^abuqqr_B8}axh+2wU2GtZDjp<%h zkReh~F={W!|LRR&#m}xLi4x%Rt0YPnte9P(CiBbQ`9f7HBfIMl5oQBQgl1Rm9WuFV-Y5!t5>6UCpG3H3( zzD}^0|C#G0Cs9=eww}XdgKD*Gd;76zG!89K;R#^)Aos^( zRUcm2-L5#rGbnF_E*XzQsv5Xi2jY*~~D&l9-*UWjGN&G}Fa zXm3}GSya|v++$%BG{_IHikJ< zek>6|n35Io7d!zt6`cltqSr$+V_>J^7SgAB8SwyzgMC0VdH_;?Z$U&-Milu5Co-`X z|4LMCI!1gbn1bRY5ze<>A=Duuuo%2`0Lphn8n+Ol1!bR-7Xgwm++|;@G66?cCv&1C zI>9t%S3v`4cNerMrj=b?#}fE4W17cePDnjbw17^e6IqykMusA3e=#*3Qy~yAWq^i-PoagM0wOMkV-H1MDtL&9*i5_R z5OG5t%9kzq13;*zajN!y7NdQQgE*r%Xo8hmOjty(=5AIaI!okgpFt}|GifVSim)|- zvoaZ*LLm$oGAWcPt5}H|CpzmSoXDv**zyod_hx2fXA!|BAY&76*EW4aG(I?jtrIY(BQfp>WpS}|0f{(d zfgjzeH3b=w12a685i5CkHQLoZ>SA>;af$I|A?p`-$L2a^1Un+Ld?Z7iC)1niSu`#4 zG6wjQmbR53h@QifDfcHrr}I2Zft{&nU|`mOTA`m134Z;Vf0@Ra|JoT+LzkQ;dZK4j zKNAoV)G<~p;fQ>MbdvZ&db4D|12{axGc-{?#iKe8a3_kRcYgsBs!1mgs-qudKJkf_ z+6S6DLw2nrJU2Qz?_oV_mpva*Kv(&jzWFK4bvvkei{PR;3*bAE=4&`ap&@CYhBKO> zu{^}%JRKU0B}AQa`6Hvjqm>h-UAl@zF$Q<&6><7eCW)ekdZ=4cKlxKKi<%w$<3DXx zDYb(T14KMgM5EwSMJBg;hk=PtLx2lYZ#ri~K_f$72St3UGR(G?PIRiHl9QTipIe%% zAyGSzay-OIX2yxA-ukUu!dH-LNYLbDu~kjxdKKxaN9!6@U6r9fWr*N9ukuygdUG8M1{8?h2g8x>}-xRkIAo3R>; zJ`NjG5IeCTJF$zHRS4Uz8+)=SyNq?{vE3T7F8i{tfv`&TOeUMMHk+~?D^)EEvphSo zOT|{x(F8SnvqW38LN!)Bo3uSUvKBi{M*Fl-`&RO*v{WmxK-*Zkq_0uCwOkvoJ6pA2 zd#DxrV_Su>U3<1@TbyCLwgNk|T2-=X8@F=nP#?>-|8|Rr_sX>QI<#}!w|?tRUwgNL zdy+qkwF~vPh?}@`6}W@jxOhvp25Yv8JGqpbN_FeFn0sw`OHLeBxl!ed!j!X~iyBCq zxu$!PV@nrrW4P2&5sMi~!+J`|^+?RMvfI>1iw**io^IN>h8f z$eV)d#dM>pOHI%niTNbqbw!@~x<~YT9GirT#9T?ViJw&}q(?KF#Wm7ejMLkG!7IH& zVY}IMTo!k6r*yf=JHO?{QbR{CY+N1EZwH)C7VMga#kd>%!{(Jn_Y-72z@iC-07W*0e2Wq)d@KmiW)v)c z*n3Sl6UF+JyS{s6wK^DC(Zn^pa3uk{>U5K3qM#V;!$6$Iw54W|(q=>8oMAZ1aOup91p1%@XLJ0P&fF|qMcN+j#xoi;aW_CLVzt9c9|fze;?v4_LxZVo_`^fG@zCy_UnbAX%|Zk{JIUYFFm36K}btVTL9U=5eG z+9Iv@dhAD|7r4a;Xx3wZ*86EPah-pzr*~*))Y}FadP3Br)5V*Chm*H^g#pP|QKB`y z+CGL)&eJ2>}oezeWRJ5Rl2*6c|in7e}H$~ z?uTMxj4PfwyrJ5G8U&*I$C~i+f4Gx?OBjAxanKLha?ZWh>BrmN`+y_l$~);om4bng zGn!L@%UP4%p##{rTHN?o-Z`m6n0R~AXK0cPfFc;ZP|`=No!}gdPn-dR@-l-qCebv3 zgSVoSUD*I_IAc(~nL-HJ{}xUn7|s=Gm@49&B#``s+B-T+NQKdznZtvGUD#j#8RL4` zm0&n2BhDgS>B5^=GdaG7ZPA86iWU8Wj>SshttA+WL5#_L%N|`bG_D^;7~*a5bGpcofX*l&r>0Cgkr`c)4`}2|%IBrQ zy?fk|kRCz~jh6ad=@Z$WYr4bQ9T|fjzMQjkAzaOiOxAdb6EjvBH% z=ZIYzd6D!86JEX%|KgosT`k=R1m}9bruXQqr`SV&ZjU(Qth?!D&{*w#>Yv?C;w{t8 zOxhTutk;wtpw5o!nt7HONq+eF>hKHdYkb3H|L#bgDm~WkP_}; z+Of25>jPL{{|lQ0EvFQS@Wn3x_hYcR59J+?({G}ivenyouZ1EQO_^*l^oynpThP| zIh#O($u;bYWZWM+3faTUee>Phg|YL~_}wAD=Q}*}c+zXgs^o9@M8EHpBjV%g{N_n-20Yk{CLqx0JDr`(wm%)iAxb1&6po6?Ux)L%M0 zVp{IVGUX35e(f&%2@nk!CsPR0#f~Lg*6dldY1OVxkbuAh215$!T(B^}feH!Y-aT*t zp#y^m2@Fn%fk4ljga`L5c;Nwo$BZjHc&vCr#mP!U-UJ*}F=34k83!=jnPp|31t))g zi&3CR&kz$6PCfFq!O4{eKOnL)BW#YcBd|t1-1NxdtU+Rath=?r-v<5SWa#i@^uW{& zT5tT>!H>f}hsHK&Sn-1e5hh$uzI!lW?AW&hJ0P1Q0mxHYBV#)(9AAwh?i2?g0fSOb9&2 zG8#iaqKIm1EgW;yaYr6|^zla^gA{T|B8%*Cu(s-2h%UQml3<~}rc)@p#YhW}r42d+ zF2B)G3`s>8V1qHI5(g@6vx!FI61w&%g6_ZhPHIWZH^<|Mumdj)PPHrt^DuxhH-hQ2 z(dNTbP&hH1GEVVe`>V-4yL->d7!!?D#J6mU(4aOCjnC2$$;1;l4aKjaMTyo1b_gtw8va88;`BGP1D7BS$UV7`b_g;MS)puWh`}KDt zNdFahV1f%axL%m<`#0c&8x~m4dlP^GU5YEV_+pGR)_7x%v3mEekJ)`UN{34}`DBz+ zR(a)m8D{zAgB{BjW|{|v*j{cs)_G^1d-nNfpn+}|WTJ;&*X5d%R(ffsn|Au?f;oeF zYI<+3H|Lv2zFh zdFZ2;etM-PPX2oAv)4ZRu>~L5dFsO#e|+-Gm$min(^r3e_PO?+dA`6me}4Mww_kMh z+t+`8{`)8QeX`;1egh<60S$<@{P|CT3uIsel}9$u-L44-q+kUtctM9H(19D|U0W2~Bvy3u^F#D`a5{^#?$~fewW;q+tyWs6rR!P=`C5opfOMIU5F1h(n~F z@OXGcBqs575rp8-nm|G#Mp24WRGambcttE`(QDm{SLbjCMJk3-|BPdV84k60Ml`1J zfAE8!49WOLIL1+BW>jMx?Rdu?{m^J`lw%+L_(y)x5s!l;WFf)QM(^S-Wgd`rY(lb~c}E6?~oq6JQosib8s zQD_ub=2Dl0gkb4dP=uNdmjh*JLopXZQI0U76QyYN=;=_5W;AaR|3&07EBaB89t@xwC22{` zRZv-uGo&kJslbS7Qkce+V+={A7d_fioaU5u7nNyGeTpu3xzn2P(rHnRs;!a!RH;i< z9!-txCzErP+C2S?h3RlkU6R?W~=2r{*SeceJhK!}GJRJ*J z%#t*pLw#apJzLJpW>&Nfm8B0usMyb@c9EeSZENqT$7-ThwX>BYYh8QWbi(#?vZZZr z$7oyJ23ML89c5pAd)!mrRk+LTDMv+?Sid4yx^EOL|8uRYQ8q&GozvxRAAx&a@OpBy z&Esu%&1=H%hF86YOr}21`(84pcfIqyV^&KW*SW%1zeAKSef^8Zk9E(W`z0`c)%srq zN7KITjc$P*Ou_ypSi(nSusF;6U<`|Ip%dn?E@9i(3ujow(W`EUO-xDMb}_^wX7M=> zd}0_IGNPlD<%(N;w4E1y zX;7=rha$9Tq&t0Tmwr0btIl$Jqikwa$9i9tW_7K3X69?kTGvcduC0BYJdOhJ(7Psf z$^!jsWW&z1M}u^+o&7ReCtKP;)h;Q|4C`lS+aS@NcDKh>wzvjZ#o8u!$++!pbbD*m z&i!$@-CeMAr(51bk}SBl`)+&(Qq}Y3x7IRk-;ixO-vhVNzWaS}pRGH}0mrbe<|UY! z*$XBS{};qbh3H-*T;oAIY)u8ewuCtjz?`%b ztt&N(Ri;6Gp&}2R9?ZmTC+dN;5Of>!=tcsu+Q?sq?vm2?iS;RhmZ@$p``0XvJ`N)O zohDVRMoGl>C}Fwf#`xhX};*lIzo9pM$wjx;6GCtKv6Ni zMiGxLaE>ea2tpYa3mggH!$1uz6zS_g74eR_yOj~-lM-180|5^c5x@UHh_I`GpEwUW zS;3eyIQQ#8AYlldFbR;sfDiz|1YnQ=NCU(0kPIY+ z#0Kfc`7jLw(KVU-M0eB?kof^f1RQxhiG@f5yjYGd+z;Pt#X&s8etbX&{E&!nMg$p- zK^%(013^FxJD-pnYxGA%Q4DKwjYGVNXBVX=)b3CZkJ!7U8Q)A*9I zJH8Aw$Kn&Y*Bi)AW50K-JWd%18H$&Z7=oNUfati8fYcD6%#cV~$K%6@5R^!QR7Q;q z5u-$w4oS#sd`Uww|3P1&N}9k!=i|tw)D!Md7R5M`6y%f%c$TlzN93SH(o4zFyTN2U zNVQDL$-u?+phguN=#)t4J<< zz**^%zU<7}xJso&Nj5o_l!#2WBomm_$GJ?*V+ceDL`ailj_0&ZyTncU^oq{gJOv0h z&*MD4;633~|H}UqNLpkF@X$;E^+k=u5D7qtx0KAOlt}qVI?zl``Y62F+YG0h(8ct| z*i6UX+s3opLQ{m6+BnV=$&wBg##5Qa(U?nioX`4<(X7}=QX~zYbekirhyyST1MQAQ z5lX?7PFRcp#AHf0T*?Pr&ToVp7$}KN3{dir8su;b>qJrwu@bu@iC`oND%H^8B*e|Q z2oV_#4DiB3G)V-pM3KnClyp!K)XIsx#G$CoN$W%zz0>_nKOs2A zAT>-_EY!`+kIJZ!9tF}l?T=O@N(e+$rF4<+xDxNg&ec#qOAVAvy;4@ujXw!M^f*oJ zLrYAt{|xkd0J>bt)j+)ZIFC%!M9G6uJiS$@h$TSDyvFg(`{Ow%CCoxC&RwaDUO~(Q+&}^f~&2GiC2NW3U(8>zf1%20ndMps@ojc zbTioOx;N>;yM<+`hILqP10ZH&w(ybAibbo7#n@>BBHIC&yBN0K5e!uQSgs0Lkxe#( zjVl@(ywDMh6lK|>a@m*twQwuh!09ZU4O)iCxSieEaH=t(P153@H>>m4mHf=M30Hc7#_2JS$&AnFAqgQ& z%iAp&&vjB^gw^C-I?=7At&NOwU_D~AHn$E>FM3ib(qYM|J@X1 zPB%rl^QEQqRo^QUFlBW(di_da(oEAn`+K_kanF51p(z0 z@lIFP;4o$YV_w%eE>LN4ST;}imb0l8QR2nYeZ*Z?9> zXLT`w+Pg##8Bvyy0-rcij`)*-j9+yAjL=mO?iGn&!e1<>;yW<{S)6ajQyzJ>^Q@Il)fxB z-b>kFEH#!@Y(@`J*c+CYY^;tgEk@5M%UAqpSp-pJloe^*MZU)8?qI@jWyUPt!-^Qp ze#BsrSV-?A>`B$i5uM{!#SYTGJv?N@T6E)1-sjEske~$UDq`BLM%`U?9J|Pj{Or8n z6jyBIXY3?E_!JXqMoqIM3dqz0w_eCubR3EJ5|0eeli*QOQSBfO&fopW>n83^-n;02 z&wbR!GgQt7Xx4}=X6t!qJ28wQNqrDd*fav7n$ocgl+c!2lSrzW+cy-!RpJrd8?n-|lT2 zH8nr&bdNZOjF$+_l>qS#p3M;SO8SuT8d>exyp5r(%tMV%LyhqgsZvHMN$y=|n)YuP z=jE`}?`-L5Jj_%a4{AGEOQZH{=i}U94V7{wJ{uSEolYDIuW$}q5(WV4z(D|)wu>L= zaNiw@#UW@B{|^`C&ez?^_5^RcX7XjR(!P%5oz-8|?YBT@$e~jul`iRS3F$^^=Zy1To(yQPutZX}g1=f``0{)01D-}|}QpS_>8mg~>8KktgCoKFc{8|>kl3h#^O zXe`{Y{){i(UL7+FoLk^bSnN`TtciA~=3l`WhOYULr*rEQdT8JfBG8u4+pik0Vk2&x zJUSOuEa_plEgk|rPL=jpP;9OrT8}mUFCmq8MIaXB+g-Y;y{cE1fHP1Juh>2GeLGK8y9W==d!ot9^P|GpzR`|Z71$`aiK8UJUN)& z>K@fZFa&c);M*DcB9*l2GF>ovuKzb9N94>Roum5(>B~>H=da)>}mCBf-lXdvw!q?5czh<)}0;dnqo8He(kmO->m+z8v)lEb)?ktvPXiChiro;Se?ohFC;|OLbCO$8|EYY010Qr$#|G{&S z=!tQ_8#MnkI|brYj6!UMS|1*Q?dOu=f9z-$)JywWD{sl>qB!S;V~6ck=@kjFzVLsR zS)@~K+gxbZ#*4%?=holvzK|6fI2vN`=8tHxnsEEQrJjDMm130|TgN)rCE#{bWH%6ovywTd009Kv^x}68t>z zL?qR))8i}psT_$A6xkR6V5UGmnbYC-HRD`~da-(??G4jHg>JLU+3%Z=OEsoLaV&PX z%qtDHizLFh0RQP=j5Vz#=!`=zx6MWyA$Z$Nl8WE;_U5TaTqzt|($s^Zp897nA;+mA zGe^-*FsGF?#KzNXG!YptNEm_Jpo9SR%wkO?F*OK5#QFzWBj`m5`M^iuJ}gM}+n@f= z+YYp~#>>oshaLM?F2Md!Z+JMbY+6rGU_D$w#t{~G@MmBSRr2<{{@FEqQqn&=^ij|q zhW2A~_Hh!Y}-N^ zLhf}>38M_--w6h`1icHR!%sFP8B@Bair^UKr;g-V0p*9|9e7Yji#+O3J6=a}uSav8 z>+D&FpuuS3(R#$F64c}cXcIMcJ!zA`wgQ^sjApx|1IG;H9gMRly*Koeyr(5 z7pl-K&MRRmtN7iy(nJ->f}A3}Nhc*g9Ry9wgc|Bi_~ zJ#$ShOxkfxOOg7x)$l*9Uc8zzUbyGf6qF99Wc7S_7QkkVe`@K|tM2w z^H2&^&4%dt3LGp@t??gbdMjTmihLFom<+J;75rVwck<`3vi)CMALb@Mppr!(`9p-ICYJH4vX!){Lq?6+=tLmrmFu?I@)COODyEN5fkadT52i7=kG7;ENf}9?8_j5>mDNV zo|_82zGU!2=~R&6^A7rrRl>v;y9>%OP+1Wm_P`AVp>4^@=*Q#!+uB1VJI1t=?f;2o z7zi>m?!hf_eT_uch<{k#C8eHuT{%aGc?xg6rDhxVirI_A8)wC2iAlDR58h>;CX&%z-2%td}kF!ua+30a#voryWin%qc@jrzR z9CExLWxVt z`FE>#v5dbwnONQ6`I6H(`0UC4Jv6KmDYiFis}u9m?&jlj7pkY8s3`;o-?=URePuyM&~RqYQhYD-+c56$0w2-yEV{oNO68KoH4>2AB+e1decMGe^oBqI@)3D9+J#<; z=n5+lX49Mb?%h}n)+db-OW!G!;@hv$!w;{KM#P1GwbNzTAe*m{FT{b@IdsmIW|U9K zDcuQs)qy^6hu=)8OUpC7<_?Ma&P`wZ;1le0?NZ176}zhIqJOBFBj56)1rXd17uD+- zR3XwDtKM#@)zoxWZDZ=Kp1Cw@P`vq~{-;ha|NAXf4_2`hTUgeFafw8QLT59Zt7 z1i7~Kt5U76{zPuVjBgnrC(RD|Qen#CiRGEV#SvkaA@N#(|H&Jy9!|d~N_^Ea#JzGE z8Nj?({TWluaJ4o%zQQ~Y;5n@9>!R6_&@mI~F{0H~r^1W6&*GZOjMQYXR>OS2@orzv zK$I&D-dxwk*dC;4?t2xNo^c?6Dlla9o;~Ag+)QA$^%qmq)!8+(HPO}buiz;5^l1Hk zaW1dkAW`lDc>2*EW$Sbj-Dy5`rOiqe&Ol-pcZqk}u~PhF#k4R_*_TRNqJ~^7X-}RC zlNS~8pKS|GT|8BGA}8R(w#BZ0JT(C00Ni+fbT#Bgjj@PT3Wi-HY5uR`=395teLz&eUhf3fsp3z z)LmRKFfc-BXfH16Y9X|73bZLHDKzqNG&Bkq7cP#!?h&AI(NKn=3w>sX!GQF z_k^o#uW#oML^0v-%`GPECxMjfe3wGXeqvVY(@G5JgGJ z&nqWaO{qN>bqV?%zt^TVcXoCm@iW82!>g;Sx%20@fA8wz+u2I@KIHBAtHza=SL|Qj zbmk6vh=(?%bbl2Ij*FY>DH_&lIXXMI=-&D>Q(Nn&94lLQP!ru|)_J@%w65NKq@|^O zuyt(JeLNGdR0naci&wgsnSnqcnX~7j)dzJD+Onk!MH<@Rv9p3 zJ$)Kia~iJ*`St5p93+m7ja`vO(W&Ni;`laRk#;&h0Yak~5)u*+5V*U#Usrcl7oSjf zQ3s)MqH(IZzPMp1+TB?=sGB+i{Qv%e-~dDrnQTo?ZvY4g5F4(^?GM4Fmd}u_%^M6S z;<8;EuFW5crjQIHldChA3c^q-(;ulT97|?58_kfbFH-Vj__DD!QeXTlTPy&bT%M~~ zIZrm8$zZghbha2L@_mqeW7&MUPQ5J)!`D~2zHxsTxdN}5cD2Q9nZZ~S%S^rX`e>#? zbCp3oqWu zykY*2y)t%1VGnC-JXusw+tI-KkG&GH+5L~bl3VZkKiDgUY~{|jo0Fw_yUoeY_PdL% z{&4sQm9CD5tE1U+qhDQ}Pj{EQW7#U*T`y1fS0|gly1U_U01Cqv6zQ$?mLG_&WXm6u z_h>5sSDIlvkWkBdJBY}#WILG5{b)OcBA8(ZMw4W{6UtCjvJ=MKbhH!B{*z%hf_uSw zHxS5}KUypKvd& zH*YCSN|HjEMlF)mguN_r5Z$(lP;B0omsQkCK*W*Ks4M{p7~jzW#l=+R^o9k^4QHI58ng^4jO6`}U zJ^T1au8z||hqqX+9je*1O*!1nw$*dFU3mTkpH7$#epz7}4<(=&O*AdCe1hxWZa^hV zPcc3j=Ws9lpcd)bHb{TEnL~^?bJ&s2B)4Aqu|noiNFJE;^Oxuq<|#m2_Mu`vJtPe} z3+2grJP{Cq_M%jTtT~R;HJo@AmVd&wLP(1DY1inHiQ+x@Y>WMrB_M>*)(zjl^T$Jy zkz*cKeH(c>bMEyhhHm3tKGkF+uY7*Do&UM(k96g)vzAPzONTVCd^ej~d&^%i!8w{>j0Y*lZr9U^L8 zZv9u0mfZes(j)IG^G;(}P>oT|QS(>WjVrkXG5R|wCobY1_o1ZZTeU$fXeN+njY(UY zy_WGR@xopkLG*s6ZkfRQL1S2&xMfQJH@>XQ>3$|Y00z7_#(1VWNUbvVBQZ9WZ{%9t z(Lw`!47+fPt2Z4}rtgigxG7lPVUkZM{c@YhnoF6XGtCKBOQ4#}q>(BgCmhlm%*1up zX10?Ud6e9x6>|q_fTUN^)LQ%M!FC1~JdC>YJ@{ia{U6h~`Q$oAQ+dpSHBU5L>z3-D zH4Dkw*HI-&XJ?qq8`2Wq*8YCf=|$0E`h?8H7UV@w3)i7UvJ#V83-b&zR>LbBH@7zn zC>d=Kv~MgYt8f-*2PZISM@H#ay|Ci;946UDJ#$sMRqL%U2G>*-@W?yol1eW-)LAE- z?di9A^PEf)w5yNkwpuUO1~|mJ#D|}IZLS(1N%OepD6z=vGa29fi|ipIXWhXLG5qkz z-6USsLBclcGSx?CV{kI5}I^3spKYGJ0zj2FEk>=H=rH8L%0 zOf@lz(A-&npB~pr3i1!3HSL50FTt1S4~_iNf1?WA#p zst9c$<@5H+{o|zfT-#kG7l75is0GsM)6;5D!jWFVQ9R#;03l2YBp!YwSbejpLac`c zlcjSQ!8cRpJKvl(;EnA<43eAGeMATx5Y5}khH#=QP6v?ui3&K3>Rz@2s&KphupJLZWQXGTZs5o zZqWA>ejrhXBue?kqF+&I-5}<=J_LsZai_Ye9ABp~)m2-R>&f<~H(BmuobN0>i zVVsn|jt(x)Dv?*OKB%_BYLPuSgXdEBg5!JDSn0SYgUiEfKQtgk1rojZ>G~A`BjdNC?M4Lp zk>=v#`Nn64-lq{sB2tr?8O3*V(TA&;kEaQU+zj=*0o(L3EB*9MMh)T! znD_s?V8O{BU^4jQ7f&E}iv^mPTUMhQGR#Q1$&~HhgG0wp&ci`=2@r|s$Lr?T-yih$ zo=-4^E|oh_RpvA9fjebO@R%g~{5x8%8^MOfH;(*TP9^kQgHC3&AHUuUeFG7B--f7C z!JHBN?O)lemS9&9|3I8eDEuB~U;>Nb4^3zh2p{IXb<<942?bDuX55G7v@j)Gv!Gm} zN_hn5>V#&cgjFns9U}xO5?I{shb6RxHF$)#4AbSqm@ReGTVb%K`|v*gh}QxrAHiz` zG-9+RVw|7NW+`HdC~}5B65aR}ptw*$#c=UZs^fM^>aVZ)=9J6&FjR1~8VT?rbj6rXW8Ayr2 ze2Bpv3Bx9iB?QOD@W;MQjU`ESCTfj+{}5X}8%rS&N8=e`6YNZz8pkxkOVt|3`Vi+m z6UQzP&kcsrmj?5|Q{x3w={Z~DMIYj=@4qmhC42@aK&RuSQxn)i6Xcf@Xh#y1i4)(W zC8~oH-^e9ur6yvACh9IHB99~*5+^-_l1#x#H?m2VsY$1>B-`br{oy1>;^YlbvI{tQ zQ8w8!j@CYJmRB>Q=QOKcHvQ!zoRv>AC*t zZOiFHlIdN<8I;56ec+5qh6H|_jL}wsf!2)4R=SCYj2SfIX@SfI;?Nq;%#~KA`PR&p z<;)G6%q=)^){I;R5+v&=HS2e4*6DKA`9s#ZTo%|S>k^!O>zRGan5`w3eZQRj&olcG zocR2Zjij4%Oq`=Gkb}~e^Di__-z)c2E?3DWmuMyTurybGB=>z- zE=5`bm0%veZl1Jf9>Zu(wWO$cbFf8$3e#^o=9N4Y5{C1DFb`x_v_c>uySzQ9pq_!= zVj#eKN0cT-%mzQ-qb?tDN>M!?C?2MeBT=Y@!o(Mrk5rZqwk7=hJ0DT2aO0gn7>Sj; zjn1jTr%#jqJV5KFVX>>{*sLD5jxD~F=&1E$)`pZ2983%rs=AmcQs+W;_l_7j7 z6qhN$pg=Eg3$2s&@AzF3oj~^$AeVGlM7AV4KT5aEWLQX8Dr;6u*kA1a$h<;A|6R}m zbXhf2svs%AI4++TkVYr1T9_au8UR4sl@DEHdh=$f9O_q$Un3g&SRkUM-6mhP5+Zh9 zUus`38s$+w7+0H!Q1T#{`y>d+R5c===TL=8>nE2Ee650M)#&JI56S0eCm3?*3Bu1!fzNeKB`lA$Te8L+8$LM|%7?VUDt6dE%(z1Hp&V6=ID+TFE zsFT`lNs4Kf*PEfU!rK~S{2I|@8pU;isnELgz1j~?S(9xwh~dSG(7F&?@x8C?(k_!?aWZW)(i0imD07X)cmGRgN&(LfNnJeIyTe<#UAKNhzczt?#$ug zoRXxpKNJGV`kOU>HwS%mM{94W)sjyvZ%)Rju%0jV6>RI&GQyu~CdjE1x2YbHD|0%@ zqx=Xo(N(c-0Av|A8^{#xB(#~*hfAlo$Og1XJxb1<=q!dehnI6_hZFT6R+hu_J1TT5 ze(ZOA9Tjm#FaOO|lP~0pe$|RrBf2Tr*&|p!r6(UU+tp-CxKCQPGv9bKrWMz&^rF{! zfL@X6)*V{jg%g~yfZx$qPLKI9T${SQfx7FuUCDx*7ex$|omaL*A5PF;euf~8u%-zW zQZ00A7qkn$K$kwS>=d>9#PCs)Otp8V8O+tzrIgkSB&@BocJfGAG3ho{%E zzf+HnIP7UxYoa&wU4NKMUnHiZ1BUr-Q_ph7bjW_N9IX%}N@%gW(9l0Sg8%h(_%JFv z8L_ekyvIPKW=A*^K;(+a;ub?}B^##(AhKVM^?e_2Bg^hj@16D+pNQyn7XH~+HsaSV zGKwU#`vCi>5EK%`=1Nq0aMzt%CM*+O1k!nRK#zZ{vgR*ux7*|p}baS+-&K>(T9 z`PhdgrggE#p-TF*%)2Hof08h{PmZ~1X66@H#jh`R(jL}$5>}X7B@TMu;Tc; z$nieR<}t; zz}_PoQ;`J)m$!GJh*Uka{J4lGBM8hjND7cFffz*L9>kB3#g7m~zDp!d$l}*bx^FDV z>RZ$JWYQ^mg|s479p07SwP!uOUA0*{C6u7PWXsv7OQ9XJ5ViS164`B%`GE4D*%=LH zifHrbQzd16LL#5t0zZ9koJk>{y%FkGWN{CCo(rL#GjEpwMXuO0t%jnHWZ*BD8>}gt zF5EIA*f;>~))$z2km)HF1!@q5po^ZJi$0wQUn7wzahC$%mE%EYQ^j^Gn=~_wV;wzb ze1hQ<<0HnJuytvwCE!tiqEw81o0GT?zKf6NwG^?H;->=11zA{0<|hl{4}N%UL3; z4uV?7fvj8;n<0pWudnrKFh+4U0BtX;wVBPBm(l}DK2)MRG=@8KAvE6Z*`sHR!k1&m z#|!kh>qzX296bx?rE3iANPxES3kPY|iFPEGp$O7FjQ9B+@&OEb+N|r_cpEEsBK;_O z^0=&%X&uAq>GgoFRwJ4H4254EFC$Xelk!$G>i(k!l-+4Fdv!j_Y84~eW(T?ofq#5v zu)LR=QUJ1?CY~E_tXL43&v%Z{b~&>USyXo~O4lUeIlB)dyLk>%2QNQ?1I66(n;t8C zwxU{fqs+MxBQj4*C>TA2LNggy6^|M{UzF#MCJHvJHs;%oiQ6~j9Oj9)oD#EGo|KON zg$)SX?;lDP)ee-~54QX3vj%1;QTG?uCbYI?ZCK$I0fhjRhVMEy$5 zh)a@RrvqL*AK(+%Y-&rh+l^Rf6#{1@s8<5;=|f5AnM%#s`up9(WrQ8yBdRR~)|%ZT zQC`yTx~HN8`Tshe|BYf+jl4%Z7FpmUH!Nq^6}2}s+WIPY6C_JeEhgx*DO6Vy+5;a+r#^Be{v^U$F*Aq-Rt{bhRMSbhcgB- zMD`p+!JI23iX)*-gvG2gl}jXJ0LpRcni$))XJ3um8mG*smi(xTP~AaL=B#AYd}(ELi4~rB$(jG>OgbKD3q?XhW2BbT#eT)bJmHUF$+P2u`c8%2N7ql!*S=3i zkImIj{YoO7oj;a+vzG^54mm&2FIVHv!+p;ND()jL?vZ+~Vn013I6WMNK8SZ8Nk$*X zXar|(mgj`^1q*BGkY4`4Ir#A%PCD>c7Y7#+3H$Z>4?y)J#iSx6%Jmb6;qs^wm9QfY z`XMqYLQ}SYFh5LDZ2cUHoxU)7tXE~9ss%zYF-Df6F~CnT5x{CmIJ~t#5P_|^LdMTU zub73T!l?nm>kBC$rS=-Ybt&k1&?ypyfCw3o*uZtB$Uq`y9f$yBixdVir=xurhbfW?9#wG5 ztCA05G*|jW2T-hUv|XwNo)*H%pLiyc>%LxS`8aR4fbMFvq^F;9Mxdqt`fu!JSoy} zz8=pT{*JbnNZ=~4>UF67WG!B;?R~F;uigq`MEb?mDINHoLTQ?I_es7XG$HJs|mn{xguRasjHu9-0 z=(NAGS6^n6s&srRG}~l95=ushnm}{8uL*-IRAyU-5rUX1YVy$K$UO3mqJ(bmcZuPN z;d%ib>sb2E7ef3dv(`E~+d-6XF@u@6K--oXu8sqK6k`9eR{;x3=BS9gT>84<@t!tC z3JQTCK#9wpFgSk8YSMDBXu)7tnUn zq!-C0K?K019lm{X>QUo)Vu|}h;?c^jV(aZpC=(-L%X^xn|Ch6+DKE5#Yw`OP8R|QL zL%b$Sit`Lc`nEIfWy<%PHt$OlDC6V7clQ;$&0kl21TthcdJ6PDFkG=I|F4u$#xKy0 za=@zlLHajQs?jf0bBhAIawT$B2$E*dtqP8e$BhLK3N2MJAFBd>yX-pK3x zR8Oki!=R(I(+_%RHkT+bZc2oltt$X46OAnwRyo))I^Obx%uT!ru^ts4)&xR~r_9}}B zTr7$=rTlLHit^Ttjw`@g$!`=TooU9B=26Ot@pM7*LQ8II`AiB;wR%DpWBdD7q%sVrc_U>DNwtO~I9Mc(FWv znN*>jIoM;d-Izz*yD|n7x&?xvETrqO_epVh0pE07S42;UN#pX&#uXsTFxi}y`hM|8 zqbNwR6i;Y?y1s?YX;HM?usDja1IAdtG{Mv>#EsL(y_KEKu_1X%sc zya}|VXbNm|S`# zWkFHn@R!y9l?z$wzc-L`<ulJzGgUVopJ`XQD6t-LIbKDAG;3-27I za@T==y3k@OPd31xAo$L>M%fWVv__1^&2_)P8mW|$R>9Srdlt0R^GcVh$%bM8Wa^0! zza9lh>!n*L&gQaB(2jE9QB7<@yxJ+Ft_#2xyJVY0ZG5fVA}^tPvV61!vhT$zN$YF_ z8hE>La2qRb((M9Hy%sv9%PKSV6{V?pW=lqj3yy_Wzxp5Z{nKa=&&aet&_ztt@uQMGh*HGmWq? zEcR`X#m4-wpy7w+MHruMB`x3MrGF4e9WodACFvU~jh`AMWhU z38XOmI}>;l!Vzr)hOG%%%hw>_PF@~{E;wLl_eh}9F{ghm;-wFp@PrlOpUk@yoEs#e zf5BSOt>GHlLs|CT;E43=!SKoV`OvXL>^KqLUDVOyYa?qx_~1g2+7%n*wqNW0KqS{S zydb*-FpO>90<*uefI>e4Vn09e`UxdFJ*JAy=rT zcAcV$+JT2(`@PeK1@DK{x99hzQF%K17@3di!M@_n7x!dVKmIcEF-$ts{ChYU=mbc6 z-uU?YCTH_b-;iBalV=~8Z`?6oR)0$&AoqBAs`JS!0_vAvDs=xQ5Xx2aXKEo9VL*WW z_7lQ|k$ALAN{T71!jNJ__c+ly2n4am(Mj9efKweEtKp|yO?aO>|K`)p+kG-@5BzD5*aV>M{aKGbV!+aL##4dp2pD^jEqXkI>TT^y zts8<>sau1s@sjs_V*MDrg52GyQ~gv=Qn4#d$q2%{<}JGjjj;3qpR#sa`+j`=fpKpb zPQmA^`k!eh(nAE&%M|EV%pgy6MkVe~Wf*N&d4jg(AHS_(e60{&X%GF%Jz#EIIjdKs zNtjM?8NgZ-$as`S!j2#WLf{Id!(0>1gVKX!{oz)6ytjg^hWWDL8IcEN!+v?_HLG1| zEumI3vhkOanTTxc;v>tdP0J-LL=8m;!_}BDZu^4XWm{~z0XbvD5&j4X8MjYL)Dqbl z;-QG6UYKkNWS!ze(Gqm%4?3H^79+W zBNP_)u;p+a?|t3M9i-JZKg+_$YD`WUn(gT=73*8}(Aedmj|4CQqEQOMDnDcY=>T!q zlF$GlXpmbxU{&TPjqt74I1n}-K3C_*-W&fk_Q*68!QhAQJw!PUn%Gk$8xQTJQS$GR zu|k+&p`=^JWb3fw$jvEkXrQ8|skoW~sMoK-&mKGGf`^0q+PQ4yvZA$gg>wyP+e zNW_ls@yo(g<#|@+M@1KlK+(EBt&afq_-I^+a2O(O6i`kT*ou{e&XBeejWAfBucxf3 zrmAKxj(|3$sT+lGHnnswNUM*BN6vT^7lnU=Q~0PVwJm~cf%n#Dx{H5|Bv*|9xo>Z5 z6bPOs=p=uasD>P>M!^I9G{ultqw38x!|JVob~e34p-$b2Mx%-SesFq!OO+z%oE;#T zN#jiK^ZO!Bu0heKE+L}v8H-F(NkiH}BL}P@6R9D${!TViL!om{qf|q2T|@bWK%fu)lR)bV4{iJ{a9 zP+Ia8*9mf1s@v8MiPV9c=)glOm(+4~!Y6bjdUYbtmRPrSqOq2lfZ$jb@H5$ z9GvI?2AY7ABf&3FaBAi9#~_{biDlbdaON3UyBC~|rK`3L&ShCyN1RLN)Gb`s$uZC^ zZp6>?(anw2ExiGkRqAGT>Q*#@E7x^X&vdK5f@`q!63O-Ic);}{da59j+Ae}qS$Ds*aA|>9A6q`QGB^-eH&f30eC+l(n)u4 z7X5;Z14Qdl&D_m%-9pfQrdn;vC$ES|7VJ(~ z3Cl;zS~wwKlXU|N{ogj80VU=^_(f*-*6G&vl+j_(MoI}VBE~pJ2cYIL83i#Gi)DF} zWz@CQ!?w^P%oWAol$1ndx+E61yN0M6x4F5qt-icfl+K04V6xw1w&Jtn$BqyI+k_c! zi>o37i#~QR%X0(`3m!ztbcO3iMW&Ph6x?Y(cVWC0okXM9dmS$p=Xd>%0^t(j)kJ{z z1bY`}1}>{RR}-Ao{G0wQFl>N@jkF>Ep259lpM&y7CG}=RkHOj~z~wz?O>>*r&|FBA z@xUKRu;qXSvP@2eSPij9=%*qw}K;QS!cG4$yqgaAa>h@w-ZxSk@3mXw)`_)Nky_j2@N_Iuqn<-l1ow7$e?0ZG$O{#`qszw@7C&-sb@Q=1lzIY}7KH=!IaeFvO5h#{tbw@iMJs`%zsfx^; zCr=+%LCyb+DqF^Ym)5@rYpPH3SoXVT$OOwX zCk5Bt9Yjs#nXezos#M0$)N**%wvP4y`rbT_mZ^&XqwG|s`&AgqiNzm|q&v&d>z zw40ye7}aMDIncYO9SiP6szVTSmk@6ECDCEy8P?Y5fb_q}$t9IbI>mMwRqlqpuQ1YTnz7;<44t;}zPM^M? zGUvo1Nl5Y|RyOH+!4MRoYAB!8UF9a)BMXqi9iZ}7Sf+YaT%0LrZ<^}bA=sTWn_U87 zMgTNv*$@>VAqOpelw|7_2cjFz!kOcD+E4W26}S+hoP-$|K_86Zm-Q_k6i8z1Zk2s| zc($2me50ccm|JkqO9FA=xEfEM&ktNfa4?w1u5J>I0aHllMFPhNjgp%spAU=Kl*8Ue zbKdMLu;1OXgqj`abz1Q92(m(!PRCzRzNy1cH5RV=q+^Ukcj3an!pILnZ+Z6t%V;6P z7cMGIY()n*oaLm%w!v&S-<0>=*_vHtzJ=hP1&O=QrutcA``P?(CyKdE{pLx39<2m- zEzkLjQgoG=;)eW5Q2gLNFB|LhpRFhFi9R9FDL|bDs5Jyvvo2ED?I;M349)_YlmXrHF9|=6h%w z5Q51V<8ONro#G*rL$}57&618PRRl?Fnpn4X+G7v@=4N;dAzkwrGM_IperF zwO{uOC03~X)9FIbg}m~i``FE1ZrUarXSP~E--IQPCloiqq@omDv@fMlMO+Mg>+qtO zmsP-X(;dtA_jduH&EID)K{($CzI`A5^+Pc3nE?+tiV7k_Lcurh-5Ch=6L2|Qs@>TR zBjqz6_81O8eannfC`)-1O973cl8Ixsi8DvQM%0oAmHPFKq9+)4sm1{MLJ|>qVc$#R zfv@jX-I|0M6By(&1m$uxh+X}M^98k&QgYmAzr-n{YCuWc7{=mo*q?eVn-gi*^am2yN*2v6!+HGVN*xqjTG}}!Xq#N#v?JFve%$V~ zs8&7`rjQ7TA>NX|Y|XudzAHr9#TpSPH|keq%%AIUAq1Bh0%?dU>&w7^YT~hfVH$wH zd!xx*Y^qxYh^R16f-2>g$LrI;{OsqW%p4HjThFPS?P&^$AQsbsdu&6bFv{~z)M}?q zPPGAbMmNw$;WK4-2NViOXf188TNMzNDx2|#M$0jqr-wKI{r7c_Gczs!J0s_1nQccJ zwWJ)C_mgjO^_^~{l0&HzW&IrzxA}DBsG|s%RM3v-!Lq!;Zp)6$O$RwqQfcO-XpxNv zUyzb7k<)^>|9vxwMs);1V?6J90mzBV@ShfbbbkDC0h;fJ$kMC@Q8N+mTG0UC=qB#) zuy-mUcvxH+-&7@#8fpx^uY&jjzq|Th)8%!%(9UQ@2f5E8Ym^56@?fZW4YUbV zA~6z1)W`Fb)`^0GGsQmBbY(FqMRVe);9SiNKUp;Eos!(7rIpZJ>DC^im#^|fF?P#o z;1CRkEt`;zsz>TdoxI`Iq|t?M^As_d#w-SeL_mUoB6%2737zPPO`s=3k%V=G^5BOe zfVpa7OTQ_&sy?l#wc5oljc`3NG>*_pF1U*i37u2;&)_@nA{jAk=xf0y7X>5Y$Y}O# zG*R0^IjvgRKw4_JPE>mEZM$nBeCorHcq-JUkv4zryqHU%U#~@TEv@ys(XT$>S=pjM0qP$tMp8gU zP*%m4(Yuw?HA;x76&+WMj-%V zt3v(%9*LpS>-33D%@)JtVyFm#h(yBpS(84Fezzk_lShlJzYC-6Xj~$c69$E=Ly?U# zV=3W95{=$BzjVQ~F*<35xdv}&J+u7crdxu`KtUE>I{2oSIdA$cY-n}Y5qH3W1@Qux z43Z9Vst>0NRL-8k-bOo#9p^ie8sg4jXk~ik(09$%jMWlW8KWefI%0@LXnt1U3^W3O zZ0vVdVf;WKCeuATmT46-xyBNK7=y&5C$ za-6Et#UqYT?T8&P{C)v{P8g*ABBXhh;6c5>t(F`ZODpHzC@BU06H@c}Jv5<^NL`vE z!nwlK3O6BV)*(F1lnh|6>N1L=&*;AR`NNpH*+eE|G!VFI8F@V@!y|HNgx+B;OQOR* zOpK3=2=2pwAJ;qfP>M_#3;Qh1?k|U(8}~NgP%ey+z1~_zV?pldD_PrA9ED}xLM?;5 z#}_r&Z&^2n)*0zHwgvT{HHzA$NfbMe*0 zy|Py#C$u3e@C4@KC4nC3eDBr8+FAySI2{(0tT(@aaf_)RtDgJ?FG zcip^U#?$oo%5|*kJT;zWNC?t zzOJM6bTDcq^Wo^VQ1!wB5mL~fLf|c*5n=OsR}TCY$k}=BQ!QJfx4s;;*Oc7AM%f)7 z%#8`aK>Wj+2{8s@Ts9(GviD;%l?1Q{ZkOd{5`3p-HmN!$ z9MQ2Rm#r5NN(_b)|2Gw?$a4H!SVCQ#N%a*LgSRPNaXhv$>s)(OKSEICr3>Pcg>i|@ zf!LHDTp6gwetdj=K=CEctgDJc5&E(*`@YL`UwbeQLEF>^IV2nuTm&|KN^DsM3A{Dj z5FGyP3332(&O^nqlB-~!ZxMsL5{ac`Jc$bzQD3@`YA|9=+kBN)Kd}TmK#U=G_CNM& z_UX9E@=?^Em8S-a2Z0f@2g4r1Qx|IxEU%Y~*6PdKkiWiUK#x04G3iuOzplrq1ArrW z$nv)6ts{QGG)8Ys;%%F)bgWWu?{e(CXxuG3^CU0^Ap-o~_OS#~2R;F6t0bxySuXu> zI@XP(OWet2os8*Cr#DfWaZ$#dAa=cIh#pA2TvdM}Lk70~d~Zhk(Frl0g`!gO^A4ag z|ACZKA`$ZQ4VkfCS$PX@Up5Fh${7A;4(vgF)M_22&$1W6?7`*wBsjx&_6G;GLzHT< zHFujG%1}UdB#!zGk9o>Zh`#g0u>0?fWF|vKG}75F^JG2n; zJ+Y{}oQW#SEF;QgJfrscpbcBmz#I(MPr^Hedakv*9&=tH`q&b!y8Q=&tr*o7IdMa?$^|(NPG9y*?a_0JJsGq(ocP-+1ZzyYi z^2a}DVf1ODwI+k7xjnu1V=l%p{4vzXiN~Pbt=Ip9ONER?odMt~HG8yCm+;l_djmb; z&SX*w(rek|@BQ#n8IwNn0XaBIb#BwxVhedC+hp75pN%FxqYCf*(7#+wII-ehu6}o> zQ8%R@vi(N7^|bswE>c<&GMzlOAwH@j1%ie&ju!>Wzb%BwoQSzOkQe+Xd+H!smL@t$ z80PCAaZL)uCVKN8fQJdi>ljfpj|aveyjiEP5f4M5o5Su)W+KnUO;aVgozv;~(3hFp z!<`Ej+0I}V2l4-py|;{N>-*k)laSyN+={zPf#U8`v^W$i?ye=c7k78p;_gh$#0rk1r$%47T#$KMMBx)6y@XEa92MCS{THB7IZGh2`5z(5) z(GTmnJb6#cJI7j6oO=R8c2%d(C=Sw~H89u@oJ7C`hZ%{?2DZU)5~;>|Vh+;;Uav(( zUj#OXrXKeJ89()XXCzbG7)y#0zcPYGnT{+5`gApdM2k-IYmvtCC~r)OO=~!bGVBb zC0s6=;im8QL?$phOy*t$9a=p!jWu6jeGaF?y0hx3vr<`|V3mKbw_YScByHn3sFIOF z?5AF@Dp$E+7S~CobGo2|jH4xggqQw)ihU60!b)P(O1pqTo3k8Amw|1XR@*dHX50!k zQzln1#vgfP1OX|K>B=4H4|=AVX+?S8E;C^w@DIs5lj&=nLU6(*>G|??o>(GpO6r!; z6MAXIetneFwUDH^9zsu`4qF(zB|!a?zNg8pXy1-u=O1B*Odlx zSsN;{wCK=fydnvWFs{>sLZvGu53J>t?NTB{(G|)tF=)fbHS2JnddKPz9NSRa^e`Vg zZz7ENc5myFmCcwSva?~#5jZSz9-lB=Ds0MR4~UcBJFZqJouJA+2ffFH`C%{Uhg+jq z9NrONi{Pf9CIPpcxAvUKe$8SU44cd|lH zW6b2s@9e7aP92S_5fzFRoQEzcqgivTjdQd*z2?x2QPa)SvUd60{S6w`p*}m>d`d}N zRB2StL2|(orR%DS=PYD>2S(Et5rGVpEC?FYgHC1I&gY9&!}C}fwSN6nrAr5((Z|_L zbenej&)8U}T}x$ICx>OzJ6Mr)pzx~p279P9HSM2T33=*%-BKHUjKLb#H^WOJ;x^VG zHvT(@VShHZ80F?}wwBO>OtD-%ouS;%Qn(uCI9nlkE0Xy7Uz9Ye-(WjRwx387$u%0< zdUH-EX&aX{@)#LtWLDQ!>jLv2E)y>`ZuH1BW)^+;@@rxE5j7KNJ-j7bPAK4lu zIb~inm9fCIs%sSg8WsDkcC}{xj+Ld`X>{14B(}x``08e-{+iO+wY7d`*r|X4 zf#(TkymLY&amgc5V;FMwP)}U4}RMkCHn*=PR-V^6Mg<0dI{n@dOMt_RB8Qb>tVDjWnAPMoeZTIU_tG4d5PQuEi%sHCdW zyVY|76?+=CX3Aje9RFs5w~bD3zyS%bZ0@b#Uw9Ihcp4`eRGzrI);Teh#+^|*j7-mb zk#5?WO`?cGC9h;YC2^+wkV06@YfEjfDm+bkcV$-8!WKctt&Uor!#h?0LzQmPCc30A zP39@JJzRYyqa2Im!?`L=jfzLx@lAu14rkit${ILlI>cNo=?_h3l+U&OYB;< zgU8EHU!E=>d=E~|IomV8mR0dokjT||exMk3p_F^AbU?;y>9L>8C);zavcvb>AxG_) zPyL2(y{lOrrA&4qPqX~ZPkv8MC9~$r5Opf{0586y`yi^j~ zUZQv#es41)ZinNwn=^U;plP>w=6%f5ZmIBdORC*U&wEX?{gusQ`;2+JwU76>Tf0qE zdv{2?ZKi-GQoCK{PxI1t`;MO$Z`&Ovep-&SJFfk-df)DJ{PWd8yYtOY>+kI@C^t4p z9j?STw)h=xOgDBeo|CK{9xCK^5*?nwlpg9GUJ6E@FFU+%DBWE;e7@*=2Y2{dzVu1# z@Eg(dE$r~8)A4WY2vE218|Vo9t{*tx5hUUjwA1n0!{GIKN3gnA@M8xe)yE5`GvvT0 zgsL<2yH6-rXBd)im_%ndzOSR(b@)rc02IMU7hl)bXHmHwQNf+QQJv8N&tft=y$c0n zjXGi*J3Tu(<3ygtPx!je3nmbEB<%RQ9(TUE5lFo8bq0E$)*joFaQqyJyOKKuQkeYg zxr9%x#7?4 z@G~6{%3Ev8oA)zb>&oxoFF5{X<{(&DcvJ8wWPs9L6vkgnd}sJus3fT&?|c`LjxSvu!2yK|ot*)~U6}z@g(BUl-2fc>cXdZkPpxq8L_qDlNZ&|z z-_Gy4~OcmaD>iK%q_F7VPzoVj{NfS#DdwWZg&dhm?Wz>hV8pEeSrP7*ijdOw1L7jOn{C&Yeb zN^E}-zvC*oX$&sRANc)2|M$c|?u^944(qlusZR^1eRNlvGTnQ_5i1*tJwnXESK`{Do(&n*G#nHQWHtW-e90 z@8|U|d|QoTnHVCkEd0-t`SRHUUUvlcI@Q`-jBVX%kM_FtMqS=N?tWCgDAOOx;13{j zGHjz5dn4CH)X0Z4-x`j}PR&7sY+* z7|&im=~CUF%6{g9-O_e`{JvU`sdLNU`)sw@<>t?Wug}H7)I8Bk%AmW24! zi}$mF$D!JD!Yd{3=S1HPYtM^!?Z2Owtc2(+NaxcoFUZD7>nzF#TP!asI)v&hDL-RV z6IS6*#~fA@dx%|9ms??8)>NynTGoCM!A$*cs1gu}oeQ)9#suMmN&!yE?XTbH7=%bj za58cl6cl`H98ww@`qkBSN=mxDy#s)XF+4nVa&mfc@f`#LK{Z_AlC=~To8(swG7EM_ z%>L!Rj7G%;^k)4Kl`byT*~WvtE=jtPcPvoJbaNK?40;@{BA*~CBz9N_!p#jqPSBR= zq-`zaEJ;Ovf*y&)0QpaT3NgqX{2iJEs+5qB1U{FzIKaK@4iT5=3XxbXv;g=iUFYZG z;^tidBBcv>YPHZ@LLAX$E-oQ0EraMf1Fl2dtkA4r1t5d0oSmPo78b6a3knJXFDz!n zeDdVU>iKy{*Ev8=IXO9j!{NXMJ$))@Z|?x$RK(2-0ba>wbG3QlY6%P6*VhlYbOQs! zh1^7dmIB9pqNu2}KQ>U#P2APhy}Ei108KPBG$teKk1c3+v&?>8iA!TJ{z+DgNS_Rl8)z#Gi z%>;m+bQM~hcNKPpSOCbC$p{||3=)8`5>l|z)%DNybgi5LG?ulsH2{(_I5;>rH%CHB zhlGSgOG^h}RseKNp?SzsLF)PHYF7yG= zfWVUY_=Lic!itKD5OH$=^#Y(+3cJqOIi3;`0atovZf=3->Yk4FFD&dzOiU6F=?(}8 z1h^{Zh_1py3qThDpQW&{yA6131Ao5i22dTL66h_!cS?fS}gq!eu_q^a{j;bQ?{quYS;eqQ`+k`-rD|) zpHly!!}Z`_{FLn;-|zqMQyO;$5J(vR@Kg3iqVfOXr!*f-B+;n={FIiXcUb^GWv1)x zKm3$9O0~b))wQOx|L{}(_p+=1=lm4)3@BPOhi=n9{FI$b9B=V0!5BFj0_KoN*f9AQ!ISZLoY%w$g2?2 zVdtb!8VtNi?h$0pH0GC@q);JgWEmo*!(@5Jn8OrhfvLk(P+q5nG%gfA2pJYKdj-Pe zqt;B^+^I#uaWlxZg==Dg{Wur#erTP;e0g-qVk9_1qY@k_yi^uX z`KWUO!{HmPsjVxi{?veDA03MBJT6!o2HDP{%lEny)Jb}kmi+l|cy-z^JUWdsV)L{n z+xax9y@71hzAnRptiD4*vx&J|Xy}f;zKjgu?HN_XCUqONd`Ry3I%mixbDNUO)(B-< zE`bgpvmKyNLAY(2L|>cHwhK!o*&xqq)n1N2F(Oq&rMJUql-fM4O`3cp(s7>zpC~Vt zFXe1$q;rmV)~X*^3tt(R&&Ac$plsjQlpNOdmLs#^$Uc>l#xdshteeIhgc5o7EX?D! z-AWC+V5*|n4IaSk}!$-y!M~&4*Vsu9@xoa815X7 zVS=Zq%@}xz`9m$FWljN`4juKH#auHcN!duK`#q&bKMQU?fuRz;A7215;a%Xbj*Cb6 z172N~11eN{^9e?z!m6pM#=j(&pB}azzhfY~D`RvZ1-`~_Vtl{Brl=Fno9O>mI`;7S z&HJPd4C;y1abC8?K{t7fL3nRduZz=X#K(X<$-&k^WcRW_hD)RC6kS}*xg*WZcNjN} z(SupxTp?hMJW0{4r0)i@L3pw|_RzuTP>qDwP|da91nwgfLv{Y>QWU66eh zx9eZ;eemC+UBoQW?kb|cidtI1)O~@V>}k+r@i(ZB4U8jSY_T0e$X!sAiI$SGw2io7 z&6yMq>!I>j4exN++hq0(5|ymTEB7^f7RHj175m78I$a}XG3carZ7033QnUnH&1vbf z;hf%YlIzGej!vScME*FW@(@gtxveW%?4=@!?8+6Ld%Nc zDpgEyEyLL<&*m-U!PEq6*(@xvWg5uL%M}o77{_XhXB;|(=u!6L2*-+t-=@8pBv0i# zj)=Iph;RmKBmsq!72Jp{I&&ySEC7=H67bCeLWAF}YYZW&3P&2Pu&n$HKPiHD~U&7ULuB;<0z!!u9PV@eVxd7w-tY zi&`zVSLN_rA;`<1+E)w?0XuAKx29#e_9Zz#Gl;euB9-ea+Q^NYr{VS0oCf%owCc-B z`rc$j^cS9)4Ui5HmH=zQ9v*@mL1fMr**g4&fyVuX5gQim+ADTX;$Hgr?a?FttT^6u zQVcWm(6UZXwx3PTK`6>*(&wWM@l`#vD+d&*wG)ib4WRASQjqVSRW$rSJ0ZXF3oJh! zZD(ik`grA%Hze(kDdgF)Upa%uv#OrtzaklXa`a=b^HG;wz--oC|j#;M&xXGe!lZ3}8C0?+0lHr8IdBTANkQg|TmN#|& z^koJi#Bw=Dw=Isj#wOU$QIC~;1_^Dw3Cz;1XK$2~>5(3*{nH7UgUq2v&U#zQ{_UBB zQSx*0n;t2DakHKG#$YoOC=!3*f<+GzkCeYkSNbk7svQbaA{qU#ip*X{YV4PI zw+#LH9-_@Q8VI~UdOclGC;U$*20?3*dK^zP!Q`y+1^I?g5|4}V*Irc~T|&$%dNsqqbDQ+#_d zd(#!bGQaVsqjlw8xhrwuYm;;ji(8kgy~viQqYrA~fofwrqwzUGq0TIKL94=LM#2Mo zqm;1eW%Qgo*cnT(-C%xaZ9;slC6FM;^H)FVhjmD6?90M286Z`UI;A8Lb>&UW_s#?| z@p`sn!M)|CQmEZYBk~48BBwd}?_6Wm$|sLMyLUv{BP42=S8kMp8x@cnIfu@<~c>$f52XN97r`N{~A#lmqMh?Im>$ZtJ3A=Rb_uUk{})v^8lNu+npLLn0# zyvm!S3#Uv{-VJ{i)e;6<2!mdRVYvc-7!vixS73||Bjo2lZc_-$pu8^+x3BbgaqRD} z2ZsC%^oI#}xl2gi;L1e7rK5s6v^^h4t6vRnZj??1ECrE_%2f<$ zvf&PX;aOoB+1gRY>*`?NjC6NBzb?wPWl+qOh6xL0gI;0{pR?UiV>@l)sz0aFk>-~Fvcgx4Av_5_TJ_N}4r8B>x(jK!>Gy5|y^_RtM@ssS9; zF1tM}yT>E87>`BuIKYS`f=-yVpGa_r&X*=SXMlkFxj>ZVQiOmV{NBP#Ybt_QIFR>O zCQU>x!@5i9dY;_pe9YT4zfz7c8E`8Eytt8yZJQeWtX!fxkNr;Yg@2iOSt-X)R-60-~(<@&oCOT@IduV)K z!crzn0>?_#P-T#xux^I6UCN!EEqzrkio2voKoq(UCAr>MWjM(@+hGANGLZyC4Qsj~ zm063-lpNcaN85BgUg~FT5y?kXi#NhbqY^~1_A61iO@{0g!nHO?C8T?iDkqgXQAUhM ztt8f^yEn#kkDHp2v29V(^+Ct}-14uM_8a1(-}ZYLy|-YMFsu`Kq<}FjG((Pwj1)^_6>C+x+z#Ny>?C zTl(!ADjtVDQOA%eKSdGW7}%k6*sE0Jv9x0qNpa_B7^n50(>55Nihg=mA+q`QB}Uf_ z1K;(rMbzYgKSml^XX*u+{6Vdy+i$DLE7aJv#;DqQ+D?Pb)aWU`fy6k!_vt2ru^_+f zEFel)Qn|$&>1n!T*x0d4$)-96x?OZMDEm%~`Ab{0urY64b&(+p8|G8{7x5;3iS4;v zD|~ox*IqmX%nPp-+N_5b2BW$FD-Pl+u)&oA`p8FGN%mSX1)EwYU1CSaLJr2>X(QY! zRHj;MUy(=i8S>q%F(h6!yel227#lyRVYAKS>lEOe@tHXFN#C~Qg}o39WG{yGRzwA+ zpgj6^VSb(XM8>FS*I5zWN!vLd$Kovz@2ud{1i-TCNh_%t0!!K@g`c$$1eA+JclV`M zh&*LMszq|W>o)GJ%qImWu94|oO)m!;=-rqF1Ph(-bZI*FYPuBftz0}X z^4Uv;fYm7TAR~{_x}s8Oj)ACa^`FRXe3;pt!ADw!eLfBY{%z`t&gi4ULZ$(YCUS;I z&3NIz>sE!2Vm{Mno{v@RzBGp1Zpj@i%?*BSX+oO^70ugECl)@LqrRM>g^$eyzyk=! z6qAa{l>1QZ`nKzM3}+T7xA6k4U4L$YcYk%y@UeI;vtTUrL?eUquULpikPcs^)I5p^ zQtoot{z~Y|>h_O)zgxD%e#VN5^^7yflSk}5VrGVl1CMlf0oRF}jCU+0W-+aLkz9;} zqHozS2%nKUgTQ<-1iWgbWin$Z8sNRY4y*XBQ$LR%@LY#Hcx_ z7oa>zA4W~KV5OUV`2y4$i{sl{a|tvB`CA>|0gTJmYS8vg$ktN6fXD*G@iAe0m*V46 z^M}H|ZSoPw3dhIOzK>gOkeu8pCrFqjyN_5P zYcu30P5bO0_c{OUb5kDh_V0^u>(j!Kb}06R`wueB_ZXb_A<6qs#Sdjo58(@D62k|| z{f8wy`x4lPoQqU03ubyr2db}+^q-T6|2ZW6hzAErh5djSh<~!;Bz^wp5M3O?#ePJWiJxCnBBu?W zEMpO*{W-7#A^qX}%1(ofg^XNY-;aSsNQYrR`{vtx!?)0S=E=38=Jc=l#Amg?#CNe( ziZd?JBQCKYamDWm!?roeA1^HLWFaT~wSbYEN& z2^|~NZx&B&!Hf@%dn+w5p-lR|}u&T(bQ_4DN;Jl*A|@!mHES7he_ zD8ueglq4vv#!dhgp7;g$91Cow|hRC2g1c)1&M_4A}HtlPp8KLC?*8z9E@y84TjF)b6?zn z5J<%RNCqJM0B(JmN4Ry&H3-y;=)EN}dd+lnS-l^$g8>IY(c|HRW(XJ(7znXOfJVY# z1n8<7dqp8o5)!_wbvGJF6a6B1LsueK2oW2?;>z+}`+ZgQ%mVXtiS3a65`%vcoG7 z6l^jDkVbcEn76gNO)mUQN21Vz($$&;pCWJzxJid!<~;pK1BLl9*0+*#(_hO(9>kqompX2s{s(h*_dVaQ=J zEW1u%Z@8o$!xq zZ4DVhFCDG6)9;e+0J_naI$2>nU(W7!`LTDz>t?r(j^jB zH(y?K#UI|Im(-!Bc)ZVKv_xPC#f@Nq%j?FxIf{CxCm9PWnHY(^k2%-mnMGCF<)x=Rz{k%gFcmL z$=B~fitRpbSQ(%EjOWgI?wsF~s(6}=`BI;l#m5N56*Ik-{4oNOE13RXF&vqGe& zWYS{pUtfMEd`F3@W@9s#J!*TziN4>R@M+x=q>9?DKZ>sx=r&FsoZ2Rb!l$}|-&L8(whXTe3{VVyM`)4K8Wm zunYexxVUAK$S|`Gm3vz72su0)eA6Tw3LDCQNiZq#El3VX=T<>;)6K!#oMB5%eyKpc z(A-Y5z(s1ji!326j?)kkR6%Efn*fAYvnqg6T(zCpZEIxer)_V9v7yK`5YfXL-GaA- z4GX2HxOLPqmIRYn{=40O5Jj*}nYpiTkfbAu(5!K4*U@6$wtK8Bdhhk1A4X>?L~tK5 zxQ6H6u`-PeyiiSox}lLPlnmYQTPwaMFhHRlNzn~KHH|y8q*gamWbKMk^j}KMx33~& zTI5M0BBj4QMV?mHa!G^UuYX`HA1Q)g(K!#5<6Si7+>=vLj5w9fgJFZ>u zJsz7}%CaP8d0c9NJe6U4bn5-!DfI2>6XG60HfF_L^q*ywr-p+NzEcz^z3Usn;OnV! zG;YOB&mD?@3C-8T&4P$K5_|gnwDPXx5RRCav&NgG!?N}g{9ivg%IDCa{&~&<`;cv*6(I-;g zP4bbH3Jz9Jtt{v)4M5QzmYsx^#_rk@W8*sYjb+=pg9a}`FfSW8itV({_CM^6UFGoE zvABD%8UH}@Zn`(n(rPpm8LsE97N=Sz5|a&}!7o2!L}jz%rIN=+C}}npR+S z^p9`by09xND}L^%^Ye4bHG^!sXQXKco}H`A*0%2udAs1W*K;-2^86xt)<*uxHL6}4 z9?0wZb|?)~!u*buS86F(A_;^$tgUfH-zutoVT?BX9fsRP?M2B+1pSDJjFu1aoDNVCYGtb5_^2&AJ1`gJG8^p3!aHahIOvGEclJ08Mn$q?) zIW(MfUP#!%I+XTAa`9JUANV_;5Cy`8wq;sz$rvCz5c`|-J{3% z^KiYqS#M}ZtxjRy!&(?lAdM(V6Cr`485{XRrznXej-LhF7xnF3bV+$4tUucGuGR2m zF(^-S#=Vv3$Be0PQU+~-KKr>{;lhWw?{0*FduKey{Dt7=@<%(|^A}`R6v7_v?`PE= z?0j7xH@+zL?L2IYTg%mX$=|3f&q|2-fK2=N_|;$L?8?s)y|`2Jf_AA9TQJ;lv3{aa zMf<3x+M^jxCE?SX?weu_SxZMQ?3n61`}V+aU+9+VI(~zikt!iPpb+W3nDA|VWW0Hm zfL0j2agF??dN_=h8{!|$0cH-I(B07#c)R!=j4S&4!* zoCABPD(%39;2$GDWcm%fo#4HKL>B5(GY)DvFRWZkJj;_!S3+PzpX2A+*3x5W5hH^N zU5@x)bI3V2c}W4)nbLGb>E@-8&Vwh${Kk0(POtPRn*Yd}SwF^nP6*SB?9oi*8$;zs zv;&HPk{u+(_v&-OoifHwG0U!R&Lu``Bz``Lkl^pO=u20c9zM~xudm%|?~g{TQXNxy zuR@I)f55KzrZK`%>Rdj2yR>-SB)PN0gw@YoTei}C{PIz0`RjwLes@FwL5NX@u_gCD zQVp?fvq4u_-TUqPu3sq| zgKf8ye?+_(pAkDyH0dN%Ygh!2PijV{@W{T)=Pfgvft0?octuD}m53m@V+@|?&@b)W z4A3x`z9!5JDeD8{lPNLQtpvJ_!7fzp6i6*>Njl>SH(9%z!x)2`U{KL;n4&lLQ59`u zX=+$NRwk}%NVs(9T^EMP*VLy^!E!v&(eFi(Dk-5oNE*zo4Z~4Z;W~W- zUQ32fa=6~c$2S}UN5Z{$V+_Wz`Z9Wsii8G2Y7UU~55>oqqS&$>>Lc$+L?6O,#F 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 I5OnH40oy=T7XSbN literal 0 HcmV?d00001 diff --git a/docs/release-notes/media/releasenotes-59-requested-version.png b/docs/release-notes/media/releasenotes-59-requested-version.png new file mode 100644 index 0000000000000000000000000000000000000000..345dcd07627a98fb12516d312fb05b1a38e5a039 GIT binary patch literal 21386 zcmbrmbzGF)`Y#MBBA|dEAR$Ny0@57=N=i$ElyrBu64D^u3{oTAUDA?6_t4!#H}5?@ z?!BMq?B99M`#J9)_eX@8xnr$$UEf+0^g&kq2|5uv5)#rAiT5H3NJz*K;81?_5crK$ z<;!5;A2gfy>h?%TnC*xIIhG!i82BZsgM^GI>gxT+*wk$6_p|DekX|B5h`dvBN!fw9 zJ7`RJE?n*BWUH0oPQ<~oqEMc4zCwmuk}{B$;VS-6>R+Aw#Gm^kxoVN}sRn&+@@K** z`~4RXe6*?I3fkPS?^8D4+h-?4ROLUNa$?Bf+M!Z-Iaw;|(pSI8avQHntR3)lm1X@`Y@tW;VtH}(_kT-Ae4o&|}VPeB>usF(?hwCX#dUQR5_?Z6qZW3x9Fj(g~tn9NkQ zsS$S=tE#O&C@_7av$$!Tww7poOX42>GspA{zAh)&&j#i1|E%Scj;#lW9W>v#Tivza z^%vjpq2_JXtrp3u)6;QlHM&)%tGoKUos9KjY|km8D=UjCk2UT%tCd-s&v!IR-p$4K zVLcOyX-&4DUzgnusHtC#xcEg@NA=cFUdg7;VRKk-jFRc{O_M(6?1WJ?(f=%Cwh zg{6n>U8AN)kJJI|Jsb~D=+Uve%J8?Y*olL>+d$QUE9Sekv@E1-Z*wsLB4Tt**~s^P zI=6=>9R*U_+TNg}csDk9$~k>n^UVl}$w0}Mn|B{&2;hF~R?w2}8}D1sG}pCFKkv`cCDm~SBg zXC~b{zbQs4v4Xkf9x$|!W7xXE=!^>$x_dY;d9ud)`!dVRC z@*>o@N6Tb?=eG{A+4mBc-0n8v$c4zVI*^Vw(CdYYzGzssKJN>!uf5uHuK^C1thIkZGE$h z&ip$wGqbq*%ig>NjkU4-Zk^D^lW`5?^B&bEAz(ySx}!B4Tq2(kb0QrC$$9uBTh#?o ziielDpIMQ*EFi}yl#WMN5^V`Sn!hqWw;^V~M%MI1CB4SV?P{`H?P*PJi0&eEzdgx*+*lN=1&RnlpT5`;ZCdSmMD zZ88loB|c z=_t z#TwO^pVz_Oq@QiLAOC#9HH-A~%4)RwDBxvA3r74xKfRkO_#RIF?Or{`olubibdmSs zSz*M^ddLjSW0%LjY8PXtSrtC2-(8rIu*;F4jJG(bx#pAKH*1Pq!C!?ZR6tjp2G;F& zA1`0Uy`yQd795DJE$4SUeuFfj;|&74Z;*3ZOuiKtrw58!ivcTq{}x7iJ8^fZ)7RfW zH0i=Le=*=(PVzk|-uhzSg6|TgVpqp_?^bXvZ2yjh%V0`)M4&t51$gn&``WRJA5!B6 zr6OObnzV23xccgy$`Jo-`m`ALRt;%HhyUIk9Lp72lB&U&Td-uW)g_13IFX>6!g%b`zUNydQf6Bs1HejFZ&Q*2U7tr!B;NzTKYQ zzjL;d^awX=^dG&UTuXAcU5z7gtZ}4QJvf*%aork5suob~A5&{bgE##wuZ;l7bszB% zhJG^2YGuCVBIVM9C2drAqbSj;^`QYnIqS7&Iaa^qwXNMDcjrdunUD6;Chet-__%`a z2K@c}xCaEqh0!&7*I7Z!V$~m;KA7d$X7h^jx((|Nl`Bc$7nAT^PrsuIP%#-|hO2Y) z6iU0Xo-(xZ?Qb+Hn2#5%-X}Z%$vQgQmeV4**6DYZAqKRoT)bJkk0uH~6B7y9WtK5? z&hIr})i?KoZ>GS=2TXT|Oi0%=qBVz@{DY6qydRT*fz|2fohW5VspSlFe0J&i`SUiF zoE_6u7hkO^s3YimAH$36+ekJ!v6`C^?*vv$&5^z37CGyO#Vnod;u{z5r}q^tt*5)! ze9Y+m)HZ=;uWWstQhjY)vsV~j>#)h{e!8ZOrC>v#IW!Jpxv?6%3y)KZvgk^KEG$$Q$=GG~njmY{J29LFk>dollX_onLM}!G zZxpMn=LhDm`{xh%nveKAu4d-LQF7yT{BQ3to88#1cl8f8kZZ1a`LE-1yBMkczp_Lw zp7tl#o~w2#(lGV0O&z@k9!f+gjht{qf8TamXxx>igV+LukTg`TZgB4oy{$RBM$IM+ z7{sY-tV6+Dc!cX2%-Q7{-gVK*bsKfoV9dbOaDY>+?GpH41DG3GrHpuh__*@dux1Y>Jj9Plj20 zC4&Y1eHHzbH}}dO%^USCeLgRmF%*gRnL~`4n@%T zVM{TTPDs#JD#3L-Uc2;l9{@AP_Tq50BTr6+m~)m$gIeMdxyUM=8_%$YbtA*}rCf+1 ztj@92@e-gDN>v%Y(F(y~#9Xlj-p`Krl`Lm#Bs!D)u=QfqVni?zH+(w76;JiHP`&)? zjP-oVVYUteSDO!&J=XHRIZ2S#z^@Fk20jn?NpJfAAPZ_Q@HtS@nk3utt!fR0<+W@i zX*n%wV*8V2hV_7_s%$c}e=SK1j1;HWs;ZZNZ#)zHa=UmvRXZ~;FBkzaG_0mxz5}jV zr8EN)wVq*0WZeLlLe$P8&Dz%b{U%%u`mMU{BK_UzN=@Jr3Us`E3$9=KVc%2p@sI`R z%hlW&9N;j;qX9Soe;pc`PwnwP_*3`;8sI(*#evx*6j(;tf_O$#kqcCQ*cm(T zZ4hsCqT)tSAHM%zZ%g&@jrKesS;mwa)=%>My!p<(C3ffyW+y~$vBU%=UjB_t`NDI- z04SF)l&dY>^J0s_4?ADErN#8Hf8d>rYd7Q!`%*~$Q5!YTYtcIh1U{8!mv^}RRJ%+fNkBH=E9gWf4 z5*SxUI)3g8$bld66pZAi(Ul-QN7(tq#hsQ+C+a)5 zQU|9D!}bhYNiJERJZY5X6nw97fbHmb0$laTvMeT&8&Bbb)F3U3Wwd2^>ghb_2K2<0 zxf1lFddV&(87pM@nZW#GwtDE`;4<3d{p}LI6~fHrH{?DmMtsf-w^rdG{;GflWe=QHgC_z|Cj8pHe!O(1yK|6?Kox z6;#!VScNc1armC-^I}O=E4}S*7lGTiYjLr5XG^o5;V_LaZ{d!(LXRTB86RccCP*E) zXIj`q-{x*m`E>dfHSF9g@~prN(1ZE14B3UUF!V2_+au#Lvc@I*8dXD+SDsovMX+Ml zj>?q5`colGzD$@SdiJbC^#n5uYiO}>gy&N^!4p{bmFX$6Q7Y%nMIfqiBUzxFOhi0e z7*t)93P-P^QPeujaMMsqV^4^hy>D!ghb^pJvbY{nY?TP9!XR(o%B-@SVZ2X=kPw33 z==`6iyX=r+w?B4%M3toKmTK9+S`=c1{E`@9pSy%kFgbJd^jzNAiTWs`NmQp{Q{<0L zOZEh4CJ#r(0X3SEp(;l8n%d)Lu^K6C%tc2<(ss3X8~G;bb++DJNXIK+$wjK@eUf|( za9M-eyow#1VqbXqgPh^l+}xGU0u>1-fZFj?W&~hZ0QnCypO{;PInON?pW`F-gRhlZ znzn zOhvb*Gz%b6WLBdeBN<+^jT?GRyK_3>rrmjGOYDt@KKy~TdFKlChzFX$q#)>n>YC&G z^`(xNNW@%LjCBQ|Gtjrg$qa{W!dOl8WX{C+V;7+U6*1?u9MM1#_60E{ZMRK|bkwY~ z=DX9${a8Adw>MkGR>7d#BX9tK`d%w5!{1Gp#GL66+T#diy(iU>@YJSlj4dImD~k!% z@x55jGsWorMR}+iwJr4FTe&?RN$PRoV_+FtDbIFMb($q~Sh1T%M2oI`Fc!b9a zrN_3$e5(N~!*nTY?#fjs;;xoEb?$#^`}$K*)3)vbTxeK0virmicH#(X!?&de!?>R9yF<4S^?w;cSzy*I-N z^r&?BHQuKl+_m>%c#lNtkKG0<)aH4xA=98!9+JK@jr=U6! zVnp^SXaC)fFsO#jftK*g#^85h5`LGGg`dyjZ_lIqv4-Ouv^V#O_tIX}gdL?!MYORd zI#^3K;%^phj%S%0*rw<`c!cL_ba8M6Zrk@R+OVVhv1*W^-v`Xww)Yy?>vQDyN(uCz zLzRw;%?n$k8$#ZpXr>$_B}|Bt!WgyJ3Py6yGBuJ*5*t!}9h*HBS^)E6R8hZ4@+Y!S z7$ixYSA09{?yz@nvC}tEgP&)J6r95EOTfm#Q+M7BJo@V^Z|`}E2RU!LppM$| zNm|y9{R5{X3ELkC_Z2x3+Vr1~9bl!lYwVaZl%kvQ0P|eNr1DKqj2x3^<&l7`I!VZf zB5b??LH~d@b`IaLa{e9Ef^VlFQM-v)fr}RZ4qJ3^F_E0k3z!tM_6Y!#;w!E_2BgZl z6E=LCrg^DLhdFGyBckY!1eD(~K=?19xKwjwMd~CDIm88FRufYk`;@8`f}mAfa*@!v zO4JtvP6yJPjn5P36bT<_UYWeW)J>b;={^H#=CGy_{2XUUXeCJSHDQtoZ)Kf>4B)a? z+P!oO1Llf-b!$&w9)_%B?WPr3+bmZY@Ob-v$@1^!-VAj*RXm}2B1?z&$z-402Q30? znj^-}e%d?=?WvH+1!Mpx*iR4U2%PeW5cW}w;O3g~*kitJl^W)nJo0t88H;0csh4? zJL7u$)9~d5Z^2p&VMr|0R6hENN(!*xzB1WZ)NTW)kbYFl*%DgYUk+VM>jxzBiYOI= z2}nkj9z~ytyIkuVLEtsL->F(mvsd+5jfOp?W>1 zK!4y&$`PeO)}+J4Hlp8=jJ%-;@N;Z*0!G-a=yl+>b;~J8~g#Zi4 z*oiR^5-DXnQJMBbNZ%p(28!Jw7dS--WFu2|@;C1w`~igIxGxUA6V)Bj#il}SwA`n@ z*6=26WEu0#$9GaB)T1;!y=!_giL!ce1MS|mcB6q~-AmlDCzU^@P@~GKi9#o)9E471 zJkGRa^LIU@aw&X9uAdEr)D}0H*$DM)Qt5ux*#42952%#V) z3{xk}ifrh`Cy#`rDVZL#snZsFhp)VdGkn+8ku=)0xMHM{srOb+wax{430-BkzJ9`p zIE4Go)rW`G$}Gvhh!Q}X-MOGw?T4jKy8%Ni!-k$8 z=sxEgqMpEvqev&%`Re=i`BPqvIOKT7Cy&9WlpUM0tCoDD)7F+=R^@GFX-WoZ8H*{p zcuh>CgB<5aE!jaW>8{?Va##KJCdX-^D5>px#cBgdCc$SG56+oIsq7avpUzIaQu)S@m(D227ZH}!>>(q*qpH__nH&tG;ybAq68d70lR z(x2ShKFJMQT7CP$?!~&)YkPs4j~fj6_|?Hq^x?}1=I`!Gj9N*y(!bMu7OPvPe`S^PetVi$~j&2^*i`;FnR7Cdt-siD{v9Q{{HxMcQu*3EC%`&TB0fp<7t;n-FQ3w0Waw+S0|; zae_}DSGmp135_4|{?;Qdgw?)cYVB3rVpy?z6fwB5yKbJp;t}5yY|Uf1mR-!rlUaE0 zBax;W3FP1+4}Ls01S;n1dk>DRk%`dQ#HI9E=N{x2iAYwurR85#$*cDH>Ki1mkzc5f zL$8G!kU5h=^GnuKlWrL`bJR^Zu3{hYGF>MwUp}oy{5LQ-#!PVn@U*D)aYP))UN?oG zFH_wkZC@d;FE09y{~gihj-((T`NFjL zw#_5^xG9Xys%~DE)@i@~XVmPd7BHXg4YP7i-4NLY`JVn#c@yGp=6ojc#wS5+bH|M0 zOq>uV(+06}Zkx$UwM4N>ju790&d2&ngyCTOuUbJx)oQLWb|WJtl$_=jRgQiiO#Dt8 zh0jd~K#KN6^6Ri~NRa-Flq**_`ZT9W^2KWHD3#pU5hcCcS!Kc&z?A z&BgUr{d#J1ef%^JDlX;7dCJg@5M{;wtMAe`Jeg@$*`MaN1xDcOWK6IVrtTB`eA%V# z%FH}T?;BMcDYweheW4!+neAE93?G@^N;}uEzytz!PrI!)9OMJYBx9}Sv089&9HU_; zU&KZ(#kjy_XP#_gL>`Bx1M(FLYSYI&q?jsBfd6J zjG&9q*yPlfHx~(ZqeHOFVk9k%nFt!3;4zx{$~%J-eR(>u%g|%!Cf8~rtozTFiRSMz66Z~xZ$P9E>Pf(E=rLeAFPfrD@4CxfiI!StJ#AFwjUEA1-Eq+)Mj~9+kJL`pgpR}Ze1^ZW4N~MJ8%Mx81KVW@ z>rCzUOz~00^W=s>$|B^yE42Dkve}AVEcj%cby3oh7CODxahLA$zp?c}0=bTQF-nt1;d?pkbEaduUazF$(M!u<{$$N$;o!n3!Eu^d+1kGr z!;cut2>j-oX>vE)1525shrG-BvM0L)8!3bll|}4VpS^abyohjnSvtDn0Ucs={Iu&T zl5MP>WI!j7U%ehv|Hy-<7)xOj0ENeAqnldN#h>AWmSAr`F>65`jaPq8%Laf}kc5l@ zN(FmO3AgOxk@E6pex|!NK{9%cLe-}2wz`=dD%3XJHL!xr>RQpIwNS|#c9i*Q;xjuPed~62{^)=f0+}?MONR z7myK?oc8raY2uH{LP|eG33<^fXFrhmJqeb^+&>M7X*VF{qH@XqL(L00opJiNT+@t@ zYaq@n+ZCJ5;{4p(H?Q&DPjkUIJGr9-Se8lzyjB8MSZF+Ff8l*t5F9XBXVx#@6%itB zKpSyJj1ZXYlhb$r+ohUGO<3CJIbJE%{jX^&NBR2$o*+rPTcMa~%_pgBBi#AN07fn@ zTG(sB(*-Kpz5i4+$?glQjon>ZGs{Lh?Q`XFEM|Fo{{8)@Xr(x&rE*74DV{z-z~x9{ zWVNde;@84DOOS7gv4p+Z0aRJr>wU!nb%zs=uvBXwn6VYF@CxnoH;Trc1dX z?3i#9Ji^8Z-Jwo{zNv!_ZOoTcRe?XvEXLUP7$>i$o1PWt9WijA$x6L3pMK&CboM@j zUX}00#Fno%qzA&c_cpaE*rB)Iqg`b9Oh3}9v*9SlrmyGNNigOa0>U>|roP_@KST*h zwHI@%9!ez``7LkuJ&S(w-Mv2JWW!I69!`J2Fsndp-#(7i4qYN?g?M$CS8GLAecQv` zkLXaInm5BgEt#ld{`j4nD~+C#1M(X=+sO$ z)KX>T5tg-(_}B@K@#2n!h1~Ot{%r+7*%+!g&h2_%ZP~DM?A>f}mBr!uusAoC()3U* zcGa95yq%`1o;%SnxXggxzqIiFM4}FYUj?r0l;&n9xPo~LBt$*o1;!<*>V}+j=CEJc zzDepktI8{DuWwZg8&t_=f;`v@XD0ivrjj!p}z(dip9rvALX7X(ES_?dWkEe zqWPtrF}Z#A18K@hbSb~2DfIr!@3Ef%NueNxtzowo1~3H( zi$|P(sXd1-rsLos?%T}7Oa!@jQcG8WM2~(`Qndp(e#l(je9-zLdAfOb zc)cdOCB2T#T<_Fv*E>(s+I&S8x{TF!gi?j7D9}yh8(3a`!%hvtH9B52L0<*LZ3=RJ z#UZ}F6~YDyEi<^K^3M*m;-DBT1^^TfEi4`NGXup4Y{5Dj@>iGWv|G{#{ku!BrUlRn zG(7`qXjPTq95^*smZ#&4&=g}yT9V^MxDJi^6Qd=D>d*=5iK-#|g`kV4#^kFs%yn|d zw)LAX^aYwa7*o#_Rmi(EsK$%hCi!)=IV6s%Ja3;8HQsnw#-{8m0Kh03y~f1UMzmi4 zFH}8&M@#~4mz-!{%!tS|#W(9qOgkA?orz|j%Y2!w4YF#SKX*7FK}`zSu!Yd}2>R2^ zN}i|;+GGi00o-n9)H;Q*t50$JL2cb(>*H$biaZsQLv}nH_`!y(m=jlK|5(hfIeGPU z&sN$*WAYv-avmP6FYWWAh^S-Yskev0z3FIyjjVM+vi1sh`pytHuXvTFnKyVcGi}C# zj(i&9;DuS^@e-pjFR8-OBQ43;A-iDon$sa(l2%Q98B&sJPF*R%AZo0f^9B7JTTV(P0IU`H8(vob2E~DN0ARlY_NcsN4 zX8wp^2X(_7zye^}ZS8>qYad{R4h*_kEODYXppU znVUC!+6x&i_P5J46~kZ`qRRMgO0>^!M~P%k=6OH+8Q>MX&i+9Eas!Xf>jgVS3p-A&c^fEFe~NT+TSHP+#e zE%YppswG#mZZ$X?Yp+hdXFo9Tkg6DkJWfTl|9592{GafCh5`cc3q8v*C_f3lNJDs% z|C45e@*GtGUv-Qug2tYn{YwhKmyc`oTXF~4#`Np@6dZ|J8SIi09x%h_?XujkL!f|U z13xJ=#V7IgZ$9mnuR22U>@M46Kf_)2{I+|OY&tKg48Zh-*vg|xRa!1cBYdnhy2GA% z^TL<406WcvKg2i4vO##U6xtUCHi<}<&6u) z_es~4`nd(WF^v_YEa>~LCGL*CA!?+ga9P#%fTuF`g3A{~i9yCrxX@aBLo$AG;~&0& z6huUHnq2@(u$-6t!xyR%d_h`LI$jcrJuNwy*x>S`9^$M$kllI_AiKn|n`LUsO7$o* zveH~IG(6Jk={bTJLaGOK%^{Z#!lG}yEF3*Jfm2B^Zv$NsRAlPpl-%XQt?0J?=1Qdw zk1XYQECWj~KQBkWuj@EHO`556yUzrj82ok#W|MoBW0fg7qOk+L-E2VkqS2-4(UV$+ zqqO>%>Fq}nxz3kIy=T*pWx;wj2TIpOeZM=Ot5(|uEY7r8G29bhPyWtJulrvtBX-dh z;0yy872{P;xB6hqANKxm4I}>f&?M)f=d-O}5;rsI&wD${p#t$oIsz)!c`JavT0}#e z`sH8RPE1--MsLr`1*$0qX-3hjG%uB8>ACo|FRnAMW6+r$D1M1V7LI72aK+Z7qO-$Xw~elD>;SkKwXo2OqJ{PnuubPLoqcPZ=&F$V%Ae>E~JJ?g&i zm_%;(OxW!mvSQQAzaUf|mhcgdiKs=Q9INdFbKPIo+2(rBlOeu!lQeUhS1Wg1T06~P zwU2ICEwcPrSjbwY)$%|_ixOf@cijrKNeOzOF3y#Rc+V4iJt2ZqPVfoHs&2+S;W=UF#P_cGKnVD9q#od?$Mci` z$nuIor`k=nN>-C<7xeG)P$LsO6h2Id7O+}De|5D_oo=)kgm4;{Jk;YM_SN?qV;!!xd4=gE>^98j5{x( zn8fxo199cpTd(*y0i@sU!ha26CfGF*|79i=rx19J?cA3hC5cCtk{_xt>D3;g5TPJS z%7G71a@{LA9pd^RDX*;TuYe9jGX(#uKZwSct~a47EJ*KrxEKtGG0qcM& zKLi7?T9qVx6nUI`5jh6$SRM^IAkH65{g2E^j6q-SWH&ae(JLSTqS0-%jduh>BvkT~ z9RQgK{n?$5*{a5qbv5l3sT!d`pA8lXVOr%OWXTbBy7S|n@jOgfx1wyVlp;Cp8{RYz zrn!3DPqF6M&V-h z*P6)LkhzT{KiL;@F@si6JB-J zEw<|ibasZh;9=9ZhH_s6L%^9&za1l`4Q7%@n#n7R^alMFd|3BN`rIi(jeCmko?H5- zJU@i&3A%nwFGQ0XPJSb>rZn&MWgro*wk=tXwE$p$z8N`vJ)WHNbA_Lk5!2IN4W0G~ zUhsMSH!sl58{j00{b+>#8|Kshm7CGFSh^r^@hIIQ)N=0Z=T2)g<$#4oL;2F0OtIEyV0Bc!?UcD*|ViR7*4Q1L*aIZRC9%7`9DC+kq6hsKNm(PxOQ{CC5=opG zRC44kffP2!!IJEMT&zL!K~q z23#{2vq|S73AT^9f1~5Si#m(vEdMR)2+?xEb~&U& z+at)}2(^5z;_T%B3z=n_*H(QrRHoKFH`N}<{)9mj&p|XeJ)>Z@txXlWRgB%Ka3&Gz zP6CTC;!=SogT7%67!`AD9I$7|{ax7cKWdwGE&iX{1`(x3dlYHlDD9@kjV4_JXxACN zllJrXY2jJG-Gzw$!LssS%V2)=JT?*s>H@DYWXtMmu=9Oqe~Qw^P;pBLPy;2Yo|1y-+;3sw8h5IdF%tp50ue`0kijyA&t>M}BQ5J6J8 zh4_SaCga4Ts5_YmzP0QnHIo~ho}Q=yPo7mt4kkZrjLJM9pJ*lPzMSty6S8ifXZfOK zHeR<9{=ltF5cFL~OA7>q%D8>i4_P9iVIb{@-}#Zsg-vc3e zYAtF^-yHP~-eCY(rVNe4M(Ry2qOXN%;7LxyRO-OV@QM(j7j>IZu+)|h+eZvvUr0i@ z6D)g1RxY+w&^S?*2fvpc?Bdl=^1}4hhDCZuVTM-dvO|C6pqAV)3wwW>lSY>&hVbq2 z1nrf8|Lvk5Hbo<#?y)$3u~~lC`6A9$&JQjvx}P!>*B|8IJp4b22LQc906Byn5vTue zU#`oX-xvY%T>b^}EHdRwh4imND^P6rUQl3fQ%mzVBMdvMzYM!+VSpKqIDUM80f>NE z!H;C=7BaGRQL*f6()XydXHzh%>|TxxMth^nsWm?}2MlC{vMg?CNt`K0J% zS(J%*shcdnEBmes?<@wa@f5%nX8i-3WC_R-!Zf0KM3DYZ=!x1BH+zT|F*b3^vF27Kf$GhFN^cvupig( z?1BRA`^1w0Otsfq^seFB)MFq|EfpsD{k?#guw0cTn--++>g5p-LI{xtY^}z04Jr3^ zVOpN~C&0cd(Za%NO^jwUAi-l6KC*3}1_V ziau!xhoM|8;vUlfvDm5pzStu(MTZ+g#P++@21~K19cBo%EQcPKO&t=ya=O@bEVFl5 z0|EeMyqzAV^}FnVUh{-s(F@3?l9THfdmd;O)Z2PtNCP=JvI>ZxF#!4OV@v5=k9;do zu;eH74B|LG(*28ascj}b?_AqVXNCuMpzttO~S{;A3 zaWHC5yN~|!z0f1T*n7VHBYYJ^bjSrro2%=9vKEuNqp3Mr`al ziN%bF6{!b2dhqG6BEAXMzu+W%#Mr0HEDmj(uD}&iR4)nx5-Y|3wbn0A$TAs{afNS3 zZ)l*{(k7A5uZaHbCsj-C+&}kV>qEqx{>H}0is31h5AE3(E`Y!BS|;R`hlvr6&7q~y z-jl@2QY1BDJM4yPy|gH5$uMQ#=UnE|tteP3EbN;Q1H!1Pq7P_(C;of`cr-su!~!)R zRfFf7=|(po`dMVSnL7*%lO2zZ%WKSZ{)j~5iues4GzgO43=J+1RIvbP>TPn+R``%w z^{kpW2m9VIjqy3;pd^~woUOj!I58=uwGF>YOhZHQcBvS+=QjaBarycOQfyNA0Trbt za-isVh;qCAkvT4>B9Q(nam1j`ycz(^^(7LZxsCr-6+T{L)CNVGp zxqh>rlcNe}ftaWx*x+9tcW>n%kDHsJ=>< z%h$=}#{bwn`fTqa%L#h*93OQ#L@5p!wK(M$DaWF!CwNVYfA_8L^)G#*Ncu3SCOS(P zy6z%b52bjR*tS;IlUKXI1K_NW~ZTPdAX(T zkfibi7UuC<_JlS-y|q;{hENjSnsU3OEF?O-oZ3e$sEh_>_y=m*O0yUQfC#n%VSW_X zAOBd)NIf%K?@yHGYiv=Fu0uMaD)7wTUzV>n(rGji3bB-^)ZRo-~02>L@F^-BZyk{>qg=a^$*^TAl)+g=MFjlxApNc_-HF{dEhYh&Ut$wF~{;=OCTWd=ZBv2D$V#6Uf?%E+vb zCk=M$T*CIG0lWL)d8Z;^h{1UQ@=TE*xR8alwZEW?$z)=rWr5%uC9(GtzosF2`{fgz zKl#WylO6~Cfny#Q$a$Qsq3SnKu+WG1CAssE*}7@Z*UmPha>7-@|J3===< zfNnIEz<(NhQn%9Uot92Z`m<2$Dq159n16x)Ux0!`O4t9pFk*B4{J({f?|`LrN<=NT z)D_`!X}V!+KkfcUjX8l~@SVBT0=XFF(z?1>Nq4On^k)wIK(K)i@THFz?S)KS9x(9{ zsHg*j8vUC;c!G9Qv9eb@xQj^6tO`B!hz=tf;A;o;{u0OOLjd%h^gJh%cls3}e4&7h;$<;gUcRB3dUswKXJ5R{g)x7stAn@s*)y1gO)R)L+JapJM{1TzGv}X*nKZ#hE0KWU+ z!O!jD=7G%-W5m|JBgRZBec2A#uisbz7h7#=&ht!bAO$`=dCoGBdISgdd^4Hc{mr0m zs-E{szJm+O5>yl;q?v#35K8@Bnp6OV-VCA8Z)*Gso;$+*53h;ZE-g7GxQJ=?qg~pC zQ+*vVEpjiqWN`2%Z}0gx%b`cG9QpsSoJ%)*H=%cw3}4x5{4Laz?N9^#+(u7vErzwc1+ z|8fu1D=E&JVaq8!?LE3jHc(DD*Y5WlmeH_2^ZjyBM$BiHNjez^E-+J*dW}_sxOzrSk3RjqoyT z>zkfwotb;Qj@ZS|_qrI*AC0SAHF%J;`uKUT;cb`5@DaO zKd82L!AHgGX{$>!{tW~@l!MRo)O{6?_BvPj8vqE+T4~bKZGs{b0oL=l)I2su#qZx> z9U?mdl02jp`egh8BROPqYsV}glL)6(DhmRb;I?h~j=sYx0IC482N~s~tdt>PdC#eM4K<66)JWwG53?F9Z$frRVJ-U}|M zjTSB$cq6Y{JskTYu+oMT)&g^$us?&Hc$kdTt*qnJ&kkEvhs%)Vg@C-)8MqYf&s64$ ztqgj_i6?E>`;lhtj6H~#OYM|=;zra-i>%WfxkZ#6`B0O-Uu?W1LSvi#C=RfAKsN@` zzZ*v)NC!aLa&S4^X>}(Z2nPI zFgJpLXkmVS#EX0z>S^A^#mk3gSNxMH0^tX%YFaXuSd5=`ETi@=g#mZ`tHy~v)U9Fs zsR>`ouuL}i4oI;7-buIbH{iFO4d60dZ6ar`E>iP3Sm0SZwpUX5j``m=v3+Q60tAQS z8s#Kj#9oQ^+lOmSaKE}FlYD__w^U&7+Ns-$ayZ{^rQ?~1jw)b{5uX|F9`-tDt%JAQ zc0{Ic_29FgO<{&;IY+WJK z#G2(V^&D6dBTu>G`#Nl1g$FIYl%NyeO|aaHFZ0S{A#4Kbo>*hcrn=m z8E+65bQ&XaCfSckd)&LhAu(PJdU=8|xmQ^2a->?_`B5R!q@U3d=(YBIUoQ05| z-I>Dg+~mHtltuq@u7&p%qI&%vT;XuJ)K|}fs2p=molr4D@abnX^+iYCuun&=aYmgO9QQA?MmGdBP*9p*7&id0XNU9rSj{AR^r)&qNz$R5Ld$mzBO_|bE1Z| z+Ndy7-Ybd3NbU=A9JG$Q{0bnaG>xfef0-}^le5-4*{3C~SC zc(&V2W99`!fQxO~vghU#OWb`8N24C6c_7 z04c_-R!DypKZFP-{9tAXMGBeMUek@JpbLvQ1_ zs#2xZrj)4FL2J~CB4%sEEEQ6#r42%Ay+Vw{Dn;#4MU9|bii#Cf)rcDR#>mC3EtHbl zBevkiIq!SUd;h!tKj-|;`Tg-czu))!{XB2bRgjyfc9RGN%_rl`pIak=IkJT=s@RXA zIQ-uhN$Qofes#rW_xHW%M2ttjR`d5JWLG~M_MqZNrW6&_!qRg%@HJLB(m5x&uQlmQ zfm=dHgULIP4B_MMxiGuk1(*5>qI%l+R&H&2!0P+@$BXXLEd(A$!;@{=yNUy!fZDRQ zRa`v3_82)$prGS*?lR>5N~b!f*nrVZFfx-7r8;DjQT4t`KJZbQ~iUd`kKK zUn+PKW9|0eack)EEpk`Jk4J}9{@tmHGn)L*(to&5|AKf@Ig8IU=q}@|5(@8p5W=11`w~?HwJwu2C#O z+p#_BE}okQXV2H~<`Zd?+VZ>3zPQ=>h^CC$z?S=ZSCu>!e`I`Lb6Mz`1y0Ya4aX~4 zzL|pzx(PHv83b?0(6%d~N>w}dKpA%LE?AtTyqeEc`m*gw5)et2+EW*UiOT*&JT|O?WLL#iUw}W2JU55YB)V3S_Iz` zk4fw!_5Qpcr&H@{qX9;yyX?;!OrU3bd9>&lDY~XkTm$ezDimS-jWZ4zG2$KCDmdYg z=QQ-6hBEHArPP+Zme|c1#ZGxHNIhGWOW&7>Bcgp}#CT-p@0&k2KaNID!8&(#ya;U- z{(rf}J`MK8{<(JNxdI&eeZiF{C(gz}PTA%F>~^t39ToPKRawz03I@xku{J_XDoZw4 zGXrGs34(mEchA?QyJ*KT*EwK#P%7W{{;l#mdBLj_vX4M_6oP$?LBk>r!n|5uEEulG zqYGKyrd4pkjM}S1Jy@i|4%CbIy8GaQeI>KxC^__@(i4~{-)DVvNBv%KhpKy(?C7ZQ zCXuZr_9d3Sr}veDHRA4H%10_5)3xQu6~<;yv(L5uHHX>BJz;-@%{5iA5m)@xGF4Da ze$abHu~Z_vxxKC*rv;WiRGtIbD=59~?Q^}Oj$jp() z!(C&UMq3s>-YB?wt{!Cahs%@e0(35Qo;l^%F~rtA+^f!B&b+nr2^Z5IJB?~<3kh78 zy79Ov$|U#0F4_?UeU=xp>e2>tA|4Uqo{>%971_z56aC%=+_x1OH)ld)I)HSv;-Me= zB&VaDgz*Wtl-02r4bjoOORaIYi;##?{u&^1|JumzqCLUw)~iM4WsP%sMw;=kdIvFs z8}nC9w0^ME3IGNPQPhiI?%7sH?=4&kB;IJUjJCER&5@0 zex;HrF!<=GECv@P#~~843})iQ;>isj?Ss)DcN+$V9h;L29`^RX?gF)z+lJg!rHI5v zD{!XzQ2y)^IzAu15tKoHU$U$st=t>^Op3U%;gC54k8L(G3v^!C;Fm?*=3DBy0n@8Y zpa*$u8mHDP$q%cmsW=DS0L*PuW;bSq)2-pmdoq?7&n4kYlvxedfgvW-TpIk_nd1iR z@f5Jvj{LoB%6nzZ+0AOpidPSHvUfj_kdBK5O`d-xG~tkBopkB)p|ZPsZ?;qCxL>7* z)|B9Ti7ySFOCRX=2D&>Cm-(j8i~0AJG<|gZ9C7^xgn5W?qWFWkqMD2x>biei9ASQN zI-whJc00Rfi8Wo6Q;w3reg)hmD-w>Jjfmm*%)Rh8R3#ojb zA)R+QWb3lE%S%J|<+wTf78+N9tXq?pjV;eb`aw6OFknn4maixn0chQn8ybmlU2i9Y z6rnaw(W5I%bZ%$QP{P*8QH4S1!N)D#JGrFpcgs#Qvnwj=z_#mK^iJDc8d$eKir(5>%Z4`;xp zXNIiy*C&+(CR|gtZh<<*aLh$O80G@WU$tY7(U(%^^|+8?bRl!wp8FR}DFvg~q?6VM zg9!0*v_JG)7<~{O*ikU=A@t;zd$1)C9dv&-RxKM8cJ=AJ!U2gq-5-^(Bu2D&CXc&+DQe*=B!6P*A6 literal 0 HcmV?d00001 From e089f9340bf3967aa14cffcfffadc7eeb7431396 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Fri, 12 Mar 2021 11:56:23 -0500 Subject: [PATCH 351/988] small fix --- docs/release-notes/NuGet-5.9.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-5.9.md b/docs/release-notes/NuGet-5.9.md index 24f5075e3..236e70998 100644 --- a/docs/release-notes/NuGet-5.9.md +++ b/docs/release-notes/NuGet-5.9.md @@ -18,7 +18,7 @@ NuGet distribution vehicles: 1 Installed with Visual Studio 2019 with .NET Core workload > [!NOTE] -> Visual Studio 16.9, MSBuild 16.9, and .NET 5.0.3 requires NuGet.exe 5.9 or later. +> Visual Studio 16.9, MSBuild 16.9, and .NET 5.0.3+ requires NuGet.exe 5.9 or later. ## Summary: What's New in 5.9 From f2928cdd206e3a98fb7a75dbf13b5ba61ebd9c02 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Mon, 15 Mar 2021 19:37:01 -0400 Subject: [PATCH 352/988] Took out "Nones" --- docs/release-notes/NuGet-5.9.md | 45 +++------------------------------ 1 file changed, 4 insertions(+), 41 deletions(-) diff --git a/docs/release-notes/NuGet-5.9.md b/docs/release-notes/NuGet-5.9.md index 236e70998..4bedd1da7 100644 --- a/docs/release-notes/NuGet-5.9.md +++ b/docs/release-notes/NuGet-5.9.md @@ -30,6 +30,8 @@ NuGet distribution vehicles: ![Requested version in solution level Package Manager UI](media/releasenotes-59-requested-version.png) +* IntelliCode package suggestions in the Package Manager UI Browse tab released as an A/B test - [#10053](https://github.com/NuGet/Home/issues/10053) + * Extend the `.nupkg.metadata` file to include the installation source - [#10354](https://github.com/NuGet/Home/issues/10354) * Introduce a new msbuild property to exclude build output for specific TFMs during pack task - [#10396](https://github.com/NuGet/Home/issues/10396) @@ -88,8 +90,6 @@ NuGet distribution vehicles: * ``dotnet nuget push *.nupkg`` doesn't push more than one file - [#4393](https://github.com/NuGet/Home/issues/4393) -* Remove LSL related code - [#9301](https://github.com/NuGet/Home/issues/9301) - * Output is wrapped at 80 characters on macOS when redirected - [#10198](https://github.com/NuGet/Home/issues/10198) * Restore fails with -Source - [#9406](https://github.com/NuGet/Home/issues/9406) @@ -182,47 +182,10 @@ NuGet distribution vehicles: * NuGetPackageFileService fix - use using for disposable memorystream - [#10503](https://github.com/NuGet/Home/issues/10503) -**Nones:** - -* Relative links are broken in NuGet.Client debugging guide - [#10100](https://github.com/NuGet/Home/issues/10100) - -* Windows SDK 10 link is broken in NuGet.Client Contribution guide - [#10099](https://github.com/NuGet/Home/issues/10099) - -* Build of NuGet libraries is broken when assembly signing is disabled - [#10173](https://github.com/NuGet/Home/issues/10173) - -* [Test Failure][Localization] The information from command ‘get-help NuGet’ in PMC is not localized - [#4604](https://github.com/NuGet/Home/issues/4604) - -* Design for warning on improper casing for PackageLicenseFile and PackageIcon - [#10049](https://github.com/NuGet/Home/pull/10049) - -* No error occurred after packing and installing a package with an invalid .txt format icon - [#9311](https://github.com/NuGet/Home/issues/9311) - -* Remove Temp fix on patching - [#8952](https://github.com/NuGet/Home/issues/8952) - -* Cannot run Nuget.Client library - [#10390](https://github.com/NuGet/Home/issues/10390) - -* Clean-up the contributing docs - [#10399](https://github.com/NuGet/Home/issues/10399) - -* Enhance the coding guidelines - add rule for parameter names & namespace names - [#10485](https://github.com/NuGet/Home/issues/10485) - -* tfm_raw error happening for some TFMs during pack - [#10656](https://github.com/NuGet/Home/issues/10656) - -**StillOpens:** - -* PM UI: not automatically closed when project unloaded/removed - [#9935](https://github.com/NuGet/Home/issues/9935) - -* E2E test GetPackageUpdatesAfterSwitchToSourceThatDoesNotContainInstalledPackageId is flaky - [#10254](https://github.com/NuGet/Home/issues/10254) - -* Race condition during restore for DotnetCliToolReference packages in the default parallel processing mode - [#10075](https://github.com/NuGet/Home/issues/10075) - -* Test: TestPackageManager_UpgradePackageFor_TopParentProject_Success is flaky - [#10208](https://github.com/NuGet/Home/issues/10208) - -* Test: TestPacMan_PreviewInstallPackage_BuildIntegrated_RaiseTelemetryEventsWithWarningCode is flaky - [#10093](https://github.com/NuGet/Home/issues/10093) - -* Telemetry: Replace EmitTelemetryEvent with proper telemetry activities - [#9581](https://github.com/NuGet/Home/issues/9581) -**[List of all issues fixed in this release - 5.9](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5f6be8c10485c0236b7ef889)** +**[List of all issues fixed in this release - 5.9.0](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5f6be8c10485c0236b7ef889)** -**[List of commits in this release - 5.8.1](https://github.com/NuGet/NuGet.Client/compare/5.8.1.7021...5.9.0.7134)** +**[List of commits in this release - 5.9.0](https://github.com/NuGet/NuGet.Client/compare/5.8.1.7021...5.9.0.7134)** ### Community contributions From 586ddcddd8e54417093f32cd58c16157f3b440df Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Mon, 15 Mar 2021 19:43:29 -0400 Subject: [PATCH 353/988] some fixes --- docs/release-notes/NuGet-5.9.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/release-notes/NuGet-5.9.md b/docs/release-notes/NuGet-5.9.md index 4bedd1da7..3cb385d68 100644 --- a/docs/release-notes/NuGet-5.9.md +++ b/docs/release-notes/NuGet-5.9.md @@ -36,12 +36,12 @@ NuGet distribution vehicles: * Introduce a new msbuild property to exclude build output for specific TFMs during pack task - [#10396](https://github.com/NuGet/Home/issues/10396) -* INuGetPackageFileService - Fetch Images and embedded licenses for Codespaces-connected and standalone - [#10151](https://github.com/NuGet/Home/issues/10151) - ### Issues fixed in this release **DCRs:** +* INuGetPackageFileService - Fetch Images and embedded licenses for Codespaces-connected and standalone - [#10151](https://github.com/NuGet/Home/issues/10151) + * The down icon icon when the latest package version is installed is not intuitive. The old green tick was perfect - [#9789](https://github.com/NuGet/Home/issues/9789) * Nuget Debug verbosity should say where a package came from - [#3055](https://github.com/NuGet/Home/issues/3055) From 2f0dce73b7b270e6cd5b549551f8c865ba5853c8 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Wed, 17 Mar 2021 14:00:53 -0500 Subject: [PATCH 354/988] Add community contributions & minor edits ready for publish --- docs/release-notes/NuGet-5.9.md | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/docs/release-notes/NuGet-5.9.md b/docs/release-notes/NuGet-5.9.md index 3cb385d68..42ed9a819 100644 --- a/docs/release-notes/NuGet-5.9.md +++ b/docs/release-notes/NuGet-5.9.md @@ -38,9 +38,7 @@ NuGet distribution vehicles: ### Issues fixed in this release -**DCRs:** - -* INuGetPackageFileService - Fetch Images and embedded licenses for Codespaces-connected and standalone - [#10151](https://github.com/NuGet/Home/issues/10151) +**DCRs(Design Change Request):** * The down icon icon when the latest package version is installed is not intuitive. The old green tick was perfect - [#9789](https://github.com/NuGet/Home/issues/9789) @@ -62,6 +60,8 @@ NuGet distribution vehicles: **Bugs:** +* INuGetPackageFileService - Fetch Images and embedded licenses for Codespaces-connected and standalone - [#10151](https://github.com/NuGet/Home/issues/10151) + * VS OE: IProjectMetadataContextInfo missing formatter - [#10079](https://github.com/NuGet/Home/issues/10079) * [CPVM-Perf] Reduce the information written to centralTransitiveDependencyGroups - [#10002](https://github.com/NuGet/Home/issues/10002) @@ -202,6 +202,10 @@ Thank you to all the contributors who helped make this NuGet release awesome! [campersau](https://github.com/campersau) | [3677](https://github.com/NuGet/NuGet.Client/pull/3677) | Use BitmapCreateOptions.IgnoreColorProfile to workaround WPF issue when using DecodePixelWidth - [#10037](https://github.com/NuGet/Home/issues/10037) [bjorkstromm](https://github.com/bjorkstromm) | [3697](https://github.com/NuGet/NuGet.Client/pull/3697) | Windows SDK 10 link is broken in NuGet.Client Contribution guide - [#10099](https://github.com/NuGet/Home/issues/10099) [bjorkstromm](https://github.com/bjorkstromm) | [3696](https://github.com/NuGet/NuGet.Client/pull/3696) | Relative links are broken in NuGet.Client debugging guide - [#10100](https://github.com/NuGet/Home/issues/10100) +[Nirmal4G](https://github.com/Nirmal4G) | [3637](https://github.com/NuGet/NuGet.Client/pull/3637) | Improve test fixtures and related code - [#9996](https://github.com/NuGet/Home/issues/9996) +[rolfbjarne](https://github.com/rolfbjarne) | [3743](https://github.com/NuGet/NuGet.Client/pull/3743) | Output is wrapped at 80 characters on macOS when redirected - [#10198](https://github.com/NuGet/Home/issues/10198) +[xen2](https://github.com/xen2) | [2861](https://github.com/NuGet/NuGet.Client/pull/2861) | Make NuGet.PackageManagement available as a .NET Standard package - [#6150](https://github.com/NuGet/Home/issues/6150) +[Anipik](https://github.com/Anipik) | [3810](https://github.com/NuGet/NuGet.Client/pull/3810) | Introduce a new msbuild property to exclude build output for specific tfms during pack task - [#10396](https://github.com/NuGet/Home/issues/10396) ## Feedback welcome From 26f02a0e44a55851174e72f6ffa10d4db211fcf5 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Thu, 18 Mar 2021 10:42:13 -0500 Subject: [PATCH 355/988] Cleanup Live -> Master sync (#2355) * Change link for pre-release guidance * Update release notes images Co-authored-by: Christopher R. Gill Co-authored-by: Mike Jones Co-authored-by: Christopher R. Gill Co-authored-by: Joel Verhagen --- .../Package-authoring-best-practices.md | 2 +- docs/release-notes/NuGet-5.9.md | 2 +- .../media/releasenotes-59-update.png | Bin 0 -> 7485 bytes 3 files changed, 2 insertions(+), 2 deletions(-) create mode 100644 docs/release-notes/media/releasenotes-59-update.png diff --git a/docs/create-packages/Package-authoring-best-practices.md b/docs/create-packages/Package-authoring-best-practices.md index 54f2103b8..5f96c51ac 100644 --- a/docs/create-packages/Package-authoring-best-practices.md +++ b/docs/create-packages/Package-authoring-best-practices.md @@ -87,7 +87,7 @@ If you're publishing a completely new package: ✔️ CONSIDER using [SemVer](https://semver.org/) to version your NuGet package. > Essentially, this means using the Major.Minor.Patch[-prerelease] format. -✔️ DO publish a package as a [pre-release package](https://docs.microsoft.com/dotnet/standard/library-guidance/nuget#pre-release-packages) if it is non-stable or a preview. +✔️ DO publish a package as a [pre-release package](https://docs.microsoft.com/nuget/create-packages/prerelease-packages) if it is non-stable or a preview. See the [.NET library versioning guide](https://docs.microsoft.com/dotnet/standard/library-guidance/versioning) for more advanced guidance. diff --git a/docs/release-notes/NuGet-5.9.md b/docs/release-notes/NuGet-5.9.md index 42ed9a819..1ad8e989e 100644 --- a/docs/release-notes/NuGet-5.9.md +++ b/docs/release-notes/NuGet-5.9.md @@ -24,7 +24,7 @@ NuGet distribution vehicles: * Add "Update" context menu item for package dependencies that launches Package Manager UI with preselected packages to update - [#10378](https://github.com/NuGet/Home/issues/10378) - ![Right-click package "Update" experience gif](media/releasenotes-59-context-update.gif) + ![Right-click package "Update" experience](media/releasenotes-59-update.png) * Show the requested version (including floating version or version range request) in the "Version" column of the project list in the solution level Package Manager UI - [#9827](https://github.com/NuGet/Home/issues/9827) diff --git a/docs/release-notes/media/releasenotes-59-update.png b/docs/release-notes/media/releasenotes-59-update.png new file mode 100644 index 0000000000000000000000000000000000000000..cefb690f23a450b3baea4fdc86b466c38531a987 GIT binary patch literal 7485 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 Date: Thu, 18 Mar 2021 17:28:26 -0700 Subject: [PATCH 356/988] Use main branch in links (other repos) and publishing (this repo) (#2357) * Use main branch in links (other repos) and publishing (this repo) * Fix warnings --- .openpublishing.publish.config.json | 6 +++--- README.md | 2 +- .../Package-References-in-Project-Files.md | 2 +- .../Select-assemblies-referenced-by-projects.md | 4 ++-- .../Source-and-Config-File-Transformations.md | 8 ++++---- .../author-packages-with-COM-interop-assemblies.md | 2 +- docs/guides/Create-UI-Controls.md | 8 ++++---- docs/guides/analyzers-conventions.md | 2 +- docs/guides/api/query-for-all-published-packages.md | 8 ++++---- docs/reference/NuGet-Client-SDK.md | 2 +- .../NuGet-Credential-Providers-for-Visual-Studio.md | 6 +++--- docs/reference/msbuild-targets.md | 8 ++++---- docs/reference/nuspec.md | 2 +- 13 files changed, 30 insertions(+), 30 deletions(-) diff --git a/.openpublishing.publish.config.json b/.openpublishing.publish.config.json index f5a21de99..3d7a114f5 100644 --- a/.openpublishing.publish.config.json +++ b/.openpublishing.publish.config.json @@ -20,7 +20,7 @@ "notification_subscribers": [], "branches_to_filter": [], "git_repository_url_open_to_public_contributors": "https://github.com/NuGet/docs.microsoft.com-nuget", - "git_repository_branch_open_to_public_contributors": "master", + "git_repository_branch_open_to_public_contributors": "main", "skip_source_output_uploading": false, "contribution_branch_mappings": {}, "dependent_repositories": [ @@ -39,7 +39,7 @@ { "path_to_root": "nuget-samples", "url": "https://github.com/NuGet/Samples", - "branch": "master", + "branch": "main", "branch_mapping": {} } ], @@ -48,7 +48,7 @@ "Publish", "Pdf" ], - "master": [ + "main": [ "Publish", "PDF" ] diff --git a/README.md b/README.md index 71e70cee8..3bd18249e 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ The NuGet documentation contained in this repository is hosted on [docs.microsoft.com/nuget](https://docs.microsoft.com/nuget/). This repository was migrated from the former NuGetDocs repository, https://github.com/NuGet/NuGetDocs, which is no longer in active use. -Contributions to this docset are welcome. Please submit PRs to the *master* branch. The master branch is used for staging changes which is periodically merged into the *live* branch which is what's published to the live docs site. +Contributions to this docset are welcome. Please submit PRs to the *main* branch. The main branch is used for staging changes which is periodically merged into the *live* branch which is what's published to the live docs site. NuGet follows the [.NET Foundation Contributors Code of Conduct](https://github.com/dotnet/home/blob/master/guidance/be-nice.md). Please take a few minutes to review it. diff --git a/docs/consume-packages/Package-References-in-Project-Files.md b/docs/consume-packages/Package-References-in-Project-Files.md index 3ed42b500..da42298e8 100644 --- a/docs/consume-packages/Package-References-in-Project-Files.md +++ b/docs/consume-packages/Package-References-in-Project-Files.md @@ -206,7 +206,7 @@ To verify the exact name of the property generated, look at the generated [nuget In some rare instances different packages will contain classes in the same namespace. Starting with NuGet 5.7 & Visual Studio 2019 Update 7, equivalent to ProjectReference, PackageReference supports [`Aliases`](/dotnet/api/microsoft.codeanalysis.projectreference.aliases). By default no aliases are provided. When an alias is specified, *all* assemblies coming from the annotated package with need to be referenced with an alias. -You can look at sample usage at [NuGet\Samples](https://github.com/NuGet/Samples/tree/master/PackageReferenceAliasesExample) +You can look at sample usage at [NuGet\Samples](https://github.com/NuGet/Samples/tree/main/PackageReferenceAliasesExample) In the project file, specify the aliases as follows: diff --git a/docs/create-packages/Select-assemblies-referenced-by-projects.md b/docs/create-packages/Select-assemblies-referenced-by-projects.md index 66f46f884..d0b50c3ce 100644 --- a/docs/create-packages/Select-assemblies-referenced-by-projects.md +++ b/docs/create-packages/Select-assemblies-referenced-by-projects.md @@ -16,7 +16,7 @@ Explicit assembly references allows a subset of assemblies to be used for Intell ## `PackageReference` support -When a project uses a package with `PackageReference` and the package contains a `ref\\` directory, NuGet will classify those assembles as compile-time assets, while the `lib\\` assemblies are classified as runtime assets. Assemblies in `ref\\` are not used at runtime. This means it is necessary for any assembly in `ref\\` to have a matching assembly in either `lib\\` or a relevant `runtime\` directory, otherwise runtime errors will likely occur. Since assemblies in `ref\\` are not used at runtime, they may be [metadata-only assemblies](https://github.com/dotnet/roslyn/blob/master/docs/features/refout.md) to reduce package size. +When a project uses a package with `PackageReference` and the package contains a `ref\\` directory, NuGet will classify those assembles as compile-time assets, while the `lib\\` assemblies are classified as runtime assets. Assemblies in `ref\\` are not used at runtime. This means it is necessary for any assembly in `ref\\` to have a matching assembly in either `lib\\` or a relevant `runtime\` directory, otherwise runtime errors will likely occur. Since assemblies in `ref\\` are not used at runtime, they may be [metadata-only assemblies](https://github.com/dotnet/roslyn/blob/main/docs/features/refout.md) to reduce package size. > [!Important] > If a package contains the nuspec `` element (used by `packages.config`, see below) and does not contain assemblies in `ref\\`, NuGet will advertise the assemblies listed in the nuspec `` element as both the compile and runtime assets. This means there will be runtime exceptions when the referenced assemblies need to load any other assembly in the `lib\\` directory. @@ -37,7 +37,7 @@ Projects using `packages.config` to manage NuGet packages normally add reference ``` > [!Note] -> `packages.config` project use a process called [ResolveAssemblyReference](https://github.com/Microsoft/msbuild/blob/master/documentation/wiki/ResolveAssemblyReference.md) to copy assemblies to the `bin\\` output directory. Your project's assembly is copied, then the build system looks at the assembly manifest for referenced assemblies, then copies those assemblies and recursively repeats for all assemblies. This means that if any of the assemblies in your `lib\\` directory are not listed in any other assembly's manifest as a dependency (if the assembly is loaded at runtime using `Assembly.Load`, MEF or another dependency injection framework), then it may not be copied to your project's `bin\\` output directory despite being in `bin\\`. +> `packages.config` project use a process called [ResolveAssemblyReference](https://github.com/Microsoft/msbuild/blob/main/documentation/wiki/ResolveAssemblyReference.md) to copy assemblies to the `bin\\` output directory. Your project's assembly is copied, then the build system looks at the assembly manifest for referenced assemblies, then copies those assemblies and recursively repeats for all assemblies. This means that if any of the assemblies in your `lib\\` directory are not listed in any other assembly's manifest as a dependency (if the assembly is loaded at runtime using `Assembly.Load`, MEF or another dependency injection framework), then it may not be copied to your project's `bin\\` output directory despite being in `bin\\`. ## Example diff --git a/docs/create-packages/Source-and-Config-File-Transformations.md b/docs/create-packages/Source-and-Config-File-Transformations.md index 5b8b40e6c..79402e54c 100644 --- a/docs/create-packages/Source-and-Config-File-Transformations.md +++ b/docs/create-packages/Source-and-Config-File-Transformations.md @@ -10,7 +10,7 @@ ms.reviewer: anangaur # Transforming source code and configuration files -A **source code transformation** applies one-way token replacement to files in the package's `content` or `contentFiles` folder (`content` for customers using `packages.config` and `contentFiles` for `PackageReference`) when the package is installed, where tokens refer to Visual Studio [project properties](/dotnet/api/vslangproj.projectproperties?view=visualstudiosdk-2017&viewFallbackFrom=netframework-4.7). This allows you to insert a file into the project's namespace, or to customize code that would typically go into `global.asax` in an ASP.NET project. +A **source code transformation** applies one-way token replacement to files in the package's `content` or `contentFiles` folder (`content` for customers using `packages.config` and `contentFiles` for `PackageReference`) when the package is installed, where tokens refer to Visual Studio [project properties](/dotnet/api/vslangproj.projectproperties). This allows you to insert a file into the project's namespace, or to customize code that would typically go into `global.asax` in an ASP.NET project. A **config file transformation** allows you to modify files that already exist in a target project, such as `web.config` and `app.config`. For example, your package might need to add an item to the `modules` section in the config file. This transformation is done by including special files in the package that describe the sections to add to the configuration files. When a package is uninstalled, those same changes are then reversed, making this a two-way transformation. @@ -40,7 +40,7 @@ A **config file transformation** allows you to modify files that already exist i Upon installation, NuGet replaces `$rootnamespace$` with `Fabrikam` assuming the target project's whose root namespace is `Fabrikam`. -The `$rootnamespace$` token is the most commonly used project property; all others are listed in [project properties](/dotnet/api/vslangproj.projectproperties?view=visualstudiosdk-2017&viewFallbackFrom=netframework-4.7). Be mindful, of course, that some properties might be specific to the project type. +The `$rootnamespace$` token is the most commonly used project property; all others are listed in [project properties](/dotnet/api/vslangproj.projectproperties). Be mindful, of course, that some properties might be specific to the project type. ## Specifying config file transformations @@ -108,9 +108,9 @@ To see the effect of installing and uninstalling the package, create a new ASP.N ### XDT transforms > [!Note] -> As mentioned in the [package compatibility issues section of the docs for migrating from `packages.config` to `PackageReference`](../consume-packages/migrate-packages-config-to-package-reference.md#package-compatibility-issues), XDT transformations as described below are only supported by `packages.config`. If you add the below files to your package, consumers using your package with `PackageReference` will not have the transformations applied (refer to [this sample](https://github.com/NuGet/Samples/tree/master/XDTransformExample) to make XDT transforms work with`PackageReference`). +> As mentioned in the [package compatibility issues section of the docs for migrating from `packages.config` to `PackageReference`](../consume-packages/migrate-packages-config-to-package-reference.md#package-compatibility-issues), XDT transformations as described below are only supported by `packages.config`. If you add the below files to your package, consumers using your package with `PackageReference` will not have the transformations applied (refer to [this sample](https://github.com/NuGet/Samples/tree/main/XDTransformExample) to make XDT transforms work with`PackageReference`). -You can modify config files using [XDT syntax](/previous-versions/aspnet/dd465326(v=vs.110)). You can also have NuGet replace tokens with [project properties](/dotnet/api/vslangproj.projectproperties?view=visualstudiosdk-2017&viewFallbackFrom=netframework-4.7) by including the property name within `$` delimiters (case-insensitive). +You can modify config files using [XDT syntax](/previous-versions/aspnet/dd465326(v=vs.110)). You can also have NuGet replace tokens with [project properties](/dotnet/api/vslangproj.projectproperties) by including the property name within `$` delimiters (case-insensitive). For example, the following `app.config.install.xdt` file will insert an `appSettings` element into `app.config` containing the `FullPath`, `FileName`, and `ActiveConfigurationSettings` values from the project: diff --git a/docs/create-packages/author-packages-with-COM-interop-assemblies.md b/docs/create-packages/author-packages-with-COM-interop-assemblies.md index 27157c1e3..e37c68ce4 100644 --- a/docs/create-packages/author-packages-with-COM-interop-assemblies.md +++ b/docs/create-packages/author-packages-with-COM-interop-assemblies.md @@ -9,7 +9,7 @@ ms.topic: conceptual # Create NuGet packages that contain COM interop assemblies -Packages that contain COM interop assemblies must include an appropriate [targets file](creating-a-package.md#include-msbuild-props-and-targets-in-a-package) so that the correct `EmbedInteropTypes` metadata is added to projects using the PackageReference format. By default, the `EmbedInteropTypes` metadata is always false for all assemblies when PackageReference is used, so the targets file adds this metadata explicitly. To avoid conflicts, the target name should be unique; ideally, use a combination of your package name and the assembly being embedded, replacing the `{InteropAssemblyName}` in the example below with that value. (Also see [NuGet.Samples.Interop](https://github.com/NuGet/Samples/tree/master/NuGet.Samples.Interop) for an example.) +Packages that contain COM interop assemblies must include an appropriate [targets file](creating-a-package.md#include-msbuild-props-and-targets-in-a-package) so that the correct `EmbedInteropTypes` metadata is added to projects using the PackageReference format. By default, the `EmbedInteropTypes` metadata is always false for all assemblies when PackageReference is used, so the targets file adds this metadata explicitly. To avoid conflicts, the target name should be unique; ideally, use a combination of your package name and the assembly being embedded, replacing the `{InteropAssemblyName}` in the example below with that value. (Also see [NuGet.Samples.Interop](https://github.com/NuGet/Samples/tree/main/NuGet.Samples.Interop) for an example.) ```xml diff --git a/docs/guides/Create-UI-Controls.md b/docs/guides/Create-UI-Controls.md index 7a9520ff1..6401326ea 100644 --- a/docs/guides/Create-UI-Controls.md +++ b/docs/guides/Create-UI-Controls.md @@ -9,7 +9,7 @@ ms.topic: tutorial # Creating UI controls as NuGet packages -Starting with Visual Studio 2017, you can take advantage of added capabilities for UWP and WPF controls that you deliver in NuGet packages. This guide walks you through these capabilities in context of UWP controls using the [ExtensionSDKasNuGetPackage sample](https://github.com/NuGet/Samples/tree/master/ExtensionSDKasNuGetPackage). The same applies to WPF controls unless mentioned otherwise. +Starting with Visual Studio 2017, you can take advantage of added capabilities for UWP and WPF controls that you deliver in NuGet packages. This guide walks you through these capabilities in context of UWP controls using the [ExtensionSDKasNuGetPackage sample](https://github.com/NuGet/Samples/tree/main/ExtensionSDKasNuGetPackage). The same applies to WPF controls unless mentioned otherwise. ## Prerequisites @@ -85,7 +85,7 @@ In the following example, the control implemented in `ManagedPackage.winmd` will ## Add custom icons to your controls -To display a custom icon in the toolbox/assets pane, add an image to your project or the corresponding `design.dll` project with the name “Namespace.ControlName.extension” and set the build action to “Embedded Resource”. You must also ensure that the associated `AssemblyInfo.cs` specifies the ProvideMetadata attribute - `[assembly: ProvideMetadata(typeof(RegisterMetadata))]`. See this [sample](https://github.com/NuGet/Samples/blob/master/ExtensionSDKasNuGetPackage/NativePackage.Design/Properties/AssemblyInfo.cs#L20). +To display a custom icon in the toolbox/assets pane, add an image to your project or the corresponding `design.dll` project with the name “Namespace.ControlName.extension” and set the build action to “Embedded Resource”. You must also ensure that the associated `AssemblyInfo.cs` specifies the ProvideMetadata attribute - `[assembly: ProvideMetadata(typeof(RegisterMetadata))]`. See this [sample](https://github.com/NuGet/Samples/blob/main/ExtensionSDKasNuGetPackage/NativePackage.Design/Properties/AssemblyInfo.cs#L20). Supported formats are `.png`, `.jpg`, `.jpeg`, `.gif`, and `.bmp`. The recommended format is BMP24 in 16 pixels by 16 pixels. @@ -153,7 +153,7 @@ For WPF, continuing with the example where you would like your WPF controls pack You can embed string resources (`.resw`) in your package that can be used by your control or the consuming UWP project, set the **Build Action** property of the `.resw` file to **PRIResource**. -For an example, refer to [MyCustomControl.cs](https://github.com/NuGet/Samples/blob/master/ExtensionSDKasNuGetPackage/ManagedPackage/MyCustomControl.cs) in the ExtensionSDKasNuGetPackage sample. +For an example, refer to [MyCustomControl.cs](https://github.com/NuGet/Samples/blob/main/ExtensionSDKasNuGetPackage/ManagedPackage/MyCustomControl.cs) in the ExtensionSDKasNuGetPackage sample. > [!Note] > This is applicable only to UWP controls. @@ -161,4 +161,4 @@ For an example, refer to [MyCustomControl.cs](https://github.com/NuGet/Samples/b ## See also - [Create UWP Packages](create-uwp-packages.md) -- [ExtensionSDKasNuGetPackage sample](https://github.com/NuGet/Samples/tree/master/ExtensionSDKasNuGetPackage) \ No newline at end of file +- [ExtensionSDKasNuGetPackage sample](https://github.com/NuGet/Samples/tree/main/ExtensionSDKasNuGetPackage) \ No newline at end of file diff --git a/docs/guides/analyzers-conventions.md b/docs/guides/analyzers-conventions.md index 87e0beadc..8122c81dc 100644 --- a/docs/guides/analyzers-conventions.md +++ b/docs/guides/analyzers-conventions.md @@ -9,7 +9,7 @@ ms.topic: conceptual # Analyzer NuGet formats -The .NET Compiler Platform (also known as "Roslyn") allows developers to create [analyzers](https://github.com/dotnet/roslyn/blob/master/docs/wiki/How-To-Write-a-C%23-Analyzer-and-Code-Fix.md) that examine the syntax tree and semantics of code as it's being written. This provides developers with a way to create domain-specific analysis tools, such as those that would help guide the use of a particular API or library. You can find more information on the [.NET/Roslyn](https://github.com/dotnet/roslyn/wiki) GitHub wiki. Also see the article, [Use Roslyn to Write a Live Code Analyzer for your API](/archive/msdn-magazine/2014/special-issue/csharp-and-visual-basic-use-roslyn-to-write-a-live-code-analyzer-for-your-api) in MSDN Magazine. +The .NET Compiler Platform (also known as "Roslyn") allows developers to create [analyzers](https://github.com/dotnet/roslyn/blob/main/docs/wiki/How-To-Write-a-C%23-Analyzer-and-Code-Fix.md) that examine the syntax tree and semantics of code as it's being written. This provides developers with a way to create domain-specific analysis tools, such as those that would help guide the use of a particular API or library. You can find more information on the [.NET/Roslyn](https://github.com/dotnet/roslyn/wiki) GitHub wiki. Also see the article, [Use Roslyn to Write a Live Code Analyzer for your API](/archive/msdn-magazine/2014/special-issue/csharp-and-visual-basic-use-roslyn-to-write-a-live-code-analyzer-for-your-api) in MSDN Magazine. Analyzers themselves are typically packaged and distributed as part of the NuGet packages that implement the API or library in question. diff --git a/docs/guides/api/query-for-all-published-packages.md b/docs/guides/api/query-for-all-published-packages.md index b96b594ab..c287b2b87 100644 --- a/docs/guides/api/query-for-all-published-packages.md +++ b/docs/guides/api/query-for-all-published-packages.md @@ -105,7 +105,7 @@ If, for some reason, you have a bug in how you process catalog leaves, you can s Because the catalog is a set of JSON documents available over HTTP, it can be interacted with using any programming language that has an HTTP client and JSON deserializer. -C# samples are available in the [NuGet/Samples repository](https://github.com/NuGet/Samples/tree/master/CatalogReaderExample). +C# samples are available in the [NuGet/Samples repository](https://github.com/NuGet/Samples/tree/main/CatalogReaderExample). ```cli git clone https://github.com/NuGet/Samples.git @@ -117,7 +117,7 @@ The easiest way to consume the catalog is to use the pre-release .NET catalog SD You can install this package to a project compatible with `netstandard1.3` or greater (such as .NET Framework 4.6). -A sample using this package is available on GitHub in the [NuGet.Protocol.Catalog.Sample project](https://github.com/NuGet/Samples/tree/master/CatalogReaderExample/NuGet.Protocol.Catalog.Sample). +A sample using this package is available on GitHub in the [NuGet.Protocol.Catalog.Sample project](https://github.com/NuGet/Samples/tree/main/CatalogReaderExample/NuGet.Protocol.Catalog.Sample). #### Sample output @@ -155,9 +155,9 @@ warn: NuGet.Protocol.Catalog.CatalogProcessor[0] ### Minimal sample -For an example with fewer dependencies that illustrates the interaction with the catalog in more detail, see the [CatalogReaderExample sample project](https://github.com/NuGet/Samples/tree/master/CatalogReaderExample/CatalogReaderExample). The project targets `netcoreapp2.0` and depends on the [NuGet.Protocol 4.4.0](https://www.nuget.org/packages/NuGet.Protocol/4.4.0) (for resolving the service index) and [Newtonsoft.Json 9.0.1](https://www.nuget.org/packages/Newtonsoft.Json/9.0.1) (for JSON deserialization). +For an example with fewer dependencies that illustrates the interaction with the catalog in more detail, see the [CatalogReaderExample sample project](https://github.com/NuGet/Samples/tree/main/CatalogReaderExample/CatalogReaderExample). The project targets `netcoreapp2.0` and depends on the [NuGet.Protocol 4.4.0](https://www.nuget.org/packages/NuGet.Protocol/4.4.0) (for resolving the service index) and [Newtonsoft.Json 9.0.1](https://www.nuget.org/packages/Newtonsoft.Json/9.0.1) (for JSON deserialization). -The main logic of the code is visible in the [Program.cs file](https://github.com/NuGet/Samples/blob/master/CatalogReaderExample/CatalogReaderExample/Program.cs). +The main logic of the code is visible in the [Program.cs file](https://github.com/NuGet/Samples/blob/main/CatalogReaderExample/CatalogReaderExample/Program.cs). #### Sample output diff --git a/docs/reference/NuGet-Client-SDK.md b/docs/reference/NuGet-Client-SDK.md index 4720fde2e..28bd3d5e8 100644 --- a/docs/reference/NuGet-Client-SDK.md +++ b/docs/reference/NuGet-Client-SDK.md @@ -15,7 +15,7 @@ The *NuGet Client SDK* refers to a group of NuGet packages: * [`NuGet.Packaging`](https://www.nuget.org/packages/NuGet.Packaging) - Used to interact with NuGet packages. `NuGet.Protocol` depends on this package You can find the source code for these packages in the [NuGet/NuGet.Client](https://github.com/NuGet/NuGet.Client) GitHub repository. -You can find the source code for these examples on the [NuGet.Protocol.Samples](https://github.com/NuGet/Samples/tree/master/NuGetProtocolSamples) project on GitHub. +You can find the source code for these examples on the [NuGet.Protocol.Samples](https://github.com/NuGet/Samples/tree/main/NuGetProtocolSamples) project on GitHub. > [!Note] > For documentation on the NuGet server protocol, please refer to the [NuGet Server API](~/api/overview.md). diff --git a/docs/reference/extensibility/NuGet-Credential-Providers-for-Visual-Studio.md b/docs/reference/extensibility/NuGet-Credential-Providers-for-Visual-Studio.md index c26928c6f..6b10f8121 100644 --- a/docs/reference/extensibility/NuGet-Credential-Providers-for-Visual-Studio.md +++ b/docs/reference/extensibility/NuGet-Credential-Providers-for-Visual-Studio.md @@ -12,7 +12,7 @@ ms.topic: conceptual The NuGet Visual Studio Extension 3.6+ supports credential providers, which enable NuGet to work with authenticated feeds. After you install a NuGet credential provider for Visual Studio, the NuGet Visual Studio extension will automatically acquire and refresh credentials for authenticated feeds as necessary. -A sample implementation can be found in [the VsCredentialProvider sample](https://github.com/NuGet/Samples/tree/master/VsCredentialProvider). +A sample implementation can be found in [the VsCredentialProvider sample](https://github.com/NuGet/Samples/tree/main/VsCredentialProvider). Within Visual Studio, NuGet uses an internal `VsCredentialProviderImporter` which also scans for plug-in credential providers. These plug-in credential providers must be discoverable as a MEF Export of type `IVsCredentialProvider`. @@ -53,7 +53,7 @@ public interface IVsCredentialProvider } ``` -A sample implementation can be found in [the VsCredentialProvider sample](https://github.com/NuGet/Samples/tree/master/VsCredentialProvider). +A sample implementation can be found in [the VsCredentialProvider sample](https://github.com/NuGet/Samples/tree/main/VsCredentialProvider). Each NuGet credential provider for Visual Studio must: @@ -73,4 +73,4 @@ A custom NuGet credential provider for Visual Studio must implement the `IVsCred | bool nonInteractive | If true, the credential provider must suppress all user prompts and use default values instead. | | CancellationToken cancellationToken | This cancellation token should be checked to determine if the operation requesting credentials has been cancelled. | -**Return value**: A credentials object implementing the [`System.Net.ICredentials` interface](/dotnet/api/system.net.icredentials?view=netstandard-2.0). +**Return value**: A credentials object implementing the [`System.Net.ICredentials` interface](/dotnet/api/system.net.icredentials). diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index 737e50b58..4b837199c 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -146,7 +146,7 @@ For example: ``` -[Package Icon sample](https://github.com/NuGet/Samples/tree/master/PackageIconExample). +[Package Icon sample](https://github.com/NuGet/Samples/tree/main/PackageIconExample). For the nuspec equivalent, take a look at [nuspec reference for icon](nuspec.md#icon). @@ -230,7 +230,7 @@ If a file of type Compile, is outside the project folder, then it's just added t ### Packing a license expression or a license file -When using a license expression, use the `PackageLicenseExpression` property. For a sample, see [License expression sample](https://github.com/NuGet/Samples/tree/master/PackageLicenseExpressionExample). +When using a license expression, use the `PackageLicenseExpression` property. For a sample, see [License expression sample](https://github.com/NuGet/Samples/tree/main/PackageLicenseExpressionExample). ```xml @@ -252,7 +252,7 @@ When packing a license file, use `PackageLicenseFile` property to specify the pa ``` -For a sample, see [License file sample](https://github.com/NuGet/Samples/tree/master/PackageLicenseFileExample). +For a sample, see [License file sample](https://github.com/NuGet/Samples/tree/main/PackageLicenseFileExample). > [!NOTE] > Only one of `PackageLicenseExpression`, `PackageLicenseFile`, and `PackageLicenseUrl` can be specified at a time. @@ -273,7 +273,7 @@ For historical reasons, NuGet & MSBuild treat paths without an extension as dire ``` -[File without an extension sample](https://github.com/NuGet/Samples/blob/master/PackageLicenseFileExtensionlessExample/). +[File without an extension sample](https://github.com/NuGet/Samples/blob/main/PackageLicenseFileExtensionlessExample/). ### IsTool diff --git a/docs/reference/nuspec.md b/docs/reference/nuspec.md index 7071ec80d..7bd020e6f 100644 --- a/docs/reference/nuspec.md +++ b/docs/reference/nuspec.md @@ -196,7 +196,7 @@ For example, you would add the following to your nuspec when creating a package ``` -[Package Icon nuspec sample.](https://github.com/NuGet/Samples/tree/master/PackageIconNuspecExample) +[Package Icon nuspec sample.](https://github.com/NuGet/Samples/tree/main/PackageIconNuspecExample) For the MSBuild equivalent, take a look at [Packing an icon image file](msbuild-targets.md#packing-an-icon-image-file). From 149eab32635bd93c790e264a4a047c8dd4d7f38e Mon Sep 17 00:00:00 2001 From: Damon Tivel Date: Fri, 19 Mar 2021 10:45:12 -0700 Subject: [PATCH 357/988] Update docs with new https://nuget.org repository certificate --- docs/api/_data/repository-signatures-index.json | 12 +++++++++++- .../cli-reference/cli-ref-trusted-signers.md | 1 + docs/reference/nuget-config-file.md | 2 ++ 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/docs/api/_data/repository-signatures-index.json b/docs/api/_data/repository-signatures-index.json index 5f8ccc84d..99df60be9 100644 --- a/docs/api/_data/repository-signatures-index.json +++ b/docs/api/_data/repository-signatures-index.json @@ -1,5 +1,5 @@ { - "allRepositorySigned": false, + "allRepositorySigned": true, "signingCertificates": [ { "fingerprints": { @@ -10,6 +10,16 @@ "notBefore": "2018-04-10T00:00:00.0000000Z", "notAfter": "2021-04-14T12:00:00.0000000Z", "contentUrl": "https://api.nuget.org/v3-index/repository-signatures/certificates/0e5f38f57dc1bcc806d8494f4f90fbcedd988b46760709cbeec6f4219aa6157d.crt" + }, + { + "fingerprints": { + "2.16.840.1.101.3.4.2.1": "5a2901d6ada3d18260b9c6dfe2133c95d74b9eef6ae0e5dc334c8454d1477df4" + }, + "subject": "CN=NuGet.org Repository by Microsoft, O=NuGet.org Repository by Microsoft, L=Redmond, S=Washington, C=US", + "issuer": "CN=DigiCert SHA2 Assured ID Code Signing CA, OU=www.digicert.com, O=DigiCert Inc, C=US", + "notBefore": "2021-02-16T00:00:00.0000000Z", + "notAfter": "2024-05-15T23:59:59.0000000Z", + "contentUrl": "https://api.nuget.org/v3-index/repository-signatures/certificates/5a2901d6ada3d18260b9c6dfe2133c95d74b9eef6ae0e5dc334c8454d1477df4.crt" } ] } \ No newline at end of file diff --git a/docs/reference/cli-reference/cli-ref-trusted-signers.md b/docs/reference/cli-reference/cli-ref-trusted-signers.md index 22009b8c7..2b3b11c7f 100644 --- a/docs/reference/cli-reference/cli-ref-trusted-signers.md +++ b/docs/reference/cli-reference/cli-ref-trusted-signers.md @@ -37,6 +37,7 @@ Registered trusted signers: Service Index: https://api.nuget.org/v3/index.json Certificate fingerprint(s): SHA256 - 0E5F38F57DC1BCC806D8494F4F90FBCEDD988B46760709CBEEC6F4219AA6157D + SHA256 - 5A2901D6ADA3D18260B9C6DFE2133C95D74B9EEF6AE0E5DC334C8454D1477DF4 2. microsoft [author] Certificate fingerprint(s): diff --git a/docs/reference/nuget-config-file.md b/docs/reference/nuget-config-file.md index dba04929f..29f75876c 100644 --- a/docs/reference/nuget-config-file.md +++ b/docs/reference/nuget-config-file.md @@ -283,6 +283,7 @@ If a `certificate` specifies `allowUntrustedRoot` as `true` the given certificat + microsoft;aspnet;nuget @@ -431,6 +432,7 @@ Below is an example `nuget.config` file that illustrates a number of settings in + microsoft;aspnet;nuget From 983e0997bc579b792cf38f6811b05f1b105694ee Mon Sep 17 00:00:00 2001 From: David Coulter Date: Mon, 22 Mar 2021 09:55:30 -0700 Subject: [PATCH 358/988] Links: Nuget (2021-03) --- .../Package-authoring-best-practices.md | 64 +++++++++---------- .../create-packages/Symbol-Packages-snupkg.md | 4 +- docs/reference/msbuild-targets.md | 4 +- 3 files changed, 36 insertions(+), 36 deletions(-) diff --git a/docs/create-packages/Package-authoring-best-practices.md b/docs/create-packages/Package-authoring-best-practices.md index 5f96c51ac..17b106cb2 100644 --- a/docs/create-packages/Package-authoring-best-practices.md +++ b/docs/create-packages/Package-authoring-best-practices.md @@ -9,7 +9,7 @@ ms.topic: conceptual # Package authoring best practices -This guidance is intended to give NuGet package authors a lightweight reference to create and publish high-quality packages. It will primarily focus on package-specific best practices such as metadata and packing. For more in-depth suggestions for building high quality libraries, see the .NET [Open-source library guidance](https://docs.microsoft.com/dotnet/standard/library-guidance/). +This guidance is intended to give NuGet package authors a lightweight reference to create and publish high-quality packages. It will primarily focus on package-specific best practices such as metadata and packing. For more in-depth suggestions for building high quality libraries, see the .NET [Open-source library guidance](/dotnet/standard/library-guidance/). ## Types of recommendations @@ -21,7 +21,7 @@ You should almost always follow a **Do** recommendation. For example: On the other hand, **Consider** recommendations should generally be followed, but there are legitimate exceptions to the rule: -✔️ CONSIDER choosing a NuGet package name with a prefix that meets NuGet's prefix reservation [criteria](https://docs.microsoft.com/nuget/reference/id-prefix-reservation). +✔️ CONSIDER choosing a NuGet package name with a prefix that meets NuGet's prefix reservation [criteria](../nuget-org/id-prefix-reservation.md). **Avoid** recommendations mention things that are generally not a good idea, but breaking the rule sometimes makes sense: @@ -33,15 +33,15 @@ And finally, **Do not** recommendations indicate something you should almost nev ## Create a NuGet package -The latest recommended way to to create a NuGet package is from an [SDK-style project](https://docs.microsoft.com/nuget/resources/check-project-format). SDK-style project properties, including [target framework](https://docs.microsoft.com/dotnet/standard/frameworks) and [package metadata](#package-metadata), are defined in the [project file](https://docs.microsoft.com/visualstudio/ide/solutions-and-projects-in-visual-studio#project-file). +The latest recommended way to to create a NuGet package is from an [SDK-style project](../resources/check-project-format.md). SDK-style project properties, including [target framework](/dotnet/standard/frameworks) and [package metadata](#package-metadata), are defined in the [project file](/visualstudio/ide/solutions-and-projects-in-visual-studio#project-file). -Create a package from your SDK-style project by defining the required properties and packing in [Visual Studio](https://docs.microsoft.com/nuget/quickstart/create-and-publish-a-package-using-visual-studio?tabs=netcore-cli) or the [dotnet CLI](https://docs.microsoft.com/nuget/quickstart/create-and-publish-a-package-using-the-dotnet-cli). +Create a package from your SDK-style project by defining the required properties and packing in [Visual Studio](../quickstart/create-and-publish-a-package-using-visual-studio.md?tabs=netcore-cli) or the [dotnet CLI](../quickstart/create-and-publish-a-package-using-the-dotnet-cli.md). ✔️ DO create an SDK-style project and create (pack) your package using Visual Studio or the dotnet CLI. -For more detailed guidance regarding package creation including necessary client tools, project file example, and commands, see [Create a NuGet package using the dotnet CLI](https://docs.microsoft.com/nuget/create-packages/creating-a-package-dotnet-cli). +For more detailed guidance regarding package creation including necessary client tools, project file example, and commands, see [Create a NuGet package using the dotnet CLI](./creating-a-package-dotnet-cli.md). -To help decide which .NET frameworks to target, see our [latest guidance for cross-platform targeting](https://docs.microsoft.com/dotnet/standard/library-guidance/cross-platform-targeting). +To help decide which .NET frameworks to target, see our [latest guidance for cross-platform targeting](/dotnet/standard/library-guidance/cross-platform-targeting). ## Package metadata @@ -49,25 +49,25 @@ Metadata is a foundational component of any NuGet package. The quality of your m In Visual Studio, the recommended way to specify package metadata is to go Project > [Project Name] Properties > Package. -Package metadata elements can also be [specified directly in the project file](https://docs.microsoft.com/nuget/create-packages/creating-a-package-msbuild#set-properties). +Package metadata elements can also be [specified directly in the project file](./creating-a-package-msbuild.md#set-properties). Below is a table mapping and describing available package metadata elements: -| Visual Studio property name | [Project file/ MSBuild property name](https://docs.microsoft.com/dotnet/core/tools/csproj#packagereleasenotes) | [Nuspec property name](https://docs.microsoft.com/nuget/reference/nuspec#general-form-and-schema) | Description | +| Visual Studio property name | [Project file/ MSBuild property name](/dotnet/core/tools/csproj#packagereleasenotes) | [Nuspec property name](../reference/nuspec.md#general-form-and-schema) | Description | |-----------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------| -| [`Package id`](#package-id) | [`PackageId`](https://docs.microsoft.com/dotnet/core/tools/csproj#packageid) | [`id`](https://docs.microsoft.com/nuget/reference/nuspec#id) | The package name or identifier. | -| [`Package version`](#package-version) | [`PackageVersion`](https://docs.microsoft.com/dotnet/core/tools/csproj#packageversion) | [`version`](https://docs.microsoft.com/nuget/reference/nuspec#version) | NuGet package version. | -| [`Authors`](#authors) | [`Authors`](https://docs.microsoft.com/dotnet/core/tools/csproj#authors) | [`authors`](https://docs.microsoft.com/nuget/reference/nuspec#authors) | A comma-separated list of package authors, often using the individual's or an organization's "pretty name." | -| [`Description`](#description) | [`Description`](https://docs.microsoft.com/dotnet/core/tools/csproj#description) | [`description`](https://docs.microsoft.com/nuget/reference/nuspec#description) | A description of the package. | -| [`Copyright`](#copyright) | [`Copyright`](https://docs.microsoft.com/dotnet/core/tools/csproj#copyright) | [`copyright`](https://docs.microsoft.com/nuget/reference/nuspec#copyright) | Copyright details for the package. | -| [`Licensing - Expression`](#licensing) | [`PackageLicenseExpression`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="expression"`](https://docs.microsoft.com/nuget/reference/nuspec#license) | An SPDX license expression. | -| [`Licensing - File`](#licensing) | [`PackageLicenseFile`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="file"`](https://docs.microsoft.com/nuget/reference/nuspec#license) | Path to a custom license file. | -| [`Project URL`](#project-url) | `PackageProjectUrl` | [`projectUrl`](https://docs.microsoft.com/nuget/reference/nuspec#projecturl) | A URL for the project homepage. | -| [`Icon File`](#icon) | [`PackageIcon`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-an-icon-image-file) | [`icon`](https://docs.microsoft.com/nuget/reference/nuspec#icon) | Path to the package icon image file. | -| [`Repository URL`](#repository-type-and-url) | [`RepositoryUrl`](https://docs.microsoft.com/dotnet/core/tools/csproj#repositoryurl) | [`repository url`](https://docs.microsoft.com/nuget/reference/nuspec#repository) | URL to the repository from which the package was built. | -| [`Repository type`](#repository-type-and-url) | [`RespositoryType`](https://docs.microsoft.com/dotnet/core/tools/csproj#repositorytype) | [`repository type`](https://docs.microsoft.com/nuget/reference/nuspec#repository) | Type of repository the repository URL is pointing to (i.e. "git"). | -| [`Tags`](#tags) | [`PackageTags`](https://docs.microsoft.com/dotnet/core/tools/csproj#packagetags) | [`tags`](https://docs.microsoft.com/nuget/reference/nuspec#tags) | A space-delimited list of tags and keywords that describe the package. Tags are used when searching for packages. | -| [`Release notes`](#release-notes) | [`PackageReleaseNotes`](https://docs.microsoft.com/dotnet/core/tools/csproj#packagereleasenotes) | [`releaseNotes`](https://docs.microsoft.com/nuget/reference/nuspec#releasenotes) | A description of the changes made in this release of the package. | | +| [`Package id`](#package-id) | [`PackageId`](/dotnet/core/tools/csproj#packageid) | [`id`](../reference/nuspec.md#id) | The package name or identifier. | +| [`Package version`](#package-version) | [`PackageVersion`](/dotnet/core/tools/csproj#packageversion) | [`version`](../reference/nuspec.md#version) | NuGet package version. | +| [`Authors`](#authors) | [`Authors`](/dotnet/core/tools/csproj#authors) | [`authors`](../reference/nuspec.md#authors) | A comma-separated list of package authors, often using the individual's or an organization's "pretty name." | +| [`Description`](#description) | [`Description`](/dotnet/core/tools/csproj#description) | [`description`](../reference/nuspec.md#description) | A description of the package. | +| [`Copyright`](#copyright) | [`Copyright`](/dotnet/core/tools/csproj#copyright) | [`copyright`](../reference/nuspec.md#copyright) | Copyright details for the package. | +| [`Licensing - Expression`](#licensing) | [`PackageLicenseExpression`](../reference/msbuild-targets.md#packing-a-license-expression-or-a-license-file) | [`license type="expression"`](../reference/nuspec.md#license) | An SPDX license expression. | +| [`Licensing - File`](#licensing) | [`PackageLicenseFile`](../reference/msbuild-targets.md#packing-a-license-expression-or-a-license-file) | [`license type="file"`](../reference/nuspec.md#license) | Path to a custom license file. | +| [`Project URL`](#project-url) | `PackageProjectUrl` | [`projectUrl`](../reference/nuspec.md#projecturl) | A URL for the project homepage. | +| [`Icon File`](#icon) | [`PackageIcon`](../reference/msbuild-targets.md#packing-an-icon-image-file) | [`icon`](../reference/nuspec.md#icon) | Path to the package icon image file. | +| [`Repository URL`](#repository-type-and-url) | [`RepositoryUrl`](/dotnet/core/tools/csproj#repositoryurl) | [`repository url`](../reference/nuspec.md#repository) | URL to the repository from which the package was built. | +| [`Repository type`](#repository-type-and-url) | [`RespositoryType`](/dotnet/core/tools/csproj#repositorytype) | [`repository type`](../reference/nuspec.md#repository) | Type of repository the repository URL is pointing to (i.e. "git"). | +| [`Tags`](#tags) | [`PackageTags`](/dotnet/core/tools/csproj#packagetags) | [`tags`](../reference/nuspec.md#tags) | A space-delimited list of tags and keywords that describe the package. Tags are used when searching for packages. | +| [`Release notes`](#release-notes) | [`PackageReleaseNotes`](/dotnet/core/tools/csproj#packagereleasenotes) | [`releaseNotes`](../reference/nuspec.md#releasenotes) | A description of the changes made in this release of the package. | | ### Package ID @@ -76,20 +76,20 @@ If you're publishing a completely new package: ✔️ DO choose a package ID that is unique and clearly differentiated from existing packages on NuGet.org. > You can check if a package ID is unique and differentiable by searching for the ID on NuGet.org or checking if the following link exists: https://www.nuget.org/packages/. -✔️ CONSIDER choosing a NuGet package name with a prefix that meets NuGet's [prefix reservation criteria](https://docs.microsoft.com/nuget/nuget-org/id-prefix-reservation#id-prefix-reservation-criteria). +✔️ CONSIDER choosing a NuGet package name with a prefix that meets NuGet's [prefix reservation criteria](../nuget-org/id-prefix-reservation.md#id-prefix-reservation-criteria). > Reserving the prefix ID for your package will let you get the verified check mark: > ![image](media/Verified-check-mark.png) > -> Check out the [Package ID prefix reservation docs](https://docs.microsoft.com/nuget/nuget-org/id-prefix-reservation) to learn more. +> Check out the [Package ID prefix reservation docs](../nuget-org/id-prefix-reservation.md) to learn more. ### Package Version ✔️ CONSIDER using [SemVer](https://semver.org/) to version your NuGet package. > Essentially, this means using the Major.Minor.Patch[-prerelease] format. -✔️ DO publish a package as a [pre-release package](https://docs.microsoft.com/nuget/create-packages/prerelease-packages) if it is non-stable or a preview. +✔️ DO publish a package as a [pre-release package](./prerelease-packages.md) if it is non-stable or a preview. -See the [.NET library versioning guide](https://docs.microsoft.com/dotnet/standard/library-guidance/versioning) for more advanced guidance. +See the [.NET library versioning guide](/dotnet/standard/library-guidance/versioning) for more advanced guidance. ### Authors @@ -109,7 +109,7 @@ Example: Copyright (c) Contoso 2020 ### Licensing -✔️ DO [include a license expression or license file in your package](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file). +✔️ DO [include a license expression or license file in your package](../reference/msbuild-targets.md#packing-a-license-expression-or-a-license-file). > [!IMPORTANT] > A project without a license defaults to [exclusive copyright](https://choosealicense.com/no-permission/), meaning that you have not granted anyone permission to use your project. @@ -121,14 +121,14 @@ Example: Copyright (c) Contoso 2020 ✔️ DO [choose an open source license](https://choosealicense.com/) to make your package open source. > *"Open source licenses are licenses that comply with the Open Source Definition — in brief, they allow software to be freely used, modified, and shared."* - Open Source Initiative. To learn more about open source software and the Open Source Initiative, check out https://opensource.org/. -✔️ CONSIDER [including a license expression in your package](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file). +✔️ CONSIDER [including a license expression in your package](../reference/msbuild-targets.md#packing-a-license-expression-or-a-license-file). > License expressions are surfaced the most clearly and make it more obvious to consumers if they can use your package or if the license has changed. > [!Note] > NuGet.org only accepts license expressions for licenses that are approved by the Open Source Initiative or the Free Software Foundation. #### If your package is not open source -✔️ DO [include a license file in your package](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file). +✔️ DO [include a license file in your package](../reference/msbuild-targets.md#packing-a-license-expression-or-a-license-file). > Any license file (.txt or .md) can be added to your package, including non-standard licenses. ### Project URL @@ -138,7 +138,7 @@ Example: Copyright (c) Contoso 2020 ### Icon -✔️ CONSIDER [including an icon with your package](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-an-icon-image-file) to help visually differentiate it. It's a relatively small addition that can improve perception of package quality. +✔️ CONSIDER [including an icon with your package](../reference/msbuild-targets.md#packing-an-icon-image-file) to help visually differentiate it. It's a relatively small addition that can improve perception of package quality. > Icons can be specific to individual packages or be a brand logo. ✔️ DO use an image that is 128x128 and has a transparent background (PNG) for best viewing results. @@ -148,7 +148,7 @@ Example: Copyright (c) Contoso 2020 ### Repository Type and URL -✔️ CONSIDER setting up [Source Link](https://docs.microsoft.com/dotnet/standard/library-guidance/sourcelink) to automatically add source control metadata to your NuGet package and make your library easier to debug. +✔️ CONSIDER setting up [Source Link](/dotnet/standard/library-guidance/sourcelink) to automatically add source control metadata to your NuGet package and make your library easier to debug. > Source Link automatically adds `Repository URL` and `Repository Type` to the package metadata. It also adds the specific commit associated with your package version. ### Tags @@ -171,5 +171,5 @@ For example, if I published a package to log strings to the console, I would inc ## Related topics -- [Create and publish a package (dotnet CLI)](https://docs.microsoft.com/nuget/quickstart/create-and-publish-a-package-using-the-dotnet-cli) -- [Create and publish a package (Visual Studio)](https://docs.microsoft.com/nuget/quickstart/create-and-publish-a-package-using-visual-studio?tabs=netcore-cli) +- [Create and publish a package (dotnet CLI)](../quickstart/create-and-publish-a-package-using-the-dotnet-cli.md) +- [Create and publish a package (Visual Studio)](../quickstart/create-and-publish-a-package-using-visual-studio.md?tabs=netcore-cli) \ No newline at end of file diff --git a/docs/create-packages/Symbol-Packages-snupkg.md b/docs/create-packages/Symbol-Packages-snupkg.md index df95fa309..9212cd022 100644 --- a/docs/create-packages/Symbol-Packages-snupkg.md +++ b/docs/create-packages/Symbol-Packages-snupkg.md @@ -18,7 +18,7 @@ ms.reviewer: A good debugging experience relies on the presence of debug symbols as they provide critical information like the association between the compiled and the source code, names of local variables, stack traces, and more. You can use symbol packages (.snupkg) to distribute these symbols and improve the debugging experience of your NuGet packages. -> Note that symbol package isn't the only strategy to make the debug symbols available to the consumers of your library. It's also [possible to `embed`](https://docs.microsoft.com/dotnet/core/deploying/single-file#include-pdb-files-inside-the-bundle) them in the `dll` or `exe` with the following project property: +> Note that symbol package isn't the only strategy to make the debug symbols available to the consumers of your library. It's also [possible to `embed`](/dotnet/core/deploying/single-file#include-pdb-files-inside-the-bundle) them in the `dll` or `exe` with the following project property: > `embedded` ## Prerequisites @@ -135,4 +135,4 @@ The symbol package (.snupkg) has the following characteristics: Consider using Source Link to enable source code debugging of .NET assemblies. For more information, please refer to the [Source Link guidance](/dotnet/standard/library-guidance/sourcelink). -For more information on symbol packages, please refer to the [NuGet Package Debugging & Symbols Improvements](https://github.com/NuGet/Home/wiki/NuGet-Package-Debugging-&-Symbols-Improvements) design spec. +For more information on symbol packages, please refer to the [NuGet Package Debugging & Symbols Improvements](https://github.com/NuGet/Home/wiki/NuGet-Package-Debugging-&-Symbols-Improvements) design spec. \ No newline at end of file diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index 4b837199c..c50a962bf 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -59,7 +59,7 @@ The following table describes the MSBuild properties that can be added to a proj | `license` | `PackageLicenseFile` | empty | Path to a license file within the package if you're using a custom license or a license that hasn't been assigned an SPDX identifier. You need to explicitly pack the referenced license file. Corresponds to ``. See [Packing a license expression or a license file](#packing-a-license-expression-or-a-license-file). | | `LicenseUrl` | `PackageLicenseUrl` | empty | `PackageLicenseUrl` is deprecated. Use `PackageLicenseExpression` or `PackageLicenseFile` instead. | | `ProjectUrl` | `PackageProjectUrl` | empty | | -| `Icon` | `PackageIcon` | empty | A path to an image in the package to use as a package icon. You need to explicitly pack the referenced icon image file. For more information, see [Packing an icon image file](#packing-an-icon-image-file) and [`icon` metadata](/nuget/reference/nuspec#icon). | +| `Icon` | `PackageIcon` | empty | A path to an image in the package to use as a package icon. You need to explicitly pack the referenced icon image file. For more information, see [Packing an icon image file](#packing-an-icon-image-file) and [`icon` metadata](./nuspec.md#icon). | | `IconUrl` | `PackageIconUrl` | empty | `PackageIconUrl` is deprecated in favor of `PackageIcon`. However, for the best downlevel experience, you should specify `PackageIconUrl` in addition to `PackageIcon`. | | `Tags` | `PackageTags` | empty | A semicolon-delimited list of tags that designates the package. | | `ReleaseNotes` | `PackageReleaseNotes` | empty | Release notes for the package. | @@ -521,4 +521,4 @@ Next, add your own reference to the appropriate local copy of the DLL: ```xml -``` +``` \ No newline at end of file From d41cf98d358dbf4e677f8b529f3c81a897414a41 Mon Sep 17 00:00:00 2001 From: "Mike Jones (DEVUE)" Date: Mon, 22 Mar 2021 15:42:31 -0700 Subject: [PATCH 359/988] Fixes to warnings --- ...te-packages-config-to-package-reference.md | 28 ++++++++----------- .../Package-authoring-best-practices.md | 2 +- 2 files changed, 13 insertions(+), 17 deletions(-) diff --git a/docs/consume-packages/migrate-packages-config-to-package-reference.md b/docs/consume-packages/migrate-packages-config-to-package-reference.md index ceee3b5d3..e5ebec71e 100644 --- a/docs/consume-packages/migrate-packages-config-to-package-reference.md +++ b/docs/consume-packages/migrate-packages-config-to-package-reference.md @@ -95,31 +95,27 @@ Some aspects that were supported in packages.config are not supported in Package ### "install.ps1" scripts are ignored when the package is installed after the migration -| | | -| --- | --- | -| **Description** | With PackageReference, install.ps1 and uninstall.ps1 PowerShell scripts are not executed while installing or uninstalling a package. | -| **Potential impact** | Packages that depend on these scripts to configure some behavior in the destination project might not work as expected. | +* **Description**: With PackageReference, install.ps1 and uninstall.ps1 PowerShell scripts are not executed while installing or uninstalling a package. + +* **Potential impact**: Packages that depend on these scripts to configure some behavior in the destination project might not work as expected. ### "content" assets are not available when the package is installed after the migration -| | | -| --- | --- | -| **Description** | Assets in a package's `content` folder are not supported with PackageReference and are ignored. PackageReference adds support for `contentFiles` to have better transitive support and shared content. | -| **Potential impact** | Assets in `content` are not copied into the project and project code that depends on the presence of those assets requires refactoring. | +* **Description**: Assets in a package's `content` folder are not supported with PackageReference and are ignored. PackageReference adds support for `contentFiles` to have better transitive support and shared content. + +* **Potential impact**: Assets in `content` are not copied into the project and project code that depends on the presence of those assets requires refactoring. ### XDT transforms are not applied when the package is installed after the upgrade -| | | -| --- | --- | -| **Description** | XDT transforms are not supported with PackageReference and `.xdt` files are ignored when installing or uninstalling a package. | -| **Potential impact** | XDT transforms are not applied to any project XML files, most commonly, `web.config.install.xdt` and `web.config.uninstall.xdt`, which means the project's` web.config` file is not updated when the package is installed or uninstalled. | +* **Description**: XDT transforms are not supported with PackageReference and `.xdt` files are ignored when installing or uninstalling a package. + +* **Potential impact**: XDT transforms are not applied to any project XML files, most commonly, `web.config.install.xdt` and `web.config.uninstall.xdt`, which means the project's` web.config` file is not updated when the package is installed or uninstalled. ### Assemblies in the lib root are ignored when the package is installed after the migration -| | | -| --- | --- | -| **Description** | With PackageReference, assemblies present at the root of `lib` folder without a target framework specific sub-folder are ignored. NuGet looks for a sub-folder matching the target framework moniker (TFM) corresponding to the project’s target framework and installs the matching assemblies into the project. | -| **Potential impact** | Packages that do not have a sub-folder matching the target framework moniker (TFM) corresponding to the project’s target framework may not behave as expected after the transition or fail installation during the migration | +* **Description**: With PackageReference, assemblies present at the root of `lib` folder without a target framework specific sub-folder are ignored. NuGet looks for a sub-folder matching the target framework moniker (TFM) corresponding to the project’s target framework and installs the matching assemblies into the project. + +* **Potential impact**: Packages that do not have a sub-folder matching the target framework moniker (TFM) corresponding to the project’s target framework may not behave as expected after the transition or fail installation during the migration. ## Found an issue? Report it! diff --git a/docs/create-packages/Package-authoring-best-practices.md b/docs/create-packages/Package-authoring-best-practices.md index 5f96c51ac..0e2e58ef6 100644 --- a/docs/create-packages/Package-authoring-best-practices.md +++ b/docs/create-packages/Package-authoring-best-practices.md @@ -54,7 +54,7 @@ Package metadata elements can also be [specified directly in the project file](h Below is a table mapping and describing available package metadata elements: | Visual Studio property name | [Project file/ MSBuild property name](https://docs.microsoft.com/dotnet/core/tools/csproj#packagereleasenotes) | [Nuspec property name](https://docs.microsoft.com/nuget/reference/nuspec#general-form-and-schema) | Description | -|-----------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------| +|-----------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------| | [`Package id`](#package-id) | [`PackageId`](https://docs.microsoft.com/dotnet/core/tools/csproj#packageid) | [`id`](https://docs.microsoft.com/nuget/reference/nuspec#id) | The package name or identifier. | | [`Package version`](#package-version) | [`PackageVersion`](https://docs.microsoft.com/dotnet/core/tools/csproj#packageversion) | [`version`](https://docs.microsoft.com/nuget/reference/nuspec#version) | NuGet package version. | | [`Authors`](#authors) | [`Authors`](https://docs.microsoft.com/dotnet/core/tools/csproj#authors) | [`authors`](https://docs.microsoft.com/nuget/reference/nuspec#authors) | A comma-separated list of package authors, often using the individual's or an organization's "pretty name." | From 91f852f00ef5737732b567a9cf3eb1005589d268 Mon Sep 17 00:00:00 2001 From: "Mike Jones (DEVUE)" Date: Mon, 22 Mar 2021 15:51:07 -0700 Subject: [PATCH 360/988] tweak --- docs/create-packages/Package-authoring-best-practices.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/create-packages/Package-authoring-best-practices.md b/docs/create-packages/Package-authoring-best-practices.md index 0e2e58ef6..e5974c2ca 100644 --- a/docs/create-packages/Package-authoring-best-practices.md +++ b/docs/create-packages/Package-authoring-best-practices.md @@ -65,9 +65,9 @@ Below is a table mapping and describing available package metadata elements: | [`Project URL`](#project-url) | `PackageProjectUrl` | [`projectUrl`](https://docs.microsoft.com/nuget/reference/nuspec#projecturl) | A URL for the project homepage. | | [`Icon File`](#icon) | [`PackageIcon`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-an-icon-image-file) | [`icon`](https://docs.microsoft.com/nuget/reference/nuspec#icon) | Path to the package icon image file. | | [`Repository URL`](#repository-type-and-url) | [`RepositoryUrl`](https://docs.microsoft.com/dotnet/core/tools/csproj#repositoryurl) | [`repository url`](https://docs.microsoft.com/nuget/reference/nuspec#repository) | URL to the repository from which the package was built. | -| [`Repository type`](#repository-type-and-url) | [`RespositoryType`](https://docs.microsoft.com/dotnet/core/tools/csproj#repositorytype) | [`repository type`](https://docs.microsoft.com/nuget/reference/nuspec#repository) | Type of repository the repository URL is pointing to (i.e. "git"). | +| [`Repository type`](#repository-type-and-url) | [`RepositoryType`](https://docs.microsoft.com/dotnet/core/tools/csproj#repositorytype) | [`repository type`](https://docs.microsoft.com/nuget/reference/nuspec#repository) | Type of repository the repository URL is pointing to (i.e. "git"). | | [`Tags`](#tags) | [`PackageTags`](https://docs.microsoft.com/dotnet/core/tools/csproj#packagetags) | [`tags`](https://docs.microsoft.com/nuget/reference/nuspec#tags) | A space-delimited list of tags and keywords that describe the package. Tags are used when searching for packages. | -| [`Release notes`](#release-notes) | [`PackageReleaseNotes`](https://docs.microsoft.com/dotnet/core/tools/csproj#packagereleasenotes) | [`releaseNotes`](https://docs.microsoft.com/nuget/reference/nuspec#releasenotes) | A description of the changes made in this release of the package. | | +| [`Release notes`](#release-notes) | [`PackageReleaseNotes`](https://docs.microsoft.com/dotnet/core/tools/csproj#packagereleasenotes) | [`releaseNotes`](https://docs.microsoft.com/nuget/reference/nuspec#releasenotes) | A description of the changes made in this release of the package. | ### Package ID From 9ecd8a8562c1b226241962e8ef35ee47429cc7ce Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Tue, 30 Mar 2021 11:55:16 -0400 Subject: [PATCH 361/988] additions to the readme doc --- docs/nuget-org/package-readme-on-nuget-org.md | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/docs/nuget-org/package-readme-on-nuget-org.md b/docs/nuget-org/package-readme-on-nuget-org.md index 9cf52db87..31ef2e338 100644 --- a/docs/nuget-org/package-readme-on-nuget-org.md +++ b/docs/nuget-org/package-readme-on-nuget-org.md @@ -30,11 +30,12 @@ To preview your Readme file before it's live on NuGet.org, upload your package u ![Readme File preview](media\readme-upload-preview.PNG) -## Domain allow-list for images and badges +Consider taking time to review and preview your Readme file for [image compliance](#allowed-domains-for-images-and-badges) and formatting to make sure gives a great first impression to potential users! To correct mistakes on a Readme file on NuGet.org, you will need to push an updated package version, so making sure everything looks good in advance may save you headache down the road. +## Allowed domains for images and badges Due to security and privacy concerns, NuGet.org restricts the domains from which images and badges can be rendered to trusted hosts. -NuGet.org allows all images (including badges) from the following trusted domains to be rendered: +NuGet.org allows all images, including badges, from the following trusted domains to be rendered: * api.bintray.com * api.codacy.com * api.codeclimate.com @@ -52,7 +53,6 @@ NuGet.org allows all images (including badges) from the following trusted domain * codecov.io * codefactor.io * coveralls.io -* dev.azure.com * gitlab.com * img.shields.io * isitmaintained.com @@ -64,6 +64,4 @@ NuGet.org allows all images (including badges) from the following trusted domain * user-images.githubusercontent.com * camo.githubusercontent.com -If you feel that a another domain should be added to the allow-list, please feel free to [file an issue](https://github.com/NuGet/NuGetGallery/issues) and it will be reviewed by our engineering team. - -Images with relative local paths and images hosted from unsupported domains will not be rendered and will produce a warning on the Readme file preview and package details page. +If you feel that a another domain should be added to the allow-list, please feel free to [file an issue](https://github.com/NuGet/NuGetGallery/issues) and it will be reviewed by our engineering team. Images with relative local paths and images hosted from unsupported domains will not be rendered and will produce a warning on the Readme file preview and package details page that is only visible to the package owners. From 5fee9058a7d0c336c9fb1a37f4c68323e5beaf34 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Tue, 30 Mar 2021 12:00:58 -0400 Subject: [PATCH 362/988] updated to include new Readme --- docs/nuget-org/Publish-a-package.md | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/docs/nuget-org/Publish-a-package.md b/docs/nuget-org/Publish-a-package.md index 627ce921b..4a182b439 100644 --- a/docs/nuget-org/Publish-a-package.md +++ b/docs/nuget-org/Publish-a-package.md @@ -33,11 +33,9 @@ Next, you can either upload the package through the nuget.org web portal, push t 1. nuget.org tells you if the package name is available. If it isn't, change the package identifier in your project, rebuild, and try the upload again. -1. If the package name is available, nuget.org opens a **Verify** section in which you can review the metadata from the package manifest. To change any of the metadata, edit your project (project file or `.nuspec` file), rebuild, recreate the package, and upload again. +1. If the package name is available, nuget.org opens a **Verify** section in which you can review the metadata from the package manifest. If you included a [Readme file](/docs/nuget-org/package-readme-on-nuget-org.md) in your package, check out the preview to ensure all content is being rendered properly. To change any of the metadata, edit your project (project file or `.nuspec` file), rebuild, recreate the package, and upload again. -1. Under **Import Documentation** you can paste Markdown, point to your docs with a URL, or upload a documentation file. - -1. When all the information is ready, select the **Submit** button +2. When all the information is ready, select the **Submit** button ### Command line From 026d4d6571e46920b196da8a0d1b67e3418d2ce3 Mon Sep 17 00:00:00 2001 From: Ben Bodenmiller Date: Fri, 2 Apr 2021 20:00:13 -0700 Subject: [PATCH 363/988] Fix formatting on NuGet docs --- .../configuring-nuget-behavior.md | 32 +++++++++---------- 1 file changed, 15 insertions(+), 17 deletions(-) diff --git a/docs/consume-packages/configuring-nuget-behavior.md b/docs/consume-packages/configuring-nuget-behavior.md index c486fcd6c..da3b6e48d 100644 --- a/docs/consume-packages/configuring-nuget-behavior.md +++ b/docs/consume-packages/configuring-nuget-behavior.md @@ -13,7 +13,7 @@ NuGet's behavior is driven by the accumulated settings in one or more `NuGet.Con ## Config file locations and uses -| Scope | NuGet.Config file location | Description | +| Scope | `NuGet.Config` file location | Description | | --- | --- | --- | | Solution | Current folder (aka Solution folder) or any folder up to the drive root.| In a solution folder, settings apply to all projects in subfolders. Note that if a config file is placed in a project folder, it has no effect on that project. | | User | **Windows:** `%appdata%\NuGet\NuGet.Config`
**Mac/Linux:** `~/.config/NuGet/NuGet.Config` or `~/.nuget/NuGet/NuGet.Config` (varies by OS distribution)
Additional configs are supported on all platforms. These configs cannot be edited by the tooling.
**Windows:** `%appdata%\NuGet\config\*.Config`
**Mac/Linux:** `~/.config/NuGet/config/*.config` or `~/.nuget/config/*.config` | Settings apply to all operations, but are overridden by any project-level settings. | @@ -21,7 +21,7 @@ NuGet's behavior is driven by the accumulated settings in one or more `NuGet.Con Notes for earlier versions of NuGet: - NuGet 3.3 and earlier used a `.nuget` folder for solution-wide settings. This folder is not used in NuGet 3.4+. -- For NuGet 2.6 to 3.x, the computer-level config file on Windows was located in %ProgramData%\NuGet\Config[\\{IDE}[\\{Version}[\\{SKU}]]]\NuGet.Config, where *{IDE}* can be *VisualStudio*, *{Version}* was the Visual Studio version such as *14.0*, and *{SKU}* is either *Community*, *Pro*, or *Enterprise*. To migrate settings to NuGet 4.0+, simply copy the config file to %ProgramFiles(x86)%\NuGet\Config. On Linux, this previous location was /etc/opt, and on Mac, /Library/Application Support. +- For NuGet 2.6 to 3.x, the computer-level config file on Windows was located in `%ProgramData%\NuGet\Config[\{IDE}[\{Version}[\{SKU}]]]\NuGet.Config`, where `{IDE}` can be `VisualStudio`, `{Version}` was the Visual Studio version such as `14.0`, and `{SKU}` is either `Community`, `Pro`, or `Enterprise`. To migrate settings to NuGet 4.0+, simply copy the config file to `%ProgramFiles(x86)%\NuGet\Config`. On Linux, this previous location was `/etc/opt`, and on Mac, `/Library/Application Support`. ## Changing config settings @@ -97,18 +97,16 @@ Multiple `NuGet.Config` files allow you to store settings in different locations Specifically, NuGet loads settings from the different config files in the following order: -1. The [NuGetDefaults.Config file](#nuget-defaults-file), which contains settings related only to package sources. +1. The [`NuGetDefaults.Config` file](#nuget-defaults-file), which contains settings related only to package sources. 1. The computer-level file. 1. The user-level file. 1. The file specified with `-configFile`. -1. Files found in every folder in the path from the drive root to the current folder (where nuget.exe is invoked or the folder containing the Visual Studio project). For example, if a command is invoked in c:\A\B\C, NuGet looks for and loads config files in c:\, then c:\A, then c:\A\B, and finally c:\A\B\C. +1. Files found in every folder in the path from the drive root to the current folder (where `nuget.exe` is invoked or the folder containing the Visual Studio project). For example, if a command is invoked in `c:\A\B\C`, NuGet looks for and loads config files in `c:\`, then `c:\A`, then `c:\A\B`, and finally `c:\A\B\C`. As NuGet finds settings in these files, they are applied as follows: 1. For single-item elements, NuGet replaced any previously-found value for the same key. This means that settings that are "closest" to the current folder or project override any others found earlier. For example, the `defaultPushSource` setting in `NuGetDefaults.Config` is overridden if it exists in any other config file. - 1. For collection elements (such as ``), NuGet combines the values from all configuration files into a single collection. - 1. When `` is present for a given node, NuGet ignores previously defined configuration values for that node. ### Settings walkthrough @@ -139,7 +137,7 @@ File A. User-level file, (`%appdata%\NuGet\NuGet.Config` on Windows, `~/.config/
``` -File B. disk_drive_2/NuGet.Config: +File B. `disk_drive_2/NuGet.Config`: ```xml @@ -153,7 +151,7 @@ File B. disk_drive_2/NuGet.Config:
``` -File C. disk_drive_2/Project1/NuGet.Config: +File C. `disk_drive_2/Project1/NuGet.Config`: ```xml @@ -169,7 +167,7 @@ File C. disk_drive_2/Project1/NuGet.Config:
``` -File D. disk_drive_2/Project2/NuGet.Config: +File D. `disk_drive_2/Project2/NuGet.Config`: ```xml @@ -183,13 +181,13 @@ File D. disk_drive_2/Project2/NuGet.Config: NuGet then loads and applies settings as follows, depending on where it's invoked: -- **Invoked from disk_drive_1/users**: Only the default repository listed in the user-level configuration file (A) is used, because that's the only file found on disk_drive_1. +- **Invoked from `disk_drive_1/users`**: Only the default repository listed in the user-level configuration file (A) is used, because that's the only file found on `disk_drive_1`. -- **Invoked from disk_drive_2/ or disk_drive_/tmp**: The user-level file (A) is loaded first, then NuGet goes to the root of disk_drive_2 and finds file (B). NuGet also looks for a configuration file in /tmp but does not find one. As a result, the default repository on nuget.org is used, package restore is enabled, and packages get expanded in disk_drive_2/tmp. +- **Invoked from `disk_drive_2/` or `disk_drive_/tmp`**: The user-level file (A) is loaded first, then NuGet goes to the root of `disk_drive_2` and finds file (B). NuGet also looks for a configuration file in `/tmp` but does not find one. As a result, the default repository on `nuget.org` is used, package restore is enabled, and packages get expanded in `disk_drive_2/tmp`. -- **Invoked from disk_drive_2/Project1 or disk_drive_2/Project1/Source**: The user-level file (A) is loaded first, then NuGet loads file (B) from the root of disk_drive_2, followed by file (C). Settings in (C) override those in (B) and (A), so the `repositoryPath` where packages get installed is disk_drive_2/Project1/External/Packages instead of *disk_drive_2/tmp*. Also, because (C) clears ``, nuget.org is no longer available as a source leaving only `https://MyPrivateRepo/ES/nuget`. +- **Invoked from `disk_drive_2/Project1` or `disk_drive_2/Project1/Source`**: The user-level file (A) is loaded first, then NuGet loads file (B) from the root of `disk_drive_2`, followed by file (C). Settings in (C) override those in (B) and (A), so the `repositoryPath` where packages get installed is `disk_drive_2/Project1/External/Packages` instead of `disk_drive_2/tmp`. Also, because (C) clears ``, nuget.org is no longer available as a source leaving only `https://MyPrivateRepo/ES/nuget`. -- **Invoked from disk_drive_2/Project2 or disk_drive_2/Project2/Source**: The user-level file (A) is loaded first followed by file (B) and file (D). Because `packageSources` is not cleared, both `nuget.org` and `https://MyPrivateRepo/DQ/nuget` are available as sources. Packages get expanded in disk_drive_2/tmp as specified in (B). +- **Invoked from `disk_drive_2/Project2` or `disk_drive_2/Project2/Source`**: The user-level file (A) is loaded first followed by file (B) and file (D). Because `packageSources` is not cleared, both `nuget.org` and `https://MyPrivateRepo/DQ/nuget` are available as sources. Packages get expanded in `disk_drive_2/tmp` as specified in (B). ## Additional user wide configuration @@ -212,11 +210,11 @@ The `NuGetDefaults.Config` file exists to specify package sources from which pac > > Furthermore, neither `NuGetDefaults.Config` nor any other mechanism in NuGet can prevent access to package sources like nuget.org. If an organization wishes to block such access, it must use other means such as firewalls to do so. -### NuGetDefaults.Config location +### `NuGetDefaults.Config` location The following table describes where the `NuGetDefaults.Config` file should be stored, depending on the target OS: -| OS Platform | NuGetDefaults.Config Location | +| OS Platform | `NuGetDefaults.Config` Location | | --- | --- | | Windows | **Visual Studio 2017 or NuGet 4.x+:** `%ProgramFiles(x86)%\NuGet\Config`
**Visual Studio 2015 and earlier or NuGet 3.x and earlier:** `%PROGRAMDATA%\NuGet` | | Mac/Linux | `$XDG_DATA_HOME` (typically `~/.local/share` or `/usr/local/share`, depending on OS distribution)| @@ -225,9 +223,9 @@ The following table describes where the `NuGetDefaults.Config` file should be st - `packageSources`: this collection has the same meaning as `packageSources` in regular config files and specifies the default sources. NuGet uses the sources in order when installing or updating packages in projects using the `packages.config` management format. For projects using the PackageReference format, NuGet uses local sources first, then sources on network shares, then HTTP sources, regardless of the order in the configuration files. NuGet always ignores the order of sources with restore operations. -- `disabledPackageSources`: this collection also has the same meaning as in `NuGet.Config` files, where each affected source is listed by its name and a true/false value indicating whether it's disabled. This allows the source name and URL to remain in `packageSources` without having it turned on by default. Individual developers can then re-enable the source by setting the source's value to false in other `NuGet.Config` files without having to find the correct URL again. This is also useful to supply developers with a full list of internal source URLs for an organization while enabling only an individual team's source by default. +- `disabledPackageSources`: this collection also has the same meaning as in `NuGet.Config` files, where each affected source is listed by its name and a `true`/`false` value indicating whether it's disabled. This allows the source name and URL to remain in `packageSources` without having it turned on by default. Individual developers can then re-enable the source by setting the source's value to `false` in other `NuGet.Config` files without having to find the correct URL again. This is also useful to supply developers with a full list of internal source URLs for an organization while enabling only an individual team's source by default. -- `defaultPushSource`: specifies the default target for `nuget push` operations, overriding the built-in default of nuget.org. Administrators can deploy this setting to avoid publishing internal packages to the public nuget.org by accident, as developers specifically need to use `nuget push -Source` to publish to nuget.org. +- `defaultPushSource`: specifies the default target for `nuget push` operations, overriding the built-in default of `nuget.org`. Administrators can deploy this setting to avoid publishing internal packages to the public `nuget.org` by accident, as developers specifically need to use `nuget push -Source` to publish to `nuget.org`. ### Example NuGetDefaults.Config and application From 46a4f1089b3b8ddc1e80c3a7aea096d7a3659907 Mon Sep 17 00:00:00 2001 From: Ben Bodenmiller Date: Fri, 2 Apr 2021 20:03:41 -0700 Subject: [PATCH 364/988] Update nuget-config-file.md --- docs/reference/nuget-config-file.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/nuget-config-file.md b/docs/reference/nuget-config-file.md index 29f75876c..ad0e4d3c7 100644 --- a/docs/reference/nuget-config-file.md +++ b/docs/reference/nuget-config-file.md @@ -345,7 +345,7 @@ If an environment variable is not found, NuGet uses the literal value from the c The table below show environnment variable syntax and path separator support for NuGet.Config files. -### NuGet.Config environment variable support +### `NuGet.Config` environment variable support | Syntax | Dir separator | Windows nuget.exe | Windows dotnet.exe | Mac nuget.exe (in Mono) | Mac dotnet.exe | |---|---|---|---|---|---| From 24955c79b7830904443acde10049e37116251fc9 Mon Sep 17 00:00:00 2001 From: Ben Bodenmiller Date: Fri, 2 Apr 2021 20:04:15 -0700 Subject: [PATCH 365/988] Update nuget-config-file.md --- docs/reference/nuget-config-file.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/nuget-config-file.md b/docs/reference/nuget-config-file.md index ad0e4d3c7..e2b9e4a90 100644 --- a/docs/reference/nuget-config-file.md +++ b/docs/reference/nuget-config-file.md @@ -7,7 +7,7 @@ ms.date: 08/13/2019 ms.topic: reference --- -# nuget.config reference +# `nuget.config` reference NuGet behavior is controlled by settings in different `NuGet.Config` or `nuget.config` files as described in [Common NuGet configurations](../consume-packages/configuring-nuget-behavior.md). From 865abfd2eda3b981cd151752dae4435fae0115bf Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Tue, 6 Apr 2021 14:37:23 -0700 Subject: [PATCH 366/988] Add troubleshooting-installed-packages (#2369) --- docs/TOC.md | 1 + .../troubleshooting-installed-packages.md | 87 +++++++++++++++++++ 2 files changed, 88 insertions(+) create mode 100644 docs/concepts/troubleshooting-installed-packages.md diff --git a/docs/TOC.md b/docs/TOC.md index 87ab574a2..f8b6d7ecd 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -70,6 +70,7 @@ ## [Package versioning](concepts/package-versioning.md) ## [Dependency resolution](concepts/dependency-resolution.md) ## [Best practices for a secure software supply chain](concepts/Security-Best-Practices.md) +## [Troubleshooting Installed Packages](concepts/troubleshooting-installed-packages.md) # Reference ## [.nuspec](reference/nuspec.md) ## [nuget.config file](reference/nuget-config-file.md) diff --git a/docs/concepts/troubleshooting-installed-packages.md b/docs/concepts/troubleshooting-installed-packages.md new file mode 100644 index 000000000..1b6c361b9 --- /dev/null +++ b/docs/concepts/troubleshooting-installed-packages.md @@ -0,0 +1,87 @@ +--- +title: Troubleshooting Installed Packages +description: How to find which package source was used for individual packages +author: JonDouglas +ms.author: jodou +ms.date: 03/26/2021 +ms.topic: conceptual +--- + +# Troubleshooting Installed Packages + +Sometimes you might want to validate which source a specific package was installed from. Here are some ways you can check. + +> [!Note] +> Some package sources support a concept known as upstream sources. For example, [Azure Artifacts upstream sources](/azure/devops/artifacts/concepts/upstream-sources). NuGet clients do not know whether a package came from an upstream source. Therefore, any logging of the package source will list the configured source, not the upstream source. + +## `.nupkg.metadata` file in global packages folder + +When a package is extracted into the *global-packages* folder, a file `.nupkg.metadata` is written. Starting from NuGet 5.9.0, NuGet will add the package source. See below to map NuGet versions to Visual Studio or .NET SDK versions. For example: + +```json +{ + "version": 2, + "contentHash": "bw3R9q8cVNhWXNpnvWb0OGP4HadS4zvClq+T1zf7AF+tLY1haZ2AvbHidQekf4PDv1T40c6brZeT/V0IBq7cEQ==", + "source": "https://api.nuget.org/v3/index.json" +} +``` + +> [!Note] +> If your *global-packages* folder has packages extracted before you upgraded to a newer version of tools that has NuGet 5.9.0, the `.nupkg.metadata` file will be version 1 and will not contain the package source. You can [clear your *global-packages* folder](../consume-packages/managing-the-global-packages-and-cache-folders.md#clearing-local-folders) to ensure all packages will contain the package source. + +> [!Tip] +> NuGet writes the `.nupkg.metadata` file to the *global-packages* folder only. Projects using `packages.config` use a solution packages folder, which does not create a `.nupkg.metadata` file. + +## Installed package log message + +Starting from NuGet 5.9.0, NuGet outputs the package source in the restore message informing that a package was installed. For example: + +```text +Installed Moq 4.16.1 from https://api.nuget.org/v3/index.json with content hash bw3R9q8cVNhWXNpnvWb0OGP4HadS4zvClq+T1zf7AF+tLY1haZ2AvbHidQekf4PDv1T40c6brZeT/V0IBq7cEQ==. +``` + +> [!Tip] +> This message is output at normal/informational verbosity. Visual Studio and the `dotnet` CLI default to minimal verbosity, so this message will not be visible by default. The `msbuild` and `nuget` CLI tools default to normal verbosity, so this message will be visible by default. + +## HTTP log message + +When a package is not available locally, either in the *global-packages* folder, a fallback folder, or a local file source, NuGet will download it from any configured package source over HTTP. HTTP requests and responses are logged at the normal verbosity level, and you should see only a single request and response per package version. For example: + +```text +info : GET https://api.nuget.org/v3-flatcontainer/moq/index.json +info : OK https://api.nuget.org/v3-flatcontainer/moq/index.json 56ms +info : GET https://api.nuget.org/v3-flatcontainer/moq/4.16.1/moq.4.16.1.nupkg +info : OK https://api.nuget.org/v3-flatcontainer/moq/4.16.1/moq.4.16.1.nupkg 3ms +``` + +If the files were recently downloaded, they might be retrieved from NuGet's *http-cache* + +```text +CACHE https://api.nuget.org/v3-flatcontainer/moq/index.json +CACHE https://api.nuget.org/v3-flatcontainer/moq/4.16.1/moq.4.16.1.nupkg +``` + +The URL format may be different for different NuGet HTTP server implementations, and whether it's implementing NuGet V2 or V3 HTTP protocol. + +If your `nuget.config` has multiple HTTP sources defined, you will see multiple requests to each package's `index.json` file, one for each source. But there will be only a single `nupkg` download for each version of the package. + +## Package signature log message + +If the package being downloaded is signed, NuGet will validate the signature and will log the following message at detailed verbosity: + +```text +PackageSignatureVerificationLog: PackageIdentity: Moq.4.16.1 Source: https://api.nuget.org/v3/index.json PackageSignatureValidity: True +``` + +This message will be reported whether the package was downloaded from an HTTP package source, or copied from a local package source. It will not be output if the package is already available in the *global-packages* folder or a fallback folder. + +> [!Important] +> Due to [removal of trust of VeriSign CA](https://github.com/dotnet/announcements/issues/180) NuGet has disabled signed package verification on certain platforms, in certain versions of NuGet and the .NET SDK. Therefore, the same packages may have `PackageSignatureVerificationLog` logs, or those logs may be missing, depending on what platform you're running restore on, and which version of .NET or NuGet you're using. + +## NuGet Version Map + +The following versions of NuGet have important changes regarding package source logging: + +|NuGet Version|Visual Studio Version|.NET SDK Version| +|---|---|---| +|NuGet 5.9.0|Visual Studio 2019 16.9.0|.NET 5 SDK 5.0.200| From ca86b1a80cd238af17d5e9c0d5e21ee1a1bce89f Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Tue, 6 Apr 2021 14:53:16 -0700 Subject: [PATCH 367/988] Add note for namespaces required for nuget.protocol samples (#2368) --- docs/reference/NuGet-Client-SDK.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/reference/NuGet-Client-SDK.md b/docs/reference/NuGet-Client-SDK.md index 28bd3d5e8..5078be0b0 100644 --- a/docs/reference/NuGet-Client-SDK.md +++ b/docs/reference/NuGet-Client-SDK.md @@ -28,6 +28,9 @@ Install the `NuGet.Protocol` package to interact with HTTP and folder-based NuGe dotnet add package NuGet.Protocol ``` +> [!Tip] +> `Repository.Factory` is defined in the `NuGet.Protocol.Core.Types` namespace, and the `GetCoreV3` method is an extension method defined in the `NuGet.Protocol` namespace. Therefore, you will need to add `using` statements for both namespaces. + ### List package versions Find all versions of Newtonsoft.Json using the [NuGet V3 Package Content API](../api/package-base-address-resource.md#enumerate-package-versions): From 550c533ed0419a888f2a1d8e706ef20af66fefd3 Mon Sep 17 00:00:00 2001 From: BrianBu01 Date: Wed, 7 Apr 2021 20:01:57 -0400 Subject: [PATCH 368/988] Symantec no longer creates certs --- docs/create-packages/Sign-a-Package.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/create-packages/Sign-a-Package.md b/docs/create-packages/Sign-a-Package.md index 05dcdc088..da4a595b6 100644 --- a/docs/create-packages/Sign-a-Package.md +++ b/docs/create-packages/Sign-a-Package.md @@ -14,7 +14,7 @@ Signed packages allows for content integrity verification checks which provides ## Get a code signing certificate -Valid certificates may be obtained from a public certificate authority such as [Symantec](https://trustcenter.websecurity.symantec.com/process/trust/productOptions?productType=SoftwareValidationClass3), [DigiCert](https://www.digicert.com/code-signing/), [Go Daddy](https://www.godaddy.com/web-security/code-signing-certificate), [Global Sign](https://www.globalsign.com/en/code-signing-certificate/), [Comodo](https://www.comodo.com/e-commerce/code-signing/code-signing-certificate.php), [Certum](https://www.certum.eu/certum/cert,offer_en_open_source_cs.xml), etc. The complete list of certification authorities trusted by Windows can be obtained from [http://aka.ms/trustcertpartners](/security/trusted-root/participants-list). +Valid certificates may be obtained from a public certificate authority such as [DigiCert](https://www.digicert.com/code-signing/), [Go Daddy](https://www.godaddy.com/web-security/code-signing-certificate), [Global Sign](https://www.globalsign.com/en/code-signing-certificate/), [Comodo](https://www.comodo.com/e-commerce/code-signing/code-signing-certificate.php), [Certum](https://www.certum.eu/certum/cert,offer_en_open_source_cs.xml), etc. The complete list of certification authorities trusted by Windows can be obtained from [http://aka.ms/trustcertpartners](/security/trusted-root/participants-list). You can use self-issued certificates for testing purposes. However, packages signed using self-issued certificates are not accepted by NuGet.org. Learn more about [creating a test certificate](#create-a-test-certificate) @@ -99,4 +99,4 @@ This command creates a testing certificate available in the current user's perso ## Related articles - [Manage package trust boundaries](../consume-packages/installing-signed-packages.md) -- [Signed Packages Reference](../reference/Signed-Packages-Reference.md) \ No newline at end of file +- [Signed Packages Reference](../reference/Signed-Packages-Reference.md) From 310178bf8d948a24f1b3bea91dec5e8f72c10af7 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Tue, 13 Apr 2021 17:41:53 -0400 Subject: [PATCH 369/988] fixed table --- .../Package-authoring-best-practices.md | 43 +++++++------------ 1 file changed, 15 insertions(+), 28 deletions(-) diff --git a/docs/create-packages/Package-authoring-best-practices.md b/docs/create-packages/Package-authoring-best-practices.md index 54f2103b8..dab6acf89 100644 --- a/docs/create-packages/Package-authoring-best-practices.md +++ b/docs/create-packages/Package-authoring-best-practices.md @@ -53,34 +53,21 @@ Package metadata elements can also be [specified directly in the project file](h Below is a table mapping and describing available package metadata elements: -| Visual Studio property name | [Project file/ MSBuild property name](https://docs.microsoft.com/dotnet/core/tools/csproj#packagereleasenotes) | [Nuspec property name](https://docs.microsoft.com/nuget/reference/nuspec#general-form-and-schema) | Description | -|-----------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------| -| [`Package id`](#package-id) | [`PackageId`](https://docs.microsoft.com/dotnet/core/tools/csproj#packageid) | [`id`](https://docs.microsoft.com/nuget/reference/nuspec#id) | The package name or identifier. | -| [`Package version`](#package-version) | [`PackageVersion`](https://docs.microsoft.com/dotnet/core/tools/csproj#packageversion) | [`version`](https://docs.microsoft.com/nuget/reference/nuspec#version) | NuGet package version. | -| [`Authors`](#authors) | [`Authors`](https://docs.microsoft.com/dotnet/core/tools/csproj#authors) | [`authors`](https://docs.microsoft.com/nuget/reference/nuspec#authors) | A comma-separated list of package authors, often using the individual's or an organization's "pretty name." | -| [`Description`](#description) | [`Description`](https://docs.microsoft.com/dotnet/core/tools/csproj#description) | [`description`](https://docs.microsoft.com/nuget/reference/nuspec#description) | A description of the package. | -| [`Copyright`](#copyright) | [`Copyright`](https://docs.microsoft.com/dotnet/core/tools/csproj#copyright) | [`copyright`](https://docs.microsoft.com/nuget/reference/nuspec#copyright) | Copyright details for the package. | -| [`Licensing - Expression`](#licensing) | [`PackageLicenseExpression`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="expression"`](https://docs.microsoft.com/nuget/reference/nuspec#license) | An SPDX license expression. | -| [`Licensing - File`](#licensing) | [`PackageLicenseFile`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="file"`](https://docs.microsoft.com/nuget/reference/nuspec#license) | Path to a custom license file. | -| [`Project URL`](#project-url) | `PackageProjectUrl` | [`projectUrl`](https://docs.microsoft.com/nuget/reference/nuspec#projecturl) | A URL for the project homepage. | -| [`Icon File`](#icon) | [`PackageIcon`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-an-icon-image-file) | [`icon`](https://docs.microsoft.com/nuget/reference/nuspec#icon) | Path to the package icon image file. | -| [`Repository URL`](#repository-type-and-url) | [`RepositoryUrl`](https://docs.microsoft.com/dotnet/core/tools/csproj#repositoryurl) | [`repository url`](https://docs.microsoft.com/nuget/reference/nuspec#repository) | URL to the repository from which the package was built. | -| [`Repository type`](#repository-type-and-url) | [`RespositoryType`](https://docs.microsoft.com/dotnet/core/tools/csproj#repositorytype) | [`repository type`](https://docs.microsoft.com/nuget/reference/nuspec#repository) | Type of repository the repository URL is pointing to (i.e. "git"). | -| [`Tags`](#tags) | [`PackageTags`](https://docs.microsoft.com/dotnet/core/tools/csproj#packagetags) | [`tags`](https://docs.microsoft.com/nuget/reference/nuspec#tags) | A space-delimited list of tags and keywords that describe the package. Tags are used when searching for packages. | -| [`Release notes`](#release-notes) | [`PackageReleaseNotes`](https://docs.microsoft.com/dotnet/core/tools/csproj#packagereleasenotes) | [`releaseNotes`](https://docs.microsoft.com/nuget/reference/nuspec#releasenotes) | A description of the changes made in this release of the package. | | - -### Package ID - -If you're publishing a completely new package: - -✔️ DO choose a package ID that is unique and clearly differentiated from existing packages on NuGet.org. -> You can check if a package ID is unique and differentiable by searching for the ID on NuGet.org or checking if the following link exists: https://www.nuget.org/packages/. - -✔️ CONSIDER choosing a NuGet package name with a prefix that meets NuGet's [prefix reservation criteria](https://docs.microsoft.com/nuget/nuget-org/id-prefix-reservation#id-prefix-reservation-criteria). -> Reserving the prefix ID for your package will let you get the verified check mark: -> ![image](media/Verified-check-mark.png) -> -> Check out the [Package ID prefix reservation docs](https://docs.microsoft.com/nuget/nuget-org/id-prefix-reservation) to learn more. +| Visual Studio property name | [Project file/ MSBuild property name](https://docs.microsoft.com/dotnet/core/tools/csproj#packagereleasenotes) | [Nuspec property name](https://docs.microsoft.com/nuget/reference/nuspec#general-form-and-schema) | Description | +|----------------------------------------------- |----------------------------------------------------------------------------------------------------------------------------------------- |--------------------------------------------------------------------------------------------------- |------------------------------------------------------------------------------------------------------------------- | +| [`Package id`](#package-id) | [`PackageId`](https://docs.microsoft.com/dotnet/core/tools/csproj#packageid) | [`id`](https://docs.microsoft.com/nuget/reference/nuspec#id) | The package name or identifier. | +| [`Package version`](#package-version) | [`PackageVersion`](https://docs.microsoft.com/dotnet/core/tools/csproj#packageversion) | [`version`](https://docs.microsoft.com/nuget/reference/nuspec#version) | NuGet package version. | +| [`Authors`](#authors) | [`Authors`](https://docs.microsoft.com/dotnet/core/tools/csproj#authors) | [`authors`](https://docs.microsoft.com/nuget/reference/nuspec#authors) | A comma-separated list of package authors, often using the individual's or an organization's "pretty name." | +| [`Description`](#description) | [`Description`](https://docs.microsoft.com/dotnet/core/tools/csproj#description) | [`description`](https://docs.microsoft.com/nuget/reference/nuspec#description) | A description of the package. | +| [`Copyright`](#copyright) | [`Copyright`](https://docs.microsoft.com/dotnet/core/tools/csproj#copyright) | [`copyright`](https://docs.microsoft.com/nuget/reference/nuspec#copyright) | Copyright details for the package. | +| [`Licensing - Expression`](#licensing) | [`PackageLicenseExpression`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="expression"`](https://docs.microsoft.com/nuget/reference/nuspec#license) | An SPDX license expression. | +| [`Licensing - File`](#licensing) | [`PackageLicenseFile`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="file"`](https://docs.microsoft.com/nuget/reference/nuspec#license) | Path to a custom license file. | +| [`Project URL`](#project-url) | `PackageProjectUrl` | [`projectUrl`](https://docs.microsoft.com/nuget/reference/nuspec#projecturl) | A URL for the project homepage. | +| [`Icon File`](#icon) | [`PackageIcon`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-an-icon-image-file) | [`icon`](https://docs.microsoft.com/nuget/reference/nuspec#icon) | Path to the package icon image file. | +| [`Repository URL`](#repository-type-and-url) | [`RepositoryUrl`](https://docs.microsoft.com/dotnet/core/tools/csproj#repositoryurl) | [`repository url`](https://docs.microsoft.com/nuget/reference/nuspec#repository) | URL to the repository from which the package was built. | +| [`Repository type`](#repository-type-and-url) | [`RespositoryType`](https://docs.microsoft.com/dotnet/core/tools/csproj#repositorytype) | [`repository type`](https://docs.microsoft.com/nuget/reference/nuspec#repository) | Type of repository the repository URL is pointing to (i.e. "git"). | +| [`Tags`](#tags) | [`PackageTags`](https://docs.microsoft.com/dotnet/core/tools/csproj#packagetags) | [`tags`](https://docs.microsoft.com/nuget/reference/nuspec#tags) | A space-delimited list of tags and keywords that describe the package. Tags are used when searching for packages. | +| [`Release notes`](#release-notes) | [`PackageReleaseNotes`](https://docs.microsoft.com/dotnet/core/tools/csproj#packagereleasenotes) | [`releaseNotes`](https://docs.microsoft.com/nuget/reference/nuspec#releasenotes) | A description of the changes made in this release of the package. | ### Package Version From db10c4179101cb2d146d34040911d3488b362562 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Tue, 13 Apr 2021 17:50:34 -0400 Subject: [PATCH 370/988] simplified --- docs/nuget-org/package-readme-on-nuget-org.md | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/docs/nuget-org/package-readme-on-nuget-org.md b/docs/nuget-org/package-readme-on-nuget-org.md index 31ef2e338..75894133b 100644 --- a/docs/nuget-org/package-readme-on-nuget-org.md +++ b/docs/nuget-org/package-readme-on-nuget-org.md @@ -16,14 +16,16 @@ This is likely one of the first elements users will see when they view your pack ## What should my Readme include? -The information you include in your Readme will vary depending on the type, purpose, and scope of your package. It doesn't need be a single comprehensive document for how to use your package, but it should contain the following items at minimum: -* An introduction to what your package is and what it does. What problems does it solve? -* How to get started with your package. Are there any specific requirements (framework, project type, OS)? -* A link to comprehensive documentation if applicable. -* Code snippets/samples or example images/screenshots. +Consider including the following items in your readmes: +* An introduction to what your package is and does - what problems does it solve? +* How to get started with your package - are there any specific requirements? +* Links to more comprehensive documentation if not included in the readme itself. +* At least a few code snippets/samples or example images. * Where and how to leave feedback such as link to the project issues, Twitter, bug tracker, or other platform. * How to contribute, if applicable. +Keep in mind, high quality readmes can come in a wide variety of formats, shapes, and sizes! If you already have a package available on NuGet.org, chances are that you already have a `readme.md` file at in your repository that would be a great addition to your NuGet.org details page. + ## Preview your Readme To preview your Readme file before it's live on NuGet.org, upload your package using the [Upload Package web portal on NuGet.org](https://docs.microsoft.com/nuget/nuget-org/publish-a-package#web-portal-use-the-upload-package-tab-on-nugetorg) and scroll down to the "Readme File" section of the metadata preview. It should look something like this: @@ -64,4 +66,4 @@ NuGet.org allows all images, including badges, from the following trusted domain * user-images.githubusercontent.com * camo.githubusercontent.com -If you feel that a another domain should be added to the allow-list, please feel free to [file an issue](https://github.com/NuGet/NuGetGallery/issues) and it will be reviewed by our engineering team. Images with relative local paths and images hosted from unsupported domains will not be rendered and will produce a warning on the Readme file preview and package details page that is only visible to the package owners. +If you feel that a another domain should be added to the allow-list, please feel free to [file an issue](https://github.com/NuGet/NuGetGallery/issues) and it will be reviewed by our engineering team for privacy and security compliance. Images with relative local paths and images hosted from unsupported domains will not be rendered and will produce a warning on the Readme file preview and package details page that is only visible to the package owners. From 78efdf46ade748d4baadab505d3ef3ee2c4b274c Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Tue, 13 Apr 2021 17:54:29 -0400 Subject: [PATCH 371/988] Fixed MS author --- docs/reference/errors-and-warnings/NU5038.md | 4 ++-- docs/reference/errors-and-warnings/NU5039.md | 4 ++-- docs/reference/errors-and-warnings/NU5040.md | 4 ++-- docs/reference/errors-and-warnings/NU5041.md | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/docs/reference/errors-and-warnings/NU5038.md b/docs/reference/errors-and-warnings/NU5038.md index 0bcff0111..f47a69e1f 100644 --- a/docs/reference/errors-and-warnings/NU5038.md +++ b/docs/reference/errors-and-warnings/NU5038.md @@ -1,8 +1,8 @@ --- title: NuGet Error NU5038 description: NU5038 Error code -author: advay26 -ms.author: t-adtand +author: chgill-MSFT +ms.author: chgill ms.date: 7/28/2020 ms.topic: reference ms.reviewer: diff --git a/docs/reference/errors-and-warnings/NU5039.md b/docs/reference/errors-and-warnings/NU5039.md index 9810ea90a..ac8fe6ca2 100644 --- a/docs/reference/errors-and-warnings/NU5039.md +++ b/docs/reference/errors-and-warnings/NU5039.md @@ -1,8 +1,8 @@ --- title: NuGet Error NU5039 description: NU5039 Error code -author: advay26 -ms.author: t-adtand +author: chgill-MSFT +ms.author: chgill ms.date: 7/28/2020 ms.topic: reference ms.reviewer: diff --git a/docs/reference/errors-and-warnings/NU5040.md b/docs/reference/errors-and-warnings/NU5040.md index 3bffbcd5f..5662b368d 100644 --- a/docs/reference/errors-and-warnings/NU5040.md +++ b/docs/reference/errors-and-warnings/NU5040.md @@ -1,8 +1,8 @@ --- title: NuGet Error NU5040 description: NU5040 Error code -author: advay26 -ms.author: t-adtand +author: chgill-MSFT +ms.author: chgill ms.date: 7/28/2020 ms.topic: reference ms.reviewer: diff --git a/docs/reference/errors-and-warnings/NU5041.md b/docs/reference/errors-and-warnings/NU5041.md index 312f54d4f..5253e56c6 100644 --- a/docs/reference/errors-and-warnings/NU5041.md +++ b/docs/reference/errors-and-warnings/NU5041.md @@ -1,8 +1,8 @@ --- title: NuGet Error NU5041 description: NU5041 Error code -author: advay26 -ms.author: t-adtand +author: chgill-MSFT +ms.author: chgill ms.date: 7/28/2020 ms.topic: reference ms.reviewer: From 3692a3a98f49c45457af3c7f82ce0bdefadd5fa1 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Tue, 13 Apr 2021 17:55:23 -0400 Subject: [PATCH 372/988] Fixed best practices table --- .../Package-authoring-best-practices.md | 31 +++++++++---------- 1 file changed, 15 insertions(+), 16 deletions(-) diff --git a/docs/create-packages/Package-authoring-best-practices.md b/docs/create-packages/Package-authoring-best-practices.md index 17b106cb2..e4bf27447 100644 --- a/docs/create-packages/Package-authoring-best-practices.md +++ b/docs/create-packages/Package-authoring-best-practices.md @@ -53,22 +53,21 @@ Package metadata elements can also be [specified directly in the project file](. Below is a table mapping and describing available package metadata elements: -| Visual Studio property name | [Project file/ MSBuild property name](/dotnet/core/tools/csproj#packagereleasenotes) | [Nuspec property name](../reference/nuspec.md#general-form-and-schema) | Description | -|-----------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------| -| [`Package id`](#package-id) | [`PackageId`](/dotnet/core/tools/csproj#packageid) | [`id`](../reference/nuspec.md#id) | The package name or identifier. | -| [`Package version`](#package-version) | [`PackageVersion`](/dotnet/core/tools/csproj#packageversion) | [`version`](../reference/nuspec.md#version) | NuGet package version. | -| [`Authors`](#authors) | [`Authors`](/dotnet/core/tools/csproj#authors) | [`authors`](../reference/nuspec.md#authors) | A comma-separated list of package authors, often using the individual's or an organization's "pretty name." | -| [`Description`](#description) | [`Description`](/dotnet/core/tools/csproj#description) | [`description`](../reference/nuspec.md#description) | A description of the package. | -| [`Copyright`](#copyright) | [`Copyright`](/dotnet/core/tools/csproj#copyright) | [`copyright`](../reference/nuspec.md#copyright) | Copyright details for the package. | -| [`Licensing - Expression`](#licensing) | [`PackageLicenseExpression`](../reference/msbuild-targets.md#packing-a-license-expression-or-a-license-file) | [`license type="expression"`](../reference/nuspec.md#license) | An SPDX license expression. | -| [`Licensing - File`](#licensing) | [`PackageLicenseFile`](../reference/msbuild-targets.md#packing-a-license-expression-or-a-license-file) | [`license type="file"`](../reference/nuspec.md#license) | Path to a custom license file. | -| [`Project URL`](#project-url) | `PackageProjectUrl` | [`projectUrl`](../reference/nuspec.md#projecturl) | A URL for the project homepage. | -| [`Icon File`](#icon) | [`PackageIcon`](../reference/msbuild-targets.md#packing-an-icon-image-file) | [`icon`](../reference/nuspec.md#icon) | Path to the package icon image file. | -| [`Repository URL`](#repository-type-and-url) | [`RepositoryUrl`](/dotnet/core/tools/csproj#repositoryurl) | [`repository url`](../reference/nuspec.md#repository) | URL to the repository from which the package was built. | -| [`Repository type`](#repository-type-and-url) | [`RespositoryType`](/dotnet/core/tools/csproj#repositorytype) | [`repository type`](../reference/nuspec.md#repository) | Type of repository the repository URL is pointing to (i.e. "git"). | -| [`Tags`](#tags) | [`PackageTags`](/dotnet/core/tools/csproj#packagetags) | [`tags`](../reference/nuspec.md#tags) | A space-delimited list of tags and keywords that describe the package. Tags are used when searching for packages. | -| [`Release notes`](#release-notes) | [`PackageReleaseNotes`](/dotnet/core/tools/csproj#packagereleasenotes) | [`releaseNotes`](../reference/nuspec.md#releasenotes) | A description of the changes made in this release of the package. | | - +| Visual Studio property name | [Project file/ MSBuild property name](https://docs.microsoft.com/dotnet/core/tools/csproj#packagereleasenotes) | [Nuspec property name](https://docs.microsoft.com/nuget/reference/nuspec#general-form-and-schema) | Description | +|----------------------------------------------- |----------------------------------------------------------------------------------------------------------------------------------------- |--------------------------------------------------------------------------------------------------- |------------------------------------------------------------------------------------------------------------------- | +| [`Package id`](#package-id) | [`PackageId`](https://docs.microsoft.com/dotnet/core/tools/csproj#packageid) | [`id`](https://docs.microsoft.com/nuget/reference/nuspec#id) | The package name or identifier. | +| [`Package version`](#package-version) | [`PackageVersion`](https://docs.microsoft.com/dotnet/core/tools/csproj#packageversion) | [`version`](https://docs.microsoft.com/nuget/reference/nuspec#version) | NuGet package version. | +| [`Authors`](#authors) | [`Authors`](https://docs.microsoft.com/dotnet/core/tools/csproj#authors) | [`authors`](https://docs.microsoft.com/nuget/reference/nuspec#authors) | A comma-separated list of package authors, often using the individual's or an organization's "pretty name." | +| [`Description`](#description) | [`Description`](https://docs.microsoft.com/dotnet/core/tools/csproj#description) | [`description`](https://docs.microsoft.com/nuget/reference/nuspec#description) | A description of the package. | +| [`Copyright`](#copyright) | [`Copyright`](https://docs.microsoft.com/dotnet/core/tools/csproj#copyright) | [`copyright`](https://docs.microsoft.com/nuget/reference/nuspec#copyright) | Copyright details for the package. | +| [`Licensing - Expression`](#licensing) | [`PackageLicenseExpression`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="expression"`](https://docs.microsoft.com/nuget/reference/nuspec#license) | An SPDX license expression. | +| [`Licensing - File`](#licensing) | [`PackageLicenseFile`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="file"`](https://docs.microsoft.com/nuget/reference/nuspec#license) | Path to a custom license file. | +| [`Project URL`](#project-url) | `PackageProjectUrl` | [`projectUrl`](https://docs.microsoft.com/nuget/reference/nuspec#projecturl) | A URL for the project homepage. | +| [`Icon File`](#icon) | [`PackageIcon`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-an-icon-image-file) | [`icon`](https://docs.microsoft.com/nuget/reference/nuspec#icon) | Path to the package icon image file. | +| [`Repository URL`](#repository-type-and-url) | [`RepositoryUrl`](https://docs.microsoft.com/dotnet/core/tools/csproj#repositoryurl) | [`repository url`](https://docs.microsoft.com/nuget/reference/nuspec#repository) | URL to the repository from which the package was built. | +| [`Repository type`](#repository-type-and-url) | [`RespositoryType`](https://docs.microsoft.com/dotnet/core/tools/csproj#repositorytype) | [`repository type`](https://docs.microsoft.com/nuget/reference/nuspec#repository) | Type of repository the repository URL is pointing to (i.e. "git"). | +| [`Tags`](#tags) | [`PackageTags`](https://docs.microsoft.com/dotnet/core/tools/csproj#packagetags) | [`tags`](https://docs.microsoft.com/nuget/reference/nuspec#tags) | A space-delimited list of tags and keywords that describe the package. Tags are used when searching for packages. | +| [`Release notes`](#release-notes) | [`PackageReleaseNotes`](https://docs.microsoft.com/dotnet/core/tools/csproj#packagereleasenotes) | [`releaseNotes`](https://docs.microsoft.com/nuget/reference/nuspec#releasenotes) | A description of the changes made in this release of the package. | ### Package ID If you're publishing a completely new package: From e3312c29fafd8ccf0bc41d0034b7d802209d52d9 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Tue, 13 Apr 2021 16:04:59 -0700 Subject: [PATCH 373/988] Create release notes for 5.7.1 and 5.9.1 (#2383) --- docs/release-notes/NuGet-5.7.md | 13 +++++++++++++ docs/release-notes/NuGet-5.9.md | 15 ++++++++++++--- 2 files changed, 25 insertions(+), 3 deletions(-) diff --git a/docs/release-notes/NuGet-5.7.md b/docs/release-notes/NuGet-5.7.md index ed81ab95e..cd8cf91bf 100644 --- a/docs/release-notes/NuGet-5.7.md +++ b/docs/release-notes/NuGet-5.7.md @@ -14,6 +14,7 @@ NuGet distribution vehicles: | NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | |:---|:---|:---| | [**5.7.0**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.7](https://visualstudio.microsoft.com/downloads/) | [3.1.401](https://dotnet.microsoft.com/download/dotnet-core/3.1)1 | +| [**5.7.1**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.7](https://visualstudio.microsoft.com/downloads/) | [3.1.408](https://dotnet.microsoft.com/download/dotnet-core/3.1)1 | 1 Installed with Visual Studio 2019 with .NET Core workload @@ -102,3 +103,15 @@ Thank you to all the contributors who helped make this NuGet release awesome! |[Sunner (SuNNjek)](https://github.com/SuNNjek)|[3088](https://github.com/NuGet/NuGet.Client/pull/3088)|nuget.exe spec generates a copyright tag with hard-coded text of Copyright YYYY Instead of `$copyright$` - [#8696](https://github.com/NuGet/Home/issues/8696)| |[Olivier Spinelli (olivier-spinelli)](https://github.com/olivier-spinelli)|[3335](https://github.com/NuGet/NuGet.Client/pull/3335)|In a dotnet CLI restore, when launching credential plugins, try the dotnet CLI on the system path if the `DOTNET_HOST_PATH` environment variable is not defined. - [#7438](https://github.com/NuGet/Home/issues/7438)| |[goyzhang](https://github.com/goyzhang)|[3370](https://github.com/NuGet/NuGet.Client/pull/3370)|Added `latest` option for `-MSBuildVersion` - [#8808](https://github.com/NuGet/Home/issues/8808)| + +## Summary: What's New in 5.7.1 + +* Extend the .nupkg.metadata file to include the installation source - [#10354](https://github.com/NuGet/Home/issues/10354) + +* Log package contenthash during restore logging (during extraction) - [#10384](https://github.com/NuGet/Home/issues/10384) + +* When restoring at normal verbosity, log which source a package is being restored from - [#10461](https://github.com/NuGet/Home/issues/10461) + +**[List of all issues fixed in this release - 5.7.1](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=6075f5724f84579cc29a79ee)** + +**[List of commits in this release - 5.7.1](https://github.com/NuGet/NuGet.Client/compare/80512866a2c127e52ce3e86fd803fff77e9b9b52...5.7.1.4)** diff --git a/docs/release-notes/NuGet-5.9.md b/docs/release-notes/NuGet-5.9.md index 1ad8e989e..d723778d8 100644 --- a/docs/release-notes/NuGet-5.9.md +++ b/docs/release-notes/NuGet-5.9.md @@ -13,12 +13,13 @@ NuGet distribution vehicles: | NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | |:---|:---|:---| -| [**5.9**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.9](https://visualstudio.microsoft.com/downloads/) | [5.0](https://dotnet.microsoft.com/download/dotnet-core/5.0)1 | +| [**5.9.0**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.9](https://visualstudio.microsoft.com/downloads/) | [5.0.200](https://dotnet.microsoft.com/download/dotnet-core/5.0)1 | +| [**5.9.1**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.9](https://visualstudio.microsoft.com/downloads/) | [5.0.202](https://dotnet.microsoft.com/download/dotnet-core/5.0)1 | 1 Installed with Visual Studio 2019 with .NET Core workload > [!NOTE] -> Visual Studio 16.9, MSBuild 16.9, and .NET 5.0.3+ requires NuGet.exe 5.9 or later. +> Visual Studio 16.9, MSBuild 16.9, and .NET 5.0.200+ requires NuGet.exe 5.9 or later. ## Summary: What's New in 5.9 @@ -182,7 +183,6 @@ NuGet distribution vehicles: * NuGetPackageFileService fix - use using for disposable memorystream - [#10503](https://github.com/NuGet/Home/issues/10503) - **[List of all issues fixed in this release - 5.9.0](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=5f6be8c10485c0236b7ef889)** **[List of commits in this release - 5.9.0](https://github.com/NuGet/NuGet.Client/compare/5.8.1.7021...5.9.0.7134)** @@ -207,6 +207,15 @@ Thank you to all the contributors who helped make this NuGet release awesome! [xen2](https://github.com/xen2) | [2861](https://github.com/NuGet/NuGet.Client/pull/2861) | Make NuGet.PackageManagement available as a .NET Standard package - [#6150](https://github.com/NuGet/Home/issues/6150) [Anipik](https://github.com/Anipik) | [3810](https://github.com/NuGet/NuGet.Client/pull/3810) | Introduce a new msbuild property to exclude build output for specific tfms during pack task - [#10396](https://github.com/NuGet/Home/issues/10396) +## Summary: What's New in 5.9.1 + +* "dotnet nuget remove source nuget.org" doesn't work the first time - [#10745](https://github.com/NuGet/Home/issues/10745) +* Make default validation disabled on Linux, but enabled by default on Windows - [#10713](https://github.com/NuGet/Home/issues/10713) + +**[List of all issues fixed in this release - 5.9.1](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=6075f42efd068017639b4036)** + +**[List of commits in this release - 5.9.1](https://github.com/NuGet/NuGet.Client/compare/5.9.0.7134...5.9.1.8)** + ## Feedback welcome Your feedback is important to us. If there are any problems with this release, check our From c384d69208dbbc8c2cfb57854c7ce03cd6157666 Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Tue, 13 Apr 2021 18:03:29 -0700 Subject: [PATCH 374/988] fix broken links for dotnet nuget verify doc (#2375) --- docs/reference/Signed-Packages-Reference.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/reference/Signed-Packages-Reference.md b/docs/reference/Signed-Packages-Reference.md index c47a7ea54..a91eae13e 100644 --- a/docs/reference/Signed-Packages-Reference.md +++ b/docs/reference/Signed-Packages-Reference.md @@ -18,7 +18,7 @@ Signed packages provide the strongest end-to-end validation. There are two diffe - **Author signature**. An author signature guarantees that the package has not been modified since the author signed the package, no matter from which repository or what transport method the package is delivered. Additionally, author-signed packages provide an extra authentication mechanism to the nuget.org publishing pipeline because the signing certificate must be registered ahead of time. For more information, see [Register certificates](#signature-requirements-on-nugetorg). - **Repository signature**. Repository signatures provide an integrity guarantee for **all** packages in a repository whether they are author signed or not, even if those packages are obtained from a different location than the original repository where they were signed. -For details on creating an author signed package, see [Signing Packages](../create-packages/Sign-a-package.md) and the [nuget sign command](../reference/cli-reference/cli-ref-sign.md). You can verify packages' signatures using the [dotnet nuget verify](/dotnet/core/tools/dotnet-nuget-verify.md) or [nuget verify](../reference/cli-reference/cli-ref-verify.md) commands. +For details on creating an author signed package, see [Signing Packages](../create-packages/Sign-a-package.md) and the [nuget sign command](../reference/cli-reference/cli-ref-sign.md). You can verify packages' signatures using the [dotnet nuget verify](/dotnet/core/tools/dotnet-nuget-verify) or [nuget verify](../reference/cli-reference/cli-ref-verify.md) commands. > [!Important] > Author signing packages is only supported by nuget.exe on Windows at this time. However, all packages uploaded to nuget.org are automatically repository signed. @@ -52,6 +52,6 @@ nuget.org has additional requirements for accepting a signed package: ## Related articles - [Signing NuGet Packages](../create-packages/Sign-a-Package.md) -- [Verify signed packages using the dotnet CLI](/dotnet/core/tools/dotnet-nuget-verify.md) +- [Verify signed packages using the dotnet CLI](/dotnet/core/tools/dotnet-nuget-verify) - [Verify signed packages using nuget.exe](../reference/cli-reference/cli-ref-verify.md) - [Manage package trust boundaries](../consume-packages/installing-signed-packages.md) From ead19ecf3674c811b644993d71287e83bdb138b1 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 14 Apr 2021 15:19:07 -0400 Subject: [PATCH 375/988] fixed conflict --- docs/create-packages/Package-authoring-best-practices.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/create-packages/Package-authoring-best-practices.md b/docs/create-packages/Package-authoring-best-practices.md index dab6acf89..b09b642d6 100644 --- a/docs/create-packages/Package-authoring-best-practices.md +++ b/docs/create-packages/Package-authoring-best-practices.md @@ -67,8 +67,8 @@ Below is a table mapping and describing available package metadata elements: | [`Repository URL`](#repository-type-and-url) | [`RepositoryUrl`](https://docs.microsoft.com/dotnet/core/tools/csproj#repositoryurl) | [`repository url`](https://docs.microsoft.com/nuget/reference/nuspec#repository) | URL to the repository from which the package was built. | | [`Repository type`](#repository-type-and-url) | [`RespositoryType`](https://docs.microsoft.com/dotnet/core/tools/csproj#repositorytype) | [`repository type`](https://docs.microsoft.com/nuget/reference/nuspec#repository) | Type of repository the repository URL is pointing to (i.e. "git"). | | [`Tags`](#tags) | [`PackageTags`](https://docs.microsoft.com/dotnet/core/tools/csproj#packagetags) | [`tags`](https://docs.microsoft.com/nuget/reference/nuspec#tags) | A space-delimited list of tags and keywords that describe the package. Tags are used when searching for packages. | -| [`Release notes`](#release-notes) | [`PackageReleaseNotes`](https://docs.microsoft.com/dotnet/core/tools/csproj#packagereleasenotes) | [`releaseNotes`](https://docs.microsoft.com/nuget/reference/nuspec#releasenotes) | A description of the changes made in this release of the package. | - +| [`Release notes`](#release-notes) | [`PackageReleaseNotes`](https://docs.microsoft.com/dotnet/core/tools/csproj#packagereleasenotes) | [`releaseNotes`](https://docs.microsoft.com/nuget/reference/nuspec#releasenotes) | A description of the changes made in this release of the package. + ### Package Version ✔️ CONSIDER using [SemVer](https://semver.org/) to version your NuGet package. From a835de8cf9fa441a1b8ef3c0d5200edc2c29059e Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 14 Apr 2021 16:16:01 -0400 Subject: [PATCH 376/988] Captialization in TOC and added allowed link --- docs/nuget-org/TOC.md | 2 +- docs/nuget-org/package-readme-on-nuget-org.md | 19 ++++++++++--------- 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/docs/nuget-org/TOC.md b/docs/nuget-org/TOC.md index d726d159b..7927e1fd8 100644 --- a/docs/nuget-org/TOC.md +++ b/docs/nuget-org/TOC.md @@ -7,7 +7,7 @@ ## [Publish a package](publish-a-package.md) ## [Package ID prefix reservation](id-prefix-reservation.md) ## [Package deprecation](deprecate-packages.md) -## [Package Readme](package-readme-on-nuget-org.md) +## [Package readme](package-readme-on-nuget-org.md) # Policies ## [Data Requests](policies/Data-requests.md) ## [Dispute resolution](policies/dispute-resolution.md) diff --git a/docs/nuget-org/package-readme-on-nuget-org.md b/docs/nuget-org/package-readme-on-nuget-org.md index 75894133b..fb82f93fb 100644 --- a/docs/nuget-org/package-readme-on-nuget-org.md +++ b/docs/nuget-org/package-readme-on-nuget-org.md @@ -1,5 +1,5 @@ --- -title: Package Readme on NuGet.org +title: Package readme on NuGet.org description: Detailed explanation of how Readme files on NuGet.org are rendered and what to do when you run into issues. author: chgill-MSFT ms.author: chgill @@ -8,13 +8,13 @@ ms.topic: conceptual ms.reviewer: anangaur --- -# Package Readme on NuGet.org +# Package readme on NuGet.org -[Include a Readme file in your NuGet package](https://docs.microsoft.com/nuget/reference/msbuild-targets#packagereadmefile) to make your package details richer and more informative for your users! +[Include a readme file in your NuGet package](https://docs.microsoft.com/nuget/reference/msbuild-targets#packagereadmefile) to make your package details richer and more informative for your users! This is likely one of the first elements users will see when they view your package details page on NuGet.org and is essential to making a good impression! -## What should my Readme include? +## What should my readme include? Consider including the following items in your readmes: * An introduction to what your package is and does - what problems does it solve? @@ -24,15 +24,15 @@ Consider including the following items in your readmes: * Where and how to leave feedback such as link to the project issues, Twitter, bug tracker, or other platform. * How to contribute, if applicable. -Keep in mind, high quality readmes can come in a wide variety of formats, shapes, and sizes! If you already have a package available on NuGet.org, chances are that you already have a `readme.md` file at in your repository that would be a great addition to your NuGet.org details page. +Keep in mind, high quality readmes can come in a wide variety of formats, shapes, and sizes! If you already have a package available on NuGet.org, chances are that you already have a `readme.md` or other documentation file in your repository that would be a great addition to your NuGet.org details page. -## Preview your Readme +## Preview your readme -To preview your Readme file before it's live on NuGet.org, upload your package using the [Upload Package web portal on NuGet.org](https://docs.microsoft.com/nuget/nuget-org/publish-a-package#web-portal-use-the-upload-package-tab-on-nugetorg) and scroll down to the "Readme File" section of the metadata preview. It should look something like this: +To preview your readme file before it's live on NuGet.org, upload your package using the [Upload Package web portal on NuGet.org](https://docs.microsoft.com/nuget/nuget-org/publish-a-package#web-portal-use-the-upload-package-tab-on-nugetorg) and scroll down to the "Readme File" section of the metadata preview. It should look something like this: ![Readme File preview](media\readme-upload-preview.PNG) -Consider taking time to review and preview your Readme file for [image compliance](#allowed-domains-for-images-and-badges) and formatting to make sure gives a great first impression to potential users! To correct mistakes on a Readme file on NuGet.org, you will need to push an updated package version, so making sure everything looks good in advance may save you headache down the road. +Consider taking time to review and preview your Readme file for [image compliance](#allowed-domains-for-images-and-badges) and formatting to make sure it gives a great first impression to potential users! To correct mistakes on your package readme once it's published to NuGet.org, you will need to push an updated package version with the fix. Making sure everything looks good in advance may save you headache down the road. ## Allowed domains for images and badges Due to security and privacy concerns, NuGet.org restricts the domains from which images and badges can be rendered to trusted hosts. @@ -55,6 +55,7 @@ NuGet.org allows all images, including badges, from the following trusted domain * codecov.io * codefactor.io * coveralls.io +* dev.azure.com * gitlab.com * img.shields.io * isitmaintained.com @@ -66,4 +67,4 @@ NuGet.org allows all images, including badges, from the following trusted domain * user-images.githubusercontent.com * camo.githubusercontent.com -If you feel that a another domain should be added to the allow-list, please feel free to [file an issue](https://github.com/NuGet/NuGetGallery/issues) and it will be reviewed by our engineering team for privacy and security compliance. Images with relative local paths and images hosted from unsupported domains will not be rendered and will produce a warning on the Readme file preview and package details page that is only visible to the package owners. +If you feel that another domain should be added to the allow-list, please feel free to [file an issue](https://github.com/NuGet/NuGetGallery/issues) and it will be reviewed by our engineering team for privacy and security compliance. Images with relative local paths and images hosted from unsupported domains will not be rendered and will produce a warning on the readme file preview and package details page that is only visible to the package owners. From f45e5d16947f1d08640652c617ddde6bff01de25 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Wed, 14 Apr 2021 17:37:35 -0400 Subject: [PATCH 377/988] Added supported markdown --- docs/nuget-org/package-readme-on-nuget-org.md | 34 ++++++++++++++++--- 1 file changed, 29 insertions(+), 5 deletions(-) diff --git a/docs/nuget-org/package-readme-on-nuget-org.md b/docs/nuget-org/package-readme-on-nuget-org.md index fb82f93fb..2db1f2d59 100644 --- a/docs/nuget-org/package-readme-on-nuget-org.md +++ b/docs/nuget-org/package-readme-on-nuget-org.md @@ -14,9 +14,12 @@ ms.reviewer: anangaur This is likely one of the first elements users will see when they view your package details page on NuGet.org and is essential to making a good impression! +> [!IMPORTANT] +> NuGet.org only supports readme files in [Markdown](https://daringfireball.net/projects/markdown/) and images from a limited set of domains. See our [allowed domains for images](#allowed-domains-for-images-and-badges) and [supported Markdown features](#supported-markdown-features) to ensure your readme renders correctly on NuGet.org. + ## What should my readme include? -Consider including the following items in your readmes: +Consider including the following items in your readme: * An introduction to what your package is and does - what problems does it solve? * How to get started with your package - are there any specific requirements? * Links to more comprehensive documentation if not included in the readme itself. @@ -32,7 +35,7 @@ To preview your readme file before it's live on NuGet.org, upload your package u ![Readme File preview](media\readme-upload-preview.PNG) -Consider taking time to review and preview your Readme file for [image compliance](#allowed-domains-for-images-and-badges) and formatting to make sure it gives a great first impression to potential users! To correct mistakes on your package readme once it's published to NuGet.org, you will need to push an updated package version with the fix. Making sure everything looks good in advance may save you headache down the road. +Consider taking time to review and preview your Readme file for [image compliance](#allowed-domains-for-images-and-badges) and [supported formatting](#supported-markdown-features) to make sure it gives a great first impression to potential users! To correct mistakes on your package readme once it's published to NuGet.org, you will need to push an updated package version with the fix. Making sure everything looks good in advance may save you headache down the road. ## Allowed domains for images and badges Due to security and privacy concerns, NuGet.org restricts the domains from which images and badges can be rendered to trusted hosts. @@ -50,21 +53,42 @@ NuGet.org allows all images, including badges, from the following trusted domain * badges.gitter.im * bettercodehub.com * buildstats.info +* camo.githubusercontent.com * ci.appveyor.com * circleci.com * codecov.io * codefactor.io * coveralls.io * dev.azure.com +* github.com/.../workflows/.../badge.svg * gitlab.com * img.shields.io * isitmaintained.com * opencollective.com -* snyk.io -* sonarcloud.io * raw.github.com * raw.githubusercontent.com +* snyk.io +* sonarcloud.io * user-images.githubusercontent.com -* camo.githubusercontent.com If you feel that another domain should be added to the allow-list, please feel free to [file an issue](https://github.com/NuGet/NuGetGallery/issues) and it will be reviewed by our engineering team for privacy and security compliance. Images with relative local paths and images hosted from unsupported domains will not be rendered and will produce a warning on the readme file preview and package details page that is only visible to the package owners. + +## Supported Markdown features +[Markdown](https://daringfireball.net/projects/markdown/) is a lightweight markup language with plain text formatting syntax. NuGet.org readmes support [CommonMark](https://commonmark.org/) compliant Markdown through the [Markdig](https://github.com/lunet-io/markdig) parsing engine. + +NuGet.org currently supports the following Markdown features: +* [Headers](https://spec.commonmark.org/0.29/#atx-headings) +* [Images](https://spec.commonmark.org/0.29/#images) +* [Extra emphasis](https://github.com/xoofx/markdig/blob/master/src/Markdig.Tests/Specs/EmphasisExtraSpecs.md) +* [Lists](https://spec.commonmark.org/0.29/#lists) +* [Links](https://spec.commonmark.org/0.29/#links) +* [Block quotes](https://spec.commonmark.org/0.29/#block-quotes) +* [Backslash escapes](https://spec.commonmark.org/0.29/#backslash-escapes) +* [Code spans](https://spec.commonmark.org/0.29/#code-spans) +* Code +* [Task lists](https://github.com/xoofx/markdig/blob/master/src/Markdig.Tests/Specs/TaskListSpecs.md) +* [Tables](https://github.com/xoofx/markdig/blob/master/src/Markdig.Tests/Specs/PipeTableSpecs.md) +* [Emojis](https://github.com/xoofx/markdig/blob/master/src/Markdig.Tests/Specs/EmojiSpecs.md) +* [Auto-links](https://github.com/xoofx/markdig/blob/master/src/Markdig.Tests/Specs/AutoLinks.md) + + From 417e102351bd07e6624f276b448be98f03ea3898 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Thu, 15 Apr 2021 11:26:12 -0400 Subject: [PATCH 378/988] Apply suggestions from code review Fixed Readme --> readme --- docs/nuget-org/Publish-a-package.md | 2 +- docs/nuget-org/package-readme-on-nuget-org.md | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/docs/nuget-org/Publish-a-package.md b/docs/nuget-org/Publish-a-package.md index 4a182b439..5b4048e98 100644 --- a/docs/nuget-org/Publish-a-package.md +++ b/docs/nuget-org/Publish-a-package.md @@ -33,7 +33,7 @@ Next, you can either upload the package through the nuget.org web portal, push t 1. nuget.org tells you if the package name is available. If it isn't, change the package identifier in your project, rebuild, and try the upload again. -1. If the package name is available, nuget.org opens a **Verify** section in which you can review the metadata from the package manifest. If you included a [Readme file](/docs/nuget-org/package-readme-on-nuget-org.md) in your package, check out the preview to ensure all content is being rendered properly. To change any of the metadata, edit your project (project file or `.nuspec` file), rebuild, recreate the package, and upload again. +1. If the package name is available, nuget.org opens a **Verify** section in which you can review the metadata from the package manifest. If you included a [readme file](/docs/nuget-org/package-readme-on-nuget-org.md) in your package, check out the preview to ensure all content is being rendered properly. To change any of the metadata, edit your project (project file or `.nuspec` file), rebuild, recreate the package, and upload again. 2. When all the information is ready, select the **Submit** button diff --git a/docs/nuget-org/package-readme-on-nuget-org.md b/docs/nuget-org/package-readme-on-nuget-org.md index 2db1f2d59..26efbc38c 100644 --- a/docs/nuget-org/package-readme-on-nuget-org.md +++ b/docs/nuget-org/package-readme-on-nuget-org.md @@ -1,6 +1,6 @@ --- title: Package readme on NuGet.org -description: Detailed explanation of how Readme files on NuGet.org are rendered and what to do when you run into issues. +description: Detailed explanation of how readme files on NuGet.org are rendered and what to do when you run into issues. author: chgill-MSFT ms.author: chgill ms.date: 02/23/2021 @@ -91,4 +91,3 @@ NuGet.org currently supports the following Markdown features: * [Emojis](https://github.com/xoofx/markdig/blob/master/src/Markdig.Tests/Specs/EmojiSpecs.md) * [Auto-links](https://github.com/xoofx/markdig/blob/master/src/Markdig.Tests/Specs/AutoLinks.md) - From 7a501ce46bc794e06f561ea2820d6b18d55819e7 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Thu, 15 Apr 2021 18:37:06 -0400 Subject: [PATCH 379/988] fixed supported Markdown features --- docs/nuget-org/package-readme-on-nuget-org.md | 1 - 1 file changed, 1 deletion(-) diff --git a/docs/nuget-org/package-readme-on-nuget-org.md b/docs/nuget-org/package-readme-on-nuget-org.md index 26efbc38c..fed1cba2b 100644 --- a/docs/nuget-org/package-readme-on-nuget-org.md +++ b/docs/nuget-org/package-readme-on-nuget-org.md @@ -85,7 +85,6 @@ NuGet.org currently supports the following Markdown features: * [Block quotes](https://spec.commonmark.org/0.29/#block-quotes) * [Backslash escapes](https://spec.commonmark.org/0.29/#backslash-escapes) * [Code spans](https://spec.commonmark.org/0.29/#code-spans) -* Code * [Task lists](https://github.com/xoofx/markdig/blob/master/src/Markdig.Tests/Specs/TaskListSpecs.md) * [Tables](https://github.com/xoofx/markdig/blob/master/src/Markdig.Tests/Specs/PipeTableSpecs.md) * [Emojis](https://github.com/xoofx/markdig/blob/master/src/Markdig.Tests/Specs/EmojiSpecs.md) From c3fb89945db852341ba407e9968523e4299a94d3 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Thu, 15 Apr 2021 18:41:11 -0400 Subject: [PATCH 380/988] Readme --> readme where needed --- docs/nuget-org/package-readme-on-nuget-org.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/nuget-org/package-readme-on-nuget-org.md b/docs/nuget-org/package-readme-on-nuget-org.md index fed1cba2b..f4dd15f04 100644 --- a/docs/nuget-org/package-readme-on-nuget-org.md +++ b/docs/nuget-org/package-readme-on-nuget-org.md @@ -35,7 +35,7 @@ To preview your readme file before it's live on NuGet.org, upload your package u ![Readme File preview](media\readme-upload-preview.PNG) -Consider taking time to review and preview your Readme file for [image compliance](#allowed-domains-for-images-and-badges) and [supported formatting](#supported-markdown-features) to make sure it gives a great first impression to potential users! To correct mistakes on your package readme once it's published to NuGet.org, you will need to push an updated package version with the fix. Making sure everything looks good in advance may save you headache down the road. +Consider taking time to review and preview your readme file for [image compliance](#allowed-domains-for-images-and-badges) and [supported formatting](#supported-markdown-features) to make sure it gives a great first impression to potential users! To correct mistakes on your package readme once it's published to NuGet.org, you will need to push an updated package version with the fix. Making sure everything looks good in advance may save you headache down the road. ## Allowed domains for images and badges Due to security and privacy concerns, NuGet.org restricts the domains from which images and badges can be rendered to trusted hosts. From f180007c6efda0c41e3e14d4ad8a34d845f37869 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Thu, 15 Apr 2021 19:31:27 -0400 Subject: [PATCH 381/988] Added compatible NuGet version note --- docs/reference/nuspec.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/reference/nuspec.md b/docs/reference/nuspec.md index af97b50bf..30220421d 100644 --- a/docs/reference/nuspec.md +++ b/docs/reference/nuspec.md @@ -205,6 +205,8 @@ For the MSBuild equivalent, take a look at [Packing an icon image file](msbuild- #### readme +*Supported with **NuGet 5.10.0 preview 2** and above* + When packing a readme file, you need to use the `readme` element to specify the package path, relative to the root of the package. In addition to this, you need to make sure that the file is included in the package. Supported file formats include only Markdown (*.md*). For example, you would add the following to your nuspec in order to pack a readme file with your project: From 0343b42c37c973f5856ddeeec96902f88ef78347 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Sharma?= <737941+loic-sharma@users.noreply.github.com> Date: Sat, 17 Apr 2021 13:09:15 -0700 Subject: [PATCH 382/988] Fix msbuild property links in best practice guide --- .../Package-authoring-best-practices.md | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/docs/create-packages/Package-authoring-best-practices.md b/docs/create-packages/Package-authoring-best-practices.md index e4bf27447..4673ee199 100644 --- a/docs/create-packages/Package-authoring-best-practices.md +++ b/docs/create-packages/Package-authoring-best-practices.md @@ -55,19 +55,19 @@ Below is a table mapping and describing available package metadata elements: | Visual Studio property name | [Project file/ MSBuild property name](https://docs.microsoft.com/dotnet/core/tools/csproj#packagereleasenotes) | [Nuspec property name](https://docs.microsoft.com/nuget/reference/nuspec#general-form-and-schema) | Description | |----------------------------------------------- |----------------------------------------------------------------------------------------------------------------------------------------- |--------------------------------------------------------------------------------------------------- |------------------------------------------------------------------------------------------------------------------- | -| [`Package id`](#package-id) | [`PackageId`](https://docs.microsoft.com/dotnet/core/tools/csproj#packageid) | [`id`](https://docs.microsoft.com/nuget/reference/nuspec#id) | The package name or identifier. | -| [`Package version`](#package-version) | [`PackageVersion`](https://docs.microsoft.com/dotnet/core/tools/csproj#packageversion) | [`version`](https://docs.microsoft.com/nuget/reference/nuspec#version) | NuGet package version. | -| [`Authors`](#authors) | [`Authors`](https://docs.microsoft.com/dotnet/core/tools/csproj#authors) | [`authors`](https://docs.microsoft.com/nuget/reference/nuspec#authors) | A comma-separated list of package authors, often using the individual's or an organization's "pretty name." | -| [`Description`](#description) | [`Description`](https://docs.microsoft.com/dotnet/core/tools/csproj#description) | [`description`](https://docs.microsoft.com/nuget/reference/nuspec#description) | A description of the package. | -| [`Copyright`](#copyright) | [`Copyright`](https://docs.microsoft.com/dotnet/core/tools/csproj#copyright) | [`copyright`](https://docs.microsoft.com/nuget/reference/nuspec#copyright) | Copyright details for the package. | +| [`Package id`](#package-id) | [`PackageId`](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#pack-target) | [`id`](https://docs.microsoft.com/nuget/reference/nuspec#id) | The package name or identifier. | +| [`Package version`](#package-version) | [`PackageVersion`](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#pack-target) | [`version`](https://docs.microsoft.com/nuget/reference/nuspec#version) | NuGet package version. | +| [`Authors`](#authors) | [`Authors`](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#pack-target) | [`authors`](https://docs.microsoft.com/nuget/reference/nuspec#authors) | A comma-separated list of package authors, often using the individual's or an organization's "pretty name." | +| [`Description`](#description) | [`Description`](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#pack-target) | [`description`](https://docs.microsoft.com/nuget/reference/nuspec#description) | A description of the package. | +| [`Copyright`](#copyright) | [`Copyright`](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#pack-target) | [`copyright`](https://docs.microsoft.com/nuget/reference/nuspec#copyright) | Copyright details for the package. | | [`Licensing - Expression`](#licensing) | [`PackageLicenseExpression`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="expression"`](https://docs.microsoft.com/nuget/reference/nuspec#license) | An SPDX license expression. | | [`Licensing - File`](#licensing) | [`PackageLicenseFile`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="file"`](https://docs.microsoft.com/nuget/reference/nuspec#license) | Path to a custom license file. | | [`Project URL`](#project-url) | `PackageProjectUrl` | [`projectUrl`](https://docs.microsoft.com/nuget/reference/nuspec#projecturl) | A URL for the project homepage. | | [`Icon File`](#icon) | [`PackageIcon`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-an-icon-image-file) | [`icon`](https://docs.microsoft.com/nuget/reference/nuspec#icon) | Path to the package icon image file. | -| [`Repository URL`](#repository-type-and-url) | [`RepositoryUrl`](https://docs.microsoft.com/dotnet/core/tools/csproj#repositoryurl) | [`repository url`](https://docs.microsoft.com/nuget/reference/nuspec#repository) | URL to the repository from which the package was built. | -| [`Repository type`](#repository-type-and-url) | [`RespositoryType`](https://docs.microsoft.com/dotnet/core/tools/csproj#repositorytype) | [`repository type`](https://docs.microsoft.com/nuget/reference/nuspec#repository) | Type of repository the repository URL is pointing to (i.e. "git"). | -| [`Tags`](#tags) | [`PackageTags`](https://docs.microsoft.com/dotnet/core/tools/csproj#packagetags) | [`tags`](https://docs.microsoft.com/nuget/reference/nuspec#tags) | A space-delimited list of tags and keywords that describe the package. Tags are used when searching for packages. | -| [`Release notes`](#release-notes) | [`PackageReleaseNotes`](https://docs.microsoft.com/dotnet/core/tools/csproj#packagereleasenotes) | [`releaseNotes`](https://docs.microsoft.com/nuget/reference/nuspec#releasenotes) | A description of the changes made in this release of the package. | +| [`Repository URL`](#repository-type-and-url) | [`RepositoryUrl`](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#pack-target) | [`repository url`](https://docs.microsoft.com/nuget/reference/nuspec#repository) | URL to the repository from which the package was built. | +| [`Repository type`](#repository-type-and-url) | [`RespositoryType`](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#pack-target) | [`repository type`](https://docs.microsoft.com/nuget/reference/nuspec#repository) | Type of repository the repository URL is pointing to (i.e. "git"). | +| [`Tags`](#tags) | [`PackageTags`](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#pack-target) | [`tags`](https://docs.microsoft.com/nuget/reference/nuspec#tags) | A space-delimited list of tags and keywords that describe the package. Tags are used when searching for packages. | +| [`Release notes`](#release-notes) | [`PackageReleaseNotes`](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#pack-target) | [`releaseNotes`](https://docs.microsoft.com/nuget/reference/nuspec#releasenotes) | A description of the changes made in this release of the package. | ### Package ID If you're publishing a completely new package: @@ -171,4 +171,4 @@ For example, if I published a package to log strings to the console, I would inc ## Related topics - [Create and publish a package (dotnet CLI)](../quickstart/create-and-publish-a-package-using-the-dotnet-cli.md) -- [Create and publish a package (Visual Studio)](../quickstart/create-and-publish-a-package-using-visual-studio.md?tabs=netcore-cli) \ No newline at end of file +- [Create and publish a package (Visual Studio)](../quickstart/create-and-publish-a-package-using-visual-studio.md?tabs=netcore-cli) From 8c96e2d36984e63ed2d01af32644010c3b9ef949 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Sharma?= <737941+loic-sharma@users.noreply.github.com> Date: Sat, 17 Apr 2021 13:12:36 -0700 Subject: [PATCH 383/988] Update Package-authoring-best-practices.md --- .../Package-authoring-best-practices.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/docs/create-packages/Package-authoring-best-practices.md b/docs/create-packages/Package-authoring-best-practices.md index 4673ee199..3d47dc03a 100644 --- a/docs/create-packages/Package-authoring-best-practices.md +++ b/docs/create-packages/Package-authoring-best-practices.md @@ -55,19 +55,19 @@ Below is a table mapping and describing available package metadata elements: | Visual Studio property name | [Project file/ MSBuild property name](https://docs.microsoft.com/dotnet/core/tools/csproj#packagereleasenotes) | [Nuspec property name](https://docs.microsoft.com/nuget/reference/nuspec#general-form-and-schema) | Description | |----------------------------------------------- |----------------------------------------------------------------------------------------------------------------------------------------- |--------------------------------------------------------------------------------------------------- |------------------------------------------------------------------------------------------------------------------- | -| [`Package id`](#package-id) | [`PackageId`](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#pack-target) | [`id`](https://docs.microsoft.com/nuget/reference/nuspec#id) | The package name or identifier. | -| [`Package version`](#package-version) | [`PackageVersion`](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#pack-target) | [`version`](https://docs.microsoft.com/nuget/reference/nuspec#version) | NuGet package version. | -| [`Authors`](#authors) | [`Authors`](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#pack-target) | [`authors`](https://docs.microsoft.com/nuget/reference/nuspec#authors) | A comma-separated list of package authors, often using the individual's or an organization's "pretty name." | -| [`Description`](#description) | [`Description`](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#pack-target) | [`description`](https://docs.microsoft.com/nuget/reference/nuspec#description) | A description of the package. | -| [`Copyright`](#copyright) | [`Copyright`](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#pack-target) | [`copyright`](https://docs.microsoft.com/nuget/reference/nuspec#copyright) | Copyright details for the package. | +| [`Package id`](#package-id) | [`PackageId`](https://docs.microsoft.com/nuget/reference/msbuild-targets#pack-target) | [`id`](https://docs.microsoft.com/nuget/reference/nuspec#id) | The package name or identifier. | +| [`Package version`](#package-version) | [`PackageVersion`](https://docs.microsoft.com/nuget/reference/msbuild-targets#pack-target) | [`version`](https://docs.microsoft.com/nuget/reference/nuspec#version) | NuGet package version. | +| [`Authors`](#authors) | [`Authors`](https://docs.microsoft.com/nuget/reference/msbuild-targets#pack-target) | [`authors`](https://docs.microsoft.com/nuget/reference/nuspec#authors) | A comma-separated list of package authors, often using the individual's or an organization's "pretty name." | +| [`Description`](#description) | [`Description`](https://docs.microsoft.com/nuget/reference/msbuild-targets#pack-target) | [`description`](https://docs.microsoft.com/nuget/reference/nuspec#description) | A description of the package. | +| [`Copyright`](#copyright) | [`Copyright`](https://docs.microsoft.com/nuget/reference/msbuild-targets#pack-target) | [`copyright`](https://docs.microsoft.com/nuget/reference/nuspec#copyright) | Copyright details for the package. | | [`Licensing - Expression`](#licensing) | [`PackageLicenseExpression`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="expression"`](https://docs.microsoft.com/nuget/reference/nuspec#license) | An SPDX license expression. | | [`Licensing - File`](#licensing) | [`PackageLicenseFile`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="file"`](https://docs.microsoft.com/nuget/reference/nuspec#license) | Path to a custom license file. | | [`Project URL`](#project-url) | `PackageProjectUrl` | [`projectUrl`](https://docs.microsoft.com/nuget/reference/nuspec#projecturl) | A URL for the project homepage. | | [`Icon File`](#icon) | [`PackageIcon`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-an-icon-image-file) | [`icon`](https://docs.microsoft.com/nuget/reference/nuspec#icon) | Path to the package icon image file. | -| [`Repository URL`](#repository-type-and-url) | [`RepositoryUrl`](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#pack-target) | [`repository url`](https://docs.microsoft.com/nuget/reference/nuspec#repository) | URL to the repository from which the package was built. | -| [`Repository type`](#repository-type-and-url) | [`RespositoryType`](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#pack-target) | [`repository type`](https://docs.microsoft.com/nuget/reference/nuspec#repository) | Type of repository the repository URL is pointing to (i.e. "git"). | -| [`Tags`](#tags) | [`PackageTags`](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#pack-target) | [`tags`](https://docs.microsoft.com/nuget/reference/nuspec#tags) | A space-delimited list of tags and keywords that describe the package. Tags are used when searching for packages. | -| [`Release notes`](#release-notes) | [`PackageReleaseNotes`](https://docs.microsoft.com/en-us/nuget/reference/msbuild-targets#pack-target) | [`releaseNotes`](https://docs.microsoft.com/nuget/reference/nuspec#releasenotes) | A description of the changes made in this release of the package. | +| [`Repository URL`](#repository-type-and-url) | [`RepositoryUrl`](https://docs.microsoft.com/nuget/reference/msbuild-targets#pack-target) | [`repository url`](https://docs.microsoft.com/nuget/reference/nuspec#repository) | URL to the repository from which the package was built. | +| [`Repository type`](#repository-type-and-url) | [`RespositoryType`](https://docs.microsoft.com/nuget/reference/msbuild-targets#pack-target) | [`repository type`](https://docs.microsoft.com/nuget/reference/nuspec#repository) | Type of repository the repository URL is pointing to (i.e. "git"). | +| [`Tags`](#tags) | [`PackageTags`](https://docs.microsoft.com/nuget/reference/msbuild-targets#pack-target) | [`tags`](https://docs.microsoft.com/nuget/reference/nuspec#tags) | A space-delimited list of tags and keywords that describe the package. Tags are used when searching for packages. | +| [`Release notes`](#release-notes) | [`PackageReleaseNotes`](https://docs.microsoft.com/nuget/reference/msbuild-targets#pack-target) | [`releaseNotes`](https://docs.microsoft.com/nuget/reference/nuspec#releasenotes) | A description of the changes made in this release of the package. | ### Package ID If you're publishing a completely new package: From c0a8fb6970f5a47ae7df9ceeca74d160db74bdad Mon Sep 17 00:00:00 2001 From: "MSDN.WhiteKnight" <35516665+MSDN-WhiteKnight@users.noreply.github.com> Date: Mon, 19 Apr 2021 16:32:06 +0500 Subject: [PATCH 384/988] Fix typo in overview-nuget-org --- docs/nuget-org/overview-nuget-org.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/nuget-org/overview-nuget-org.md b/docs/nuget-org/overview-nuget-org.md index 43a0376c4..f0ac5eed3 100644 --- a/docs/nuget-org/overview-nuget-org.md +++ b/docs/nuget-org/overview-nuget-org.md @@ -45,4 +45,4 @@ To use NuGet.org as a package repository with NuGet clients, you should use the Older clients can still use the V2 protocol to reach NuGet.org. However, please note, NuGet clients 3.0 or later will have slower and less reliable service using the V2 protocol: -`https://www.nuget.org/api/v2` (**The V2 prototcol is deprecated!**) +`https://www.nuget.org/api/v2` (**The V2 protocol is deprecated!**) From b9a10d140588683e7efa26a7d2c88005bc04ddf0 Mon Sep 17 00:00:00 2001 From: "Mike Jones (DOCS)" Date: Tue, 20 Apr 2021 10:41:37 -0700 Subject: [PATCH 385/988] Dummy PR to surface warnings and suggestions --- docs/api/NuGet-Protocols.md | 2 +- docs/api/catalog-resource.md | 2 +- docs/api/overview.md | 2 +- docs/api/package-base-address-resource.md | 2 +- docs/api/package-details-template-resource.md | 2 +- docs/api/package-publish-resource.md | 2 +- docs/api/rate-limits.md | 2 +- docs/api/registration-base-url-resource.md | 2 +- docs/api/report-abuse-resource.md | 2 +- docs/api/repository-signatures-resource.md | 2 +- docs/api/search-autocomplete-service-resource.md | 2 +- docs/api/search-query-service-resource.md | 2 +- docs/api/service-index.md | 2 +- docs/api/symbol-package-publish-resource.md | 2 +- docs/api/tools-json.md | 2 +- docs/archive/project-json-and-uwp.md | 2 +- docs/archive/project-json-impact.md | 2 +- docs/archive/project-json.md | 2 +- docs/concepts/Dependency-Resolution.md | 2 +- docs/concepts/Package-Versioning.md | 2 +- docs/concepts/Security-Best-Practices.md | 2 +- docs/concepts/package-installation-process.md | 2 +- docs/concepts/troubleshooting-installed-packages.md | 2 +- docs/consume-packages/Finding-and-Choosing-Packages.md | 2 +- docs/consume-packages/Overview-and-Workflow.md | 2 +- docs/consume-packages/Package-References-in-Project-Files.md | 2 +- docs/consume-packages/Package-Restore.md | 2 +- docs/consume-packages/Package-restore-troubleshooting.md | 2 +- docs/consume-packages/Packages-and-Source-Control.md | 2 +- docs/consume-packages/Reinstalling-and-Updating-Packages.md | 2 +- docs/consume-packages/Team-Foundation-Build.md | 2 +- docs/consume-packages/configuring-nuget-behavior.md | 2 +- docs/consume-packages/consuming-packages-authenticated-feeds.md | 2 +- docs/consume-packages/install-use-packages-dotnet-cli.md | 2 +- docs/consume-packages/install-use-packages-nuget-cli.md | 2 +- docs/consume-packages/install-use-packages-powershell.md | 2 +- docs/consume-packages/install-use-packages-visual-studio.md | 2 +- docs/consume-packages/installing-signed-packages.md | 2 +- .../managing-the-global-packages-and-cache-folders.md | 2 +- .../migrate-packages-config-to-package-reference.md | 2 +- docs/create-packages/Creating-Localized-Packages.md | 2 +- docs/create-packages/Creating-a-Package.md | 2 +- docs/create-packages/Overview-and-Workflow.md | 2 +- docs/create-packages/Package-authoring-best-practices.md | 2 +- docs/create-packages/Prerelease-Packages.md | 2 +- .../create-packages/Select-assemblies-referenced-by-projects.md | 2 +- docs/create-packages/Sign-a-Package.md | 2 +- docs/create-packages/Source-and-Config-File-Transformations.md | 2 +- docs/create-packages/Supporting-Multiple-Target-Frameworks.md | 2 +- docs/create-packages/Symbol-Packages-snupkg.md | 2 +- docs/create-packages/Symbol-Packages.md | 2 +- .../author-packages-with-COM-interop-assemblies.md | 2 +- docs/create-packages/creating-a-package-dotnet-cli.md | 2 +- docs/create-packages/creating-a-package-msbuild.md | 2 +- docs/create-packages/multiple-target-frameworks-project-file.md | 2 +- docs/create-packages/set-package-type.md | 2 +- docs/guides/Create-NET-Standard-Packages-VS2015.md | 2 +- docs/guides/Create-UI-Controls.md | 2 +- docs/guides/Create-UWP-Packages-CS.md | 2 +- docs/guides/Create-UWP-Packages.md | 2 +- docs/guides/Native-Packages.md | 2 +- docs/guides/analyzers-conventions.md | 2 +- docs/guides/api/query-for-all-published-packages.md | 2 +- docs/guides/create-packages-for-xamarin.md | 2 +- docs/hosting-packages/Local-Feeds.md | 2 +- docs/hosting-packages/NuGet-Server.md | 2 +- docs/hosting-packages/Overview.md | 2 +- docs/install-nuget-client-tools.md | 2 +- docs/nuget-org/Deprecate-packages.md | 2 +- docs/nuget-org/Publish-a-package.md | 2 +- docs/nuget-org/id-prefix-reservation.md | 2 +- docs/nuget-org/individual-accounts.md | 2 +- docs/nuget-org/nuget-org-faq.md | 2 +- docs/nuget-org/organizations-on-nuget-org.md | 2 +- docs/nuget-org/overview-nuget-org.md | 2 +- docs/nuget-org/policies/data-requests.md | 2 +- docs/nuget-org/policies/deleting-packages.md | 2 +- docs/nuget-org/policies/dispute-resolution.md | 2 +- docs/nuget-org/policies/export-control.md | 2 +- docs/nuget-org/scoped-api-keys.md | 2 +- docs/policies/Ecosystem.md | 2 +- docs/policies/Governance.md | 2 +- .../create-and-publish-a-package-using-the-dotnet-cli.md | 2 +- ...e-and-publish-a-package-using-visual-studio-net-framework.md | 2 +- .../create-and-publish-a-package-using-visual-studio.md | 2 +- .../install-and-use-a-package-in-visual-studio-mac.md | 2 +- docs/quickstart/install-and-use-a-package-in-visual-studio.md | 2 +- .../install-and-use-a-package-using-the-dotnet-cli.md | 2 +- docs/reference/Errors-and-Warnings.md | 2 +- docs/reference/NuGet-Client-SDK.md | 2 +- docs/reference/PowerShell-Reference.md | 2 +- docs/reference/Signed-Packages-Reference.md | 2 +- docs/reference/cli-reference/cli-ref-add.md | 2 +- docs/reference/cli-reference/cli-ref-config.md | 2 +- docs/reference/cli-reference/cli-ref-delete.md | 2 +- docs/reference/cli-reference/cli-ref-environment-variables.md | 2 +- docs/reference/cli-reference/cli-ref-help.md | 2 +- docs/reference/cli-reference/cli-ref-init.md | 2 +- docs/reference/cli-reference/cli-ref-install.md | 2 +- docs/reference/cli-reference/cli-ref-list.md | 2 +- docs/reference/cli-reference/cli-ref-locals.md | 2 +- docs/reference/cli-reference/cli-ref-long-path.md | 2 +- docs/reference/cli-reference/cli-ref-mirror.md | 2 +- docs/reference/cli-reference/cli-ref-pack.md | 2 +- docs/reference/cli-reference/cli-ref-push.md | 2 +- docs/reference/cli-reference/cli-ref-restore.md | 2 +- docs/reference/cli-reference/cli-ref-search.md | 2 +- docs/reference/cli-reference/cli-ref-setapikey.md | 2 +- docs/reference/cli-reference/cli-ref-sign.md | 2 +- docs/reference/cli-reference/cli-ref-sources.md | 2 +- docs/reference/cli-reference/cli-ref-spec.md | 2 +- docs/reference/cli-reference/cli-ref-trusted-signers.md | 2 +- docs/reference/cli-reference/cli-ref-update.md | 2 +- docs/reference/cli-reference/cli-ref-verify.md | 2 +- docs/reference/dotnet-Commands.md | 2 +- docs/reference/errors-and-warnings/NU1000.md | 2 +- docs/reference/errors-and-warnings/NU1001.md | 2 +- docs/reference/errors-and-warnings/NU1002.md | 2 +- docs/reference/errors-and-warnings/NU1003.md | 2 +- docs/reference/errors-and-warnings/NU1100.md | 2 +- docs/reference/errors-and-warnings/NU1101.md | 2 +- docs/reference/errors-and-warnings/NU1102.md | 2 +- docs/reference/errors-and-warnings/NU1103.md | 2 +- docs/reference/errors-and-warnings/NU1104.md | 2 +- docs/reference/errors-and-warnings/NU1105.md | 2 +- docs/reference/errors-and-warnings/NU1106.md | 2 +- docs/reference/errors-and-warnings/NU1107.md | 2 +- docs/reference/errors-and-warnings/NU1108.md | 2 +- docs/reference/errors-and-warnings/NU1201.md | 2 +- docs/reference/errors-and-warnings/NU1202.md | 2 +- docs/reference/errors-and-warnings/NU1203.md | 2 +- docs/reference/errors-and-warnings/NU1401.md | 2 +- docs/reference/errors-and-warnings/NU1500.md | 2 +- docs/reference/errors-and-warnings/NU1501.md | 2 +- docs/reference/errors-and-warnings/NU1502.md | 2 +- docs/reference/errors-and-warnings/NU1503.md | 2 +- docs/reference/errors-and-warnings/NU1601.md | 2 +- docs/reference/errors-and-warnings/NU1602.md | 2 +- docs/reference/errors-and-warnings/NU1603.md | 2 +- docs/reference/errors-and-warnings/NU1604.md | 2 +- docs/reference/errors-and-warnings/NU1605.md | 2 +- docs/reference/errors-and-warnings/NU1608.md | 2 +- docs/reference/errors-and-warnings/NU1701.md | 2 +- docs/reference/errors-and-warnings/NU1801.md | 2 +- docs/reference/errors-and-warnings/NU3000.md | 2 +- docs/reference/errors-and-warnings/NU3001.md | 2 +- docs/reference/errors-and-warnings/NU3002.md | 2 +- docs/reference/errors-and-warnings/NU3003.md | 2 +- docs/reference/errors-and-warnings/NU3004.md | 2 +- docs/reference/errors-and-warnings/NU3005.md | 2 +- docs/reference/errors-and-warnings/NU3006.md | 2 +- docs/reference/errors-and-warnings/NU3007.md | 2 +- docs/reference/errors-and-warnings/NU3008.md | 2 +- docs/reference/errors-and-warnings/NU3009.md | 2 +- docs/reference/errors-and-warnings/NU3010.md | 2 +- docs/reference/errors-and-warnings/NU3011.md | 2 +- docs/reference/errors-and-warnings/NU3012.md | 2 +- docs/reference/errors-and-warnings/NU3013.md | 2 +- docs/reference/errors-and-warnings/NU3014.md | 2 +- docs/reference/errors-and-warnings/NU3015.md | 2 +- docs/reference/errors-and-warnings/NU3016.md | 2 +- docs/reference/errors-and-warnings/NU3017.md | 2 +- docs/reference/errors-and-warnings/NU3018.md | 2 +- docs/reference/errors-and-warnings/NU3019.md | 2 +- docs/reference/errors-and-warnings/NU3020.md | 2 +- docs/reference/errors-and-warnings/NU3021.md | 2 +- docs/reference/errors-and-warnings/NU3022.md | 2 +- docs/reference/errors-and-warnings/NU3023.md | 2 +- docs/reference/errors-and-warnings/NU3024.md | 2 +- docs/reference/errors-and-warnings/NU3025.md | 2 +- docs/reference/errors-and-warnings/NU3026.md | 2 +- docs/reference/errors-and-warnings/NU3027.md | 2 +- docs/reference/errors-and-warnings/NU3028.md | 2 +- docs/reference/errors-and-warnings/NU3029.md | 2 +- docs/reference/errors-and-warnings/NU3030.md | 2 +- docs/reference/errors-and-warnings/NU3031.md | 2 +- docs/reference/errors-and-warnings/NU3032.md | 2 +- docs/reference/errors-and-warnings/NU3033.md | 2 +- docs/reference/errors-and-warnings/NU3034.md | 2 +- docs/reference/errors-and-warnings/NU3035.md | 2 +- docs/reference/errors-and-warnings/NU3036.md | 2 +- docs/reference/errors-and-warnings/NU3037.md | 2 +- docs/reference/errors-and-warnings/NU3038.md | 2 +- docs/reference/errors-and-warnings/NU3040.md | 2 +- docs/reference/errors-and-warnings/NU5000.md | 2 +- docs/reference/errors-and-warnings/NU5001.md | 2 +- docs/reference/errors-and-warnings/NU5002.md | 2 +- docs/reference/errors-and-warnings/NU5003.md | 2 +- docs/reference/errors-and-warnings/NU5004.md | 2 +- docs/reference/errors-and-warnings/NU5005.md | 2 +- docs/reference/errors-and-warnings/NU5007.md | 2 +- docs/reference/errors-and-warnings/NU5008.md | 2 +- docs/reference/errors-and-warnings/NU5009.md | 2 +- docs/reference/errors-and-warnings/NU5010.md | 2 +- docs/reference/errors-and-warnings/NU5011.md | 2 +- docs/reference/errors-and-warnings/NU5012.md | 2 +- docs/reference/errors-and-warnings/NU5013.md | 2 +- docs/reference/errors-and-warnings/NU5014.md | 2 +- docs/reference/errors-and-warnings/NU5015.md | 2 +- docs/reference/errors-and-warnings/NU5016.md | 2 +- docs/reference/errors-and-warnings/NU5017.md | 2 +- docs/reference/errors-and-warnings/NU5018.md | 2 +- docs/reference/errors-and-warnings/NU5019.md | 2 +- docs/reference/errors-and-warnings/NU5020.md | 2 +- docs/reference/errors-and-warnings/NU5021.md | 2 +- docs/reference/errors-and-warnings/NU5022.md | 2 +- docs/reference/errors-and-warnings/NU5023.md | 2 +- docs/reference/errors-and-warnings/NU5024.md | 2 +- docs/reference/errors-and-warnings/NU5025.md | 2 +- docs/reference/errors-and-warnings/NU5026.md | 2 +- docs/reference/errors-and-warnings/NU5027.md | 2 +- docs/reference/errors-and-warnings/NU5028.md | 2 +- docs/reference/errors-and-warnings/NU5029.md | 2 +- docs/reference/errors-and-warnings/NU5030.md | 2 +- docs/reference/errors-and-warnings/NU5031.md | 2 +- docs/reference/errors-and-warnings/NU5032.md | 2 +- docs/reference/errors-and-warnings/NU5033.md | 2 +- docs/reference/errors-and-warnings/NU5034.md | 2 +- docs/reference/errors-and-warnings/NU5035.md | 2 +- docs/reference/errors-and-warnings/NU5036.md | 2 +- docs/reference/errors-and-warnings/NU5037.md | 2 +- docs/reference/errors-and-warnings/NU5038.md | 2 +- docs/reference/errors-and-warnings/NU5039.md | 2 +- docs/reference/errors-and-warnings/NU5040.md | 2 +- docs/reference/errors-and-warnings/NU5041.md | 2 +- docs/reference/errors-and-warnings/NU5046.md | 2 +- docs/reference/errors-and-warnings/NU5047.md | 2 +- docs/reference/errors-and-warnings/NU5048.md | 2 +- docs/reference/errors-and-warnings/NU5100.md | 2 +- docs/reference/errors-and-warnings/NU5101.md | 2 +- docs/reference/errors-and-warnings/NU5102.md | 2 +- docs/reference/errors-and-warnings/NU5103.md | 2 +- docs/reference/errors-and-warnings/NU5104.md | 2 +- docs/reference/errors-and-warnings/NU5105.md | 2 +- docs/reference/errors-and-warnings/NU5106.md | 2 +- docs/reference/errors-and-warnings/NU5107.md | 2 +- docs/reference/errors-and-warnings/NU5108.md | 2 +- docs/reference/errors-and-warnings/NU5109.md | 2 +- docs/reference/errors-and-warnings/NU5110.md | 2 +- docs/reference/errors-and-warnings/NU5111.md | 2 +- docs/reference/errors-and-warnings/NU5112.md | 2 +- docs/reference/errors-and-warnings/NU5114.md | 2 +- docs/reference/errors-and-warnings/NU5115.md | 2 +- docs/reference/errors-and-warnings/NU5116.md | 2 +- docs/reference/errors-and-warnings/NU5117.md | 2 +- docs/reference/errors-and-warnings/NU5118.md | 2 +- docs/reference/errors-and-warnings/NU5119.md | 2 +- docs/reference/errors-and-warnings/NU5120.md | 2 +- docs/reference/errors-and-warnings/NU5121.md | 2 +- docs/reference/errors-and-warnings/NU5122.md | 2 +- docs/reference/errors-and-warnings/NU5123.md | 2 +- docs/reference/errors-and-warnings/NU5124.md | 2 +- docs/reference/errors-and-warnings/NU5125.md | 2 +- docs/reference/errors-and-warnings/NU5127.md | 2 +- docs/reference/errors-and-warnings/NU5128.md | 2 +- docs/reference/errors-and-warnings/NU5129.md | 2 +- docs/reference/errors-and-warnings/NU5130.md | 2 +- docs/reference/errors-and-warnings/NU5131.md | 2 +- docs/reference/errors-and-warnings/NU5500.md | 2 +- .../NuGet-Credential-Providers-for-Visual-Studio.md | 2 +- .../extensibility/NuGet-Cross-Platform-Authentication-Plugin.md | 2 +- docs/reference/extensibility/NuGet-Cross-Platform-Plugins.md | 2 +- docs/reference/extensibility/nuget-exe-Credential-Providers.md | 2 +- docs/reference/msbuild-targets.md | 2 +- docs/reference/nuget-config-file.md | 2 +- docs/reference/nuget-exe-CLI-Reference.md | 2 +- docs/reference/nuspec.md | 2 +- docs/reference/packages-config.md | 2 +- docs/reference/ps-reference/ps-ref-add-bindingredirect.md | 2 +- docs/reference/ps-reference/ps-ref-find-package.md | 2 +- docs/reference/ps-reference/ps-ref-get-package.md | 2 +- docs/reference/ps-reference/ps-ref-get-project.md | 2 +- docs/reference/ps-reference/ps-ref-install-package.md | 2 +- docs/reference/ps-reference/ps-ref-open-packagepage.md | 2 +- docs/reference/ps-reference/ps-ref-register-tabexpansion.md | 2 +- docs/reference/ps-reference/ps-ref-sync-package.md | 2 +- docs/reference/ps-reference/ps-ref-uninstall-package.md | 2 +- docs/reference/ps-reference/ps-ref-update-package.md | 2 +- docs/reference/target-frameworks.md | 2 +- docs/release-notes/Index.md | 2 +- docs/release-notes/Known-Issues.md | 2 +- docs/release-notes/NuGet-1.1.md | 2 +- docs/release-notes/NuGet-1.2.md | 2 +- docs/release-notes/NuGet-1.3.md | 2 +- docs/release-notes/NuGet-1.4.md | 2 +- docs/release-notes/NuGet-1.5.md | 2 +- docs/release-notes/NuGet-1.6.md | 2 +- docs/release-notes/NuGet-1.7.md | 2 +- docs/release-notes/NuGet-1.8.md | 2 +- docs/release-notes/NuGet-2.0.md | 2 +- docs/release-notes/NuGet-2.1.md | 2 +- docs/release-notes/NuGet-2.12-RC.md | 2 +- docs/release-notes/NuGet-2.12.md | 2 +- docs/release-notes/NuGet-2.2.1.md | 2 +- docs/release-notes/NuGet-2.2.md | 2 +- docs/release-notes/NuGet-2.5.md | 2 +- docs/release-notes/NuGet-2.6.1-for-WebMatrix.md | 2 +- docs/release-notes/NuGet-2.6.md | 2 +- docs/release-notes/NuGet-2.7.1.md | 2 +- docs/release-notes/NuGet-2.7.2.md | 2 +- docs/release-notes/NuGet-2.7.md | 2 +- docs/release-notes/NuGet-2.8.1.md | 2 +- docs/release-notes/NuGet-2.8.2.md | 2 +- docs/release-notes/NuGet-2.8.3.md | 2 +- docs/release-notes/NuGet-2.8.5.md | 2 +- docs/release-notes/NuGet-2.8.6.md | 2 +- docs/release-notes/NuGet-2.8.7.md | 2 +- docs/release-notes/NuGet-2.8.md | 2 +- docs/release-notes/NuGet-2.9-RC.md | 2 +- docs/release-notes/NuGet-3.0-Beta.md | 2 +- docs/release-notes/NuGet-3.0-Preview.md | 2 +- docs/release-notes/NuGet-3.0-RC.md | 2 +- docs/release-notes/NuGet-3.0-RC2.md | 2 +- docs/release-notes/NuGet-3.0.0.md | 2 +- docs/release-notes/NuGet-3.1.1.md | 2 +- docs/release-notes/NuGet-3.1.md | 2 +- docs/release-notes/NuGet-3.2-RC.md | 2 +- docs/release-notes/NuGet-3.2.1.md | 2 +- docs/release-notes/NuGet-3.2.md | 2 +- docs/release-notes/NuGet-3.3.md | 2 +- docs/release-notes/NuGet-3.4-RC.md | 2 +- docs/release-notes/NuGet-3.4.1.md | 2 +- docs/release-notes/NuGet-3.4.2.md | 2 +- docs/release-notes/NuGet-3.4.3.md | 2 +- docs/release-notes/NuGet-3.4.4.md | 2 +- docs/release-notes/NuGet-3.4.md | 2 +- docs/release-notes/NuGet-3.5-Beta.md | 2 +- docs/release-notes/NuGet-3.5-Beta2.md | 2 +- docs/release-notes/NuGet-3.5-RC.md | 2 +- docs/release-notes/NuGet-3.5-RTM.md | 2 +- docs/release-notes/NuGet-4.0-RC.md | 2 +- docs/release-notes/NuGet-4.0-RTM.md | 2 +- docs/release-notes/NuGet-4.3-RTM.md | 2 +- docs/release-notes/NuGet-4.4-RTM.md | 2 +- docs/release-notes/NuGet-4.5-RTM.md | 2 +- docs/release-notes/NuGet-4.6-rtm.md | 2 +- docs/release-notes/NuGet-4.7-RTM.md | 2 +- docs/release-notes/NuGet-4.8-RTM.md | 2 +- docs/release-notes/NuGet-4.9-RTM.md | 2 +- docs/release-notes/NuGet-5.0-RTM.md | 2 +- docs/release-notes/NuGet-5.1-RTM.md | 2 +- docs/release-notes/NuGet-5.2-RTM.md | 2 +- docs/release-notes/NuGet-5.3.md | 2 +- docs/release-notes/NuGet-5.4.md | 2 +- docs/release-notes/NuGet-5.5.md | 2 +- docs/release-notes/NuGet-5.6.md | 2 +- docs/release-notes/NuGet-5.7.md | 2 +- docs/release-notes/NuGet-5.8.md | 2 +- docs/release-notes/NuGet-5.9.md | 2 +- docs/resources/NuGet-FAQ.md | 2 +- docs/resources/check-project-format.md | 2 +- docs/visual-studio-extensibility/Project-System-Support.md | 2 +- docs/visual-studio-extensibility/Visual-Studio-Templates.md | 2 +- docs/visual-studio-extensibility/nuget-api-in-visual-studio.md | 2 +- docs/what-is-nuget.md | 2 +- 355 files changed, 355 insertions(+), 355 deletions(-) diff --git a/docs/api/NuGet-Protocols.md b/docs/api/NuGet-Protocols.md index 0a027b5c2..6c8fd1479 100644 --- a/docs/api/NuGet-Protocols.md +++ b/docs/api/NuGet-Protocols.md @@ -4,7 +4,7 @@ description: The evolving nuget.org protocols to interact with NuGet clients. author: anangaur ms.author: anangaur ms.date: 01/21/2021 -ms.topic: conceptual +ms.topic: conceptual ms.reviewer: kraigb --- diff --git a/docs/api/catalog-resource.md b/docs/api/catalog-resource.md index a12e6c603..b26b3c469 100644 --- a/docs/api/catalog-resource.md +++ b/docs/api/catalog-resource.md @@ -4,7 +4,7 @@ description: The catalog is an index of all packages created and deleted on nuge author: joelverhagen ms.author: jver ms.date: 10/30/2017 -ms.topic: reference +ms.topic: reference ms.reviewer: kraigb --- diff --git a/docs/api/overview.md b/docs/api/overview.md index 7201f6431..7ee8209b1 100644 --- a/docs/api/overview.md +++ b/docs/api/overview.md @@ -4,7 +4,7 @@ description: The NuGet Server API is a set of HTTP endpoints that can be used to author: joelverhagen ms.author: jver ms.date: 10/26/2017 -ms.topic: reference +ms.topic: reference ms.reviewer: kraigb --- diff --git a/docs/api/package-base-address-resource.md b/docs/api/package-base-address-resource.md index d3bf8e43d..b958fb3dd 100644 --- a/docs/api/package-base-address-resource.md +++ b/docs/api/package-base-address-resource.md @@ -4,7 +4,7 @@ description: The package base address is a simple interface for fetching the pac author: joelverhagen ms.author: jver ms.date: 10/26/2017 -ms.topic: reference +ms.topic: reference ms.reviewer: kraigb --- diff --git a/docs/api/package-details-template-resource.md b/docs/api/package-details-template-resource.md index b2c7928f3..c261786d1 100644 --- a/docs/api/package-details-template-resource.md +++ b/docs/api/package-details-template-resource.md @@ -4,7 +4,7 @@ description: The package details URL template allows clients to display in their author: joelverhagen ms.author: jver ms.date: 3/1/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: ananguar --- diff --git a/docs/api/package-publish-resource.md b/docs/api/package-publish-resource.md index 57ffa8e46..82cc33c35 100644 --- a/docs/api/package-publish-resource.md +++ b/docs/api/package-publish-resource.md @@ -4,7 +4,7 @@ description: The publish service allows clients to publish new packages and unli author: joelverhagen ms.author: jver ms.date: 10/26/2017 -ms.topic: reference +ms.topic: reference ms.reviewer: kraigb --- diff --git a/docs/api/rate-limits.md b/docs/api/rate-limits.md index f738504b6..ef4c6ee4b 100644 --- a/docs/api/rate-limits.md +++ b/docs/api/rate-limits.md @@ -4,7 +4,7 @@ description: The NuGet APIs will have enforced rate limits to prevent abuse. author: cmanu ms.author: cmanu ms.date: 03/20/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: - skofman - anangaur diff --git a/docs/api/registration-base-url-resource.md b/docs/api/registration-base-url-resource.md index 1bf753365..9b7f5780b 100644 --- a/docs/api/registration-base-url-resource.md +++ b/docs/api/registration-base-url-resource.md @@ -4,7 +4,7 @@ description: The package registration base URL allows fetching metadata about pa author: joelverhagen ms.author: jver ms.date: 10/26/2017 -ms.topic: reference +ms.topic: reference ms.reviewer: kraigb --- diff --git a/docs/api/report-abuse-resource.md b/docs/api/report-abuse-resource.md index dd052189a..d05b1a8b4 100644 --- a/docs/api/report-abuse-resource.md +++ b/docs/api/report-abuse-resource.md @@ -4,7 +4,7 @@ description: The report abuse URL template allows clients to display a report ab author: joelverhagen ms.author: jver ms.date: 10/26/2017 -ms.topic: reference +ms.topic: reference ms.reviewer: kraigb --- diff --git a/docs/api/repository-signatures-resource.md b/docs/api/repository-signatures-resource.md index 1b67ccdc3..cd8f77df4 100644 --- a/docs/api/repository-signatures-resource.md +++ b/docs/api/repository-signatures-resource.md @@ -3,7 +3,7 @@ title: Repository Signatures, NuGet API | Microsoft Docs author: joelverhagen ms.author: jver ms.date: 3/2/2018 -ms.topic: reference +ms.topic: reference description: The repository signatures resource allows clients package sources to announce their repository signing capabilities. ms.reviewer: - karann diff --git a/docs/api/search-autocomplete-service-resource.md b/docs/api/search-autocomplete-service-resource.md index bec6ca03c..09bf04132 100644 --- a/docs/api/search-autocomplete-service-resource.md +++ b/docs/api/search-autocomplete-service-resource.md @@ -4,7 +4,7 @@ description: The search autocomplete service supports interactive discovery of p author: joelverhagen ms.author: jver ms.date: 10/26/2017 -ms.topic: reference +ms.topic: reference ms.reviewer: kraigb --- diff --git a/docs/api/search-query-service-resource.md b/docs/api/search-query-service-resource.md index 17cf2378c..7a4d8a471 100644 --- a/docs/api/search-query-service-resource.md +++ b/docs/api/search-query-service-resource.md @@ -4,7 +4,7 @@ description: The search service allows clients to query for packages by keyword author: joelverhagen ms.author: jver ms.date: 10/26/2017 -ms.topic: reference +ms.topic: reference ms.reviewer: kraigb --- diff --git a/docs/api/service-index.md b/docs/api/service-index.md index faacd9351..b34b61a93 100644 --- a/docs/api/service-index.md +++ b/docs/api/service-index.md @@ -4,7 +4,7 @@ description: The service index is the entry point of the NuGet HTTP API and enum author: joelverhagen ms.author: jver ms.date: 10/26/2017 -ms.topic: reference +ms.topic: reference ms.reviewer: kraigb --- diff --git a/docs/api/symbol-package-publish-resource.md b/docs/api/symbol-package-publish-resource.md index 8e9fe1a80..b970f3cf1 100644 --- a/docs/api/symbol-package-publish-resource.md +++ b/docs/api/symbol-package-publish-resource.md @@ -4,7 +4,7 @@ author: cristinamanum ms.author: cmanu manager: skofman ms.date: 10/30/2018 -ms.topic: reference +ms.topic: reference ms.prod: nuget ms.technology: null description: The publish service allows clients to publish new symbol packages. diff --git a/docs/api/tools-json.md b/docs/api/tools-json.md index 692e45b0e..220e564c9 100644 --- a/docs/api/tools-json.md +++ b/docs/api/tools-json.md @@ -4,7 +4,7 @@ description: The endpoint for author: jver ms.author: jver ms.date: 08/16/2018 -ms.topic: conceptual +ms.topic: conceptual ms.reviewer: kraigb --- diff --git a/docs/archive/project-json-and-uwp.md b/docs/archive/project-json-and-uwp.md index b36ab5d20..fa292c3a2 100644 --- a/docs/archive/project-json-and-uwp.md +++ b/docs/archive/project-json-and-uwp.md @@ -4,7 +4,7 @@ description: Description of how the project.json file is used to track NuGet dep author: JonDouglas ms.author: jodou ms.date: 07/17/2017 -ms.topic: conceptual +ms.topic: conceptual --- # project.json and UWP diff --git a/docs/archive/project-json-impact.md b/docs/archive/project-json-impact.md index 3f171f019..2fa0b8cc6 100644 --- a/docs/archive/project-json-impact.md +++ b/docs/archive/project-json-impact.md @@ -4,7 +4,7 @@ description: Details on how the implementation of project.json in NuGet 3.x affe author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: conceptual +ms.topic: conceptual --- # Impact of project.json when creating packages diff --git a/docs/archive/project-json.md b/docs/archive/project-json.md index e091f0837..b74759fd4 100644 --- a/docs/archive/project-json.md +++ b/docs/archive/project-json.md @@ -4,7 +4,7 @@ description: In some project types, project.json maintains the list of NuGet pac author: JonDouglas ms.author: jodou ms.date: 07/27/2017 -ms.topic: reference +ms.topic: reference --- # project.json reference diff --git a/docs/concepts/Dependency-Resolution.md b/docs/concepts/Dependency-Resolution.md index 3e7507a84..99308305c 100644 --- a/docs/concepts/Dependency-Resolution.md +++ b/docs/concepts/Dependency-Resolution.md @@ -4,7 +4,7 @@ description: Details on the process through which a NuGet package's dependencies author: JonDouglas ms.author: jodou ms.date: 08/14/2017 -ms.topic: conceptual +ms.topic: conceptual --- # How NuGet resolves package dependencies diff --git a/docs/concepts/Package-Versioning.md b/docs/concepts/Package-Versioning.md index 3a965e322..af2d30ca4 100644 --- a/docs/concepts/Package-Versioning.md +++ b/docs/concepts/Package-Versioning.md @@ -4,7 +4,7 @@ description: Exact details on specifying version numbers and ranges for other pa author: JonDouglas ms.author: jodou ms.date: 03/23/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur --- diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 3db11969a..31c6a4c6a 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -4,7 +4,7 @@ description: Best practices for securing your software supply chain using NuGet author: JonDouglas ms.author: jodou ms.date: 02/08/2021 -ms.topic: conceptual +ms.topic: conceptual --- # Best practices for a secure software supply chain diff --git a/docs/concepts/package-installation-process.md b/docs/concepts/package-installation-process.md index 0ad246c66..75d7bad08 100644 --- a/docs/concepts/package-installation-process.md +++ b/docs/concepts/package-installation-process.md @@ -4,7 +4,7 @@ description: Detailed information about the package installation process author: JonDouglas ms.author: jodou ms.date: 06/20/2019 -ms.topic: conceptual +ms.topic: conceptual --- # What happens when a NuGet package is installed? diff --git a/docs/concepts/troubleshooting-installed-packages.md b/docs/concepts/troubleshooting-installed-packages.md index 1b6c361b9..6c97be003 100644 --- a/docs/concepts/troubleshooting-installed-packages.md +++ b/docs/concepts/troubleshooting-installed-packages.md @@ -4,7 +4,7 @@ description: How to find which package source was used for individual packages author: JonDouglas ms.author: jodou ms.date: 03/26/2021 -ms.topic: conceptual +ms.topic: conceptual --- # Troubleshooting Installed Packages diff --git a/docs/consume-packages/Finding-and-Choosing-Packages.md b/docs/consume-packages/Finding-and-Choosing-Packages.md index d450dbcd6..ee861cfd9 100644 --- a/docs/consume-packages/Finding-and-Choosing-Packages.md +++ b/docs/consume-packages/Finding-and-Choosing-Packages.md @@ -4,7 +4,7 @@ description: An overview of how to find and choose the best NuGet packages for a author: JonDouglas ms.author: jodou ms.date: 06/04/2018 -ms.topic: conceptual +ms.topic: conceptual --- # Finding and evaluating NuGet packages for your project diff --git a/docs/consume-packages/Overview-and-Workflow.md b/docs/consume-packages/Overview-and-Workflow.md index 956c13519..3181bc9bb 100644 --- a/docs/consume-packages/Overview-and-Workflow.md +++ b/docs/consume-packages/Overview-and-Workflow.md @@ -4,7 +4,7 @@ description: An overview of the process of consuming NuGet packages in a project author: JonDouglas ms.author: jodou ms.date: 03/22/2018 -ms.topic: conceptual +ms.topic: conceptual --- # Package consumption workflow diff --git a/docs/consume-packages/Package-References-in-Project-Files.md b/docs/consume-packages/Package-References-in-Project-Files.md index da42298e8..6b3fdb086 100644 --- a/docs/consume-packages/Package-References-in-Project-Files.md +++ b/docs/consume-packages/Package-References-in-Project-Files.md @@ -4,7 +4,7 @@ description: Details on NuGet PackageReference in project files as supported by author: nkolev92 ms.author: nikolev ms.date: 03/16/2018 -ms.topic: conceptual +ms.topic: conceptual --- # Package references (`PackageReference`) in project files diff --git a/docs/consume-packages/Package-Restore.md b/docs/consume-packages/Package-Restore.md index ca37681b0..62e7af1f9 100644 --- a/docs/consume-packages/Package-Restore.md +++ b/docs/consume-packages/Package-Restore.md @@ -4,7 +4,7 @@ description: An overview of how NuGet restores packages a project depends on, in author: JonDouglas ms.author: jodou ms.date: 08/05/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Restore packages using Package Restore diff --git a/docs/consume-packages/Package-restore-troubleshooting.md b/docs/consume-packages/Package-restore-troubleshooting.md index fb120c9bc..09c547687 100644 --- a/docs/consume-packages/Package-restore-troubleshooting.md +++ b/docs/consume-packages/Package-restore-troubleshooting.md @@ -4,7 +4,7 @@ description: A description of common NuGet restore errors in Visual Studio and h author: JonDouglas ms.author: jodou ms.date: 05/25/2018 -ms.topic: conceptual +ms.topic: conceptual --- # Troubleshooting package restore errors diff --git a/docs/consume-packages/Packages-and-Source-Control.md b/docs/consume-packages/Packages-and-Source-Control.md index 327f5a64a..5fef0c116 100644 --- a/docs/consume-packages/Packages-and-Source-Control.md +++ b/docs/consume-packages/Packages-and-Source-Control.md @@ -4,7 +4,7 @@ description: Considerations for how to treat NuGet packages within version contr author: JonDouglas ms.author: jodou ms.date: 03/16/2018 -ms.topic: conceptual +ms.topic: conceptual --- # Omitting NuGet packages in source control systems diff --git a/docs/consume-packages/Reinstalling-and-Updating-Packages.md b/docs/consume-packages/Reinstalling-and-Updating-Packages.md index d6a7c46a1..21513f0d6 100644 --- a/docs/consume-packages/Reinstalling-and-Updating-Packages.md +++ b/docs/consume-packages/Reinstalling-and-Updating-Packages.md @@ -4,7 +4,7 @@ description: Details on when it's necessary to reinstall and update packages, as author: JonDouglas ms.author: jodou ms.date: 12/07/2017 -ms.topic: conceptual +ms.topic: conceptual --- # How to reinstall and update packages diff --git a/docs/consume-packages/Team-Foundation-Build.md b/docs/consume-packages/Team-Foundation-Build.md index 31ad42f2a..87024a274 100644 --- a/docs/consume-packages/Team-Foundation-Build.md +++ b/docs/consume-packages/Team-Foundation-Build.md @@ -4,7 +4,7 @@ description: A walkthrough of how NuGet package restore with with Team Foundatio author: JonDouglas ms.author: jodou ms.date: 01/09/2017 -ms.topic: conceptual +ms.topic: conceptual --- # Setting up package restore with Team Foundation Build diff --git a/docs/consume-packages/configuring-nuget-behavior.md b/docs/consume-packages/configuring-nuget-behavior.md index da3b6e48d..e6ca99f70 100644 --- a/docs/consume-packages/configuring-nuget-behavior.md +++ b/docs/consume-packages/configuring-nuget-behavior.md @@ -4,7 +4,7 @@ description: NuGet.Config files control NuGet's behavior both globally and on a author: JonDouglas ms.author: jodou ms.date: 10/25/2017 -ms.topic: conceptual +ms.topic: conceptual --- # Common NuGet configurations diff --git a/docs/consume-packages/consuming-packages-authenticated-feeds.md b/docs/consume-packages/consuming-packages-authenticated-feeds.md index 92ef80db1..d74b4dbc8 100644 --- a/docs/consume-packages/consuming-packages-authenticated-feeds.md +++ b/docs/consume-packages/consuming-packages-authenticated-feeds.md @@ -4,7 +4,7 @@ description: Consuming packages from authenticated feeds in all NuGet client sce author: nkolev92 ms.author: nikolev ms.date: 02/28/2020 -ms.topic: conceptual +ms.topic: conceptual --- # Consuming packages from authenticated feeds diff --git a/docs/consume-packages/install-use-packages-dotnet-cli.md b/docs/consume-packages/install-use-packages-dotnet-cli.md index 4da4baf17..3311bde68 100644 --- a/docs/consume-packages/install-use-packages-dotnet-cli.md +++ b/docs/consume-packages/install-use-packages-dotnet-cli.md @@ -4,7 +4,7 @@ description: Instructions for using the dotnet CLI to work with NuGet packages. author: mikejo5000 ms.author: mikejo ms.date: 06/03/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Install and manage packages using the dotnet CLI diff --git a/docs/consume-packages/install-use-packages-nuget-cli.md b/docs/consume-packages/install-use-packages-nuget-cli.md index 1067aa7b2..a5f6d49a5 100644 --- a/docs/consume-packages/install-use-packages-nuget-cli.md +++ b/docs/consume-packages/install-use-packages-nuget-cli.md @@ -4,7 +4,7 @@ description: Instructions for using the nuget.exe CLI to work with NuGet package author: mikejo5000 ms.author: mikejo ms.date: 06/03/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Manage packages using the nuget.exe CLI diff --git a/docs/consume-packages/install-use-packages-powershell.md b/docs/consume-packages/install-use-packages-powershell.md index c165d8b03..c36e9f57c 100644 --- a/docs/consume-packages/install-use-packages-powershell.md +++ b/docs/consume-packages/install-use-packages-powershell.md @@ -4,7 +4,7 @@ description: Instructions for using the NuGet Package Manager Console in Visual author: JonDouglas ms.author: jodou ms.date: 07/08/2019 -ms.topic: conceptual +ms.topic: conceptual f1_keywords: - "vs.nuget.packagemanager.console" --- diff --git a/docs/consume-packages/install-use-packages-visual-studio.md b/docs/consume-packages/install-use-packages-visual-studio.md index c4b8f8269..37480ac7b 100644 --- a/docs/consume-packages/install-use-packages-visual-studio.md +++ b/docs/consume-packages/install-use-packages-visual-studio.md @@ -4,7 +4,7 @@ description: Instructions for using the NuGet Package Manager UI in Visual Studi author: JonDouglas ms.author: jodou ms.date: 07/08/2019 -ms.topic: conceptual +ms.topic: conceptual f1_keywords: - "vs.toolsoptionspages.nuget_package_manager" - "vs.toolsoptionspages.nuget_package_manager.general" diff --git a/docs/consume-packages/installing-signed-packages.md b/docs/consume-packages/installing-signed-packages.md index 0814218f4..b60ca4a07 100644 --- a/docs/consume-packages/installing-signed-packages.md +++ b/docs/consume-packages/installing-signed-packages.md @@ -4,7 +4,7 @@ description: Describes the process of installing signed NuGet packages and confi author: JonDouglas ms.author: jodou ms.date: 11/29/2018 -ms.topic: conceptual +ms.topic: conceptual --- # Manage package trust boundaries diff --git a/docs/consume-packages/managing-the-global-packages-and-cache-folders.md b/docs/consume-packages/managing-the-global-packages-and-cache-folders.md index cb621f84b..b377e1b67 100644 --- a/docs/consume-packages/managing-the-global-packages-and-cache-folders.md +++ b/docs/consume-packages/managing-the-global-packages-and-cache-folders.md @@ -4,7 +4,7 @@ description: How to manage the global package installation folder, the package c author: JonDouglas ms.author: jodou ms.date: 03/19/2018 -ms.topic: conceptual +ms.topic: conceptual --- # Managing the global packages, cache, and temp folders diff --git a/docs/consume-packages/migrate-packages-config-to-package-reference.md b/docs/consume-packages/migrate-packages-config-to-package-reference.md index e5ebec71e..531d62d54 100644 --- a/docs/consume-packages/migrate-packages-config-to-package-reference.md +++ b/docs/consume-packages/migrate-packages-config-to-package-reference.md @@ -4,7 +4,7 @@ description: Details on how to migrate a project from the packages.config manage author: JonDouglas ms.author: jodou ms.date: 05/24/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Migrate from packages.config to PackageReference diff --git a/docs/create-packages/Creating-Localized-Packages.md b/docs/create-packages/Creating-Localized-Packages.md index bb8385772..aeb0efd9c 100644 --- a/docs/create-packages/Creating-Localized-Packages.md +++ b/docs/create-packages/Creating-Localized-Packages.md @@ -4,7 +4,7 @@ description: Details on the two ways to create localized NuGet packages, either author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: conceptual +ms.topic: conceptual --- # Creating localized NuGet packages diff --git a/docs/create-packages/Creating-a-Package.md b/docs/create-packages/Creating-a-Package.md index 9befb946d..9cad557f7 100644 --- a/docs/create-packages/Creating-a-Package.md +++ b/docs/create-packages/Creating-a-Package.md @@ -4,7 +4,7 @@ description: A detailed guide on designing and creating a NuGet package, includi author: JonDouglas ms.author: feaguila ms.date: 07/09/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Create a package using the nuget.exe CLI diff --git a/docs/create-packages/Overview-and-Workflow.md b/docs/create-packages/Overview-and-Workflow.md index 96984557b..7c3e22d66 100644 --- a/docs/create-packages/Overview-and-Workflow.md +++ b/docs/create-packages/Overview-and-Workflow.md @@ -4,7 +4,7 @@ description: An overview of the process of creating and publishing a NuGet packa author: JonDouglas ms.author: jodou ms.date: 07/26/2017 -ms.topic: conceptual +ms.topic: conceptual --- # Package creation workflow diff --git a/docs/create-packages/Package-authoring-best-practices.md b/docs/create-packages/Package-authoring-best-practices.md index e4bf27447..6dc05ceee 100644 --- a/docs/create-packages/Package-authoring-best-practices.md +++ b/docs/create-packages/Package-authoring-best-practices.md @@ -4,7 +4,7 @@ description: A general guide of best practices for creating high quality NuGet p author: chgill-MSFT ms.author: chgill ms.date: 09/17/2020 -ms.topic: conceptual +ms.topic: conceptual --- # Package authoring best practices diff --git a/docs/create-packages/Prerelease-Packages.md b/docs/create-packages/Prerelease-Packages.md index 3b487f89b..0221c121c 100644 --- a/docs/create-packages/Prerelease-Packages.md +++ b/docs/create-packages/Prerelease-Packages.md @@ -4,7 +4,7 @@ description: Guidance for building pre-release packages author: JonDouglas ms.author: jodou ms.date: 08/14/2017 -ms.topic: conceptual +ms.topic: conceptual --- # Building pre-release packages diff --git a/docs/create-packages/Select-assemblies-referenced-by-projects.md b/docs/create-packages/Select-assemblies-referenced-by-projects.md index d0b50c3ce..ff48b78b5 100644 --- a/docs/create-packages/Select-assemblies-referenced-by-projects.md +++ b/docs/create-packages/Select-assemblies-referenced-by-projects.md @@ -4,7 +4,7 @@ description: Make a subset of assemblies in the package available to the compile author: zivkan ms.author: zivkan ms.date: 05/24/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Select Assemblies Referenced By Projects diff --git a/docs/create-packages/Sign-a-Package.md b/docs/create-packages/Sign-a-Package.md index da4a595b6..58503398b 100644 --- a/docs/create-packages/Sign-a-Package.md +++ b/docs/create-packages/Sign-a-Package.md @@ -4,7 +4,7 @@ description: Explains how signed packages can be used to enable content integrit author: rido-min ms.author: rmpablos ms.date: 03/06/2018 -ms.topic: conceptual +ms.topic: conceptual ms.reviewer: anangaur --- diff --git a/docs/create-packages/Source-and-Config-File-Transformations.md b/docs/create-packages/Source-and-Config-File-Transformations.md index 79402e54c..57ce83f2d 100644 --- a/docs/create-packages/Source-and-Config-File-Transformations.md +++ b/docs/create-packages/Source-and-Config-File-Transformations.md @@ -4,7 +4,7 @@ description: Details on the ability for NuGet packages to transform source code author: JonDouglas ms.author: jodou ms.date: 04/24/2017 -ms.topic: conceptual +ms.topic: conceptual ms.reviewer: anangaur --- diff --git a/docs/create-packages/Supporting-Multiple-Target-Frameworks.md b/docs/create-packages/Supporting-Multiple-Target-Frameworks.md index 91576a3c8..5158f55bb 100644 --- a/docs/create-packages/Supporting-Multiple-Target-Frameworks.md +++ b/docs/create-packages/Supporting-Multiple-Target-Frameworks.md @@ -4,7 +4,7 @@ description: Description of the various methods to target multiple .NET Framewor author: JonDouglas ms.author: jodou ms.date: 07/15/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Support multiple .NET versions diff --git a/docs/create-packages/Symbol-Packages-snupkg.md b/docs/create-packages/Symbol-Packages-snupkg.md index 9212cd022..bad98c581 100644 --- a/docs/create-packages/Symbol-Packages-snupkg.md +++ b/docs/create-packages/Symbol-Packages-snupkg.md @@ -4,7 +4,7 @@ author: JonDouglas ms.author: jodou manager: skofman ms.date: 10/30/2018 -ms.topic: reference +ms.topic: reference ms.prod: nuget ms.technology: null description: How to create NuGet symbol packages (snupkg). diff --git a/docs/create-packages/Symbol-Packages.md b/docs/create-packages/Symbol-Packages.md index 6a49f689e..2ceb03831 100644 --- a/docs/create-packages/Symbol-Packages.md +++ b/docs/create-packages/Symbol-Packages.md @@ -4,7 +4,7 @@ description: How to create NuGet packages that contain only symbols to support d author: JonDouglas ms.author: jodou ms.date: 09/12/2017 -ms.topic: conceptual +ms.topic: conceptual ms.reviewer: anangaur --- diff --git a/docs/create-packages/author-packages-with-COM-interop-assemblies.md b/docs/create-packages/author-packages-with-COM-interop-assemblies.md index e37c68ce4..66f7ef187 100644 --- a/docs/create-packages/author-packages-with-COM-interop-assemblies.md +++ b/docs/create-packages/author-packages-with-COM-interop-assemblies.md @@ -4,7 +4,7 @@ description: Describes how to create packages that contain COM interop assemblie author: JonDouglas ms.author: jodou ms.date: 07/09/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Create NuGet packages that contain COM interop assemblies diff --git a/docs/create-packages/creating-a-package-dotnet-cli.md b/docs/create-packages/creating-a-package-dotnet-cli.md index a0feed738..51c80364e 100644 --- a/docs/create-packages/creating-a-package-dotnet-cli.md +++ b/docs/create-packages/creating-a-package-dotnet-cli.md @@ -4,7 +4,7 @@ description: A detailed guide to the process of designing and creating a NuGet p author: JonDouglas ms.author: jodou ms.date: 02/20/2020 -ms.topic: conceptual +ms.topic: conceptual --- # Create a NuGet package using the dotnet CLI diff --git a/docs/create-packages/creating-a-package-msbuild.md b/docs/create-packages/creating-a-package-msbuild.md index 259dfb344..2b9d43c1c 100644 --- a/docs/create-packages/creating-a-package-msbuild.md +++ b/docs/create-packages/creating-a-package-msbuild.md @@ -4,7 +4,7 @@ description: A detailed guide to the process of designing and creating a NuGet p author: JonDouglas ms.author: jodou ms.date: 02/20/2020 -ms.topic: conceptual +ms.topic: conceptual --- # Create a NuGet package using MSBuild diff --git a/docs/create-packages/multiple-target-frameworks-project-file.md b/docs/create-packages/multiple-target-frameworks-project-file.md index 326dc1e6f..71caebb15 100644 --- a/docs/create-packages/multiple-target-frameworks-project-file.md +++ b/docs/create-packages/multiple-target-frameworks-project-file.md @@ -4,7 +4,7 @@ description: Description of the various methods to target multiple .NET Framewor author: JonDouglas ms.author: jodou ms.date: 07/15/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Support multiple .NET Framework versions in your project file diff --git a/docs/create-packages/set-package-type.md b/docs/create-packages/set-package-type.md index fe1f2ca44..c362d251e 100644 --- a/docs/create-packages/set-package-type.md +++ b/docs/create-packages/set-package-type.md @@ -4,7 +4,7 @@ description: Describes packages types to indicate intended use of a package. author: JonDouglas ms.author: jodou ms.date: 07/09/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Set a NuGet package type diff --git a/docs/guides/Create-NET-Standard-Packages-VS2015.md b/docs/guides/Create-NET-Standard-Packages-VS2015.md index 8d4e839dc..6267aa8fb 100644 --- a/docs/guides/Create-NET-Standard-Packages-VS2015.md +++ b/docs/guides/Create-NET-Standard-Packages-VS2015.md @@ -4,7 +4,7 @@ description: An end-to-end walkthrough of creating .NET Standard and .NET Framew author: JonDouglas ms.author: jodou ms.date: 02/02/2018 -ms.topic: tutorial +ms.topic: tutorial --- # Create .NET Standard and .NET Framework packages with Visual Studio 2015 diff --git a/docs/guides/Create-UI-Controls.md b/docs/guides/Create-UI-Controls.md index 6401326ea..6566a6b80 100644 --- a/docs/guides/Create-UI-Controls.md +++ b/docs/guides/Create-UI-Controls.md @@ -4,7 +4,7 @@ description: How to create NuGet packages that contain UWP or WPF controls, incl author: JonDouglas ms.author: jodou ms.date: 05/23/2018 -ms.topic: tutorial +ms.topic: tutorial --- # Creating UI controls as NuGet packages diff --git a/docs/guides/Create-UWP-Packages-CS.md b/docs/guides/Create-UWP-Packages-CS.md index 24edacd94..e0acc6891 100644 --- a/docs/guides/Create-UWP-Packages-CS.md +++ b/docs/guides/Create-UWP-Packages-CS.md @@ -4,7 +4,7 @@ description: An end-to-end walkthrough of creating NuGet packages using a Window author: rrelyea ms.author: rrelyea ms.date: 02/28/2020 -ms.topic: tutorial +ms.topic: tutorial --- # Create UWP packages (C#) diff --git a/docs/guides/Create-UWP-Packages.md b/docs/guides/Create-UWP-Packages.md index dcb17dc79..784952589 100644 --- a/docs/guides/Create-UWP-Packages.md +++ b/docs/guides/Create-UWP-Packages.md @@ -4,7 +4,7 @@ description: An end-to-end walkthrough of creating NuGet packages using a Window author: JonDouglas ms.author: jodou ms.date: 03/21/2017 -ms.topic: tutorial +ms.topic: tutorial --- # Create UWP packages diff --git a/docs/guides/Native-Packages.md b/docs/guides/Native-Packages.md index d35d663c5..4fe115f45 100644 --- a/docs/guides/Native-Packages.md +++ b/docs/guides/Native-Packages.md @@ -4,7 +4,7 @@ description: Details on creating native NuGet packages that contains C++ code in author: JonDouglas ms.author: jodou ms.date: 01/09/2017 -ms.topic: conceptual +ms.topic: conceptual --- # Creating native packages diff --git a/docs/guides/analyzers-conventions.md b/docs/guides/analyzers-conventions.md index 8122c81dc..e8f6b6478 100644 --- a/docs/guides/analyzers-conventions.md +++ b/docs/guides/analyzers-conventions.md @@ -4,7 +4,7 @@ description: Conventions for .NET analyzers that are packaged and distributed wi author: JonDouglas ms.author: jodou ms.date: 01/09/2017 -ms.topic: conceptual +ms.topic: conceptual --- # Analyzer NuGet formats diff --git a/docs/guides/api/query-for-all-published-packages.md b/docs/guides/api/query-for-all-published-packages.md index c287b2b87..4daee7b68 100644 --- a/docs/guides/api/query-for-all-published-packages.md +++ b/docs/guides/api/query-for-all-published-packages.md @@ -4,7 +4,7 @@ description: Using the NuGet API, you can query for all packages published to nu author: joelverhagen ms.author: jver ms.date: 11/02/2017 -ms.topic: tutorial +ms.topic: tutorial ms.reviewer: kraigb --- diff --git a/docs/guides/create-packages-for-xamarin.md b/docs/guides/create-packages-for-xamarin.md index 0ec741a5f..7155472ba 100644 --- a/docs/guides/create-packages-for-xamarin.md +++ b/docs/guides/create-packages-for-xamarin.md @@ -4,7 +4,7 @@ description: An end-to-end walkthrough of creating NuGet packages for Xamarin th author: JonDouglas ms.author: jodou ms.date: 11/05/2019 -ms.topic: tutorial +ms.topic: tutorial --- # Create packages for Xamarin with Visual Studio 2017 or 2019 diff --git a/docs/hosting-packages/Local-Feeds.md b/docs/hosting-packages/Local-Feeds.md index de95954d3..2d47ad1b6 100644 --- a/docs/hosting-packages/Local-Feeds.md +++ b/docs/hosting-packages/Local-Feeds.md @@ -4,7 +4,7 @@ description: How to create a local feed for NuGet packages using folders on your author: JonDouglas ms.author: jodou ms.date: 12/06/2017 -ms.topic: conceptual +ms.topic: conceptual --- # Local feeds diff --git a/docs/hosting-packages/NuGet-Server.md b/docs/hosting-packages/NuGet-Server.md index 19d2467c6..e3162a56e 100644 --- a/docs/hosting-packages/NuGet-Server.md +++ b/docs/hosting-packages/NuGet-Server.md @@ -4,7 +4,7 @@ description: How to create and host a NuGet package feed on any server running I author: JonDouglas ms.author: jodou ms.date: 03/13/2018 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet.Server diff --git a/docs/hosting-packages/Overview.md b/docs/hosting-packages/Overview.md index 3671910cf..8557eb8d9 100644 --- a/docs/hosting-packages/Overview.md +++ b/docs/hosting-packages/Overview.md @@ -4,7 +4,7 @@ description: An overview of opens for hosting your own NuGet package feeds or ga author: JonDouglas ms.author: jodou ms.date: 08/25/2017 -ms.topic: conceptual +ms.topic: conceptual ms.reviewer: anangaur --- diff --git a/docs/install-nuget-client-tools.md b/docs/install-nuget-client-tools.md index fbdb09bdc..d5907a7c3 100644 --- a/docs/install-nuget-client-tools.md +++ b/docs/install-nuget-client-tools.md @@ -4,7 +4,7 @@ description: Guidance on installing client tools, the dotnet and nuget command-l author: JonDouglas ms.author: jodou ms.date: 06/20/2019 -ms.topic: quickstart +ms.topic: quickstart --- # Install NuGet client tools diff --git a/docs/nuget-org/Deprecate-packages.md b/docs/nuget-org/Deprecate-packages.md index efd8b6e23..1e8385815 100644 --- a/docs/nuget-org/Deprecate-packages.md +++ b/docs/nuget-org/Deprecate-packages.md @@ -4,7 +4,7 @@ description: Detailed description on the process of deprecating packages and how author: anangaur ms.author: anangaur ms.date: 09/23/2019 -ms.topic: conceptual +ms.topic: conceptual ms.reviewer: karann-msft --- diff --git a/docs/nuget-org/Publish-a-package.md b/docs/nuget-org/Publish-a-package.md index 627ce921b..4806c98f9 100644 --- a/docs/nuget-org/Publish-a-package.md +++ b/docs/nuget-org/Publish-a-package.md @@ -4,7 +4,7 @@ description: Detailed instructions for how to publish a NuGet package to nuget.o author: JonDouglas ms.author: jodou ms.date: 05/18/2018 -ms.topic: conceptual +ms.topic: conceptual ms.reviewer: anangaur --- diff --git a/docs/nuget-org/id-prefix-reservation.md b/docs/nuget-org/id-prefix-reservation.md index ce98a2f08..43c885fbc 100644 --- a/docs/nuget-org/id-prefix-reservation.md +++ b/docs/nuget-org/id-prefix-reservation.md @@ -4,7 +4,7 @@ description: Package ID Prefix Reservation feature description and author guide. author: JonDouglas ms.author: jodou ms.date: 09/07/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: karann --- diff --git a/docs/nuget-org/individual-accounts.md b/docs/nuget-org/individual-accounts.md index df90470cb..317f2f078 100644 --- a/docs/nuget-org/individual-accounts.md +++ b/docs/nuget-org/individual-accounts.md @@ -4,7 +4,7 @@ description: Individual acccounts on NuGet.org are required to publish packages author: mikejo5000 ms.author: mikejo ms.date: 06/05/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Individual accounts on NuGet.org diff --git a/docs/nuget-org/nuget-org-faq.md b/docs/nuget-org/nuget-org-faq.md index 70d4a8878..ed769f46a 100644 --- a/docs/nuget-org/nuget-org-faq.md +++ b/docs/nuget-org/nuget-org-faq.md @@ -4,7 +4,7 @@ description: Common questions and answers for working with the NuGet gallery. author: shishirx34 ms.author: shishirh ms.date: 06/05/2019 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet.org frequently-asked questions diff --git a/docs/nuget-org/organizations-on-nuget-org.md b/docs/nuget-org/organizations-on-nuget-org.md index 4129a65e9..8d836e454 100644 --- a/docs/nuget-org/organizations-on-nuget-org.md +++ b/docs/nuget-org/organizations-on-nuget-org.md @@ -4,7 +4,7 @@ description: Organizations on NuGet.org helps you to manage packages published b author: anangaur ms.author: anangaur ms.date: 04/10/2018 -ms.topic: conceptual +ms.topic: conceptual ms.reviewer: - kraigb - camsoper diff --git a/docs/nuget-org/overview-nuget-org.md b/docs/nuget-org/overview-nuget-org.md index 43a0376c4..33dbf764c 100644 --- a/docs/nuget-org/overview-nuget-org.md +++ b/docs/nuget-org/overview-nuget-org.md @@ -4,7 +4,7 @@ description: Overview of NuGet.org author: mikejo5000 ms.author: mikejo ms.date: 06/05/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Overview of NuGet.org diff --git a/docs/nuget-org/policies/data-requests.md b/docs/nuget-org/policies/data-requests.md index 57cab4356..3c57e0995 100644 --- a/docs/nuget-org/policies/data-requests.md +++ b/docs/nuget-org/policies/data-requests.md @@ -4,7 +4,7 @@ description: Policies for requesting user data export and delete author: JonDouglas ms.author: jodou ms.date: 05/01/2018 -ms.topic: conceptual +ms.topic: conceptual --- # User Data Requests diff --git a/docs/nuget-org/policies/deleting-packages.md b/docs/nuget-org/policies/deleting-packages.md index 3a5502206..ee86b3724 100644 --- a/docs/nuget-org/policies/deleting-packages.md +++ b/docs/nuget-org/policies/deleting-packages.md @@ -4,7 +4,7 @@ description: Policies for unlisting packages from nuget.org; permanent deletion author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: conceptual +ms.topic: conceptual --- # Deleting packages diff --git a/docs/nuget-org/policies/dispute-resolution.md b/docs/nuget-org/policies/dispute-resolution.md index 94a1aea40..b8def5f68 100644 --- a/docs/nuget-org/policies/dispute-resolution.md +++ b/docs/nuget-org/policies/dispute-resolution.md @@ -4,7 +4,7 @@ description: The process for resolving disputes between NuGet package publishers author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: conceptual +ms.topic: conceptual --- # Resolving disputes over NuGet package names diff --git a/docs/nuget-org/policies/export-control.md b/docs/nuget-org/policies/export-control.md index a0ce51d75..edccf33b7 100644 --- a/docs/nuget-org/policies/export-control.md +++ b/docs/nuget-org/policies/export-control.md @@ -4,7 +4,7 @@ description: Policies governing export control laws author: JonDouglas ms.author: jodou ms.date: 06/27/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Export Control Policy diff --git a/docs/nuget-org/scoped-api-keys.md b/docs/nuget-org/scoped-api-keys.md index 66f2d4462..87060bacb 100644 --- a/docs/nuget-org/scoped-api-keys.md +++ b/docs/nuget-org/scoped-api-keys.md @@ -4,7 +4,7 @@ description: Take control of API keys that you use to push packages author: mikejo5000 ms.author: mikejo ms.date: 06/04/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Scoped API keys diff --git a/docs/policies/Ecosystem.md b/docs/policies/Ecosystem.md index 542a0eb8f..39e409a04 100644 --- a/docs/policies/Ecosystem.md +++ b/docs/policies/Ecosystem.md @@ -4,7 +4,7 @@ description: Comprehensive resources in the NuGet ecosystem including NuGet sour author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: conceptual +ms.topic: conceptual --- # An overview of the NuGet ecosystem diff --git a/docs/policies/Governance.md b/docs/policies/Governance.md index fce9b9a5e..1bd107c12 100644 --- a/docs/policies/Governance.md +++ b/docs/policies/Governance.md @@ -4,7 +4,7 @@ description: The governance model for NuGet, including roles and responsibilitie author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet governance diff --git a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md index a56ae04ab..385565f3f 100644 --- a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md +++ b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md @@ -4,7 +4,7 @@ description: A walkthrough tutorial on creating and publishing a NuGet package u author: JonDouglas ms.author: jodou ms.date: 05/24/2019 -ms.topic: quickstart +ms.topic: quickstart --- # Quickstart: Create and publish a package (dotnet CLI) diff --git a/docs/quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md b/docs/quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md index 0711b66e2..1c8c1deb2 100644 --- a/docs/quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md +++ b/docs/quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md @@ -4,7 +4,7 @@ description: A walkthrough tutorial on creating and publishing a .NET Framework author: JonDouglas ms.author: jodou ms.date: 05/13/2018 -ms.topic: quickstart +ms.topic: quickstart --- # Quickstart: Create and publish a package using Visual Studio (.NET Framework, Windows) diff --git a/docs/quickstart/create-and-publish-a-package-using-visual-studio.md b/docs/quickstart/create-and-publish-a-package-using-visual-studio.md index ab2615c72..60730fa72 100644 --- a/docs/quickstart/create-and-publish-a-package-using-visual-studio.md +++ b/docs/quickstart/create-and-publish-a-package-using-visual-studio.md @@ -4,7 +4,7 @@ description: A walkthrough tutorial on creating and publishing a .NET Standard N author: JonDouglas ms.author: jodou ms.date: 08/16/2019 -ms.topic: quickstart +ms.topic: quickstart --- # Quickstart: Create and publish a NuGet package using Visual Studio (.NET Standard, Windows only) diff --git a/docs/quickstart/install-and-use-a-package-in-visual-studio-mac.md b/docs/quickstart/install-and-use-a-package-in-visual-studio-mac.md index 8151b05ee..2f002baf0 100644 --- a/docs/quickstart/install-and-use-a-package-in-visual-studio-mac.md +++ b/docs/quickstart/install-and-use-a-package-in-visual-studio-mac.md @@ -4,7 +4,7 @@ description: A walkthrough tutorial on the process of installing and using a NuG author: jmatthiesen ms.author: jomatthi ms.date: 08/14/2019 -ms.topic: quickstart +ms.topic: quickstart --- # Quickstart: Install and use a package in Visual Studio for Mac diff --git a/docs/quickstart/install-and-use-a-package-in-visual-studio.md b/docs/quickstart/install-and-use-a-package-in-visual-studio.md index 4a6572204..80d47e2f1 100644 --- a/docs/quickstart/install-and-use-a-package-in-visual-studio.md +++ b/docs/quickstart/install-and-use-a-package-in-visual-studio.md @@ -4,7 +4,7 @@ description: A walkthrough tutorial on the process of installing and using a NuG author: JonDouglas ms.author: jodou ms.date: 07/24/2018 -ms.topic: quickstart +ms.topic: quickstart --- # Quickstart: Install and use a package in Visual Studio (Windows only) diff --git a/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md b/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md index 1b239805e..e4a97d8d8 100644 --- a/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md +++ b/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md @@ -4,7 +4,7 @@ description: A walkthrough tutorial on the process of installing and using a NuG author: JonDouglas ms.author: jodou ms.date: 01/23/2018 -ms.topic: quickstart +ms.topic: quickstart --- # Quickstart: Install and use a package using the dotnet CLI diff --git a/docs/reference/Errors-and-Warnings.md b/docs/reference/Errors-and-Warnings.md index 62cb85f48..67ba7be62 100644 --- a/docs/reference/Errors-and-Warnings.md +++ b/docs/reference/Errors-and-Warnings.md @@ -4,7 +4,7 @@ description: Complete reference for warnings and errors issued from NuGet during author: JonDouglas ms.author: jodou ms.date: 05/18/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur --- diff --git a/docs/reference/NuGet-Client-SDK.md b/docs/reference/NuGet-Client-SDK.md index 5078be0b0..219b984a7 100644 --- a/docs/reference/NuGet-Client-SDK.md +++ b/docs/reference/NuGet-Client-SDK.md @@ -4,7 +4,7 @@ description: The API is evolving and not yet documented, but examples are availa author: JonDouglas ms.author: jodou ms.date: 01/09/2018 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet Client SDK diff --git a/docs/reference/PowerShell-Reference.md b/docs/reference/PowerShell-Reference.md index 3a8bcf645..600719182 100644 --- a/docs/reference/PowerShell-Reference.md +++ b/docs/reference/PowerShell-Reference.md @@ -4,7 +4,7 @@ description: The complete reference to PowerShell commands available in the NuGe author: JonDouglas ms.author: jodou ms.date: 10/02/2017 -ms.topic: reference +ms.topic: reference --- # PowerShell reference diff --git a/docs/reference/Signed-Packages-Reference.md b/docs/reference/Signed-Packages-Reference.md index a91eae13e..f32c2cd7f 100644 --- a/docs/reference/Signed-Packages-Reference.md +++ b/docs/reference/Signed-Packages-Reference.md @@ -4,7 +4,7 @@ description: Requirements for NuGet package signing. author: rido-min ms.author: rmpablos ms.date: 05/18/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: ananguar --- diff --git a/docs/reference/cli-reference/cli-ref-add.md b/docs/reference/cli-reference/cli-ref-add.md index 1f34fcb31..ca0a5f341 100644 --- a/docs/reference/cli-reference/cli-ref-add.md +++ b/docs/reference/cli-reference/cli-ref-add.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe add command author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # add command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-config.md b/docs/reference/cli-reference/cli-ref-config.md index c6a8a726e..35576692d 100644 --- a/docs/reference/cli-reference/cli-ref-config.md +++ b/docs/reference/cli-reference/cli-ref-config.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe config command author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # config command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-delete.md b/docs/reference/cli-reference/cli-ref-delete.md index af7bc2c57..d8e4636c7 100644 --- a/docs/reference/cli-reference/cli-ref-delete.md +++ b/docs/reference/cli-reference/cli-ref-delete.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe delete command author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # delete command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-environment-variables.md b/docs/reference/cli-reference/cli-ref-environment-variables.md index 7220ed04a..0cc2c2aef 100644 --- a/docs/reference/cli-reference/cli-ref-environment-variables.md +++ b/docs/reference/cli-reference/cli-ref-environment-variables.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe environment variables author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # NuGet CLI environment variables diff --git a/docs/reference/cli-reference/cli-ref-help.md b/docs/reference/cli-reference/cli-ref-help.md index ddd222204..1a647e120 100644 --- a/docs/reference/cli-reference/cli-ref-help.md +++ b/docs/reference/cli-reference/cli-ref-help.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe help command author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # help or ? command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-init.md b/docs/reference/cli-reference/cli-ref-init.md index 6b0289623..eef93c7de 100644 --- a/docs/reference/cli-reference/cli-ref-init.md +++ b/docs/reference/cli-reference/cli-ref-init.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe init command author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # init command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-install.md b/docs/reference/cli-reference/cli-ref-install.md index e0b88655b..5527f64e5 100644 --- a/docs/reference/cli-reference/cli-ref-install.md +++ b/docs/reference/cli-reference/cli-ref-install.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe install command author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # install command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-list.md b/docs/reference/cli-reference/cli-ref-list.md index b2171fa5f..9d5b33a10 100644 --- a/docs/reference/cli-reference/cli-ref-list.md +++ b/docs/reference/cli-reference/cli-ref-list.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe list command author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # list command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-locals.md b/docs/reference/cli-reference/cli-ref-locals.md index 7baac4cea..5321bf3e4 100644 --- a/docs/reference/cli-reference/cli-ref-locals.md +++ b/docs/reference/cli-reference/cli-ref-locals.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe locals command author: JonDouglas ms.author: jodou ms.date: 03/19/2018 -ms.topic: reference +ms.topic: reference --- # locals command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-long-path.md b/docs/reference/cli-reference/cli-ref-long-path.md index 44e9fa572..5e4297c7c 100644 --- a/docs/reference/cli-reference/cli-ref-long-path.md +++ b/docs/reference/cli-reference/cli-ref-long-path.md @@ -4,7 +4,7 @@ description: Reference for nuget.exe long path support author: zhili1208 ms.author: lzhi ms.date: 07/12/2018 -ms.topic: reference +ms.topic: reference --- # Long Path Support (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-mirror.md b/docs/reference/cli-reference/cli-ref-mirror.md index 6ee95cdc0..1e8fa5d48 100644 --- a/docs/reference/cli-reference/cli-ref-mirror.md +++ b/docs/reference/cli-reference/cli-ref-mirror.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe mirror command author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # mirror command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-pack.md b/docs/reference/cli-reference/cli-ref-pack.md index 2679a0091..54448a6ba 100644 --- a/docs/reference/cli-reference/cli-ref-pack.md +++ b/docs/reference/cli-reference/cli-ref-pack.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe pack command author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # pack command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-push.md b/docs/reference/cli-reference/cli-ref-push.md index 769566f9d..3c1ec2bbf 100644 --- a/docs/reference/cli-reference/cli-ref-push.md +++ b/docs/reference/cli-reference/cli-ref-push.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe push command author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # push command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-restore.md b/docs/reference/cli-reference/cli-ref-restore.md index bf62e4da3..b780acb9d 100644 --- a/docs/reference/cli-reference/cli-ref-restore.md +++ b/docs/reference/cli-reference/cli-ref-restore.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe restore command author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # restore command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-search.md b/docs/reference/cli-reference/cli-ref-search.md index a95ea8b35..2df53629f 100644 --- a/docs/reference/cli-reference/cli-ref-search.md +++ b/docs/reference/cli-reference/cli-ref-search.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe search command author: JonDouglas ms.author: jodou ms.date: 08/17/2020 -ms.topic: reference +ms.topic: reference --- # search command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-setapikey.md b/docs/reference/cli-reference/cli-ref-setapikey.md index d074f968c..a56bbba0d 100644 --- a/docs/reference/cli-reference/cli-ref-setapikey.md +++ b/docs/reference/cli-reference/cli-ref-setapikey.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe setapikey command author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # setapikey command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-sign.md b/docs/reference/cli-reference/cli-ref-sign.md index 732a71b47..5a97280d2 100644 --- a/docs/reference/cli-reference/cli-ref-sign.md +++ b/docs/reference/cli-reference/cli-ref-sign.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe sign command author: dtivel ms.author: dtivel ms.date: 03/06/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: rmpablos --- diff --git a/docs/reference/cli-reference/cli-ref-sources.md b/docs/reference/cli-reference/cli-ref-sources.md index 7f1f5b9d6..8c40f9027 100644 --- a/docs/reference/cli-reference/cli-ref-sources.md +++ b/docs/reference/cli-reference/cli-ref-sources.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe sources command author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # sources command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-spec.md b/docs/reference/cli-reference/cli-ref-spec.md index 04e206701..d336e80b8 100644 --- a/docs/reference/cli-reference/cli-ref-spec.md +++ b/docs/reference/cli-reference/cli-ref-spec.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe spec command author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # spec command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-trusted-signers.md b/docs/reference/cli-reference/cli-ref-trusted-signers.md index 2b3b11c7f..143091727 100644 --- a/docs/reference/cli-reference/cli-ref-trusted-signers.md +++ b/docs/reference/cli-reference/cli-ref-trusted-signers.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe trusted-signers command author: patbel ms.author: patbel ms.date: 11/12/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: rmpablos --- diff --git a/docs/reference/cli-reference/cli-ref-update.md b/docs/reference/cli-reference/cli-ref-update.md index 0b28f30b8..27baaeaaa 100644 --- a/docs/reference/cli-reference/cli-ref-update.md +++ b/docs/reference/cli-reference/cli-ref-update.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe update command author: JonDouglas ms.author: jodou ms.date: 12/07/2017 -ms.topic: reference +ms.topic: reference --- # update command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-verify.md b/docs/reference/cli-reference/cli-ref-verify.md index ab6dda990..413c9d0f5 100644 --- a/docs/reference/cli-reference/cli-ref-verify.md +++ b/docs/reference/cli-reference/cli-ref-verify.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe verify command author: dtivel ms.author: dtivel ms.date: 03/06/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: rmpablos --- diff --git a/docs/reference/dotnet-Commands.md b/docs/reference/dotnet-Commands.md index 5b7f59b9f..7f22ff288 100644 --- a/docs/reference/dotnet-Commands.md +++ b/docs/reference/dotnet-Commands.md @@ -4,7 +4,7 @@ description: A short reference for NuGet-related commands using the dotnet comma author: JonDouglas ms.author: jodou ms.date: 06/24/2019 -ms.topic: conceptual +ms.topic: conceptual --- # dotnet CLI commands diff --git a/docs/reference/errors-and-warnings/NU1000.md b/docs/reference/errors-and-warnings/NU1000.md index 95cee7a11..9185b39fb 100644 --- a/docs/reference/errors-and-warnings/NU1000.md +++ b/docs/reference/errors-and-warnings/NU1000.md @@ -4,7 +4,7 @@ description: NU1000 error code author: zhili1208 ms.author: lzhi ms.date: 06/20/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1000" diff --git a/docs/reference/errors-and-warnings/NU1001.md b/docs/reference/errors-and-warnings/NU1001.md index 4b83c50c4..6c5d99e23 100644 --- a/docs/reference/errors-and-warnings/NU1001.md +++ b/docs/reference/errors-and-warnings/NU1001.md @@ -4,7 +4,7 @@ description: NU1001 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1001" diff --git a/docs/reference/errors-and-warnings/NU1002.md b/docs/reference/errors-and-warnings/NU1002.md index 2b9e538cb..f91cf23b9 100644 --- a/docs/reference/errors-and-warnings/NU1002.md +++ b/docs/reference/errors-and-warnings/NU1002.md @@ -4,7 +4,7 @@ description: NU1002 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1002" diff --git a/docs/reference/errors-and-warnings/NU1003.md b/docs/reference/errors-and-warnings/NU1003.md index e23fe71e6..2a4ea03c8 100644 --- a/docs/reference/errors-and-warnings/NU1003.md +++ b/docs/reference/errors-and-warnings/NU1003.md @@ -4,7 +4,7 @@ description: NU1003 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1003" diff --git a/docs/reference/errors-and-warnings/NU1100.md b/docs/reference/errors-and-warnings/NU1100.md index 2eab04263..7c84bd4a9 100644 --- a/docs/reference/errors-and-warnings/NU1100.md +++ b/docs/reference/errors-and-warnings/NU1100.md @@ -4,7 +4,7 @@ description: NU1100 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1100" diff --git a/docs/reference/errors-and-warnings/NU1101.md b/docs/reference/errors-and-warnings/NU1101.md index d947f205d..6229e8717 100644 --- a/docs/reference/errors-and-warnings/NU1101.md +++ b/docs/reference/errors-and-warnings/NU1101.md @@ -4,7 +4,7 @@ description: NU1101 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1101" diff --git a/docs/reference/errors-and-warnings/NU1102.md b/docs/reference/errors-and-warnings/NU1102.md index 5585c7555..5ce81392d 100644 --- a/docs/reference/errors-and-warnings/NU1102.md +++ b/docs/reference/errors-and-warnings/NU1102.md @@ -4,7 +4,7 @@ description: NU1102 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1102" diff --git a/docs/reference/errors-and-warnings/NU1103.md b/docs/reference/errors-and-warnings/NU1103.md index e062285ad..10cd5b107 100644 --- a/docs/reference/errors-and-warnings/NU1103.md +++ b/docs/reference/errors-and-warnings/NU1103.md @@ -4,7 +4,7 @@ description: NU1103 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1103" diff --git a/docs/reference/errors-and-warnings/NU1104.md b/docs/reference/errors-and-warnings/NU1104.md index 6d5da8854..1efb732f2 100644 --- a/docs/reference/errors-and-warnings/NU1104.md +++ b/docs/reference/errors-and-warnings/NU1104.md @@ -4,7 +4,7 @@ description: NU1104 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1104" diff --git a/docs/reference/errors-and-warnings/NU1105.md b/docs/reference/errors-and-warnings/NU1105.md index f6c4f9f93..d8d8f6449 100644 --- a/docs/reference/errors-and-warnings/NU1105.md +++ b/docs/reference/errors-and-warnings/NU1105.md @@ -4,7 +4,7 @@ description: NU1105 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1105" diff --git a/docs/reference/errors-and-warnings/NU1106.md b/docs/reference/errors-and-warnings/NU1106.md index 081219020..6f28426e8 100644 --- a/docs/reference/errors-and-warnings/NU1106.md +++ b/docs/reference/errors-and-warnings/NU1106.md @@ -4,7 +4,7 @@ description: NU1106 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1106" diff --git a/docs/reference/errors-and-warnings/NU1107.md b/docs/reference/errors-and-warnings/NU1107.md index 9888cbd4c..9b63b5d3e 100644 --- a/docs/reference/errors-and-warnings/NU1107.md +++ b/docs/reference/errors-and-warnings/NU1107.md @@ -4,7 +4,7 @@ description: NU1107 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1107" diff --git a/docs/reference/errors-and-warnings/NU1108.md b/docs/reference/errors-and-warnings/NU1108.md index b5eb9c862..6b98d4771 100644 --- a/docs/reference/errors-and-warnings/NU1108.md +++ b/docs/reference/errors-and-warnings/NU1108.md @@ -4,7 +4,7 @@ description: NU1108 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1108" diff --git a/docs/reference/errors-and-warnings/NU1201.md b/docs/reference/errors-and-warnings/NU1201.md index 6fd890c0b..08acbf03f 100644 --- a/docs/reference/errors-and-warnings/NU1201.md +++ b/docs/reference/errors-and-warnings/NU1201.md @@ -4,7 +4,7 @@ description: NU1201 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1201" diff --git a/docs/reference/errors-and-warnings/NU1202.md b/docs/reference/errors-and-warnings/NU1202.md index 512cc5b50..20a859cab 100644 --- a/docs/reference/errors-and-warnings/NU1202.md +++ b/docs/reference/errors-and-warnings/NU1202.md @@ -4,7 +4,7 @@ description: NU1202 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1202" diff --git a/docs/reference/errors-and-warnings/NU1203.md b/docs/reference/errors-and-warnings/NU1203.md index cf387a274..086e45a59 100644 --- a/docs/reference/errors-and-warnings/NU1203.md +++ b/docs/reference/errors-and-warnings/NU1203.md @@ -4,7 +4,7 @@ description: NU1203 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1203" diff --git a/docs/reference/errors-and-warnings/NU1401.md b/docs/reference/errors-and-warnings/NU1401.md index f365872ae..ba63dbe65 100644 --- a/docs/reference/errors-and-warnings/NU1401.md +++ b/docs/reference/errors-and-warnings/NU1401.md @@ -4,7 +4,7 @@ description: NU1401 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1401" diff --git a/docs/reference/errors-and-warnings/NU1500.md b/docs/reference/errors-and-warnings/NU1500.md index ba3ed7861..f97e376ec 100644 --- a/docs/reference/errors-and-warnings/NU1500.md +++ b/docs/reference/errors-and-warnings/NU1500.md @@ -4,7 +4,7 @@ description: NU1500 warning code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1500" diff --git a/docs/reference/errors-and-warnings/NU1501.md b/docs/reference/errors-and-warnings/NU1501.md index e315acc9d..fe63d7bf6 100644 --- a/docs/reference/errors-and-warnings/NU1501.md +++ b/docs/reference/errors-and-warnings/NU1501.md @@ -4,7 +4,7 @@ description: NU1501 warning code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1501" diff --git a/docs/reference/errors-and-warnings/NU1502.md b/docs/reference/errors-and-warnings/NU1502.md index ef225d101..b9302e2a9 100644 --- a/docs/reference/errors-and-warnings/NU1502.md +++ b/docs/reference/errors-and-warnings/NU1502.md @@ -4,7 +4,7 @@ description: NU1502 warning code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1502" diff --git a/docs/reference/errors-and-warnings/NU1503.md b/docs/reference/errors-and-warnings/NU1503.md index 3e472cd1e..aa649e2bf 100644 --- a/docs/reference/errors-and-warnings/NU1503.md +++ b/docs/reference/errors-and-warnings/NU1503.md @@ -4,7 +4,7 @@ description: NU1503 warning code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1503" diff --git a/docs/reference/errors-and-warnings/NU1601.md b/docs/reference/errors-and-warnings/NU1601.md index 174de7403..6cb027fb1 100644 --- a/docs/reference/errors-and-warnings/NU1601.md +++ b/docs/reference/errors-and-warnings/NU1601.md @@ -4,7 +4,7 @@ description: NU1601 warning code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1601" diff --git a/docs/reference/errors-and-warnings/NU1602.md b/docs/reference/errors-and-warnings/NU1602.md index afcfaa095..ce734b36b 100644 --- a/docs/reference/errors-and-warnings/NU1602.md +++ b/docs/reference/errors-and-warnings/NU1602.md @@ -4,7 +4,7 @@ description: NU1602 warning code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1602" diff --git a/docs/reference/errors-and-warnings/NU1603.md b/docs/reference/errors-and-warnings/NU1603.md index 2b4e2ba4c..fcf577678 100644 --- a/docs/reference/errors-and-warnings/NU1603.md +++ b/docs/reference/errors-and-warnings/NU1603.md @@ -4,7 +4,7 @@ description: NU1603 warning code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1603" diff --git a/docs/reference/errors-and-warnings/NU1604.md b/docs/reference/errors-and-warnings/NU1604.md index 99eb4d2d1..450df7b9c 100644 --- a/docs/reference/errors-and-warnings/NU1604.md +++ b/docs/reference/errors-and-warnings/NU1604.md @@ -4,7 +4,7 @@ description: NU1604 warning code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1604" diff --git a/docs/reference/errors-and-warnings/NU1605.md b/docs/reference/errors-and-warnings/NU1605.md index b0169a013..3c1eb53f6 100644 --- a/docs/reference/errors-and-warnings/NU1605.md +++ b/docs/reference/errors-and-warnings/NU1605.md @@ -4,7 +4,7 @@ description: NU1605 warning code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1605" diff --git a/docs/reference/errors-and-warnings/NU1608.md b/docs/reference/errors-and-warnings/NU1608.md index 888d06a00..b9f2e7179 100644 --- a/docs/reference/errors-and-warnings/NU1608.md +++ b/docs/reference/errors-and-warnings/NU1608.md @@ -4,7 +4,7 @@ description: NU1608 warning code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1608" diff --git a/docs/reference/errors-and-warnings/NU1701.md b/docs/reference/errors-and-warnings/NU1701.md index e3f3ea11a..93a42621b 100644 --- a/docs/reference/errors-and-warnings/NU1701.md +++ b/docs/reference/errors-and-warnings/NU1701.md @@ -4,7 +4,7 @@ description: NU1701 warning code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1701" diff --git a/docs/reference/errors-and-warnings/NU1801.md b/docs/reference/errors-and-warnings/NU1801.md index 161119c82..fb801fb34 100644 --- a/docs/reference/errors-and-warnings/NU1801.md +++ b/docs/reference/errors-and-warnings/NU1801.md @@ -4,7 +4,7 @@ description: NU1801 warning code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1801" diff --git a/docs/reference/errors-and-warnings/NU3000.md b/docs/reference/errors-and-warnings/NU3000.md index d71cd9e7e..77a7e651c 100644 --- a/docs/reference/errors-and-warnings/NU3000.md +++ b/docs/reference/errors-and-warnings/NU3000.md @@ -4,7 +4,7 @@ description: NU3000 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3000 diff --git a/docs/reference/errors-and-warnings/NU3001.md b/docs/reference/errors-and-warnings/NU3001.md index 424ec1100..b84bd7df0 100644 --- a/docs/reference/errors-and-warnings/NU3001.md +++ b/docs/reference/errors-and-warnings/NU3001.md @@ -4,7 +4,7 @@ description: NU3001 Error code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3001 diff --git a/docs/reference/errors-and-warnings/NU3002.md b/docs/reference/errors-and-warnings/NU3002.md index abd57086b..60bc9525a 100644 --- a/docs/reference/errors-and-warnings/NU3002.md +++ b/docs/reference/errors-and-warnings/NU3002.md @@ -4,7 +4,7 @@ description: NU3002 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3002 diff --git a/docs/reference/errors-and-warnings/NU3003.md b/docs/reference/errors-and-warnings/NU3003.md index 32d509f14..63f32ba59 100644 --- a/docs/reference/errors-and-warnings/NU3003.md +++ b/docs/reference/errors-and-warnings/NU3003.md @@ -4,7 +4,7 @@ description: NU3003 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3003 diff --git a/docs/reference/errors-and-warnings/NU3004.md b/docs/reference/errors-and-warnings/NU3004.md index 17a2de4f6..dc78c6c12 100644 --- a/docs/reference/errors-and-warnings/NU3004.md +++ b/docs/reference/errors-and-warnings/NU3004.md @@ -4,7 +4,7 @@ description: NU3004 Error code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3004 diff --git a/docs/reference/errors-and-warnings/NU3005.md b/docs/reference/errors-and-warnings/NU3005.md index 4fee4e186..f30b17d63 100644 --- a/docs/reference/errors-and-warnings/NU3005.md +++ b/docs/reference/errors-and-warnings/NU3005.md @@ -4,7 +4,7 @@ description: NU3005 Error code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3005 diff --git a/docs/reference/errors-and-warnings/NU3006.md b/docs/reference/errors-and-warnings/NU3006.md index 08533cb4b..c009d0189 100644 --- a/docs/reference/errors-and-warnings/NU3006.md +++ b/docs/reference/errors-and-warnings/NU3006.md @@ -4,7 +4,7 @@ description: NU3006 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3006 diff --git a/docs/reference/errors-and-warnings/NU3007.md b/docs/reference/errors-and-warnings/NU3007.md index b6972611e..b51d8fdab 100644 --- a/docs/reference/errors-and-warnings/NU3007.md +++ b/docs/reference/errors-and-warnings/NU3007.md @@ -4,7 +4,7 @@ description: NU3007 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3007 diff --git a/docs/reference/errors-and-warnings/NU3008.md b/docs/reference/errors-and-warnings/NU3008.md index 7e9c5509c..06150d5d3 100644 --- a/docs/reference/errors-and-warnings/NU3008.md +++ b/docs/reference/errors-and-warnings/NU3008.md @@ -4,7 +4,7 @@ description: NU3008 Error code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3008 diff --git a/docs/reference/errors-and-warnings/NU3009.md b/docs/reference/errors-and-warnings/NU3009.md index e45e9ee5d..a73ef31e4 100644 --- a/docs/reference/errors-and-warnings/NU3009.md +++ b/docs/reference/errors-and-warnings/NU3009.md @@ -4,7 +4,7 @@ description: NU3009 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3009 diff --git a/docs/reference/errors-and-warnings/NU3010.md b/docs/reference/errors-and-warnings/NU3010.md index 9257129d9..ff43e6641 100644 --- a/docs/reference/errors-and-warnings/NU3010.md +++ b/docs/reference/errors-and-warnings/NU3010.md @@ -4,7 +4,7 @@ description: NU3010 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3010 diff --git a/docs/reference/errors-and-warnings/NU3011.md b/docs/reference/errors-and-warnings/NU3011.md index ce8f9802d..c84092e39 100644 --- a/docs/reference/errors-and-warnings/NU3011.md +++ b/docs/reference/errors-and-warnings/NU3011.md @@ -4,7 +4,7 @@ description: NU3011 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3011 diff --git a/docs/reference/errors-and-warnings/NU3012.md b/docs/reference/errors-and-warnings/NU3012.md index fe4853df2..ce050748e 100644 --- a/docs/reference/errors-and-warnings/NU3012.md +++ b/docs/reference/errors-and-warnings/NU3012.md @@ -4,7 +4,7 @@ description: NU3012 Error code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3012 diff --git a/docs/reference/errors-and-warnings/NU3013.md b/docs/reference/errors-and-warnings/NU3013.md index e8180bd75..5cfc305a6 100644 --- a/docs/reference/errors-and-warnings/NU3013.md +++ b/docs/reference/errors-and-warnings/NU3013.md @@ -4,7 +4,7 @@ description: NU3013 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3013 diff --git a/docs/reference/errors-and-warnings/NU3014.md b/docs/reference/errors-and-warnings/NU3014.md index db7748cc5..d0dc35571 100644 --- a/docs/reference/errors-and-warnings/NU3014.md +++ b/docs/reference/errors-and-warnings/NU3014.md @@ -4,7 +4,7 @@ description: NU3014 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3014 diff --git a/docs/reference/errors-and-warnings/NU3015.md b/docs/reference/errors-and-warnings/NU3015.md index 8443439e8..1eeef3d99 100644 --- a/docs/reference/errors-and-warnings/NU3015.md +++ b/docs/reference/errors-and-warnings/NU3015.md @@ -4,7 +4,7 @@ description: NU3015 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3015 diff --git a/docs/reference/errors-and-warnings/NU3016.md b/docs/reference/errors-and-warnings/NU3016.md index eb43ec64e..8882286f3 100644 --- a/docs/reference/errors-and-warnings/NU3016.md +++ b/docs/reference/errors-and-warnings/NU3016.md @@ -4,7 +4,7 @@ description: NU3016 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3016 diff --git a/docs/reference/errors-and-warnings/NU3017.md b/docs/reference/errors-and-warnings/NU3017.md index 8a7a038f4..260d529aa 100644 --- a/docs/reference/errors-and-warnings/NU3017.md +++ b/docs/reference/errors-and-warnings/NU3017.md @@ -4,7 +4,7 @@ description: NU3017 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3017 diff --git a/docs/reference/errors-and-warnings/NU3018.md b/docs/reference/errors-and-warnings/NU3018.md index 0cd85ffee..5ea4a3161 100644 --- a/docs/reference/errors-and-warnings/NU3018.md +++ b/docs/reference/errors-and-warnings/NU3018.md @@ -4,7 +4,7 @@ description: NU3018 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3018 diff --git a/docs/reference/errors-and-warnings/NU3019.md b/docs/reference/errors-and-warnings/NU3019.md index 65fbf57ed..9b06be87c 100644 --- a/docs/reference/errors-and-warnings/NU3019.md +++ b/docs/reference/errors-and-warnings/NU3019.md @@ -4,7 +4,7 @@ description: NU3019 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3019 diff --git a/docs/reference/errors-and-warnings/NU3020.md b/docs/reference/errors-and-warnings/NU3020.md index a4755a354..c2e3c44ba 100644 --- a/docs/reference/errors-and-warnings/NU3020.md +++ b/docs/reference/errors-and-warnings/NU3020.md @@ -4,7 +4,7 @@ description: NU3020 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3020 diff --git a/docs/reference/errors-and-warnings/NU3021.md b/docs/reference/errors-and-warnings/NU3021.md index f528760a0..c410ea733 100644 --- a/docs/reference/errors-and-warnings/NU3021.md +++ b/docs/reference/errors-and-warnings/NU3021.md @@ -4,7 +4,7 @@ description: NU3021 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3021 diff --git a/docs/reference/errors-and-warnings/NU3022.md b/docs/reference/errors-and-warnings/NU3022.md index 73a97fa03..8dd651690 100644 --- a/docs/reference/errors-and-warnings/NU3022.md +++ b/docs/reference/errors-and-warnings/NU3022.md @@ -4,7 +4,7 @@ description: NU3022 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3022 diff --git a/docs/reference/errors-and-warnings/NU3023.md b/docs/reference/errors-and-warnings/NU3023.md index 8e815be5f..cad7134bf 100644 --- a/docs/reference/errors-and-warnings/NU3023.md +++ b/docs/reference/errors-and-warnings/NU3023.md @@ -4,7 +4,7 @@ description: NU3023 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3023 diff --git a/docs/reference/errors-and-warnings/NU3024.md b/docs/reference/errors-and-warnings/NU3024.md index 199f65d91..b7ded5f61 100644 --- a/docs/reference/errors-and-warnings/NU3024.md +++ b/docs/reference/errors-and-warnings/NU3024.md @@ -4,7 +4,7 @@ description: NU3024 Warning code author: heng-liu ms.author: henli ms.date: 3/18/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: dtivel f1_keywords: - NU3024 diff --git a/docs/reference/errors-and-warnings/NU3025.md b/docs/reference/errors-and-warnings/NU3025.md index f80ff68b3..432360db1 100644 --- a/docs/reference/errors-and-warnings/NU3025.md +++ b/docs/reference/errors-and-warnings/NU3025.md @@ -4,7 +4,7 @@ description: NU3025 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3025 diff --git a/docs/reference/errors-and-warnings/NU3026.md b/docs/reference/errors-and-warnings/NU3026.md index 8d078a2d4..735c3c2a5 100644 --- a/docs/reference/errors-and-warnings/NU3026.md +++ b/docs/reference/errors-and-warnings/NU3026.md @@ -4,7 +4,7 @@ description: NU3026 Warning code author: heng-liu ms.author: henli ms.date: 3/18/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: dtivel f1_keywords: - NU3026 diff --git a/docs/reference/errors-and-warnings/NU3027.md b/docs/reference/errors-and-warnings/NU3027.md index 4a0316d6e..0e838bc82 100644 --- a/docs/reference/errors-and-warnings/NU3027.md +++ b/docs/reference/errors-and-warnings/NU3027.md @@ -4,7 +4,7 @@ description: NU3027 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3027 diff --git a/docs/reference/errors-and-warnings/NU3028.md b/docs/reference/errors-and-warnings/NU3028.md index a98a2c1dc..8be17d2c9 100644 --- a/docs/reference/errors-and-warnings/NU3028.md +++ b/docs/reference/errors-and-warnings/NU3028.md @@ -4,7 +4,7 @@ description: NU3028 warning code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU3028" diff --git a/docs/reference/errors-and-warnings/NU3029.md b/docs/reference/errors-and-warnings/NU3029.md index 689e83f96..3446e6a0b 100644 --- a/docs/reference/errors-and-warnings/NU3029.md +++ b/docs/reference/errors-and-warnings/NU3029.md @@ -4,7 +4,7 @@ description: NU3029 Warning code author: heng-liu ms.author: henli ms.date: 3/18/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: dtivel f1_keywords: - NU3029 diff --git a/docs/reference/errors-and-warnings/NU3030.md b/docs/reference/errors-and-warnings/NU3030.md index 45c892b2b..e41cc8c32 100644 --- a/docs/reference/errors-and-warnings/NU3030.md +++ b/docs/reference/errors-and-warnings/NU3030.md @@ -4,7 +4,7 @@ description: NU3030 Warning code author: heng-liu ms.author: henli ms.date: 3/18/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: dtivel f1_keywords: - NU3030 diff --git a/docs/reference/errors-and-warnings/NU3031.md b/docs/reference/errors-and-warnings/NU3031.md index d590213c0..4cc2c4c4c 100644 --- a/docs/reference/errors-and-warnings/NU3031.md +++ b/docs/reference/errors-and-warnings/NU3031.md @@ -4,7 +4,7 @@ description: NU3031 Warning code author: heng-liu ms.author: henli ms.date: 3/18/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: dtivel f1_keywords: - NU3031 diff --git a/docs/reference/errors-and-warnings/NU3032.md b/docs/reference/errors-and-warnings/NU3032.md index 447de425b..a0149b071 100644 --- a/docs/reference/errors-and-warnings/NU3032.md +++ b/docs/reference/errors-and-warnings/NU3032.md @@ -4,7 +4,7 @@ description: NU3032 Warning code author: heng-liu ms.author: henli ms.date: 3/18/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: dtivel f1_keywords: - NU3032 diff --git a/docs/reference/errors-and-warnings/NU3033.md b/docs/reference/errors-and-warnings/NU3033.md index ffabc561a..2246461a4 100644 --- a/docs/reference/errors-and-warnings/NU3033.md +++ b/docs/reference/errors-and-warnings/NU3033.md @@ -4,7 +4,7 @@ description: NU3033 Warning code author: heng-liu ms.author: henli ms.date: 3/18/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: dtivel f1_keywords: - NU3033 diff --git a/docs/reference/errors-and-warnings/NU3034.md b/docs/reference/errors-and-warnings/NU3034.md index c1c139fd9..a90dfa153 100644 --- a/docs/reference/errors-and-warnings/NU3034.md +++ b/docs/reference/errors-and-warnings/NU3034.md @@ -4,7 +4,7 @@ description: NU3034 Error code author: patbel ms.author: patbel ms.date: 11/12/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: rmpablos f1_keywords: - NU3034 diff --git a/docs/reference/errors-and-warnings/NU3035.md b/docs/reference/errors-and-warnings/NU3035.md index 0385ee801..f2952e492 100644 --- a/docs/reference/errors-and-warnings/NU3035.md +++ b/docs/reference/errors-and-warnings/NU3035.md @@ -4,7 +4,7 @@ description: NU3035 Warning code author: heng-liu ms.author: henli ms.date: 3/18/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: dtivel f1_keywords: - NU3035 diff --git a/docs/reference/errors-and-warnings/NU3036.md b/docs/reference/errors-and-warnings/NU3036.md index 8710049cc..c8c762ffe 100644 --- a/docs/reference/errors-and-warnings/NU3036.md +++ b/docs/reference/errors-and-warnings/NU3036.md @@ -4,7 +4,7 @@ description: NU3036 Warning code author: heng-liu ms.author: henli ms.date: 3/18/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: dtivel f1_keywords: - NU3036 diff --git a/docs/reference/errors-and-warnings/NU3037.md b/docs/reference/errors-and-warnings/NU3037.md index 3119bb38a..144b13590 100644 --- a/docs/reference/errors-and-warnings/NU3037.md +++ b/docs/reference/errors-and-warnings/NU3037.md @@ -4,7 +4,7 @@ description: NU3037 Warning code author: heng-liu ms.author: henli ms.date: 3/18/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: dtivel f1_keywords: - NU3037 diff --git a/docs/reference/errors-and-warnings/NU3038.md b/docs/reference/errors-and-warnings/NU3038.md index 129b96b31..7edc0bb8f 100644 --- a/docs/reference/errors-and-warnings/NU3038.md +++ b/docs/reference/errors-and-warnings/NU3038.md @@ -4,7 +4,7 @@ description: NU3038 Warning code author: heng-liu ms.author: henli ms.date: 3/18/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: dtivel f1_keywords: - NU3038 diff --git a/docs/reference/errors-and-warnings/NU3040.md b/docs/reference/errors-and-warnings/NU3040.md index 0040b2619..a1cb12be1 100644 --- a/docs/reference/errors-and-warnings/NU3040.md +++ b/docs/reference/errors-and-warnings/NU3040.md @@ -4,7 +4,7 @@ description: NU3040 Warning code author: patbel ms.author: patbel ms.date: 11/12/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: rmpablos f1_keywords: - NU3040 diff --git a/docs/reference/errors-and-warnings/NU5000.md b/docs/reference/errors-and-warnings/NU5000.md index 738ed464b..cdb77a732 100644 --- a/docs/reference/errors-and-warnings/NU5000.md +++ b/docs/reference/errors-and-warnings/NU5000.md @@ -4,7 +4,7 @@ description: NU5000 Error code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5000 diff --git a/docs/reference/errors-and-warnings/NU5001.md b/docs/reference/errors-and-warnings/NU5001.md index 101d6682f..4775ddf5c 100644 --- a/docs/reference/errors-and-warnings/NU5001.md +++ b/docs/reference/errors-and-warnings/NU5001.md @@ -4,7 +4,7 @@ description: NU5001 Error code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5001 diff --git a/docs/reference/errors-and-warnings/NU5002.md b/docs/reference/errors-and-warnings/NU5002.md index 556e0aae8..dfe9cc1f7 100644 --- a/docs/reference/errors-and-warnings/NU5002.md +++ b/docs/reference/errors-and-warnings/NU5002.md @@ -4,7 +4,7 @@ description: NU5002 Error code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5002 diff --git a/docs/reference/errors-and-warnings/NU5003.md b/docs/reference/errors-and-warnings/NU5003.md index 83e5e5c44..24ad17c65 100644 --- a/docs/reference/errors-and-warnings/NU5003.md +++ b/docs/reference/errors-and-warnings/NU5003.md @@ -4,7 +4,7 @@ description: NU5003 Error code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5003 diff --git a/docs/reference/errors-and-warnings/NU5004.md b/docs/reference/errors-and-warnings/NU5004.md index 70d0121ac..c45ef41c3 100644 --- a/docs/reference/errors-and-warnings/NU5004.md +++ b/docs/reference/errors-and-warnings/NU5004.md @@ -4,7 +4,7 @@ description: NU5004 Error code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5004 diff --git a/docs/reference/errors-and-warnings/NU5005.md b/docs/reference/errors-and-warnings/NU5005.md index 6506a3777..9a66c8b43 100644 --- a/docs/reference/errors-and-warnings/NU5005.md +++ b/docs/reference/errors-and-warnings/NU5005.md @@ -4,7 +4,7 @@ description: NU5005 Error code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5005 diff --git a/docs/reference/errors-and-warnings/NU5007.md b/docs/reference/errors-and-warnings/NU5007.md index 203389722..b799ead84 100644 --- a/docs/reference/errors-and-warnings/NU5007.md +++ b/docs/reference/errors-and-warnings/NU5007.md @@ -4,7 +4,7 @@ description: NU5007 Error code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5007 diff --git a/docs/reference/errors-and-warnings/NU5008.md b/docs/reference/errors-and-warnings/NU5008.md index d013cdb86..1503769b1 100644 --- a/docs/reference/errors-and-warnings/NU5008.md +++ b/docs/reference/errors-and-warnings/NU5008.md @@ -4,7 +4,7 @@ description: NU5008 Error code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5008 diff --git a/docs/reference/errors-and-warnings/NU5009.md b/docs/reference/errors-and-warnings/NU5009.md index 3da5c1008..3f15fd9ba 100644 --- a/docs/reference/errors-and-warnings/NU5009.md +++ b/docs/reference/errors-and-warnings/NU5009.md @@ -4,7 +4,7 @@ description: NU5009 Error code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5009 diff --git a/docs/reference/errors-and-warnings/NU5010.md b/docs/reference/errors-and-warnings/NU5010.md index 4d94bf141..ecc70a9a4 100644 --- a/docs/reference/errors-and-warnings/NU5010.md +++ b/docs/reference/errors-and-warnings/NU5010.md @@ -4,7 +4,7 @@ description: NU5010 Error code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5010 diff --git a/docs/reference/errors-and-warnings/NU5011.md b/docs/reference/errors-and-warnings/NU5011.md index 87469ed52..03d309faa 100644 --- a/docs/reference/errors-and-warnings/NU5011.md +++ b/docs/reference/errors-and-warnings/NU5011.md @@ -4,7 +4,7 @@ description: NU5011 Error code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5011 diff --git a/docs/reference/errors-and-warnings/NU5012.md b/docs/reference/errors-and-warnings/NU5012.md index 4e46b3aa1..49681bc06 100644 --- a/docs/reference/errors-and-warnings/NU5012.md +++ b/docs/reference/errors-and-warnings/NU5012.md @@ -4,7 +4,7 @@ description: NU5012 Error code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5012 diff --git a/docs/reference/errors-and-warnings/NU5013.md b/docs/reference/errors-and-warnings/NU5013.md index e1c551b00..a9c3f9b2a 100644 --- a/docs/reference/errors-and-warnings/NU5013.md +++ b/docs/reference/errors-and-warnings/NU5013.md @@ -4,7 +4,7 @@ description: NU5013 Error code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5013 diff --git a/docs/reference/errors-and-warnings/NU5014.md b/docs/reference/errors-and-warnings/NU5014.md index da935113f..7a01a7948 100644 --- a/docs/reference/errors-and-warnings/NU5014.md +++ b/docs/reference/errors-and-warnings/NU5014.md @@ -4,7 +4,7 @@ description: NU5014 Error code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5014 diff --git a/docs/reference/errors-and-warnings/NU5015.md b/docs/reference/errors-and-warnings/NU5015.md index 34ddf8367..34677f46a 100644 --- a/docs/reference/errors-and-warnings/NU5015.md +++ b/docs/reference/errors-and-warnings/NU5015.md @@ -4,7 +4,7 @@ description: NU5015 Error code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5015 diff --git a/docs/reference/errors-and-warnings/NU5016.md b/docs/reference/errors-and-warnings/NU5016.md index 74c14cc5c..e61351ac3 100644 --- a/docs/reference/errors-and-warnings/NU5016.md +++ b/docs/reference/errors-and-warnings/NU5016.md @@ -4,7 +4,7 @@ description: NU5016 Error code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5016 diff --git a/docs/reference/errors-and-warnings/NU5017.md b/docs/reference/errors-and-warnings/NU5017.md index ffda1be4e..30f65074c 100644 --- a/docs/reference/errors-and-warnings/NU5017.md +++ b/docs/reference/errors-and-warnings/NU5017.md @@ -4,7 +4,7 @@ description: NU5017 Error code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5017 diff --git a/docs/reference/errors-and-warnings/NU5018.md b/docs/reference/errors-and-warnings/NU5018.md index 44b50fcc9..20fbfc21e 100644 --- a/docs/reference/errors-and-warnings/NU5018.md +++ b/docs/reference/errors-and-warnings/NU5018.md @@ -4,7 +4,7 @@ description: NU5018 Error code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5018 diff --git a/docs/reference/errors-and-warnings/NU5019.md b/docs/reference/errors-and-warnings/NU5019.md index 165772bf3..5fa761f57 100644 --- a/docs/reference/errors-and-warnings/NU5019.md +++ b/docs/reference/errors-and-warnings/NU5019.md @@ -4,7 +4,7 @@ description: NU5019 Error code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5019 diff --git a/docs/reference/errors-and-warnings/NU5020.md b/docs/reference/errors-and-warnings/NU5020.md index b6c771748..fbaac3030 100644 --- a/docs/reference/errors-and-warnings/NU5020.md +++ b/docs/reference/errors-and-warnings/NU5020.md @@ -4,7 +4,7 @@ description: NU5020 Error code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5020 diff --git a/docs/reference/errors-and-warnings/NU5021.md b/docs/reference/errors-and-warnings/NU5021.md index d89e38f1c..ec3993880 100644 --- a/docs/reference/errors-and-warnings/NU5021.md +++ b/docs/reference/errors-and-warnings/NU5021.md @@ -4,7 +4,7 @@ description: NU5021 Error code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5021 diff --git a/docs/reference/errors-and-warnings/NU5022.md b/docs/reference/errors-and-warnings/NU5022.md index 370c50b8e..b37f3d7c7 100644 --- a/docs/reference/errors-and-warnings/NU5022.md +++ b/docs/reference/errors-and-warnings/NU5022.md @@ -4,7 +4,7 @@ description: NU5022 Error code author: mishra14 ms.author: jodou ms.date: 8/8/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5022 diff --git a/docs/reference/errors-and-warnings/NU5023.md b/docs/reference/errors-and-warnings/NU5023.md index f88252691..26ccee8ee 100644 --- a/docs/reference/errors-and-warnings/NU5023.md +++ b/docs/reference/errors-and-warnings/NU5023.md @@ -4,7 +4,7 @@ description: NU5023 Error code author: mishra14 ms.author: jodou ms.date: 8/8/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5023 diff --git a/docs/reference/errors-and-warnings/NU5024.md b/docs/reference/errors-and-warnings/NU5024.md index c542ab37a..aae8c5cfd 100644 --- a/docs/reference/errors-and-warnings/NU5024.md +++ b/docs/reference/errors-and-warnings/NU5024.md @@ -4,7 +4,7 @@ description: NU5024 Error code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5024 diff --git a/docs/reference/errors-and-warnings/NU5025.md b/docs/reference/errors-and-warnings/NU5025.md index e041791ea..39de62ec1 100644 --- a/docs/reference/errors-and-warnings/NU5025.md +++ b/docs/reference/errors-and-warnings/NU5025.md @@ -4,7 +4,7 @@ description: NU5025 Error code author: mishra14 ms.author: jodou ms.date: 8/8/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5025 diff --git a/docs/reference/errors-and-warnings/NU5026.md b/docs/reference/errors-and-warnings/NU5026.md index 56e330034..abbcd126c 100644 --- a/docs/reference/errors-and-warnings/NU5026.md +++ b/docs/reference/errors-and-warnings/NU5026.md @@ -4,7 +4,7 @@ description: NU5026 Error code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5026 diff --git a/docs/reference/errors-and-warnings/NU5027.md b/docs/reference/errors-and-warnings/NU5027.md index e5261eeb7..25e0c9a71 100644 --- a/docs/reference/errors-and-warnings/NU5027.md +++ b/docs/reference/errors-and-warnings/NU5027.md @@ -4,7 +4,7 @@ description: NU5027 Error code author: mishra14 ms.author: jodou ms.date: 8/8/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5027 diff --git a/docs/reference/errors-and-warnings/NU5028.md b/docs/reference/errors-and-warnings/NU5028.md index 12c7ad06f..083926682 100644 --- a/docs/reference/errors-and-warnings/NU5028.md +++ b/docs/reference/errors-and-warnings/NU5028.md @@ -4,7 +4,7 @@ description: NU5028 Error code author: mishra14 ms.author: jodou ms.date: 8/8/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5028 diff --git a/docs/reference/errors-and-warnings/NU5029.md b/docs/reference/errors-and-warnings/NU5029.md index f6e5ff460..dd1eba70b 100644 --- a/docs/reference/errors-and-warnings/NU5029.md +++ b/docs/reference/errors-and-warnings/NU5029.md @@ -4,7 +4,7 @@ description: NU5029 Error code author: mishra14 ms.author: jodou ms.date: 8/8/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5029 diff --git a/docs/reference/errors-and-warnings/NU5030.md b/docs/reference/errors-and-warnings/NU5030.md index 654669992..08f85ca98 100644 --- a/docs/reference/errors-and-warnings/NU5030.md +++ b/docs/reference/errors-and-warnings/NU5030.md @@ -3,7 +3,7 @@ title: NuGet Error NU5030 description: NU5030 Error code author: nkolev92 ms.date: 11/15/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5030 diff --git a/docs/reference/errors-and-warnings/NU5031.md b/docs/reference/errors-and-warnings/NU5031.md index 01ccd5ea7..88e7fa3ce 100644 --- a/docs/reference/errors-and-warnings/NU5031.md +++ b/docs/reference/errors-and-warnings/NU5031.md @@ -3,7 +3,7 @@ title: NuGet Error NU5031 description: NU5031 Error code author: nkolev92 ms.date: 11/15/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5031 diff --git a/docs/reference/errors-and-warnings/NU5032.md b/docs/reference/errors-and-warnings/NU5032.md index afc9634db..e4db58d2f 100644 --- a/docs/reference/errors-and-warnings/NU5032.md +++ b/docs/reference/errors-and-warnings/NU5032.md @@ -3,7 +3,7 @@ title: NuGet Error NU5032 description: NU5032 Error code author: nkolev92 ms.date: 11/15/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5032 diff --git a/docs/reference/errors-and-warnings/NU5033.md b/docs/reference/errors-and-warnings/NU5033.md index 3569d58db..d87cda2fb 100644 --- a/docs/reference/errors-and-warnings/NU5033.md +++ b/docs/reference/errors-and-warnings/NU5033.md @@ -3,7 +3,7 @@ title: NuGet Error NU5033 description: NU5033 Error code author: nkolev92 ms.date: 11/15/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5033 diff --git a/docs/reference/errors-and-warnings/NU5034.md b/docs/reference/errors-and-warnings/NU5034.md index 1db56fd9e..f056812dd 100644 --- a/docs/reference/errors-and-warnings/NU5034.md +++ b/docs/reference/errors-and-warnings/NU5034.md @@ -3,7 +3,7 @@ title: NuGet Error NU5034 description: NU5034 Error code author: nkolev92 ms.date: 11/15/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5034 diff --git a/docs/reference/errors-and-warnings/NU5035.md b/docs/reference/errors-and-warnings/NU5035.md index 472e217be..b1b7688bc 100644 --- a/docs/reference/errors-and-warnings/NU5035.md +++ b/docs/reference/errors-and-warnings/NU5035.md @@ -3,7 +3,7 @@ title: NuGet Error NU5035 description: NU5035 Error code author: nkolev92 ms.date: 11/15/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5035 diff --git a/docs/reference/errors-and-warnings/NU5036.md b/docs/reference/errors-and-warnings/NU5036.md index 0859655d4..06a7061f8 100644 --- a/docs/reference/errors-and-warnings/NU5036.md +++ b/docs/reference/errors-and-warnings/NU5036.md @@ -4,7 +4,7 @@ description: NU5036 Error code author: rrelyea ms.author: jodou ms.date: 8/8/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5036 diff --git a/docs/reference/errors-and-warnings/NU5037.md b/docs/reference/errors-and-warnings/NU5037.md index af357a185..0a370d339 100644 --- a/docs/reference/errors-and-warnings/NU5037.md +++ b/docs/reference/errors-and-warnings/NU5037.md @@ -4,7 +4,7 @@ description: NU5037 Error code author: kartheekp-ms ms.author: kapenaga ms.date: 8/9/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: nikolev,zivkan f1_keywords: - NU5037 diff --git a/docs/reference/errors-and-warnings/NU5038.md b/docs/reference/errors-and-warnings/NU5038.md index f47a69e1f..136b9016f 100644 --- a/docs/reference/errors-and-warnings/NU5038.md +++ b/docs/reference/errors-and-warnings/NU5038.md @@ -4,7 +4,7 @@ description: NU5038 Error code author: chgill-MSFT ms.author: chgill ms.date: 7/28/2020 -ms.topic: reference +ms.topic: reference ms.reviewer: f1_keywords: - NU5038 diff --git a/docs/reference/errors-and-warnings/NU5039.md b/docs/reference/errors-and-warnings/NU5039.md index ac8fe6ca2..4cbe7adb6 100644 --- a/docs/reference/errors-and-warnings/NU5039.md +++ b/docs/reference/errors-and-warnings/NU5039.md @@ -4,7 +4,7 @@ description: NU5039 Error code author: chgill-MSFT ms.author: chgill ms.date: 7/28/2020 -ms.topic: reference +ms.topic: reference ms.reviewer: f1_keywords: - NU5039 diff --git a/docs/reference/errors-and-warnings/NU5040.md b/docs/reference/errors-and-warnings/NU5040.md index 5662b368d..ba38671fa 100644 --- a/docs/reference/errors-and-warnings/NU5040.md +++ b/docs/reference/errors-and-warnings/NU5040.md @@ -4,7 +4,7 @@ description: NU5040 Error code author: chgill-MSFT ms.author: chgill ms.date: 7/28/2020 -ms.topic: reference +ms.topic: reference ms.reviewer: f1_keywords: - NU5040 diff --git a/docs/reference/errors-and-warnings/NU5041.md b/docs/reference/errors-and-warnings/NU5041.md index 5253e56c6..82b018e5a 100644 --- a/docs/reference/errors-and-warnings/NU5041.md +++ b/docs/reference/errors-and-warnings/NU5041.md @@ -4,7 +4,7 @@ description: NU5041 Error code author: chgill-MSFT ms.author: chgill ms.date: 7/28/2020 -ms.topic: reference +ms.topic: reference ms.reviewer: f1_keywords: - NU5041 diff --git a/docs/reference/errors-and-warnings/NU5046.md b/docs/reference/errors-and-warnings/NU5046.md index aa0130d9d..2bbe9e5e9 100644 --- a/docs/reference/errors-and-warnings/NU5046.md +++ b/docs/reference/errors-and-warnings/NU5046.md @@ -4,7 +4,7 @@ description: NU5046 Error code author: dominoFire ms.author: feaguila ms.date: 9/4/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5046 diff --git a/docs/reference/errors-and-warnings/NU5047.md b/docs/reference/errors-and-warnings/NU5047.md index dc8604639..c0f4c8909 100644 --- a/docs/reference/errors-and-warnings/NU5047.md +++ b/docs/reference/errors-and-warnings/NU5047.md @@ -4,7 +4,7 @@ description: NU5047 Error code author: dominoFire ms.author: feaguila ms.date: 9/4/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5047 diff --git a/docs/reference/errors-and-warnings/NU5048.md b/docs/reference/errors-and-warnings/NU5048.md index 26340e502..f0d5e54b1 100644 --- a/docs/reference/errors-and-warnings/NU5048.md +++ b/docs/reference/errors-and-warnings/NU5048.md @@ -4,7 +4,7 @@ description: NU5048 Warning code author: dominoFire ms.author: feaguila ms.date: 9/4/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5048 diff --git a/docs/reference/errors-and-warnings/NU5100.md b/docs/reference/errors-and-warnings/NU5100.md index 8ae38a462..35ec7f5c7 100644 --- a/docs/reference/errors-and-warnings/NU5100.md +++ b/docs/reference/errors-and-warnings/NU5100.md @@ -4,7 +4,7 @@ description: NU5100 Warning code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5100 diff --git a/docs/reference/errors-and-warnings/NU5101.md b/docs/reference/errors-and-warnings/NU5101.md index 9a20f02fb..b62962e9a 100644 --- a/docs/reference/errors-and-warnings/NU5101.md +++ b/docs/reference/errors-and-warnings/NU5101.md @@ -4,7 +4,7 @@ description: NU5101 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5101 diff --git a/docs/reference/errors-and-warnings/NU5102.md b/docs/reference/errors-and-warnings/NU5102.md index 25cf64e5e..cfbfb69c1 100644 --- a/docs/reference/errors-and-warnings/NU5102.md +++ b/docs/reference/errors-and-warnings/NU5102.md @@ -4,7 +4,7 @@ description: NU5102 Warning code author: mishra14 ms.author: jodou ms.date: 8/8/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5102 diff --git a/docs/reference/errors-and-warnings/NU5103.md b/docs/reference/errors-and-warnings/NU5103.md index 9f94a4c60..6dc92b807 100644 --- a/docs/reference/errors-and-warnings/NU5103.md +++ b/docs/reference/errors-and-warnings/NU5103.md @@ -4,7 +4,7 @@ description: NU5103 Warning code author: mishra14 ms.author: jodou ms.date: 8/8/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5103 diff --git a/docs/reference/errors-and-warnings/NU5104.md b/docs/reference/errors-and-warnings/NU5104.md index 860b0d909..ce46f2c60 100644 --- a/docs/reference/errors-and-warnings/NU5104.md +++ b/docs/reference/errors-and-warnings/NU5104.md @@ -4,7 +4,7 @@ description: NU5104 Warning code author: mishra14 ms.author: jodou ms.date: 8/8/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5104 diff --git a/docs/reference/errors-and-warnings/NU5105.md b/docs/reference/errors-and-warnings/NU5105.md index 4c278c447..e2ae35bd6 100644 --- a/docs/reference/errors-and-warnings/NU5105.md +++ b/docs/reference/errors-and-warnings/NU5105.md @@ -4,7 +4,7 @@ description: NU5105 Warning code author: mishra14 ms.author: jodou ms.date: 8/8/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5105 diff --git a/docs/reference/errors-and-warnings/NU5106.md b/docs/reference/errors-and-warnings/NU5106.md index 52524a311..bd5e94784 100644 --- a/docs/reference/errors-and-warnings/NU5106.md +++ b/docs/reference/errors-and-warnings/NU5106.md @@ -4,7 +4,7 @@ description: NU5106 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5106 diff --git a/docs/reference/errors-and-warnings/NU5107.md b/docs/reference/errors-and-warnings/NU5107.md index 595d1ace8..3adffb3cb 100644 --- a/docs/reference/errors-and-warnings/NU5107.md +++ b/docs/reference/errors-and-warnings/NU5107.md @@ -4,7 +4,7 @@ description: NU5107 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5107 diff --git a/docs/reference/errors-and-warnings/NU5108.md b/docs/reference/errors-and-warnings/NU5108.md index dd7774181..9b6570f0d 100644 --- a/docs/reference/errors-and-warnings/NU5108.md +++ b/docs/reference/errors-and-warnings/NU5108.md @@ -4,7 +4,7 @@ description: NU5108 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5108 diff --git a/docs/reference/errors-and-warnings/NU5109.md b/docs/reference/errors-and-warnings/NU5109.md index 26ff11cc8..2b429f534 100644 --- a/docs/reference/errors-and-warnings/NU5109.md +++ b/docs/reference/errors-and-warnings/NU5109.md @@ -4,7 +4,7 @@ description: NU5109 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5109 diff --git a/docs/reference/errors-and-warnings/NU5110.md b/docs/reference/errors-and-warnings/NU5110.md index fe9b4a099..22b666c3a 100644 --- a/docs/reference/errors-and-warnings/NU5110.md +++ b/docs/reference/errors-and-warnings/NU5110.md @@ -4,7 +4,7 @@ description: NU5110 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5110 diff --git a/docs/reference/errors-and-warnings/NU5111.md b/docs/reference/errors-and-warnings/NU5111.md index 962d82d3d..c854c0e05 100644 --- a/docs/reference/errors-and-warnings/NU5111.md +++ b/docs/reference/errors-and-warnings/NU5111.md @@ -4,7 +4,7 @@ description: NU5111 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5111 diff --git a/docs/reference/errors-and-warnings/NU5112.md b/docs/reference/errors-and-warnings/NU5112.md index 192844f22..f194624b4 100644 --- a/docs/reference/errors-and-warnings/NU5112.md +++ b/docs/reference/errors-and-warnings/NU5112.md @@ -4,7 +4,7 @@ description: NU5112 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5112 diff --git a/docs/reference/errors-and-warnings/NU5114.md b/docs/reference/errors-and-warnings/NU5114.md index a2dfc2236..e5dbe8964 100644 --- a/docs/reference/errors-and-warnings/NU5114.md +++ b/docs/reference/errors-and-warnings/NU5114.md @@ -4,7 +4,7 @@ description: NU5114 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5114 diff --git a/docs/reference/errors-and-warnings/NU5115.md b/docs/reference/errors-and-warnings/NU5115.md index 6003c84a0..d6245053e 100644 --- a/docs/reference/errors-and-warnings/NU5115.md +++ b/docs/reference/errors-and-warnings/NU5115.md @@ -4,7 +4,7 @@ description: NU5115 Warning code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5115 diff --git a/docs/reference/errors-and-warnings/NU5116.md b/docs/reference/errors-and-warnings/NU5116.md index 7127aaebe..35560767c 100644 --- a/docs/reference/errors-and-warnings/NU5116.md +++ b/docs/reference/errors-and-warnings/NU5116.md @@ -4,7 +4,7 @@ description: NU5116 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5116 diff --git a/docs/reference/errors-and-warnings/NU5117.md b/docs/reference/errors-and-warnings/NU5117.md index 3d198a771..82d3fe066 100644 --- a/docs/reference/errors-and-warnings/NU5117.md +++ b/docs/reference/errors-and-warnings/NU5117.md @@ -4,7 +4,7 @@ description: NU5117 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5117 diff --git a/docs/reference/errors-and-warnings/NU5118.md b/docs/reference/errors-and-warnings/NU5118.md index a8bf62a31..fdd6c952a 100644 --- a/docs/reference/errors-and-warnings/NU5118.md +++ b/docs/reference/errors-and-warnings/NU5118.md @@ -4,7 +4,7 @@ description: NU5118 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5118 diff --git a/docs/reference/errors-and-warnings/NU5119.md b/docs/reference/errors-and-warnings/NU5119.md index f5924c4e5..458838803 100644 --- a/docs/reference/errors-and-warnings/NU5119.md +++ b/docs/reference/errors-and-warnings/NU5119.md @@ -4,7 +4,7 @@ description: NU5119 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5119 diff --git a/docs/reference/errors-and-warnings/NU5120.md b/docs/reference/errors-and-warnings/NU5120.md index bd45bd1d7..dc8ab3642 100644 --- a/docs/reference/errors-and-warnings/NU5120.md +++ b/docs/reference/errors-and-warnings/NU5120.md @@ -4,7 +4,7 @@ description: NU5120 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5120 diff --git a/docs/reference/errors-and-warnings/NU5121.md b/docs/reference/errors-and-warnings/NU5121.md index 31ee44496..3cd680ab9 100644 --- a/docs/reference/errors-and-warnings/NU5121.md +++ b/docs/reference/errors-and-warnings/NU5121.md @@ -4,7 +4,7 @@ description: NU5121 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5121 diff --git a/docs/reference/errors-and-warnings/NU5122.md b/docs/reference/errors-and-warnings/NU5122.md index fa928b1fc..9f40ef186 100644 --- a/docs/reference/errors-and-warnings/NU5122.md +++ b/docs/reference/errors-and-warnings/NU5122.md @@ -4,7 +4,7 @@ description: NU5122 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5122 diff --git a/docs/reference/errors-and-warnings/NU5123.md b/docs/reference/errors-and-warnings/NU5123.md index 12e75c5fd..f73e7226c 100644 --- a/docs/reference/errors-and-warnings/NU5123.md +++ b/docs/reference/errors-and-warnings/NU5123.md @@ -4,7 +4,7 @@ description: NU5123 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5123 diff --git a/docs/reference/errors-and-warnings/NU5124.md b/docs/reference/errors-and-warnings/NU5124.md index 39fcaec77..075b81ed4 100644 --- a/docs/reference/errors-and-warnings/NU5124.md +++ b/docs/reference/errors-and-warnings/NU5124.md @@ -3,7 +3,7 @@ title: NuGet Error NU5124 description: NU5124 Error code author: nkolev92 ms.date: 11/15/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5124 diff --git a/docs/reference/errors-and-warnings/NU5125.md b/docs/reference/errors-and-warnings/NU5125.md index d6a21b797..d13f7e201 100644 --- a/docs/reference/errors-and-warnings/NU5125.md +++ b/docs/reference/errors-and-warnings/NU5125.md @@ -3,7 +3,7 @@ title: NuGet Error NU5125 description: NU5125 Error code author: nkolev92 ms.date: 11/15/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5125 diff --git a/docs/reference/errors-and-warnings/NU5127.md b/docs/reference/errors-and-warnings/NU5127.md index 8e1ba098f..078646244 100644 --- a/docs/reference/errors-and-warnings/NU5127.md +++ b/docs/reference/errors-and-warnings/NU5127.md @@ -3,7 +3,7 @@ title: NuGet Warning NU5127 description: NU5127 Warning code author: zivkan ms.date: 09/20/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5127 diff --git a/docs/reference/errors-and-warnings/NU5128.md b/docs/reference/errors-and-warnings/NU5128.md index 1d0703f94..1a4387d64 100644 --- a/docs/reference/errors-and-warnings/NU5128.md +++ b/docs/reference/errors-and-warnings/NU5128.md @@ -3,7 +3,7 @@ title: NuGet Warning NU5128 description: NU5128 Warning code author: zivkan ms.date: 09/06/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5128 diff --git a/docs/reference/errors-and-warnings/NU5129.md b/docs/reference/errors-and-warnings/NU5129.md index ccd56200c..3ae8d1b90 100644 --- a/docs/reference/errors-and-warnings/NU5129.md +++ b/docs/reference/errors-and-warnings/NU5129.md @@ -3,7 +3,7 @@ title: NuGet Warning NU5129 description: NU5129 Warning code author: zivkan ms.date: 09/19/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5129 diff --git a/docs/reference/errors-and-warnings/NU5130.md b/docs/reference/errors-and-warnings/NU5130.md index e04d10328..6e031d565 100644 --- a/docs/reference/errors-and-warnings/NU5130.md +++ b/docs/reference/errors-and-warnings/NU5130.md @@ -3,7 +3,7 @@ title: NuGet Warning NU5130 description: NU5130 Warning code author: zivkan ms.date: 09/16/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5130 diff --git a/docs/reference/errors-and-warnings/NU5131.md b/docs/reference/errors-and-warnings/NU5131.md index 947cef557..4851d5dbd 100644 --- a/docs/reference/errors-and-warnings/NU5131.md +++ b/docs/reference/errors-and-warnings/NU5131.md @@ -3,7 +3,7 @@ title: NuGet Warning NU5131 description: NU5131 Warning code author: zivkan ms.date: 09/20/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5131 diff --git a/docs/reference/errors-and-warnings/NU5500.md b/docs/reference/errors-and-warnings/NU5500.md index 70b2b9401..fb535a2c9 100644 --- a/docs/reference/errors-and-warnings/NU5500.md +++ b/docs/reference/errors-and-warnings/NU5500.md @@ -4,7 +4,7 @@ description: NU5500 Warning code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5500 diff --git a/docs/reference/extensibility/NuGet-Credential-Providers-for-Visual-Studio.md b/docs/reference/extensibility/NuGet-Credential-Providers-for-Visual-Studio.md index 6b10f8121..7279fc049 100644 --- a/docs/reference/extensibility/NuGet-Credential-Providers-for-Visual-Studio.md +++ b/docs/reference/extensibility/NuGet-Credential-Providers-for-Visual-Studio.md @@ -4,7 +4,7 @@ description: NuGet credential providers authenticate with feeds by implementing author: JonDouglas ms.author: jodou ms.date: 01/09/2017 -ms.topic: conceptual +ms.topic: conceptual --- # Authenticating feeds in Visual Studio with NuGet credential providers diff --git a/docs/reference/extensibility/NuGet-Cross-Platform-Authentication-Plugin.md b/docs/reference/extensibility/NuGet-Cross-Platform-Authentication-Plugin.md index a0e8d027b..5d5d3ae28 100644 --- a/docs/reference/extensibility/NuGet-Cross-Platform-Authentication-Plugin.md +++ b/docs/reference/extensibility/NuGet-Cross-Platform-Authentication-Plugin.md @@ -4,7 +4,7 @@ description: NuGet cross platform authentication plugins for NuGet.exe, dotnet.e author: nkolev92 ms.author: nikolev ms.date: 07/01/2018 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet cross platform authentication plugin diff --git a/docs/reference/extensibility/NuGet-Cross-Platform-Plugins.md b/docs/reference/extensibility/NuGet-Cross-Platform-Plugins.md index 02428709d..551985edb 100644 --- a/docs/reference/extensibility/NuGet-Cross-Platform-Plugins.md +++ b/docs/reference/extensibility/NuGet-Cross-Platform-Plugins.md @@ -4,7 +4,7 @@ description: NuGet cross platform plugins for NuGet.exe, dotnet.exe, msbuild.exe author: nkolev92 ms.author: nikolev ms.date: 07/01/2018 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet cross platform plugins diff --git a/docs/reference/extensibility/nuget-exe-Credential-Providers.md b/docs/reference/extensibility/nuget-exe-Credential-Providers.md index 520083e37..ec089cbde 100644 --- a/docs/reference/extensibility/nuget-exe-Credential-Providers.md +++ b/docs/reference/extensibility/nuget-exe-Credential-Providers.md @@ -4,7 +4,7 @@ description: nuget.exe credential providers authenticate with a feed, and are im author: JonDouglas ms.author: jodou ms.date: 12/12/2017 -ms.topic: conceptual +ms.topic: conceptual --- # Authenticating feeds with nuget.exe credential providers diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index 9889e66e4..2316cfefb 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -4,7 +4,7 @@ description: NuGet pack and restore can work directly as MSBuild targets with Nu author: nkolev92 ms.author: nikolev ms.date: 03/23/2018 -ms.topic: conceptual +ms.topic: conceptual no-loc: [NuGet, MSBuild, .nuspec, nuspec] --- diff --git a/docs/reference/nuget-config-file.md b/docs/reference/nuget-config-file.md index e2b9e4a90..35784aad9 100644 --- a/docs/reference/nuget-config-file.md +++ b/docs/reference/nuget-config-file.md @@ -4,7 +4,7 @@ description: NuGet.Config file reference including the config, bindingRedirects, author: JonDouglas ms.author: jodou ms.date: 08/13/2019 -ms.topic: reference +ms.topic: reference --- # `nuget.config` reference diff --git a/docs/reference/nuget-exe-CLI-Reference.md b/docs/reference/nuget-exe-CLI-Reference.md index 814c72b56..2902bc389 100644 --- a/docs/reference/nuget-exe-CLI-Reference.md +++ b/docs/reference/nuget-exe-CLI-Reference.md @@ -4,7 +4,7 @@ description: Command-line reference index for the nuget.exe CLI author: JonDouglas ms.author: jodou ms.date: 01/23/2018 -ms.topic: reference +ms.topic: reference --- # NuGet CLI reference diff --git a/docs/reference/nuspec.md b/docs/reference/nuspec.md index af97b50bf..204f23ea0 100644 --- a/docs/reference/nuspec.md +++ b/docs/reference/nuspec.md @@ -4,7 +4,7 @@ description: The .nuspec file contains package metadata used when building a pac author: JonDouglas ms.author: jodou ms.date: 05/24/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur --- diff --git a/docs/reference/packages-config.md b/docs/reference/packages-config.md index 92fb21497..624474d77 100644 --- a/docs/reference/packages-config.md +++ b/docs/reference/packages-config.md @@ -4,7 +4,7 @@ description: In some project types, packages.config maintains the list of NuGet author: JonDouglas ms.author: jodou ms.date: 05/21/2018 -ms.topic: reference +ms.topic: reference --- # packages.config reference diff --git a/docs/reference/ps-reference/ps-ref-add-bindingredirect.md b/docs/reference/ps-reference/ps-ref-add-bindingredirect.md index 2160e5771..dd2c2a53f 100644 --- a/docs/reference/ps-reference/ps-ref-add-bindingredirect.md +++ b/docs/reference/ps-reference/ps-ref-add-bindingredirect.md @@ -4,7 +4,7 @@ description: Reference for Add-BindingRedirect PowerShell command in the NuGet P author: JonDouglas ms.author: jodou ms.date: 12/07/2017 -ms.topic: reference +ms.topic: reference --- # Add-BindingRedirect (Package Manager Console in Visual Studio) diff --git a/docs/reference/ps-reference/ps-ref-find-package.md b/docs/reference/ps-reference/ps-ref-find-package.md index 435d9c782..f959a24f7 100644 --- a/docs/reference/ps-reference/ps-ref-find-package.md +++ b/docs/reference/ps-reference/ps-ref-find-package.md @@ -4,7 +4,7 @@ description: Reference for Find-Package PowerShell command in the NuGet Package author: JonDouglas ms.author: jodou ms.date: 6/1/2017 -ms.topic: reference +ms.topic: reference --- # Find-Package (Package Manager Console in Visual Studio) diff --git a/docs/reference/ps-reference/ps-ref-get-package.md b/docs/reference/ps-reference/ps-ref-get-package.md index a52def1f4..790ecf5af 100644 --- a/docs/reference/ps-reference/ps-ref-get-package.md +++ b/docs/reference/ps-reference/ps-ref-get-package.md @@ -4,7 +4,7 @@ description: Reference for Get-Package PowerShell command in the NuGet Package M author: JonDouglas ms.author: jodou ms.date: 12/07/2017 -ms.topic: reference +ms.topic: reference --- # Get-Package (Package Manager Console in Visual Studio) diff --git a/docs/reference/ps-reference/ps-ref-get-project.md b/docs/reference/ps-reference/ps-ref-get-project.md index 5d071be5a..4d409d1cd 100644 --- a/docs/reference/ps-reference/ps-ref-get-project.md +++ b/docs/reference/ps-reference/ps-ref-get-project.md @@ -4,7 +4,7 @@ description: Reference for GetProject PowerShell command in the NuGet Package Ma author: JonDouglas ms.author: jodou ms.date: 12/07/2017 -ms.topic: reference +ms.topic: reference --- # Get-Project (Package Manager Console in Visual Studio) diff --git a/docs/reference/ps-reference/ps-ref-install-package.md b/docs/reference/ps-reference/ps-ref-install-package.md index 238e05bb2..29efa9a83 100644 --- a/docs/reference/ps-reference/ps-ref-install-package.md +++ b/docs/reference/ps-reference/ps-ref-install-package.md @@ -4,7 +4,7 @@ description: Reference for Install-Package PowerShell command in the NuGet Packa author: JonDouglas ms.author: jodou ms.date: 06/01/2017 -ms.topic: reference +ms.topic: reference --- # Install-Package (Package Manager Console in Visual Studio) diff --git a/docs/reference/ps-reference/ps-ref-open-packagepage.md b/docs/reference/ps-reference/ps-ref-open-packagepage.md index 689de08f6..f176adebe 100644 --- a/docs/reference/ps-reference/ps-ref-open-packagepage.md +++ b/docs/reference/ps-reference/ps-ref-open-packagepage.md @@ -4,7 +4,7 @@ description: Reference for Open-PackagePage PowerShell command in the NuGet Pack author: JonDouglas ms.author: jodou ms.date: 12/07/2017 -ms.topic: reference +ms.topic: reference --- # Open-PackagePage (Package Manager Console in Visual Studio) diff --git a/docs/reference/ps-reference/ps-ref-register-tabexpansion.md b/docs/reference/ps-reference/ps-ref-register-tabexpansion.md index e92e7323c..654adb0c7 100644 --- a/docs/reference/ps-reference/ps-ref-register-tabexpansion.md +++ b/docs/reference/ps-reference/ps-ref-register-tabexpansion.md @@ -4,7 +4,7 @@ description: Reference for Register-TabExpansion PowerShell command in the NuGet author: JonDouglas ms.author: jodou ms.date: 12/07/2017 -ms.topic: reference +ms.topic: reference --- # Register-TabExpansion (Package Manager Console in Visual Studio) diff --git a/docs/reference/ps-reference/ps-ref-sync-package.md b/docs/reference/ps-reference/ps-ref-sync-package.md index b9a46e6c9..1402a12c1 100644 --- a/docs/reference/ps-reference/ps-ref-sync-package.md +++ b/docs/reference/ps-reference/ps-ref-sync-package.md @@ -4,7 +4,7 @@ description: Reference for Sync-Package PowerShell command in the NuGet Package author: JonDouglas ms.author: jodou ms.date: 12/07/2017 -ms.topic: reference +ms.topic: reference --- # Sync-Package (Package Manager Console in Visual Studio) diff --git a/docs/reference/ps-reference/ps-ref-uninstall-package.md b/docs/reference/ps-reference/ps-ref-uninstall-package.md index 86eed0f01..1f51ac3fc 100644 --- a/docs/reference/ps-reference/ps-ref-uninstall-package.md +++ b/docs/reference/ps-reference/ps-ref-uninstall-package.md @@ -4,7 +4,7 @@ description: Reference for Uninstall-Package PowerShell command in the NuGet Pac author: JonDouglas ms.author: jodou ms.date: 06/01/2017 -ms.topic: reference +ms.topic: reference --- # Uninstall-Package (Package Manager Console in Visual Studio) diff --git a/docs/reference/ps-reference/ps-ref-update-package.md b/docs/reference/ps-reference/ps-ref-update-package.md index b8af43043..0b8d9490c 100644 --- a/docs/reference/ps-reference/ps-ref-update-package.md +++ b/docs/reference/ps-reference/ps-ref-update-package.md @@ -4,7 +4,7 @@ description: Reference for Update-Package PowerShell command in the NuGet Packag author: JonDouglas ms.author: jodou ms.date: 12/07/2017 -ms.topic: reference +ms.topic: reference --- # Update-Package (Package Manager Console in Visual Studio) diff --git a/docs/reference/target-frameworks.md b/docs/reference/target-frameworks.md index 287f52b7a..74745ad0e 100644 --- a/docs/reference/target-frameworks.md +++ b/docs/reference/target-frameworks.md @@ -4,7 +4,7 @@ description: NuGet target framework references identify and isolate framework-de author: JonDouglas ms.author: jodou ms.date: 12/11/2017 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur --- diff --git a/docs/release-notes/Index.md b/docs/release-notes/Index.md index 2b1eae9ff..a57bab040 100644 --- a/docs/release-notes/Index.md +++ b/docs/release-notes/Index.md @@ -4,7 +4,7 @@ description: Index of NuGet release notes and known issues for all versions. author: anangaur ms.author: anangaur ms.date: 08/14/2017 -ms.topic: conceptual +ms.topic: conceptual --- # Release Notes diff --git a/docs/release-notes/Known-Issues.md b/docs/release-notes/Known-Issues.md index a23680c06..e2d138f8d 100644 --- a/docs/release-notes/Known-Issues.md +++ b/docs/release-notes/Known-Issues.md @@ -4,7 +4,7 @@ description: Known issues with NuGet including authentication, package installat author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # Known Issues with NuGet diff --git a/docs/release-notes/NuGet-1.1.md b/docs/release-notes/NuGet-1.1.md index 6d42ca832..4c5528e99 100644 --- a/docs/release-notes/NuGet-1.1.md +++ b/docs/release-notes/NuGet-1.1.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 1.1 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 1.0 and 1.1 Release Notes diff --git a/docs/release-notes/NuGet-1.2.md b/docs/release-notes/NuGet-1.2.md index 6571b9e6e..0f3bc6fc1 100644 --- a/docs/release-notes/NuGet-1.2.md +++ b/docs/release-notes/NuGet-1.2.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 1.2 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 1.2 Release Notes diff --git a/docs/release-notes/NuGet-1.3.md b/docs/release-notes/NuGet-1.3.md index a11854951..969adf558 100644 --- a/docs/release-notes/NuGet-1.3.md +++ b/docs/release-notes/NuGet-1.3.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 1.3 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 1.3 Release Notes diff --git a/docs/release-notes/NuGet-1.4.md b/docs/release-notes/NuGet-1.4.md index 144fa5524..ec7165ba8 100644 --- a/docs/release-notes/NuGet-1.4.md +++ b/docs/release-notes/NuGet-1.4.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 1.4 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 1.4 Release Notes diff --git a/docs/release-notes/NuGet-1.5.md b/docs/release-notes/NuGet-1.5.md index 364687dbf..dc8e9c36f 100644 --- a/docs/release-notes/NuGet-1.5.md +++ b/docs/release-notes/NuGet-1.5.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 1.5 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 1.5 Release Notes diff --git a/docs/release-notes/NuGet-1.6.md b/docs/release-notes/NuGet-1.6.md index 7ccaa4892..2aacc4fb0 100644 --- a/docs/release-notes/NuGet-1.6.md +++ b/docs/release-notes/NuGet-1.6.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 1.6 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 1.6 Release Notes diff --git a/docs/release-notes/NuGet-1.7.md b/docs/release-notes/NuGet-1.7.md index a4e878be5..a5e4fd309 100644 --- a/docs/release-notes/NuGet-1.7.md +++ b/docs/release-notes/NuGet-1.7.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 1.7 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 1.7 Release Notes diff --git a/docs/release-notes/NuGet-1.8.md b/docs/release-notes/NuGet-1.8.md index 6895b29d3..538d8d9f5 100644 --- a/docs/release-notes/NuGet-1.8.md +++ b/docs/release-notes/NuGet-1.8.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 1.8 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 1.8 Release Notes diff --git a/docs/release-notes/NuGet-2.0.md b/docs/release-notes/NuGet-2.0.md index d7e2f3592..a17e56499 100644 --- a/docs/release-notes/NuGet-2.0.md +++ b/docs/release-notes/NuGet-2.0.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.0 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.0 Release Notes diff --git a/docs/release-notes/NuGet-2.1.md b/docs/release-notes/NuGet-2.1.md index 5a3b00df4..dba243096 100644 --- a/docs/release-notes/NuGet-2.1.md +++ b/docs/release-notes/NuGet-2.1.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.1 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.1 Release Notes diff --git a/docs/release-notes/NuGet-2.12-RC.md b/docs/release-notes/NuGet-2.12-RC.md index ffd6d73ac..f73c9d999 100644 --- a/docs/release-notes/NuGet-2.12-RC.md +++ b/docs/release-notes/NuGet-2.12-RC.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.12 RC including known issues, bug fixes, author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.12-RC Release Notes diff --git a/docs/release-notes/NuGet-2.12.md b/docs/release-notes/NuGet-2.12.md index eef3d737a..cda73e522 100644 --- a/docs/release-notes/NuGet-2.12.md +++ b/docs/release-notes/NuGet-2.12.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.12 including known issues, bug fixes, add author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.12 Release Notes diff --git a/docs/release-notes/NuGet-2.2.1.md b/docs/release-notes/NuGet-2.2.1.md index 776d22001..c219502b7 100644 --- a/docs/release-notes/NuGet-2.2.1.md +++ b/docs/release-notes/NuGet-2.2.1.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.2.1 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.2.1 Release Notes diff --git a/docs/release-notes/NuGet-2.2.md b/docs/release-notes/NuGet-2.2.md index 99fd38138..835ac4515 100644 --- a/docs/release-notes/NuGet-2.2.md +++ b/docs/release-notes/NuGet-2.2.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.2 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.2 Release Notes diff --git a/docs/release-notes/NuGet-2.5.md b/docs/release-notes/NuGet-2.5.md index dcc93aaef..9266b96c2 100644 --- a/docs/release-notes/NuGet-2.5.md +++ b/docs/release-notes/NuGet-2.5.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.5 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.5 Release Notes diff --git a/docs/release-notes/NuGet-2.6.1-for-WebMatrix.md b/docs/release-notes/NuGet-2.6.1-for-WebMatrix.md index 606b1a7f3..f0efa9e2b 100644 --- a/docs/release-notes/NuGet-2.6.1-for-WebMatrix.md +++ b/docs/release-notes/NuGet-2.6.1-for-WebMatrix.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.6.1 for WebMatrix including known issues, author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.6.1 for WebMatrix Release Notes diff --git a/docs/release-notes/NuGet-2.6.md b/docs/release-notes/NuGet-2.6.md index a1e003383..7f9caea6d 100644 --- a/docs/release-notes/NuGet-2.6.md +++ b/docs/release-notes/NuGet-2.6.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.6.1 for WebMatrix including known issues, author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.6 Release Notes diff --git a/docs/release-notes/NuGet-2.7.1.md b/docs/release-notes/NuGet-2.7.1.md index d12300a97..c5a0e5981 100644 --- a/docs/release-notes/NuGet-2.7.1.md +++ b/docs/release-notes/NuGet-2.7.1.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.7.1 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.7.1 Release Notes diff --git a/docs/release-notes/NuGet-2.7.2.md b/docs/release-notes/NuGet-2.7.2.md index d00da9daf..66f794907 100644 --- a/docs/release-notes/NuGet-2.7.2.md +++ b/docs/release-notes/NuGet-2.7.2.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.7.2 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.7.2 Release Notes diff --git a/docs/release-notes/NuGet-2.7.md b/docs/release-notes/NuGet-2.7.md index 565ff307b..6eb7e99c4 100644 --- a/docs/release-notes/NuGet-2.7.md +++ b/docs/release-notes/NuGet-2.7.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.7 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.7 Release Notes diff --git a/docs/release-notes/NuGet-2.8.1.md b/docs/release-notes/NuGet-2.8.1.md index 3c21a451d..615c21e67 100644 --- a/docs/release-notes/NuGet-2.8.1.md +++ b/docs/release-notes/NuGet-2.8.1.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.8.1 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.8.1 Release Notes diff --git a/docs/release-notes/NuGet-2.8.2.md b/docs/release-notes/NuGet-2.8.2.md index 2f9ddecaf..19ad11db8 100644 --- a/docs/release-notes/NuGet-2.8.2.md +++ b/docs/release-notes/NuGet-2.8.2.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.8.2 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.8.2 Release Notes diff --git a/docs/release-notes/NuGet-2.8.3.md b/docs/release-notes/NuGet-2.8.3.md index b8a55b515..cadecd64e 100644 --- a/docs/release-notes/NuGet-2.8.3.md +++ b/docs/release-notes/NuGet-2.8.3.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.8.3 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.8.3 Release Notes diff --git a/docs/release-notes/NuGet-2.8.5.md b/docs/release-notes/NuGet-2.8.5.md index d034ac0f3..b1e31a879 100644 --- a/docs/release-notes/NuGet-2.8.5.md +++ b/docs/release-notes/NuGet-2.8.5.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.8.5 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.8.5 Release Notes diff --git a/docs/release-notes/NuGet-2.8.6.md b/docs/release-notes/NuGet-2.8.6.md index dbe2f5ee2..e42514894 100644 --- a/docs/release-notes/NuGet-2.8.6.md +++ b/docs/release-notes/NuGet-2.8.6.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.8.6 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.8.6 Release Notes diff --git a/docs/release-notes/NuGet-2.8.7.md b/docs/release-notes/NuGet-2.8.7.md index cb3dde359..4a350456f 100644 --- a/docs/release-notes/NuGet-2.8.7.md +++ b/docs/release-notes/NuGet-2.8.7.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.8.7 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.8.7 Release Notes diff --git a/docs/release-notes/NuGet-2.8.md b/docs/release-notes/NuGet-2.8.md index c7c2411df..0aa5204ac 100644 --- a/docs/release-notes/NuGet-2.8.md +++ b/docs/release-notes/NuGet-2.8.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.8 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.8 Release Notes diff --git a/docs/release-notes/NuGet-2.9-RC.md b/docs/release-notes/NuGet-2.9-RC.md index 8ba73ad39..86d066d7e 100644 --- a/docs/release-notes/NuGet-2.9-RC.md +++ b/docs/release-notes/NuGet-2.9-RC.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.9 RC including known issues, bug fixes, a author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.9-RC Release Notes diff --git a/docs/release-notes/NuGet-3.0-Beta.md b/docs/release-notes/NuGet-3.0-Beta.md index 7ef229604..79020bb1d 100644 --- a/docs/release-notes/NuGet-3.0-Beta.md +++ b/docs/release-notes/NuGet-3.0-Beta.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.0 Beta including known issues, bug fixes, author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.0 Beta Release Notes diff --git a/docs/release-notes/NuGet-3.0-Preview.md b/docs/release-notes/NuGet-3.0-Preview.md index 8966e007d..5e96f6a58 100644 --- a/docs/release-notes/NuGet-3.0-Preview.md +++ b/docs/release-notes/NuGet-3.0-Preview.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.0 Preview including known issues, bug fix author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.0 Preview Release Notes diff --git a/docs/release-notes/NuGet-3.0-RC.md b/docs/release-notes/NuGet-3.0-RC.md index 251214c8e..307686192 100644 --- a/docs/release-notes/NuGet-3.0-RC.md +++ b/docs/release-notes/NuGet-3.0-RC.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.0 RC including known issues, bug fixes, a author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.0 RC Release Notes diff --git a/docs/release-notes/NuGet-3.0-RC2.md b/docs/release-notes/NuGet-3.0-RC2.md index 3f89104a1..f98f82dc9 100644 --- a/docs/release-notes/NuGet-3.0-RC2.md +++ b/docs/release-notes/NuGet-3.0-RC2.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.0 RC2 including known issues, bug fixes, author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.0 RC2 Release Notes diff --git a/docs/release-notes/NuGet-3.0.0.md b/docs/release-notes/NuGet-3.0.0.md index 664e02e3c..201104512 100644 --- a/docs/release-notes/NuGet-3.0.0.md +++ b/docs/release-notes/NuGet-3.0.0.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.0.0 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.0 Release Notes diff --git a/docs/release-notes/NuGet-3.1.1.md b/docs/release-notes/NuGet-3.1.1.md index 3331410e0..a451f1f76 100644 --- a/docs/release-notes/NuGet-3.1.1.md +++ b/docs/release-notes/NuGet-3.1.1.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.1.1 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.1.1 Release Notes diff --git a/docs/release-notes/NuGet-3.1.md b/docs/release-notes/NuGet-3.1.md index 6164bae11..eb3f35745 100644 --- a/docs/release-notes/NuGet-3.1.md +++ b/docs/release-notes/NuGet-3.1.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.1 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.1 Release Notes diff --git a/docs/release-notes/NuGet-3.2-RC.md b/docs/release-notes/NuGet-3.2-RC.md index 5818ef1ca..400a4469b 100644 --- a/docs/release-notes/NuGet-3.2-RC.md +++ b/docs/release-notes/NuGet-3.2-RC.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.2 RC including known issues, bug fixes, a author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.2 RC Release Notes diff --git a/docs/release-notes/NuGet-3.2.1.md b/docs/release-notes/NuGet-3.2.1.md index 38d5a4564..2254dab34 100644 --- a/docs/release-notes/NuGet-3.2.1.md +++ b/docs/release-notes/NuGet-3.2.1.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.2.1 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.2.1 Release Notes diff --git a/docs/release-notes/NuGet-3.2.md b/docs/release-notes/NuGet-3.2.md index 4601f808c..66e20ce53 100644 --- a/docs/release-notes/NuGet-3.2.md +++ b/docs/release-notes/NuGet-3.2.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.2 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.2 Release Notes diff --git a/docs/release-notes/NuGet-3.3.md b/docs/release-notes/NuGet-3.3.md index c47b4eeff..6cf902c08 100644 --- a/docs/release-notes/NuGet-3.3.md +++ b/docs/release-notes/NuGet-3.3.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.3 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.3 Release Notes diff --git a/docs/release-notes/NuGet-3.4-RC.md b/docs/release-notes/NuGet-3.4-RC.md index de0e9bc03..683b7d4b5 100644 --- a/docs/release-notes/NuGet-3.4-RC.md +++ b/docs/release-notes/NuGet-3.4-RC.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.4 RC including known issues, bug fixes, a author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.4-RC Release Notes diff --git a/docs/release-notes/NuGet-3.4.1.md b/docs/release-notes/NuGet-3.4.1.md index f7bef3f6f..ced8a3f2d 100644 --- a/docs/release-notes/NuGet-3.4.1.md +++ b/docs/release-notes/NuGet-3.4.1.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.4.1 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.4.1 Release Notes diff --git a/docs/release-notes/NuGet-3.4.2.md b/docs/release-notes/NuGet-3.4.2.md index f1914888f..70090bb27 100644 --- a/docs/release-notes/NuGet-3.4.2.md +++ b/docs/release-notes/NuGet-3.4.2.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.4.2 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.4.2 Release Notes diff --git a/docs/release-notes/NuGet-3.4.3.md b/docs/release-notes/NuGet-3.4.3.md index b190f78b9..1a9baed1f 100644 --- a/docs/release-notes/NuGet-3.4.3.md +++ b/docs/release-notes/NuGet-3.4.3.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.4.3 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.4.3 Release Notes diff --git a/docs/release-notes/NuGet-3.4.4.md b/docs/release-notes/NuGet-3.4.4.md index cd1396dd8..88898c278 100644 --- a/docs/release-notes/NuGet-3.4.4.md +++ b/docs/release-notes/NuGet-3.4.4.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.4.4 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.4.4 Release Notes diff --git a/docs/release-notes/NuGet-3.4.md b/docs/release-notes/NuGet-3.4.md index 13aa7651e..f6fca1b9e 100644 --- a/docs/release-notes/NuGet-3.4.md +++ b/docs/release-notes/NuGet-3.4.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.4 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.4 Release Notes diff --git a/docs/release-notes/NuGet-3.5-Beta.md b/docs/release-notes/NuGet-3.5-Beta.md index 2a22bf74d..e7f6beab8 100644 --- a/docs/release-notes/NuGet-3.5-Beta.md +++ b/docs/release-notes/NuGet-3.5-Beta.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.5 Beta including known issues, bug fixes, author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.5 Beta Release Notes diff --git a/docs/release-notes/NuGet-3.5-Beta2.md b/docs/release-notes/NuGet-3.5-Beta2.md index 23b01454d..43933ba15 100644 --- a/docs/release-notes/NuGet-3.5-Beta2.md +++ b/docs/release-notes/NuGet-3.5-Beta2.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.5 Beta 2 including known issues, bug fixe author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.5 Beta2 Release Notes diff --git a/docs/release-notes/NuGet-3.5-RC.md b/docs/release-notes/NuGet-3.5-RC.md index e7b46f94e..9651d4d28 100644 --- a/docs/release-notes/NuGet-3.5-RC.md +++ b/docs/release-notes/NuGet-3.5-RC.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.5 RC including known issues, bug fixes, a author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.5 RC Release Notes diff --git a/docs/release-notes/NuGet-3.5-RTM.md b/docs/release-notes/NuGet-3.5-RTM.md index e9a8ca006..910fdf6af 100644 --- a/docs/release-notes/NuGet-3.5-RTM.md +++ b/docs/release-notes/NuGet-3.5-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.5 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.5 Release Notes diff --git a/docs/release-notes/NuGet-4.0-RC.md b/docs/release-notes/NuGet-4.0-RC.md index 636894afe..05a39667b 100644 --- a/docs/release-notes/NuGet-4.0-RC.md +++ b/docs/release-notes/NuGet-4.0-RC.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 4.0 RC including known issues, bug fixes, a author: JonDouglas ms.author: jodou ms.date: 02/03/2017 -ms.topic: conceptual +ms.topic: conceptual ms.reviewer: ananguar --- diff --git a/docs/release-notes/NuGet-4.0-RTM.md b/docs/release-notes/NuGet-4.0-RTM.md index 48ae3e641..9496a99fa 100644 --- a/docs/release-notes/NuGet-4.0-RTM.md +++ b/docs/release-notes/NuGet-4.0-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 4.0 RTM including known issues, bug fixes, author: anangaur ms.author: anangaur ms.date: 03/03/2017 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 4.0 RTM Release Notes diff --git a/docs/release-notes/NuGet-4.3-RTM.md b/docs/release-notes/NuGet-4.3-RTM.md index aa9e7702b..5fac24572 100644 --- a/docs/release-notes/NuGet-4.3-RTM.md +++ b/docs/release-notes/NuGet-4.3-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 4.3 RTM including known issues, bug fixes, author: JonDouglas ms.author: jodou ms.date: 08/14/2017 -ms.topic: conceptual +ms.topic: conceptual ms.reviewer: anangaur --- diff --git a/docs/release-notes/NuGet-4.4-RTM.md b/docs/release-notes/NuGet-4.4-RTM.md index e0e5c7b5a..752a7ee73 100644 --- a/docs/release-notes/NuGet-4.4-RTM.md +++ b/docs/release-notes/NuGet-4.4-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 4.3 RTM including known issues, bug fixes, author: JonDouglas ms.author: jodou ms.date: 08/14/2017 -ms.topic: conceptual +ms.topic: conceptual ms.reviewer: anangaur --- diff --git a/docs/release-notes/NuGet-4.5-RTM.md b/docs/release-notes/NuGet-4.5-RTM.md index 507e183f7..4b65592d3 100644 --- a/docs/release-notes/NuGet-4.5-RTM.md +++ b/docs/release-notes/NuGet-4.5-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 4.5 RTM including known issues, bug fixes, author: anangaur ms.author: anangaur ms.date: 12/4/2017 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 4.5 Release Notes diff --git a/docs/release-notes/NuGet-4.6-rtm.md b/docs/release-notes/NuGet-4.6-rtm.md index b1e089539..3ca315d88 100644 --- a/docs/release-notes/NuGet-4.6-rtm.md +++ b/docs/release-notes/NuGet-4.6-rtm.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 4.6.0 including known issues, bug fixes, ad author: anangaur ms.author: anangaur ms.date: 3/7/2018 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 4.6 Release Notes diff --git a/docs/release-notes/NuGet-4.7-RTM.md b/docs/release-notes/NuGet-4.7-RTM.md index 4a189d084..46dcaaba3 100644 --- a/docs/release-notes/NuGet-4.7-RTM.md +++ b/docs/release-notes/NuGet-4.7-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 4.7.0 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 5/14/2018 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 4.7 Release Notes diff --git a/docs/release-notes/NuGet-4.8-RTM.md b/docs/release-notes/NuGet-4.8-RTM.md index 56896037f..ff1c65da0 100644 --- a/docs/release-notes/NuGet-4.8-RTM.md +++ b/docs/release-notes/NuGet-4.8-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 4.8.1 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 5/14/2018 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 4.8 Release Notes diff --git a/docs/release-notes/NuGet-4.9-RTM.md b/docs/release-notes/NuGet-4.9-RTM.md index c139a7823..b89153d60 100644 --- a/docs/release-notes/NuGet-4.9-RTM.md +++ b/docs/release-notes/NuGet-4.9-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 4.9 including known issues, bug fixes, new author: JonDouglas ms.author: jodou ms.date: 11/20/2018 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 4.9 Release Notes diff --git a/docs/release-notes/NuGet-5.0-RTM.md b/docs/release-notes/NuGet-5.0-RTM.md index cb3cfbd3a..d6c74744f 100644 --- a/docs/release-notes/NuGet-5.0-RTM.md +++ b/docs/release-notes/NuGet-5.0-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.0 including known issues, bug fixes, new author: JonDouglas ms.author: jodou ms.date: 04/02/2019 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 5.0 Release Notes diff --git a/docs/release-notes/NuGet-5.1-RTM.md b/docs/release-notes/NuGet-5.1-RTM.md index b661d0365..73bcf9912 100644 --- a/docs/release-notes/NuGet-5.1-RTM.md +++ b/docs/release-notes/NuGet-5.1-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.1 including new features, bug fixes, and author: JonDouglas ms.author: jodou ms.date: 05/21/2019 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 5.1 Release Notes diff --git a/docs/release-notes/NuGet-5.2-RTM.md b/docs/release-notes/NuGet-5.2-RTM.md index d08c67711..204bf4814 100644 --- a/docs/release-notes/NuGet-5.2-RTM.md +++ b/docs/release-notes/NuGet-5.2-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.2 including new features, bug fixes, and author: JonDouglas ms.author: jodou ms.date: 07/23/2019 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 5.2 Release Notes diff --git a/docs/release-notes/NuGet-5.3.md b/docs/release-notes/NuGet-5.3.md index 6bbf19858..64731e08c 100644 --- a/docs/release-notes/NuGet-5.3.md +++ b/docs/release-notes/NuGet-5.3.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.3 including new features, bug fixes, and author: JonDouglas ms.author: jodou ms.date: 09/06/2019 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 5.3 Release Notes diff --git a/docs/release-notes/NuGet-5.4.md b/docs/release-notes/NuGet-5.4.md index ddcd32535..13dec264c 100644 --- a/docs/release-notes/NuGet-5.4.md +++ b/docs/release-notes/NuGet-5.4.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.4 including new features, bug fixes, and author: JonDouglas ms.author: jodou ms.date: 09/06/2019 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 5.4 Release Notes diff --git a/docs/release-notes/NuGet-5.5.md b/docs/release-notes/NuGet-5.5.md index 6bb6cc47f..0061f13cf 100644 --- a/docs/release-notes/NuGet-5.5.md +++ b/docs/release-notes/NuGet-5.5.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.5 including new features, bug fixes, and author: JonDouglas ms.author: jodou ms.date: 03/19/2020 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 5.5 Release Notes diff --git a/docs/release-notes/NuGet-5.6.md b/docs/release-notes/NuGet-5.6.md index ed6e363cf..3c4786cae 100644 --- a/docs/release-notes/NuGet-5.6.md +++ b/docs/release-notes/NuGet-5.6.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.6 including new features, bug fixes, and author: chgill-msft ms.author: chgill ms.date: 05/19/2020 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 5.6 Release Notes diff --git a/docs/release-notes/NuGet-5.7.md b/docs/release-notes/NuGet-5.7.md index cd8cf91bf..556cb1225 100644 --- a/docs/release-notes/NuGet-5.7.md +++ b/docs/release-notes/NuGet-5.7.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.7 including new features, bug fixes, and author: chgill-msft ms.author: chgill ms.date: 8/14/2020 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 5.7 Release Notes diff --git a/docs/release-notes/NuGet-5.8.md b/docs/release-notes/NuGet-5.8.md index f054f3a99..9dd9a5074 100644 --- a/docs/release-notes/NuGet-5.8.md +++ b/docs/release-notes/NuGet-5.8.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.8 including new features, bug fixes, and author: dominofire ms.author: feaguila ms.date: 11/9/2020 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 5.8 Release Notes diff --git a/docs/release-notes/NuGet-5.9.md b/docs/release-notes/NuGet-5.9.md index d723778d8..17455c058 100644 --- a/docs/release-notes/NuGet-5.9.md +++ b/docs/release-notes/NuGet-5.9.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.9 including new features, bug fixes, and author: erdembayar ms.author: eryondon ms.date: 3/11/2021 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 5.9 Release Notes diff --git a/docs/resources/NuGet-FAQ.md b/docs/resources/NuGet-FAQ.md index e5449ae93..cf92e82c1 100644 --- a/docs/resources/NuGet-FAQ.md +++ b/docs/resources/NuGet-FAQ.md @@ -4,7 +4,7 @@ description: Common questions and answers for using NuGet on the command line an author: shishirx34 ms.author: shishirh ms.date: 06/05/2019 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet frequently-asked questions diff --git a/docs/resources/check-project-format.md b/docs/resources/check-project-format.md index 03e7ce594..cc994ba9e 100644 --- a/docs/resources/check-project-format.md +++ b/docs/resources/check-project-format.md @@ -4,7 +4,7 @@ description: Describes how to identity your project format author: mikejo5000 ms.author: mikejo ms.date: 07/09/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Identify the project format diff --git a/docs/visual-studio-extensibility/Project-System-Support.md b/docs/visual-studio-extensibility/Project-System-Support.md index b220fdd9a..6a8d30c8c 100644 --- a/docs/visual-studio-extensibility/Project-System-Support.md +++ b/docs/visual-studio-extensibility/Project-System-Support.md @@ -4,7 +4,7 @@ description: Integration of NuGet into the Visual Studio project system for thir author: JonDouglas ms.author: jodou ms.date: 01/09/2017 -ms.topic: reference +ms.topic: reference --- # NuGet support for the Visual Studio project system diff --git a/docs/visual-studio-extensibility/Visual-Studio-Templates.md b/docs/visual-studio-extensibility/Visual-Studio-Templates.md index 046416985..429a04fef 100644 --- a/docs/visual-studio-extensibility/Visual-Studio-Templates.md +++ b/docs/visual-studio-extensibility/Visual-Studio-Templates.md @@ -4,7 +4,7 @@ description: Instructions for including NuGet packages as part of Visual Studio author: JonDouglas ms.author: jodou ms.date: 01/03/2018 -ms.topic: conceptual +ms.topic: conceptual --- # Packages in Visual Studio templates diff --git a/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md b/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md index 2ac10a217..36789adea 100644 --- a/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md +++ b/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md @@ -4,7 +4,7 @@ description: Interface reference for the API that NuGet exports through the Mana author: nkolev92 ms.author: nikolev ms.date: 01/09/2017 -ms.topic: reference +ms.topic: reference --- # NuGet API in Visual Studio diff --git a/docs/what-is-nuget.md b/docs/what-is-nuget.md index bad0e8bc8..4b4d5e3a1 100644 --- a/docs/what-is-nuget.md +++ b/docs/what-is-nuget.md @@ -4,7 +4,7 @@ description: A comprehensive introduction to what NuGet is and does author: JonDouglas ms.author: jodou ms.date: 05/24/2019 -ms.topic: overview +ms.topic: overview --- # An introduction to NuGet From 9bbb92fba295d341461cbb7a5051c28279b281cd Mon Sep 17 00:00:00 2001 From: Eriawan Kusumawardhono Date: Sun, 18 Apr 2021 15:32:06 +0700 Subject: [PATCH 386/988] Remove link to GoDaddy code certificate Remove link to GoDaddy code certificate because GoDaddy won't provide code signing starting from June 1, 2021 and the current link will not go to code signing certificate anymore. Reference link of code signing certificate ending schedule: https://www.godaddy.com/help/what-are-code-signing-and-driver-signing-certificates-4776 --- docs/create-packages/Sign-a-Package.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/create-packages/Sign-a-Package.md b/docs/create-packages/Sign-a-Package.md index da4a595b6..cd1004a1c 100644 --- a/docs/create-packages/Sign-a-Package.md +++ b/docs/create-packages/Sign-a-Package.md @@ -14,7 +14,7 @@ Signed packages allows for content integrity verification checks which provides ## Get a code signing certificate -Valid certificates may be obtained from a public certificate authority such as [DigiCert](https://www.digicert.com/code-signing/), [Go Daddy](https://www.godaddy.com/web-security/code-signing-certificate), [Global Sign](https://www.globalsign.com/en/code-signing-certificate/), [Comodo](https://www.comodo.com/e-commerce/code-signing/code-signing-certificate.php), [Certum](https://www.certum.eu/certum/cert,offer_en_open_source_cs.xml), etc. The complete list of certification authorities trusted by Windows can be obtained from [http://aka.ms/trustcertpartners](/security/trusted-root/participants-list). +Valid certificates may be obtained from a public certificate authority such as [DigiCert](https://www.digicert.com/code-signing/), [Global Sign](https://www.globalsign.com/en/code-signing-certificate/), [Comodo](https://www.comodo.com/e-commerce/code-signing/code-signing-certificate.php), [Certum](https://www.certum.eu/certum/cert,offer_en_open_source_cs.xml), etc. The complete list of certification authorities trusted by Windows can be obtained from [http://aka.ms/trustcertpartners](/security/trusted-root/participants-list). You can use self-issued certificates for testing purposes. However, packages signed using self-issued certificates are not accepted by NuGet.org. Learn more about [creating a test certificate](#create-a-test-certificate) From 0749e1488fff1dc1e6cdbc5eeabc214f33f9e392 Mon Sep 17 00:00:00 2001 From: "Mike Jones (DOCS)" Date: Tue, 20 Apr 2021 11:11:43 -0700 Subject: [PATCH 387/988] Fixes to suggestions and warnings --- docs/api/NuGet-Protocols.md | 2 +- docs/api/catalog-resource.md | 2 +- docs/api/overview.md | 2 +- docs/api/package-base-address-resource.md | 2 +- docs/api/package-details-template-resource.md | 2 +- docs/api/package-publish-resource.md | 2 +- docs/api/rate-limits.md | 2 +- docs/api/registration-base-url-resource.md | 2 +- docs/api/report-abuse-resource.md | 2 +- docs/api/repository-signatures-resource.md | 2 +- docs/api/search-autocomplete-service-resource.md | 2 +- docs/api/search-query-service-resource.md | 2 +- docs/api/service-index.md | 2 +- docs/api/symbol-package-publish-resource.md | 2 +- docs/api/tools-json.md | 2 +- docs/archive/project-json-and-uwp.md | 2 +- docs/archive/project-json-impact.md | 2 +- docs/archive/project-json.md | 2 +- docs/concepts/Dependency-Resolution.md | 2 +- docs/concepts/Package-Versioning.md | 2 +- docs/concepts/Security-Best-Practices.md | 2 +- docs/concepts/package-installation-process.md | 2 +- docs/concepts/troubleshooting-installed-packages.md | 2 +- docs/consume-packages/Finding-and-Choosing-Packages.md | 2 +- docs/consume-packages/Overview-and-Workflow.md | 2 +- .../Package-References-in-Project-Files.md | 2 +- docs/consume-packages/Package-Restore.md | 4 ++-- .../Package-restore-troubleshooting.md | 2 +- docs/consume-packages/Packages-and-Source-Control.md | 4 ++-- .../Reinstalling-and-Updating-Packages.md | 2 +- docs/consume-packages/Team-Foundation-Build.md | 2 +- docs/consume-packages/configuring-nuget-behavior.md | 2 +- .../consuming-packages-authenticated-feeds.md | 4 ++-- .../install-use-packages-dotnet-cli.md | 2 +- .../consume-packages/install-use-packages-nuget-cli.md | 2 +- .../install-use-packages-powershell.md | 2 +- .../install-use-packages-visual-studio.md | 2 +- docs/consume-packages/installing-signed-packages.md | 2 +- .../managing-the-global-packages-and-cache-folders.md | 2 +- .../migrate-packages-config-to-package-reference.md | 2 +- docs/create-packages/Creating-Localized-Packages.md | 2 +- docs/create-packages/Creating-a-Package.md | 2 +- docs/create-packages/Overview-and-Workflow.md | 2 +- .../Package-authoring-best-practices.md | 2 +- docs/create-packages/Prerelease-Packages.md | 2 +- .../Select-assemblies-referenced-by-projects.md | 2 +- docs/create-packages/Sign-a-Package.md | 2 +- .../Source-and-Config-File-Transformations.md | 2 +- .../Supporting-Multiple-Target-Frameworks.md | 2 +- docs/create-packages/Symbol-Packages-snupkg.md | 2 +- docs/create-packages/Symbol-Packages.md | 2 +- .../author-packages-with-COM-interop-assemblies.md | 2 +- docs/create-packages/creating-a-package-dotnet-cli.md | 2 +- docs/create-packages/creating-a-package-msbuild.md | 4 ++-- .../multiple-target-frameworks-project-file.md | 2 +- docs/create-packages/set-package-type.md | 2 +- docs/guides/Create-NET-Standard-Packages-VS2015.md | 2 +- docs/guides/Create-UI-Controls.md | 2 +- docs/guides/Create-UWP-Packages-CS.md | 2 +- docs/guides/Create-UWP-Packages.md | 2 +- docs/guides/Native-Packages.md | 2 +- docs/guides/analyzers-conventions.md | 2 +- docs/guides/api/query-for-all-published-packages.md | 2 +- docs/guides/create-packages-for-xamarin.md | 2 +- docs/hosting-packages/Local-Feeds.md | 2 +- docs/hosting-packages/NuGet-Server.md | 2 +- docs/hosting-packages/Overview.md | 2 +- docs/install-nuget-client-tools.md | 2 +- docs/nuget-org/Deprecate-packages.md | 2 +- docs/nuget-org/Publish-a-package.md | 2 +- docs/nuget-org/id-prefix-reservation.md | 2 +- docs/nuget-org/individual-accounts.md | 6 +++--- docs/nuget-org/nuget-org-faq.md | 2 +- docs/nuget-org/organizations-on-nuget-org.md | 2 +- docs/nuget-org/overview-nuget-org.md | 2 +- docs/nuget-org/policies/data-requests.md | 2 +- docs/nuget-org/policies/deleting-packages.md | 2 +- docs/nuget-org/policies/dispute-resolution.md | 2 +- docs/nuget-org/policies/export-control.md | 2 +- docs/nuget-org/scoped-api-keys.md | 10 +++++----- docs/policies/Ecosystem.md | 2 +- docs/policies/Governance.md | 2 +- ...reate-and-publish-a-package-using-the-dotnet-cli.md | 2 +- ...lish-a-package-using-visual-studio-net-framework.md | 2 +- ...create-and-publish-a-package-using-visual-studio.md | 2 +- .../install-and-use-a-package-in-visual-studio-mac.md | 2 +- .../install-and-use-a-package-in-visual-studio.md | 2 +- .../install-and-use-a-package-using-the-dotnet-cli.md | 2 +- docs/reference/Errors-and-Warnings.md | 2 +- docs/reference/NuGet-Client-SDK.md | 2 +- docs/reference/PowerShell-Reference.md | 4 ++-- docs/reference/Signed-Packages-Reference.md | 2 +- docs/reference/cli-reference/cli-ref-add.md | 2 +- docs/reference/cli-reference/cli-ref-config.md | 2 +- docs/reference/cli-reference/cli-ref-delete.md | 2 +- .../cli-reference/cli-ref-environment-variables.md | 2 +- docs/reference/cli-reference/cli-ref-help.md | 2 +- docs/reference/cli-reference/cli-ref-init.md | 2 +- docs/reference/cli-reference/cli-ref-install.md | 2 +- docs/reference/cli-reference/cli-ref-list.md | 2 +- docs/reference/cli-reference/cli-ref-locals.md | 2 +- docs/reference/cli-reference/cli-ref-long-path.md | 2 +- docs/reference/cli-reference/cli-ref-mirror.md | 2 +- docs/reference/cli-reference/cli-ref-pack.md | 2 +- docs/reference/cli-reference/cli-ref-push.md | 2 +- docs/reference/cli-reference/cli-ref-restore.md | 2 +- docs/reference/cli-reference/cli-ref-search.md | 2 +- docs/reference/cli-reference/cli-ref-setapikey.md | 2 +- docs/reference/cli-reference/cli-ref-sign.md | 2 +- docs/reference/cli-reference/cli-ref-sources.md | 2 +- docs/reference/cli-reference/cli-ref-spec.md | 2 +- .../reference/cli-reference/cli-ref-trusted-signers.md | 2 +- docs/reference/cli-reference/cli-ref-update.md | 2 +- docs/reference/cli-reference/cli-ref-verify.md | 2 +- docs/reference/dotnet-Commands.md | 2 +- docs/reference/errors-and-warnings/NU1000.md | 2 +- docs/reference/errors-and-warnings/NU1001.md | 2 +- docs/reference/errors-and-warnings/NU1002.md | 2 +- docs/reference/errors-and-warnings/NU1003.md | 2 +- docs/reference/errors-and-warnings/NU1100.md | 2 +- docs/reference/errors-and-warnings/NU1101.md | 2 +- docs/reference/errors-and-warnings/NU1102.md | 2 +- docs/reference/errors-and-warnings/NU1103.md | 2 +- docs/reference/errors-and-warnings/NU1104.md | 2 +- docs/reference/errors-and-warnings/NU1105.md | 2 +- docs/reference/errors-and-warnings/NU1106.md | 2 +- docs/reference/errors-and-warnings/NU1107.md | 2 +- docs/reference/errors-and-warnings/NU1108.md | 2 +- docs/reference/errors-and-warnings/NU1201.md | 2 +- docs/reference/errors-and-warnings/NU1202.md | 2 +- docs/reference/errors-and-warnings/NU1203.md | 2 +- docs/reference/errors-and-warnings/NU1401.md | 2 +- docs/reference/errors-and-warnings/NU1500.md | 2 +- docs/reference/errors-and-warnings/NU1501.md | 2 +- docs/reference/errors-and-warnings/NU1502.md | 2 +- docs/reference/errors-and-warnings/NU1503.md | 2 +- docs/reference/errors-and-warnings/NU1601.md | 2 +- docs/reference/errors-and-warnings/NU1602.md | 2 +- docs/reference/errors-and-warnings/NU1603.md | 2 +- docs/reference/errors-and-warnings/NU1604.md | 2 +- docs/reference/errors-and-warnings/NU1605.md | 2 +- docs/reference/errors-and-warnings/NU1608.md | 2 +- docs/reference/errors-and-warnings/NU1701.md | 2 +- docs/reference/errors-and-warnings/NU1801.md | 2 +- docs/reference/errors-and-warnings/NU3000.md | 2 +- docs/reference/errors-and-warnings/NU3001.md | 2 +- docs/reference/errors-and-warnings/NU3002.md | 2 +- docs/reference/errors-and-warnings/NU3003.md | 2 +- docs/reference/errors-and-warnings/NU3004.md | 2 +- docs/reference/errors-and-warnings/NU3005.md | 2 +- docs/reference/errors-and-warnings/NU3006.md | 2 +- docs/reference/errors-and-warnings/NU3007.md | 2 +- docs/reference/errors-and-warnings/NU3008.md | 2 +- docs/reference/errors-and-warnings/NU3009.md | 2 +- docs/reference/errors-and-warnings/NU3010.md | 2 +- docs/reference/errors-and-warnings/NU3011.md | 2 +- docs/reference/errors-and-warnings/NU3012.md | 2 +- docs/reference/errors-and-warnings/NU3013.md | 2 +- docs/reference/errors-and-warnings/NU3014.md | 2 +- docs/reference/errors-and-warnings/NU3015.md | 2 +- docs/reference/errors-and-warnings/NU3016.md | 2 +- docs/reference/errors-and-warnings/NU3017.md | 2 +- docs/reference/errors-and-warnings/NU3018.md | 2 +- docs/reference/errors-and-warnings/NU3019.md | 2 +- docs/reference/errors-and-warnings/NU3020.md | 2 +- docs/reference/errors-and-warnings/NU3021.md | 2 +- docs/reference/errors-and-warnings/NU3022.md | 2 +- docs/reference/errors-and-warnings/NU3023.md | 2 +- docs/reference/errors-and-warnings/NU3024.md | 2 +- docs/reference/errors-and-warnings/NU3025.md | 2 +- docs/reference/errors-and-warnings/NU3026.md | 2 +- docs/reference/errors-and-warnings/NU3027.md | 2 +- docs/reference/errors-and-warnings/NU3028.md | 2 +- docs/reference/errors-and-warnings/NU3029.md | 2 +- docs/reference/errors-and-warnings/NU3030.md | 2 +- docs/reference/errors-and-warnings/NU3031.md | 2 +- docs/reference/errors-and-warnings/NU3032.md | 2 +- docs/reference/errors-and-warnings/NU3033.md | 2 +- docs/reference/errors-and-warnings/NU3034.md | 2 +- docs/reference/errors-and-warnings/NU3035.md | 2 +- docs/reference/errors-and-warnings/NU3036.md | 2 +- docs/reference/errors-and-warnings/NU3037.md | 2 +- docs/reference/errors-and-warnings/NU3038.md | 2 +- docs/reference/errors-and-warnings/NU3040.md | 2 +- docs/reference/errors-and-warnings/NU5000.md | 2 +- docs/reference/errors-and-warnings/NU5001.md | 2 +- docs/reference/errors-and-warnings/NU5002.md | 2 +- docs/reference/errors-and-warnings/NU5003.md | 2 +- docs/reference/errors-and-warnings/NU5004.md | 2 +- docs/reference/errors-and-warnings/NU5005.md | 2 +- docs/reference/errors-and-warnings/NU5007.md | 2 +- docs/reference/errors-and-warnings/NU5008.md | 2 +- docs/reference/errors-and-warnings/NU5009.md | 2 +- docs/reference/errors-and-warnings/NU5010.md | 2 +- docs/reference/errors-and-warnings/NU5011.md | 2 +- docs/reference/errors-and-warnings/NU5012.md | 2 +- docs/reference/errors-and-warnings/NU5013.md | 2 +- docs/reference/errors-and-warnings/NU5014.md | 2 +- docs/reference/errors-and-warnings/NU5015.md | 2 +- docs/reference/errors-and-warnings/NU5016.md | 2 +- docs/reference/errors-and-warnings/NU5017.md | 2 +- docs/reference/errors-and-warnings/NU5018.md | 2 +- docs/reference/errors-and-warnings/NU5019.md | 2 +- docs/reference/errors-and-warnings/NU5020.md | 2 +- docs/reference/errors-and-warnings/NU5021.md | 2 +- docs/reference/errors-and-warnings/NU5022.md | 2 +- docs/reference/errors-and-warnings/NU5023.md | 2 +- docs/reference/errors-and-warnings/NU5024.md | 2 +- docs/reference/errors-and-warnings/NU5025.md | 2 +- docs/reference/errors-and-warnings/NU5026.md | 2 +- docs/reference/errors-and-warnings/NU5027.md | 2 +- docs/reference/errors-and-warnings/NU5028.md | 2 +- docs/reference/errors-and-warnings/NU5029.md | 2 +- docs/reference/errors-and-warnings/NU5030.md | 2 +- docs/reference/errors-and-warnings/NU5031.md | 2 +- docs/reference/errors-and-warnings/NU5032.md | 2 +- docs/reference/errors-and-warnings/NU5033.md | 2 +- docs/reference/errors-and-warnings/NU5034.md | 2 +- docs/reference/errors-and-warnings/NU5035.md | 2 +- docs/reference/errors-and-warnings/NU5036.md | 2 +- docs/reference/errors-and-warnings/NU5037.md | 2 +- docs/reference/errors-and-warnings/NU5038.md | 2 +- docs/reference/errors-and-warnings/NU5039.md | 2 +- docs/reference/errors-and-warnings/NU5040.md | 2 +- docs/reference/errors-and-warnings/NU5041.md | 2 +- docs/reference/errors-and-warnings/NU5046.md | 2 +- docs/reference/errors-and-warnings/NU5047.md | 2 +- docs/reference/errors-and-warnings/NU5048.md | 2 +- docs/reference/errors-and-warnings/NU5100.md | 2 +- docs/reference/errors-and-warnings/NU5101.md | 2 +- docs/reference/errors-and-warnings/NU5102.md | 2 +- docs/reference/errors-and-warnings/NU5103.md | 2 +- docs/reference/errors-and-warnings/NU5104.md | 2 +- docs/reference/errors-and-warnings/NU5105.md | 2 +- docs/reference/errors-and-warnings/NU5106.md | 2 +- docs/reference/errors-and-warnings/NU5107.md | 2 +- docs/reference/errors-and-warnings/NU5108.md | 2 +- docs/reference/errors-and-warnings/NU5109.md | 2 +- docs/reference/errors-and-warnings/NU5110.md | 2 +- docs/reference/errors-and-warnings/NU5111.md | 2 +- docs/reference/errors-and-warnings/NU5112.md | 2 +- docs/reference/errors-and-warnings/NU5114.md | 2 +- docs/reference/errors-and-warnings/NU5115.md | 2 +- docs/reference/errors-and-warnings/NU5116.md | 2 +- docs/reference/errors-and-warnings/NU5117.md | 2 +- docs/reference/errors-and-warnings/NU5118.md | 2 +- docs/reference/errors-and-warnings/NU5119.md | 2 +- docs/reference/errors-and-warnings/NU5120.md | 2 +- docs/reference/errors-and-warnings/NU5121.md | 2 +- docs/reference/errors-and-warnings/NU5122.md | 2 +- docs/reference/errors-and-warnings/NU5123.md | 2 +- docs/reference/errors-and-warnings/NU5124.md | 2 +- docs/reference/errors-and-warnings/NU5125.md | 2 +- docs/reference/errors-and-warnings/NU5127.md | 2 +- docs/reference/errors-and-warnings/NU5128.md | 2 +- docs/reference/errors-and-warnings/NU5129.md | 2 +- docs/reference/errors-and-warnings/NU5130.md | 2 +- docs/reference/errors-and-warnings/NU5131.md | 2 +- docs/reference/errors-and-warnings/NU5500.md | 2 +- .../NuGet-Credential-Providers-for-Visual-Studio.md | 2 +- .../NuGet-Cross-Platform-Authentication-Plugin.md | 2 +- .../extensibility/NuGet-Cross-Platform-Plugins.md | 2 +- .../extensibility/nuget-exe-Credential-Providers.md | 2 +- docs/reference/msbuild-targets.md | 2 +- docs/reference/nuget-config-file.md | 2 +- docs/reference/nuget-exe-CLI-Reference.md | 2 +- docs/reference/nuspec.md | 2 +- docs/reference/packages-config.md | 2 +- .../ps-reference/ps-ref-add-bindingredirect.md | 2 +- docs/reference/ps-reference/ps-ref-find-package.md | 4 ++-- docs/reference/ps-reference/ps-ref-get-package.md | 4 ++-- docs/reference/ps-reference/ps-ref-get-project.md | 2 +- docs/reference/ps-reference/ps-ref-install-package.md | 4 ++-- docs/reference/ps-reference/ps-ref-open-packagepage.md | 2 +- .../ps-reference/ps-ref-register-tabexpansion.md | 2 +- docs/reference/ps-reference/ps-ref-sync-package.md | 2 +- .../reference/ps-reference/ps-ref-uninstall-package.md | 4 ++-- docs/reference/ps-reference/ps-ref-update-package.md | 2 +- docs/reference/target-frameworks.md | 2 +- docs/release-notes/Index.md | 2 +- docs/release-notes/Known-Issues.md | 2 +- docs/release-notes/NuGet-1.1.md | 2 +- docs/release-notes/NuGet-1.2.md | 2 +- docs/release-notes/NuGet-1.3.md | 2 +- docs/release-notes/NuGet-1.4.md | 2 +- docs/release-notes/NuGet-1.5.md | 2 +- docs/release-notes/NuGet-1.6.md | 2 +- docs/release-notes/NuGet-1.7.md | 2 +- docs/release-notes/NuGet-1.8.md | 2 +- docs/release-notes/NuGet-2.0.md | 2 +- docs/release-notes/NuGet-2.1.md | 2 +- docs/release-notes/NuGet-2.12-RC.md | 2 +- docs/release-notes/NuGet-2.12.md | 2 +- docs/release-notes/NuGet-2.2.1.md | 2 +- docs/release-notes/NuGet-2.2.md | 2 +- docs/release-notes/NuGet-2.5.md | 2 +- docs/release-notes/NuGet-2.6.1-for-WebMatrix.md | 2 +- docs/release-notes/NuGet-2.6.md | 4 ++-- docs/release-notes/NuGet-2.7.1.md | 2 +- docs/release-notes/NuGet-2.7.2.md | 2 +- docs/release-notes/NuGet-2.7.md | 2 +- docs/release-notes/NuGet-2.8.1.md | 2 +- docs/release-notes/NuGet-2.8.2.md | 2 +- docs/release-notes/NuGet-2.8.3.md | 2 +- docs/release-notes/NuGet-2.8.5.md | 2 +- docs/release-notes/NuGet-2.8.6.md | 2 +- docs/release-notes/NuGet-2.8.7.md | 2 +- docs/release-notes/NuGet-2.8.md | 2 +- docs/release-notes/NuGet-2.9-RC.md | 2 +- docs/release-notes/NuGet-3.0-Beta.md | 2 +- docs/release-notes/NuGet-3.0-Preview.md | 2 +- docs/release-notes/NuGet-3.0-RC.md | 2 +- docs/release-notes/NuGet-3.0-RC2.md | 2 +- docs/release-notes/NuGet-3.0.0.md | 2 +- docs/release-notes/NuGet-3.1.1.md | 2 +- docs/release-notes/NuGet-3.1.md | 2 +- docs/release-notes/NuGet-3.2-RC.md | 2 +- docs/release-notes/NuGet-3.2.1.md | 2 +- docs/release-notes/NuGet-3.2.md | 2 +- docs/release-notes/NuGet-3.3.md | 2 +- docs/release-notes/NuGet-3.4-RC.md | 2 +- docs/release-notes/NuGet-3.4.1.md | 2 +- docs/release-notes/NuGet-3.4.2.md | 2 +- docs/release-notes/NuGet-3.4.3.md | 2 +- docs/release-notes/NuGet-3.4.4.md | 2 +- docs/release-notes/NuGet-3.4.md | 2 +- docs/release-notes/NuGet-3.5-Beta.md | 2 +- docs/release-notes/NuGet-3.5-Beta2.md | 2 +- docs/release-notes/NuGet-3.5-RC.md | 2 +- docs/release-notes/NuGet-3.5-RTM.md | 2 +- docs/release-notes/NuGet-4.0-RC.md | 2 +- docs/release-notes/NuGet-4.0-RTM.md | 2 +- docs/release-notes/NuGet-4.3-RTM.md | 2 +- docs/release-notes/NuGet-4.4-RTM.md | 4 ++-- docs/release-notes/NuGet-4.5-RTM.md | 2 +- docs/release-notes/NuGet-4.6-rtm.md | 2 +- docs/release-notes/NuGet-4.7-RTM.md | 2 +- docs/release-notes/NuGet-4.8-RTM.md | 2 +- docs/release-notes/NuGet-4.9-RTM.md | 2 +- docs/release-notes/NuGet-5.0-RTM.md | 4 ++-- docs/release-notes/NuGet-5.1-RTM.md | 2 +- docs/release-notes/NuGet-5.2-RTM.md | 2 +- docs/release-notes/NuGet-5.3.md | 2 +- docs/release-notes/NuGet-5.4.md | 2 +- docs/release-notes/NuGet-5.5.md | 2 +- docs/release-notes/NuGet-5.6.md | 2 +- docs/release-notes/NuGet-5.7.md | 2 +- docs/release-notes/NuGet-5.8.md | 2 +- docs/release-notes/NuGet-5.9.md | 2 +- docs/resources/NuGet-FAQ.md | 2 +- docs/resources/check-project-format.md | 2 +- .../Project-System-Support.md | 4 ++-- .../Visual-Studio-Templates.md | 2 +- .../nuget-api-in-visual-studio.md | 2 +- docs/what-is-nuget.md | 2 +- 355 files changed, 374 insertions(+), 374 deletions(-) diff --git a/docs/api/NuGet-Protocols.md b/docs/api/NuGet-Protocols.md index 6c8fd1479..0a027b5c2 100644 --- a/docs/api/NuGet-Protocols.md +++ b/docs/api/NuGet-Protocols.md @@ -4,7 +4,7 @@ description: The evolving nuget.org protocols to interact with NuGet clients. author: anangaur ms.author: anangaur ms.date: 01/21/2021 -ms.topic: conceptual +ms.topic: conceptual ms.reviewer: kraigb --- diff --git a/docs/api/catalog-resource.md b/docs/api/catalog-resource.md index b26b3c469..a12e6c603 100644 --- a/docs/api/catalog-resource.md +++ b/docs/api/catalog-resource.md @@ -4,7 +4,7 @@ description: The catalog is an index of all packages created and deleted on nuge author: joelverhagen ms.author: jver ms.date: 10/30/2017 -ms.topic: reference +ms.topic: reference ms.reviewer: kraigb --- diff --git a/docs/api/overview.md b/docs/api/overview.md index 7ee8209b1..7201f6431 100644 --- a/docs/api/overview.md +++ b/docs/api/overview.md @@ -4,7 +4,7 @@ description: The NuGet Server API is a set of HTTP endpoints that can be used to author: joelverhagen ms.author: jver ms.date: 10/26/2017 -ms.topic: reference +ms.topic: reference ms.reviewer: kraigb --- diff --git a/docs/api/package-base-address-resource.md b/docs/api/package-base-address-resource.md index b958fb3dd..d3bf8e43d 100644 --- a/docs/api/package-base-address-resource.md +++ b/docs/api/package-base-address-resource.md @@ -4,7 +4,7 @@ description: The package base address is a simple interface for fetching the pac author: joelverhagen ms.author: jver ms.date: 10/26/2017 -ms.topic: reference +ms.topic: reference ms.reviewer: kraigb --- diff --git a/docs/api/package-details-template-resource.md b/docs/api/package-details-template-resource.md index c261786d1..b2c7928f3 100644 --- a/docs/api/package-details-template-resource.md +++ b/docs/api/package-details-template-resource.md @@ -4,7 +4,7 @@ description: The package details URL template allows clients to display in their author: joelverhagen ms.author: jver ms.date: 3/1/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: ananguar --- diff --git a/docs/api/package-publish-resource.md b/docs/api/package-publish-resource.md index 82cc33c35..57ffa8e46 100644 --- a/docs/api/package-publish-resource.md +++ b/docs/api/package-publish-resource.md @@ -4,7 +4,7 @@ description: The publish service allows clients to publish new packages and unli author: joelverhagen ms.author: jver ms.date: 10/26/2017 -ms.topic: reference +ms.topic: reference ms.reviewer: kraigb --- diff --git a/docs/api/rate-limits.md b/docs/api/rate-limits.md index ef4c6ee4b..f738504b6 100644 --- a/docs/api/rate-limits.md +++ b/docs/api/rate-limits.md @@ -4,7 +4,7 @@ description: The NuGet APIs will have enforced rate limits to prevent abuse. author: cmanu ms.author: cmanu ms.date: 03/20/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: - skofman - anangaur diff --git a/docs/api/registration-base-url-resource.md b/docs/api/registration-base-url-resource.md index 9b7f5780b..1bf753365 100644 --- a/docs/api/registration-base-url-resource.md +++ b/docs/api/registration-base-url-resource.md @@ -4,7 +4,7 @@ description: The package registration base URL allows fetching metadata about pa author: joelverhagen ms.author: jver ms.date: 10/26/2017 -ms.topic: reference +ms.topic: reference ms.reviewer: kraigb --- diff --git a/docs/api/report-abuse-resource.md b/docs/api/report-abuse-resource.md index d05b1a8b4..dd052189a 100644 --- a/docs/api/report-abuse-resource.md +++ b/docs/api/report-abuse-resource.md @@ -4,7 +4,7 @@ description: The report abuse URL template allows clients to display a report ab author: joelverhagen ms.author: jver ms.date: 10/26/2017 -ms.topic: reference +ms.topic: reference ms.reviewer: kraigb --- diff --git a/docs/api/repository-signatures-resource.md b/docs/api/repository-signatures-resource.md index cd8f77df4..1b67ccdc3 100644 --- a/docs/api/repository-signatures-resource.md +++ b/docs/api/repository-signatures-resource.md @@ -3,7 +3,7 @@ title: Repository Signatures, NuGet API | Microsoft Docs author: joelverhagen ms.author: jver ms.date: 3/2/2018 -ms.topic: reference +ms.topic: reference description: The repository signatures resource allows clients package sources to announce their repository signing capabilities. ms.reviewer: - karann diff --git a/docs/api/search-autocomplete-service-resource.md b/docs/api/search-autocomplete-service-resource.md index 09bf04132..bec6ca03c 100644 --- a/docs/api/search-autocomplete-service-resource.md +++ b/docs/api/search-autocomplete-service-resource.md @@ -4,7 +4,7 @@ description: The search autocomplete service supports interactive discovery of p author: joelverhagen ms.author: jver ms.date: 10/26/2017 -ms.topic: reference +ms.topic: reference ms.reviewer: kraigb --- diff --git a/docs/api/search-query-service-resource.md b/docs/api/search-query-service-resource.md index 7a4d8a471..17cf2378c 100644 --- a/docs/api/search-query-service-resource.md +++ b/docs/api/search-query-service-resource.md @@ -4,7 +4,7 @@ description: The search service allows clients to query for packages by keyword author: joelverhagen ms.author: jver ms.date: 10/26/2017 -ms.topic: reference +ms.topic: reference ms.reviewer: kraigb --- diff --git a/docs/api/service-index.md b/docs/api/service-index.md index b34b61a93..faacd9351 100644 --- a/docs/api/service-index.md +++ b/docs/api/service-index.md @@ -4,7 +4,7 @@ description: The service index is the entry point of the NuGet HTTP API and enum author: joelverhagen ms.author: jver ms.date: 10/26/2017 -ms.topic: reference +ms.topic: reference ms.reviewer: kraigb --- diff --git a/docs/api/symbol-package-publish-resource.md b/docs/api/symbol-package-publish-resource.md index b970f3cf1..8e9fe1a80 100644 --- a/docs/api/symbol-package-publish-resource.md +++ b/docs/api/symbol-package-publish-resource.md @@ -4,7 +4,7 @@ author: cristinamanum ms.author: cmanu manager: skofman ms.date: 10/30/2018 -ms.topic: reference +ms.topic: reference ms.prod: nuget ms.technology: null description: The publish service allows clients to publish new symbol packages. diff --git a/docs/api/tools-json.md b/docs/api/tools-json.md index 220e564c9..692e45b0e 100644 --- a/docs/api/tools-json.md +++ b/docs/api/tools-json.md @@ -4,7 +4,7 @@ description: The endpoint for author: jver ms.author: jver ms.date: 08/16/2018 -ms.topic: conceptual +ms.topic: conceptual ms.reviewer: kraigb --- diff --git a/docs/archive/project-json-and-uwp.md b/docs/archive/project-json-and-uwp.md index fa292c3a2..b36ab5d20 100644 --- a/docs/archive/project-json-and-uwp.md +++ b/docs/archive/project-json-and-uwp.md @@ -4,7 +4,7 @@ description: Description of how the project.json file is used to track NuGet dep author: JonDouglas ms.author: jodou ms.date: 07/17/2017 -ms.topic: conceptual +ms.topic: conceptual --- # project.json and UWP diff --git a/docs/archive/project-json-impact.md b/docs/archive/project-json-impact.md index 2fa0b8cc6..3f171f019 100644 --- a/docs/archive/project-json-impact.md +++ b/docs/archive/project-json-impact.md @@ -4,7 +4,7 @@ description: Details on how the implementation of project.json in NuGet 3.x affe author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: conceptual +ms.topic: conceptual --- # Impact of project.json when creating packages diff --git a/docs/archive/project-json.md b/docs/archive/project-json.md index b74759fd4..e091f0837 100644 --- a/docs/archive/project-json.md +++ b/docs/archive/project-json.md @@ -4,7 +4,7 @@ description: In some project types, project.json maintains the list of NuGet pac author: JonDouglas ms.author: jodou ms.date: 07/27/2017 -ms.topic: reference +ms.topic: reference --- # project.json reference diff --git a/docs/concepts/Dependency-Resolution.md b/docs/concepts/Dependency-Resolution.md index 99308305c..3e7507a84 100644 --- a/docs/concepts/Dependency-Resolution.md +++ b/docs/concepts/Dependency-Resolution.md @@ -4,7 +4,7 @@ description: Details on the process through which a NuGet package's dependencies author: JonDouglas ms.author: jodou ms.date: 08/14/2017 -ms.topic: conceptual +ms.topic: conceptual --- # How NuGet resolves package dependencies diff --git a/docs/concepts/Package-Versioning.md b/docs/concepts/Package-Versioning.md index af2d30ca4..3a965e322 100644 --- a/docs/concepts/Package-Versioning.md +++ b/docs/concepts/Package-Versioning.md @@ -4,7 +4,7 @@ description: Exact details on specifying version numbers and ranges for other pa author: JonDouglas ms.author: jodou ms.date: 03/23/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur --- diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 31c6a4c6a..3db11969a 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -4,7 +4,7 @@ description: Best practices for securing your software supply chain using NuGet author: JonDouglas ms.author: jodou ms.date: 02/08/2021 -ms.topic: conceptual +ms.topic: conceptual --- # Best practices for a secure software supply chain diff --git a/docs/concepts/package-installation-process.md b/docs/concepts/package-installation-process.md index 75d7bad08..0ad246c66 100644 --- a/docs/concepts/package-installation-process.md +++ b/docs/concepts/package-installation-process.md @@ -4,7 +4,7 @@ description: Detailed information about the package installation process author: JonDouglas ms.author: jodou ms.date: 06/20/2019 -ms.topic: conceptual +ms.topic: conceptual --- # What happens when a NuGet package is installed? diff --git a/docs/concepts/troubleshooting-installed-packages.md b/docs/concepts/troubleshooting-installed-packages.md index 6c97be003..1b6c361b9 100644 --- a/docs/concepts/troubleshooting-installed-packages.md +++ b/docs/concepts/troubleshooting-installed-packages.md @@ -4,7 +4,7 @@ description: How to find which package source was used for individual packages author: JonDouglas ms.author: jodou ms.date: 03/26/2021 -ms.topic: conceptual +ms.topic: conceptual --- # Troubleshooting Installed Packages diff --git a/docs/consume-packages/Finding-and-Choosing-Packages.md b/docs/consume-packages/Finding-and-Choosing-Packages.md index ee861cfd9..d450dbcd6 100644 --- a/docs/consume-packages/Finding-and-Choosing-Packages.md +++ b/docs/consume-packages/Finding-and-Choosing-Packages.md @@ -4,7 +4,7 @@ description: An overview of how to find and choose the best NuGet packages for a author: JonDouglas ms.author: jodou ms.date: 06/04/2018 -ms.topic: conceptual +ms.topic: conceptual --- # Finding and evaluating NuGet packages for your project diff --git a/docs/consume-packages/Overview-and-Workflow.md b/docs/consume-packages/Overview-and-Workflow.md index 3181bc9bb..956c13519 100644 --- a/docs/consume-packages/Overview-and-Workflow.md +++ b/docs/consume-packages/Overview-and-Workflow.md @@ -4,7 +4,7 @@ description: An overview of the process of consuming NuGet packages in a project author: JonDouglas ms.author: jodou ms.date: 03/22/2018 -ms.topic: conceptual +ms.topic: conceptual --- # Package consumption workflow diff --git a/docs/consume-packages/Package-References-in-Project-Files.md b/docs/consume-packages/Package-References-in-Project-Files.md index 6b3fdb086..da42298e8 100644 --- a/docs/consume-packages/Package-References-in-Project-Files.md +++ b/docs/consume-packages/Package-References-in-Project-Files.md @@ -4,7 +4,7 @@ description: Details on NuGet PackageReference in project files as supported by author: nkolev92 ms.author: nikolev ms.date: 03/16/2018 -ms.topic: conceptual +ms.topic: conceptual --- # Package references (`PackageReference`) in project files diff --git a/docs/consume-packages/Package-Restore.md b/docs/consume-packages/Package-Restore.md index 62e7af1f9..f7bc40ff7 100644 --- a/docs/consume-packages/Package-Restore.md +++ b/docs/consume-packages/Package-Restore.md @@ -4,7 +4,7 @@ description: An overview of how NuGet restores packages a project depends on, in author: JonDouglas ms.author: jodou ms.date: 08/05/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Restore packages using Package Restore @@ -176,7 +176,7 @@ msbuild -restore ## Restore using Azure Pipelines -When you create a build definition in Azure Pipelines, include the NuGet [restore](/azure/devops/pipelines/tasks/package/nuget#restore-nuget-packages) or .NET Core [restore](/azure/devops/pipelines/tasks/build/dotnet-core-cli?view=azure-devops) task in the definition before any build tasks. Some build templates include the restore task by default. +When you create a build definition in Azure Pipelines, include the NuGet [restore](/azure/devops/pipelines/tasks/package/nuget#restore-nuget-packages) or .NET Core [restore](/azure/devops/pipelines/tasks/build/dotnet-core-cli) task in the definition before any build tasks. Some build templates include the restore task by default. ## Restore using Azure DevOps Server diff --git a/docs/consume-packages/Package-restore-troubleshooting.md b/docs/consume-packages/Package-restore-troubleshooting.md index 09c547687..fb120c9bc 100644 --- a/docs/consume-packages/Package-restore-troubleshooting.md +++ b/docs/consume-packages/Package-restore-troubleshooting.md @@ -4,7 +4,7 @@ description: A description of common NuGet restore errors in Visual Studio and h author: JonDouglas ms.author: jodou ms.date: 05/25/2018 -ms.topic: conceptual +ms.topic: conceptual --- # Troubleshooting package restore errors diff --git a/docs/consume-packages/Packages-and-Source-Control.md b/docs/consume-packages/Packages-and-Source-Control.md index 5fef0c116..dd01f03a7 100644 --- a/docs/consume-packages/Packages-and-Source-Control.md +++ b/docs/consume-packages/Packages-and-Source-Control.md @@ -4,7 +4,7 @@ description: Considerations for how to treat NuGet packages within version contr author: JonDouglas ms.author: jodou ms.date: 03/16/2018 -ms.topic: conceptual +ms.topic: conceptual --- # Omitting NuGet packages in source control systems @@ -75,7 +75,7 @@ To disable source control integration with TFVC for selected files: 1. If you are using TFS 2010 or earlier, cloak the `packages` folder in your workspace mappings. -1. On TFS 2012 or later, or with Visual Studio Team Services, create a `.tfignore` file as described on [Add Files to the Server](/vsts/tfvc/add-files-server?view=vsts#tfignore). In that file, include the content below to explicitly ignore modifications to the `\packages` folder on the repository level and a few other intermediate files. (You can create the file in Windows Explorer using the name a `.tfignore.` with the trailing dot, but you might need to disable the "Hide known file extensions" option first.): +1. On TFS 2012 or later, or with Visual Studio Team Services, create a `.tfignore` file as described on [Add Files to the Server](/vsts/tfvc/add-files-server?view=vsts#tfignore&preserve-view=true). In that file, include the content below to explicitly ignore modifications to the `\packages` folder on the repository level and a few other intermediate files. (You can create the file in Windows Explorer using the name a `.tfignore.` with the trailing dot, but you might need to disable the "Hide known file extensions" option first.): ```cli # Ignore NuGet Packages diff --git a/docs/consume-packages/Reinstalling-and-Updating-Packages.md b/docs/consume-packages/Reinstalling-and-Updating-Packages.md index 21513f0d6..d6a7c46a1 100644 --- a/docs/consume-packages/Reinstalling-and-Updating-Packages.md +++ b/docs/consume-packages/Reinstalling-and-Updating-Packages.md @@ -4,7 +4,7 @@ description: Details on when it's necessary to reinstall and update packages, as author: JonDouglas ms.author: jodou ms.date: 12/07/2017 -ms.topic: conceptual +ms.topic: conceptual --- # How to reinstall and update packages diff --git a/docs/consume-packages/Team-Foundation-Build.md b/docs/consume-packages/Team-Foundation-Build.md index 87024a274..31ad42f2a 100644 --- a/docs/consume-packages/Team-Foundation-Build.md +++ b/docs/consume-packages/Team-Foundation-Build.md @@ -4,7 +4,7 @@ description: A walkthrough of how NuGet package restore with with Team Foundatio author: JonDouglas ms.author: jodou ms.date: 01/09/2017 -ms.topic: conceptual +ms.topic: conceptual --- # Setting up package restore with Team Foundation Build diff --git a/docs/consume-packages/configuring-nuget-behavior.md b/docs/consume-packages/configuring-nuget-behavior.md index e6ca99f70..da3b6e48d 100644 --- a/docs/consume-packages/configuring-nuget-behavior.md +++ b/docs/consume-packages/configuring-nuget-behavior.md @@ -4,7 +4,7 @@ description: NuGet.Config files control NuGet's behavior both globally and on a author: JonDouglas ms.author: jodou ms.date: 10/25/2017 -ms.topic: conceptual +ms.topic: conceptual --- # Common NuGet configurations diff --git a/docs/consume-packages/consuming-packages-authenticated-feeds.md b/docs/consume-packages/consuming-packages-authenticated-feeds.md index d74b4dbc8..66a12bbdc 100644 --- a/docs/consume-packages/consuming-packages-authenticated-feeds.md +++ b/docs/consume-packages/consuming-packages-authenticated-feeds.md @@ -4,7 +4,7 @@ description: Consuming packages from authenticated feeds in all NuGet client sce author: nkolev92 ms.author: nikolev ms.date: 02/28/2020 -ms.topic: conceptual +ms.topic: conceptual --- # Consuming packages from authenticated feeds @@ -56,7 +56,7 @@ For the installation and discovery of those providers refer to [nuget.exe creden #### Available credential providers for nuget.exe -* [Azure DevOps V2 Credential Providers](/azure/devops/artifacts/nuget/nuget-exe?view=azure-devops#add-a-feed-to-nuget-482-or-later) or [Azure Artifacts Credential Provider](https://github.com/microsoft/artifacts-credprovider) +* [Azure DevOps V2 Credential Providers](/azure/devops/artifacts/nuget/nuget-exe#add-a-feed-to-nuget-482-or-later) or [Azure Artifacts Credential Provider](https://github.com/microsoft/artifacts-credprovider) With Visual Studio 2017 version 15.9 and later, the Azure DevOps credential provider is bundled in Visual Studio. If `nuget.exe` uses MSBuild from that specific Visual Studio toolset, then the plugin will be discovered automatically. diff --git a/docs/consume-packages/install-use-packages-dotnet-cli.md b/docs/consume-packages/install-use-packages-dotnet-cli.md index 3311bde68..4da4baf17 100644 --- a/docs/consume-packages/install-use-packages-dotnet-cli.md +++ b/docs/consume-packages/install-use-packages-dotnet-cli.md @@ -4,7 +4,7 @@ description: Instructions for using the dotnet CLI to work with NuGet packages. author: mikejo5000 ms.author: mikejo ms.date: 06/03/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Install and manage packages using the dotnet CLI diff --git a/docs/consume-packages/install-use-packages-nuget-cli.md b/docs/consume-packages/install-use-packages-nuget-cli.md index a5f6d49a5..1067aa7b2 100644 --- a/docs/consume-packages/install-use-packages-nuget-cli.md +++ b/docs/consume-packages/install-use-packages-nuget-cli.md @@ -4,7 +4,7 @@ description: Instructions for using the nuget.exe CLI to work with NuGet package author: mikejo5000 ms.author: mikejo ms.date: 06/03/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Manage packages using the nuget.exe CLI diff --git a/docs/consume-packages/install-use-packages-powershell.md b/docs/consume-packages/install-use-packages-powershell.md index c36e9f57c..c165d8b03 100644 --- a/docs/consume-packages/install-use-packages-powershell.md +++ b/docs/consume-packages/install-use-packages-powershell.md @@ -4,7 +4,7 @@ description: Instructions for using the NuGet Package Manager Console in Visual author: JonDouglas ms.author: jodou ms.date: 07/08/2019 -ms.topic: conceptual +ms.topic: conceptual f1_keywords: - "vs.nuget.packagemanager.console" --- diff --git a/docs/consume-packages/install-use-packages-visual-studio.md b/docs/consume-packages/install-use-packages-visual-studio.md index 37480ac7b..c4b8f8269 100644 --- a/docs/consume-packages/install-use-packages-visual-studio.md +++ b/docs/consume-packages/install-use-packages-visual-studio.md @@ -4,7 +4,7 @@ description: Instructions for using the NuGet Package Manager UI in Visual Studi author: JonDouglas ms.author: jodou ms.date: 07/08/2019 -ms.topic: conceptual +ms.topic: conceptual f1_keywords: - "vs.toolsoptionspages.nuget_package_manager" - "vs.toolsoptionspages.nuget_package_manager.general" diff --git a/docs/consume-packages/installing-signed-packages.md b/docs/consume-packages/installing-signed-packages.md index b60ca4a07..0814218f4 100644 --- a/docs/consume-packages/installing-signed-packages.md +++ b/docs/consume-packages/installing-signed-packages.md @@ -4,7 +4,7 @@ description: Describes the process of installing signed NuGet packages and confi author: JonDouglas ms.author: jodou ms.date: 11/29/2018 -ms.topic: conceptual +ms.topic: conceptual --- # Manage package trust boundaries diff --git a/docs/consume-packages/managing-the-global-packages-and-cache-folders.md b/docs/consume-packages/managing-the-global-packages-and-cache-folders.md index b377e1b67..cb621f84b 100644 --- a/docs/consume-packages/managing-the-global-packages-and-cache-folders.md +++ b/docs/consume-packages/managing-the-global-packages-and-cache-folders.md @@ -4,7 +4,7 @@ description: How to manage the global package installation folder, the package c author: JonDouglas ms.author: jodou ms.date: 03/19/2018 -ms.topic: conceptual +ms.topic: conceptual --- # Managing the global packages, cache, and temp folders diff --git a/docs/consume-packages/migrate-packages-config-to-package-reference.md b/docs/consume-packages/migrate-packages-config-to-package-reference.md index 531d62d54..e5ebec71e 100644 --- a/docs/consume-packages/migrate-packages-config-to-package-reference.md +++ b/docs/consume-packages/migrate-packages-config-to-package-reference.md @@ -4,7 +4,7 @@ description: Details on how to migrate a project from the packages.config manage author: JonDouglas ms.author: jodou ms.date: 05/24/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Migrate from packages.config to PackageReference diff --git a/docs/create-packages/Creating-Localized-Packages.md b/docs/create-packages/Creating-Localized-Packages.md index aeb0efd9c..bb8385772 100644 --- a/docs/create-packages/Creating-Localized-Packages.md +++ b/docs/create-packages/Creating-Localized-Packages.md @@ -4,7 +4,7 @@ description: Details on the two ways to create localized NuGet packages, either author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: conceptual +ms.topic: conceptual --- # Creating localized NuGet packages diff --git a/docs/create-packages/Creating-a-Package.md b/docs/create-packages/Creating-a-Package.md index 9cad557f7..9befb946d 100644 --- a/docs/create-packages/Creating-a-Package.md +++ b/docs/create-packages/Creating-a-Package.md @@ -4,7 +4,7 @@ description: A detailed guide on designing and creating a NuGet package, includi author: JonDouglas ms.author: feaguila ms.date: 07/09/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Create a package using the nuget.exe CLI diff --git a/docs/create-packages/Overview-and-Workflow.md b/docs/create-packages/Overview-and-Workflow.md index 7c3e22d66..96984557b 100644 --- a/docs/create-packages/Overview-and-Workflow.md +++ b/docs/create-packages/Overview-and-Workflow.md @@ -4,7 +4,7 @@ description: An overview of the process of creating and publishing a NuGet packa author: JonDouglas ms.author: jodou ms.date: 07/26/2017 -ms.topic: conceptual +ms.topic: conceptual --- # Package creation workflow diff --git a/docs/create-packages/Package-authoring-best-practices.md b/docs/create-packages/Package-authoring-best-practices.md index 6dc05ceee..e4bf27447 100644 --- a/docs/create-packages/Package-authoring-best-practices.md +++ b/docs/create-packages/Package-authoring-best-practices.md @@ -4,7 +4,7 @@ description: A general guide of best practices for creating high quality NuGet p author: chgill-MSFT ms.author: chgill ms.date: 09/17/2020 -ms.topic: conceptual +ms.topic: conceptual --- # Package authoring best practices diff --git a/docs/create-packages/Prerelease-Packages.md b/docs/create-packages/Prerelease-Packages.md index 0221c121c..3b487f89b 100644 --- a/docs/create-packages/Prerelease-Packages.md +++ b/docs/create-packages/Prerelease-Packages.md @@ -4,7 +4,7 @@ description: Guidance for building pre-release packages author: JonDouglas ms.author: jodou ms.date: 08/14/2017 -ms.topic: conceptual +ms.topic: conceptual --- # Building pre-release packages diff --git a/docs/create-packages/Select-assemblies-referenced-by-projects.md b/docs/create-packages/Select-assemblies-referenced-by-projects.md index ff48b78b5..d0b50c3ce 100644 --- a/docs/create-packages/Select-assemblies-referenced-by-projects.md +++ b/docs/create-packages/Select-assemblies-referenced-by-projects.md @@ -4,7 +4,7 @@ description: Make a subset of assemblies in the package available to the compile author: zivkan ms.author: zivkan ms.date: 05/24/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Select Assemblies Referenced By Projects diff --git a/docs/create-packages/Sign-a-Package.md b/docs/create-packages/Sign-a-Package.md index 58503398b..da4a595b6 100644 --- a/docs/create-packages/Sign-a-Package.md +++ b/docs/create-packages/Sign-a-Package.md @@ -4,7 +4,7 @@ description: Explains how signed packages can be used to enable content integrit author: rido-min ms.author: rmpablos ms.date: 03/06/2018 -ms.topic: conceptual +ms.topic: conceptual ms.reviewer: anangaur --- diff --git a/docs/create-packages/Source-and-Config-File-Transformations.md b/docs/create-packages/Source-and-Config-File-Transformations.md index 57ce83f2d..79402e54c 100644 --- a/docs/create-packages/Source-and-Config-File-Transformations.md +++ b/docs/create-packages/Source-and-Config-File-Transformations.md @@ -4,7 +4,7 @@ description: Details on the ability for NuGet packages to transform source code author: JonDouglas ms.author: jodou ms.date: 04/24/2017 -ms.topic: conceptual +ms.topic: conceptual ms.reviewer: anangaur --- diff --git a/docs/create-packages/Supporting-Multiple-Target-Frameworks.md b/docs/create-packages/Supporting-Multiple-Target-Frameworks.md index 5158f55bb..91576a3c8 100644 --- a/docs/create-packages/Supporting-Multiple-Target-Frameworks.md +++ b/docs/create-packages/Supporting-Multiple-Target-Frameworks.md @@ -4,7 +4,7 @@ description: Description of the various methods to target multiple .NET Framewor author: JonDouglas ms.author: jodou ms.date: 07/15/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Support multiple .NET versions diff --git a/docs/create-packages/Symbol-Packages-snupkg.md b/docs/create-packages/Symbol-Packages-snupkg.md index bad98c581..9212cd022 100644 --- a/docs/create-packages/Symbol-Packages-snupkg.md +++ b/docs/create-packages/Symbol-Packages-snupkg.md @@ -4,7 +4,7 @@ author: JonDouglas ms.author: jodou manager: skofman ms.date: 10/30/2018 -ms.topic: reference +ms.topic: reference ms.prod: nuget ms.technology: null description: How to create NuGet symbol packages (snupkg). diff --git a/docs/create-packages/Symbol-Packages.md b/docs/create-packages/Symbol-Packages.md index 2ceb03831..6a49f689e 100644 --- a/docs/create-packages/Symbol-Packages.md +++ b/docs/create-packages/Symbol-Packages.md @@ -4,7 +4,7 @@ description: How to create NuGet packages that contain only symbols to support d author: JonDouglas ms.author: jodou ms.date: 09/12/2017 -ms.topic: conceptual +ms.topic: conceptual ms.reviewer: anangaur --- diff --git a/docs/create-packages/author-packages-with-COM-interop-assemblies.md b/docs/create-packages/author-packages-with-COM-interop-assemblies.md index 66f7ef187..e37c68ce4 100644 --- a/docs/create-packages/author-packages-with-COM-interop-assemblies.md +++ b/docs/create-packages/author-packages-with-COM-interop-assemblies.md @@ -4,7 +4,7 @@ description: Describes how to create packages that contain COM interop assemblie author: JonDouglas ms.author: jodou ms.date: 07/09/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Create NuGet packages that contain COM interop assemblies diff --git a/docs/create-packages/creating-a-package-dotnet-cli.md b/docs/create-packages/creating-a-package-dotnet-cli.md index 51c80364e..a0feed738 100644 --- a/docs/create-packages/creating-a-package-dotnet-cli.md +++ b/docs/create-packages/creating-a-package-dotnet-cli.md @@ -4,7 +4,7 @@ description: A detailed guide to the process of designing and creating a NuGet p author: JonDouglas ms.author: jodou ms.date: 02/20/2020 -ms.topic: conceptual +ms.topic: conceptual --- # Create a NuGet package using the dotnet CLI diff --git a/docs/create-packages/creating-a-package-msbuild.md b/docs/create-packages/creating-a-package-msbuild.md index 2b9d43c1c..93c036f10 100644 --- a/docs/create-packages/creating-a-package-msbuild.md +++ b/docs/create-packages/creating-a-package-msbuild.md @@ -1,10 +1,10 @@ --- title: Create a NuGet package using MSBuild -description: A detailed guide to the process of designing and creating a NuGet package, including key decision points like files and versioning. +description: A detailed guide to the process of designing and creating a NuGet package using MSBuild, including key decision points like files and versioning. author: JonDouglas ms.author: jodou ms.date: 02/20/2020 -ms.topic: conceptual +ms.topic: conceptual --- # Create a NuGet package using MSBuild diff --git a/docs/create-packages/multiple-target-frameworks-project-file.md b/docs/create-packages/multiple-target-frameworks-project-file.md index 71caebb15..326dc1e6f 100644 --- a/docs/create-packages/multiple-target-frameworks-project-file.md +++ b/docs/create-packages/multiple-target-frameworks-project-file.md @@ -4,7 +4,7 @@ description: Description of the various methods to target multiple .NET Framewor author: JonDouglas ms.author: jodou ms.date: 07/15/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Support multiple .NET Framework versions in your project file diff --git a/docs/create-packages/set-package-type.md b/docs/create-packages/set-package-type.md index c362d251e..fe1f2ca44 100644 --- a/docs/create-packages/set-package-type.md +++ b/docs/create-packages/set-package-type.md @@ -4,7 +4,7 @@ description: Describes packages types to indicate intended use of a package. author: JonDouglas ms.author: jodou ms.date: 07/09/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Set a NuGet package type diff --git a/docs/guides/Create-NET-Standard-Packages-VS2015.md b/docs/guides/Create-NET-Standard-Packages-VS2015.md index 6267aa8fb..8d4e839dc 100644 --- a/docs/guides/Create-NET-Standard-Packages-VS2015.md +++ b/docs/guides/Create-NET-Standard-Packages-VS2015.md @@ -4,7 +4,7 @@ description: An end-to-end walkthrough of creating .NET Standard and .NET Framew author: JonDouglas ms.author: jodou ms.date: 02/02/2018 -ms.topic: tutorial +ms.topic: tutorial --- # Create .NET Standard and .NET Framework packages with Visual Studio 2015 diff --git a/docs/guides/Create-UI-Controls.md b/docs/guides/Create-UI-Controls.md index 6566a6b80..6401326ea 100644 --- a/docs/guides/Create-UI-Controls.md +++ b/docs/guides/Create-UI-Controls.md @@ -4,7 +4,7 @@ description: How to create NuGet packages that contain UWP or WPF controls, incl author: JonDouglas ms.author: jodou ms.date: 05/23/2018 -ms.topic: tutorial +ms.topic: tutorial --- # Creating UI controls as NuGet packages diff --git a/docs/guides/Create-UWP-Packages-CS.md b/docs/guides/Create-UWP-Packages-CS.md index e0acc6891..24edacd94 100644 --- a/docs/guides/Create-UWP-Packages-CS.md +++ b/docs/guides/Create-UWP-Packages-CS.md @@ -4,7 +4,7 @@ description: An end-to-end walkthrough of creating NuGet packages using a Window author: rrelyea ms.author: rrelyea ms.date: 02/28/2020 -ms.topic: tutorial +ms.topic: tutorial --- # Create UWP packages (C#) diff --git a/docs/guides/Create-UWP-Packages.md b/docs/guides/Create-UWP-Packages.md index 784952589..dcb17dc79 100644 --- a/docs/guides/Create-UWP-Packages.md +++ b/docs/guides/Create-UWP-Packages.md @@ -4,7 +4,7 @@ description: An end-to-end walkthrough of creating NuGet packages using a Window author: JonDouglas ms.author: jodou ms.date: 03/21/2017 -ms.topic: tutorial +ms.topic: tutorial --- # Create UWP packages diff --git a/docs/guides/Native-Packages.md b/docs/guides/Native-Packages.md index 4fe115f45..d35d663c5 100644 --- a/docs/guides/Native-Packages.md +++ b/docs/guides/Native-Packages.md @@ -4,7 +4,7 @@ description: Details on creating native NuGet packages that contains C++ code in author: JonDouglas ms.author: jodou ms.date: 01/09/2017 -ms.topic: conceptual +ms.topic: conceptual --- # Creating native packages diff --git a/docs/guides/analyzers-conventions.md b/docs/guides/analyzers-conventions.md index e8f6b6478..8122c81dc 100644 --- a/docs/guides/analyzers-conventions.md +++ b/docs/guides/analyzers-conventions.md @@ -4,7 +4,7 @@ description: Conventions for .NET analyzers that are packaged and distributed wi author: JonDouglas ms.author: jodou ms.date: 01/09/2017 -ms.topic: conceptual +ms.topic: conceptual --- # Analyzer NuGet formats diff --git a/docs/guides/api/query-for-all-published-packages.md b/docs/guides/api/query-for-all-published-packages.md index 4daee7b68..c287b2b87 100644 --- a/docs/guides/api/query-for-all-published-packages.md +++ b/docs/guides/api/query-for-all-published-packages.md @@ -4,7 +4,7 @@ description: Using the NuGet API, you can query for all packages published to nu author: joelverhagen ms.author: jver ms.date: 11/02/2017 -ms.topic: tutorial +ms.topic: tutorial ms.reviewer: kraigb --- diff --git a/docs/guides/create-packages-for-xamarin.md b/docs/guides/create-packages-for-xamarin.md index 7155472ba..0ec741a5f 100644 --- a/docs/guides/create-packages-for-xamarin.md +++ b/docs/guides/create-packages-for-xamarin.md @@ -4,7 +4,7 @@ description: An end-to-end walkthrough of creating NuGet packages for Xamarin th author: JonDouglas ms.author: jodou ms.date: 11/05/2019 -ms.topic: tutorial +ms.topic: tutorial --- # Create packages for Xamarin with Visual Studio 2017 or 2019 diff --git a/docs/hosting-packages/Local-Feeds.md b/docs/hosting-packages/Local-Feeds.md index 2d47ad1b6..de95954d3 100644 --- a/docs/hosting-packages/Local-Feeds.md +++ b/docs/hosting-packages/Local-Feeds.md @@ -4,7 +4,7 @@ description: How to create a local feed for NuGet packages using folders on your author: JonDouglas ms.author: jodou ms.date: 12/06/2017 -ms.topic: conceptual +ms.topic: conceptual --- # Local feeds diff --git a/docs/hosting-packages/NuGet-Server.md b/docs/hosting-packages/NuGet-Server.md index e3162a56e..19d2467c6 100644 --- a/docs/hosting-packages/NuGet-Server.md +++ b/docs/hosting-packages/NuGet-Server.md @@ -4,7 +4,7 @@ description: How to create and host a NuGet package feed on any server running I author: JonDouglas ms.author: jodou ms.date: 03/13/2018 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet.Server diff --git a/docs/hosting-packages/Overview.md b/docs/hosting-packages/Overview.md index 8557eb8d9..3671910cf 100644 --- a/docs/hosting-packages/Overview.md +++ b/docs/hosting-packages/Overview.md @@ -4,7 +4,7 @@ description: An overview of opens for hosting your own NuGet package feeds or ga author: JonDouglas ms.author: jodou ms.date: 08/25/2017 -ms.topic: conceptual +ms.topic: conceptual ms.reviewer: anangaur --- diff --git a/docs/install-nuget-client-tools.md b/docs/install-nuget-client-tools.md index d5907a7c3..fbdb09bdc 100644 --- a/docs/install-nuget-client-tools.md +++ b/docs/install-nuget-client-tools.md @@ -4,7 +4,7 @@ description: Guidance on installing client tools, the dotnet and nuget command-l author: JonDouglas ms.author: jodou ms.date: 06/20/2019 -ms.topic: quickstart +ms.topic: quickstart --- # Install NuGet client tools diff --git a/docs/nuget-org/Deprecate-packages.md b/docs/nuget-org/Deprecate-packages.md index 1e8385815..efd8b6e23 100644 --- a/docs/nuget-org/Deprecate-packages.md +++ b/docs/nuget-org/Deprecate-packages.md @@ -4,7 +4,7 @@ description: Detailed description on the process of deprecating packages and how author: anangaur ms.author: anangaur ms.date: 09/23/2019 -ms.topic: conceptual +ms.topic: conceptual ms.reviewer: karann-msft --- diff --git a/docs/nuget-org/Publish-a-package.md b/docs/nuget-org/Publish-a-package.md index 4806c98f9..627ce921b 100644 --- a/docs/nuget-org/Publish-a-package.md +++ b/docs/nuget-org/Publish-a-package.md @@ -4,7 +4,7 @@ description: Detailed instructions for how to publish a NuGet package to nuget.o author: JonDouglas ms.author: jodou ms.date: 05/18/2018 -ms.topic: conceptual +ms.topic: conceptual ms.reviewer: anangaur --- diff --git a/docs/nuget-org/id-prefix-reservation.md b/docs/nuget-org/id-prefix-reservation.md index 43c885fbc..ce98a2f08 100644 --- a/docs/nuget-org/id-prefix-reservation.md +++ b/docs/nuget-org/id-prefix-reservation.md @@ -4,7 +4,7 @@ description: Package ID Prefix Reservation feature description and author guide. author: JonDouglas ms.author: jodou ms.date: 09/07/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: karann --- diff --git a/docs/nuget-org/individual-accounts.md b/docs/nuget-org/individual-accounts.md index 317f2f078..4ac39ccb0 100644 --- a/docs/nuget-org/individual-accounts.md +++ b/docs/nuget-org/individual-accounts.md @@ -4,7 +4,7 @@ description: Individual acccounts on NuGet.org are required to publish packages author: mikejo5000 ms.author: mikejo ms.date: 06/05/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Individual accounts on NuGet.org @@ -57,11 +57,11 @@ Two-factor authentication, or 2FA, is an extra layer of security used when loggi Verify the phone number or e-mail that is already associated with your Microsoft account. You may need to enter a new phone number or e-mail for your account. If so, enter the required information as instructed, and click **Next**. - ![Enable 2FA](media/nuget-org-sign-in-2fa.png) + ![Enable 2FA and enter phone](media/nuget-org-sign-in-2fa.png) 4. Check your device or e-mail account, and enter the code that you were just sent. - ![Enable 2FA](media/nuget-org-enter-code-2fa.png) + ![Enable 2FA and enter code](media/nuget-org-enter-code-2fa.png) 5. Follow any additional instructions to complete Two-factor authentication. diff --git a/docs/nuget-org/nuget-org-faq.md b/docs/nuget-org/nuget-org-faq.md index ed769f46a..70d4a8878 100644 --- a/docs/nuget-org/nuget-org-faq.md +++ b/docs/nuget-org/nuget-org-faq.md @@ -4,7 +4,7 @@ description: Common questions and answers for working with the NuGet gallery. author: shishirx34 ms.author: shishirh ms.date: 06/05/2019 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet.org frequently-asked questions diff --git a/docs/nuget-org/organizations-on-nuget-org.md b/docs/nuget-org/organizations-on-nuget-org.md index 8d836e454..4129a65e9 100644 --- a/docs/nuget-org/organizations-on-nuget-org.md +++ b/docs/nuget-org/organizations-on-nuget-org.md @@ -4,7 +4,7 @@ description: Organizations on NuGet.org helps you to manage packages published b author: anangaur ms.author: anangaur ms.date: 04/10/2018 -ms.topic: conceptual +ms.topic: conceptual ms.reviewer: - kraigb - camsoper diff --git a/docs/nuget-org/overview-nuget-org.md b/docs/nuget-org/overview-nuget-org.md index 33dbf764c..43a0376c4 100644 --- a/docs/nuget-org/overview-nuget-org.md +++ b/docs/nuget-org/overview-nuget-org.md @@ -4,7 +4,7 @@ description: Overview of NuGet.org author: mikejo5000 ms.author: mikejo ms.date: 06/05/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Overview of NuGet.org diff --git a/docs/nuget-org/policies/data-requests.md b/docs/nuget-org/policies/data-requests.md index 3c57e0995..57cab4356 100644 --- a/docs/nuget-org/policies/data-requests.md +++ b/docs/nuget-org/policies/data-requests.md @@ -4,7 +4,7 @@ description: Policies for requesting user data export and delete author: JonDouglas ms.author: jodou ms.date: 05/01/2018 -ms.topic: conceptual +ms.topic: conceptual --- # User Data Requests diff --git a/docs/nuget-org/policies/deleting-packages.md b/docs/nuget-org/policies/deleting-packages.md index ee86b3724..3a5502206 100644 --- a/docs/nuget-org/policies/deleting-packages.md +++ b/docs/nuget-org/policies/deleting-packages.md @@ -4,7 +4,7 @@ description: Policies for unlisting packages from nuget.org; permanent deletion author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: conceptual +ms.topic: conceptual --- # Deleting packages diff --git a/docs/nuget-org/policies/dispute-resolution.md b/docs/nuget-org/policies/dispute-resolution.md index b8def5f68..94a1aea40 100644 --- a/docs/nuget-org/policies/dispute-resolution.md +++ b/docs/nuget-org/policies/dispute-resolution.md @@ -4,7 +4,7 @@ description: The process for resolving disputes between NuGet package publishers author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: conceptual +ms.topic: conceptual --- # Resolving disputes over NuGet package names diff --git a/docs/nuget-org/policies/export-control.md b/docs/nuget-org/policies/export-control.md index edccf33b7..a0ce51d75 100644 --- a/docs/nuget-org/policies/export-control.md +++ b/docs/nuget-org/policies/export-control.md @@ -4,7 +4,7 @@ description: Policies governing export control laws author: JonDouglas ms.author: jodou ms.date: 06/27/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Export Control Policy diff --git a/docs/nuget-org/scoped-api-keys.md b/docs/nuget-org/scoped-api-keys.md index 87060bacb..6730218cf 100644 --- a/docs/nuget-org/scoped-api-keys.md +++ b/docs/nuget-org/scoped-api-keys.md @@ -4,7 +4,7 @@ description: Take control of API keys that you use to push packages author: mikejo5000 ms.author: mikejo ms.date: 06/04/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Scoped API keys @@ -44,7 +44,7 @@ In the following example, you have an API key named `Contoso service CI` that ca If you are working on multiple packages and have a large list of packages to manage, you can choose to use globbing patterns to select multiple packages together. For example, if you wish to grant specific scopes to a key for all packages whose ID starts with `Fabrikam.Service`, you could do this by specifying `fabrikam.service.*` in the **Glob pattern** text box. -![Create API keys](media/scoped-api-keys-glob-pattern.png) +![Create API keys - 2](media/scoped-api-keys-glob-pattern.png) Using glob patterns to determine API key permissions also applies to new packages matching the glob pattern. For example, if you try to push a new package named `Fabrikam.Service.Framework`, you can do that with the key created previously, since the package matches the glob pattern `fabrikam.service.*`. @@ -52,19 +52,19 @@ Using glob patterns to determine API key permissions also applies to new package For security, a newly created key is never shown on the screen and is only available using the **Copy** button. Similarly, the key is not accessible after the page is refreshed. -![Create API keys](media/scoped-api-keys-obtain-keys.png) +![Create API keys - 3](media/scoped-api-keys-obtain-keys.png) ## Edit existing API keys You may also want to update the key permissions and scopes without changing the key itself. If you have a key with specific scope(s) for a single package, you can choose to apply the same scope(s) on one or many other packages. -![Create API keys](media/scoped-api-keys-edit.png) +![Create API keys - 4](media/scoped-api-keys-edit.png) ## Refresh or delete existing API keys The account owner can choose to refresh the key, in which case the permission (on packages), scope, and expiry remain the same, but a new key is issued making the old key unusable. This is helpful in managing stale keys or where there is any potential for an API key leakage. -![Create API keys](media/scoped-api-keys-refresh.png) +![Create API keys - 5](media/scoped-api-keys-refresh.png) You may also choose to delete these keys if they are not needed anymore. Deleting a key removes the key and makes it unusable. diff --git a/docs/policies/Ecosystem.md b/docs/policies/Ecosystem.md index 39e409a04..542a0eb8f 100644 --- a/docs/policies/Ecosystem.md +++ b/docs/policies/Ecosystem.md @@ -4,7 +4,7 @@ description: Comprehensive resources in the NuGet ecosystem including NuGet sour author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: conceptual +ms.topic: conceptual --- # An overview of the NuGet ecosystem diff --git a/docs/policies/Governance.md b/docs/policies/Governance.md index 1bd107c12..fce9b9a5e 100644 --- a/docs/policies/Governance.md +++ b/docs/policies/Governance.md @@ -4,7 +4,7 @@ description: The governance model for NuGet, including roles and responsibilitie author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet governance diff --git a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md index 385565f3f..a56ae04ab 100644 --- a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md +++ b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md @@ -4,7 +4,7 @@ description: A walkthrough tutorial on creating and publishing a NuGet package u author: JonDouglas ms.author: jodou ms.date: 05/24/2019 -ms.topic: quickstart +ms.topic: quickstart --- # Quickstart: Create and publish a package (dotnet CLI) diff --git a/docs/quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md b/docs/quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md index 1c8c1deb2..0711b66e2 100644 --- a/docs/quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md +++ b/docs/quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md @@ -4,7 +4,7 @@ description: A walkthrough tutorial on creating and publishing a .NET Framework author: JonDouglas ms.author: jodou ms.date: 05/13/2018 -ms.topic: quickstart +ms.topic: quickstart --- # Quickstart: Create and publish a package using Visual Studio (.NET Framework, Windows) diff --git a/docs/quickstart/create-and-publish-a-package-using-visual-studio.md b/docs/quickstart/create-and-publish-a-package-using-visual-studio.md index 60730fa72..ab2615c72 100644 --- a/docs/quickstart/create-and-publish-a-package-using-visual-studio.md +++ b/docs/quickstart/create-and-publish-a-package-using-visual-studio.md @@ -4,7 +4,7 @@ description: A walkthrough tutorial on creating and publishing a .NET Standard N author: JonDouglas ms.author: jodou ms.date: 08/16/2019 -ms.topic: quickstart +ms.topic: quickstart --- # Quickstart: Create and publish a NuGet package using Visual Studio (.NET Standard, Windows only) diff --git a/docs/quickstart/install-and-use-a-package-in-visual-studio-mac.md b/docs/quickstart/install-and-use-a-package-in-visual-studio-mac.md index 2f002baf0..8151b05ee 100644 --- a/docs/quickstart/install-and-use-a-package-in-visual-studio-mac.md +++ b/docs/quickstart/install-and-use-a-package-in-visual-studio-mac.md @@ -4,7 +4,7 @@ description: A walkthrough tutorial on the process of installing and using a NuG author: jmatthiesen ms.author: jomatthi ms.date: 08/14/2019 -ms.topic: quickstart +ms.topic: quickstart --- # Quickstart: Install and use a package in Visual Studio for Mac diff --git a/docs/quickstart/install-and-use-a-package-in-visual-studio.md b/docs/quickstart/install-and-use-a-package-in-visual-studio.md index 80d47e2f1..4a6572204 100644 --- a/docs/quickstart/install-and-use-a-package-in-visual-studio.md +++ b/docs/quickstart/install-and-use-a-package-in-visual-studio.md @@ -4,7 +4,7 @@ description: A walkthrough tutorial on the process of installing and using a NuG author: JonDouglas ms.author: jodou ms.date: 07/24/2018 -ms.topic: quickstart +ms.topic: quickstart --- # Quickstart: Install and use a package in Visual Studio (Windows only) diff --git a/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md b/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md index e4a97d8d8..1b239805e 100644 --- a/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md +++ b/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md @@ -4,7 +4,7 @@ description: A walkthrough tutorial on the process of installing and using a NuG author: JonDouglas ms.author: jodou ms.date: 01/23/2018 -ms.topic: quickstart +ms.topic: quickstart --- # Quickstart: Install and use a package using the dotnet CLI diff --git a/docs/reference/Errors-and-Warnings.md b/docs/reference/Errors-and-Warnings.md index 67ba7be62..62cb85f48 100644 --- a/docs/reference/Errors-and-Warnings.md +++ b/docs/reference/Errors-and-Warnings.md @@ -4,7 +4,7 @@ description: Complete reference for warnings and errors issued from NuGet during author: JonDouglas ms.author: jodou ms.date: 05/18/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur --- diff --git a/docs/reference/NuGet-Client-SDK.md b/docs/reference/NuGet-Client-SDK.md index 219b984a7..5078be0b0 100644 --- a/docs/reference/NuGet-Client-SDK.md +++ b/docs/reference/NuGet-Client-SDK.md @@ -4,7 +4,7 @@ description: The API is evolving and not yet documented, but examples are availa author: JonDouglas ms.author: jodou ms.date: 01/09/2018 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet Client SDK diff --git a/docs/reference/PowerShell-Reference.md b/docs/reference/PowerShell-Reference.md index 600719182..f455e63cb 100644 --- a/docs/reference/PowerShell-Reference.md +++ b/docs/reference/PowerShell-Reference.md @@ -4,7 +4,7 @@ description: The complete reference to PowerShell commands available in the NuGe author: JonDouglas ms.author: jodou ms.date: 10/02/2017 -ms.topic: reference +ms.topic: reference --- # PowerShell reference @@ -15,7 +15,7 @@ The Package Manager Console provides a PowerShell interface within Visual Studio > All PowerShell commands relate only to package consumption. No PowerShell commands relate to creating and publishing packages except to the extent that a package can also be a consumer of other packages. > [!Important] -> The commands listed here are specific to the Package Manager Console in Visual Studio, and differ from the [Package Management module commands](/powershell/module/packagemanagement/?view=powershell-6) that are available in a general PowerShell environment. Specifically, each environment has commands that are not available in the other, and commands with the same name may also differ in their specific arguments. When using the Package Management Console in Visual Studio, the commands and arguments documented in this present topic apply. +> The commands listed here are specific to the Package Manager Console in Visual Studio, and differ from the [Package Management module commands](/powershell/module/packagemanagement) that are available in a general PowerShell environment. Specifically, each environment has commands that are not available in the other, and commands with the same name may also differ in their specific arguments. When using the Package Management Console in Visual Studio, the commands and arguments documented in this present topic apply. | Common Commands | Description | NuGet Version | | --- | --- | --- | diff --git a/docs/reference/Signed-Packages-Reference.md b/docs/reference/Signed-Packages-Reference.md index f32c2cd7f..a91eae13e 100644 --- a/docs/reference/Signed-Packages-Reference.md +++ b/docs/reference/Signed-Packages-Reference.md @@ -4,7 +4,7 @@ description: Requirements for NuGet package signing. author: rido-min ms.author: rmpablos ms.date: 05/18/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: ananguar --- diff --git a/docs/reference/cli-reference/cli-ref-add.md b/docs/reference/cli-reference/cli-ref-add.md index ca0a5f341..1f34fcb31 100644 --- a/docs/reference/cli-reference/cli-ref-add.md +++ b/docs/reference/cli-reference/cli-ref-add.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe add command author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # add command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-config.md b/docs/reference/cli-reference/cli-ref-config.md index 35576692d..c6a8a726e 100644 --- a/docs/reference/cli-reference/cli-ref-config.md +++ b/docs/reference/cli-reference/cli-ref-config.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe config command author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # config command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-delete.md b/docs/reference/cli-reference/cli-ref-delete.md index d8e4636c7..af7bc2c57 100644 --- a/docs/reference/cli-reference/cli-ref-delete.md +++ b/docs/reference/cli-reference/cli-ref-delete.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe delete command author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # delete command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-environment-variables.md b/docs/reference/cli-reference/cli-ref-environment-variables.md index 0cc2c2aef..7220ed04a 100644 --- a/docs/reference/cli-reference/cli-ref-environment-variables.md +++ b/docs/reference/cli-reference/cli-ref-environment-variables.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe environment variables author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # NuGet CLI environment variables diff --git a/docs/reference/cli-reference/cli-ref-help.md b/docs/reference/cli-reference/cli-ref-help.md index 1a647e120..ddd222204 100644 --- a/docs/reference/cli-reference/cli-ref-help.md +++ b/docs/reference/cli-reference/cli-ref-help.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe help command author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # help or ? command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-init.md b/docs/reference/cli-reference/cli-ref-init.md index eef93c7de..6b0289623 100644 --- a/docs/reference/cli-reference/cli-ref-init.md +++ b/docs/reference/cli-reference/cli-ref-init.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe init command author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # init command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-install.md b/docs/reference/cli-reference/cli-ref-install.md index 5527f64e5..e0b88655b 100644 --- a/docs/reference/cli-reference/cli-ref-install.md +++ b/docs/reference/cli-reference/cli-ref-install.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe install command author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # install command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-list.md b/docs/reference/cli-reference/cli-ref-list.md index 9d5b33a10..b2171fa5f 100644 --- a/docs/reference/cli-reference/cli-ref-list.md +++ b/docs/reference/cli-reference/cli-ref-list.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe list command author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # list command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-locals.md b/docs/reference/cli-reference/cli-ref-locals.md index 5321bf3e4..7baac4cea 100644 --- a/docs/reference/cli-reference/cli-ref-locals.md +++ b/docs/reference/cli-reference/cli-ref-locals.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe locals command author: JonDouglas ms.author: jodou ms.date: 03/19/2018 -ms.topic: reference +ms.topic: reference --- # locals command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-long-path.md b/docs/reference/cli-reference/cli-ref-long-path.md index 5e4297c7c..44e9fa572 100644 --- a/docs/reference/cli-reference/cli-ref-long-path.md +++ b/docs/reference/cli-reference/cli-ref-long-path.md @@ -4,7 +4,7 @@ description: Reference for nuget.exe long path support author: zhili1208 ms.author: lzhi ms.date: 07/12/2018 -ms.topic: reference +ms.topic: reference --- # Long Path Support (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-mirror.md b/docs/reference/cli-reference/cli-ref-mirror.md index 1e8fa5d48..6ee95cdc0 100644 --- a/docs/reference/cli-reference/cli-ref-mirror.md +++ b/docs/reference/cli-reference/cli-ref-mirror.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe mirror command author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # mirror command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-pack.md b/docs/reference/cli-reference/cli-ref-pack.md index 54448a6ba..2679a0091 100644 --- a/docs/reference/cli-reference/cli-ref-pack.md +++ b/docs/reference/cli-reference/cli-ref-pack.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe pack command author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # pack command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-push.md b/docs/reference/cli-reference/cli-ref-push.md index 3c1ec2bbf..769566f9d 100644 --- a/docs/reference/cli-reference/cli-ref-push.md +++ b/docs/reference/cli-reference/cli-ref-push.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe push command author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # push command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-restore.md b/docs/reference/cli-reference/cli-ref-restore.md index b780acb9d..bf62e4da3 100644 --- a/docs/reference/cli-reference/cli-ref-restore.md +++ b/docs/reference/cli-reference/cli-ref-restore.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe restore command author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # restore command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-search.md b/docs/reference/cli-reference/cli-ref-search.md index 2df53629f..a95ea8b35 100644 --- a/docs/reference/cli-reference/cli-ref-search.md +++ b/docs/reference/cli-reference/cli-ref-search.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe search command author: JonDouglas ms.author: jodou ms.date: 08/17/2020 -ms.topic: reference +ms.topic: reference --- # search command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-setapikey.md b/docs/reference/cli-reference/cli-ref-setapikey.md index a56bbba0d..d074f968c 100644 --- a/docs/reference/cli-reference/cli-ref-setapikey.md +++ b/docs/reference/cli-reference/cli-ref-setapikey.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe setapikey command author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # setapikey command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-sign.md b/docs/reference/cli-reference/cli-ref-sign.md index 5a97280d2..732a71b47 100644 --- a/docs/reference/cli-reference/cli-ref-sign.md +++ b/docs/reference/cli-reference/cli-ref-sign.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe sign command author: dtivel ms.author: dtivel ms.date: 03/06/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: rmpablos --- diff --git a/docs/reference/cli-reference/cli-ref-sources.md b/docs/reference/cli-reference/cli-ref-sources.md index 8c40f9027..7f1f5b9d6 100644 --- a/docs/reference/cli-reference/cli-ref-sources.md +++ b/docs/reference/cli-reference/cli-ref-sources.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe sources command author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # sources command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-spec.md b/docs/reference/cli-reference/cli-ref-spec.md index d336e80b8..04e206701 100644 --- a/docs/reference/cli-reference/cli-ref-spec.md +++ b/docs/reference/cli-reference/cli-ref-spec.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe spec command author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: reference +ms.topic: reference --- # spec command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-trusted-signers.md b/docs/reference/cli-reference/cli-ref-trusted-signers.md index 143091727..2b3b11c7f 100644 --- a/docs/reference/cli-reference/cli-ref-trusted-signers.md +++ b/docs/reference/cli-reference/cli-ref-trusted-signers.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe trusted-signers command author: patbel ms.author: patbel ms.date: 11/12/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: rmpablos --- diff --git a/docs/reference/cli-reference/cli-ref-update.md b/docs/reference/cli-reference/cli-ref-update.md index 27baaeaaa..0b28f30b8 100644 --- a/docs/reference/cli-reference/cli-ref-update.md +++ b/docs/reference/cli-reference/cli-ref-update.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe update command author: JonDouglas ms.author: jodou ms.date: 12/07/2017 -ms.topic: reference +ms.topic: reference --- # update command (NuGet CLI) diff --git a/docs/reference/cli-reference/cli-ref-verify.md b/docs/reference/cli-reference/cli-ref-verify.md index 413c9d0f5..ab6dda990 100644 --- a/docs/reference/cli-reference/cli-ref-verify.md +++ b/docs/reference/cli-reference/cli-ref-verify.md @@ -4,7 +4,7 @@ description: Reference for the nuget.exe verify command author: dtivel ms.author: dtivel ms.date: 03/06/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: rmpablos --- diff --git a/docs/reference/dotnet-Commands.md b/docs/reference/dotnet-Commands.md index 7f22ff288..5b7f59b9f 100644 --- a/docs/reference/dotnet-Commands.md +++ b/docs/reference/dotnet-Commands.md @@ -4,7 +4,7 @@ description: A short reference for NuGet-related commands using the dotnet comma author: JonDouglas ms.author: jodou ms.date: 06/24/2019 -ms.topic: conceptual +ms.topic: conceptual --- # dotnet CLI commands diff --git a/docs/reference/errors-and-warnings/NU1000.md b/docs/reference/errors-and-warnings/NU1000.md index 9185b39fb..95cee7a11 100644 --- a/docs/reference/errors-and-warnings/NU1000.md +++ b/docs/reference/errors-and-warnings/NU1000.md @@ -4,7 +4,7 @@ description: NU1000 error code author: zhili1208 ms.author: lzhi ms.date: 06/20/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1000" diff --git a/docs/reference/errors-and-warnings/NU1001.md b/docs/reference/errors-and-warnings/NU1001.md index 6c5d99e23..4b83c50c4 100644 --- a/docs/reference/errors-and-warnings/NU1001.md +++ b/docs/reference/errors-and-warnings/NU1001.md @@ -4,7 +4,7 @@ description: NU1001 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1001" diff --git a/docs/reference/errors-and-warnings/NU1002.md b/docs/reference/errors-and-warnings/NU1002.md index f91cf23b9..2b9e538cb 100644 --- a/docs/reference/errors-and-warnings/NU1002.md +++ b/docs/reference/errors-and-warnings/NU1002.md @@ -4,7 +4,7 @@ description: NU1002 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1002" diff --git a/docs/reference/errors-and-warnings/NU1003.md b/docs/reference/errors-and-warnings/NU1003.md index 2a4ea03c8..e23fe71e6 100644 --- a/docs/reference/errors-and-warnings/NU1003.md +++ b/docs/reference/errors-and-warnings/NU1003.md @@ -4,7 +4,7 @@ description: NU1003 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1003" diff --git a/docs/reference/errors-and-warnings/NU1100.md b/docs/reference/errors-and-warnings/NU1100.md index 7c84bd4a9..2eab04263 100644 --- a/docs/reference/errors-and-warnings/NU1100.md +++ b/docs/reference/errors-and-warnings/NU1100.md @@ -4,7 +4,7 @@ description: NU1100 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1100" diff --git a/docs/reference/errors-and-warnings/NU1101.md b/docs/reference/errors-and-warnings/NU1101.md index 6229e8717..d947f205d 100644 --- a/docs/reference/errors-and-warnings/NU1101.md +++ b/docs/reference/errors-and-warnings/NU1101.md @@ -4,7 +4,7 @@ description: NU1101 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1101" diff --git a/docs/reference/errors-and-warnings/NU1102.md b/docs/reference/errors-and-warnings/NU1102.md index 5ce81392d..5585c7555 100644 --- a/docs/reference/errors-and-warnings/NU1102.md +++ b/docs/reference/errors-and-warnings/NU1102.md @@ -4,7 +4,7 @@ description: NU1102 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1102" diff --git a/docs/reference/errors-and-warnings/NU1103.md b/docs/reference/errors-and-warnings/NU1103.md index 10cd5b107..e062285ad 100644 --- a/docs/reference/errors-and-warnings/NU1103.md +++ b/docs/reference/errors-and-warnings/NU1103.md @@ -4,7 +4,7 @@ description: NU1103 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1103" diff --git a/docs/reference/errors-and-warnings/NU1104.md b/docs/reference/errors-and-warnings/NU1104.md index 1efb732f2..6d5da8854 100644 --- a/docs/reference/errors-and-warnings/NU1104.md +++ b/docs/reference/errors-and-warnings/NU1104.md @@ -4,7 +4,7 @@ description: NU1104 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1104" diff --git a/docs/reference/errors-and-warnings/NU1105.md b/docs/reference/errors-and-warnings/NU1105.md index d8d8f6449..f6c4f9f93 100644 --- a/docs/reference/errors-and-warnings/NU1105.md +++ b/docs/reference/errors-and-warnings/NU1105.md @@ -4,7 +4,7 @@ description: NU1105 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1105" diff --git a/docs/reference/errors-and-warnings/NU1106.md b/docs/reference/errors-and-warnings/NU1106.md index 6f28426e8..081219020 100644 --- a/docs/reference/errors-and-warnings/NU1106.md +++ b/docs/reference/errors-and-warnings/NU1106.md @@ -4,7 +4,7 @@ description: NU1106 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1106" diff --git a/docs/reference/errors-and-warnings/NU1107.md b/docs/reference/errors-and-warnings/NU1107.md index 9b63b5d3e..9888cbd4c 100644 --- a/docs/reference/errors-and-warnings/NU1107.md +++ b/docs/reference/errors-and-warnings/NU1107.md @@ -4,7 +4,7 @@ description: NU1107 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1107" diff --git a/docs/reference/errors-and-warnings/NU1108.md b/docs/reference/errors-and-warnings/NU1108.md index 6b98d4771..b5eb9c862 100644 --- a/docs/reference/errors-and-warnings/NU1108.md +++ b/docs/reference/errors-and-warnings/NU1108.md @@ -4,7 +4,7 @@ description: NU1108 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1108" diff --git a/docs/reference/errors-and-warnings/NU1201.md b/docs/reference/errors-and-warnings/NU1201.md index 08acbf03f..6fd890c0b 100644 --- a/docs/reference/errors-and-warnings/NU1201.md +++ b/docs/reference/errors-and-warnings/NU1201.md @@ -4,7 +4,7 @@ description: NU1201 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1201" diff --git a/docs/reference/errors-and-warnings/NU1202.md b/docs/reference/errors-and-warnings/NU1202.md index 20a859cab..512cc5b50 100644 --- a/docs/reference/errors-and-warnings/NU1202.md +++ b/docs/reference/errors-and-warnings/NU1202.md @@ -4,7 +4,7 @@ description: NU1202 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1202" diff --git a/docs/reference/errors-and-warnings/NU1203.md b/docs/reference/errors-and-warnings/NU1203.md index 086e45a59..cf387a274 100644 --- a/docs/reference/errors-and-warnings/NU1203.md +++ b/docs/reference/errors-and-warnings/NU1203.md @@ -4,7 +4,7 @@ description: NU1203 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1203" diff --git a/docs/reference/errors-and-warnings/NU1401.md b/docs/reference/errors-and-warnings/NU1401.md index ba63dbe65..f365872ae 100644 --- a/docs/reference/errors-and-warnings/NU1401.md +++ b/docs/reference/errors-and-warnings/NU1401.md @@ -4,7 +4,7 @@ description: NU1401 error code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1401" diff --git a/docs/reference/errors-and-warnings/NU1500.md b/docs/reference/errors-and-warnings/NU1500.md index f97e376ec..ba3ed7861 100644 --- a/docs/reference/errors-and-warnings/NU1500.md +++ b/docs/reference/errors-and-warnings/NU1500.md @@ -4,7 +4,7 @@ description: NU1500 warning code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1500" diff --git a/docs/reference/errors-and-warnings/NU1501.md b/docs/reference/errors-and-warnings/NU1501.md index fe63d7bf6..e315acc9d 100644 --- a/docs/reference/errors-and-warnings/NU1501.md +++ b/docs/reference/errors-and-warnings/NU1501.md @@ -4,7 +4,7 @@ description: NU1501 warning code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1501" diff --git a/docs/reference/errors-and-warnings/NU1502.md b/docs/reference/errors-and-warnings/NU1502.md index b9302e2a9..ef225d101 100644 --- a/docs/reference/errors-and-warnings/NU1502.md +++ b/docs/reference/errors-and-warnings/NU1502.md @@ -4,7 +4,7 @@ description: NU1502 warning code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1502" diff --git a/docs/reference/errors-and-warnings/NU1503.md b/docs/reference/errors-and-warnings/NU1503.md index aa649e2bf..3e472cd1e 100644 --- a/docs/reference/errors-and-warnings/NU1503.md +++ b/docs/reference/errors-and-warnings/NU1503.md @@ -4,7 +4,7 @@ description: NU1503 warning code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1503" diff --git a/docs/reference/errors-and-warnings/NU1601.md b/docs/reference/errors-and-warnings/NU1601.md index 6cb027fb1..174de7403 100644 --- a/docs/reference/errors-and-warnings/NU1601.md +++ b/docs/reference/errors-and-warnings/NU1601.md @@ -4,7 +4,7 @@ description: NU1601 warning code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1601" diff --git a/docs/reference/errors-and-warnings/NU1602.md b/docs/reference/errors-and-warnings/NU1602.md index ce734b36b..afcfaa095 100644 --- a/docs/reference/errors-and-warnings/NU1602.md +++ b/docs/reference/errors-and-warnings/NU1602.md @@ -4,7 +4,7 @@ description: NU1602 warning code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1602" diff --git a/docs/reference/errors-and-warnings/NU1603.md b/docs/reference/errors-and-warnings/NU1603.md index fcf577678..2b4e2ba4c 100644 --- a/docs/reference/errors-and-warnings/NU1603.md +++ b/docs/reference/errors-and-warnings/NU1603.md @@ -4,7 +4,7 @@ description: NU1603 warning code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1603" diff --git a/docs/reference/errors-and-warnings/NU1604.md b/docs/reference/errors-and-warnings/NU1604.md index 450df7b9c..99eb4d2d1 100644 --- a/docs/reference/errors-and-warnings/NU1604.md +++ b/docs/reference/errors-and-warnings/NU1604.md @@ -4,7 +4,7 @@ description: NU1604 warning code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1604" diff --git a/docs/reference/errors-and-warnings/NU1605.md b/docs/reference/errors-and-warnings/NU1605.md index 3c1eb53f6..b0169a013 100644 --- a/docs/reference/errors-and-warnings/NU1605.md +++ b/docs/reference/errors-and-warnings/NU1605.md @@ -4,7 +4,7 @@ description: NU1605 warning code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1605" diff --git a/docs/reference/errors-and-warnings/NU1608.md b/docs/reference/errors-and-warnings/NU1608.md index b9f2e7179..888d06a00 100644 --- a/docs/reference/errors-and-warnings/NU1608.md +++ b/docs/reference/errors-and-warnings/NU1608.md @@ -4,7 +4,7 @@ description: NU1608 warning code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1608" diff --git a/docs/reference/errors-and-warnings/NU1701.md b/docs/reference/errors-and-warnings/NU1701.md index 93a42621b..e3f3ea11a 100644 --- a/docs/reference/errors-and-warnings/NU1701.md +++ b/docs/reference/errors-and-warnings/NU1701.md @@ -4,7 +4,7 @@ description: NU1701 warning code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1701" diff --git a/docs/reference/errors-and-warnings/NU1801.md b/docs/reference/errors-and-warnings/NU1801.md index fb801fb34..161119c82 100644 --- a/docs/reference/errors-and-warnings/NU1801.md +++ b/docs/reference/errors-and-warnings/NU1801.md @@ -4,7 +4,7 @@ description: NU1801 warning code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU1801" diff --git a/docs/reference/errors-and-warnings/NU3000.md b/docs/reference/errors-and-warnings/NU3000.md index 77a7e651c..d71cd9e7e 100644 --- a/docs/reference/errors-and-warnings/NU3000.md +++ b/docs/reference/errors-and-warnings/NU3000.md @@ -4,7 +4,7 @@ description: NU3000 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3000 diff --git a/docs/reference/errors-and-warnings/NU3001.md b/docs/reference/errors-and-warnings/NU3001.md index b84bd7df0..424ec1100 100644 --- a/docs/reference/errors-and-warnings/NU3001.md +++ b/docs/reference/errors-and-warnings/NU3001.md @@ -4,7 +4,7 @@ description: NU3001 Error code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3001 diff --git a/docs/reference/errors-and-warnings/NU3002.md b/docs/reference/errors-and-warnings/NU3002.md index 60bc9525a..abd57086b 100644 --- a/docs/reference/errors-and-warnings/NU3002.md +++ b/docs/reference/errors-and-warnings/NU3002.md @@ -4,7 +4,7 @@ description: NU3002 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3002 diff --git a/docs/reference/errors-and-warnings/NU3003.md b/docs/reference/errors-and-warnings/NU3003.md index 63f32ba59..32d509f14 100644 --- a/docs/reference/errors-and-warnings/NU3003.md +++ b/docs/reference/errors-and-warnings/NU3003.md @@ -4,7 +4,7 @@ description: NU3003 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3003 diff --git a/docs/reference/errors-and-warnings/NU3004.md b/docs/reference/errors-and-warnings/NU3004.md index dc78c6c12..17a2de4f6 100644 --- a/docs/reference/errors-and-warnings/NU3004.md +++ b/docs/reference/errors-and-warnings/NU3004.md @@ -4,7 +4,7 @@ description: NU3004 Error code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3004 diff --git a/docs/reference/errors-and-warnings/NU3005.md b/docs/reference/errors-and-warnings/NU3005.md index f30b17d63..4fee4e186 100644 --- a/docs/reference/errors-and-warnings/NU3005.md +++ b/docs/reference/errors-and-warnings/NU3005.md @@ -4,7 +4,7 @@ description: NU3005 Error code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3005 diff --git a/docs/reference/errors-and-warnings/NU3006.md b/docs/reference/errors-and-warnings/NU3006.md index c009d0189..08533cb4b 100644 --- a/docs/reference/errors-and-warnings/NU3006.md +++ b/docs/reference/errors-and-warnings/NU3006.md @@ -4,7 +4,7 @@ description: NU3006 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3006 diff --git a/docs/reference/errors-and-warnings/NU3007.md b/docs/reference/errors-and-warnings/NU3007.md index b51d8fdab..b6972611e 100644 --- a/docs/reference/errors-and-warnings/NU3007.md +++ b/docs/reference/errors-and-warnings/NU3007.md @@ -4,7 +4,7 @@ description: NU3007 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3007 diff --git a/docs/reference/errors-and-warnings/NU3008.md b/docs/reference/errors-and-warnings/NU3008.md index 06150d5d3..7e9c5509c 100644 --- a/docs/reference/errors-and-warnings/NU3008.md +++ b/docs/reference/errors-and-warnings/NU3008.md @@ -4,7 +4,7 @@ description: NU3008 Error code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3008 diff --git a/docs/reference/errors-and-warnings/NU3009.md b/docs/reference/errors-and-warnings/NU3009.md index a73ef31e4..e45e9ee5d 100644 --- a/docs/reference/errors-and-warnings/NU3009.md +++ b/docs/reference/errors-and-warnings/NU3009.md @@ -4,7 +4,7 @@ description: NU3009 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3009 diff --git a/docs/reference/errors-and-warnings/NU3010.md b/docs/reference/errors-and-warnings/NU3010.md index ff43e6641..9257129d9 100644 --- a/docs/reference/errors-and-warnings/NU3010.md +++ b/docs/reference/errors-and-warnings/NU3010.md @@ -4,7 +4,7 @@ description: NU3010 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3010 diff --git a/docs/reference/errors-and-warnings/NU3011.md b/docs/reference/errors-and-warnings/NU3011.md index c84092e39..ce8f9802d 100644 --- a/docs/reference/errors-and-warnings/NU3011.md +++ b/docs/reference/errors-and-warnings/NU3011.md @@ -4,7 +4,7 @@ description: NU3011 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3011 diff --git a/docs/reference/errors-and-warnings/NU3012.md b/docs/reference/errors-and-warnings/NU3012.md index ce050748e..fe4853df2 100644 --- a/docs/reference/errors-and-warnings/NU3012.md +++ b/docs/reference/errors-and-warnings/NU3012.md @@ -4,7 +4,7 @@ description: NU3012 Error code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3012 diff --git a/docs/reference/errors-and-warnings/NU3013.md b/docs/reference/errors-and-warnings/NU3013.md index 5cfc305a6..e8180bd75 100644 --- a/docs/reference/errors-and-warnings/NU3013.md +++ b/docs/reference/errors-and-warnings/NU3013.md @@ -4,7 +4,7 @@ description: NU3013 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3013 diff --git a/docs/reference/errors-and-warnings/NU3014.md b/docs/reference/errors-and-warnings/NU3014.md index d0dc35571..db7748cc5 100644 --- a/docs/reference/errors-and-warnings/NU3014.md +++ b/docs/reference/errors-and-warnings/NU3014.md @@ -4,7 +4,7 @@ description: NU3014 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3014 diff --git a/docs/reference/errors-and-warnings/NU3015.md b/docs/reference/errors-and-warnings/NU3015.md index 1eeef3d99..8443439e8 100644 --- a/docs/reference/errors-and-warnings/NU3015.md +++ b/docs/reference/errors-and-warnings/NU3015.md @@ -4,7 +4,7 @@ description: NU3015 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3015 diff --git a/docs/reference/errors-and-warnings/NU3016.md b/docs/reference/errors-and-warnings/NU3016.md index 8882286f3..eb43ec64e 100644 --- a/docs/reference/errors-and-warnings/NU3016.md +++ b/docs/reference/errors-and-warnings/NU3016.md @@ -4,7 +4,7 @@ description: NU3016 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3016 diff --git a/docs/reference/errors-and-warnings/NU3017.md b/docs/reference/errors-and-warnings/NU3017.md index 260d529aa..8a7a038f4 100644 --- a/docs/reference/errors-and-warnings/NU3017.md +++ b/docs/reference/errors-and-warnings/NU3017.md @@ -4,7 +4,7 @@ description: NU3017 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3017 diff --git a/docs/reference/errors-and-warnings/NU3018.md b/docs/reference/errors-and-warnings/NU3018.md index 5ea4a3161..0cd85ffee 100644 --- a/docs/reference/errors-and-warnings/NU3018.md +++ b/docs/reference/errors-and-warnings/NU3018.md @@ -4,7 +4,7 @@ description: NU3018 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3018 diff --git a/docs/reference/errors-and-warnings/NU3019.md b/docs/reference/errors-and-warnings/NU3019.md index 9b06be87c..65fbf57ed 100644 --- a/docs/reference/errors-and-warnings/NU3019.md +++ b/docs/reference/errors-and-warnings/NU3019.md @@ -4,7 +4,7 @@ description: NU3019 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3019 diff --git a/docs/reference/errors-and-warnings/NU3020.md b/docs/reference/errors-and-warnings/NU3020.md index c2e3c44ba..a4755a354 100644 --- a/docs/reference/errors-and-warnings/NU3020.md +++ b/docs/reference/errors-and-warnings/NU3020.md @@ -4,7 +4,7 @@ description: NU3020 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3020 diff --git a/docs/reference/errors-and-warnings/NU3021.md b/docs/reference/errors-and-warnings/NU3021.md index c410ea733..f528760a0 100644 --- a/docs/reference/errors-and-warnings/NU3021.md +++ b/docs/reference/errors-and-warnings/NU3021.md @@ -4,7 +4,7 @@ description: NU3021 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3021 diff --git a/docs/reference/errors-and-warnings/NU3022.md b/docs/reference/errors-and-warnings/NU3022.md index 8dd651690..73a97fa03 100644 --- a/docs/reference/errors-and-warnings/NU3022.md +++ b/docs/reference/errors-and-warnings/NU3022.md @@ -4,7 +4,7 @@ description: NU3022 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3022 diff --git a/docs/reference/errors-and-warnings/NU3023.md b/docs/reference/errors-and-warnings/NU3023.md index cad7134bf..8e815be5f 100644 --- a/docs/reference/errors-and-warnings/NU3023.md +++ b/docs/reference/errors-and-warnings/NU3023.md @@ -4,7 +4,7 @@ description: NU3023 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3023 diff --git a/docs/reference/errors-and-warnings/NU3024.md b/docs/reference/errors-and-warnings/NU3024.md index b7ded5f61..199f65d91 100644 --- a/docs/reference/errors-and-warnings/NU3024.md +++ b/docs/reference/errors-and-warnings/NU3024.md @@ -4,7 +4,7 @@ description: NU3024 Warning code author: heng-liu ms.author: henli ms.date: 3/18/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: dtivel f1_keywords: - NU3024 diff --git a/docs/reference/errors-and-warnings/NU3025.md b/docs/reference/errors-and-warnings/NU3025.md index 432360db1..f80ff68b3 100644 --- a/docs/reference/errors-and-warnings/NU3025.md +++ b/docs/reference/errors-and-warnings/NU3025.md @@ -4,7 +4,7 @@ description: NU3025 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3025 diff --git a/docs/reference/errors-and-warnings/NU3026.md b/docs/reference/errors-and-warnings/NU3026.md index 735c3c2a5..8d078a2d4 100644 --- a/docs/reference/errors-and-warnings/NU3026.md +++ b/docs/reference/errors-and-warnings/NU3026.md @@ -4,7 +4,7 @@ description: NU3026 Warning code author: heng-liu ms.author: henli ms.date: 3/18/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: dtivel f1_keywords: - NU3026 diff --git a/docs/reference/errors-and-warnings/NU3027.md b/docs/reference/errors-and-warnings/NU3027.md index 0e838bc82..4a0316d6e 100644 --- a/docs/reference/errors-and-warnings/NU3027.md +++ b/docs/reference/errors-and-warnings/NU3027.md @@ -4,7 +4,7 @@ description: NU3027 Warning code author: mishra14 ms.author: jodou ms.date: 8/16/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU3027 diff --git a/docs/reference/errors-and-warnings/NU3028.md b/docs/reference/errors-and-warnings/NU3028.md index 8be17d2c9..a98a2c1dc 100644 --- a/docs/reference/errors-and-warnings/NU3028.md +++ b/docs/reference/errors-and-warnings/NU3028.md @@ -4,7 +4,7 @@ description: NU3028 warning code author: zhili1208 ms.author: lzhi ms.date: 06/25/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - "NU3028" diff --git a/docs/reference/errors-and-warnings/NU3029.md b/docs/reference/errors-and-warnings/NU3029.md index 3446e6a0b..689e83f96 100644 --- a/docs/reference/errors-and-warnings/NU3029.md +++ b/docs/reference/errors-and-warnings/NU3029.md @@ -4,7 +4,7 @@ description: NU3029 Warning code author: heng-liu ms.author: henli ms.date: 3/18/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: dtivel f1_keywords: - NU3029 diff --git a/docs/reference/errors-and-warnings/NU3030.md b/docs/reference/errors-and-warnings/NU3030.md index e41cc8c32..45c892b2b 100644 --- a/docs/reference/errors-and-warnings/NU3030.md +++ b/docs/reference/errors-and-warnings/NU3030.md @@ -4,7 +4,7 @@ description: NU3030 Warning code author: heng-liu ms.author: henli ms.date: 3/18/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: dtivel f1_keywords: - NU3030 diff --git a/docs/reference/errors-and-warnings/NU3031.md b/docs/reference/errors-and-warnings/NU3031.md index 4cc2c4c4c..d590213c0 100644 --- a/docs/reference/errors-and-warnings/NU3031.md +++ b/docs/reference/errors-and-warnings/NU3031.md @@ -4,7 +4,7 @@ description: NU3031 Warning code author: heng-liu ms.author: henli ms.date: 3/18/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: dtivel f1_keywords: - NU3031 diff --git a/docs/reference/errors-and-warnings/NU3032.md b/docs/reference/errors-and-warnings/NU3032.md index a0149b071..447de425b 100644 --- a/docs/reference/errors-and-warnings/NU3032.md +++ b/docs/reference/errors-and-warnings/NU3032.md @@ -4,7 +4,7 @@ description: NU3032 Warning code author: heng-liu ms.author: henli ms.date: 3/18/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: dtivel f1_keywords: - NU3032 diff --git a/docs/reference/errors-and-warnings/NU3033.md b/docs/reference/errors-and-warnings/NU3033.md index 2246461a4..ffabc561a 100644 --- a/docs/reference/errors-and-warnings/NU3033.md +++ b/docs/reference/errors-and-warnings/NU3033.md @@ -4,7 +4,7 @@ description: NU3033 Warning code author: heng-liu ms.author: henli ms.date: 3/18/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: dtivel f1_keywords: - NU3033 diff --git a/docs/reference/errors-and-warnings/NU3034.md b/docs/reference/errors-and-warnings/NU3034.md index a90dfa153..c1c139fd9 100644 --- a/docs/reference/errors-and-warnings/NU3034.md +++ b/docs/reference/errors-and-warnings/NU3034.md @@ -4,7 +4,7 @@ description: NU3034 Error code author: patbel ms.author: patbel ms.date: 11/12/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: rmpablos f1_keywords: - NU3034 diff --git a/docs/reference/errors-and-warnings/NU3035.md b/docs/reference/errors-and-warnings/NU3035.md index f2952e492..0385ee801 100644 --- a/docs/reference/errors-and-warnings/NU3035.md +++ b/docs/reference/errors-and-warnings/NU3035.md @@ -4,7 +4,7 @@ description: NU3035 Warning code author: heng-liu ms.author: henli ms.date: 3/18/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: dtivel f1_keywords: - NU3035 diff --git a/docs/reference/errors-and-warnings/NU3036.md b/docs/reference/errors-and-warnings/NU3036.md index c8c762ffe..8710049cc 100644 --- a/docs/reference/errors-and-warnings/NU3036.md +++ b/docs/reference/errors-and-warnings/NU3036.md @@ -4,7 +4,7 @@ description: NU3036 Warning code author: heng-liu ms.author: henli ms.date: 3/18/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: dtivel f1_keywords: - NU3036 diff --git a/docs/reference/errors-and-warnings/NU3037.md b/docs/reference/errors-and-warnings/NU3037.md index 144b13590..3119bb38a 100644 --- a/docs/reference/errors-and-warnings/NU3037.md +++ b/docs/reference/errors-and-warnings/NU3037.md @@ -4,7 +4,7 @@ description: NU3037 Warning code author: heng-liu ms.author: henli ms.date: 3/18/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: dtivel f1_keywords: - NU3037 diff --git a/docs/reference/errors-and-warnings/NU3038.md b/docs/reference/errors-and-warnings/NU3038.md index 7edc0bb8f..129b96b31 100644 --- a/docs/reference/errors-and-warnings/NU3038.md +++ b/docs/reference/errors-and-warnings/NU3038.md @@ -4,7 +4,7 @@ description: NU3038 Warning code author: heng-liu ms.author: henli ms.date: 3/18/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: dtivel f1_keywords: - NU3038 diff --git a/docs/reference/errors-and-warnings/NU3040.md b/docs/reference/errors-and-warnings/NU3040.md index a1cb12be1..0040b2619 100644 --- a/docs/reference/errors-and-warnings/NU3040.md +++ b/docs/reference/errors-and-warnings/NU3040.md @@ -4,7 +4,7 @@ description: NU3040 Warning code author: patbel ms.author: patbel ms.date: 11/12/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: rmpablos f1_keywords: - NU3040 diff --git a/docs/reference/errors-and-warnings/NU5000.md b/docs/reference/errors-and-warnings/NU5000.md index cdb77a732..738ed464b 100644 --- a/docs/reference/errors-and-warnings/NU5000.md +++ b/docs/reference/errors-and-warnings/NU5000.md @@ -4,7 +4,7 @@ description: NU5000 Error code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5000 diff --git a/docs/reference/errors-and-warnings/NU5001.md b/docs/reference/errors-and-warnings/NU5001.md index 4775ddf5c..101d6682f 100644 --- a/docs/reference/errors-and-warnings/NU5001.md +++ b/docs/reference/errors-and-warnings/NU5001.md @@ -4,7 +4,7 @@ description: NU5001 Error code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5001 diff --git a/docs/reference/errors-and-warnings/NU5002.md b/docs/reference/errors-and-warnings/NU5002.md index dfe9cc1f7..556e0aae8 100644 --- a/docs/reference/errors-and-warnings/NU5002.md +++ b/docs/reference/errors-and-warnings/NU5002.md @@ -4,7 +4,7 @@ description: NU5002 Error code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5002 diff --git a/docs/reference/errors-and-warnings/NU5003.md b/docs/reference/errors-and-warnings/NU5003.md index 24ad17c65..83e5e5c44 100644 --- a/docs/reference/errors-and-warnings/NU5003.md +++ b/docs/reference/errors-and-warnings/NU5003.md @@ -4,7 +4,7 @@ description: NU5003 Error code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5003 diff --git a/docs/reference/errors-and-warnings/NU5004.md b/docs/reference/errors-and-warnings/NU5004.md index c45ef41c3..70d0121ac 100644 --- a/docs/reference/errors-and-warnings/NU5004.md +++ b/docs/reference/errors-and-warnings/NU5004.md @@ -4,7 +4,7 @@ description: NU5004 Error code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5004 diff --git a/docs/reference/errors-and-warnings/NU5005.md b/docs/reference/errors-and-warnings/NU5005.md index 9a66c8b43..6506a3777 100644 --- a/docs/reference/errors-and-warnings/NU5005.md +++ b/docs/reference/errors-and-warnings/NU5005.md @@ -4,7 +4,7 @@ description: NU5005 Error code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5005 diff --git a/docs/reference/errors-and-warnings/NU5007.md b/docs/reference/errors-and-warnings/NU5007.md index b799ead84..203389722 100644 --- a/docs/reference/errors-and-warnings/NU5007.md +++ b/docs/reference/errors-and-warnings/NU5007.md @@ -4,7 +4,7 @@ description: NU5007 Error code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5007 diff --git a/docs/reference/errors-and-warnings/NU5008.md b/docs/reference/errors-and-warnings/NU5008.md index 1503769b1..d013cdb86 100644 --- a/docs/reference/errors-and-warnings/NU5008.md +++ b/docs/reference/errors-and-warnings/NU5008.md @@ -4,7 +4,7 @@ description: NU5008 Error code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5008 diff --git a/docs/reference/errors-and-warnings/NU5009.md b/docs/reference/errors-and-warnings/NU5009.md index 3f15fd9ba..3da5c1008 100644 --- a/docs/reference/errors-and-warnings/NU5009.md +++ b/docs/reference/errors-and-warnings/NU5009.md @@ -4,7 +4,7 @@ description: NU5009 Error code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5009 diff --git a/docs/reference/errors-and-warnings/NU5010.md b/docs/reference/errors-and-warnings/NU5010.md index ecc70a9a4..4d94bf141 100644 --- a/docs/reference/errors-and-warnings/NU5010.md +++ b/docs/reference/errors-and-warnings/NU5010.md @@ -4,7 +4,7 @@ description: NU5010 Error code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5010 diff --git a/docs/reference/errors-and-warnings/NU5011.md b/docs/reference/errors-and-warnings/NU5011.md index 03d309faa..87469ed52 100644 --- a/docs/reference/errors-and-warnings/NU5011.md +++ b/docs/reference/errors-and-warnings/NU5011.md @@ -4,7 +4,7 @@ description: NU5011 Error code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5011 diff --git a/docs/reference/errors-and-warnings/NU5012.md b/docs/reference/errors-and-warnings/NU5012.md index 49681bc06..4e46b3aa1 100644 --- a/docs/reference/errors-and-warnings/NU5012.md +++ b/docs/reference/errors-and-warnings/NU5012.md @@ -4,7 +4,7 @@ description: NU5012 Error code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5012 diff --git a/docs/reference/errors-and-warnings/NU5013.md b/docs/reference/errors-and-warnings/NU5013.md index a9c3f9b2a..e1c551b00 100644 --- a/docs/reference/errors-and-warnings/NU5013.md +++ b/docs/reference/errors-and-warnings/NU5013.md @@ -4,7 +4,7 @@ description: NU5013 Error code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5013 diff --git a/docs/reference/errors-and-warnings/NU5014.md b/docs/reference/errors-and-warnings/NU5014.md index 7a01a7948..da935113f 100644 --- a/docs/reference/errors-and-warnings/NU5014.md +++ b/docs/reference/errors-and-warnings/NU5014.md @@ -4,7 +4,7 @@ description: NU5014 Error code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5014 diff --git a/docs/reference/errors-and-warnings/NU5015.md b/docs/reference/errors-and-warnings/NU5015.md index 34677f46a..34ddf8367 100644 --- a/docs/reference/errors-and-warnings/NU5015.md +++ b/docs/reference/errors-and-warnings/NU5015.md @@ -4,7 +4,7 @@ description: NU5015 Error code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5015 diff --git a/docs/reference/errors-and-warnings/NU5016.md b/docs/reference/errors-and-warnings/NU5016.md index e61351ac3..74c14cc5c 100644 --- a/docs/reference/errors-and-warnings/NU5016.md +++ b/docs/reference/errors-and-warnings/NU5016.md @@ -4,7 +4,7 @@ description: NU5016 Error code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5016 diff --git a/docs/reference/errors-and-warnings/NU5017.md b/docs/reference/errors-and-warnings/NU5017.md index 30f65074c..ffda1be4e 100644 --- a/docs/reference/errors-and-warnings/NU5017.md +++ b/docs/reference/errors-and-warnings/NU5017.md @@ -4,7 +4,7 @@ description: NU5017 Error code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5017 diff --git a/docs/reference/errors-and-warnings/NU5018.md b/docs/reference/errors-and-warnings/NU5018.md index 20fbfc21e..44b50fcc9 100644 --- a/docs/reference/errors-and-warnings/NU5018.md +++ b/docs/reference/errors-and-warnings/NU5018.md @@ -4,7 +4,7 @@ description: NU5018 Error code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5018 diff --git a/docs/reference/errors-and-warnings/NU5019.md b/docs/reference/errors-and-warnings/NU5019.md index 5fa761f57..165772bf3 100644 --- a/docs/reference/errors-and-warnings/NU5019.md +++ b/docs/reference/errors-and-warnings/NU5019.md @@ -4,7 +4,7 @@ description: NU5019 Error code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5019 diff --git a/docs/reference/errors-and-warnings/NU5020.md b/docs/reference/errors-and-warnings/NU5020.md index fbaac3030..b6c771748 100644 --- a/docs/reference/errors-and-warnings/NU5020.md +++ b/docs/reference/errors-and-warnings/NU5020.md @@ -4,7 +4,7 @@ description: NU5020 Error code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5020 diff --git a/docs/reference/errors-and-warnings/NU5021.md b/docs/reference/errors-and-warnings/NU5021.md index ec3993880..d89e38f1c 100644 --- a/docs/reference/errors-and-warnings/NU5021.md +++ b/docs/reference/errors-and-warnings/NU5021.md @@ -4,7 +4,7 @@ description: NU5021 Error code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5021 diff --git a/docs/reference/errors-and-warnings/NU5022.md b/docs/reference/errors-and-warnings/NU5022.md index b37f3d7c7..370c50b8e 100644 --- a/docs/reference/errors-and-warnings/NU5022.md +++ b/docs/reference/errors-and-warnings/NU5022.md @@ -4,7 +4,7 @@ description: NU5022 Error code author: mishra14 ms.author: jodou ms.date: 8/8/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5022 diff --git a/docs/reference/errors-and-warnings/NU5023.md b/docs/reference/errors-and-warnings/NU5023.md index 26ccee8ee..f88252691 100644 --- a/docs/reference/errors-and-warnings/NU5023.md +++ b/docs/reference/errors-and-warnings/NU5023.md @@ -4,7 +4,7 @@ description: NU5023 Error code author: mishra14 ms.author: jodou ms.date: 8/8/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5023 diff --git a/docs/reference/errors-and-warnings/NU5024.md b/docs/reference/errors-and-warnings/NU5024.md index aae8c5cfd..c542ab37a 100644 --- a/docs/reference/errors-and-warnings/NU5024.md +++ b/docs/reference/errors-and-warnings/NU5024.md @@ -4,7 +4,7 @@ description: NU5024 Error code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5024 diff --git a/docs/reference/errors-and-warnings/NU5025.md b/docs/reference/errors-and-warnings/NU5025.md index 39de62ec1..e041791ea 100644 --- a/docs/reference/errors-and-warnings/NU5025.md +++ b/docs/reference/errors-and-warnings/NU5025.md @@ -4,7 +4,7 @@ description: NU5025 Error code author: mishra14 ms.author: jodou ms.date: 8/8/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5025 diff --git a/docs/reference/errors-and-warnings/NU5026.md b/docs/reference/errors-and-warnings/NU5026.md index abbcd126c..56e330034 100644 --- a/docs/reference/errors-and-warnings/NU5026.md +++ b/docs/reference/errors-and-warnings/NU5026.md @@ -4,7 +4,7 @@ description: NU5026 Error code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5026 diff --git a/docs/reference/errors-and-warnings/NU5027.md b/docs/reference/errors-and-warnings/NU5027.md index 25e0c9a71..e5261eeb7 100644 --- a/docs/reference/errors-and-warnings/NU5027.md +++ b/docs/reference/errors-and-warnings/NU5027.md @@ -4,7 +4,7 @@ description: NU5027 Error code author: mishra14 ms.author: jodou ms.date: 8/8/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5027 diff --git a/docs/reference/errors-and-warnings/NU5028.md b/docs/reference/errors-and-warnings/NU5028.md index 083926682..12c7ad06f 100644 --- a/docs/reference/errors-and-warnings/NU5028.md +++ b/docs/reference/errors-and-warnings/NU5028.md @@ -4,7 +4,7 @@ description: NU5028 Error code author: mishra14 ms.author: jodou ms.date: 8/8/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5028 diff --git a/docs/reference/errors-and-warnings/NU5029.md b/docs/reference/errors-and-warnings/NU5029.md index dd1eba70b..f6e5ff460 100644 --- a/docs/reference/errors-and-warnings/NU5029.md +++ b/docs/reference/errors-and-warnings/NU5029.md @@ -4,7 +4,7 @@ description: NU5029 Error code author: mishra14 ms.author: jodou ms.date: 8/8/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5029 diff --git a/docs/reference/errors-and-warnings/NU5030.md b/docs/reference/errors-and-warnings/NU5030.md index 08f85ca98..654669992 100644 --- a/docs/reference/errors-and-warnings/NU5030.md +++ b/docs/reference/errors-and-warnings/NU5030.md @@ -3,7 +3,7 @@ title: NuGet Error NU5030 description: NU5030 Error code author: nkolev92 ms.date: 11/15/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5030 diff --git a/docs/reference/errors-and-warnings/NU5031.md b/docs/reference/errors-and-warnings/NU5031.md index 88e7fa3ce..01ccd5ea7 100644 --- a/docs/reference/errors-and-warnings/NU5031.md +++ b/docs/reference/errors-and-warnings/NU5031.md @@ -3,7 +3,7 @@ title: NuGet Error NU5031 description: NU5031 Error code author: nkolev92 ms.date: 11/15/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5031 diff --git a/docs/reference/errors-and-warnings/NU5032.md b/docs/reference/errors-and-warnings/NU5032.md index e4db58d2f..afc9634db 100644 --- a/docs/reference/errors-and-warnings/NU5032.md +++ b/docs/reference/errors-and-warnings/NU5032.md @@ -3,7 +3,7 @@ title: NuGet Error NU5032 description: NU5032 Error code author: nkolev92 ms.date: 11/15/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5032 diff --git a/docs/reference/errors-and-warnings/NU5033.md b/docs/reference/errors-and-warnings/NU5033.md index d87cda2fb..3569d58db 100644 --- a/docs/reference/errors-and-warnings/NU5033.md +++ b/docs/reference/errors-and-warnings/NU5033.md @@ -3,7 +3,7 @@ title: NuGet Error NU5033 description: NU5033 Error code author: nkolev92 ms.date: 11/15/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5033 diff --git a/docs/reference/errors-and-warnings/NU5034.md b/docs/reference/errors-and-warnings/NU5034.md index f056812dd..1db56fd9e 100644 --- a/docs/reference/errors-and-warnings/NU5034.md +++ b/docs/reference/errors-and-warnings/NU5034.md @@ -3,7 +3,7 @@ title: NuGet Error NU5034 description: NU5034 Error code author: nkolev92 ms.date: 11/15/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5034 diff --git a/docs/reference/errors-and-warnings/NU5035.md b/docs/reference/errors-and-warnings/NU5035.md index b1b7688bc..472e217be 100644 --- a/docs/reference/errors-and-warnings/NU5035.md +++ b/docs/reference/errors-and-warnings/NU5035.md @@ -3,7 +3,7 @@ title: NuGet Error NU5035 description: NU5035 Error code author: nkolev92 ms.date: 11/15/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5035 diff --git a/docs/reference/errors-and-warnings/NU5036.md b/docs/reference/errors-and-warnings/NU5036.md index 06a7061f8..0859655d4 100644 --- a/docs/reference/errors-and-warnings/NU5036.md +++ b/docs/reference/errors-and-warnings/NU5036.md @@ -4,7 +4,7 @@ description: NU5036 Error code author: rrelyea ms.author: jodou ms.date: 8/8/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5036 diff --git a/docs/reference/errors-and-warnings/NU5037.md b/docs/reference/errors-and-warnings/NU5037.md index 0a370d339..af357a185 100644 --- a/docs/reference/errors-and-warnings/NU5037.md +++ b/docs/reference/errors-and-warnings/NU5037.md @@ -4,7 +4,7 @@ description: NU5037 Error code author: kartheekp-ms ms.author: kapenaga ms.date: 8/9/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: nikolev,zivkan f1_keywords: - NU5037 diff --git a/docs/reference/errors-and-warnings/NU5038.md b/docs/reference/errors-and-warnings/NU5038.md index 136b9016f..f47a69e1f 100644 --- a/docs/reference/errors-and-warnings/NU5038.md +++ b/docs/reference/errors-and-warnings/NU5038.md @@ -4,7 +4,7 @@ description: NU5038 Error code author: chgill-MSFT ms.author: chgill ms.date: 7/28/2020 -ms.topic: reference +ms.topic: reference ms.reviewer: f1_keywords: - NU5038 diff --git a/docs/reference/errors-and-warnings/NU5039.md b/docs/reference/errors-and-warnings/NU5039.md index 4cbe7adb6..ac8fe6ca2 100644 --- a/docs/reference/errors-and-warnings/NU5039.md +++ b/docs/reference/errors-and-warnings/NU5039.md @@ -4,7 +4,7 @@ description: NU5039 Error code author: chgill-MSFT ms.author: chgill ms.date: 7/28/2020 -ms.topic: reference +ms.topic: reference ms.reviewer: f1_keywords: - NU5039 diff --git a/docs/reference/errors-and-warnings/NU5040.md b/docs/reference/errors-and-warnings/NU5040.md index ba38671fa..5662b368d 100644 --- a/docs/reference/errors-and-warnings/NU5040.md +++ b/docs/reference/errors-and-warnings/NU5040.md @@ -4,7 +4,7 @@ description: NU5040 Error code author: chgill-MSFT ms.author: chgill ms.date: 7/28/2020 -ms.topic: reference +ms.topic: reference ms.reviewer: f1_keywords: - NU5040 diff --git a/docs/reference/errors-and-warnings/NU5041.md b/docs/reference/errors-and-warnings/NU5041.md index 82b018e5a..5253e56c6 100644 --- a/docs/reference/errors-and-warnings/NU5041.md +++ b/docs/reference/errors-and-warnings/NU5041.md @@ -4,7 +4,7 @@ description: NU5041 Error code author: chgill-MSFT ms.author: chgill ms.date: 7/28/2020 -ms.topic: reference +ms.topic: reference ms.reviewer: f1_keywords: - NU5041 diff --git a/docs/reference/errors-and-warnings/NU5046.md b/docs/reference/errors-and-warnings/NU5046.md index 2bbe9e5e9..aa0130d9d 100644 --- a/docs/reference/errors-and-warnings/NU5046.md +++ b/docs/reference/errors-and-warnings/NU5046.md @@ -4,7 +4,7 @@ description: NU5046 Error code author: dominoFire ms.author: feaguila ms.date: 9/4/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5046 diff --git a/docs/reference/errors-and-warnings/NU5047.md b/docs/reference/errors-and-warnings/NU5047.md index c0f4c8909..dc8604639 100644 --- a/docs/reference/errors-and-warnings/NU5047.md +++ b/docs/reference/errors-and-warnings/NU5047.md @@ -4,7 +4,7 @@ description: NU5047 Error code author: dominoFire ms.author: feaguila ms.date: 9/4/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5047 diff --git a/docs/reference/errors-and-warnings/NU5048.md b/docs/reference/errors-and-warnings/NU5048.md index f0d5e54b1..26340e502 100644 --- a/docs/reference/errors-and-warnings/NU5048.md +++ b/docs/reference/errors-and-warnings/NU5048.md @@ -4,7 +4,7 @@ description: NU5048 Warning code author: dominoFire ms.author: feaguila ms.date: 9/4/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5048 diff --git a/docs/reference/errors-and-warnings/NU5100.md b/docs/reference/errors-and-warnings/NU5100.md index 35ec7f5c7..8ae38a462 100644 --- a/docs/reference/errors-and-warnings/NU5100.md +++ b/docs/reference/errors-and-warnings/NU5100.md @@ -4,7 +4,7 @@ description: NU5100 Warning code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5100 diff --git a/docs/reference/errors-and-warnings/NU5101.md b/docs/reference/errors-and-warnings/NU5101.md index b62962e9a..9a20f02fb 100644 --- a/docs/reference/errors-and-warnings/NU5101.md +++ b/docs/reference/errors-and-warnings/NU5101.md @@ -4,7 +4,7 @@ description: NU5101 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5101 diff --git a/docs/reference/errors-and-warnings/NU5102.md b/docs/reference/errors-and-warnings/NU5102.md index cfbfb69c1..25cf64e5e 100644 --- a/docs/reference/errors-and-warnings/NU5102.md +++ b/docs/reference/errors-and-warnings/NU5102.md @@ -4,7 +4,7 @@ description: NU5102 Warning code author: mishra14 ms.author: jodou ms.date: 8/8/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5102 diff --git a/docs/reference/errors-and-warnings/NU5103.md b/docs/reference/errors-and-warnings/NU5103.md index 6dc92b807..9f94a4c60 100644 --- a/docs/reference/errors-and-warnings/NU5103.md +++ b/docs/reference/errors-and-warnings/NU5103.md @@ -4,7 +4,7 @@ description: NU5103 Warning code author: mishra14 ms.author: jodou ms.date: 8/8/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5103 diff --git a/docs/reference/errors-and-warnings/NU5104.md b/docs/reference/errors-and-warnings/NU5104.md index ce46f2c60..860b0d909 100644 --- a/docs/reference/errors-and-warnings/NU5104.md +++ b/docs/reference/errors-and-warnings/NU5104.md @@ -4,7 +4,7 @@ description: NU5104 Warning code author: mishra14 ms.author: jodou ms.date: 8/8/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5104 diff --git a/docs/reference/errors-and-warnings/NU5105.md b/docs/reference/errors-and-warnings/NU5105.md index e2ae35bd6..4c278c447 100644 --- a/docs/reference/errors-and-warnings/NU5105.md +++ b/docs/reference/errors-and-warnings/NU5105.md @@ -4,7 +4,7 @@ description: NU5105 Warning code author: mishra14 ms.author: jodou ms.date: 8/8/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5105 diff --git a/docs/reference/errors-and-warnings/NU5106.md b/docs/reference/errors-and-warnings/NU5106.md index bd5e94784..52524a311 100644 --- a/docs/reference/errors-and-warnings/NU5106.md +++ b/docs/reference/errors-and-warnings/NU5106.md @@ -4,7 +4,7 @@ description: NU5106 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5106 diff --git a/docs/reference/errors-and-warnings/NU5107.md b/docs/reference/errors-and-warnings/NU5107.md index 3adffb3cb..595d1ace8 100644 --- a/docs/reference/errors-and-warnings/NU5107.md +++ b/docs/reference/errors-and-warnings/NU5107.md @@ -4,7 +4,7 @@ description: NU5107 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5107 diff --git a/docs/reference/errors-and-warnings/NU5108.md b/docs/reference/errors-and-warnings/NU5108.md index 9b6570f0d..dd7774181 100644 --- a/docs/reference/errors-and-warnings/NU5108.md +++ b/docs/reference/errors-and-warnings/NU5108.md @@ -4,7 +4,7 @@ description: NU5108 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5108 diff --git a/docs/reference/errors-and-warnings/NU5109.md b/docs/reference/errors-and-warnings/NU5109.md index 2b429f534..26ff11cc8 100644 --- a/docs/reference/errors-and-warnings/NU5109.md +++ b/docs/reference/errors-and-warnings/NU5109.md @@ -4,7 +4,7 @@ description: NU5109 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5109 diff --git a/docs/reference/errors-and-warnings/NU5110.md b/docs/reference/errors-and-warnings/NU5110.md index 22b666c3a..fe9b4a099 100644 --- a/docs/reference/errors-and-warnings/NU5110.md +++ b/docs/reference/errors-and-warnings/NU5110.md @@ -4,7 +4,7 @@ description: NU5110 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5110 diff --git a/docs/reference/errors-and-warnings/NU5111.md b/docs/reference/errors-and-warnings/NU5111.md index c854c0e05..962d82d3d 100644 --- a/docs/reference/errors-and-warnings/NU5111.md +++ b/docs/reference/errors-and-warnings/NU5111.md @@ -4,7 +4,7 @@ description: NU5111 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5111 diff --git a/docs/reference/errors-and-warnings/NU5112.md b/docs/reference/errors-and-warnings/NU5112.md index f194624b4..192844f22 100644 --- a/docs/reference/errors-and-warnings/NU5112.md +++ b/docs/reference/errors-and-warnings/NU5112.md @@ -4,7 +4,7 @@ description: NU5112 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5112 diff --git a/docs/reference/errors-and-warnings/NU5114.md b/docs/reference/errors-and-warnings/NU5114.md index e5dbe8964..a2dfc2236 100644 --- a/docs/reference/errors-and-warnings/NU5114.md +++ b/docs/reference/errors-and-warnings/NU5114.md @@ -4,7 +4,7 @@ description: NU5114 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5114 diff --git a/docs/reference/errors-and-warnings/NU5115.md b/docs/reference/errors-and-warnings/NU5115.md index d6245053e..6003c84a0 100644 --- a/docs/reference/errors-and-warnings/NU5115.md +++ b/docs/reference/errors-and-warnings/NU5115.md @@ -4,7 +4,7 @@ description: NU5115 Warning code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5115 diff --git a/docs/reference/errors-and-warnings/NU5116.md b/docs/reference/errors-and-warnings/NU5116.md index 35560767c..7127aaebe 100644 --- a/docs/reference/errors-and-warnings/NU5116.md +++ b/docs/reference/errors-and-warnings/NU5116.md @@ -4,7 +4,7 @@ description: NU5116 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5116 diff --git a/docs/reference/errors-and-warnings/NU5117.md b/docs/reference/errors-and-warnings/NU5117.md index 82d3fe066..3d198a771 100644 --- a/docs/reference/errors-and-warnings/NU5117.md +++ b/docs/reference/errors-and-warnings/NU5117.md @@ -4,7 +4,7 @@ description: NU5117 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5117 diff --git a/docs/reference/errors-and-warnings/NU5118.md b/docs/reference/errors-and-warnings/NU5118.md index fdd6c952a..a8bf62a31 100644 --- a/docs/reference/errors-and-warnings/NU5118.md +++ b/docs/reference/errors-and-warnings/NU5118.md @@ -4,7 +4,7 @@ description: NU5118 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5118 diff --git a/docs/reference/errors-and-warnings/NU5119.md b/docs/reference/errors-and-warnings/NU5119.md index 458838803..f5924c4e5 100644 --- a/docs/reference/errors-and-warnings/NU5119.md +++ b/docs/reference/errors-and-warnings/NU5119.md @@ -4,7 +4,7 @@ description: NU5119 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5119 diff --git a/docs/reference/errors-and-warnings/NU5120.md b/docs/reference/errors-and-warnings/NU5120.md index dc8ab3642..bd45bd1d7 100644 --- a/docs/reference/errors-and-warnings/NU5120.md +++ b/docs/reference/errors-and-warnings/NU5120.md @@ -4,7 +4,7 @@ description: NU5120 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5120 diff --git a/docs/reference/errors-and-warnings/NU5121.md b/docs/reference/errors-and-warnings/NU5121.md index 3cd680ab9..31ee44496 100644 --- a/docs/reference/errors-and-warnings/NU5121.md +++ b/docs/reference/errors-and-warnings/NU5121.md @@ -4,7 +4,7 @@ description: NU5121 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5121 diff --git a/docs/reference/errors-and-warnings/NU5122.md b/docs/reference/errors-and-warnings/NU5122.md index 9f40ef186..fa928b1fc 100644 --- a/docs/reference/errors-and-warnings/NU5122.md +++ b/docs/reference/errors-and-warnings/NU5122.md @@ -4,7 +4,7 @@ description: NU5122 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5122 diff --git a/docs/reference/errors-and-warnings/NU5123.md b/docs/reference/errors-and-warnings/NU5123.md index f73e7226c..12e75c5fd 100644 --- a/docs/reference/errors-and-warnings/NU5123.md +++ b/docs/reference/errors-and-warnings/NU5123.md @@ -4,7 +4,7 @@ description: NU5123 Warning code author: mishra14 ms.author: jodou ms.date: 8/14/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5123 diff --git a/docs/reference/errors-and-warnings/NU5124.md b/docs/reference/errors-and-warnings/NU5124.md index 075b81ed4..39fcaec77 100644 --- a/docs/reference/errors-and-warnings/NU5124.md +++ b/docs/reference/errors-and-warnings/NU5124.md @@ -3,7 +3,7 @@ title: NuGet Error NU5124 description: NU5124 Error code author: nkolev92 ms.date: 11/15/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5124 diff --git a/docs/reference/errors-and-warnings/NU5125.md b/docs/reference/errors-and-warnings/NU5125.md index d13f7e201..d6a21b797 100644 --- a/docs/reference/errors-and-warnings/NU5125.md +++ b/docs/reference/errors-and-warnings/NU5125.md @@ -3,7 +3,7 @@ title: NuGet Error NU5125 description: NU5125 Error code author: nkolev92 ms.date: 11/15/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5125 diff --git a/docs/reference/errors-and-warnings/NU5127.md b/docs/reference/errors-and-warnings/NU5127.md index 078646244..8e1ba098f 100644 --- a/docs/reference/errors-and-warnings/NU5127.md +++ b/docs/reference/errors-and-warnings/NU5127.md @@ -3,7 +3,7 @@ title: NuGet Warning NU5127 description: NU5127 Warning code author: zivkan ms.date: 09/20/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5127 diff --git a/docs/reference/errors-and-warnings/NU5128.md b/docs/reference/errors-and-warnings/NU5128.md index 1a4387d64..1d0703f94 100644 --- a/docs/reference/errors-and-warnings/NU5128.md +++ b/docs/reference/errors-and-warnings/NU5128.md @@ -3,7 +3,7 @@ title: NuGet Warning NU5128 description: NU5128 Warning code author: zivkan ms.date: 09/06/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5128 diff --git a/docs/reference/errors-and-warnings/NU5129.md b/docs/reference/errors-and-warnings/NU5129.md index 3ae8d1b90..ccd56200c 100644 --- a/docs/reference/errors-and-warnings/NU5129.md +++ b/docs/reference/errors-and-warnings/NU5129.md @@ -3,7 +3,7 @@ title: NuGet Warning NU5129 description: NU5129 Warning code author: zivkan ms.date: 09/19/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5129 diff --git a/docs/reference/errors-and-warnings/NU5130.md b/docs/reference/errors-and-warnings/NU5130.md index 6e031d565..e04d10328 100644 --- a/docs/reference/errors-and-warnings/NU5130.md +++ b/docs/reference/errors-and-warnings/NU5130.md @@ -3,7 +3,7 @@ title: NuGet Warning NU5130 description: NU5130 Warning code author: zivkan ms.date: 09/16/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5130 diff --git a/docs/reference/errors-and-warnings/NU5131.md b/docs/reference/errors-and-warnings/NU5131.md index 4851d5dbd..947cef557 100644 --- a/docs/reference/errors-and-warnings/NU5131.md +++ b/docs/reference/errors-and-warnings/NU5131.md @@ -3,7 +3,7 @@ title: NuGet Warning NU5131 description: NU5131 Warning code author: zivkan ms.date: 09/20/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: karann f1_keywords: - NU5131 diff --git a/docs/reference/errors-and-warnings/NU5500.md b/docs/reference/errors-and-warnings/NU5500.md index fb535a2c9..70b2b9401 100644 --- a/docs/reference/errors-and-warnings/NU5500.md +++ b/docs/reference/errors-and-warnings/NU5500.md @@ -4,7 +4,7 @@ description: NU5500 Warning code author: mishra14 ms.author: jodou ms.date: 8/3/2018 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur f1_keywords: - NU5500 diff --git a/docs/reference/extensibility/NuGet-Credential-Providers-for-Visual-Studio.md b/docs/reference/extensibility/NuGet-Credential-Providers-for-Visual-Studio.md index 7279fc049..6b10f8121 100644 --- a/docs/reference/extensibility/NuGet-Credential-Providers-for-Visual-Studio.md +++ b/docs/reference/extensibility/NuGet-Credential-Providers-for-Visual-Studio.md @@ -4,7 +4,7 @@ description: NuGet credential providers authenticate with feeds by implementing author: JonDouglas ms.author: jodou ms.date: 01/09/2017 -ms.topic: conceptual +ms.topic: conceptual --- # Authenticating feeds in Visual Studio with NuGet credential providers diff --git a/docs/reference/extensibility/NuGet-Cross-Platform-Authentication-Plugin.md b/docs/reference/extensibility/NuGet-Cross-Platform-Authentication-Plugin.md index 5d5d3ae28..a0e8d027b 100644 --- a/docs/reference/extensibility/NuGet-Cross-Platform-Authentication-Plugin.md +++ b/docs/reference/extensibility/NuGet-Cross-Platform-Authentication-Plugin.md @@ -4,7 +4,7 @@ description: NuGet cross platform authentication plugins for NuGet.exe, dotnet.e author: nkolev92 ms.author: nikolev ms.date: 07/01/2018 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet cross platform authentication plugin diff --git a/docs/reference/extensibility/NuGet-Cross-Platform-Plugins.md b/docs/reference/extensibility/NuGet-Cross-Platform-Plugins.md index 551985edb..02428709d 100644 --- a/docs/reference/extensibility/NuGet-Cross-Platform-Plugins.md +++ b/docs/reference/extensibility/NuGet-Cross-Platform-Plugins.md @@ -4,7 +4,7 @@ description: NuGet cross platform plugins for NuGet.exe, dotnet.exe, msbuild.exe author: nkolev92 ms.author: nikolev ms.date: 07/01/2018 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet cross platform plugins diff --git a/docs/reference/extensibility/nuget-exe-Credential-Providers.md b/docs/reference/extensibility/nuget-exe-Credential-Providers.md index ec089cbde..520083e37 100644 --- a/docs/reference/extensibility/nuget-exe-Credential-Providers.md +++ b/docs/reference/extensibility/nuget-exe-Credential-Providers.md @@ -4,7 +4,7 @@ description: nuget.exe credential providers authenticate with a feed, and are im author: JonDouglas ms.author: jodou ms.date: 12/12/2017 -ms.topic: conceptual +ms.topic: conceptual --- # Authenticating feeds with nuget.exe credential providers diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index 2316cfefb..9889e66e4 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -4,7 +4,7 @@ description: NuGet pack and restore can work directly as MSBuild targets with Nu author: nkolev92 ms.author: nikolev ms.date: 03/23/2018 -ms.topic: conceptual +ms.topic: conceptual no-loc: [NuGet, MSBuild, .nuspec, nuspec] --- diff --git a/docs/reference/nuget-config-file.md b/docs/reference/nuget-config-file.md index 35784aad9..e2b9e4a90 100644 --- a/docs/reference/nuget-config-file.md +++ b/docs/reference/nuget-config-file.md @@ -4,7 +4,7 @@ description: NuGet.Config file reference including the config, bindingRedirects, author: JonDouglas ms.author: jodou ms.date: 08/13/2019 -ms.topic: reference +ms.topic: reference --- # `nuget.config` reference diff --git a/docs/reference/nuget-exe-CLI-Reference.md b/docs/reference/nuget-exe-CLI-Reference.md index 2902bc389..814c72b56 100644 --- a/docs/reference/nuget-exe-CLI-Reference.md +++ b/docs/reference/nuget-exe-CLI-Reference.md @@ -4,7 +4,7 @@ description: Command-line reference index for the nuget.exe CLI author: JonDouglas ms.author: jodou ms.date: 01/23/2018 -ms.topic: reference +ms.topic: reference --- # NuGet CLI reference diff --git a/docs/reference/nuspec.md b/docs/reference/nuspec.md index 204f23ea0..af97b50bf 100644 --- a/docs/reference/nuspec.md +++ b/docs/reference/nuspec.md @@ -4,7 +4,7 @@ description: The .nuspec file contains package metadata used when building a pac author: JonDouglas ms.author: jodou ms.date: 05/24/2019 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur --- diff --git a/docs/reference/packages-config.md b/docs/reference/packages-config.md index 624474d77..92fb21497 100644 --- a/docs/reference/packages-config.md +++ b/docs/reference/packages-config.md @@ -4,7 +4,7 @@ description: In some project types, packages.config maintains the list of NuGet author: JonDouglas ms.author: jodou ms.date: 05/21/2018 -ms.topic: reference +ms.topic: reference --- # packages.config reference diff --git a/docs/reference/ps-reference/ps-ref-add-bindingredirect.md b/docs/reference/ps-reference/ps-ref-add-bindingredirect.md index dd2c2a53f..2160e5771 100644 --- a/docs/reference/ps-reference/ps-ref-add-bindingredirect.md +++ b/docs/reference/ps-reference/ps-ref-add-bindingredirect.md @@ -4,7 +4,7 @@ description: Reference for Add-BindingRedirect PowerShell command in the NuGet P author: JonDouglas ms.author: jodou ms.date: 12/07/2017 -ms.topic: reference +ms.topic: reference --- # Add-BindingRedirect (Package Manager Console in Visual Studio) diff --git a/docs/reference/ps-reference/ps-ref-find-package.md b/docs/reference/ps-reference/ps-ref-find-package.md index f959a24f7..cb81ce65a 100644 --- a/docs/reference/ps-reference/ps-ref-find-package.md +++ b/docs/reference/ps-reference/ps-ref-find-package.md @@ -4,12 +4,12 @@ description: Reference for Find-Package PowerShell command in the NuGet Package author: JonDouglas ms.author: jodou ms.date: 6/1/2017 -ms.topic: reference +ms.topic: reference --- # Find-Package (Package Manager Console in Visual Studio) -*Version 3.0+; this topic describes the command within the [Package Manager Console](../../consume-packages/install-use-packages-powershell.md) in Visual Studio on Windows. For the generic PowerShell Find-Package command, see the [PowerShell PackageManagement reference](/powershell/module/packagemanagement/?view=powershell-6).* +*Version 3.0+; this topic describes the command within the [Package Manager Console](../../consume-packages/install-use-packages-powershell.md) in Visual Studio on Windows. For the generic PowerShell Find-Package command, see the [PowerShell PackageManagement reference](/powershell/module/packagemanagement).* Gets the set of remote packages with specified ID or keywords from the package source. diff --git a/docs/reference/ps-reference/ps-ref-get-package.md b/docs/reference/ps-reference/ps-ref-get-package.md index 790ecf5af..e1438cb21 100644 --- a/docs/reference/ps-reference/ps-ref-get-package.md +++ b/docs/reference/ps-reference/ps-ref-get-package.md @@ -4,12 +4,12 @@ description: Reference for Get-Package PowerShell command in the NuGet Package M author: JonDouglas ms.author: jodou ms.date: 12/07/2017 -ms.topic: reference +ms.topic: reference --- # Get-Package (Package Manager Console in Visual Studio) -*This topic describes the command within the [Package Manager Console](../../consume-packages/install-use-packages-powershell.md) in Visual Studio on Windows. For the generic PowerShell Get-Package command, see the [PowerShell PackageManagement reference](/powershell/module/packagemanagement/?view=powershell-6).* +*This topic describes the command within the [Package Manager Console](../../consume-packages/install-use-packages-powershell.md) in Visual Studio on Windows. For the generic PowerShell Get-Package command, see the [PowerShell PackageManagement reference](/powershell/module/packagemanagement).* Retrieves the list of packages installed in the local repository, lists packages available from a package source when used with the -ListAvailable switch, or lists available updates when used with the -Update switch. diff --git a/docs/reference/ps-reference/ps-ref-get-project.md b/docs/reference/ps-reference/ps-ref-get-project.md index 4d409d1cd..5d071be5a 100644 --- a/docs/reference/ps-reference/ps-ref-get-project.md +++ b/docs/reference/ps-reference/ps-ref-get-project.md @@ -4,7 +4,7 @@ description: Reference for GetProject PowerShell command in the NuGet Package Ma author: JonDouglas ms.author: jodou ms.date: 12/07/2017 -ms.topic: reference +ms.topic: reference --- # Get-Project (Package Manager Console in Visual Studio) diff --git a/docs/reference/ps-reference/ps-ref-install-package.md b/docs/reference/ps-reference/ps-ref-install-package.md index 29efa9a83..87e6d59b8 100644 --- a/docs/reference/ps-reference/ps-ref-install-package.md +++ b/docs/reference/ps-reference/ps-ref-install-package.md @@ -4,12 +4,12 @@ description: Reference for Install-Package PowerShell command in the NuGet Packa author: JonDouglas ms.author: jodou ms.date: 06/01/2017 -ms.topic: reference +ms.topic: reference --- # Install-Package (Package Manager Console in Visual Studio) -*This topic describes the command within the [Package Manager Console](../../consume-packages/install-use-packages-powershell.md) in Visual Studio on Windows. For the generic PowerShell Install-Package command, see the [PowerShell PackageManagement reference](/powershell/module/packagemanagement/?view=powershell-6).* +*This topic describes the command within the [Package Manager Console](../../consume-packages/install-use-packages-powershell.md) in Visual Studio on Windows. For the generic PowerShell Install-Package command, see the [PowerShell PackageManagement reference](/powershell/module/packagemanagement).* Installs a package and its dependencies into a project. diff --git a/docs/reference/ps-reference/ps-ref-open-packagepage.md b/docs/reference/ps-reference/ps-ref-open-packagepage.md index f176adebe..689de08f6 100644 --- a/docs/reference/ps-reference/ps-ref-open-packagepage.md +++ b/docs/reference/ps-reference/ps-ref-open-packagepage.md @@ -4,7 +4,7 @@ description: Reference for Open-PackagePage PowerShell command in the NuGet Pack author: JonDouglas ms.author: jodou ms.date: 12/07/2017 -ms.topic: reference +ms.topic: reference --- # Open-PackagePage (Package Manager Console in Visual Studio) diff --git a/docs/reference/ps-reference/ps-ref-register-tabexpansion.md b/docs/reference/ps-reference/ps-ref-register-tabexpansion.md index 654adb0c7..e92e7323c 100644 --- a/docs/reference/ps-reference/ps-ref-register-tabexpansion.md +++ b/docs/reference/ps-reference/ps-ref-register-tabexpansion.md @@ -4,7 +4,7 @@ description: Reference for Register-TabExpansion PowerShell command in the NuGet author: JonDouglas ms.author: jodou ms.date: 12/07/2017 -ms.topic: reference +ms.topic: reference --- # Register-TabExpansion (Package Manager Console in Visual Studio) diff --git a/docs/reference/ps-reference/ps-ref-sync-package.md b/docs/reference/ps-reference/ps-ref-sync-package.md index 1402a12c1..b9a46e6c9 100644 --- a/docs/reference/ps-reference/ps-ref-sync-package.md +++ b/docs/reference/ps-reference/ps-ref-sync-package.md @@ -4,7 +4,7 @@ description: Reference for Sync-Package PowerShell command in the NuGet Package author: JonDouglas ms.author: jodou ms.date: 12/07/2017 -ms.topic: reference +ms.topic: reference --- # Sync-Package (Package Manager Console in Visual Studio) diff --git a/docs/reference/ps-reference/ps-ref-uninstall-package.md b/docs/reference/ps-reference/ps-ref-uninstall-package.md index 1f51ac3fc..cf8430a0f 100644 --- a/docs/reference/ps-reference/ps-ref-uninstall-package.md +++ b/docs/reference/ps-reference/ps-ref-uninstall-package.md @@ -4,12 +4,12 @@ description: Reference for Uninstall-Package PowerShell command in the NuGet Pac author: JonDouglas ms.author: jodou ms.date: 06/01/2017 -ms.topic: reference +ms.topic: reference --- # Uninstall-Package (Package Manager Console in Visual Studio) -*This topic describes the command within the [Package Manager Console](../../consume-packages/install-use-packages-powershell.md) in Visual Studio on Windows. For the generic PowerShell Uninstall-Package command, see the [PowerShell PackageManagement reference](/powershell/module/packagemanagement/?view=powershell-6).* +*This topic describes the command within the [Package Manager Console](../../consume-packages/install-use-packages-powershell.md) in Visual Studio on Windows. For the generic PowerShell Uninstall-Package command, see the [PowerShell PackageManagement reference](/powershell/module/packagemanagement).* Removes a package from a project, optionally removing its dependencies. If other packages depend on this package, the command will fail unless the –Force option is specified. diff --git a/docs/reference/ps-reference/ps-ref-update-package.md b/docs/reference/ps-reference/ps-ref-update-package.md index 0b8d9490c..b8af43043 100644 --- a/docs/reference/ps-reference/ps-ref-update-package.md +++ b/docs/reference/ps-reference/ps-ref-update-package.md @@ -4,7 +4,7 @@ description: Reference for Update-Package PowerShell command in the NuGet Packag author: JonDouglas ms.author: jodou ms.date: 12/07/2017 -ms.topic: reference +ms.topic: reference --- # Update-Package (Package Manager Console in Visual Studio) diff --git a/docs/reference/target-frameworks.md b/docs/reference/target-frameworks.md index 74745ad0e..287f52b7a 100644 --- a/docs/reference/target-frameworks.md +++ b/docs/reference/target-frameworks.md @@ -4,7 +4,7 @@ description: NuGet target framework references identify and isolate framework-de author: JonDouglas ms.author: jodou ms.date: 12/11/2017 -ms.topic: reference +ms.topic: reference ms.reviewer: anangaur --- diff --git a/docs/release-notes/Index.md b/docs/release-notes/Index.md index a57bab040..2b1eae9ff 100644 --- a/docs/release-notes/Index.md +++ b/docs/release-notes/Index.md @@ -4,7 +4,7 @@ description: Index of NuGet release notes and known issues for all versions. author: anangaur ms.author: anangaur ms.date: 08/14/2017 -ms.topic: conceptual +ms.topic: conceptual --- # Release Notes diff --git a/docs/release-notes/Known-Issues.md b/docs/release-notes/Known-Issues.md index e2d138f8d..a23680c06 100644 --- a/docs/release-notes/Known-Issues.md +++ b/docs/release-notes/Known-Issues.md @@ -4,7 +4,7 @@ description: Known issues with NuGet including authentication, package installat author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # Known Issues with NuGet diff --git a/docs/release-notes/NuGet-1.1.md b/docs/release-notes/NuGet-1.1.md index 4c5528e99..6d42ca832 100644 --- a/docs/release-notes/NuGet-1.1.md +++ b/docs/release-notes/NuGet-1.1.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 1.1 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 1.0 and 1.1 Release Notes diff --git a/docs/release-notes/NuGet-1.2.md b/docs/release-notes/NuGet-1.2.md index 0f3bc6fc1..6571b9e6e 100644 --- a/docs/release-notes/NuGet-1.2.md +++ b/docs/release-notes/NuGet-1.2.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 1.2 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 1.2 Release Notes diff --git a/docs/release-notes/NuGet-1.3.md b/docs/release-notes/NuGet-1.3.md index 969adf558..a11854951 100644 --- a/docs/release-notes/NuGet-1.3.md +++ b/docs/release-notes/NuGet-1.3.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 1.3 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 1.3 Release Notes diff --git a/docs/release-notes/NuGet-1.4.md b/docs/release-notes/NuGet-1.4.md index ec7165ba8..144fa5524 100644 --- a/docs/release-notes/NuGet-1.4.md +++ b/docs/release-notes/NuGet-1.4.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 1.4 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 1.4 Release Notes diff --git a/docs/release-notes/NuGet-1.5.md b/docs/release-notes/NuGet-1.5.md index dc8e9c36f..364687dbf 100644 --- a/docs/release-notes/NuGet-1.5.md +++ b/docs/release-notes/NuGet-1.5.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 1.5 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 1.5 Release Notes diff --git a/docs/release-notes/NuGet-1.6.md b/docs/release-notes/NuGet-1.6.md index 2aacc4fb0..7ccaa4892 100644 --- a/docs/release-notes/NuGet-1.6.md +++ b/docs/release-notes/NuGet-1.6.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 1.6 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 1.6 Release Notes diff --git a/docs/release-notes/NuGet-1.7.md b/docs/release-notes/NuGet-1.7.md index a5e4fd309..a4e878be5 100644 --- a/docs/release-notes/NuGet-1.7.md +++ b/docs/release-notes/NuGet-1.7.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 1.7 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 1.7 Release Notes diff --git a/docs/release-notes/NuGet-1.8.md b/docs/release-notes/NuGet-1.8.md index 538d8d9f5..6895b29d3 100644 --- a/docs/release-notes/NuGet-1.8.md +++ b/docs/release-notes/NuGet-1.8.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 1.8 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 1.8 Release Notes diff --git a/docs/release-notes/NuGet-2.0.md b/docs/release-notes/NuGet-2.0.md index a17e56499..d7e2f3592 100644 --- a/docs/release-notes/NuGet-2.0.md +++ b/docs/release-notes/NuGet-2.0.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.0 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.0 Release Notes diff --git a/docs/release-notes/NuGet-2.1.md b/docs/release-notes/NuGet-2.1.md index dba243096..5a3b00df4 100644 --- a/docs/release-notes/NuGet-2.1.md +++ b/docs/release-notes/NuGet-2.1.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.1 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.1 Release Notes diff --git a/docs/release-notes/NuGet-2.12-RC.md b/docs/release-notes/NuGet-2.12-RC.md index f73c9d999..ffd6d73ac 100644 --- a/docs/release-notes/NuGet-2.12-RC.md +++ b/docs/release-notes/NuGet-2.12-RC.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.12 RC including known issues, bug fixes, author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.12-RC Release Notes diff --git a/docs/release-notes/NuGet-2.12.md b/docs/release-notes/NuGet-2.12.md index cda73e522..eef3d737a 100644 --- a/docs/release-notes/NuGet-2.12.md +++ b/docs/release-notes/NuGet-2.12.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.12 including known issues, bug fixes, add author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.12 Release Notes diff --git a/docs/release-notes/NuGet-2.2.1.md b/docs/release-notes/NuGet-2.2.1.md index c219502b7..776d22001 100644 --- a/docs/release-notes/NuGet-2.2.1.md +++ b/docs/release-notes/NuGet-2.2.1.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.2.1 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.2.1 Release Notes diff --git a/docs/release-notes/NuGet-2.2.md b/docs/release-notes/NuGet-2.2.md index 835ac4515..99fd38138 100644 --- a/docs/release-notes/NuGet-2.2.md +++ b/docs/release-notes/NuGet-2.2.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.2 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.2 Release Notes diff --git a/docs/release-notes/NuGet-2.5.md b/docs/release-notes/NuGet-2.5.md index 9266b96c2..dcc93aaef 100644 --- a/docs/release-notes/NuGet-2.5.md +++ b/docs/release-notes/NuGet-2.5.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.5 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.5 Release Notes diff --git a/docs/release-notes/NuGet-2.6.1-for-WebMatrix.md b/docs/release-notes/NuGet-2.6.1-for-WebMatrix.md index f0efa9e2b..606b1a7f3 100644 --- a/docs/release-notes/NuGet-2.6.1-for-WebMatrix.md +++ b/docs/release-notes/NuGet-2.6.1-for-WebMatrix.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.6.1 for WebMatrix including known issues, author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.6.1 for WebMatrix Release Notes diff --git a/docs/release-notes/NuGet-2.6.md b/docs/release-notes/NuGet-2.6.md index 7f9caea6d..72df70c2b 100644 --- a/docs/release-notes/NuGet-2.6.md +++ b/docs/release-notes/NuGet-2.6.md @@ -1,10 +1,10 @@ --- title: NuGet 2.6 Release Notes -description: Release notes for NuGet 2.6.1 for WebMatrix including known issues, bug fixes, added features, and DCRs. +description: Release notes for NuGet 2.6 including known issues, bug fixes, added features, and DCRs. author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.6 Release Notes diff --git a/docs/release-notes/NuGet-2.7.1.md b/docs/release-notes/NuGet-2.7.1.md index c5a0e5981..d12300a97 100644 --- a/docs/release-notes/NuGet-2.7.1.md +++ b/docs/release-notes/NuGet-2.7.1.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.7.1 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.7.1 Release Notes diff --git a/docs/release-notes/NuGet-2.7.2.md b/docs/release-notes/NuGet-2.7.2.md index 66f794907..d00da9daf 100644 --- a/docs/release-notes/NuGet-2.7.2.md +++ b/docs/release-notes/NuGet-2.7.2.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.7.2 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.7.2 Release Notes diff --git a/docs/release-notes/NuGet-2.7.md b/docs/release-notes/NuGet-2.7.md index 6eb7e99c4..565ff307b 100644 --- a/docs/release-notes/NuGet-2.7.md +++ b/docs/release-notes/NuGet-2.7.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.7 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.7 Release Notes diff --git a/docs/release-notes/NuGet-2.8.1.md b/docs/release-notes/NuGet-2.8.1.md index 615c21e67..3c21a451d 100644 --- a/docs/release-notes/NuGet-2.8.1.md +++ b/docs/release-notes/NuGet-2.8.1.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.8.1 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.8.1 Release Notes diff --git a/docs/release-notes/NuGet-2.8.2.md b/docs/release-notes/NuGet-2.8.2.md index 19ad11db8..2f9ddecaf 100644 --- a/docs/release-notes/NuGet-2.8.2.md +++ b/docs/release-notes/NuGet-2.8.2.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.8.2 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.8.2 Release Notes diff --git a/docs/release-notes/NuGet-2.8.3.md b/docs/release-notes/NuGet-2.8.3.md index cadecd64e..b8a55b515 100644 --- a/docs/release-notes/NuGet-2.8.3.md +++ b/docs/release-notes/NuGet-2.8.3.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.8.3 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.8.3 Release Notes diff --git a/docs/release-notes/NuGet-2.8.5.md b/docs/release-notes/NuGet-2.8.5.md index b1e31a879..d034ac0f3 100644 --- a/docs/release-notes/NuGet-2.8.5.md +++ b/docs/release-notes/NuGet-2.8.5.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.8.5 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.8.5 Release Notes diff --git a/docs/release-notes/NuGet-2.8.6.md b/docs/release-notes/NuGet-2.8.6.md index e42514894..dbe2f5ee2 100644 --- a/docs/release-notes/NuGet-2.8.6.md +++ b/docs/release-notes/NuGet-2.8.6.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.8.6 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.8.6 Release Notes diff --git a/docs/release-notes/NuGet-2.8.7.md b/docs/release-notes/NuGet-2.8.7.md index 4a350456f..cb3dde359 100644 --- a/docs/release-notes/NuGet-2.8.7.md +++ b/docs/release-notes/NuGet-2.8.7.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.8.7 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.8.7 Release Notes diff --git a/docs/release-notes/NuGet-2.8.md b/docs/release-notes/NuGet-2.8.md index 0aa5204ac..c7c2411df 100644 --- a/docs/release-notes/NuGet-2.8.md +++ b/docs/release-notes/NuGet-2.8.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.8 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.8 Release Notes diff --git a/docs/release-notes/NuGet-2.9-RC.md b/docs/release-notes/NuGet-2.9-RC.md index 86d066d7e..8ba73ad39 100644 --- a/docs/release-notes/NuGet-2.9-RC.md +++ b/docs/release-notes/NuGet-2.9-RC.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.9 RC including known issues, bug fixes, a author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 2.9-RC Release Notes diff --git a/docs/release-notes/NuGet-3.0-Beta.md b/docs/release-notes/NuGet-3.0-Beta.md index 79020bb1d..7ef229604 100644 --- a/docs/release-notes/NuGet-3.0-Beta.md +++ b/docs/release-notes/NuGet-3.0-Beta.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.0 Beta including known issues, bug fixes, author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.0 Beta Release Notes diff --git a/docs/release-notes/NuGet-3.0-Preview.md b/docs/release-notes/NuGet-3.0-Preview.md index 5e96f6a58..8966e007d 100644 --- a/docs/release-notes/NuGet-3.0-Preview.md +++ b/docs/release-notes/NuGet-3.0-Preview.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.0 Preview including known issues, bug fix author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.0 Preview Release Notes diff --git a/docs/release-notes/NuGet-3.0-RC.md b/docs/release-notes/NuGet-3.0-RC.md index 307686192..251214c8e 100644 --- a/docs/release-notes/NuGet-3.0-RC.md +++ b/docs/release-notes/NuGet-3.0-RC.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.0 RC including known issues, bug fixes, a author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.0 RC Release Notes diff --git a/docs/release-notes/NuGet-3.0-RC2.md b/docs/release-notes/NuGet-3.0-RC2.md index f98f82dc9..3f89104a1 100644 --- a/docs/release-notes/NuGet-3.0-RC2.md +++ b/docs/release-notes/NuGet-3.0-RC2.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.0 RC2 including known issues, bug fixes, author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.0 RC2 Release Notes diff --git a/docs/release-notes/NuGet-3.0.0.md b/docs/release-notes/NuGet-3.0.0.md index 201104512..664e02e3c 100644 --- a/docs/release-notes/NuGet-3.0.0.md +++ b/docs/release-notes/NuGet-3.0.0.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.0.0 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.0 Release Notes diff --git a/docs/release-notes/NuGet-3.1.1.md b/docs/release-notes/NuGet-3.1.1.md index a451f1f76..3331410e0 100644 --- a/docs/release-notes/NuGet-3.1.1.md +++ b/docs/release-notes/NuGet-3.1.1.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.1.1 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.1.1 Release Notes diff --git a/docs/release-notes/NuGet-3.1.md b/docs/release-notes/NuGet-3.1.md index eb3f35745..6164bae11 100644 --- a/docs/release-notes/NuGet-3.1.md +++ b/docs/release-notes/NuGet-3.1.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.1 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.1 Release Notes diff --git a/docs/release-notes/NuGet-3.2-RC.md b/docs/release-notes/NuGet-3.2-RC.md index 400a4469b..5818ef1ca 100644 --- a/docs/release-notes/NuGet-3.2-RC.md +++ b/docs/release-notes/NuGet-3.2-RC.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.2 RC including known issues, bug fixes, a author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.2 RC Release Notes diff --git a/docs/release-notes/NuGet-3.2.1.md b/docs/release-notes/NuGet-3.2.1.md index 2254dab34..38d5a4564 100644 --- a/docs/release-notes/NuGet-3.2.1.md +++ b/docs/release-notes/NuGet-3.2.1.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.2.1 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.2.1 Release Notes diff --git a/docs/release-notes/NuGet-3.2.md b/docs/release-notes/NuGet-3.2.md index 66e20ce53..4601f808c 100644 --- a/docs/release-notes/NuGet-3.2.md +++ b/docs/release-notes/NuGet-3.2.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.2 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.2 Release Notes diff --git a/docs/release-notes/NuGet-3.3.md b/docs/release-notes/NuGet-3.3.md index 6cf902c08..c47b4eeff 100644 --- a/docs/release-notes/NuGet-3.3.md +++ b/docs/release-notes/NuGet-3.3.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.3 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.3 Release Notes diff --git a/docs/release-notes/NuGet-3.4-RC.md b/docs/release-notes/NuGet-3.4-RC.md index 683b7d4b5..de0e9bc03 100644 --- a/docs/release-notes/NuGet-3.4-RC.md +++ b/docs/release-notes/NuGet-3.4-RC.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.4 RC including known issues, bug fixes, a author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.4-RC Release Notes diff --git a/docs/release-notes/NuGet-3.4.1.md b/docs/release-notes/NuGet-3.4.1.md index ced8a3f2d..f7bef3f6f 100644 --- a/docs/release-notes/NuGet-3.4.1.md +++ b/docs/release-notes/NuGet-3.4.1.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.4.1 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.4.1 Release Notes diff --git a/docs/release-notes/NuGet-3.4.2.md b/docs/release-notes/NuGet-3.4.2.md index 70090bb27..f1914888f 100644 --- a/docs/release-notes/NuGet-3.4.2.md +++ b/docs/release-notes/NuGet-3.4.2.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.4.2 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.4.2 Release Notes diff --git a/docs/release-notes/NuGet-3.4.3.md b/docs/release-notes/NuGet-3.4.3.md index 1a9baed1f..b190f78b9 100644 --- a/docs/release-notes/NuGet-3.4.3.md +++ b/docs/release-notes/NuGet-3.4.3.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.4.3 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.4.3 Release Notes diff --git a/docs/release-notes/NuGet-3.4.4.md b/docs/release-notes/NuGet-3.4.4.md index 88898c278..cd1396dd8 100644 --- a/docs/release-notes/NuGet-3.4.4.md +++ b/docs/release-notes/NuGet-3.4.4.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.4.4 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.4.4 Release Notes diff --git a/docs/release-notes/NuGet-3.4.md b/docs/release-notes/NuGet-3.4.md index f6fca1b9e..13aa7651e 100644 --- a/docs/release-notes/NuGet-3.4.md +++ b/docs/release-notes/NuGet-3.4.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.4 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.4 Release Notes diff --git a/docs/release-notes/NuGet-3.5-Beta.md b/docs/release-notes/NuGet-3.5-Beta.md index e7f6beab8..2a22bf74d 100644 --- a/docs/release-notes/NuGet-3.5-Beta.md +++ b/docs/release-notes/NuGet-3.5-Beta.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.5 Beta including known issues, bug fixes, author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.5 Beta Release Notes diff --git a/docs/release-notes/NuGet-3.5-Beta2.md b/docs/release-notes/NuGet-3.5-Beta2.md index 43933ba15..23b01454d 100644 --- a/docs/release-notes/NuGet-3.5-Beta2.md +++ b/docs/release-notes/NuGet-3.5-Beta2.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.5 Beta 2 including known issues, bug fixe author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.5 Beta2 Release Notes diff --git a/docs/release-notes/NuGet-3.5-RC.md b/docs/release-notes/NuGet-3.5-RC.md index 9651d4d28..e7b46f94e 100644 --- a/docs/release-notes/NuGet-3.5-RC.md +++ b/docs/release-notes/NuGet-3.5-RC.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.5 RC including known issues, bug fixes, a author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.5 RC Release Notes diff --git a/docs/release-notes/NuGet-3.5-RTM.md b/docs/release-notes/NuGet-3.5-RTM.md index 910fdf6af..e9a8ca006 100644 --- a/docs/release-notes/NuGet-3.5-RTM.md +++ b/docs/release-notes/NuGet-3.5-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.5 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 3.5 Release Notes diff --git a/docs/release-notes/NuGet-4.0-RC.md b/docs/release-notes/NuGet-4.0-RC.md index 05a39667b..636894afe 100644 --- a/docs/release-notes/NuGet-4.0-RC.md +++ b/docs/release-notes/NuGet-4.0-RC.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 4.0 RC including known issues, bug fixes, a author: JonDouglas ms.author: jodou ms.date: 02/03/2017 -ms.topic: conceptual +ms.topic: conceptual ms.reviewer: ananguar --- diff --git a/docs/release-notes/NuGet-4.0-RTM.md b/docs/release-notes/NuGet-4.0-RTM.md index 9496a99fa..48ae3e641 100644 --- a/docs/release-notes/NuGet-4.0-RTM.md +++ b/docs/release-notes/NuGet-4.0-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 4.0 RTM including known issues, bug fixes, author: anangaur ms.author: anangaur ms.date: 03/03/2017 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 4.0 RTM Release Notes diff --git a/docs/release-notes/NuGet-4.3-RTM.md b/docs/release-notes/NuGet-4.3-RTM.md index 5fac24572..aa9e7702b 100644 --- a/docs/release-notes/NuGet-4.3-RTM.md +++ b/docs/release-notes/NuGet-4.3-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 4.3 RTM including known issues, bug fixes, author: JonDouglas ms.author: jodou ms.date: 08/14/2017 -ms.topic: conceptual +ms.topic: conceptual ms.reviewer: anangaur --- diff --git a/docs/release-notes/NuGet-4.4-RTM.md b/docs/release-notes/NuGet-4.4-RTM.md index 752a7ee73..da36710c4 100644 --- a/docs/release-notes/NuGet-4.4-RTM.md +++ b/docs/release-notes/NuGet-4.4-RTM.md @@ -1,10 +1,10 @@ --- title: NuGet 4.4 RTM Release Notes -description: Release notes for NuGet 4.3 RTM including known issues, bug fixes, added features, and DCRs. +description: Release notes for NuGet 4.4 RTM including known issues, bug fixes, added features, and DCRs. author: JonDouglas ms.author: jodou ms.date: 08/14/2017 -ms.topic: conceptual +ms.topic: conceptual ms.reviewer: anangaur --- diff --git a/docs/release-notes/NuGet-4.5-RTM.md b/docs/release-notes/NuGet-4.5-RTM.md index 4b65592d3..507e183f7 100644 --- a/docs/release-notes/NuGet-4.5-RTM.md +++ b/docs/release-notes/NuGet-4.5-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 4.5 RTM including known issues, bug fixes, author: anangaur ms.author: anangaur ms.date: 12/4/2017 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 4.5 Release Notes diff --git a/docs/release-notes/NuGet-4.6-rtm.md b/docs/release-notes/NuGet-4.6-rtm.md index 3ca315d88..b1e089539 100644 --- a/docs/release-notes/NuGet-4.6-rtm.md +++ b/docs/release-notes/NuGet-4.6-rtm.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 4.6.0 including known issues, bug fixes, ad author: anangaur ms.author: anangaur ms.date: 3/7/2018 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 4.6 Release Notes diff --git a/docs/release-notes/NuGet-4.7-RTM.md b/docs/release-notes/NuGet-4.7-RTM.md index 46dcaaba3..4a189d084 100644 --- a/docs/release-notes/NuGet-4.7-RTM.md +++ b/docs/release-notes/NuGet-4.7-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 4.7.0 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 5/14/2018 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 4.7 Release Notes diff --git a/docs/release-notes/NuGet-4.8-RTM.md b/docs/release-notes/NuGet-4.8-RTM.md index ff1c65da0..56896037f 100644 --- a/docs/release-notes/NuGet-4.8-RTM.md +++ b/docs/release-notes/NuGet-4.8-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 4.8.1 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 5/14/2018 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 4.8 Release Notes diff --git a/docs/release-notes/NuGet-4.9-RTM.md b/docs/release-notes/NuGet-4.9-RTM.md index b89153d60..c139a7823 100644 --- a/docs/release-notes/NuGet-4.9-RTM.md +++ b/docs/release-notes/NuGet-4.9-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 4.9 including known issues, bug fixes, new author: JonDouglas ms.author: jodou ms.date: 11/20/2018 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 4.9 Release Notes diff --git a/docs/release-notes/NuGet-5.0-RTM.md b/docs/release-notes/NuGet-5.0-RTM.md index d6c74744f..6c49464ad 100644 --- a/docs/release-notes/NuGet-5.0-RTM.md +++ b/docs/release-notes/NuGet-5.0-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.0 including known issues, bug fixes, new author: JonDouglas ms.author: jodou ms.date: 04/02/2019 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 5.0 Release Notes @@ -22,7 +22,7 @@ NuGet distribution vehicles: ## Summary: What's New in 5.0 -* Support for restoring [filtered solutions](/visualstudio/ide/filtered-solutions?view=vs-2019) in Visual Studio 2019 - [#5820](https://github.com/NuGet/Home/issues/5820) +* Support for restoring [filtered solutions](/visualstudio/ide/filtered-solutions) in Visual Studio 2019 - [#5820](https://github.com/NuGet/Home/issues/5820) * `BuildTransitive` folder enables packages to transitively contribute targets/props to the host project - [#6091](https://github.com/NuGet/Home/issues/6091) * Better support for PackageReference scenarios in NuGet IVs APIs - [#7005](https://github.com/NuGet/Home/issues/7005), [#7493](https://github.com/NuGet/Home/issues/7493) * `nuget.exe pack project.json` has been deprecated - [#7928](https://github.com/NuGet/Home/issues/7928) diff --git a/docs/release-notes/NuGet-5.1-RTM.md b/docs/release-notes/NuGet-5.1-RTM.md index 73bcf9912..b661d0365 100644 --- a/docs/release-notes/NuGet-5.1-RTM.md +++ b/docs/release-notes/NuGet-5.1-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.1 including new features, bug fixes, and author: JonDouglas ms.author: jodou ms.date: 05/21/2019 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 5.1 Release Notes diff --git a/docs/release-notes/NuGet-5.2-RTM.md b/docs/release-notes/NuGet-5.2-RTM.md index 204bf4814..d08c67711 100644 --- a/docs/release-notes/NuGet-5.2-RTM.md +++ b/docs/release-notes/NuGet-5.2-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.2 including new features, bug fixes, and author: JonDouglas ms.author: jodou ms.date: 07/23/2019 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 5.2 Release Notes diff --git a/docs/release-notes/NuGet-5.3.md b/docs/release-notes/NuGet-5.3.md index 64731e08c..6bbf19858 100644 --- a/docs/release-notes/NuGet-5.3.md +++ b/docs/release-notes/NuGet-5.3.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.3 including new features, bug fixes, and author: JonDouglas ms.author: jodou ms.date: 09/06/2019 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 5.3 Release Notes diff --git a/docs/release-notes/NuGet-5.4.md b/docs/release-notes/NuGet-5.4.md index 13dec264c..ddcd32535 100644 --- a/docs/release-notes/NuGet-5.4.md +++ b/docs/release-notes/NuGet-5.4.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.4 including new features, bug fixes, and author: JonDouglas ms.author: jodou ms.date: 09/06/2019 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 5.4 Release Notes diff --git a/docs/release-notes/NuGet-5.5.md b/docs/release-notes/NuGet-5.5.md index 0061f13cf..6bb6cc47f 100644 --- a/docs/release-notes/NuGet-5.5.md +++ b/docs/release-notes/NuGet-5.5.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.5 including new features, bug fixes, and author: JonDouglas ms.author: jodou ms.date: 03/19/2020 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 5.5 Release Notes diff --git a/docs/release-notes/NuGet-5.6.md b/docs/release-notes/NuGet-5.6.md index 3c4786cae..ed6e363cf 100644 --- a/docs/release-notes/NuGet-5.6.md +++ b/docs/release-notes/NuGet-5.6.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.6 including new features, bug fixes, and author: chgill-msft ms.author: chgill ms.date: 05/19/2020 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 5.6 Release Notes diff --git a/docs/release-notes/NuGet-5.7.md b/docs/release-notes/NuGet-5.7.md index 556cb1225..cd8cf91bf 100644 --- a/docs/release-notes/NuGet-5.7.md +++ b/docs/release-notes/NuGet-5.7.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.7 including new features, bug fixes, and author: chgill-msft ms.author: chgill ms.date: 8/14/2020 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 5.7 Release Notes diff --git a/docs/release-notes/NuGet-5.8.md b/docs/release-notes/NuGet-5.8.md index 9dd9a5074..f054f3a99 100644 --- a/docs/release-notes/NuGet-5.8.md +++ b/docs/release-notes/NuGet-5.8.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.8 including new features, bug fixes, and author: dominofire ms.author: feaguila ms.date: 11/9/2020 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 5.8 Release Notes diff --git a/docs/release-notes/NuGet-5.9.md b/docs/release-notes/NuGet-5.9.md index 17455c058..d723778d8 100644 --- a/docs/release-notes/NuGet-5.9.md +++ b/docs/release-notes/NuGet-5.9.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.9 including new features, bug fixes, and author: erdembayar ms.author: eryondon ms.date: 3/11/2021 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet 5.9 Release Notes diff --git a/docs/resources/NuGet-FAQ.md b/docs/resources/NuGet-FAQ.md index cf92e82c1..e5449ae93 100644 --- a/docs/resources/NuGet-FAQ.md +++ b/docs/resources/NuGet-FAQ.md @@ -4,7 +4,7 @@ description: Common questions and answers for using NuGet on the command line an author: shishirx34 ms.author: shishirh ms.date: 06/05/2019 -ms.topic: conceptual +ms.topic: conceptual --- # NuGet frequently-asked questions diff --git a/docs/resources/check-project-format.md b/docs/resources/check-project-format.md index cc994ba9e..03e7ce594 100644 --- a/docs/resources/check-project-format.md +++ b/docs/resources/check-project-format.md @@ -4,7 +4,7 @@ description: Describes how to identity your project format author: mikejo5000 ms.author: mikejo ms.date: 07/09/2019 -ms.topic: conceptual +ms.topic: conceptual --- # Identify the project format diff --git a/docs/visual-studio-extensibility/Project-System-Support.md b/docs/visual-studio-extensibility/Project-System-Support.md index 6a8d30c8c..a2d19776a 100644 --- a/docs/visual-studio-extensibility/Project-System-Support.md +++ b/docs/visual-studio-extensibility/Project-System-Support.md @@ -4,7 +4,7 @@ description: Integration of NuGet into the Visual Studio project system for thir author: JonDouglas ms.author: jodou ms.date: 01/09/2017 -ms.topic: reference +ms.topic: reference --- # NuGet support for the Visual Studio project system @@ -109,6 +109,6 @@ case __VSHPROPID8.VSHPROPID_ProjectCapabilitiesChecker: ## DTE Support -NuGet drives the project system to add references, content items, and MSBuild imports by calling into [DTE](/dotnet/api/envdte.dte?view=visualstudiosdk-2017), which is the top-level Visual Studio automation interface. DTE is a set of COM interfaces that you may already implement. +NuGet drives the project system to add references, content items, and MSBuild imports by calling into [DTE](/dotnet/api/envdte.dte), which is the top-level Visual Studio automation interface. DTE is a set of COM interfaces that you may already implement. If your project type is based on CPS, DTE is implemented for you. diff --git a/docs/visual-studio-extensibility/Visual-Studio-Templates.md b/docs/visual-studio-extensibility/Visual-Studio-Templates.md index 429a04fef..046416985 100644 --- a/docs/visual-studio-extensibility/Visual-Studio-Templates.md +++ b/docs/visual-studio-extensibility/Visual-Studio-Templates.md @@ -4,7 +4,7 @@ description: Instructions for including NuGet packages as part of Visual Studio author: JonDouglas ms.author: jodou ms.date: 01/03/2018 -ms.topic: conceptual +ms.topic: conceptual --- # Packages in Visual Studio templates diff --git a/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md b/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md index 36789adea..2ac10a217 100644 --- a/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md +++ b/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md @@ -4,7 +4,7 @@ description: Interface reference for the API that NuGet exports through the Mana author: nkolev92 ms.author: nikolev ms.date: 01/09/2017 -ms.topic: reference +ms.topic: reference --- # NuGet API in Visual Studio diff --git a/docs/what-is-nuget.md b/docs/what-is-nuget.md index 4b4d5e3a1..bad0e8bc8 100644 --- a/docs/what-is-nuget.md +++ b/docs/what-is-nuget.md @@ -4,7 +4,7 @@ description: A comprehensive introduction to what NuGet is and does author: JonDouglas ms.author: jodou ms.date: 05/24/2019 -ms.topic: overview +ms.topic: overview --- # An introduction to NuGet From 721be9b6b727d7e9a2deb792aa70217b8a213565 Mon Sep 17 00:00:00 2001 From: Armin Shoeibi <68565441+ArminShoeibi@users.noreply.github.com> Date: Wed, 21 Apr 2021 18:54:31 +0430 Subject: [PATCH 388/988] Update target-frameworks.md --- docs/reference/target-frameworks.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/reference/target-frameworks.md b/docs/reference/target-frameworks.md index 287f52b7a..cdd26971c 100644 --- a/docs/reference/target-frameworks.md +++ b/docs/reference/target-frameworks.md @@ -85,6 +85,7 @@ Universal Windows Platform | uap | uap [uap10.0] | | | | netcoreapp2.2 | | | | netcoreapp3.0 | | | | netcoreapp3.1 | +.NET | net | net5.0 | Tizen | tizen | tizen3 | | | | tizen4 | From ff1ef787a30a368bebb3407ac7f0711340cd2094 Mon Sep 17 00:00:00 2001 From: Armin Shoeibi <68565441+ArminShoeibi@users.noreply.github.com> Date: Wed, 21 Apr 2021 21:53:29 +0430 Subject: [PATCH 389/988] Update target-frameworks.md --- docs/reference/target-frameworks.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/reference/target-frameworks.md b/docs/reference/target-frameworks.md index cdd26971c..270b42f6a 100644 --- a/docs/reference/target-frameworks.md +++ b/docs/reference/target-frameworks.md @@ -78,14 +78,15 @@ Universal Windows Platform | uap | uap [uap10.0] | | | | netstandard1.6 | | | | netstandard2.0 | | | | netstandard2.1 | -.NET Core App | netcoreapp | netcoreapp1.0 | +.NET 5+ (and .NET Core) | netcoreapp | netcoreapp1.0 | | | | netcoreapp1.1 | | | | netcoreapp2.0 | | | | netcoreapp2.1 | | | | netcoreapp2.2 | | | | netcoreapp3.0 | | | | netcoreapp3.1 | -.NET | net | net5.0 | +| | net | net5.0 | +| | net | net6.0 | Tizen | tizen | tizen3 | | | | tizen4 | From 4ad7e2caedd139a512698e0f1dfbe6bea86b974d Mon Sep 17 00:00:00 2001 From: eriawan Date: Thu, 22 Apr 2021 00:24:59 +0700 Subject: [PATCH 390/988] uodate .gitignore to ignore `.vs` folder --- .gitignore | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.gitignore b/.gitignore index 42594a1c0..13ade8981 100644 --- a/.gitignore +++ b/.gitignore @@ -6,4 +6,7 @@ _themes/ _themes.MSDN.Modern/ _themes.VS.Modern/ +# Visual Studio +.vs/ + .openpublishing.buildcore.ps1 \ No newline at end of file From 84eba382d9055b3df03a444adadd36c15130eada Mon Sep 17 00:00:00 2001 From: Armin Shoeibi <68565441+ArminShoeibi@users.noreply.github.com> Date: Wed, 21 Apr 2021 21:56:59 +0430 Subject: [PATCH 391/988] Update target-frameworks.md --- docs/reference/target-frameworks.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/reference/target-frameworks.md b/docs/reference/target-frameworks.md index 270b42f6a..413967860 100644 --- a/docs/reference/target-frameworks.md +++ b/docs/reference/target-frameworks.md @@ -85,8 +85,8 @@ Universal Windows Platform | uap | uap [uap10.0] | | | | netcoreapp2.2 | | | | netcoreapp3.0 | | | | netcoreapp3.1 | -| | net | net5.0 | -| | net | net6.0 | +| | | net5.0 | +| | | net6.0 | Tizen | tizen | tizen3 | | | | tizen4 | From f28e2ea46a527ab2f9d969efb8accf2fb6351ec0 Mon Sep 17 00:00:00 2001 From: Armin Shoeibi <68565441+ArminShoeibi@users.noreply.github.com> Date: Wed, 21 Apr 2021 21:58:29 +0430 Subject: [PATCH 392/988] Update target-frameworks.md --- docs/reference/target-frameworks.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/target-frameworks.md b/docs/reference/target-frameworks.md index 413967860..39129572a 100644 --- a/docs/reference/target-frameworks.md +++ b/docs/reference/target-frameworks.md @@ -85,7 +85,7 @@ Universal Windows Platform | uap | uap [uap10.0] | | | | netcoreapp2.2 | | | | netcoreapp3.0 | | | | netcoreapp3.1 | -| | | net5.0 | +| | net | net5.0 | | | | net6.0 | Tizen | tizen | tizen3 | | | | tizen4 | From 9f7247482db9f525fc8b20e7accb31ea7d2d0f70 Mon Sep 17 00:00:00 2001 From: atikmapari <31974726+atikmapari@users.noreply.github.com> Date: Thu, 22 Apr 2021 10:22:20 -0700 Subject: [PATCH 393/988] FAQ.md converted into yml --- .../Package-restore-troubleshooting.md | 2 +- docs/index.yml | 4 +- docs/nuget-org/TOC.md | 2 +- docs/nuget-org/individual-accounts.md | 2 +- docs/nuget-org/nuget-org-faq.md | 262 ----------------- docs/nuget-org/nuget-org-faq.yml | 278 ++++++++++++++++++ docs/resources/NuGet-FAQ.md | 153 ---------- docs/resources/NuGet-FAQ.yml | 162 ++++++++++ 8 files changed, 445 insertions(+), 420 deletions(-) delete mode 100644 docs/nuget-org/nuget-org-faq.md create mode 100644 docs/nuget-org/nuget-org-faq.yml delete mode 100644 docs/resources/NuGet-FAQ.md create mode 100644 docs/resources/NuGet-FAQ.yml diff --git a/docs/consume-packages/Package-restore-troubleshooting.md b/docs/consume-packages/Package-restore-troubleshooting.md index fb120c9bc..1ba7f6d0c 100644 --- a/docs/consume-packages/Package-restore-troubleshooting.md +++ b/docs/consume-packages/Package-restore-troubleshooting.md @@ -41,7 +41,7 @@ Use NuGet Package Restore to download them. The missing file is {name}. This error occurs when you attempt to build a project that contains references to one or more NuGet packages, but those packages are not presently installed on the computer or in the project. -- When using the [PackageReference](package-references-in-project-files.md) management format, this error might be a leftover from a packages.config to PackageReference migration and needs to be [manually removed](../resources/NuGet-FAQ.md#working-with-packages) from the project file. +- When using the [PackageReference](package-references-in-project-files.md) management format, this error might be a leftover from a packages.config to PackageReference migration and needs to be [manually removed](../resources/NuGet-FAQ.yml#working-with-packages) from the project file. - When using [packages.config](../reference/packages-config.md), the error means that the package is not installed in the `packages` folder at the solution root. This situation commonly occurs when you obtain the project's source code from source control or another download. Packages are typically omitted from source control or downloads because they can be restored from package feeds like nuget.org (see [Packages and source control](Packages-and-Source-Control.md)). Including them would otherwise bloat the repository or create unnecessarily large .zip files. diff --git a/docs/index.yml b/docs/index.yml index d39291d55..792a6b3f7 100644 --- a/docs/index.yml +++ b/docs/index.yml @@ -140,9 +140,9 @@ additionalContent: - text: Release notes url: ./release-notes/known-issues.md - text: FAQ - NuGet - url: ./resources/nuget-faq.md + url: ./resources/nuget-faq.yml - text: FAQ - NuGet.org - url: ./nuget-org/nuget-org-faq.md + url: ./nuget-org/nuget-org-faq.yml footer: "[Blogs](https://devblogs.microsoft.com/nuget/) - [Twitter](https://twitter.com/nuget) - [Stack Overflow](https://stackoverflow.com/questions/tagged/nuget)" \ No newline at end of file diff --git a/docs/nuget-org/TOC.md b/docs/nuget-org/TOC.md index b3ce19bca..d118c3029 100644 --- a/docs/nuget-org/TOC.md +++ b/docs/nuget-org/TOC.md @@ -16,4 +16,4 @@ ## [NuGet API](../api/overview.md) ## [licenses.nuget.org](licenses.nuget.org.md) # Resources -## [FAQ](nuget-org-faq.md) +## [FAQ](nuget-org-faq.yml) diff --git a/docs/nuget-org/individual-accounts.md b/docs/nuget-org/individual-accounts.md index 4ac39ccb0..2a3e7436b 100644 --- a/docs/nuget-org/individual-accounts.md +++ b/docs/nuget-org/individual-accounts.md @@ -70,4 +70,4 @@ Two-factor authentication, or 2FA, is an extra layer of security used when loggi ## Delete a NuGet.org account -For help with additional account-related tasks, such as deleting a NuGet.org account, see [NuGet.org account management](nuget-org-faq.md#nugetorg-account-management). +For help with additional account-related tasks, such as deleting a NuGet.org account, see [NuGet.org account management](nuget-org-faq.yml#nugetorg-account-management). diff --git a/docs/nuget-org/nuget-org-faq.md b/docs/nuget-org/nuget-org-faq.md deleted file mode 100644 index 70d4a8878..000000000 --- a/docs/nuget-org/nuget-org-faq.md +++ /dev/null @@ -1,262 +0,0 @@ ---- -title: NuGet.org Frequently-Asked Questions -description: Common questions and answers for working with the NuGet gallery. -author: shishirx34 -ms.author: shishirh -ms.date: 06/05/2019 -ms.topic: conceptual ---- - -# NuGet.org frequently-asked questions - -## License terms - -**What are the default license terms if a package doesn't provide specific license information?** - -Each package is governed by the terms that are included with the package. You should review the applicable terms before accessing, downloading, or acquiring any packages. On NuGet.org, use the **License Info** link on the package page. - -If a package does not specify the licensing terms, contact the package owner directly using the **Contact owners** link on the NuGet.org package page. Microsoft does not license any intellectual property to you from third party package providers and is not responsible for information provided by third parties. - -## Managing packages on NuGet.org - -**Can I edit package metadata after it's been uploaded?** - -NuGet recommends all packages to be signed. A design principle of package signing is that signed package content must be immutable, which includes the nuspec. Editing the package metadata results in changes to the nuspec, invalidating existing signatures. We recommend modifying existing workflows to not require editing the package metadata after the package has been created. - -Note that dependencies listed for your package are generated automatically from the package itself and cannot be edited. - -In addition, uploading packages to [int.nugettest.org](https://int.nugettest.org) is a great way to test and validate your package without making a package available in the public gallery. API Endpoint: https://apiint.nugettest.org/v3/index.json - -**Can I delete a package published to NuGet.org?** - -In general, we do not support deleting a package published to NuGet.org. Read more about our [policy on deleting packages](policies/deleting-packages.md). - -**Is it possible to reserve names for packages that will be published in future?** - -Yes. You can reserve IDs for packages on [NuGet.org](https://www.nuget.org/) by requesting a package ID prefix for your account. In order to request a package ID prefix, follow the instructions in the [documentation](id-prefix-reservation.md). - -**How do I claim ownership for packages ?** - -See [Managing package owners on NuGet.org](../nuget-org/publish-a-package.md#managing-package-owners-on-nugetorg). - -**How do I deal with a package owner who is violating my software license?** - -We encourage the NuGet community to work together to resolve any disputes that may arise between package owners and the owners of other software. We have crafted a [dispute resolution process](policies/dispute-resolution.md) to follow before asking NuGet.org administrators to intercede. - -**Is it recommended to upload my test packages to NuGet.org?** - -For test purposes, you can use [int.nugettest.org](https://int.nugettest.org), or alternative public NuGet servers like [myget.org](https://myget.org) or [Azure DevOps](https://blogs.msdn.microsoft.com/visualstudioalm/2015/08/27/announcing-package-management-support-for-vsotfs/). - -Note that packages uploaded to int.nugettest.org may not be preserved. - -**What is the maximum size of packages I can upload to NuGet.org?** - -NuGet.org allows packages up to 250MB, but we recommend keeping packages under 1MB if possible and using dependencies to link packages together. As a rule of thumb, packages contain only one assembly to avoid collisions. - -NuGet uses HTTP to download packages, so larger packages have a higher likelihood of failed installs than smaller ones. - -It is possible to share dependencies between multiple packages, making the total download size for consumers of your NuGet packages smaller. - -Dependencies are mostly static and never change. When fixing a bug in code, the dependencies may not need to be updated. If you bundle dependencies, you end up reshipping larger packages every time. By splitting NuGet packages into related dependencies, upgrades are much more fine-grained for consumers of your package. - -## NuGet.org not accessible - -**Why can't I download packages from or upload packages to NuGet.org?** - -First, make sure you're using the latest versions of NuGet. If that version continues to fail, [contact support](https://www.nuget.org/policies/Contact) and provide additional connection troubleshooting information including: - -- The version of NuGet you're using -- The package sources you're using -- A restore log with detailed verbosity -- MTR or a Fiddler traces (see below) -- Your geographical area -- Whether your machine is behind a proxy or firewall? -- Is your machine located on a cloud providers' data center (Azure, AWS etc)? If yes, please provide the name of the provider and the region. - -*To capture MTR:* - -- Download [WinMTR](https://sourceforge.net/projects/winmtr/files/WinMTR-v092.zip/download). -- Enter `api.nuget.org` as the hostname and click **Start**. -- Wait until the **Sent** column is >= 100. - - ![Capturing MTR](media/mtr.png) - -- Copy text to clipboard. - -*To capture Fiddler:* - -- Install the latest version of [Fiddler](https://www.telerik.com/download/fiddler). -- Start Fiddler and disable capturing traffic using the **File > Capture Traffic** menu. -- Remove all sessions (select all items in the list, press the **Delete** key). -- Configure Fiddler to capture HTTPS traffic by checking **Decrypt HTTPS traffic** in the **HTTPS** tab of the **Tools > Fiddler Options...** menu. -- Close Visual Studio. -- Enable the **File > Capture Traffic** menu. -- Start Visual Studio or nuget.exe .exe and perform the actions that are not working. The traffic generated by these actions should show up in Fiddler. -- Once the actions have run, use **File > Save > All Sessions** to store the captured sessions. - -Note: it may be required to set the `HTTP_PROXY` environment variable to `http://127.0.0.1:8888` for routing NuGet traffic through Fiddler. - -If that fails, try the [tips mentioned in this StackOverflow post](https://stackoverflow.com/questions/21049908/using-fiddler-to-sniff-visual-studio-2013-requests-proxy-firewall). - -## NuGet.org account management - -### How to recover NuGet.org password login? - -Please note that the [NuGet.org Password login has been discontinued](https://blog.nuget.org/20180515/NuGet.org-will-only-support-MSA-AAD-starting-June.html) and the only way to log in to NuGet.org is with a personal Microsoft account (MSA) or Azure Active Directory (AAD) account. However, in case you are unable to access your associated MSA/AAD accounts you might need to use password login for recovering your NuGet.org account. In this situation follow the steps below. -- **Requirement:** You will need to have access to the email that is associated with the account for which you need to recover the password. -- Go to the [Forgot password page](https://www.nuget.org/account/ForgotPassword) -- Enter the **email** address that is associated with the NuGet.org account you wish to recover. -- Click the **Send** button. -- You will get an email to the specified email address account with a link to reset your password. Click on this link and set the new password. If you can't find the mail check your "junk" folder. -- Once done, you can now login with username/password on NuGet. -- To login with username/password, use the **Sign in using Nuget.org account** link on the [NuGet.org login page](https://www.nuget.org/users/account/LogOn). - -### Which Microsoft account is linked to my NuGet.org account? - -If you have forgotten which Microsoft account is associated with your NuGet.org account, please follow the steps below to get assistance. -1. Go to [NuGet.org login page](https://www.nuget.org/users/account/LogOn) and click on **Need assistance signing in?** link. -1. This will show you the pop-up dialog box for assistance. Follow the steps in this dialog box to understand the associated Microsoft account(s) for your NuGet.org account. - -### How to change the Microsoft account I use for NuGet.org login? -If you wish to change the Microsoft account for NuGet.org user, follow the steps below. Lets say your Microsoft account with email `account1@outlook.com` is associated with your NuGet.org account with username `MyNuGetAccount`. You wish to change the login to another Microsoft account with email `account2@outlook.com` -1. Please sign in using **currently associated Microsoft account** i.e. `account1@outlook.com` on the [login page](https://www.nuget.org/users/account/LogOn) after clicking **Sign in with Microsoft**. -1. Once logged in, go to your [account settings](https://www.nuget.org/account) page. -1. Expand the section for **Login Account**. Click on the **Change Account** button. -1. You will now be redirected to the microsoft login page. Please sign in with the account that you wish to change the association to i.e. `account2@outlook.com`. **Note**: you might need to click on **Sign out and sign in with different account** during the sign in flow to be able to login with a different Microsoft account. -1. If you see an error like below, see [Microsoft account is linked with another NuGet.org account](#microsoft-account-is-linked-with-another-nugetorg-account) for more details. - >_Failed to update the Microsoft account with 'account2 '. This could happen if it is already linked to another NuGet account. Contact support for more information._ - -1. Once you have successfully signed in with your second account, you will be redirected back to your NuGet.org account settings page and you should now see the new Microsoft account associated as the login account. Going forward you should use this account when signing into NuGet.org. - -### Microsoft account is linked with another NuGet.org account. - -If you tried changing your Microsoft login and saw the error below: -> _Failed to update the Microsoft account with 'account2 '. This could happen if it is already linked to another NuGet account. Contact support for more information._ - -Lets say you were trying to change Microsoft account login from `account1@outlook.com` for NuGet.org user with username `MyNuGetAccount1` to another Microsoft account with email `account2@outlook.com`. And you see the error above. - -**What does the error above mean?** - -It means that there is another NuGet.org account which is associated with the Microsoft account that you are trying to change it to i.e. in above example the Microsoft account with email `` is associated with another NuGet.org account with, say, username `MyNuGetAccount2`. - -You cannot change the associated login with a Microsoft account that is linked to a different NuGet.org account. - -**I forgot I had another NuGet.org account, how do I find out which NuGet.org account it is?** - -Login with the second Microsoft account on the [login page](https://www.nuget.org/users/account/LogOn?returnUrl=%2F# "login page"). This will log you into the NuGet.org account that is currently associated with the second Microsoft account. You can then view the uploaded packages and perform account management on this account. - -**I do not care about this second NuGet.org account, I want to change my login for first NuGet.org account with the second Microsoft account. What do I do?** - -If you wish to not care about the second NuGet.org account and still want to re-use the associated Microsoft account with email `account2@outlook.com`. - -You can release the association between the Microsoft account and NuGet.org account by deleting the NuGet.org account. -1. Follow the steps to [delete user](#how-to-delete-my-nugetorg-account) for the second NuGet.org account `MyNuGetAccount2`. -1. Once this account is deleted, you can retry the steps to [change Microsoft account login](#how-to-change-the-microsoft-account-i-use-for-nugetorg-login). - -**Wait, I care about this second account too. I do not want to lose this account but change my associated account logins for first account.** - -You will need to create/use a third Microsoft account, say, with email `account3@outlook.com`. -1. First you should login with your second Microsoft account, `account2@outlook.com` on NuGet.org. Follow the steps above to change associated logins and associate the third Microsoft account with this NuGet.org account. -1. Once done, your second Microsoft account with email `account2@outlook.com` is free to be associated to your first NuGet.org account, `MyNuGetAccount1`. Follow the same steps above to change microsoft logins to the second Microsoft account. - -### Signing in with Microsoft account shows me my email is linked to another Microsoft account - -If you tried to sign in with your Microsoft account, say, with email `account1@outlook.com` and you see an error like below: -> _The account with email 'account1@outlook.com' is linked with another microsoft account._ -> -> _If you would like to update the linked Microsoft account you can do so from the account settings page._ - -**What does the error above mean?** - -When an account is created on NuGet.org, there is a communication email address associated with that account. This is usually same as the email address that is used for associated Microsoft account. However, you could choose to specify a different email address for communication. So, technically, you could have a different Microsoft account, say with `account2@outlook.com` that is linked to NuGet.org account with communication email address as `account1@outlook.com`. - -So the error above means that there already exists NuGet.org account with communication email address `account1@outlook.com` but is associated with another Microsoft account with email **that is not** `account1@outlook.com`. - -**How do I find which Microsoft account is linked to this NuGet.org account?** - -You should use the [sign in assistance](#which-microsoft-account-is-linked-to-my-nugetorg-account) flow to figure out which Microsoft account is linked to the NuGet.org account with the email address `account1@outlook.com`. - -**I want to override that account with my Microsoft account** - -Follow the steps in [Unable to use microsoft login, how do I recover my NuGet.org account](#unable-to-use-microsoft-login-how-do-i-recover-my-nugetorg-account) section to associate your Microsoft account with the existing NuGet.org account. - -### Unable to use microsoft login, how do I recover my NuGet.org account? - -If you tried using the [sign in assistance](#which-microsoft-account-is-linked-to-my-nugetorg-account) and you do not have access to the Microsoft account that is associated with your NuGet.org account, please follow the steps below to link a new Microsoft account to your NuGet.org account. -1. **Requirement**: You will need access to a Microsoft account which is not associated with any existing NuGet.org accounts. If you do not have one, you can [create](https://signup.live.com) one. -2. If you've forgotten your username and password for your NuGet.org account, follow the [steps to recover your password login](#how-to-recover-nugetorg-password-login). -3. [Login to NuGet.org](https://www.nuget.org/users/account/LogOnNuGetAccount) using the username/password login. -4. Once logged in, you will see the popup dialog show up like below. This is the password discontinuation dialog box. -5. **NOTE**: Please ignore the instruction to login with the specified Microsoft account. You can now link your NuGet.org account to any other Microsoft login. -6. Click on the button **Sign in with Microsoft** and login with the Microsoft account that you have an access to, as mentioned in step 1. -7. Your account will now be linked to the new Microsoft account, which you can use to log into NuGet.org going forward. - - ![Link MSA Dialog](media/link-msa-dialog.png) - -### How to transform my NuGet.org account to an organization? - -If you want to transform your account to an organization, and this account is already associated with a Microsoft account login, please follow the steps given in the documentation for [organizations on nuget org](organizations-on-nuget-org.md). - -If, however, your NuGet.org account is not associated/linked with a Microsoft account, you can follow the steps below to transform this account to an organization. -1. **Requirement**: You need to have an individual account first created on NuGet.org to be used as an admin on the org account. If you do not have one, please [create a new NuGet.org account](individual-accounts.md) -2. Follow the [steps to recover your password login](#how-to-recover-nugetorg-password-login) for your NuGet.org account if you do not have password login for it, if you do, skip this step. -3. [Login to NuGet.org](https://www.nuget.org/users/account/LogOnNuGetAccount) using the username/password login. -4. Once logged in, you will see the popup dialog show up like below. This is the password discontinuation dialog box. - > [!Important] - > Ignore this dialog box, **do not** click on the **Sign in with microsoft** button. - -5. Go to [https://www.nuget.org/account/transform](https://www.nuget.org/account/transform). This will allow you to convert the NuGet.org account to an org without linking to a Microsoft account. -6. Specify the admin username for your personal NuGet.org account/the account you created in Step 1. -7. Follow the instructions to complete transformation of this account to an organization. - - ![Link MSA Dialog](media/link-msa-dialog.png) - -### NuGet.org login issues for AAD accounts with unmanaged tenant? - -If you see an error like below during your login flow with your email account domain(@yourdomain.com), see the steps below to recover your NuGet.org account. - -![Error during login for AAD accounts](media/unmanaged-aad-tenant.png) - -**What is this unmanaged state thing during login? And why is this happening now?** - -Your account seems to be previously registered as a personal Microsoft account and it worked fine, however, now it seems like your account has been registered as an "Unmanaged" tenant in the Azure Active Directory (the identity service which we use to authenticate Microsoft accounts). - -This could have happened if you or someone from your organization(with @yourdomain.com email address) registered with one of the AAD integrated services or did a [self-service signup for Azure Active Directory](/azure/active-directory/users-groups-roles/directory-self-service-signup), which creates such an "Unmanaged" tenant for the used Microsoft account domain(@yourdomain.com in your case). - -**What can I do to recover my account?** - -At this moment there is not a way for us (NuGet.org) to authenticate accounts with such "Unmanaged" tenant accounts in Azure Active directory. We are looking in to a better way to authenticate such accounts. - -If you want to login to NuGet.org with your Microsoft account(@yourdomain.com), you(or an administrator at your company) will need to claim the ownership of the AAD by doing a DNS validation to authenticate users with email address "@yourdomain.com". Please follow the steps for [domains admin takeover](/azure/active-directory/users-groups-roles/domains-admin-takeover) documented by the Azure Active directory. Once this is done, your normal login should start working. - -**I don’t want to do all that, what is the other way to recover my account?** - -You can [create](https://www.microsoft.com/account) a new Microsoft account (with an email **not** associated with @yourdomain.com). Follow steps given in [recover your NuGet.org account](#unable-to-use-microsoft-login-how-do-i-recover-my-nugetorg-account) section. - -### How do I change my NuGet.org account username? - -You cannot. As a matter of policy we do not allow the change of usernames. Also, doing so is a breaking change for users that may have defined [package trust policies based on the package owner](../consume-packages/installing-signed-packages.md#trust-package-owners). The only way to change your username is to create a new account with the desired username. We recommend you delete your existing account before you create a new one, otherwise you will not be able to reuse your registered Microsoft account. -> [!Important] -> Deleting the user will still **reserve** the `username`. You will not be able to reuse the same username again and **this includes the change of casings**. As an example if you created a user with username `mycoolname` and you want to change this to `MyCoolName`(casing changes), it will not be possible after deleting the user. - -Follow the steps given in [delete your NuGet.org account](#how-to-delete-my-nugetorg-account) section and to [register a new account](individual-accounts.md) with correct username. - -### How to delete my NuGet.org account? - -To delete your account, please note that we recommend that you transfer the ownership of any packages where you are the sole owner. You can read more about [managing package owners](../nuget-org/publish-a-package.md#managing-package-owners-on-nugetorg) on how to do it. This will also help us expedite your request. - -If you are looking to transform your account to an organization, follow the steps given in [transform my NuGet.org account to an organization](#how-to-transform-my-nugetorg-account-to-an-organization). - -> [!Important] -> Deleting the user will result in following: -> 1. Your username will be reserved and no one will be able to re-use it to create an individual account or an organization account -> 1. Revoke associated API key(s). -> 1. Remove the account as an owner for any child packages. -> 1. Dissociate all previously existent ID prefix reservations with this account. -> 1. Remove the account as a member of any organizations. - -Follow the following steps to proceed with account deletion. -1. [Login to NuGet.org](https://www.nuget.org/users/account/LogOn) with the account you wish to delete. -2. Click on this url: [https://www.nuget.org/account/delete](https://www.nuget.org/account/delete) and follow the steps to submit the request for deleting the account. - -Our customer support will process this request and perform the account deletion. \ No newline at end of file diff --git a/docs/nuget-org/nuget-org-faq.yml b/docs/nuget-org/nuget-org-faq.yml new file mode 100644 index 000000000..b7d506379 --- /dev/null +++ b/docs/nuget-org/nuget-org-faq.yml @@ -0,0 +1,278 @@ +### YamlMime:FAQ +metadata: + title: NuGet.org Frequently-Asked Questions + description: Common questions and answers for working with the NuGet gallery. + author: shishirx34 + ms.author: shishirh + ms.date: 06/05/2019 + ms.topic: conceptual + +title: NuGet.org frequently-asked questions +summary: | + +sections: + - name: Ignored + questions: + - question: | + License terms + answer: | + ### What are the default license terms if a package doesn't provide specific license information? + + Each package is governed by the terms that are included with the package. You should review the applicable terms before accessing, downloading, or acquiring any packages. On NuGet.org, use the **License Info** link on the package page. + + If a package does not specify the licensing terms, contact the package owner directly using the **Contact owners** link on the NuGet.org package page. Microsoft does not license any intellectual property to you from third party package providers and is not responsible for information provided by third parties. + + - question: | + Managing packages on NuGet.org + answer: | + ### Can I edit package metadata after it's been uploaded? + + NuGet recommends all packages to be signed. A design principle of package signing is that signed package content must be immutable, which includes the nuspec. Editing the package metadata results in changes to the nuspec, invalidating existing signatures. We recommend modifying existing workflows to not require editing the package metadata after the package has been created. + + Note that dependencies listed for your package are generated automatically from the package itself and cannot be edited. + + In addition, uploading packages to [int.nugettest.org](https://int.nugettest.org) is a great way to test and validate your package without making a package available in the public gallery. API Endpoint: https://apiint.nugettest.org/v3/index.json + + ### Can I delete a package published to NuGet.org? + + In general, we do not support deleting a package published to NuGet.org. Read more about our [policy on deleting packages](policies/deleting-packages.md). + + ### Is it possible to reserve names for packages that will be published in future? + + Yes. You can reserve IDs for packages on [NuGet.org](https://www.nuget.org/) by requesting a package ID prefix for your account. In order to request a package ID prefix, follow the instructions in the [documentation](id-prefix-reservation.md). + + ### How do I claim ownership for packages ? + + See [Managing package owners on NuGet.org](../nuget-org/publish-a-package.md#managing-package-owners-on-nugetorg). + + ### How do I deal with a package owner who is violating my software license? + + We encourage the NuGet community to work together to resolve any disputes that may arise between package owners and the owners of other software. We have crafted a [dispute resolution process](policies/dispute-resolution.md) to follow before asking NuGet.org administrators to intercede. + + ### Is it recommended to upload my test packages to NuGet.org? + + For test purposes, you can use [int.nugettest.org](https://int.nugettest.org), or alternative public NuGet servers like [myget.org](https://myget.org) or [Azure DevOps](https://blogs.msdn.microsoft.com/visualstudioalm/2015/08/27/announcing-package-management-support-for-vsotfs/). + + Note that packages uploaded to int.nugettest.org may not be preserved. + + ### What is the maximum size of packages I can upload to NuGet.org? + + NuGet.org allows packages up to 250MB, but we recommend keeping packages under 1MB if possible and using dependencies to link packages together. As a rule of thumb, packages contain only one assembly to avoid collisions. + + NuGet uses HTTP to download packages, so larger packages have a higher likelihood of failed installs than smaller ones. + + It is possible to share dependencies between multiple packages, making the total download size for consumers of your NuGet packages smaller. + + Dependencies are mostly static and never change. When fixing a bug in code, the dependencies may not need to be updated. If you bundle dependencies, you end up reshipping larger packages every time. By splitting NuGet packages into related dependencies, upgrades are much more fine-grained for consumers of your package. + + - question: | + NuGet.org not accessible + answer: | + ### Why can't I download packages from or upload packages to NuGet.org? + + First, make sure you're using the latest versions of NuGet. If that version continues to fail, [contact support](https://www.nuget.org/policies/Contact) and provide additional connection troubleshooting information including: + + - The version of NuGet you're using + - The package sources you're using + - A restore log with detailed verbosity + - MTR or a Fiddler traces (see below) + - Your geographical area + - Whether your machine is behind a proxy or firewall? + - Is your machine located on a cloud providers' data center (Azure, AWS etc)? If yes, please provide the name of the provider and the region. + + *To capture MTR:* + + - Download [WinMTR](https://sourceforge.net/projects/winmtr/files/WinMTR-v092.zip/download). + - Enter `api.nuget.org` as the hostname and click **Start**. + - Wait until the **Sent** column is >= 100. + + ![Capturing MTR](media/mtr.png) + + - Copy text to clipboard. + + *To capture Fiddler:* + + - Install the latest version of [Fiddler](https://www.telerik.com/download/fiddler). + - Start Fiddler and disable capturing traffic using the **File > Capture Traffic** menu. + - Remove all sessions (select all items in the list, press the **Delete** key). + - Configure Fiddler to capture HTTPS traffic by checking **Decrypt HTTPS traffic** in the **HTTPS** tab of the **Tools > Fiddler Options...** menu. + - Close Visual Studio. + - Enable the **File > Capture Traffic** menu. + - Start Visual Studio or nuget.exe .exe and perform the actions that are not working. The traffic generated by these actions should show up in Fiddler. + - Once the actions have run, use **File > Save > All Sessions** to store the captured sessions. + + Note: it may be required to set the `HTTP_PROXY` environment variable to `http://127.0.0.1:8888` for routing NuGet traffic through Fiddler. + + If that fails, try the [tips mentioned in this StackOverflow post](https://stackoverflow.com/questions/21049908/using-fiddler-to-sniff-visual-studio-2013-requests-proxy-firewall). + + - question: | + NuGet.org account management + answer: | + - question: How to recover NuGet.org password login? + answer: | + Please note that the [NuGet.org Password login has been discontinued](https://blog.nuget.org/20180515/NuGet.org-will-only-support-MSA-AAD-starting-June.html) and the only way to log in to NuGet.org is with a personal Microsoft account (MSA) or Azure Active Directory (AAD) account. However, in case you are unable to access your associated MSA/AAD accounts you might need to use password login for recovering your NuGet.org account. In this situation follow the steps below. + - **Requirement:** You will need to have access to the email that is associated with the account for which you need to recover the password. + - Go to the [Forgot password page](https://www.nuget.org/account/ForgotPassword) + - Enter the **email** address that is associated with the NuGet.org account you wish to recover. + - Click the **Send** button. + - You will get an email to the specified email address account with a link to reset your password. Click on this link and set the new password. If you can't find the mail check your "junk" folder. + - Once done, you can now login with username/password on NuGet. + - To login with username/password, use the **Sign in using Nuget.org account** link on the [NuGet.org login page](https://www.nuget.org/users/account/LogOn). + + - question: Which Microsoft account is linked to my NuGet.org account? + answer: | + If you have forgotten which Microsoft account is associated with your NuGet.org account, please follow the steps below to get assistance. + 1. Go to [NuGet.org login page](https://www.nuget.org/users/account/LogOn) and click on **Need assistance signing in?** link. + 1. This will show you the pop-up dialog box for assistance. Follow the steps in this dialog box to understand the associated Microsoft account(s) for your NuGet.org account. + + - question: How to change the Microsoft account I use for NuGet.org login? + answer: | + If you wish to change the Microsoft account for NuGet.org user, follow the steps below. Lets say your Microsoft account with email `account1@outlook.com` is associated with your NuGet.org account with username `MyNuGetAccount`. You wish to change the login to another Microsoft account with email `account2@outlook.com` + 1. Please sign in using **currently associated Microsoft account** i.e. `account1@outlook.com` on the [login page](https://www.nuget.org/users/account/LogOn) after clicking **Sign in with Microsoft**. + 1. Once logged in, go to your [account settings](https://www.nuget.org/account) page. + 1. Expand the section for **Login Account**. Click on the **Change Account** button. + 1. You will now be redirected to the microsoft login page. Please sign in with the account that you wish to change the association to i.e. `account2@outlook.com`. **Note**: you might need to click on **Sign out and sign in with different account** during the sign in flow to be able to login with a different Microsoft account. + 1. If you see an error like below, see [Microsoft account is linked with another NuGet.org account](#microsoft-account-is-linked-with-another-nugetorg-account) for more details. + >_Failed to update the Microsoft account with 'account2 '. This could happen if it is already linked to another NuGet account. Contact support for more information._ + + 1. Once you have successfully signed in with your second account, you will be redirected back to your NuGet.org account settings page and you should now see the new Microsoft account associated as the login account. Going forward you should use this account when signing into NuGet.org. + + - question: | + Microsoft account is linked with another NuGet.org account. + answer: | + If you tried changing your Microsoft login and saw the error below: + > _Failed to update the Microsoft account with 'account2 '. This could happen if it is already linked to another NuGet account. Contact support for more information._ + + Lets say you were trying to change Microsoft account login from `account1@outlook.com` for NuGet.org user with username `MyNuGetAccount1` to another Microsoft account with email `account2@outlook.com`. And you see the error above. + + ### What does the error above mean? + + It means that there is another NuGet.org account which is associated with the Microsoft account that you are trying to change it to i.e. in above example the Microsoft account with email `` is associated with another NuGet.org account with, say, username `MyNuGetAccount2`. + + You cannot change the associated login with a Microsoft account that is linked to a different NuGet.org account. + + ### I forgot I had another NuGet.org account, how do I find out which NuGet.org account it is? + + Login with the second Microsoft account on the [login page](https://www.nuget.org/users/account/LogOn?returnUrl=%2F# "login page"). This will log you into the NuGet.org account that is currently associated with the second Microsoft account. You can then view the uploaded packages and perform account management on this account. + + ### I do not care about this second NuGet.org account, I want to change my login for first NuGet.org account with the second Microsoft account. What do I do? + + If you wish to not care about the second NuGet.org account and still want to re-use the associated Microsoft account with email `account2@outlook.com`. + + You can release the association between the Microsoft account and NuGet.org account by deleting the NuGet.org account. + 1. Follow the steps to [delete user](#how-to-delete-my-nugetorg-account) for the second NuGet.org account `MyNuGetAccount2`. + 1. Once this account is deleted, you can retry the steps to [change Microsoft account login](#how-to-change-the-microsoft-account-i-use-for-nugetorg-login). + + **Wait, I care about this second account too. I do not want to lose this account but change my associated account logins for first account.** + + You will need to create/use a third Microsoft account, say, with email `account3@outlook.com`. + 1. First you should login with your second Microsoft account, `account2@outlook.com` on NuGet.org. Follow the steps above to change associated logins and associate the third Microsoft account with this NuGet.org account. + 1. Once done, your second Microsoft account with email `account2@outlook.com` is free to be associated to your first NuGet.org account, `MyNuGetAccount1`. Follow the same steps above to change microsoft logins to the second Microsoft account. + + - question: | + Signing in with Microsoft account shows me my email is linked to another Microsoft account + answer: | + If you tried to sign in with your Microsoft account, say, with email `account1@outlook.com` and you see an error like below: + > _The account with email 'account1@outlook.com' is linked with another microsoft account._ + > + > _If you would like to update the linked Microsoft account you can do so from the account settings page._ + + ### What does the error above mean? + + When an account is created on NuGet.org, there is a communication email address associated with that account. This is usually same as the email address that is used for associated Microsoft account. However, you could choose to specify a different email address for communication. So, technically, you could have a different Microsoft account, say with `account2@outlook.com` that is linked to NuGet.org account with communication email address as `account1@outlook.com`. + + So the error above means that there already exists NuGet.org account with communication email address `account1@outlook.com` but is associated with another Microsoft account with email **that is not** `account1@outlook.com`. + + ### How do I find which Microsoft account is linked to this NuGet.org account? + + You should use the [sign in assistance](#which-microsoft-account-is-linked-to-my-nugetorg-account) flow to figure out which Microsoft account is linked to the NuGet.org account with the email address `account1@outlook.com`. + + **I want to override that account with my Microsoft account** + + Follow the steps in [Unable to use microsoft login, how do I recover my NuGet.org account](#unable-to-use-microsoft-login-how-do-i-recover-my-nugetorg-account) section to associate your Microsoft account with the existing NuGet.org account. + + - question: | + Unable to use microsoft login, how do I recover my NuGet.org account? + answer: | + If you tried using the [sign in assistance](#which-microsoft-account-is-linked-to-my-nugetorg-account) and you do not have access to the Microsoft account that is associated with your NuGet.org account, please follow the steps below to link a new Microsoft account to your NuGet.org account. + 1. **Requirement**: You will need access to a Microsoft account which is not associated with any existing NuGet.org accounts. If you do not have one, you can [create](https://signup.live.com) one. + 2. If you've forgotten your username and password for your NuGet.org account, follow the [steps to recover your password login](#how-to-recover-nugetorg-password-login). + 3. [Login to NuGet.org](https://www.nuget.org/users/account/LogOnNuGetAccount) using the username/password login. + 4. Once logged in, you will see the popup dialog show up like below. This is the password discontinuation dialog box. + 5. **NOTE**: Please ignore the instruction to login with the specified Microsoft account. You can now link your NuGet.org account to any other Microsoft login. + 6. Click on the button **Sign in with Microsoft** and login with the Microsoft account that you have an access to, as mentioned in step 1. + 7. Your account will now be linked to the new Microsoft account, which you can use to log into NuGet.org going forward. + + ![Link MSA Dialog](media/link-msa-dialog.png) + + - question: | + How to transform my NuGet.org account to an organization? + answer: | + If you want to transform your account to an organization, and this account is already associated with a Microsoft account login, please follow the steps given in the documentation for [organizations on nuget org](organizations-on-nuget-org.md). + + If, however, your NuGet.org account is not associated/linked with a Microsoft account, you can follow the steps below to transform this account to an organization. + 1. **Requirement**: You need to have an individual account first created on NuGet.org to be used as an admin on the org account. If you do not have one, please [create a new NuGet.org account](individual-accounts.md) + 2. Follow the [steps to recover your password login](#how-to-recover-nugetorg-password-login) for your NuGet.org account if you do not have password login for it, if you do, skip this step. + 3. [Login to NuGet.org](https://www.nuget.org/users/account/LogOnNuGetAccount) using the username/password login. + 4. Once logged in, you will see the popup dialog show up like below. This is the password discontinuation dialog box. + > [!Important] + > Ignore this dialog box, **do not** click on the **Sign in with microsoft** button. + + 5. Go to [https://www.nuget.org/account/transform](https://www.nuget.org/account/transform). This will allow you to convert the NuGet.org account to an org without linking to a Microsoft account. + 6. Specify the admin username for your personal NuGet.org account/the account you created in Step 1. + 7. Follow the instructions to complete transformation of this account to an organization. + + ![Link MSA Dialog](media/link-msa-dialog.png) + + - question: | + NuGet.org login issues for AAD accounts with unmanaged tenant? + answer: | + If you see an error like below during your login flow with your email account domain(@yourdomain.com), see the steps below to recover your NuGet.org account. + + ![Error during login for AAD accounts](media/unmanaged-aad-tenant.png) + + ### What is this unmanaged state thing during login? And why is this happening now? + + Your account seems to be previously registered as a personal Microsoft account and it worked fine, however, now it seems like your account has been registered as an "Unmanaged" tenant in the Azure Active Directory (the identity service which we use to authenticate Microsoft accounts). + + This could have happened if you or someone from your organization(with @yourdomain.com email address) registered with one of the AAD integrated services or did a [self-service signup for Azure Active Directory](/azure/active-directory/users-groups-roles/directory-self-service-signup), which creates such an "Unmanaged" tenant for the used Microsoft account domain(@yourdomain.com in your case). + + ### What can I do to recover my account? + + At this moment there is not a way for us (NuGet.org) to authenticate accounts with such "Unmanaged" tenant accounts in Azure Active directory. We are looking in to a better way to authenticate such accounts. + + If you want to login to NuGet.org with your Microsoft account(@yourdomain.com), you(or an administrator at your company) will need to claim the ownership of the AAD by doing a DNS validation to authenticate users with email address "@yourdomain.com". Please follow the steps for [domains admin takeover](/azure/active-directory/users-groups-roles/domains-admin-takeover) documented by the Azure Active directory. Once this is done, your normal login should start working. + + ### I don’t want to do all that, what is the other way to recover my account? + + You can [create](https://www.microsoft.com/account) a new Microsoft account (with an email **not** associated with @yourdomain.com). Follow steps given in [recover your NuGet.org account](#unable-to-use-microsoft-login-how-do-i-recover-my-nugetorg-account) section. + + - question: | + How do I change my NuGet.org account username? + answer: | + You cannot. As a matter of policy we do not allow the change of usernames. Also, doing so is a breaking change for users that may have defined [package trust policies based on the package owner](../consume-packages/installing-signed-packages.md#trust-package-owners). The only way to change your username is to create a new account with the desired username. We recommend you delete your existing account before you create a new one, otherwise you will not be able to reuse your registered Microsoft account. + > [!Important] + > Deleting the user will still **reserve** the `username`. You will not be able to reuse the same username again and **this includes the change of casings**. As an example if you created a user with username `mycoolname` and you want to change this to `MyCoolName`(casing changes), it will not be possible after deleting the user. + + Follow the steps given in [delete your NuGet.org account](#how-to-delete-my-nugetorg-account) section and to [register a new account](individual-accounts.md) with correct username. + + - question: | + How to delete my NuGet.org account? + answer: | + To delete your account, please note that we recommend that you transfer the ownership of any packages where you are the sole owner. You can read more about [managing package owners](../nuget-org/publish-a-package.md#managing-package-owners-on-nugetorg) on how to do it. This will also help us expedite your request. + + If you are looking to transform your account to an organization, follow the steps given in [transform my NuGet.org account to an organization](#how-to-transform-my-nugetorg-account-to-an-organization). + + > [!Important] + > Deleting the user will result in following: + > 1. Your username will be reserved and no one will be able to re-use it to create an individual account or an organization account + > 1. Revoke associated API key(s). + > 1. Remove the account as an owner for any child packages. + > 1. Dissociate all previously existent ID prefix reservations with this account. + > 1. Remove the account as a member of any organizations. + + Follow the following steps to proceed with account deletion. + 1. [Login to NuGet.org](https://www.nuget.org/users/account/LogOn) with the account you wish to delete. + 2. Click on this url: [https://www.nuget.org/account/delete](https://www.nuget.org/account/delete) and follow the steps to submit the request for deleting the account. + + Our customer support will process this request and perform the account deletion. diff --git a/docs/resources/NuGet-FAQ.md b/docs/resources/NuGet-FAQ.md deleted file mode 100644 index e5449ae93..000000000 --- a/docs/resources/NuGet-FAQ.md +++ /dev/null @@ -1,153 +0,0 @@ ---- -title: NuGet Frequently-Asked Questions -description: Common questions and answers for using NuGet on the command line and in Visual Studio -author: shishirx34 -ms.author: shishirh -ms.date: 06/05/2019 -ms.topic: conceptual ---- - -# NuGet frequently-asked questions - -For frequently-asked questions pertaining to NuGet.org, such as NuGet.org account questions, see [NuGet.org frequently-asked questions](../nuget-org/nuget-org-faq.md). - -**What is required to run NuGet?** - -All the information around both UI and command-line tools is available in the [Install guide](../install-nuget-client-tools.md). - -**Does NuGet support Mono?** - -The command-line tool, `nuget.exe`, builds and runs under Mono 3.2+ and can create packages in Mono. - -Although `nuget.exe` works fully on Windows, there are known issues on Linux and OS X. Refer to [Mono issues](https://github.com/NuGet/Home/issues?utf8=%E2%9C%93&q=is%3Aissue+is%3Aopen+mono) on GitHub. - -A [graphical client](https://github.com/mrward/monodevelop-nuget-addin) is available as an add-in for MonoDevelop. - -**How can I determine what a package contains and whether it's stable and useful for my application?** - -The primary source for learning about a package is its listing page on nuget.org (or another private feed). Each package page on nuget.org includes a description of the package, its version history, and usage statistics. The **Info** section on the package page also contains a link to the project's web site where you typically find many examples and other documentation to help you learn how the package is used. - -For more information, see [Finding and choosing packages](../consume-packages/finding-and-choosing-packages.md). - -## NuGet in Visual Studio - -**How is NuGet supported in different Visual Studio products?** - -- Visual Studio on Windows supports the [Package Manager UI](../consume-packages/install-use-packages-visual-studio.md) and the [Package Manager Console](../consume-packages/install-use-packages-powershell.md). -- Visual Studio for Mac has built-in NuGet capabilities as described on [Including a NuGet package in your project](/visualstudio/mac/nuget-walkthrough). -- Visual Studio Code (all platforms) does not have any direct NuGet integration. Use the [NuGet CLI](../reference/nuget-exe-cli-reference.md) or the [dotnet CLI](../reference/dotnet-commands.md). -- Azure DevOps provides [a build step to restore NuGet packages](/vsts/build-release/tasks/package/nuget). You can also [host private NuGet package feeds on Azure DevOps](/azure/devops/artifacts/nuget/publish). - -**How do I check the exact version of the NuGet tools that are installed?** - -In Visual Studio, use the **Help > About Microsoft Visual Studio** command and look at the version displayed next to **NuGet Package Manager**. - -Alternatively, launch the Package Manager Console (**Tools > NuGet Package Manager > Package Manager Console**) and enter `$host` to see information about NuGet including the version. - -**What programming languages are supported by NuGet?** - -NuGet generally works for .NET languages and is designed to bring .NET libraries into a project. Because it also supports MSBuild and Visual Studio automation in some project types, it also supports other projects and languages to various degrees. - -The most recent version of NuGet supports C#, Visual Basic, F#, WiX, and C++. - -**What project templates are supported by NuGet?** - -NuGet has full support for a variety of project templates like Windows, Web, Cloud, SharePoint, Wix, and so on. - -**How do I update packages that are part of Visual Studio templates?** - -Go to the **Updates** tab in the Package Manager UI and select **Update All**, or use the [`Update-Package` command](../reference/ps-reference/ps-ref-update-package.md) from the Package Manager Console. - -To update the template itself, you need to manually update the template repository. See [Xavier Decoster's blog](http://www.xavierdecoster.com/update-project-template-to-latest-nuget-packages) on this subject. Note that this is done at your own risk, because manual updates might corrupt the template if the latest version of all dependencies are not compatible with each other. - -**Can I use NuGet outside of Visual Studio?** - -Yes, NuGet works directly from the command line. See the [Install guide](../install-nuget-client-tools.md) and the [CLI reference](../reference/nuget-exe-cli-reference.md). - -## NuGet command line - -**How do I get the latest version of NuGet command line tool?** - -See the [Install guide](../install-nuget-client-tools.md). To check the current installed version of the tool, use `nuget help`. - -**What is the license for nuget.exe?** - -You are allowed to redistribute nuget.exe under the terms of the MIT license. You are responsible for updating and servicing any copies of nuget.exe that you choose to redistribute. - -**Is it possible to extend the NuGet command line tool?** - -Yes, it's possible to add custom commands to `nuget.exe`, as described in [Rob Reynold's post](http://geekswithblogs.net/robz/archive/2011/07/15/extend-nuget-command-line.aspx). - -## NuGet Package Manager Console (Visual Studio on Windows) - -**How do I get access to the DTE object in the Package Manager console?** - -The top-level object in the Visual Studio automation object model is called the DTE (Development Tools Environment) object. The console provides this through a variable named `$DTE`. For more information, see [Automation Model Overview](/visualstudio/extensibility/internals/automation-model-overview) in the Visual Studio Extensibility documentation. - -**I try to cast the $DTE variable to the type DTE2, but I get an error: Cannot convert the "EnvDTE.DTEClass" value of type "EnvDTE.DTEClass" to type "EnvDTE80.DTE2". What's wrong?** - -This is a known issue with how PowerShell interacts with a COM object. Try the following: - -```ps -`$dte2 = Get-Interface $dte ([EnvDTE80.DTE2])` -``` - -`Get-Interface` is a helper function added by the NuGet PowerShell host. - -## Creating and publishing packages - -**How do I list my package in a feed?** - -See [Creating and publishing a package](../quickstart/create-and-publish-a-package-using-visual-studio.md). - -**I have multiple versions of my library that target different versions of the .NET Framework. How do I build a single package that supports this?** - -See [Supporting Multiple .NET Framework Versions and Profiles](../create-packages/supporting-multiple-target-frameworks.md). - -**How do I set up my own repository or feed?** - -See the [Hosting packages overview](../hosting-packages/overview.md). - -**How can I upload packages to my NuGet feed in bulk?** - -See [Bulk publishing NuGet packages](http://jeffhandley.com/archive/2012/12/13/Bulk-Publishing-NuGet-Packages.aspx) (jeffhandly.com). - -## Working with packages - -**Is it possible to install NuGet packages without Internet connectivity?** - -Yes, see Scott Hanselman's Blog post [How to access NuGet when nuget.org is down (or you're on a plane)](http://www.hanselman.com/blog/HowToAccessNuGetWhenNuGetorgIsDownOrYoureOnAPlane.aspx) (hanselman.com). - -**How do I install packages in a different location from the default packages folder?** - -Set the [`repositoryPath`](../reference/nuget-config-file.md#config-section) setting in `Nuget.Config` using `nuget config -set repositoryPath=`. - -**How do I avoid adding the NuGet packages folder into to source control?** - -Set the [`disableSourceControlIntegration`](../reference/nuget-config-file.md#solution-section) in `Nuget.Config` to `true`. This key works at the solution level and hence need to be added to the `$(Solutiondir)\.nuget\Nuget.Config` file. Enabling package restore from Visual Studio creates this file automatically. - -**How do I turn off package restore?** - -See [Enabling and disabling package restore](../consume-packages/package-restore.md#enable-and-disable-package-restore-in-visual-studio). - -**Why do I get an "Unable to resolve dependency error" when installing a local package with remote dependencies?** - -You need to select the **All** source when installing a local package into the project. This aggregates all the feeds instead of using just one. The reason this error appears is that users of a local repository often want to avoid accidentally installing a remote package due to corporate polices. - -**I have multiple projects in the same folder, how can I use separate packages.config files for each project?** - -In most projects where separate projects live in separate folders, this is not a problem as NuGet identifies the `packages.config` files in each project. With NuGet 3.3+ and multiple projects in the same folder, you can insert the name of the project into the `packages.config` filenames use the pattern `packages.{project-name}.config`, and NuGet uses that file. - -This is not an issue when using PackageReference, as each project file contains its own list of dependencies. - -**I don't see nuget.org in my list of repositories, how do I get it back?** - -- Add `https://api.nuget.org/v3/index.json` to your list of sources, or -- Delete `%appdata%\.nuget\NuGet.Config` (Windows) or `~/.nuget/NuGet/NuGet.Config` (Mac/Linux) and let NuGet re-create it. - -**I migrated to PackageReference, why is my build failing `This project references NuGet package(s) that are missing on this computer.`?** - -In packages.config projects, when a package with `build` props or targets was installed, NuGet would add an `EnsureNuGetPackageBuildImports` target to verify that the packages msbuild content has been imported before building. -If the `target` has been modified manually, NuGet might not be able to detect that it needs removed when migrating. - -If your project is `PackageReference` and you still have this target in project file, it should be safe to remove. diff --git a/docs/resources/NuGet-FAQ.yml b/docs/resources/NuGet-FAQ.yml new file mode 100644 index 000000000..f0781bd7e --- /dev/null +++ b/docs/resources/NuGet-FAQ.yml @@ -0,0 +1,162 @@ +### YamlMime:FAQ +metadata: + title: NuGet Frequently-Asked Questions + description: Common questions and answers for using NuGet on the command line and in Visual Studio + author: shishirx34 + ms.author: shishirh + ms.date: 06/05/2019 + ms.topic: conceptual + +title: NuGet frequently-asked questions +summary: | + For frequently-asked questions pertaining to NuGet.org, such as NuGet.org account questions, see [NuGet.org frequently-asked questions](../nuget-org/nuget-org-faq.yml). + + ### What is required to run NuGet? + + All the information around both UI and command-line tools is available in the [Install guide](../install-nuget-client-tools.md). + + ### Does NuGet support Mono? + + The command-line tool, `nuget.exe`, builds and runs under Mono 3.2+ and can create packages in Mono. + + Although `nuget.exe` works fully on Windows, there are known issues on Linux and OS X. Refer to [Mono issues](https://github.com/NuGet/Home/issues?utf8=%E2%9C%93&q=is%3Aissue+is%3Aopen+mono) on GitHub. + + A [graphical client](https://github.com/mrward/monodevelop-nuget-addin) is available as an add-in for MonoDevelop. + + ### How can I determine what a package contains and whether it's stable and useful for my application? + + The primary source for learning about a package is its listing page on nuget.org (or another private feed). Each package page on nuget.org includes a description of the package, its version history, and usage statistics. The **Info** section on the package page also contains a link to the project's web site where you typically find many examples and other documentation to help you learn how the package is used. + + For more information, see [Finding and choosing packages](../consume-packages/finding-and-choosing-packages.md). + + +sections: + - name: Ignored + questions: + - question: | + NuGet in Visual Studio + answer: | + ### How is NuGet supported in different Visual Studio products? + + - Visual Studio on Windows supports the [Package Manager UI](../consume-packages/install-use-packages-visual-studio.md) and the [Package Manager Console](../consume-packages/install-use-packages-powershell.md). + - Visual Studio for Mac has built-in NuGet capabilities as described on [Including a NuGet package in your project](/visualstudio/mac/nuget-walkthrough). + - Visual Studio Code (all platforms) does not have any direct NuGet integration. Use the [NuGet CLI](../reference/nuget-exe-cli-reference.md) or the [dotnet CLI](../reference/dotnet-commands.md). + - Azure DevOps provides [a build step to restore NuGet packages](/vsts/build-release/tasks/package/nuget). You can also [host private NuGet package feeds on Azure DevOps](/azure/devops/artifacts/nuget/publish). + + ### How do I check the exact version of the NuGet tools that are installed? + + In Visual Studio, use the **Help > About Microsoft Visual Studio** command and look at the version displayed next to **NuGet Package Manager**. + + Alternatively, launch the Package Manager Console (**Tools > NuGet Package Manager > Package Manager Console**) and enter `$host` to see information about NuGet including the version. + + ### What programming languages are supported by NuGet? + + NuGet generally works for .NET languages and is designed to bring .NET libraries into a project. Because it also supports MSBuild and Visual Studio automation in some project types, it also supports other projects and languages to various degrees. + + The most recent version of NuGet supports C#, Visual Basic, F#, WiX, and C++. + + ### What project templates are supported by NuGet? + + NuGet has full support for a variety of project templates like Windows, Web, Cloud, SharePoint, Wix, and so on. + + ### How do I update packages that are part of Visual Studio templates? + + Go to the **Updates** tab in the Package Manager UI and select **Update All**, or use the [`Update-Package` command](../reference/ps-reference/ps-ref-update-package.md) from the Package Manager Console. + + To update the template itself, you need to manually update the template repository. See [Xavier Decoster's blog](http://www.xavierdecoster.com/update-project-template-to-latest-nuget-packages) on this subject. Note that this is done at your own risk, because manual updates might corrupt the template if the latest version of all dependencies are not compatible with each other. + + ### Can I use NuGet outside of Visual Studio? + + Yes, NuGet works directly from the command line. See the [Install guide](../install-nuget-client-tools.md) and the [CLI reference](../reference/nuget-exe-cli-reference.md). + + - question: | + NuGet command line + answer: | + ### How do I get the latest version of NuGet command line tool? + + See the [Install guide](../install-nuget-client-tools.md). To check the current installed version of the tool, use `nuget help`. + + ### What is the license for nuget.exe? + + You are allowed to redistribute nuget.exe under the terms of the MIT license. You are responsible for updating and servicing any copies of nuget.exe that you choose to redistribute. + + ### Is it possible to extend the NuGet command line tool? + + Yes, it's possible to add custom commands to `nuget.exe`, as described in [Rob Reynold's post](http://geekswithblogs.net/robz/archive/2011/07/15/extend-nuget-command-line.aspx). + + - question: | + NuGet Package Manager Console (Visual Studio on Windows) + answer: | + ### How do I get access to the DTE object in the Package Manager console? + + The top-level object in the Visual Studio automation object model is called the DTE (Development Tools Environment) object. The console provides this through a variable named `$DTE`. For more information, see [Automation Model Overview](/visualstudio/extensibility/internals/automation-model-overview) in the Visual Studio Extensibility documentation. + + ### I try to cast the $DTE variable to the type DTE2, but I get an error: Cannot convert the "EnvDTE.DTEClass" value of type "EnvDTE.DTEClass" to type "EnvDTE80.DTE2". What's wrong? + + This is a known issue with how PowerShell interacts with a COM object. Try the following: + + ```ps + `$dte2 = Get-Interface $dte ([EnvDTE80.DTE2])` + ``` + + `Get-Interface` is a helper function added by the NuGet PowerShell host. + + - question: | + Creating and publishing packages + answer: | + ### How do I list my package in a feed? + + See [Creating and publishing a package](../quickstart/create-and-publish-a-package-using-visual-studio.md). + + ### I have multiple versions of my library that target different versions of the .NET Framework. How do I build a single package that supports this? + + See [Supporting Multiple .NET Framework Versions and Profiles](../create-packages/supporting-multiple-target-frameworks.md). + + ### How do I set up my own repository or feed? + + See the [Hosting packages overview](../hosting-packages/overview.md). + + ### How can I upload packages to my NuGet feed in bulk? + + See [Bulk publishing NuGet packages](http://jeffhandley.com/archive/2012/12/13/Bulk-Publishing-NuGet-Packages.aspx) (jeffhandly.com). + + - question: | + Working with packages + answer: | + ### Is it possible to install NuGet packages without Internet connectivity? + + Yes, see Scott Hanselman's Blog post [How to access NuGet when nuget.org is down (or you're on a plane)](http://www.hanselman.com/blog/HowToAccessNuGetWhenNuGetorgIsDownOrYoureOnAPlane.aspx) (hanselman.com). + + ### How do I install packages in a different location from the default packages folder? + + Set the [`repositoryPath`](../reference/nuget-config-file.md#config-section) setting in `Nuget.Config` using `nuget config -set repositoryPath=`. + + ### How do I avoid adding the NuGet packages folder into to source control? + + Set the [`disableSourceControlIntegration`](../reference/nuget-config-file.md#solution-section) in `Nuget.Config` to `true`. This key works at the solution level and hence need to be added to the `$(Solutiondir)\.nuget\Nuget.Config` file. Enabling package restore from Visual Studio creates this file automatically. + + ### How do I turn off package restore? + + See [Enabling and disabling package restore](../consume-packages/package-restore.md#enable-and-disable-package-restore-in-visual-studio). + + ### Why do I get an "Unable to resolve dependency error" when installing a local package with remote dependencies? + + You need to select the **All** source when installing a local package into the project. This aggregates all the feeds instead of using just one. The reason this error appears is that users of a local repository often want to avoid accidentally installing a remote package due to corporate polices. + + ### I have multiple projects in the same folder, how can I use separate packages.config files for each project? + + In most projects where separate projects live in separate folders, this is not a problem as NuGet identifies the `packages.config` files in each project. With NuGet 3.3+ and multiple projects in the same folder, you can insert the name of the project into the `packages.config` filenames use the pattern `packages.{project-name}.config`, and NuGet uses that file. + + This is not an issue when using PackageReference, as each project file contains its own list of dependencies. + + ### I don't see nuget.org in my list of repositories, how do I get it back? + + - Add `https://api.nuget.org/v3/index.json` to your list of sources, or + - Delete `%appdata%\.nuget\NuGet.Config` (Windows) or `~/.nuget/NuGet/NuGet.Config` (Mac/Linux) and let NuGet re-create it. + + ### I migrated to PackageReference, why is my build failing `This project references NuGet package(s) that are missing on this computer.`? + + In packages.config projects, when a package with `build` props or targets was installed, NuGet would add an `EnsureNuGetPackageBuildImports` target to verify that the packages msbuild content has been imported before building. + If the `target` has been modified manually, NuGet might not be able to detect that it needs removed when migrating. + + If your project is `PackageReference` and you still have this target in project file, it should be safe to remove. From 0640101bee1e47eda5afa1bfe7480e5c029d6e96 Mon Sep 17 00:00:00 2001 From: atikmapari <31974726+atikmapari@users.noreply.github.com> Date: Thu, 22 Apr 2021 10:40:04 -0700 Subject: [PATCH 394/988] Warning issues fixed --- docs/TOC.md | 2 +- docs/nuget-org/individual-accounts.md | 2 +- docs/nuget-org/nuget-org-faq.yml | 22 +++++++++++----------- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/docs/TOC.md b/docs/TOC.md index f8b6d7ecd..caa00f24b 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -364,6 +364,6 @@ #### [NuGet 1.3](release-notes/NuGet-1.3.md) #### [NuGet 1.2](release-notes/NuGet-1.2.md) #### [NuGet 1.1](release-notes/NuGet-1.1.md) -## [FAQs](resources/nuget-faq.md) +## [FAQs](resources/nuget-faq.yml) ## [Project format](resources/check-project-format.md) # [NuGet.org](nuget-org/overview-nuget-org.md) diff --git a/docs/nuget-org/individual-accounts.md b/docs/nuget-org/individual-accounts.md index 2a3e7436b..71dda88f0 100644 --- a/docs/nuget-org/individual-accounts.md +++ b/docs/nuget-org/individual-accounts.md @@ -70,4 +70,4 @@ Two-factor authentication, or 2FA, is an extra layer of security used when loggi ## Delete a NuGet.org account -For help with additional account-related tasks, such as deleting a NuGet.org account, see [NuGet.org account management](nuget-org-faq.yml#nugetorg-account-management). +For help with additional account-related tasks, such as deleting a NuGet.org account, see [NuGet.org account management](nuget-org-faq.yml#nuget-org-account-management). diff --git a/docs/nuget-org/nuget-org-faq.yml b/docs/nuget-org/nuget-org-faq.yml index b7d506379..b373f1dc7 100644 --- a/docs/nuget-org/nuget-org-faq.yml +++ b/docs/nuget-org/nuget-org-faq.yml @@ -132,7 +132,7 @@ sections: 1. Once logged in, go to your [account settings](https://www.nuget.org/account) page. 1. Expand the section for **Login Account**. Click on the **Change Account** button. 1. You will now be redirected to the microsoft login page. Please sign in with the account that you wish to change the association to i.e. `account2@outlook.com`. **Note**: you might need to click on **Sign out and sign in with different account** during the sign in flow to be able to login with a different Microsoft account. - 1. If you see an error like below, see [Microsoft account is linked with another NuGet.org account](#microsoft-account-is-linked-with-another-nugetorg-account) for more details. + 1. If you see an error like below, see [Microsoft account is linked with another NuGet.org account](#microsoft-account-is-linked-with-another-nuget-org-account-) for more details. >_Failed to update the Microsoft account with 'account2 '. This could happen if it is already linked to another NuGet account. Contact support for more information._ 1. Once you have successfully signed in with your second account, you will be redirected back to your NuGet.org account settings page and you should now see the new Microsoft account associated as the login account. Going forward you should use this account when signing into NuGet.org. @@ -160,8 +160,8 @@ sections: If you wish to not care about the second NuGet.org account and still want to re-use the associated Microsoft account with email `account2@outlook.com`. You can release the association between the Microsoft account and NuGet.org account by deleting the NuGet.org account. - 1. Follow the steps to [delete user](#how-to-delete-my-nugetorg-account) for the second NuGet.org account `MyNuGetAccount2`. - 1. Once this account is deleted, you can retry the steps to [change Microsoft account login](#how-to-change-the-microsoft-account-i-use-for-nugetorg-login). + 1. Follow the steps to [delete user](#how-to-delete-my-nuget-org-account-) for the second NuGet.org account `MyNuGetAccount2`. + 1. Once this account is deleted, you can retry the steps to [change Microsoft account login](#how-to-change-the-microsoft-account-i-use-for-nuget-org-login). **Wait, I care about this second account too. I do not want to lose this account but change my associated account logins for first account.** @@ -185,18 +185,18 @@ sections: ### How do I find which Microsoft account is linked to this NuGet.org account? - You should use the [sign in assistance](#which-microsoft-account-is-linked-to-my-nugetorg-account) flow to figure out which Microsoft account is linked to the NuGet.org account with the email address `account1@outlook.com`. + You should use the [sign in assistance](#which-microsoft-account-is-linked-to-my-nuget-org-account) flow to figure out which Microsoft account is linked to the NuGet.org account with the email address `account1@outlook.com`. **I want to override that account with my Microsoft account** - Follow the steps in [Unable to use microsoft login, how do I recover my NuGet.org account](#unable-to-use-microsoft-login-how-do-i-recover-my-nugetorg-account) section to associate your Microsoft account with the existing NuGet.org account. + Follow the steps in [Unable to use microsoft login, how do I recover my NuGet.org account](#unable-to-use-microsoft-login--how-do-i-recover-my-nuget-org-account-) section to associate your Microsoft account with the existing NuGet.org account. - question: | Unable to use microsoft login, how do I recover my NuGet.org account? answer: | - If you tried using the [sign in assistance](#which-microsoft-account-is-linked-to-my-nugetorg-account) and you do not have access to the Microsoft account that is associated with your NuGet.org account, please follow the steps below to link a new Microsoft account to your NuGet.org account. + If you tried using the [sign in assistance](#which-microsoft-account-is-linked-to-my-nuget-org-account) and you do not have access to the Microsoft account that is associated with your NuGet.org account, please follow the steps below to link a new Microsoft account to your NuGet.org account. 1. **Requirement**: You will need access to a Microsoft account which is not associated with any existing NuGet.org accounts. If you do not have one, you can [create](https://signup.live.com) one. - 2. If you've forgotten your username and password for your NuGet.org account, follow the [steps to recover your password login](#how-to-recover-nugetorg-password-login). + 2. If you've forgotten your username and password for your NuGet.org account, follow the [steps to recover your password login](#how-to-recover-nuget-org-password-login). 3. [Login to NuGet.org](https://www.nuget.org/users/account/LogOnNuGetAccount) using the username/password login. 4. Once logged in, you will see the popup dialog show up like below. This is the password discontinuation dialog box. 5. **NOTE**: Please ignore the instruction to login with the specified Microsoft account. You can now link your NuGet.org account to any other Microsoft login. @@ -212,7 +212,7 @@ sections: If, however, your NuGet.org account is not associated/linked with a Microsoft account, you can follow the steps below to transform this account to an organization. 1. **Requirement**: You need to have an individual account first created on NuGet.org to be used as an admin on the org account. If you do not have one, please [create a new NuGet.org account](individual-accounts.md) - 2. Follow the [steps to recover your password login](#how-to-recover-nugetorg-password-login) for your NuGet.org account if you do not have password login for it, if you do, skip this step. + 2. Follow the [steps to recover your password login](#how-to-recover-nuget-org-password-login) for your NuGet.org account if you do not have password login for it, if you do, skip this step. 3. [Login to NuGet.org](https://www.nuget.org/users/account/LogOnNuGetAccount) using the username/password login. 4. Once logged in, you will see the popup dialog show up like below. This is the password discontinuation dialog box. > [!Important] @@ -245,7 +245,7 @@ sections: ### I don’t want to do all that, what is the other way to recover my account? - You can [create](https://www.microsoft.com/account) a new Microsoft account (with an email **not** associated with @yourdomain.com). Follow steps given in [recover your NuGet.org account](#unable-to-use-microsoft-login-how-do-i-recover-my-nugetorg-account) section. + You can [create](https://www.microsoft.com/account) a new Microsoft account (with an email **not** associated with @yourdomain.com). Follow steps given in [recover your NuGet.org account](#unable-to-use-microsoft-login--how-do-i-recover-my-nuget-org-account-) section. - question: | How do I change my NuGet.org account username? @@ -254,14 +254,14 @@ sections: > [!Important] > Deleting the user will still **reserve** the `username`. You will not be able to reuse the same username again and **this includes the change of casings**. As an example if you created a user with username `mycoolname` and you want to change this to `MyCoolName`(casing changes), it will not be possible after deleting the user. - Follow the steps given in [delete your NuGet.org account](#how-to-delete-my-nugetorg-account) section and to [register a new account](individual-accounts.md) with correct username. + Follow the steps given in [delete your NuGet.org account](#how-to-delete-my-nuget-org-account-) section and to [register a new account](individual-accounts.md) with correct username. - question: | How to delete my NuGet.org account? answer: | To delete your account, please note that we recommend that you transfer the ownership of any packages where you are the sole owner. You can read more about [managing package owners](../nuget-org/publish-a-package.md#managing-package-owners-on-nugetorg) on how to do it. This will also help us expedite your request. - If you are looking to transform your account to an organization, follow the steps given in [transform my NuGet.org account to an organization](#how-to-transform-my-nugetorg-account-to-an-organization). + If you are looking to transform your account to an organization, follow the steps given in [transform my NuGet.org account to an organization](#how-to-transform-my-nuget-org-account-to-an-organization-). > [!Important] > Deleting the user will result in following: From 24e986d0f66b56ddc1d42d4ad03f1c8c25c1979f Mon Sep 17 00:00:00 2001 From: atikmapari <31974726+atikmapari@users.noreply.github.com> Date: Thu, 22 Apr 2021 11:16:08 -0700 Subject: [PATCH 395/988] changes fixed --- docs/nuget-org/nuget-org-faq.yml | 50 ++++++++++++++------------------ 1 file changed, 21 insertions(+), 29 deletions(-) diff --git a/docs/nuget-org/nuget-org-faq.yml b/docs/nuget-org/nuget-org-faq.yml index b373f1dc7..123bb6d73 100644 --- a/docs/nuget-org/nuget-org-faq.yml +++ b/docs/nuget-org/nuget-org-faq.yml @@ -108,8 +108,7 @@ sections: - question: | NuGet.org account management answer: | - - question: How to recover NuGet.org password login? - answer: | + ### How to recover NuGet.org password login? Please note that the [NuGet.org Password login has been discontinued](https://blog.nuget.org/20180515/NuGet.org-will-only-support-MSA-AAD-starting-June.html) and the only way to log in to NuGet.org is with a personal Microsoft account (MSA) or Azure Active Directory (AAD) account. However, in case you are unable to access your associated MSA/AAD accounts you might need to use password login for recovering your NuGet.org account. In this situation follow the steps below. - **Requirement:** You will need to have access to the email that is associated with the account for which you need to recover the password. - Go to the [Forgot password page](https://www.nuget.org/account/ForgotPassword) @@ -119,14 +118,14 @@ sections: - Once done, you can now login with username/password on NuGet. - To login with username/password, use the **Sign in using Nuget.org account** link on the [NuGet.org login page](https://www.nuget.org/users/account/LogOn). - - question: Which Microsoft account is linked to my NuGet.org account? - answer: | + ### Which Microsoft account is linked to my NuGet.org account? + If you have forgotten which Microsoft account is associated with your NuGet.org account, please follow the steps below to get assistance. 1. Go to [NuGet.org login page](https://www.nuget.org/users/account/LogOn) and click on **Need assistance signing in?** link. 1. This will show you the pop-up dialog box for assistance. Follow the steps in this dialog box to understand the associated Microsoft account(s) for your NuGet.org account. - - question: How to change the Microsoft account I use for NuGet.org login? - answer: | + ### How to change the Microsoft account I use for NuGet.org login? + If you wish to change the Microsoft account for NuGet.org user, follow the steps below. Lets say your Microsoft account with email `account1@outlook.com` is associated with your NuGet.org account with username `MyNuGetAccount`. You wish to change the login to another Microsoft account with email `account2@outlook.com` 1. Please sign in using **currently associated Microsoft account** i.e. `account1@outlook.com` on the [login page](https://www.nuget.org/users/account/LogOn) after clicking **Sign in with Microsoft**. 1. Once logged in, go to your [account settings](https://www.nuget.org/account) page. @@ -137,9 +136,8 @@ sections: 1. Once you have successfully signed in with your second account, you will be redirected back to your NuGet.org account settings page and you should now see the new Microsoft account associated as the login account. Going forward you should use this account when signing into NuGet.org. - - question: | - Microsoft account is linked with another NuGet.org account. - answer: | + ### Microsoft account is linked with another NuGet.org account. + If you tried changing your Microsoft login and saw the error below: > _Failed to update the Microsoft account with 'account2 '. This could happen if it is already linked to another NuGet account. Contact support for more information._ @@ -163,15 +161,14 @@ sections: 1. Follow the steps to [delete user](#how-to-delete-my-nuget-org-account-) for the second NuGet.org account `MyNuGetAccount2`. 1. Once this account is deleted, you can retry the steps to [change Microsoft account login](#how-to-change-the-microsoft-account-i-use-for-nuget-org-login). - **Wait, I care about this second account too. I do not want to lose this account but change my associated account logins for first account.** + ### Wait, I care about this second account too. I do not want to lose this account but change my associated account logins for first account. You will need to create/use a third Microsoft account, say, with email `account3@outlook.com`. 1. First you should login with your second Microsoft account, `account2@outlook.com` on NuGet.org. Follow the steps above to change associated logins and associate the third Microsoft account with this NuGet.org account. 1. Once done, your second Microsoft account with email `account2@outlook.com` is free to be associated to your first NuGet.org account, `MyNuGetAccount1`. Follow the same steps above to change microsoft logins to the second Microsoft account. - - question: | - Signing in with Microsoft account shows me my email is linked to another Microsoft account - answer: | + ### Signing in with Microsoft account shows me my email is linked to another Microsoft account + If you tried to sign in with your Microsoft account, say, with email `account1@outlook.com` and you see an error like below: > _The account with email 'account1@outlook.com' is linked with another microsoft account._ > @@ -187,13 +184,12 @@ sections: You should use the [sign in assistance](#which-microsoft-account-is-linked-to-my-nuget-org-account) flow to figure out which Microsoft account is linked to the NuGet.org account with the email address `account1@outlook.com`. - **I want to override that account with my Microsoft account** + ### I want to override that account with my Microsoft account Follow the steps in [Unable to use microsoft login, how do I recover my NuGet.org account](#unable-to-use-microsoft-login--how-do-i-recover-my-nuget-org-account-) section to associate your Microsoft account with the existing NuGet.org account. - - question: | - Unable to use microsoft login, how do I recover my NuGet.org account? - answer: | + ### Unable to use microsoft login, how do I recover my NuGet.org account? + If you tried using the [sign in assistance](#which-microsoft-account-is-linked-to-my-nuget-org-account) and you do not have access to the Microsoft account that is associated with your NuGet.org account, please follow the steps below to link a new Microsoft account to your NuGet.org account. 1. **Requirement**: You will need access to a Microsoft account which is not associated with any existing NuGet.org accounts. If you do not have one, you can [create](https://signup.live.com) one. 2. If you've forgotten your username and password for your NuGet.org account, follow the [steps to recover your password login](#how-to-recover-nuget-org-password-login). @@ -205,9 +201,8 @@ sections: ![Link MSA Dialog](media/link-msa-dialog.png) - - question: | - How to transform my NuGet.org account to an organization? - answer: | + ### How to transform my NuGet.org account to an organization? + If you want to transform your account to an organization, and this account is already associated with a Microsoft account login, please follow the steps given in the documentation for [organizations on nuget org](organizations-on-nuget-org.md). If, however, your NuGet.org account is not associated/linked with a Microsoft account, you can follow the steps below to transform this account to an organization. @@ -224,9 +219,8 @@ sections: ![Link MSA Dialog](media/link-msa-dialog.png) - - question: | - NuGet.org login issues for AAD accounts with unmanaged tenant? - answer: | + ### NuGet.org login issues for AAD accounts with unmanaged tenant? + If you see an error like below during your login flow with your email account domain(@yourdomain.com), see the steps below to recover your NuGet.org account. ![Error during login for AAD accounts](media/unmanaged-aad-tenant.png) @@ -247,18 +241,16 @@ sections: You can [create](https://www.microsoft.com/account) a new Microsoft account (with an email **not** associated with @yourdomain.com). Follow steps given in [recover your NuGet.org account](#unable-to-use-microsoft-login--how-do-i-recover-my-nuget-org-account-) section. - - question: | - How do I change my NuGet.org account username? - answer: | + ### How do I change my NuGet.org account username? + You cannot. As a matter of policy we do not allow the change of usernames. Also, doing so is a breaking change for users that may have defined [package trust policies based on the package owner](../consume-packages/installing-signed-packages.md#trust-package-owners). The only way to change your username is to create a new account with the desired username. We recommend you delete your existing account before you create a new one, otherwise you will not be able to reuse your registered Microsoft account. > [!Important] > Deleting the user will still **reserve** the `username`. You will not be able to reuse the same username again and **this includes the change of casings**. As an example if you created a user with username `mycoolname` and you want to change this to `MyCoolName`(casing changes), it will not be possible after deleting the user. Follow the steps given in [delete your NuGet.org account](#how-to-delete-my-nuget-org-account-) section and to [register a new account](individual-accounts.md) with correct username. - - question: | - How to delete my NuGet.org account? - answer: | + ### How to delete my NuGet.org account? + To delete your account, please note that we recommend that you transfer the ownership of any packages where you are the sole owner. You can read more about [managing package owners](../nuget-org/publish-a-package.md#managing-package-owners-on-nugetorg) on how to do it. This will also help us expedite your request. If you are looking to transform your account to an organization, follow the steps given in [transform my NuGet.org account to an organization](#how-to-transform-my-nuget-org-account-to-an-organization-). From 3ca8562b624fae475cc7dcfb4a65e8ae04e286ff Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Thu, 22 Apr 2021 14:40:22 -0400 Subject: [PATCH 396/988] Added support info --- docs/reference/msbuild-targets.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index 9889e66e4..abe038a51 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -154,6 +154,8 @@ For the nuspec equivalent, take a look at [nuspec reference for icon](nuspec.md# ### PackageReadmeFile +*Supported with **NuGet 5.10.0 preview 2** / **.NET 5.0.3** and above* + When packing a readme file, you need to use the `PackageReadmeFile` property to specify the package path, relative to the root of the package. In addition to this, you need to make sure that the file is included in the package. Supported file formats include only Markdown (*.md*). For example: From b97e82716d91247af2f29685e7fab8ac79c73ee6 Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Thu, 22 Apr 2021 15:38:38 -0400 Subject: [PATCH 397/988] rebuilding --- docs/reference/nuspec.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/nuspec.md b/docs/reference/nuspec.md index 30220421d..d71b059f7 100644 --- a/docs/reference/nuspec.md +++ b/docs/reference/nuspec.md @@ -226,7 +226,7 @@ For example, you would add the following to your nuspec in order to pack a readm ``` -For the MSBuild equivalent, take a look at [Packing a readme file](msbuild-targets.md#packagereadmefile). +For the MSBuild equivalent, take a look at [Packing a readme file](msbuild-targets.md#packagereadmefile). #### requireLicenseAcceptance A Boolean value specifying whether the client must prompt the consumer to accept the package license before installing the package. From ed0e937f524f05cd91e482447812ec6d10768bb4 Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Thu, 22 Apr 2021 18:50:12 -0700 Subject: [PATCH 398/988] updated error messages for NU3018 and NU3008 docs (#2380) --- docs/reference/errors-and-warnings/NU3008.md | 7 ++----- docs/reference/errors-and-warnings/NU3018.md | 10 ++++------ 2 files changed, 6 insertions(+), 11 deletions(-) diff --git a/docs/reference/errors-and-warnings/NU3008.md b/docs/reference/errors-and-warnings/NU3008.md index 7e9c5509c..2f723239b 100644 --- a/docs/reference/errors-and-warnings/NU3008.md +++ b/docs/reference/errors-and-warnings/NU3008.md @@ -12,17 +12,14 @@ f1_keywords: # NuGet Error NU3008 -

Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The package integrity check failed.
+
Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The package integrity check failed. The package has changed since it was signed. Try clearing the local http-cache and run nuget operation again.
### Issue NuGet package being verified has changed since it was signed. - ### Solution -Please ensure that the package has not been tampered with since signing. If this was a temporary problem, then you can fix this by clearing your local cache(s) by running `nuget locals -Clear all` command. However, if the problem persists then please inform the package source and the package author. +Please ensure that the package has not been tampered with since signing. If this was a temporary problem, then you can fix this by clearing your local http-cache(s) by running `nuget locals http-cache -clear` or `dotnet nuget locals http-cache --clear` command. However, if the problem persists then please inform the package source and the package author. If this issue happened on a package which came from `nuget.org` then please file an issue at [NuGet/Home](https://github.com/NuGet/Home/issues) along with the package that caused this problem. - - diff --git a/docs/reference/errors-and-warnings/NU3018.md b/docs/reference/errors-and-warnings/NU3018.md index 0cd85ffee..90cda228c 100644 --- a/docs/reference/errors-and-warnings/NU3018.md +++ b/docs/reference/errors-and-warnings/NU3018.md @@ -12,18 +12,16 @@ f1_keywords: # NuGet Warning NU3018 -
Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature found a chain building issue: A certificate chain processed, but terminated in a root certificate which is not trusted by the trust provider.
+
Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature's signing certificate is not trusted by the trust provider.
### Issue NuGet client failed to verify the certificate chain for the signing certificate used to sign the package. - ### Solution -Please ensure that the package signature has a valid certificate chain. You can verify the package signature by running the `nuget verify -signatures` command on the package. If the problem persists, then please file an issue at [NuGet/Home](https://github.com/NuGet/Home/issues) along with the package that generated this problem. - +Please ensure that the package signature has a valid certificate chain. You can verify the package signature by running the `nuget verify -signatures` or `dotnet nuget verify` command on the package. If the problem persists, then please file an issue at [NuGet/Home](https://github.com/NuGet/Home/issues) along with the package that generated this problem. > [!Note] -> When NuGet’s [signature validation mode](../../consume-packages/installing-signed-packages.md#configure-package-signature-requirements) is set to accept (default), NU3018 is raised as a warning. -> When NuGet’s signature validation mode is set to require, or when running the `nuget verify -signatures` command, NU3018 is elevated from a warning to an error in most cases. +> When NuGet’s [signature validation mode](../../consume-packages/installing-signed-packages.md#configure-package-signature-requirements) is set to accept (default), NU3018 is raised as a warning. +> When NuGet’s signature validation mode is set to require, or when running the `nuget verify -signatures` command, NU3018 is elevated from a warning to an error in most cases. From 7865568b429757240b69bc1c82cdb06e00aef11f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Sharma?= <737941+loic-sharma@users.noreply.github.com> Date: Thu, 22 Apr 2021 20:57:24 -0700 Subject: [PATCH 399/988] Improve custom package types documentation (#2397) --- docs/create-packages/set-package-type.md | 122 ++++++++++++++++++++--- docs/reference/msbuild-targets.md | 4 +- 2 files changed, 111 insertions(+), 15 deletions(-) diff --git a/docs/create-packages/set-package-type.md b/docs/create-packages/set-package-type.md index fe1f2ca44..b16004f8c 100644 --- a/docs/create-packages/set-package-type.md +++ b/docs/create-packages/set-package-type.md @@ -9,28 +9,124 @@ ms.topic: conceptual # Set a NuGet package type -With NuGet 3.5+, packages can be marked with a specific *package type* to indicate its intended use. Packages not marked with a type, including all packages created with earlier versions of NuGet, default to the `Dependency` type. +Packages can be marked with one more more *package types* to indicate its intended use. + +## Known package types - `Dependency` type packages add build- or run-time assets to libraries and applications, and can be installed in any project type (assuming they are compatible). -- `DotnetTool` type packages are extensions to the [dotnet CLI](/dotnet/articles/core/tools/index) and are invoked from the command line. Such packages can be installed only in .NET Core projects and have no effect on restore operations. More details about these per-project extensions are available in the [.NET Core extensibility](/dotnet/articles/core/tools/extensibility#per-project-based-extensibility) documentation. +- `DotnetTool` type packages are .NET tools that can be installed by the [dotnet CLI](/dotnet/articles/core/tools/index). - `Template` type packages provide [custom templates](/dotnet/core/tools/custom-templates) that can be used to create files or projects like an app, service, tool, or class library. -- Custom type packages use an arbitrary type identifier that conforms to the same format rules as package IDs. Any type other than `Dependency` and `DotnetTool`, however, are not recognized by the NuGet Package Manager in Visual Studio. +Packages not marked with a type, including all packages created with earlier versions of NuGet, default to the `Dependency` type. + +> [!NOTE] +> Support for package types was added in NuGet 3.5. +> If you don't need a custom package type, it's best to *not* explicitly set the package type. +> NuGet defaults to the `Dependency` type when no type is specified. + +## Custom package types + +You can mark your package with one or more custom package types if its use does not fit the [known package types](#known-package-types). + +For example, imagine that customers of the `Contoso` app can install extensions. The app could require extension authors to use the custom package type `ContosoExtension` to identify their packages as proper extensions that follow the required conventions. + +> [!WARNING] +> A package with a custom package type cannot be installed by Visual Studio or nuget.exe. See [NuGet/Home#10468](https://github.com/NuGet/Home/issues/10468) for more information. + +# [Using dotnet CLI](#tab/dotnet) + +Package types can be set in the project file (`.csproj`): + +```xml + + + + net5.0 + + ContosoExtension + + + +``` + +Packages with multiple intended uses can be marked with multiple package types using the `;` delimiter: + +```xml + + + + net5.0 + + PackageType1;PackageType2 + + + +``` + +Package types can be versioned using a `,` delimiter between the package type and its [`Version`](/dotnet/api/system.version) string: + +```xml + -Package types are set in the `.nuspec` file. It's best for backwards compatibility to *not* explicitly set the `Dependency` type and to instead rely on NuGet assuming this type when no type is specified. + + net5.0 + + PackageType1, 1.0.0.0;PackageType2 + -- `.nuspec`: Indicate the package type within a `packageTypes\packageType` node under the `` element: + +``` - ```xml - - - +# [Using nuget.exe](#tab/nugetexe) + +Package types are set in the `.nuspec` file within a `packageTypes\packageType` node under the `` element: + +```xml + + + + + + + + + +``` + +Packages with multiple intended uses may be marked with multiple package types: + +```xml + + + + + + + + + + +``` + +Package types can be versioned using a [`Version`](/dotnet/api/system.version) string: + +```xml + + + - + + - - - ``` + + +``` + +--- + +The format of a package type string is exactly like a package ID. That is, a package type is a case-insensitive string matching the regular expression `^\w+([_.-]\w+)*$` having at least one character and at most 100 characters. + +If provided, the package type version is a [`Version`](/dotnet/api/system.version) string. The package type version is optional and defaults to `0.0`. diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index abe038a51..849174706 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -68,7 +68,7 @@ The following table describes the MSBuild properties that can be added to a proj | `Repository/Type` | `RepositoryType` | empty | Repository type. Examples: `git` (default), `tfs`. | | `Repository/Branch` | `RepositoryBranch` | empty | Optional repository branch information. `RepositoryUrl` must also be specified for this property to be included. Example: *master* (NuGet 4.7.0+). | | `Repository/Commit` | `RepositoryCommit` | empty | Optional repository commit or changeset to indicate which source the package was built against. `RepositoryUrl` must also be specified for this property to be included. Example: *0e4d1b598f350b3dc675018d539114d1328189ef* (NuGet 4.7.0+). | -| `PackageType` | `DotNetCliTool, 1.0.0.0;Dependency, 2.0.0.0` | | | +| `PackageType` | `CustomType1, 1.0.0.0;CustomType2` | | Indicates the package's intended use. Package types use the same format as package IDs and are delimited by `;`. Package types may be versioned by appending a `,` and a [`Version`](/dotnet/api/system.version) string. See [Set a NuGet package type](../create-packages/set-package-type.md) (NuGet 3.5.0+). | | `Summary` | Not supported | | | ### pack target inputs @@ -547,4 +547,4 @@ Next, add your own reference to the appropriate local copy of the DLL: ```xml -``` \ No newline at end of file +``` From a0bd2b921cb811d202e38b13c340992af883d95b Mon Sep 17 00:00:00 2001 From: Ben Adams Date: Fri, 23 Apr 2021 20:33:35 +0100 Subject: [PATCH 400/988] Update version to SDK version --- docs/reference/msbuild-targets.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index 849174706..9bde46d8b 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -154,7 +154,7 @@ For the nuspec equivalent, take a look at [nuspec reference for icon](nuspec.md# ### PackageReadmeFile -*Supported with **NuGet 5.10.0 preview 2** / **.NET 5.0.3** and above* +*Supported with **NuGet 5.10.0 preview 2** / **.NET SDK 5.0.300** and above* When packing a readme file, you need to use the `PackageReadmeFile` property to specify the package path, relative to the root of the package. In addition to this, you need to make sure that the file is included in the package. Supported file formats include only Markdown (*.md*). From 9e437b3238ae1b029a04134917e8629558d46918 Mon Sep 17 00:00:00 2001 From: Adam Ralph Date: Mon, 26 Apr 2021 18:48:29 +0200 Subject: [PATCH 401/988] NU5123 page does not render due to < > in -Since, [nearest-wins](../../concepts/dependency-resolution.md#nearest-wins), the direct package reference to PackageB v4.0.0, will take precedence over the transitive reference to PackageB v3.5.0. +Since, [direct-dependency-wins](../../concepts/dependency-resolution.md#direct-dependency-wins), the direct package reference to PackageB v4.0.0, will take precedence over the transitive reference to PackageB v3.5.0. ## Example 2
@@ -60,7 +60,7 @@ To work around this issue, add the following PackageReference:
 
 ### Issue
 
-The mvc project specified a version constraint on a higher version of a package than restore ultimately resolved. That is because of the [nearest-wins](../../concepts/dependency-resolution.md#nearest-wins) rule - when resolving packages, the version of the nearer package in the graph will override that of the distant package with the same ID.
+The mvc project specified a version constraint on a higher version of a package than restore ultimately resolved. That is because of the [direct-dependency-wins](../../concepts/dependency-resolution.md#direct-dependency-wins) rule - when resolving packages, the version of the nearer package in the graph will override that of the distant package with the same ID.
 
 ### Solution
 

From 53d4923ae7a4ef7cc6a3e65a3f38c7188794f9b8 Mon Sep 17 00:00:00 2001
From: Jeff Kluge 
Date: Thu, 8 Sep 2022 09:19:41 -0700
Subject: [PATCH 655/988] Document GlobalPackageReference (#2876)

---
 .../Central-Package-Management.md             | 26 ++++++++++++++++++-
 1 file changed, 25 insertions(+), 1 deletion(-)

diff --git a/docs/consume-packages/Central-Package-Management.md b/docs/consume-packages/Central-Package-Management.md
index c67bfb202..ffadf9de1 100644
--- a/docs/consume-packages/Central-Package-Management.md
+++ b/docs/consume-packages/Central-Package-Management.md
@@ -176,6 +176,28 @@ If you'd like to disable central package management for any a particular project
 
 ```
 
+## Global Package References
+> [!Note]
+> This feature is only available in Visual Studio 2022 17.4 or higher, .NET SDK 7.0.100.preview7 or higher, and NuGet 6.4 or higher.
+
+A global package reference is used to specify that a package will be used by every project in a repository. This includes packages that do versioning, extend your build, or do any other package that is needed by all projects. Global package references are added to the PackageReference item group with the following metadata:
+
+* `IncludeAssets="Runtime;Build;Native;contentFiles;Analyzers"`
+ This ensures that the package is only used as a development dependency and prevents any compile-time assembly references. +* `PrivateAssets="All"`
+ This prevents global package references from being picked up by downstream dependencies. + + +`GlobalPackageReference` items should be placed in your `Directory.Packages.props` to be used by every project in a repository: + +```xml + + + + + +``` + ## Warning when using multiple package sources When using central package management, you will see a `NU1507` warning if you have more than one package source defined in your configuration. To resolve @@ -185,7 +207,9 @@ this warning, map your package sources with [package source mapping](https://aka There are 3 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. ``` + + > [!Note] -> This feature is in active development. We appreciate you trying it out and providing any feedback you may have at [NuGet/Home](https://github.com/nuget/home/issues). +> Central package management is in active development. We appreciate you trying it out and providing any feedback you may have at [NuGet/Home](https://github.com/nuget/home/issues). > > * There is currently no support in Visual Studio or the .NET CLI for Central Package Management. From b19475b0f2436b071399d58debc2e06e7abd624e Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Thu, 8 Sep 2022 17:54:42 -0700 Subject: [PATCH 656/988] improve nu1605 --- docs/reference/errors-and-warnings/NU1605.md | 52 +++++++++++++++----- 1 file changed, 41 insertions(+), 11 deletions(-) diff --git a/docs/reference/errors-and-warnings/NU1605.md b/docs/reference/errors-and-warnings/NU1605.md index 104470ac4..a4ed51a56 100644 --- a/docs/reference/errors-and-warnings/NU1605.md +++ b/docs/reference/errors-and-warnings/NU1605.md @@ -14,32 +14,56 @@ f1_keywords: ## Example 1 -
Detected package downgrade: 'PackageB' from 4.0.0 to 3.5.0. Reference the package directly from the project to select a different version.
'PackageA' 3.5.0 -> 'PackageB' 3.5.0
'PackageC' 4.0.0 -> 'PackageD' 4.0.0 -> 'PackageB' 4.0.0
+
Detected package downgrade: 'PackageB' from 4.0.0 to 3.5.0. Reference the package directly from the project to select a different version.
+'Project' -> 'PackageA' 4.0.0 -> 'PackageB' (>= 4.0.0)
+'Project' -> 'PackageB' (>= 3.5.0)
### Issue -A dependency package specified a version constraint on a higher version of a package than restore ultimately resolved. That is because of the [direct-dependency-wins](../../concepts/dependency-resolution.md#direct-dependency-wins) rule - when resolving packages, the version of the nearer package in the graph will override that of the distant package with the same ID. + +A dependency package specified a version constraint on a higher version of a package than restore ultimately resolved. That is because of the [direct-dependency-wins](../../concepts/dependency-resolution.md#direct-dependency-wins) rule - when resolving packages, the direct package version in the subgraph will override that of the distant packages with the same ID. ### Solution -To the project exhibiting the restore error, add a package reference to the higher version of the package. -In the example above, you would add a package reference to Package B version 4.0.0: +To the project exhibiting the restore warning, add a package reference to the higher version of the package. + +In the example above, you would change the package reference to `PackageB` 4.0.0:
-  'PackageA' 3.5.0 -> 'PackageB' 3.5.0
- 'PackageC' 4.0.0 -> 'PackageD' 4.0.0 -> 'PackageB' 4.0.0
+ 'PackageA' 4.0.0 -> 'PackageB' 4.0.0
'PackageB' 4.0.0
-Since, [direct-dependency-wins](../../concepts/dependency-resolution.md#direct-dependency-wins), the direct package reference to PackageB v4.0.0, will take precedence over the transitive reference to PackageB v3.5.0. - ## Example 2 + +
Detected package downgrade: 'PackageC' from 2.0.0 to 1.1.0. Reference the package directly from the project to select a different version.
+'Project' -> 'PackageA' 1.0.0 -> 'PackageB' 2.0.0 ->'PackageC' (>= 2.0.0)
+'Project' -> 'PackageA' 1.0.0 -> 'PackageC' (>= 1.1.0)
+ +### Issue + +A dependency package specified a version constraint on a higher version of a package than restore ultimately resolved. That is because of the [direct-dependency-wins](../../concepts/dependency-resolution.md#direct-dependency-wins) rule - when resolving packages, NuGet tries to honor the intent of the package author. +The author of `PackageA` has explicitly downgraded to `PackageC` 1.1.0 from `PackageC` 2.0.0. + +### Solution + +To the project exhibiting the restore warning, add a package reference to the higher version of the package. + +In the example above, you would change the package reference to `PackageC` 2.0.0: + +
+  'PackageA' 4.0.0 -> 'PackageB' 4.0.0
+ 'PackageB' 4.0.0 +
+ +## Example 3 +
 Detected package downgrade: System.IO.FileSystem.Primitives from 4.3.0 to 4.0.1. Reference the package directly from the project to select a different version.
Project -> System.IO.FileSystem 4.0.1 -> runtime.win.System.IO.FileSystem 4.3.0 -> System.IO.FileSystem.Primitives (>= 4.3.0)
Project -> System.IO.FileSystem 4.0.1 -> System.IO.FileSystem.Primitives (>= 4.0.1)
-### Issue +### Issue Certain combinations of packages which shipped with .NET Core 1.0 and 1.1 are not compatible with each other when they are referenced together in a .NET Core 3.0 or higher project, and a RuntimeIdentifier is specified. The problematic packages generally start with `System.` or `Microsoft.`, and have version numbers between 4.0.0 and 4.3.1. In this case, the downgrade message will have a package starting with `runtime.` in the dependency chain. @@ -51,7 +75,9 @@ To work around this issue, add the following PackageReference: ``` -## Example 3 +You may choose to use the `version` matching the the major version of your SDK. + +## Example 4
Detected package downgrade: Microsoft.NETCore.App from 2.1.8 to 2.1.0. Reference the package directly from the project to select a different version.
test -> mvc -> Microsoft.NETCore.App (>= 2.1.8)
@@ -60,8 +86,12 @@ To work around this issue, add the following PackageReference: ### Issue -The mvc project specified a version constraint on a higher version of a package than restore ultimately resolved. That is because of the [direct-dependency-wins](../../concepts/dependency-resolution.md#direct-dependency-wins) rule - when resolving packages, the version of the nearer package in the graph will override that of the distant package with the same ID. +The mvc project specified a version constraint on a higher version of a package than restore ultimately resolved. That is because of the [direct-dependency-wins](../../concepts/dependency-resolution.md#direct-dependency-wins) rule - when resolving packages, the version of directly referenced package in the graph will override that of the distant package with the same ID. ### Solution This specific error (with Microsoft.NETCore.App package) is improved by moving your .NET Core SDK to 2.2.100 or later. Microsoft.NETCore.App is an auto-referenced package that the .NET Core SDK before version 3.0.100 chooses to bring in automatically. Also see [Self-contained deployment runtime roll forward](/dotnet/core/deploying/runtime-patch-selection). + +> [!NOTE] +> While NU1605 is considered a warning by the NuGet tooling, the .NET SDK opts into treating this warning as an error through `WarningsAsErrors`. You may choose to opt out of this (TODO NK - Add an example.) +> You may have upgraded this warning to error yourself by setting `TreatWarningsAsErrors` to `true`. \ No newline at end of file From 0456fb5cac9431c3f99745b47af9845e4a6b921f Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Thu, 8 Sep 2022 17:55:47 -0700 Subject: [PATCH 657/988] Remove the note for NU1605 --- docs/reference/errors-and-warnings/NU1605.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/docs/reference/errors-and-warnings/NU1605.md b/docs/reference/errors-and-warnings/NU1605.md index a4ed51a56..95f70e86d 100644 --- a/docs/reference/errors-and-warnings/NU1605.md +++ b/docs/reference/errors-and-warnings/NU1605.md @@ -91,7 +91,3 @@ The mvc project specified a version constraint on a higher version of a package ### Solution This specific error (with Microsoft.NETCore.App package) is improved by moving your .NET Core SDK to 2.2.100 or later. Microsoft.NETCore.App is an auto-referenced package that the .NET Core SDK before version 3.0.100 chooses to bring in automatically. Also see [Self-contained deployment runtime roll forward](/dotnet/core/deploying/runtime-patch-selection). - -> [!NOTE] -> While NU1605 is considered a warning by the NuGet tooling, the .NET SDK opts into treating this warning as an error through `WarningsAsErrors`. You may choose to opt out of this (TODO NK - Add an example.) -> You may have upgraded this warning to error yourself by setting `TreatWarningsAsErrors` to `true`. \ No newline at end of file From f1c32e4774f33758adc01f5d9e475a3b0cf81834 Mon Sep 17 00:00:00 2001 From: Alex Buck Date: Fri, 9 Sep 2022 18:13:57 -0400 Subject: [PATCH 658/988] [BULK] DocuTune - Fix build validation issues: docs-link-absolute (#2875) --- CONTRIBUTING.md | 4 ++-- README.md | 18 +++++++++--------- ...l-and-use-a-package-using-the-dotnet-cli.md | 2 +- docs/release-notes/NuGet-5.8.md | 4 ++-- docs/what-is-nuget.md | 2 +- 5 files changed, 15 insertions(+), 15 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index f96bdcdda..50756f0a3 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,10 +1,10 @@ No contribution is too big or too small. -1. Visit the page to edit on [docs.microsoft.com/nuget](https://docs.microsoft.com/nuget/), then click the **Edit** button on the top right. This brings you to the appropriate markdown page in the repo. +1. Visit the page to edit in the [NuGet documentation](https://docs.microsoft.com/nuget/), then click the **Edit** button on the top right. This brings you to the appropriate markdown page in the repo. 1. Edit the markdown: 1. If you're including images (use PNGs, generally), place them in the media folder that's in the topic's folder. Links are then `media/.png`. 1. Relative links to other pages in this docset should be in the form `..//.md` including the training `.md`. If you're linking to another topic in the same folder, then `..//` can be omitted. When using anchors, always remember to include the `.md` before the `#`. - 1. When using external links, especially to docs.microsoft.com (or msdn.microsoft.com for any older content), omit any language tag like "en-us" so that a reader in another language lands on a target page in that same language if it's available. + 1. When using external links, especially to Microsoft Docs (or msdn.microsoft.com for any older content), omit any language tag like "en-us" so that a reader in another language lands on a target page in that same language if it's available. 1. When you're done, enter a commit message below, and click **Propose file change**. 1. Send a pull request for your change. We review PRs on a regular basis. 1. Thank you! diff --git a/README.md b/README.md index 3bd18249e..3b658dd8b 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # docs.microsoft.com-nuget -The NuGet documentation contained in this repository is hosted on [docs.microsoft.com/nuget](https://docs.microsoft.com/nuget/). This repository was migrated from the former NuGetDocs repository, https://github.com/NuGet/NuGetDocs, which is no longer in active use. +The NuGet documentation contained in this repository is hosted in [NuGet documentation](https://docs.microsoft.com/nuget/). This repository was migrated from the former NuGetDocs repository, https://github.com/NuGet/NuGetDocs, which is no longer in active use. Contributions to this docset are welcome. Please submit PRs to the *main* branch. The main branch is used for staging changes which is periodically merged into the *live* branch which is what's published to the live docs site. @@ -9,7 +9,7 @@ NuGet follows the [.NET Foundation Contributors Code of Conduct](https://github. ## Repository structure - All markdown files are in the docs folder and various subfolders. -- The docs/index.md file defines the landing (hub) page as it appears on docs.microsoft.com/nuget. +- The docs/index.md file defines the landing (hub) page as it appears in the [NuGet documentation](https://docs.microsoft.com/nuget). - The docs/TOC.md file defines the left-hand navigation panel that appears when you navigate to any page other than the hub page. - Images are contained within media folders within each subfolder. - The docs/docfx.json file contains various defaults, especially for metadata. @@ -20,11 +20,11 @@ NuGet follows the [.NET Foundation Contributors Code of Conduct](https://github. No contribution is too big or too small. -1. Visit the page to edit on [docs.microsoft.com/nuget](https://docs.microsoft.com/nuget/), then click the **Edit** button on the top right. This brings you to the appropriate markdown page in the repo. +1. Visit the page to edit in [NuGet documentation](https://docs.microsoft.com/nuget/), then click the **Edit** button on the top right. This brings you to the appropriate markdown page in the repo. 1. Edit the markdown: 1. If you're including images (use PNGs, generally), place them in the media folder that's in the topic's folder. Links are then `media/.png`. 1. Relative links to other pages in this docset should be in the form `..//.md` including the training `.md`. If you're linking to another topic in the same folder, then `..//` can be omitted. When using anchors, always remember to include the `.md` before the `#`. - 1. When using external links, especially to docs.microsoft.com (or msdn.microsoft.com for any older content), omit any language tag like "en-us" so that a reader in another language lands on a target page in that same language if it's available. + 1. When using external links, especially to Microsoft Docs (or msdn.microsoft.com for any older content), omit any language tag like "en-us" so that a reader in another language lands on a target page in that same language if it's available. 1. When you're done, enter a commit message below, and click **Propose file change**. 1. Send a pull request for your change. We review PRs on a regular basis. 1. Thank you! @@ -96,7 +96,7 @@ With boldface used for UI elements, use *italics* for emphasis in the text. ### Tables -Use standard markdown tables, starting with "| heading | heading | heading |", followed by "| --- | --- | --- |", followed by your rows. The row with "---" is necessary for docs.microsoft.com to read the markdown as a table. +Use standard markdown tables, starting with "| heading | heading | heading |", followed by "| --- | --- | --- |", followed by your rows. The row with "---" is necessary for Microsoft Docs to read the markdown as a table. Items in the first column are bolded by default, so you don't need to do that explicitly. @@ -128,7 +128,7 @@ Markdown and HTML are ignored within inline code. ### Code blocks -Code blocks on docs.microsoft.com are delineated by with three grave accents (backticks), ```, at the beginning and the end. You do not need to indent code blocks unless they are contained within a list. +Code blocks on Microsoft Docs are delineated by with three grave accents (backticks), ```, at the beginning and the end. You do not need to indent code blocks unless they are contained within a list. The opening ``` should be followed by a language code for proper syntax coloring, such as "xml", "json", "csharp", etc. Use "cli" for command-line examples and "output" for command-line results. @@ -136,7 +136,7 @@ The only case when you should use ``` without a language tag is when creating a ### Callouts -docs.microsoft.com uses blockquotes for callouts, that is, lines starting with ">". +Microsoft Docs uses blockquotes for callouts, that is, lines starting with ">". Callout sections with ">" only will appear with a solid gray line to the left. See [Creating NuGet packages](https://docs.microsoft.com/nuget/create-packages/creating-a-package) for examples. @@ -153,10 +153,10 @@ You can also use one of the following callout tags on the first line that will c - In general, always use the title of the target page as the link text rather than words like "see here" or "this documentation". - Relative links to other pages in this docset should be in the form `..//.md` including the trailing `.md`. -- Links to other markdown files on docs.microsoft.com are case-insensitive (unlike links to files in GitHub, which are). +- Links to other markdown files on Microsoft Docs are case-insensitive (unlike links to files in GitHub, which are). - If you're linking to another topic in the same folder, then `..//` can be omitted. - When using anchors, always remember to include the `.md` before the `#`. -- When using external links, especially to docs.microsoft.com (or msdn.microsoft.com for any older content), omit any language tag like "en-us" so that a reader in another language lands on a target page in that same language if it's available. +- When using external links, especially to Microsoft Docs (or msdn.microsoft.com for any older content), omit any language tag like "en-us" so that a reader in another language lands on a target page in that same language if it's available. - Bare URLs are not automatically converted into links. ### Inline HTML diff --git a/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md b/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md index 49f1dc9be..3a5556428 100644 --- a/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md +++ b/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md @@ -103,7 +103,7 @@ Congratulations on installing and using your first NuGet package! ## Related video -> [!Video https://docs.microsoft.com/shows/NuGet-101/Install-and-Use-a-NuGet-Package-with-the-NET-CLI-3-of-5/player] +> [!VIDEO https://docs.microsoft.com/shows/NuGet-101/Install-and-Use-a-NuGet-Package-with-the-NET-CLI-3-of-5/player] Find more NuGet videos on [Channel 9](/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). diff --git a/docs/release-notes/NuGet-5.8.md b/docs/release-notes/NuGet-5.8.md index b0e4aa7ff..f5ec3c2ae 100644 --- a/docs/release-notes/NuGet-5.8.md +++ b/docs/release-notes/NuGet-5.8.md @@ -132,7 +132,7 @@ Thank you to all the contributors who helped make this NuGet release awesome! [omajid](https://github.com/omajid) | [3437](https://github.com/NuGet/NuGet.Client/pull/3437) | Typo in error message. "administator" instead of "administrator" - [#9662](https://github.com/NuGet/Home/issues/9662) [odalet](https://github.com/odalet) | [3341](https://github.com/NuGet/NuGet.Client/pull/3341) | NuGet Pack with invalid AssemblyInformationalVersion reports "description is required" - [#5548](https://github.com/NuGet/Home/issues/5548) [campersau](https://github.com/campersau) | [3501](https://github.com/NuGet/NuGet.Client/pull/3501) | `RepositoryMetadata.Equals()` does not account for Branch and Commit properties - [#9613](https://github.com/NuGet/Home/issues/9613) -[Youssef1313](https://github.com/Youssef1313) | [3599](https://github.com/NuGet/NuGet.Client/pull/3599) | Clicking NU code in Visual Studio Error List window should go to [https://docs.microsoft.com/nuget/reference/errors-and-warnings/](/nuget/reference/errors-and-warnings/) - [#9934](https://github.com/NuGet/Home/issues/9934) +[Youssef1313](https://github.com/Youssef1313) | [3599](https://github.com/NuGet/NuGet.Client/pull/3599) | Clicking NU code in Visual Studio Error List window should go to [Errors and warnings](/nuget/reference/errors-and-warnings/) - [#9934](https://github.com/NuGet/Home/issues/9934) [ChrisMaddock](https://github.com/ChrisMaddock) | [3624](https://github.com/NuGet/NuGet.Client/pull/3624) | Use 'https://' when adding new package source through Visual Studio options - [#9974](https://github.com/NuGet/Home/issues/9974) [Therzok](https://github.com/Therzok) | [3636](https://github.com/NuGet/NuGet.Client/pull/3636) | `RuntimeEnvironmentHelper.IsRunningOnVisualStudio` performance issue on Mono - [#9989](https://github.com/NuGet/Home/issues/9989) [thomaslevesque](https://github.com/thomaslevesque) | [3442](https://github.com/NuGet/NuGet.Client/pull/3442) | Add a TypeConverter for the SemanticVersion class - [#9125](https://github.com/NuGet/Home/issues/9125) @@ -156,4 +156,4 @@ for existing issues. For new issues within NuGet, please report a [GitHub Issue](https://github.com/NuGet/Home/issues/new). For general NuGet experience issues, let us know via the [Report a Problem](/visualstudio/ide/how-to-report-a-problem-with-visual-studio) -option found in your favorite IDE under **Help > Report a Problem**. \ No newline at end of file +option found in your favorite IDE under **Help > Report a Problem**. diff --git a/docs/what-is-nuget.md b/docs/what-is-nuget.md index b19341b73..d2996a143 100644 --- a/docs/what-is-nuget.md +++ b/docs/what-is-nuget.md @@ -32,7 +32,7 @@ A "compatible" package means that it contains assemblies built for at least one Package developers who require APIs outside of .NET Standard, on the other hand, create separate assemblies for the different target frameworks they want to support and include all of those assemblies in the same package (which is called "multi-targeting"). When a consumer installs such a package, NuGet extracts only those assemblies that are needed by the project. This minimizes the package's footprint in the final application and/or assemblies produced by that project. A multi-targeting package is, of course, more difficult for its creator to maintain. > [!Note] -> For guidance on app components vs. reusable libraries, see the [.NET Standard documentation on the topic](/dotnet/standard/net-standard?branch=master#when-to-target-net50-vs-netstandard). +> For guidance on app components vs. reusable libraries, see the [.NET Standard documentation on the topic](/dotnet/standard/net-standard?branch=main#when-to-target-net50-vs-netstandard). ## NuGet tools From 76401fd0d28f5fe46a3e384bb42dbe219ff74b8d Mon Sep 17 00:00:00 2001 From: Arturo Ortiz <58537168+aortiz-msft@users.noreply.github.com> Date: Tue, 13 Sep 2022 10:30:37 -0700 Subject: [PATCH 659/988] Update Package-Source-Mapping.md (#2885) Remove note that Source Mapping is under active development since we consider it now fully supported even though tooling support is still lacking. --- docs/consume-packages/Package-Source-Mapping.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/docs/consume-packages/Package-Source-Mapping.md b/docs/consume-packages/Package-Source-Mapping.md index 9d673f638..ec65391b8 100644 --- a/docs/consume-packages/Package-Source-Mapping.md +++ b/docs/consume-packages/Package-Source-Mapping.md @@ -128,8 +128,6 @@ Tool has several option how to generate mapping pattern depending on your need, For an idea of how your source mappings may look like, refer to our [samples repo](https://github.com/NuGet/Samples/tree/main/PackageSourceMappingExample). > [!Note] -> This feature is in active development. We appreciate you trying it out and providing any feedback you may have at [NuGet/Home](https://github.com/nuget/home/issues). -> > * There are no nuget.exe or dotnet.exe commands for managing the package source mapping configuration, see [NuGet/Home#10735](https://github.com/NuGet/Home/issues/10735). > * There are no means of mapping packages at package installation time, see [NuGet/Home#10730](https://github.com/NuGet/Home/issues/10730). > * There is a limitation when using the `DotNetCoreCLI@2` Azure Pipelines task which can be worked around by using `feed-` prefixes in your source mapping configuration. It is recommended however to use `NuGetAuthenticate` for your authentication needs and call the dotnet cli directly from a script task. See [microsoft/azure-pipelines-tasks#15542](https://github.com/microsoft/azure-pipelines-tasks/issues/15542). From ca1cb7dbcb67d5c7ae227cc9783e05372df82796 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Tue, 13 Sep 2022 10:34:54 -0700 Subject: [PATCH 660/988] Add note that NU1605 is elevated to an error (#2881) --- docs/reference/errors-and-warnings/NU1605.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docs/reference/errors-and-warnings/NU1605.md b/docs/reference/errors-and-warnings/NU1605.md index 95f70e86d..ddb00097b 100644 --- a/docs/reference/errors-and-warnings/NU1605.md +++ b/docs/reference/errors-and-warnings/NU1605.md @@ -91,3 +91,8 @@ The mvc project specified a version constraint on a higher version of a package ### Solution This specific error (with Microsoft.NETCore.App package) is improved by moving your .NET Core SDK to 2.2.100 or later. Microsoft.NETCore.App is an auto-referenced package that the .NET Core SDK before version 3.0.100 chooses to bring in automatically. Also see [Self-contained deployment runtime roll forward](/dotnet/core/deploying/runtime-patch-selection). + +> [!NOTE] +> While NU1605 is considered a warning by the NuGet tooling, the [.NET SDK](/dotnet/core/sdk) opts into treating this warning as an error through `WarningsAsErrors`. +> Your project may be upgrading this warning to an error by setting `TreatWarningsAsErrors` to `true`. +> While not recommended, as you are more likely to encounter runtime issues, you may choose to [suppress](../../consume-packages/Package-References-in-Project-Files.md#suppressing-nuget-warnings) this warning. From bba74223a360df842ffd345f0cc4cfa2a72a63ab Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Tue, 13 Sep 2022 14:08:04 -0700 Subject: [PATCH 661/988] Update the selected verison in the floating versions image (#2888) --- docs/concepts/media/floating-versions-1.png | Bin 26447 -> 26447 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/concepts/media/floating-versions-1.png b/docs/concepts/media/floating-versions-1.png index b809a5c96404ab4a69398c06cd7c7aed097497da..95b23a6b0e5d0553eb13e06d4808a599ec7117d1 100644 GIT binary patch delta 20954 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 F_J5g5)T96a From 3972e0f876f7f072098be6a877a8df44c0f8011d Mon Sep 17 00:00:00 2001 From: Daniel Jacinto Date: Fri, 16 Sep 2022 15:39:01 -0700 Subject: [PATCH 662/988] Update 2FA documentation (#2869) * update password login docs * Best Practices 2FA * Update accounts, prefix. * fix link warning. * remove unecessary question * Update docs/nuget-org/nuget-org-faq.yml Co-authored-by: Joel Verhagen * Update docs/nuget-org/nuget-org-faq.yml Co-authored-by: Joel Verhagen * remove locale and update transfer packages. * Update 2fa instructions. * Fix links. * nit. Co-authored-by: Joel Verhagen --- docs/concepts/Security-Best-Practices.md | 2 +- docs/nuget-org/id-prefix-reservation.md | 2 - docs/nuget-org/individual-accounts.md | 38 ++++-------- .../media/nuget-org-enter-code-2fa.png | Bin 16058 -> 0 bytes .../nuget-org/media/nuget-org-sign-in-2fa.png | Bin 34342 -> 0 bytes docs/nuget-org/nuget-org-faq.yml | 55 ++++-------------- 6 files changed, 25 insertions(+), 72 deletions(-) delete mode 100644 docs/nuget-org/media/nuget-org-enter-code-2fa.png delete mode 100644 docs/nuget-org/media/nuget-org-sign-in-2fa.png diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 87e00213f..2ba11c701 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -175,7 +175,7 @@ To learn more about reproducible builds, see [Producing Packages with Source Lin **📦🖊 Package Author** -Enabling two-factor authentication (2FA) can add an extra layer of security when [logging into your GitHub account](https://docs.github.com/en/github/authenticating-to-github/securing-your-account-with-two-factor-authentication-2fa) or the [NuGet.org public package repository](../nuget-org/individual-accounts.md#enable-two-factor-authentication-2fa). It is recommended that you enable two-factor authentication to protect your account. +Every account on nuget.org has 2FA enabled. This adds an extra layer of security when [logging into your GitHub account](https://docs.github.com/en/github/authenticating-to-github/securing-your-account-with-two-factor-authentication-2fa) or your [NuGet.org account](../nuget-org/individual-accounts.md#add-a-new-individual-account). ### Package ID prefix reservation diff --git a/docs/nuget-org/id-prefix-reservation.md b/docs/nuget-org/id-prefix-reservation.md index ef34b08a5..3715dcf3c 100644 --- a/docs/nuget-org/id-prefix-reservation.md +++ b/docs/nuget-org/id-prefix-reservation.md @@ -72,8 +72,6 @@ When reviewing any application for ID prefix reservation, the [NuGet.org](https: 1. Does the package ID prefix properly and clearly identify the reservation owner? -1. Has the owner [enabled 2FA for their NuGet.org account](individual-accounts.md#enable-two-factor-authentication-2fa)? - 1. Is the package ID prefix something common that should not belong to any individual owner or organization? Avoid ID prefix reservations that are shorter than four characters and avoid common or generic words. 1. Would *not* reserving the package ID prefix cause ambiguity, confusion, or other harm to the community? diff --git a/docs/nuget-org/individual-accounts.md b/docs/nuget-org/individual-accounts.md index 736513a81..a1a1b95a7 100644 --- a/docs/nuget-org/individual-accounts.md +++ b/docs/nuget-org/individual-accounts.md @@ -19,7 +19,12 @@ An organization account has one or more individual accounts as its members. Thes ## Add a new individual account -To create a NuGet.org account, you need to have a personal Microsoft account (MSA) or an Azure Active Directory (AAD) account. If you do not have one, you can [create](https://signup.live.com) one. Follow the following steps if you have an MSA or AAD account. +To create a NuGet.org account, you need to have a personal Microsoft account (MSA) or an Azure Active Directory (AAD) account. If you do not have one, you can [create](https://signup.live.com) one. NuGet.org requires all accounts to have two-factor authentication (2FA) enabled on your MSA or AAD account. You can update your settings in advance using the following links: + +* Microsoft Account (MSA): [Turning two-step verification on or off for your Microsoft account](https://support.microsoft.com/account-billing/turning-two-step-verification-on-or-off-for-your-microsoft-account-b1a56fc2-caf3-a5a1-f7e3-4309e99987ca). +* Work or school Account (AAD): [Set up Security info from a sign-in page](https://support.microsoft.com/account-billing/set-up-security-info-from-a-sign-in-page-28180870-c256-4ebf-8bd7-5335571bf9a8). + +Follow the following steps if you have an MSA or AAD account. 1. Go to the [NuGet.org login page](https://www.nuget.org/users/account/LogOn). @@ -31,6 +36,8 @@ To create a NuGet.org account, you need to have a personal Microsoft account (MS ![Giving permissions to NuGet.org](media/nuget-org-permissions.png) +1. Follow two-factor authentication (2FA) setup steps if you do not have it already enabled. + 1. You will be redirected to *nuget.org*, and asked to register a username. 1. Specify the username in the input box. Please note that the username **is** case sensitive and cannot be changed or renamed later. @@ -41,32 +48,11 @@ To create a NuGet.org account, you need to have a personal Microsoft account (MS You now have a NuGet.org account. You can perform account management on the [account settings](https://www.nuget.org/account) page. -## Enable two-factor authentication (2FA) - -Two-factor authentication, or 2FA, is an extra layer of security used when logging into websites or apps. With 2FA, you have to log in with your Microsoft Account (MSA) and provide another form of authentication that only you know or have access to. To better protect your account, enable two-factor authentication (recommended). - -1. When logged into your account, open your profile and choose **Enable** under **Login Account**. - - ![Enable 2FA](media/nuget-org-register-2fa.png) - - You will see a message that tells you that the next time you sign in to *nuget.org*, you will be asked for additional credentials. - -2. To complete the authentication at this time, sign out and then sign in again. - -3. When you sign in, choose either text or e-mail as a second form of authentication. - - Verify the phone number or e-mail that is already associated with your Microsoft account. You may need to enter a new phone number or e-mail for your account. If so, enter the required information as instructed, and click **Next**. - - ![Enable 2FA and enter phone](media/nuget-org-sign-in-2fa.png) - -4. Check your device or e-mail account, and enter the code that you were just sent. - - ![Enable 2FA and enter code](media/nuget-org-enter-code-2fa.png) - -5. Follow any additional instructions to complete Two-factor authentication. +> [!Note] +> Two-factor authentication, or 2FA, is an extra layer of security used when logging into websites or apps. With 2FA, you have to log in with your Microsoft Account (MSA) and provide another form of authentication that only you know or have access to. -> [!Tip] -> Enabling 2FA for your NuGet.org account does not impact authentication settings for other accounts or services that may be linked to the Microsoft account you use to login to NuGet.org. +> [!Note] +> 2FA for your NuGet.org account does not impact authentication settings for other accounts or services that may be linked to the Microsoft account you use to login to NuGet.org. ## Delete a NuGet.org account diff --git a/docs/nuget-org/media/nuget-org-enter-code-2fa.png b/docs/nuget-org/media/nuget-org-enter-code-2fa.png deleted file mode 100644 index 76c5614eebb9bb07bda209010f088d6d1392ce45..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16058 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 diff --git a/docs/nuget-org/media/nuget-org-sign-in-2fa.png b/docs/nuget-org/media/nuget-org-sign-in-2fa.png deleted file mode 100644 index 589fda9e83316af17ae9aaa73ae6d928de5c49a1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 34342 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 I(NF&W15l0@F8}}l diff --git a/docs/nuget-org/nuget-org-faq.yml b/docs/nuget-org/nuget-org-faq.yml index 90575fe8c..261a6ba55 100644 --- a/docs/nuget-org/nuget-org-faq.yml +++ b/docs/nuget-org/nuget-org-faq.yml @@ -104,15 +104,12 @@ sections: questions: - question: How to recover NuGet.org password login? answer: | - Please note that the [NuGet.org Password login has been discontinued](https://blog.nuget.org/20180515/NuGet.org-will-only-support-MSA-AAD-starting-June.html) and the only way to log in to NuGet.org is with a personal Microsoft account (MSA) or Azure Active Directory (AAD) account. However, in case you are unable to access your associated MSA/AAD accounts you might need to use password login for recovering your NuGet.org account. In this situation follow the steps below. - - **Requirement:** You will need to have access to the email that is associated with the account for which you need to recover the password. - - Go to the [Forgot password page](https://www.nuget.org/account/ForgotPassword) - - Enter the **email** address that is associated with the NuGet.org account you wish to recover. - - Click the **Send** button. - - You will get an email to the specified email address account with a link to reset your password. Click on this link and set the new password. If you can't find the mail check your "junk" folder. - - Once done, you can now login with username/password on NuGet. - - To login with username/password, use the **Sign in using Nuget.org account** link on the [NuGet.org login page](https://www.nuget.org/users/account/LogOn). + Please note that the [NuGet.org Password login has been discontinued](https://blog.nuget.org/20180515/NuGet.org-will-only-support-MSA-AAD-starting-June.html). Unfortunately, NuGet.org has no way to recover password accounts, you can only log in to NuGet.org with a personal Microsoft account (MSA) or Azure Active Directory (AAD) account. + If you are unable to use Microsoft login, [please follow the steps to recover your NuGet.org account](#unable-to-use-microsoft-login--how-do-i-recover-my-nuget-org-account). + + Please let us know if you need assistance in transferring ownership of your packages to a different account by sending an email to [support@nuget.org](mailto:support@nuget.org). + - question: Which Microsoft account is linked to my NuGet.org account? answer: | If you have forgotten which Microsoft account is associated with your NuGet.org account, please follow the steps below to get assistance. @@ -178,41 +175,17 @@ sections: - question: How do I find which Microsoft account is linked to this NuGet.org account? answer: | You should use the [sign in assistance](#which-microsoft-account-is-linked-to-my-nuget-org-account) flow to figure out which Microsoft account is linked to the NuGet.org account with the email address `account1@outlook.com`. - - - question: I want to override that account with my Microsoft account - answer: | - Follow the steps in [Unable to use microsoft login, how do I recover my NuGet.org account](#unable-to-use-microsoft-login--how-do-i-recover-my-nuget-org-account) section to associate your Microsoft account with the existing NuGet.org account. - - - question: Unable to use microsoft login, how do I recover my NuGet.org account? + + - question: Unable to use Microsoft login, how do I recover my NuGet.org account? answer: | - If you tried using the [sign in assistance](#which-microsoft-account-is-linked-to-my-nuget-org-account) and you do not have access to the Microsoft account that is associated with your NuGet.org account, please follow the steps below to link a new Microsoft account to your NuGet.org account. - 1. **Requirement**: You will need access to a Microsoft account which is not associated with any existing NuGet.org accounts. If you do not have one, you can [create](https://signup.live.com) one. - 2. If you've forgotten your username and password for your NuGet.org account, follow the [steps to recover your password login](#how-to-recover-nuget-org-password-login). - 3. [Login to NuGet.org](https://www.nuget.org/users/account/LogOnNuGetAccount) using the username/password login. - 4. Once logged in, you will see the popup dialog show up like below. This is the password discontinuation dialog box. - 5. **NOTE**: Please ignore the instruction to login with the specified Microsoft account. You can now link your NuGet.org account to any other Microsoft login. - 6. Click on the button **Sign in with Microsoft** and login with the Microsoft account that you have an access to, as mentioned in step 1. - 7. Your account will now be linked to the new Microsoft account, which you can use to log into NuGet.org going forward. - - ![Link MSA Dialog](media/link-msa-dialog.png) + If you tried using the [sign in assistance](#which-microsoft-account-is-linked-to-my-nuget-org-account) and you do not have access to the Microsoft account that is associated with your NuGet.org account, please contact your Microsoft account support: + - Microsoft Account (MSA): [Get help with your Microsoft account](https://support.microsoft.com/account-billing/get-help-with-your-microsoft-account-ace6f3b3-e2d3-aeb1-6b96-d2e9e7e52133) + - Work or school account (AAD): [Work or school account help](https://support.microsoft.com/account-billing/work-or-school-account-help-718b3d92-a8a7-4656-8a05-c0228d346b7d) or contact your admin tenant. + - question: How to transform my NuGet.org account to an organization? answer: | - If you want to transform your account to an organization, and this account is already associated with a Microsoft account login, please follow the steps given in the documentation for [organizations on nuget org](organizations-on-nuget-org.md). - - If, however, your NuGet.org account is not associated/linked with a Microsoft account, you can follow the steps below to transform this account to an organization. - 1. **Requirement**: You need to have an individual account first created on NuGet.org to be used as an admin on the org account. If you do not have one, please [create a new NuGet.org account](individual-accounts.md) - 2. Follow the [steps to recover your password login](#how-to-recover-nuget-org-password-login) for your NuGet.org account if you do not have password login for it, if you do, skip this step. - 3. [Login to NuGet.org](https://www.nuget.org/users/account/LogOnNuGetAccount) using the username/password login. - 4. Once logged in, you will see the popup dialog show up like below. This is the password discontinuation dialog box. - > [!Important] - > Ignore this dialog box, **do not** click on the **Sign in with microsoft** button. - - 5. Go to [https://www.nuget.org/account/transform](https://www.nuget.org/account/transform). This will allow you to convert the NuGet.org account to an org without linking to a Microsoft account. - 6. Specify the admin username for your personal NuGet.org account/the account you created in Step 1. - 7. Follow the instructions to complete transformation of this account to an organization. - - ![Link MSA Dialog](media/link-msa-dialog.png) + If you want to transform your account to an organization, please follow the steps given in the documentation for [organizations on nuget.org](organizations-on-nuget-org.md). - question: NuGet.org login issues for AAD accounts with unmanaged tenant? answer: | @@ -232,10 +205,6 @@ sections: If you want to login to NuGet.org with your Microsoft account(@yourdomain.com), you(or an administrator at your company) will need to claim the ownership of the AAD by doing a DNS validation to authenticate users with email address "@yourdomain.com". Please follow the steps for [domains admin takeover](/azure/active-directory/users-groups-roles/domains-admin-takeover) documented by the Azure Active directory. Once this is done, your normal login should start working. - - question: I don’t want to do all that, what is the other way to recover my account? - answer: | - You can [create](https://www.microsoft.com/account) a new Microsoft account (with an email **not** associated with @yourdomain.com). Follow steps given in [recover your NuGet.org account](#unable-to-use-microsoft-login--how-do-i-recover-my-nuget-org-account) section. - - question: How do I change my NuGet.org account username? answer: | You cannot. As a matter of policy we do not allow the change of usernames. Also, doing so is a breaking change for users that may have defined [package trust policies based on the package owner](../consume-packages/installing-signed-packages.md#trust-package-owners). The only way to change your username is to create a new account with the desired username. We recommend you delete your existing account before you create a new one, otherwise you will not be able to reuse your registered Microsoft account. From 0e86bf44f76aff430fd9f14efe8eb966a3e9bd20 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 19 Sep 2022 17:10:40 -0500 Subject: [PATCH 663/988] Add clarification about live changes. --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 3b658dd8b..8d57524cb 100644 --- a/README.md +++ b/README.md @@ -29,6 +29,8 @@ No contribution is too big or too small. 1. Send a pull request for your change. We review PRs on a regular basis. 1. Thank you! +> **If your content is not live yet, there is a manual `main` -> `live` pull request that is needed to pick-up the changes. Please create a PR or ping a docs owner to do so on your behalf.** + If you're creating a new topic, keep the following in mind as well: 1. Always place the new topic in an appropriate subfolder, and follow the conventions for filenames as you see them used here. From b37678f499c098181198e7409adb9d9fd7e384a5 Mon Sep 17 00:00:00 2001 From: Alex Buck Date: Tue, 20 Sep 2022 20:23:13 -0400 Subject: [PATCH 664/988] [BULK UPDATE] DocuTune - Rebranding links (#2893) --- docs/concepts/Security-Best-Practices.md | 2 +- docs/create-packages/includes/add-description.md | 6 +++--- docs/guides/Create-UI-Controls.md | 2 +- .../create-and-publish-a-package-using-the-dotnet-cli.md | 2 +- .../create-and-publish-a-package-using-visual-studio.md | 2 +- .../install-and-use-a-package-using-the-dotnet-cli.md | 2 +- docs/visual-studio-extensibility/Visual-Studio-Templates.md | 2 +- docs/what-is-nuget.md | 2 +- 8 files changed, 10 insertions(+), 10 deletions(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 2ba11c701..32fa1f076 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -197,6 +197,6 @@ To learn how to deprecate and unlist a package, see the following documentation Your software supply chain is anything that goes into or affects your code. Even though supply chain compromises are real and growing in popularity, they are still rare; so the most important thing you can do is protect your supply chain by **being aware of your dependencies, managing your dependencies** and **monitoring your supply chain.** -You learned about various methods that NuGet and [GitHub](/learn/modules/maintain-secure-repository-github/) provide that are available to you today to be more effective in viewing, managing, and monitoring your supply chain. +You learned about various methods that NuGet and [GitHub](/training/modules/maintain-secure-repository-github/) provide that are available to you today to be more effective in viewing, managing, and monitoring your supply chain. For more information about securing the world's software, see [The State of the Octoverse 2020 Security Report](https://octoverse.github.com/static/github-octoverse-2020-security-report.pdf). diff --git a/docs/create-packages/includes/add-description.md b/docs/create-packages/includes/add-description.md index 7d64843f1..62111c133 100644 --- a/docs/create-packages/includes/add-description.md +++ b/docs/create-packages/includes/add-description.md @@ -12,9 +12,9 @@ The following example shows a `Description` in the *.csproj* file for a .NET pac This client library enables working with the Microsoft Azure Storage Blob service for storing binary and text data. For this release see notes - https://github.com/Azure/azure-sdk-for-net/blob/master/sdk/storage/Azure.Storage.Blobs/README.md and https://github.com/Azure/azure-sdk-for-net/blob/master/sdk/storage/Azure.Storage.Blobs/CHANGELOG.md in addition to the breaking changes https://github.com/Azure/azure-sdk-for-net/blob/master/sdk/storage/Azure.Storage.Blobs/BreakingChanges.txt - Microsoft Azure Storage quickstarts and tutorials - https://docs.microsoft.com/en-us/azure/storage/ - Microsoft Azure Storage REST API Reference - https://docs.microsoft.com/en-us/rest/api/storageservices/ - REST API Reference for Blob Service - https://docs.microsoft.com/en-us/rest/api/storageservices/blob-service-rest-api + Microsoft Azure Storage quickstarts and tutorials - https://learn.microsoft.com/azure/storage/ + Microsoft Azure Storage REST API Reference - https://learn.microsoft.com/rest/api/storageservices/ + REST API Reference for Blob Service - https://learn.microsoft.com/rest/api/storageservices/blob-service-rest-api diff --git a/docs/guides/Create-UI-Controls.md b/docs/guides/Create-UI-Controls.md index 6401326ea..80a7b7c8f 100644 --- a/docs/guides/Create-UI-Controls.md +++ b/docs/guides/Create-UI-Controls.md @@ -161,4 +161,4 @@ For an example, refer to [MyCustomControl.cs](https://github.com/NuGet/Samples/b ## See also - [Create UWP Packages](create-uwp-packages.md) -- [ExtensionSDKasNuGetPackage sample](https://github.com/NuGet/Samples/tree/main/ExtensionSDKasNuGetPackage) \ No newline at end of file +- [ExtensionSDKasNuGetPackage sample](https://github.com/NuGet/Samples/tree/main/ExtensionSDKasNuGetPackage) diff --git a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md index ef85ba98c..5ee25e365 100644 --- a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md +++ b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md @@ -100,7 +100,7 @@ Congratulations on creating and publishing your first NuGet package! ## Related video -> [!Video https://docs.microsoft.com/shows/NuGet-101/Create-and-Publish-a-NuGet-Package-with-the-NET-CLI-5-of-5/player] +> [!Video https://learn.microsoft.com/shows/NuGet-101/Create-and-Publish-a-NuGet-Package-with-the-NET-CLI-5-of-5/player] Find more NuGet videos on [Channel 9](/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). diff --git a/docs/quickstart/create-and-publish-a-package-using-visual-studio.md b/docs/quickstart/create-and-publish-a-package-using-visual-studio.md index 3d05c7796..8a5afa509 100644 --- a/docs/quickstart/create-and-publish-a-package-using-visual-studio.md +++ b/docs/quickstart/create-and-publish-a-package-using-visual-studio.md @@ -233,7 +233,7 @@ In this example, the property specifies a file named *readme.txt* in the project ## Related video -> [!VIDEO https://docs.microsoft.com/shows/NuGet-101/Create-and-Publish-a-NuGet-Package-with-Visual-Studio-4-of-5/player] +> [!VIDEO https://learn.microsoft.com/shows/NuGet-101/Create-and-Publish-a-NuGet-Package-with-Visual-Studio-4-of-5/player] Find more NuGet videos on [Channel 9](/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). diff --git a/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md b/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md index 3a5556428..33a9f36d3 100644 --- a/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md +++ b/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md @@ -103,7 +103,7 @@ Congratulations on installing and using your first NuGet package! ## Related video -> [!VIDEO https://docs.microsoft.com/shows/NuGet-101/Install-and-Use-a-NuGet-Package-with-the-NET-CLI-3-of-5/player] +> [!VIDEO https://learn.microsoft.com/shows/NuGet-101/Install-and-Use-a-NuGet-Package-with-the-NET-CLI-3-of-5/player] Find more NuGet videos on [Channel 9](/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). diff --git a/docs/visual-studio-extensibility/Visual-Studio-Templates.md b/docs/visual-studio-extensibility/Visual-Studio-Templates.md index be705fc5e..6e12d412e 100644 --- a/docs/visual-studio-extensibility/Visual-Studio-Templates.md +++ b/docs/visual-studio-extensibility/Visual-Studio-Templates.md @@ -133,7 +133,7 @@ SDKs that are installed using an MSI can install NuGet packages directly on the ```xml NuGet Package Manager - http://docs.microsoft.com/nuget/ + http://learn.microsoft.com/nuget/ ``` diff --git a/docs/what-is-nuget.md b/docs/what-is-nuget.md index d2996a143..b66de09cb 100644 --- a/docs/what-is-nuget.md +++ b/docs/what-is-nuget.md @@ -106,7 +106,7 @@ Take a moment to browse the table of contents for this documentation, and you se ## Related video -> [!Video https://docs.microsoft.com/shows/NuGet-101/What-is-NuGet-1-of-5/player] +> [!Video https://learn.microsoft.com/shows/NuGet-101/What-is-NuGet-1-of-5/player] Find more NuGet videos on [Channel 9](/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). From 24736fd4987aa87e8a7d84557bf30da6b1294af9 Mon Sep 17 00:00:00 2001 From: Alex Buck Date: Tue, 20 Sep 2022 20:23:39 -0400 Subject: [PATCH 665/988] [BULK] DocuTune - Rebranding (#2894) --- CONTRIBUTING.md | 2 +- README.md | 16 ++++++++-------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 50756f0a3..f056b0c86 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,6 +1,6 @@ No contribution is too big or too small. -1. Visit the page to edit in the [NuGet documentation](https://docs.microsoft.com/nuget/), then click the **Edit** button on the top right. This brings you to the appropriate markdown page in the repo. +1. Visit the page to edit in the [NuGet documentation](https://learn.microsoft.com/nuget/), then click the **Edit** button on the top right. This brings you to the appropriate markdown page in the repo. 1. Edit the markdown: 1. If you're including images (use PNGs, generally), place them in the media folder that's in the topic's folder. Links are then `media/.png`. 1. Relative links to other pages in this docset should be in the form `..//.md` including the training `.md`. If you're linking to another topic in the same folder, then `..//` can be omitted. When using anchors, always remember to include the `.md` before the `#`. diff --git a/README.md b/README.md index 8d57524cb..4120ae159 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # docs.microsoft.com-nuget -The NuGet documentation contained in this repository is hosted in [NuGet documentation](https://docs.microsoft.com/nuget/). This repository was migrated from the former NuGetDocs repository, https://github.com/NuGet/NuGetDocs, which is no longer in active use. +The NuGet documentation contained in this repository is hosted in [NuGet documentation](https://learn.microsoft.com/nuget/). This repository was migrated from the former NuGetDocs repository, https://github.com/NuGet/NuGetDocs, which is no longer in active use. Contributions to this docset are welcome. Please submit PRs to the *main* branch. The main branch is used for staging changes which is periodically merged into the *live* branch which is what's published to the live docs site. @@ -9,7 +9,7 @@ NuGet follows the [.NET Foundation Contributors Code of Conduct](https://github. ## Repository structure - All markdown files are in the docs folder and various subfolders. -- The docs/index.md file defines the landing (hub) page as it appears in the [NuGet documentation](https://docs.microsoft.com/nuget). +- The docs/index.md file defines the landing (hub) page as it appears in the [NuGet documentation](https://learn.microsoft.com/nuget). - The docs/TOC.md file defines the left-hand navigation panel that appears when you navigate to any page other than the hub page. - Images are contained within media folders within each subfolder. - The docs/docfx.json file contains various defaults, especially for metadata. @@ -20,7 +20,7 @@ NuGet follows the [.NET Foundation Contributors Code of Conduct](https://github. No contribution is too big or too small. -1. Visit the page to edit in [NuGet documentation](https://docs.microsoft.com/nuget/), then click the **Edit** button on the top right. This brings you to the appropriate markdown page in the repo. +1. Visit the page to edit in [NuGet documentation](https://learn.microsoft.com/nuget/), then click the **Edit** button on the top right. This brings you to the appropriate markdown page in the repo. 1. Edit the markdown: 1. If you're including images (use PNGs, generally), place them in the media folder that's in the topic's folder. Links are then `media/.png`. 1. Relative links to other pages in this docset should be in the form `..//.md` including the training `.md`. If you're linking to another topic in the same folder, then `..//` can be omitted. When using anchors, always remember to include the `.md` before the `#`. @@ -140,16 +140,16 @@ The only case when you should use ``` without a language tag is when creating a Microsoft Docs uses blockquotes for callouts, that is, lines starting with ">". -Callout sections with ">" only will appear with a solid gray line to the left. See [Creating NuGet packages](https://docs.microsoft.com/nuget/create-packages/creating-a-package) for examples. +Callout sections with ">" only will appear with a solid gray line to the left. See [Creating NuGet packages](https://learn.microsoft.com/nuget/create-packages/creating-a-package) for examples. You can also use one of the following callout tags on the first line that will create a shaded callout in the indicated color: | Tag | Callout use | Topic with examples | | --- | --- | --- | -| `> [!Note]` | Callouts without any special emphasis. | [Creating NuGet packages](https://docs.microsoft.com/nuget/create-packages/creating-a-package) | -| `> [!Tip]` | Callouts that share special tips and tricks or other helpful knowledge. | [Package consumption overview](https://docs.microsoft.com/nuget/consume-packages/overview-and-workflow) | -| `> [!Important]` | Callouts that describe cautions. | [NuGet.Server](https://docs.microsoft.com/nuget/hosting-packages/nuget-server) | -| `> [!Warning]` | Callouts that warn readers about situations that could cause data loss or unexpected consequences. | [Dependency resolution](https://docs.microsoft.com/nuget/consume-packages/dependency-resolution) | +| `> [!Note]` | Callouts without any special emphasis. | [Creating NuGet packages](https://learn.microsoft.com/nuget/create-packages/creating-a-package) | +| `> [!Tip]` | Callouts that share special tips and tricks or other helpful knowledge. | [Package consumption overview](https://learn.microsoft.com/nuget/consume-packages/overview-and-workflow) | +| `> [!Important]` | Callouts that describe cautions. | [NuGet.Server](https://learn.microsoft.com/nuget/hosting-packages/nuget-server) | +| `> [!Warning]` | Callouts that warn readers about situations that could cause data loss or unexpected consequences. | [Dependency resolution](https://learn.microsoft.com/nuget/consume-packages/dependency-resolution) | ### Links From b5cb62be59f6aaf4ddc72c3434a81d71001e9cfe Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Wed, 21 Sep 2022 08:54:57 -0700 Subject: [PATCH 666/988] improve the NU1803 details. (#2889) --- docs/reference/errors-and-warnings/NU1803.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/reference/errors-and-warnings/NU1803.md b/docs/reference/errors-and-warnings/NU1803.md index ef20a05d3..946f589bf 100644 --- a/docs/reference/errors-and-warnings/NU1803.md +++ b/docs/reference/errors-and-warnings/NU1803.md @@ -20,4 +20,6 @@ You are running the 'restore' operation with an 'HTTP' source, 'http://api.sourc You may need to do one of the following: - Correct the specified url. You may have mistyped the source url. Change the url to explicitly request the `HTTPS` version of the source. -- Work with the owner of the source and ask them to migrate to `HTTPS`. \ No newline at end of file +- Work with the owner of the source and ask them to migrate to `HTTPS`. + +To learn more, refer to the [HTTPS everywhere](https://devblogs.microsoft.com/nuget/https-everywhere) blog. From 5f7e95abe1623eb789daa913d7c87e54b144340c Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Wed, 21 Sep 2022 08:56:54 -0700 Subject: [PATCH 667/988] NUGET_ENABLE_ENHANCED_HTTP_RETRY is by default true (#2891) In https://github.com/NuGet/NuGet.Client/pull/4403, we enabled enhanced HTTP retry feature by default. --- docs/reference/cli-reference/cli-ref-environment-variables.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/cli-reference/cli-ref-environment-variables.md b/docs/reference/cli-reference/cli-ref-environment-variables.md index d0d54723d..fd69e1e49 100644 --- a/docs/reference/cli-reference/cli-ref-environment-variables.md +++ b/docs/reference/cli-reference/cli-ref-environment-variables.md @@ -34,6 +34,6 @@ The list of properties documented in [NuGet pack and restore as MSBuild targets] | NUGET_UPDATEFILETIME_MAXRETRIES | Sets the number of times NuGet will attempt to set the file timestamp when extracting packages. | On Windows anti-virus software might temporarily open files, preventing NuGet from changing the timestamp. NuGet uses an exponential back-off where the wait duration between attempts is `Math.Pow(2, retryNumber)`. The default max retries is 9, meaning the default total wait duration before failure will be approximately one second. | | NUGET_XMLDOC_MODE | Determines how assemblies XML documentation file extraction should be handled. | Supported modes are *skip* (do not extract XML documentation files), *compress* (store XML doc files as a zip archive) or *none* (default, treat XML doc files as regular files). | | NUGET_CERT_REVOCATION_MODE | Determines how the revocation status check of the certificate used to sign a package, is performed when a signed package is installed or restored. When not set, defaults to `online`.| Possible values *online* (default), *offline*. Related to [NU3028](../errors-and-warnings/NU3028.md) | -| NUGET_ENABLE_ENHANCED_HTTP_RETRY | Enables or disables enhanced HTTP retry in NuGet. | Possible values are `true` or `false` (default) | +| NUGET_ENABLE_ENHANCED_HTTP_RETRY | Enables or disables enhanced HTTP retry in NuGet. | Possible values are `true` (default) or `false`. | | NUGET_ENHANCED_MAX_NETWORK_TRY_COUNT | Configures the maximum number of times an HTTP connection should be retried when enhanced retries are enabled. | A number representing how many retries to perform, the default value is `6`. | | NUGET_ENHANCED_NETWORK_RETRY_DELAY_MILLISECONDS | Configures the amount of time to wait in milliseconds before retrying an HTTP connection when enhanced retries are enabled. | Number of millseconds to wait, the default value is `1000`. | From b4b9bd1cd844b4a439a73b13b4338cd313b95649 Mon Sep 17 00:00:00 2001 From: Alex Buck Date: Tue, 27 Sep 2022 12:31:55 -0400 Subject: [PATCH 668/988] [BULK UPDATE] DocuTune - Rebranding (#2896) --- CONTRIBUTING.md | 29 ++++++++++++++----------- README.md | 57 ++++++++++++++++++++++++++----------------------- 2 files changed, 46 insertions(+), 40 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index f056b0c86..4dc8c6b90 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -4,7 +4,7 @@ No contribution is too big or too small. 1. Edit the markdown: 1. If you're including images (use PNGs, generally), place them in the media folder that's in the topic's folder. Links are then `media/.png`. 1. Relative links to other pages in this docset should be in the form `..//.md` including the training `.md`. If you're linking to another topic in the same folder, then `..//` can be omitted. When using anchors, always remember to include the `.md` before the `#`. - 1. When using external links, especially to Microsoft Docs (or msdn.microsoft.com for any older content), omit any language tag like "en-us" so that a reader in another language lands on a target page in that same language if it's available. + 1. When using external links, especially to Microsoft Learn, omit any language tag like "en-us" so that a reader in another language lands on a target page in that same language if it's available. 1. When you're done, enter a commit message below, and click **Propose file change**. 1. Send a pull request for your change. We review PRs on a regular basis. 1. Thank you! @@ -12,17 +12,20 @@ No contribution is too big or too small. If you're creating a new topic, keep the following in mind as well: 1. Always place the new topic in an appropriate subfolder, and follow the conventions for filenames as you see them used here. -1. You must include a metadata block as you see on other topics. Typical defaults (such as for ms.workload and ms.reviewer) are set within docs/docjx.json, so you need only change the following: - - - title: The title that appears in search results. For SEO, this ideally isn't the same as the top-level # (H1) of the article. - - description: The abstract of the article that appears in search results. - - author: the author's GitHub ID, to which issues files for this article are assigned. - - ms.author: if the author is a Microsoft employee, this is the Microsoft alias. Used for reporting and forwarding feedback from other channels. - - manager: Microsoft alias of the author's manager, if applicable. - - ms.date: the date of the last revision or review of the article in mm/dd/yyyy format (use leading zeros). This is a communication to the reader about freshness, so it's not updated for minor changes, only for more significant revisions OR when the article has reverified even if there are no changes. - - ms.topic: used to categorize the article in reports. See table below. Most articles are "conceptual". -1. In addition to adding your page, edit docs/TOC.md to add a link to that page. -1. If you're adding a top-level node to the TOC, also make an entry for it in docs/index.md. + +1. You must include a metadata block as you see on other topics. Typical defaults (such as for `ms.workload` and `ms.reviewer`) are set within `docs/docjx.json`, so you need only change the following: + + - title: The title that appears in search results. For SEO, this ideally isn't the same as the top-level # (H1) of the article. + - description: The abstract of the article that appears in search results. + - author: the author's GitHub ID, to which issues files for this article are assigned. + - ms.author: if the author is a Microsoft employee, this is the Microsoft alias. Used for reporting and forwarding feedback from other channels. + - manager: Microsoft alias of the author's manager, if applicable. + - ms.date: the date of the last revision or review of the article in mm/dd/yyyy format (use leading zeros). This is a communication to the reader about freshness, so it's not updated for minor changes, only for more significant revisions OR when the article has reverified even if there are no changes. + - ms.topic: used to categorize the article in reports. See table below. Most articles are "conceptual". + +1. In addition to adding your page, edit `docs/TOC.md` to add a link to that page. + +1. If you're adding a top-level node to the TOC, also make an entry for it in `docs/index.md`. | ms.topic category | Description | | --- | --- | @@ -31,4 +34,4 @@ If you're creating a new topic, keep the following in mind as well: | quickstart | Anything under the "Quickstart" node in the TOC that's authored according to Quickstart guidelines. | | tutorial | Anything under the "Tutorial" node in the TOC that's authored according to Tutorial guidelines. | | reference | Any reference-type article that isn't auto-generated. | -| article | Use for community-contributed content (that is, anything from outside the engineering team or the docs team at Microsoft. | +| article | Use for community-contributed content (that is, anything from outside the engineering team or the content team at Microsoft. | diff --git a/README.md b/README.md index 4120ae159..228309285 100644 --- a/README.md +++ b/README.md @@ -2,19 +2,19 @@ The NuGet documentation contained in this repository is hosted in [NuGet documentation](https://learn.microsoft.com/nuget/). This repository was migrated from the former NuGetDocs repository, https://github.com/NuGet/NuGetDocs, which is no longer in active use. -Contributions to this docset are welcome. Please submit PRs to the *main* branch. The main branch is used for staging changes which is periodically merged into the *live* branch which is what's published to the live docs site. +Contributions to this docset are welcome. Please submit PRs to the *main* branch. The main branch is used for staging changes which is periodically merged into the *live* branch which is what's published to the live Microsoft Learn site. NuGet follows the [.NET Foundation Contributors Code of Conduct](https://github.com/dotnet/home/blob/master/guidance/be-nice.md). Please take a few minutes to review it. ## Repository structure -- All markdown files are in the docs folder and various subfolders. -- The docs/index.md file defines the landing (hub) page as it appears in the [NuGet documentation](https://learn.microsoft.com/nuget). -- The docs/TOC.md file defines the left-hand navigation panel that appears when you navigate to any page other than the hub page. +- All markdown files are in the `docs` folder and various subfolders. +- The `docs/index.md` file defines the landing (hub) page as it appears in the [NuGet documentation](https://learn.microsoft.com/nuget). +- The `docs/TOC.md` file defines the left-hand navigation panel that appears when you navigate to any page other than the hub page. - Images are contained within media folders within each subfolder. -- The docs/docfx.json file contains various defaults, especially for metadata. -- The docs/.openpublishing.redirection.json file contains redirects for old filenames; if you rename a file, create an entry here that maps the old to the new. -- The docs/_breadcrumb/toc.yml file defines the breadcrumbs that appear on the site and their target pages. Be mindful of this if you make changes to filenames or placement of articles. +- The `docs/docfx.json` file contains various defaults, especially for metadata. +- The `docs/.openpublishing.redirection.json` file contains redirects for old filenames; if you rename a file, create an entry here that maps the old to the new. +- The `docs/_breadcrumb/toc.yml` file defines the breadcrumbs that appear on the site and their target pages. Be mindful of this if you make changes to filenames or placement of articles. ## Contribution workflow @@ -24,27 +24,30 @@ No contribution is too big or too small. 1. Edit the markdown: 1. If you're including images (use PNGs, generally), place them in the media folder that's in the topic's folder. Links are then `media/.png`. 1. Relative links to other pages in this docset should be in the form `..//.md` including the training `.md`. If you're linking to another topic in the same folder, then `..//` can be omitted. When using anchors, always remember to include the `.md` before the `#`. - 1. When using external links, especially to Microsoft Docs (or msdn.microsoft.com for any older content), omit any language tag like "en-us" so that a reader in another language lands on a target page in that same language if it's available. + 1. When using external links, especially to Microsoft Learn, omit any language tag like "en-us" so that a reader in another language lands on a target page in that same language if it's available. 1. When you're done, enter a commit message below, and click **Propose file change**. 1. Send a pull request for your change. We review PRs on a regular basis. 1. Thank you! -> **If your content is not live yet, there is a manual `main` -> `live` pull request that is needed to pick-up the changes. Please create a PR or ping a docs owner to do so on your behalf.** +> **If your content is not live yet, there is a manual `main` -> `live` pull request that is needed to pick-up the changes. Please create a PR or ping a content owner to do so on your behalf.** If you're creating a new topic, keep the following in mind as well: 1. Always place the new topic in an appropriate subfolder, and follow the conventions for filenames as you see them used here. -1. You must include a metadata block as you see on other topics. Typical defaults (such as for ms.workload and ms.reviewer) are set within docs/docjx.json, so you need only change the following: - - - title: The title that appears in search results. For SEO, this ideally isn't the same as the top-level # (H1) of the article. - - description: The abstract of the article that appears in search results. - - author: the author's GitHub ID, to which issues files for this article are assigned. - - ms.author: if the author is a Microsoft employee, this is the Microsoft alias. Used for reporting and forwarding feedback from other channels. - - manager: Microsoft alias of the author's manager, if applicable. - - ms.date: the date of the last revision or review of the article in mm/dd/yyyy format (use leading zeros). This is a communication to the reader about freshness, so it's not updated for minor changes, only for more significant revisions OR when the article has reverified even if there are no changes. - - ms.topic: used to categorize the article in reports. See table below. Most articles are "conceptual". -1. In addition to adding your page, edit docs/TOC.md to add a link to that page. -1. If you're adding a top-level node to the TOC, also make an entry for it in docs/index.md. + +1. You must include a metadata block as you see on other topics. Typical defaults (such as for `ms.workload` and `ms.reviewer`) are set within `docs/docjx.json`, so you need only change the following: + + - title: The title that appears in search results. For SEO, this ideally isn't the same as the top-level # (H1) of the article. + - description: The abstract of the article that appears in search results. + - author: the author's GitHub ID, to which issues files for this article are assigned. + - ms.author: if the author is a Microsoft employee, this is the Microsoft alias. Used for reporting and forwarding feedback from other channels. + - manager: Microsoft alias of the author's manager, if applicable. + - ms.date: the date of the last revision or review of the article in mm/dd/yyyy format (use leading zeros). This is a communication to the reader about freshness, so it's not updated for minor changes, only for more significant revisions OR when the article has reverified even if there are no changes. + - ms.topic: used to categorize the article in reports. See table below. Most articles are "conceptual". + +1. In addition to adding your page, edit `docs/TOC.md` to add a link to that page. + +1. If you're adding a top-level node to the TOC, also make an entry for it in `docs/index.md`. | ms.topic category | Description | | --- | --- | @@ -53,7 +56,7 @@ If you're creating a new topic, keep the following in mind as well: | quickstart | Anything under the "Quickstart" node in the TOC that's authored according to Quickstart guidelines. | | tutorial | Anything under the "Tutorial" node in the TOC that's authored according to Tutorial guidelines. | | reference | Any reference-type article that isn't auto-generated. | -| article | Use for community-contributed content (that is, anything from outside the engineering team or the docs team at Microsoft. | +| article | Use for community-contributed content (that is, anything from outside the engineering team or the content team at Microsoft. | ## Conventions @@ -61,7 +64,7 @@ In general, if you don't see something described here, look in editing markdown ## Language level and terms -Because our docs can be localized into many languages other than English, topics should be written at what's called the "fifth-grade" reading level, or what a typical 11-12-year-old child would understand. In other words, avoid using college-level words if possible. +Because content can be localized into many languages other than English, topics should be written at what's called the "fifth-grade" reading level, or what a typical 11-12-year-old child would understand. In other words, avoid using college-level words if possible. To keep the tone more casual, use contractions like "you'll" and "don't". @@ -98,7 +101,7 @@ With boldface used for UI elements, use *italics* for emphasis in the text. ### Tables -Use standard markdown tables, starting with "| heading | heading | heading |", followed by "| --- | --- | --- |", followed by your rows. The row with "---" is necessary for Microsoft Docs to read the markdown as a table. +Use standard markdown tables, starting with "| heading | heading | heading |", followed by "| --- | --- | --- |", followed by your rows. The row with "---" is necessary for Microsoft Learn to read the markdown as a table. Items in the first column are bolded by default, so you don't need to do that explicitly. @@ -130,7 +133,7 @@ Markdown and HTML are ignored within inline code. ### Code blocks -Code blocks on Microsoft Docs are delineated by with three grave accents (backticks), ```, at the beginning and the end. You do not need to indent code blocks unless they are contained within a list. +Code blocks on Microsoft Learn are delineated by with three grave accents (backticks), ```, at the beginning and the end. You do not need to indent code blocks unless they are contained within a list. The opening ``` should be followed by a language code for proper syntax coloring, such as "xml", "json", "csharp", etc. Use "cli" for command-line examples and "output" for command-line results. @@ -138,7 +141,7 @@ The only case when you should use ``` without a language tag is when creating a ### Callouts -Microsoft Docs uses blockquotes for callouts, that is, lines starting with ">". +Microsoft Learn uses blockquotes for callouts, that is, lines starting with ">". Callout sections with ">" only will appear with a solid gray line to the left. See [Creating NuGet packages](https://learn.microsoft.com/nuget/create-packages/creating-a-package) for examples. @@ -155,10 +158,10 @@ You can also use one of the following callout tags on the first line that will c - In general, always use the title of the target page as the link text rather than words like "see here" or "this documentation". - Relative links to other pages in this docset should be in the form `..//.md` including the trailing `.md`. -- Links to other markdown files on Microsoft Docs are case-insensitive (unlike links to files in GitHub, which are). +- Links to other markdown files on Microsoft Learn are case-insensitive (unlike links to files in GitHub, which are). - If you're linking to another topic in the same folder, then `..//` can be omitted. - When using anchors, always remember to include the `.md` before the `#`. -- When using external links, especially to Microsoft Docs (or msdn.microsoft.com for any older content), omit any language tag like "en-us" so that a reader in another language lands on a target page in that same language if it's available. +- When using external links, especially to Microsoft Learn, omit any language tag like "en-us" so that a reader in another language lands on a target page in that same language if it's available. - Bare URLs are not automatically converted into links. ### Inline HTML From 25259ee1e100763685c5e5e1a115ab13d41d35fe Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Wed, 28 Sep 2022 13:18:06 -0500 Subject: [PATCH 669/988] change title --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 228309285..0fc54465b 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# docs.microsoft.com-nuget +# NuGet Docs The NuGet documentation contained in this repository is hosted in [NuGet documentation](https://learn.microsoft.com/nuget/). This repository was migrated from the former NuGetDocs repository, https://github.com/NuGet/NuGetDocs, which is no longer in active use. From dc6037ec790f065dfe000572d99074bef5b278c8 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Thu, 29 Sep 2022 10:51:43 -0500 Subject: [PATCH 670/988] Update NU1105.md Fixes #2159 --- docs/reference/errors-and-warnings/NU1105.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/errors-and-warnings/NU1105.md b/docs/reference/errors-and-warnings/NU1105.md index 365ba0e43..10828c853 100644 --- a/docs/reference/errors-and-warnings/NU1105.md +++ b/docs/reference/errors-and-warnings/NU1105.md @@ -15,7 +15,7 @@ f1_keywords:
Unable to read project information for 'ProjectFile'. The project file may be invalid or missing targets required for restore.
### Issue -The project file exists but no restore information was provided for it. +The project file exists but no restore information was provided for it. Ensure you are [opening a project with the new project system or the legacy project system](https://github.com/dotnet/project-system/blob/main/docs/opening-with-new-project-system.md#opening-with-the-new-project-system). ### Solution From 1e6ffb733ede185257a34038b2b25a5e5591a80c Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Thu, 29 Sep 2022 14:54:25 -0500 Subject: [PATCH 671/988] Add a table item for protocol-version (#2903) * Add a table item for protocol-version Fixes #704 * Update protocol version * Update docs/reference/nuget-config-file.md Co-authored-by: Nikolche Kolev * Remove localization Co-authored-by: Nikolche Kolev --- docs/reference/nuget-config-file.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/reference/nuget-config-file.md b/docs/reference/nuget-config-file.md index 5b7335274..c48453f33 100644 --- a/docs/reference/nuget-config-file.md +++ b/docs/reference/nuget-config-file.md @@ -113,9 +113,9 @@ Note that the source URL for nuget.org is `https://api.nuget.org/v3/index.json`. Lists all known package sources. The order is ignored during restore operations and with any project using the PackageReference format. NuGet respects the order of sources for install and update operations with projects using `packages.config`. -| Key | Value | -| --- | --- | -| (name to assign to the package source) | The path or URL of the package source. | +| Key | Value | protocolVersion | +| --- | --- | --- | +| (name to assign to the package source) | The path or URL of the package source. | The NuGet server protocol version to be used. The current version is "3". Defaults to version "2" when not pointing to a package source URL ending in `.json` (e.g. https://api.nuget.org/v3/index.json). Supported in [NuGet 3.0+](https://learn.microsoft.com/nuget/release-notes/nuget-3.0.0). See [NuGet Server API](https://learn.microsoft.com/nuget/api/overview) for more information about the version 3 protocol. | **Example**: From 55084d80c576c3e3c8dea69b9ee8f7e204819d43 Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Thu, 29 Sep 2022 13:02:06 -0700 Subject: [PATCH 672/988] Remove symbolsource no longer relevant (#2897) * Remove symbolsource.org no longer relevant --- docs/reference/cli-reference/cli-ref-push.md | 2 +- docs/release-notes/NuGet-1.3.md | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/docs/reference/cli-reference/cli-ref-push.md b/docs/reference/cli-reference/cli-ref-push.md index 1a547d9e7..b51fd897d 100644 --- a/docs/reference/cli-reference/cli-ref-push.md +++ b/docs/reference/cli-reference/cli-ref-push.md @@ -70,7 +70,7 @@ where `` identifies the package to push to the server. - **`-SymbolSource`** - *(3.5+)* Specifies the symbol server URL; nuget.smbsrc.net is used when pushing to nuget.org + Specifies the symbol server URL. - **`-SymbolApiKey`** diff --git a/docs/release-notes/NuGet-1.3.md b/docs/release-notes/NuGet-1.3.md index a11854951..de62ac8dc 100644 --- a/docs/release-notes/NuGet-1.3.md +++ b/docs/release-notes/NuGet-1.3.md @@ -25,6 +25,9 @@ The easy way to publish NuGet packages with sources. You can also watch a live d feature as part of the NuGet in Depth talk at Mix11. This feature is fully demonstrated starting at the 20 minute mark of the video. +> [!NOTE] +> The above is deprecated and no longer supported. + ### `Open-PackagePage` Command This command makes it easy to get to the project page for a package from within the Package Manager From b024470dc2e08a2391b134c4cb29729e7f6e1108 Mon Sep 17 00:00:00 2001 From: Matthias Hirschi Date: Mon, 3 Oct 2022 14:58:15 +0200 Subject: [PATCH 673/988] Fix project end tag in example xmls (#2904) --- docs/consume-packages/Central-Package-Management.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/consume-packages/Central-Package-Management.md b/docs/consume-packages/Central-Package-Management.md index ffadf9de1..f5ca37d46 100644 --- a/docs/consume-packages/Central-Package-Management.md +++ b/docs/consume-packages/Central-Package-Management.md @@ -139,7 +139,7 @@ defined centrally. - + ``` ```xml @@ -150,7 +150,7 @@ defined centrally. - + ``` You can disable this feature by setting the MSBuild property `EnablePackageVersionOverride` to `false` in a project or in a `Directory.Packages.props` or From 726ff44f09287406d9352a6b0f75dfd944d43757 Mon Sep 17 00:00:00 2001 From: Ian Rathbone Date: Mon, 3 Oct 2022 16:30:25 +0100 Subject: [PATCH 674/988] Updated advisory on project.json content being deprecated in line with other docs in archive as per #2648 (#2907) --- docs/archive/project-json.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/archive/project-json.md b/docs/archive/project-json.md index e091f0837..ec21cf7e0 100644 --- a/docs/archive/project-json.md +++ b/docs/archive/project-json.md @@ -9,6 +9,9 @@ ms.topic: reference # project.json reference +> [!Important] +> This content is deprecated. Projects should use either the `packages.config` or PackageReference formats. + *NuGet 3.x+* The `project.json` file maintains a list of packages used in a project, known as a package management format. It supersedes `packages.config` but is in turn superseded by [PackageReference](../consume-packages/package-references-in-project-files.md) with NuGet 4.0+. From 323a6dbc4fe266c71af4c53423736c4e23fdb6d5 Mon Sep 17 00:00:00 2001 From: Ian Rathbone Date: Mon, 3 Oct 2022 16:45:15 +0100 Subject: [PATCH 675/988] Update Deprecation Screenshots as per guidance in #2525 (#2906) * Updated screenshot as per guidance in #2525 * Replaced image with better resolution than first proposed. --- docs/nuget-org/media/deprecation-vs.png | Bin 97128 -> 86678 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/nuget-org/media/deprecation-vs.png b/docs/nuget-org/media/deprecation-vs.png index 743573c4a5faad535e94eb6f65821a246ec01bff..3ea68d4292d42fd98155dcab4b418dc9f75f5e59 100644 GIT binary patch literal 86678 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
MU7fq?`!5u013a#4 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
ur?dz?kW$Vb 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 literal 97128 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 z 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 From dac11909a9840277699a07b5dc611d2841b3ebe7 Mon Sep 17 00:00:00 2001 From: Michael Kubacki Date: Tue, 4 Oct 2022 19:06:14 -0400 Subject: [PATCH 676/988] Package-Versioning.md: Fix typo (#2911) Updates "insenstive" to "insensitive". --- docs/concepts/Package-Versioning.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Package-Versioning.md b/docs/concepts/Package-Versioning.md index 1ce672de6..6ea4acc83 100644 --- a/docs/concepts/Package-Versioning.md +++ b/docs/concepts/Package-Versioning.md @@ -253,4 +253,4 @@ If you are implementing NuGet functionality in a language that does not run on . 1. `NuGetVersion` supports a 4th version segment, `Revision`, to be compatible with, or a superset of, [`System.Version`](/dotnet/api/system.version). Therefore, excluding prerelease and metadata labels, a version string is `Major.Minor.Patch.Revision`. As per version normalization described above, if `Revision` is zero, it is omit from the normalized version string. 2. `NuGetVersion` only requires the major segment to be defined. All others are optional, and are equivalent to zero. This means that `1`, `1.0`, `1.0.0`, and `1.0.0.0` are all accepted and equal. -3. `NuGetVersion` uses case insenstive string comparisons for pre-release components. This means that `1.0.0-alpha` and `1.0.0-Alpha` are equal. +3. `NuGetVersion` uses case insensitive string comparisons for pre-release components. This means that `1.0.0-alpha` and `1.0.0-Alpha` are equal. From cac572287e786a39f6519380460de9a61d20b397 Mon Sep 17 00:00:00 2001 From: Ian Rathbone Date: Wed, 5 Oct 2022 18:59:05 +0100 Subject: [PATCH 677/988] Updating behaviour docs with correct location for Nuget configfile (windows) (#2908) --- docs/consume-packages/configuring-nuget-behavior.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/configuring-nuget-behavior.md b/docs/consume-packages/configuring-nuget-behavior.md index a7b2dcf5b..6091482cb 100644 --- a/docs/consume-packages/configuring-nuget-behavior.md +++ b/docs/consume-packages/configuring-nuget-behavior.md @@ -236,7 +236,7 @@ The following table describes where the `NuGetDefaults.Config` file should be st | OS Platform | `NuGetDefaults.Config` Location | | --- | --- | -| Windows | **Visual Studio 2017 or NuGet 4.x+:** `%ProgramFiles(x86)%\NuGet\Config`
**Visual Studio 2015 and earlier or NuGet 3.x and earlier:** `%PROGRAMDATA%\NuGet` | +| Windows | **Visual Studio 2017 or NuGet 4.x+:** `%ProgramFiles(x86)%\NuGet`
**Visual Studio 2015 and earlier or NuGet 3.x and earlier:** `%PROGRAMDATA%\NuGet` | | Mac/Linux | `$XDG_DATA_HOME` (typically `~/.local/share` or `/usr/local/share`, depending on OS distribution)| ### NuGetDefaults.Config settings From abddd2bdee5fc291d77739a684faa75b4cd72d2a Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Tue, 11 Oct 2022 15:29:44 -0700 Subject: [PATCH 678/988] NuGet October 2022 servicing release updates (#2917) --- docs/release-notes/NuGet-4.9-RTM.md | 7 ++++++- docs/release-notes/NuGet-5.11.md | 7 ++++++- docs/release-notes/NuGet-5.7.md | 7 ++++++- docs/release-notes/NuGet-5.9.md | 9 +++++++-- docs/release-notes/NuGet-6.0.md | 5 +++++ docs/release-notes/NuGet-6.2.md | 5 +++++ docs/release-notes/NuGet-6.3.md | 5 +++++ 7 files changed, 40 insertions(+), 5 deletions(-) diff --git a/docs/release-notes/NuGet-4.9-RTM.md b/docs/release-notes/NuGet-4.9-RTM.md index 0d64ef6c0..04951f3ef 100644 --- a/docs/release-notes/NuGet-4.9-RTM.md +++ b/docs/release-notes/NuGet-4.9-RTM.md @@ -18,10 +18,15 @@ NuGet distribution vehicles: | [**4.9.2**](https://nuget.org/downloads) |[Visual Studio 2017 version 15.9.4](https://visualstudio.microsoft.com/downloads/) | [2.1.502, 2.2.101](https://www.microsoft.com/net/download/visual-studio-sdks) | | [**4.9.3**](https://nuget.org/downloads) |[Visual Studio 2017 version 15.9.6](https://visualstudio.microsoft.com/downloads/) | [2.1.504, 2.2.104](https://www.microsoft.com/net/download/visual-studio-sdks) | | [**4.9.5**](https://nuget.org/downloads) |n/a| n/a [.NET Core 2.1 is out of support as of August 21, 2021](https://dotnet.microsoft.com/platform/support/policy/dotnet-core) +| [**4.9.6**](https://nuget.org/downloads) |n/a| n/a [.NET Core 2.1 is out of support as of August 21, 2021](https://dotnet.microsoft.com/platform/support/policy/dotnet-core) + +## Summary: What's New in 4.9.6 + +* [Security]: Microsoft Security Advisory CVE-2022-41032 | .NET Elevation of Privilege Vulnerability - [#12149](https://github.com/NuGet/Home/issues/12149) ## Summary: What's New in 4.9.5 -* [Security]: Microsoft Security Advisory CVE 2022-30184 | .NET Information Disclosure Vulnerability - [#11883](https://github.com/NuGet/Home/issues/11883) +* [Security]: Microsoft Security Advisory CVE-2022-30184 | .NET Information Disclosure Vulnerability - [#11883](https://github.com/NuGet/Home/issues/11883) ## Summary: What's New in 4.9.0 diff --git a/docs/release-notes/NuGet-5.11.md b/docs/release-notes/NuGet-5.11.md index 0a9d61c77..48c02be5c 100644 --- a/docs/release-notes/NuGet-5.11.md +++ b/docs/release-notes/NuGet-5.11.md @@ -15,15 +15,20 @@ NuGet distribution vehicles: |:---|:---|:---| | [**5.11.0**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.11](https://visualstudio.microsoft.com/downloads/) | [5.0.400](https://dotnet.microsoft.com/download/dotnet-core/5.0)1 | | [**5.11.2**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.11.16](https://visualstudio.microsoft.com/downloads/) | N/A | +| [**5.11.3**](https://nuget.org/downloads) | N/A | N/A | 1 Installed with Visual Studio 2019 with .NET Core workload > [!NOTE] > Visual Studio 16.11, MSBuild 16.11, and .NET 5.0.400+ requires NuGet.exe 5.11 or later. +## Summary: What's New in 5.11.3 + +* [Security]: Microsoft Security Advisory CVE-2022-41032 | .NET Elevation of Privilege Vulnerability - [#12149](https://github.com/NuGet/Home/issues/12149) + ## Summary: What's New in 5.11.2 -* [Security]: Microsoft Security Advisory CVE 2022-30184 | .NET Information Disclosure Vulnerability - [#11883](https://github.com/NuGet/Home/issues/1188 +* [Security]: Microsoft Security Advisory CVE-2022-30184 | .NET Information Disclosure Vulnerability - [#11883](https://github.com/NuGet/Home/issues/11883) ## Summary: What's New in 5.11 diff --git a/docs/release-notes/NuGet-5.7.md b/docs/release-notes/NuGet-5.7.md index f6d4ee227..af334fa98 100644 --- a/docs/release-notes/NuGet-5.7.md +++ b/docs/release-notes/NuGet-5.7.md @@ -16,12 +16,17 @@ NuGet distribution vehicles: | [**5.7.0**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.7](https://visualstudio.microsoft.com/downloads/) | [3.1.401](https://dotnet.microsoft.com/download/dotnet-core/3.1)1 | | [**5.7.1**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.7](https://visualstudio.microsoft.com/downloads/) | [3.1.408](https://dotnet.microsoft.com/download/dotnet-core/3.1)1 | | [**5.7.2**](https://nuget.org/downloads) | N/A | [3.1.420](https://dotnet.microsoft.com/download/dotnet-core/3.1)1 | +| [**5.7.3**](https://nuget.org/downloads) | N/A | [3.1.424](https://dotnet.microsoft.com/download/dotnet-core/3.1)1 | 1 Installed with Visual Studio 2019 with .NET Core workload +## Summary: What's New in 5.7.3 + +* [Security]: Microsoft Security Advisory CVE-2022-41032 | .NET Elevation of Privilege Vulnerability - [#12149](https://github.com/NuGet/Home/issues/12149) + ## Summary: What's New in 5.7.2 -* [Security]: Microsoft Security Advisory CVE 2022-30184 | .NET Information Disclosure Vulnerability - [#11883](https://github.com/NuGet/Home/issues/1188 +* [Security]: Microsoft Security Advisory CVE-2022-30184 | .NET Information Disclosure Vulnerability - [#11883](https://github.com/NuGet/Home/issues/11883) ## Summary: What's New in 5.7 diff --git a/docs/release-notes/NuGet-5.9.md b/docs/release-notes/NuGet-5.9.md index a11ec7f91..57582f302 100644 --- a/docs/release-notes/NuGet-5.9.md +++ b/docs/release-notes/NuGet-5.9.md @@ -15,16 +15,21 @@ NuGet distribution vehicles: |:---|:---|:---| | [**5.9.0**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.9](https://visualstudio.microsoft.com/downloads/) | [5.0.200](https://dotnet.microsoft.com/download/dotnet-core/5.0)1 | | [**5.9.1**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.9](https://visualstudio.microsoft.com/downloads/) | [5.0.202](https://dotnet.microsoft.com/download/dotnet-core/5.0)1 | -| [**5.9.2**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.9.22](https://visualstudio.microsoft.com/downloads/) | n/a | +| [**5.9.2**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.9.22](https://visualstudio.microsoft.com/downloads/) | N/A | +| [**5.9.3**](https://nuget.org/downloads) | N/A | N/A | 1 Installed with Visual Studio 2019 with .NET Core workload > [!NOTE] > Visual Studio 16.9, MSBuild 16.9, and .NET 5.0.200+ requires NuGet.exe 5.9 or later. +## Summary: What's New in 5.9.3 + +* [Security]: Microsoft Security Advisory CVE-2022-41032 | .NET Elevation of Privilege Vulnerability - [#12149](https://github.com/NuGet/Home/issues/12149) + ## Summary: What's New in 5.9.2 -* [Security]: Microsoft Security Advisory CVE 2022-30184 | .NET Information Disclosure Vulnerability - [#11883](https://github.com/NuGet/Home/issues/1188 +* [Security]: Microsoft Security Advisory CVE-2022-30184 | .NET Information Disclosure Vulnerability - [#11883](https://github.com/NuGet/Home/issues/11883) ## Summary: What's New in 5.9 diff --git a/docs/release-notes/NuGet-6.0.md b/docs/release-notes/NuGet-6.0.md index 775ca3fb5..14a9306fe 100644 --- a/docs/release-notes/NuGet-6.0.md +++ b/docs/release-notes/NuGet-6.0.md @@ -16,9 +16,14 @@ NuGet distribution vehicles: | [**6.0.0**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.0.0](https://visualstudio.microsoft.com/downloads/) | [6.0.0](https://dotnet.microsoft.com/download/dotnet-core/6.0)1 | | **6.0.1** | [Visual Studio 2022 version 17.0.2](https://visualstudio.microsoft.com/downloads/) | N/A | | [**6.0.2**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.0.11](https://visualstudio.microsoft.com/downloads/) | [6.0.301](https://dotnet.microsoft.com/download/dotnet-core/6.0)1 | +| [**6.0.3**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.0](https://visualstudio.microsoft.com/downloads/) | [6.0.110](https://dotnet.microsoft.com/download/dotnet-core/6.0)1 | 1 Installed with Visual Studio 2022 with.NET Core workload +## Summary: What's New in 6.0.3 + +* [Security]: Microsoft Security Advisory CVE-2022-41032 | .NET Elevation of Privilege Vulnerability - [#12149](https://github.com/NuGet/Home/issues/12149) + > [!NOTE] > Visual Studio 17.0, MSBuild 17.0, and .NET 6.0 require NuGet.exe 6.0 or later. ## Summary: What's New in 6.0.2 diff --git a/docs/release-notes/NuGet-6.2.md b/docs/release-notes/NuGet-6.2.md index c12868d55..68b06b1ab 100644 --- a/docs/release-notes/NuGet-6.2.md +++ b/docs/release-notes/NuGet-6.2.md @@ -15,9 +15,14 @@ NuGet distribution vehicles: |:---|:---|:---| | [**6.2.0**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.2](https://visualstudio.microsoft.com/downloads/) | [6.0.300](https://dotnet.microsoft.com/download/dotnet-core/6.0)1 | | [**6.2.1**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.2.4](https://visualstudio.microsoft.com/downloads/) | [6.0.301](https://dotnet.microsoft.com/download/dotnet-core/6.0)1 | +| [**6.2.2**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.2](https://visualstudio.microsoft.com/downloads/) | [6.0.305](https://dotnet.microsoft.com/download/dotnet-core/6.0)1 | 1 Installed with Visual Studio 2022 with .NET Core workload +## Summary: What's New in 6.2.2 + +* [Security]: Microsoft Security Advisory CVE 2022-41032 | .NET Elevation of Privilege Vulnerability - [#12149](https://github.com/NuGet/Home/issues/12149) + ## Summary: What's New in 6.2.1 * [Security]: Microsoft Security Advisory CVE 2022-30184 | .NET Information Disclosure Vulnerability - [#11883](https://github.com/NuGet/Home/issues/11883) diff --git a/docs/release-notes/NuGet-6.3.md b/docs/release-notes/NuGet-6.3.md index 65b91e65f..0f0f80c95 100644 --- a/docs/release-notes/NuGet-6.3.md +++ b/docs/release-notes/NuGet-6.3.md @@ -14,9 +14,14 @@ NuGet distribution vehicles: | NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | |:---|:---|:---| | [**6.3**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.3](https://visualstudio.microsoft.com/downloads/) | [6.0.400](https://dotnet.microsoft.com/download/dotnet-core/)1 | +| [**6.3.1**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.3](https://visualstudio.microsoft.com/downloads/) | [6.0.402](https://dotnet.microsoft.com/download/dotnet-core/)1 | 1 Installed with Visual Studio 17.3 with.NET Core workload +## Summary: What's New in 6.3.1 + +* [Security]: Microsoft Security Advisory CVE-2022-41032 | .NET Elevation of Privilege Vulnerability - [#12149](https://github.com/NuGet/Home/issues/12149) + ## Summary: What's New in 6.3 * [Feature] Allow to user to input custom (floating) versions through the PM UI - [#9829](https://github.com/NuGet/Home/issues/9829) [#3788](https://github.com/NuGet/Home/issues/3788) From ff94f7a4301c6c9db617c8ec674fcf50253035ae Mon Sep 17 00:00:00 2001 From: opbld17 Date: Fri, 21 Oct 2022 05:57:22 -0700 Subject: [PATCH 679/988] In all content, remove (#2920) ms.prod = nuget Replace with ms.service = nuget Co-authored-by: Docs Allowlist Management --- docs/api/symbol-package-publish-resource.md | 1 - docs/create-packages/Symbol-Packages-snupkg.md | 1 - docs/docfx.json | 2 +- 3 files changed, 1 insertion(+), 3 deletions(-) diff --git a/docs/api/symbol-package-publish-resource.md b/docs/api/symbol-package-publish-resource.md index 8e9fe1a80..77d7106c9 100644 --- a/docs/api/symbol-package-publish-resource.md +++ b/docs/api/symbol-package-publish-resource.md @@ -5,7 +5,6 @@ ms.author: cmanu manager: skofman ms.date: 10/30/2018 ms.topic: reference -ms.prod: nuget ms.technology: null description: The publish service allows clients to publish new symbol packages. keywords: NuGet API push symbol package diff --git a/docs/create-packages/Symbol-Packages-snupkg.md b/docs/create-packages/Symbol-Packages-snupkg.md index 136dd7671..ea43a75f9 100644 --- a/docs/create-packages/Symbol-Packages-snupkg.md +++ b/docs/create-packages/Symbol-Packages-snupkg.md @@ -5,7 +5,6 @@ ms.author: jodou manager: skofman ms.date: 10/30/2018 ms.topic: reference -ms.prod: nuget ms.technology: null description: How to create NuGet symbol packages (snupkg). keywords: NuGet symbol packages, NuGet package debugging, supporting NuGet debugging, package symbols, symbol package conventions diff --git a/docs/docfx.json b/docs/docfx.json index bd6eba5ae..cec78c0ea 100644 --- a/docs/docfx.json +++ b/docs/docfx.json @@ -33,13 +33,13 @@ "overwrite": [], "externalReference": [], "globalMetadata": { + "ms.service": "nuget", "feedback_system": "GitHub", "feedback_github_repo": "NuGet/docs.microsoft.com-nuget", "feedback_product_url": "https://github.com/NuGet/Home/issues/", "breadcrumb_path": "~/_breadcrumb/toc.yml", "ROBOTS": "INDEX,FOLLOW", "ms.topic": "conceptual", - "ms.prod": "nuget", "author": "JonDouglas", "ms.author": "jodou", "ms.reviewer": [ From 217c3dc22f5610616b25cb601765f986b441ee82 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Thu, 3 Nov 2022 07:22:45 +1030 Subject: [PATCH 680/988] Update VS extensibility docs (#2929) --- .../nuget-api-in-visual-studio.md | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md b/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md index a3df6bf70..d114a29ec 100644 --- a/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md +++ b/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md @@ -126,6 +126,18 @@ If you would like a new NuGet related API in Visual Studio, please search [NuGet For reference, the source code for NuGet.VisualStudio is contained within the [NuGet.Clients repository](https://github.com/NuGet/NuGet.Client/tree/dev/src/NuGet.Clients/NuGet.VisualStudio). +## Understanding the .NET project systems + +When SDK style projects were added for .NET Core 1.0, it was designed to be more asynchronous than previous Visual Studio project systems. This has an impact on how all other Visual Studio components interact with it directly, or though other components such as NuGet. This is most noticeable on solution load and project load, where projects are not fully available some time after Visual Studio's older synchronous API notifications have already fired. + +During solution load, NuGet ignores `IVsSolutionEvents.OnAfterProjectLoad`, in order to avoid delaying the synchronous part of solution load. NuGet will synchronize its internal data structures after the synchronous part of solution load has completed. This is also true for non-SDK style projects. + +Even after all `IVsSolutionEvents.OnAfterSolutionLoad` event handlers finish, this only signals the end of the synchronous part of solution load. The asynchronous part of solution load is still in progress. Therefore, if your extension calls NuGet APIs like `GetInstalledPackagesAsync` or `InstallPackage` soon after project or solution load, NuGet might throw an `InvalidOperationException` with message similar to "The operation failed as details for project {project name} could not be loaded.". + +When a solution contains at least one SDK style project, NuGet will automatically perform a restore after solution load, and you should not call any Nuget APIs until this is complete. You can use `IVsNuGetProjectUpdateEvents` to get a notification when the solution restore, or when specific project restores, complete. If a solution does not contain any SDK style projects, then restore will not be scheduled automatically, and may not happen until a build is scheduled. + +In order to determine whether a project uses NuGet's asynchronous flow (SDK style project), use [`PackageUtilities.IsCapabilityMatch`](/dotnet/api/microsoft.visualstudio.shell.packageutilities.iscapabilitymatch) with the expression `CPS + PackageReference`. + ## INuGetProjectService interface ```cs @@ -744,6 +756,8 @@ public interface IRegistryKey /// The project to check for NuGet package. /// The id of the package to check. /// true if the package is install. false otherwise. + /// A "project not nominated" exception will be thrown if the project system has not yet told NuGet about the project. + /// You can use or Microsoft.VisualStudio.OperationProgress to be notified when the project is ready. [Obsolete("This method can cause UI delays if called on the UI thread. Use INuGetProjectService.GetInstalledPackagesAsync in the NuGet.VisualStudio.Contracts package instead, and check the specific package you're interested in")] bool IsPackageInstalled(Project project, string id); @@ -754,6 +768,8 @@ public interface IRegistryKey /// The id of the package to check. /// The version of the package to check. /// true if the package is install. false otherwise. + /// A "project not nominated" exception will be thrown if the project system has not yet told NuGet about the project. + /// You can use or Microsoft.VisualStudio.OperationProgress to be notified when the project is ready. [Obsolete("This method can cause UI delays if called on the UI thread. Use INuGetProjectService.GetInstalledPackagesAsync in the NuGet.VisualStudio.Contracts package instead, and check the specific package you're interested in")] bool IsPackageInstalled(Project project, string id, SemanticVersion version); @@ -769,6 +785,8 @@ public interface IRegistryKey /// when client project compiles against this assembly, the compiler would attempt to bind against /// the other overload which accepts SemanticVersion and would require client project to reference NuGet.Core. /// + /// A "project not nominated" exception will be thrown if the project system has not yet told NuGet about the project. + /// You can use or Microsoft.VisualStudio.OperationProgress to be notified when the project is ready. [Obsolete("This method can cause UI delays if called on the UI thread. Use INuGetProjectService.GetInstalledPackagesAsync in the NuGet.VisualStudio.Contracts package instead, and check the specific package you're interested in")] bool IsPackageInstalledEx(Project project, string id, string versionString); @@ -776,6 +794,8 @@ public interface IRegistryKey /// Get the list of NuGet packages installed in the specified project. /// /// The project to get NuGet packages from. + /// A "project not nominated" exception will be thrown if the project system has not yet told NuGet about the project. + /// You can use or Microsoft.VisualStudio.OperationProgress to be notified when the project is ready. [Obsolete("This method can cause UI delays if called on the UI thread. Use INuGetProjectService.GetInstalledPackagesAsync in the NuGet.VisualStudio.Contracts package instead")] IEnumerable GetInstalledPackages(Project project); } From 08a5e74c39bee28ffcc3fa398147d28916a8aec8 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Tue, 8 Nov 2022 09:56:13 -0800 Subject: [PATCH 681/988] Document various log codes (#2933) Documenting: NU1008, NU1009, NU1010, NU1011, NU1109, NU1402, NU1403, NU5042, NU5049 --- docs/TOC.md | 9 ++++ docs/reference/Errors-and-Warnings.md | 10 ++--- docs/reference/cli-reference/cli-ref-pack.md | 3 ++ docs/reference/errors-and-warnings/NU1008.md | 45 ++++++++++++++++++++ docs/reference/errors-and-warnings/NU1009.md | 23 ++++++++++ docs/reference/errors-and-warnings/NU1010.md | 22 ++++++++++ docs/reference/errors-and-warnings/NU1011.md | 22 ++++++++++ docs/reference/errors-and-warnings/NU1109.md | 25 +++++++++++ docs/reference/errors-and-warnings/NU1402.md | 22 ++++++++++ docs/reference/errors-and-warnings/NU1403.md | 26 +++++++++++ docs/reference/errors-and-warnings/NU5040.md | 2 +- docs/reference/errors-and-warnings/NU5041.md | 2 +- docs/reference/errors-and-warnings/NU5042.md | 24 +++++++++++ docs/reference/errors-and-warnings/NU5049.md | 23 ++++++++++ 14 files changed, 251 insertions(+), 7 deletions(-) create mode 100644 docs/reference/errors-and-warnings/NU1008.md create mode 100644 docs/reference/errors-and-warnings/NU1009.md create mode 100644 docs/reference/errors-and-warnings/NU1010.md create mode 100644 docs/reference/errors-and-warnings/NU1011.md create mode 100644 docs/reference/errors-and-warnings/NU1109.md create mode 100644 docs/reference/errors-and-warnings/NU1402.md create mode 100644 docs/reference/errors-and-warnings/NU1403.md create mode 100644 docs/reference/errors-and-warnings/NU5042.md create mode 100644 docs/reference/errors-and-warnings/NU5049.md diff --git a/docs/TOC.md b/docs/TOC.md index 9d7b23d18..8554f22e6 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -142,6 +142,10 @@ ### [NU1005](reference/errors-and-warnings/NU1005.md) ### [NU1006](reference/errors-and-warnings/NU1006.md) ### [NU1007](reference/errors-and-warnings/NU1007.md) +### [NU1008](reference/errors-and-warnings/NU1008.md) +### [NU1009](reference/errors-and-warnings/NU1009.md) +### [NU1010](reference/errors-and-warnings/NU1010.md) +### [NU1011](reference/errors-and-warnings/NU1011.md) ### [NU1012](reference/errors-and-warnings/NU1012.md) ### [NU1100](reference/errors-and-warnings/NU1100.md) ### [NU1101](reference/errors-and-warnings/NU1101.md) @@ -152,6 +156,7 @@ ### [NU1106](reference/errors-and-warnings/NU1106.md) ### [NU1107](reference/errors-and-warnings/NU1107.md) ### [NU1108](reference/errors-and-warnings/NU1108.md) +### [NU1109](reference/errors-and-warnings/NU1109.md) ### [NU1201](reference/errors-and-warnings/NU1201.md) ### [NU1202](reference/errors-and-warnings/NU1202.md) ### [NU1203](reference/errors-and-warnings/NU1203.md) @@ -161,6 +166,8 @@ ### [NU1213](reference/errors-and-warnings/NU1213.md) ### [NU1301](reference/errors-and-warnings/NU1301.md) ### [NU1401](reference/errors-and-warnings/NU1401.md) +### [NU1402](reference/errors-and-warnings/NU1402.md) +### [NU1403](reference/errors-and-warnings/NU1403.md) ### [NU1500](reference/errors-and-warnings/NU1500.md) ### [NU1501](reference/errors-and-warnings/NU1501.md) ### [NU1502](reference/errors-and-warnings/NU1502.md) @@ -256,10 +263,12 @@ ### [NU5035](reference/errors-and-warnings/NU5035.md) ### [NU5036](reference/errors-and-warnings/NU5036.md) ### [NU5037](reference/errors-and-warnings/NU5037.md) +### [NU5042](reference/errors-and-warnings/NU5042.md) ### [NU5045](reference/errors-and-warnings/NU5045.md) ### [NU5046](reference/errors-and-warnings/NU5046.md) ### [NU5047](reference/errors-and-warnings/NU5047.md) ### [NU5048](reference/errors-and-warnings/NU5048.md) +### [NU5049](reference/errors-and-warnings/NU5049.md) ### [NU5100](reference/errors-and-warnings/NU5100.md) ### [NU5101](reference/errors-and-warnings/NU5101.md) ### [NU5102](reference/errors-and-warnings/NU5102.md) diff --git a/docs/reference/Errors-and-Warnings.md b/docs/reference/Errors-and-Warnings.md index 06ae566bc..2dc24d6e0 100644 --- a/docs/reference/Errors-and-Warnings.md +++ b/docs/reference/Errors-and-Warnings.md @@ -18,12 +18,12 @@ The errors and warnings listed here are available only with [PackageReference-ba | Group | Error Numbers | | --- | --- | -| Invalid input errors | [NU1001](./errors-and-warnings/NU1001.md), [NU1002](./errors-and-warnings/NU1002.md), [NU1003](./errors-and-warnings/NU1003.md) | -| Missing package and project errors | [NU1100](./errors-and-warnings/NU1100.md), [NU1101](./errors-and-warnings/NU1101.md), [NU1102](./errors-and-warnings/NU1102.md), [NU1103](./errors-and-warnings/NU1103.md), [NU1104](./errors-and-warnings/NU1104.md), [NU1105](./errors-and-warnings/NU1105.md), [NU1106](./errors-and-warnings/NU1106.md), [NU1107](./errors-and-warnings/NU1107.md), [NU1108](./errors-and-warnings/NU1108.md) | -| Compatibility errors | [NU1201](./errors-and-warnings/NU1201.md), [NU1202](./errors-and-warnings/NU1202.md), [NU1203](./errors-and-warnings/NU1203.md), [NU1401](./errors-and-warnings/NU1401.md) | +| Invalid input errors | [NU1001](./errors-and-warnings/NU1001.md), [NU1002](./errors-and-warnings/NU1002.md), [NU1003](./errors-and-warnings/NU1003.md), [NU1004](./errors-and-warnings/NU1004.md), [NU1005](./errors-and-warnings/NU1005.md), [NU1006](./errors-and-warnings/NU1006.md), [NU1007](./errors-and-warnings/NU1007.md), [NU1008](./errors-and-warnings/NU1008.md), [NU1009](./errors-and-warnings/NU1009.md), [NU1010](./errors-and-warnings/NU1010.md), [NU1011](./errors-and-warnings/NU1011.md), [NU1012](./errors-and-warnings/NU1012.md), | +| Missing package and project errors | [NU1100](./errors-and-warnings/NU1100.md), [NU1101](./errors-and-warnings/NU1101.md), [NU1102](./errors-and-warnings/NU1102.md), [NU1103](./errors-and-warnings/NU1103.md), [NU1104](./errors-and-warnings/NU1104.md), [NU1105](./errors-and-warnings/NU1105.md), [NU1106](./errors-and-warnings/NU1106.md), [NU1107](./errors-and-warnings/NU1107.md), [NU1108](./errors-and-warnings/NU1108.md), [NU1109](./errors-and-warnings/NU1109.md) | +| Compatibility errors | [NU1201](./errors-and-warnings/NU1201.md), [NU1202](./errors-and-warnings/NU1202.md), [NU1203](./errors-and-warnings/NU1203.md), [NU1401](./errors-and-warnings/NU1401.md), [NU1402](./errors-and-warnings/NU1402.md), [NU1403](./errors-and-warnings/NU1403.md) | | NuGet internal errors | [NU1000](./errors-and-warnings/NU1000.md) | | Signed packages errors (creation and verification) | [NU3001](./errors-and-warnings/NU3001.md), [NU3004](./errors-and-warnings/NU3004.md), [NU3005](./errors-and-warnings/NU3005.md), [NU3008](./errors-and-warnings/NU3008.md), [NU3034](./errors-and-warnings/NU3034.md)| -| Pack Errors | [NU5000](./errors-and-warnings/NU5000.md), [NU5001](./errors-and-warnings/NU5001.md), [NU5002](./errors-and-warnings/NU5002.md), [NU5003](./errors-and-warnings/NU5003.md), [NU5004](./errors-and-warnings/NU5004.md), [NU5005](./errors-and-warnings/NU5005.md), [NU5007](./errors-and-warnings/NU5007.md), [NU5008](./errors-and-warnings/NU5008.md), [NU5009](./errors-and-warnings/NU5009.md), [NU5010](./errors-and-warnings/NU5010.md), [NU5011](./errors-and-warnings/NU5011.md), [NU5012](./errors-and-warnings/NU5012.md), [NU5013](./errors-and-warnings/NU5013.md), [NU5014](./errors-and-warnings/NU5014.md), [NU5015](./errors-and-warnings/NU5015.md), [NU5016](./errors-and-warnings/NU5016.md), [NU5017](./errors-and-warnings/NU5017.md), [NU5018](./errors-and-warnings/NU5018.md), [NU5019](./errors-and-warnings/NU5019.md), [NU5020](./errors-and-warnings/NU5020.md), [NU5021](./errors-and-warnings/NU5021.md), [NU5022](./errors-and-warnings/NU5022.md), [NU5023](./errors-and-warnings/NU5023.md), [NU5024](./errors-and-warnings/NU5024.md), [NU5025](./errors-and-warnings/NU5025.md), [NU5026](./errors-and-warnings/NU5026.md), [NU5027](./errors-and-warnings/NU5027.md), [NU5028](./errors-and-warnings/NU5028.md), [NU5029](./errors-and-warnings/NU5029.md), [NU5036](./errors-and-warnings/NU5036.md) +| Pack Errors | [NU5000](./errors-and-warnings/NU5000.md), [NU5001](./errors-and-warnings/NU5001.md), [NU5002](./errors-and-warnings/NU5002.md), [NU5003](./errors-and-warnings/NU5003.md), [NU5004](./errors-and-warnings/NU5004.md), [NU5005](./errors-and-warnings/NU5005.md), [NU5007](./errors-and-warnings/NU5007.md), [NU5008](./errors-and-warnings/NU5008.md), [NU5009](./errors-and-warnings/NU5009.md), [NU5010](./errors-and-warnings/NU5010.md), [NU5011](./errors-and-warnings/NU5011.md), [NU5012](./errors-and-warnings/NU5012.md), [NU5013](./errors-and-warnings/NU5013.md), [NU5014](./errors-and-warnings/NU5014.md), [NU5015](./errors-and-warnings/NU5015.md), [NU5016](./errors-and-warnings/NU5016.md), [NU5017](./errors-and-warnings/NU5017.md), [NU5018](./errors-and-warnings/NU5018.md), [NU5019](./errors-and-warnings/NU5019.md), [NU5020](./errors-and-warnings/NU5020.md), [NU5021](./errors-and-warnings/NU5021.md), [NU5022](./errors-and-warnings/NU5022.md), [NU5023](./errors-and-warnings/NU5023.md), [NU5024](./errors-and-warnings/NU5024.md), [NU5025](./errors-and-warnings/NU5025.md), [NU5026](./errors-and-warnings/NU5026.md), [NU5027](./errors-and-warnings/NU5027.md), [NU5028](./errors-and-warnings/NU5028.md), [NU5029](./errors-and-warnings/NU5029.md), [NU5036](./errors-and-warnings/NU5036.md), [NU5042](./errors-and-warnings/NU5042.md), [NU5049](./errors-and-warnings/NU5049.md) | License specific Pack Errors | [NU5030](./errors-and-warnings/NU5030.md), [NU5031](./errors-and-warnings/NU5031.md), [NU5032](./errors-and-warnings/NU5032.md), [NU5033](./errors-and-warnings/NU5033.md), [NU5034](./errors-and-warnings/NU5034.md), [NU5035](./errors-and-warnings/NU5035.md) ## Warnings @@ -39,4 +39,4 @@ The errors and warnings listed here are available only with [PackageReference-ba | Signed packages warnings (creation and verification) | [NU3000](./errors-and-warnings/NU3000.md), [NU3002](./errors-and-warnings/NU3002.md), [NU3003](./errors-and-warnings/NU3003.md), [NU3006](./errors-and-warnings/NU3006.md), [NU3007](./errors-and-warnings/NU3007.md), [NU3009](./errors-and-warnings/NU3009.md), [NU3010](./errors-and-warnings/NU3010.md), [NU3011](./errors-and-warnings/NU3011.md), [NU3012](./errors-and-warnings/NU3012.md), [NU3013](./errors-and-warnings/NU3013.md), [NU3014](./errors-and-warnings/NU3014.md), [NU3015](./errors-and-warnings/NU3015.md), [NU3016](./errors-and-warnings/NU3016.md), [NU3017](./errors-and-warnings/NU3017.md), [NU3018](./errors-and-warnings/NU3018.md), [NU3019](./errors-and-warnings/NU3019.md), [NU3020](./errors-and-warnings/NU3020.md), [NU3021](./errors-and-warnings/NU3021.md), [NU3022](./errors-and-warnings/NU3022.md), [NU3023](./errors-and-warnings/NU3023.md), [NU3024](./errors-and-warnings/NU3024.md), [NU3025](./errors-and-warnings/NU3025.md), [NU3026](./errors-and-warnings/NU3026.md), [NU3027](./errors-and-warnings/NU3027.md), [NU3028](./errors-and-warnings/NU3028.md), [NU3029](./errors-and-warnings/NU3029.md), [NU3030](./errors-and-warnings/NU3030.md), [NU3031](./errors-and-warnings/NU3031.md), [NU3032](./errors-and-warnings/NU3032.md), [NU3033](./errors-and-warnings/NU3033.md), [NU3035](./errors-and-warnings/NU3035.md), [NU3036](./errors-and-warnings/NU3036.md), [NU3037](./errors-and-warnings/NU3037.md), [NU3038](./errors-and-warnings/NU3038.md), [NU3040](./errors-and-warnings/NU3040.md) | | Pack Warnings | [NU5100](./errors-and-warnings/NU5100.md), [NU5101](./errors-and-warnings/NU5101.md), [NU5102](./errors-and-warnings/NU5102.md), [NU5103](./errors-and-warnings/NU5103.md), [NU5104](./errors-and-warnings/NU5104.md), [NU5105](./errors-and-warnings/NU5105.md), [NU5106](./errors-and-warnings/NU5106.md), [NU5107](./errors-and-warnings/NU5107.md), [NU5108](./errors-and-warnings/NU5108.md), [NU5109](./errors-and-warnings/NU5109.md), [NU5110](./errors-and-warnings/NU5110.md), [NU5111](./errors-and-warnings/NU5111.md), [NU5112](./errors-and-warnings/NU5112.md), [NU5114](./errors-and-warnings/NU5114.md), [NU5115](./errors-and-warnings/NU5115.md), [NU5116](./errors-and-warnings/NU5116.md), [NU5117](./errors-and-warnings/NU5117.md), [NU5118](./errors-and-warnings/NU5118.md), [NU5119](./errors-and-warnings/NU5119.md), [NU5120](./errors-and-warnings/NU5120.md), [NU5121](./errors-and-warnings/NU5121.md), [NU5122](./errors-and-warnings/NU5122.md), [NU5123](./errors-and-warnings/NU5123.md), [NU5127](./errors-and-warnings/NU5127.md), [NU5128](./errors-and-warnings/NU5128.md), [NU5129](./errors-and-warnings/NU5129.md), [NU5130](./errors-and-warnings/NU5130.md), [NU5131](./errors-and-warnings/NU5131.md), [NU5500](./errors-and-warnings/NU5500.md), [NU5501](./errors-and-warnings/NU5501.md) | License specific Pack Warnings | [NU5124](./errors-and-warnings/NU5124.md), [NU5125](./errors-and-warnings/NU5125.md) -| Icon specific Pack Warnings | [NU5046](./errors-and-warnings/NU5046.md), [NU5047](./errors-and-warnings/NU5047.md), [NU5048](./errors-and-warnings/NU5048.md) +| Icon specific Pack Warnings | [NU5046](./errors-and-warnings/NU5046.md), [NU5047](./errors-and-warnings/NU5047.md), [NU5048](./errors-and-warnings/NU5048.md) | diff --git a/docs/reference/cli-reference/cli-ref-pack.md b/docs/reference/cli-reference/cli-ref-pack.md index 2679a0091..6cc246432 100644 --- a/docs/reference/cli-reference/cli-ref-pack.md +++ b/docs/reference/cli-reference/cli-ref-pack.md @@ -184,3 +184,6 @@ nuget pack foo.nuspec -Version 1.0.0 -MinClientVersion 2.5 nuget pack Package.nuspec -exclude "*.exe" -exclude "*.bat" ``` + +> [!Note] +> The `pack` command for SDK-style projects is not supported, use `dotnet pack` or `msbuild -t:pack` to pack this those projects instead. diff --git a/docs/reference/errors-and-warnings/NU1008.md b/docs/reference/errors-and-warnings/NU1008.md new file mode 100644 index 000000000..b8051432e --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1008.md @@ -0,0 +1,45 @@ +--- +title: NuGet Error NU1008 +description: NU1008 error code +author: nkolev92 +ms.author: nikolev +ms.date: 11/07/2022 +ms.topic: reference +f1_keywords: + - "NU1008" +--- + +# NuGet Error NU1008 + +

Projects that use central package version management should not define the version on the PackageReference items but on the PackageVersion items: PackageId.
+ +### Issue + +When using central package management, versions must be defined on the PackageVersion item. + +In your project file, you may see: + +```xml + + +``` + +### Solution + +- Remove the version from the PackageId PackageReference. +- You may need to add or update the PackageVersion item for PackageId in Directory.Packages.props + +Example: + +```xml + + +``` + +```xml + + +``` + +> [!NOTE] +> Note that metadata such as [IncludeAssets, PrivateAssets etc.](../../consume-packages/Package-References-in-Project-Files.md#controlling-dependency-assets) should remain on the PackageReference item. diff --git a/docs/reference/errors-and-warnings/NU1009.md b/docs/reference/errors-and-warnings/NU1009.md new file mode 100644 index 000000000..c7e5e3d81 --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1009.md @@ -0,0 +1,23 @@ +--- +title: NuGet Error NU1009 +description: NU1009 error code +author: nkolev92 +ms.author: nikolev +ms.date: 11/07/2022 +ms.topic: reference +f1_keywords: + - "NU1009" +--- + +# NuGet Error NU1009 + +
The packages PackageId are implicitly referenced. You do not typically need to reference them from your project or in your central package versions management file. For more inform
+ation, see https://aka.ms/sdkimplicitrefs
+ +### Issue + +Implicitly defined packages should not be managed centrally. + +### Solution + +Remove the PackageVersion for PackageId \ No newline at end of file diff --git a/docs/reference/errors-and-warnings/NU1010.md b/docs/reference/errors-and-warnings/NU1010.md new file mode 100644 index 000000000..c6a9e912d --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1010.md @@ -0,0 +1,22 @@ +--- +title: NuGet Error NU1010 +description: NU1010 error code +author: nkolev92 +ms.author: nikolev +ms.date: 11/07/2022 +ms.topic: reference +f1_keywords: + - "NU1010" +--- + +# NuGet Error NU1010 + +
The PackageReference items PackageId do not have corresponding PackageVersion.
+ +### Issue + +The PackageReference PackageId is missing a PackageVersion item. + +### Solution + +Add a PackageVersion item for PackageId in the [Directory.Packages.props](../../consume-packages/Central-Package-Management.md). diff --git a/docs/reference/errors-and-warnings/NU1011.md b/docs/reference/errors-and-warnings/NU1011.md new file mode 100644 index 000000000..d9175e129 --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1011.md @@ -0,0 +1,22 @@ +--- +title: NuGet Error NU1011 +description: NU1011 error code +author: nkolev92 +ms.author: nikolev +ms.date: 11/07/2022 +ms.topic: reference +f1_keywords: + - "NU1011" +--- + +# NuGet Error NU1011 + +
Centrally defined floating package versions are not allowed.
+ +### Issue + +PackageVersion items cannot contain floating versions. + +### Solution + +Change the floating version to a [non floating version range](../../concepts/Package-Versioning.md#version-ranges). diff --git a/docs/reference/errors-and-warnings/NU1109.md b/docs/reference/errors-and-warnings/NU1109.md new file mode 100644 index 000000000..1249e90d2 --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1109.md @@ -0,0 +1,25 @@ +--- +title: NuGet Error NU1109 +description: NU1109 error code +author: nkolev92 +ms.author: nikolev +ms.date: 11/07/2022 +ms.topic: reference +f1_keywords: + - "NU1109" +--- + +# NuGet Error NU1109 + +
NU1109: Detected package downgrade: B from 2.0.0 to centrally defined 1.0.0. Update the centrally managed package version to a higher version.
+'Project' -> 'A' 1.0.0 -> 'B' (>= 2.0.0)
+'Project' -> 'B' (>= 1.0.0)
+ +### Issue + +A dependency package specified a version constraint on a higher version of a package than restore ultimately resolved. That is because of the [direct-dependency-wins](../../concepts/dependency-resolution.md#direct-dependency-wins) rule - when resolving packages, the direct package version in the subgraph will override that of the distant packages with the same ID. + +### Solution + +Update the PackageVersion of B to to the higher version of the package. +In the example above, you would change the package reference to `B` 2.0.0. diff --git a/docs/reference/errors-and-warnings/NU1402.md b/docs/reference/errors-and-warnings/NU1402.md new file mode 100644 index 000000000..de7afdcaf --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1402.md @@ -0,0 +1,22 @@ +--- +title: NuGet Error NU1402 +description: NU1402 error code +author: nkolev92 +ms.author: nikolev +ms.date: 11/07/2022 +ms.topic: reference +f1_keywords: + - "NU1402" +--- + +# NuGet Error NU1402 + +
NU1402: The package 'PackageId.1.0.0' contains an entry '../../foo.dll' which is unsafe for extraction.
+ +### Issue + +The package contains a file that is unsafe for extraction. + +### Solution + +This package is unsafe to be used. Contact the package owner to have the package fixed. diff --git a/docs/reference/errors-and-warnings/NU1403.md b/docs/reference/errors-and-warnings/NU1403.md new file mode 100644 index 000000000..f15bc56c9 --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1403.md @@ -0,0 +1,26 @@ +--- +title: NuGet Error NU1403 +description: NU1403 error code +author: nkolev92 +ms.author: nikolev +ms.date: 11/07/2022 +ms.topic: reference +f1_keywords: + - "NU1403" +--- + +# NuGet Error NU1403 + +
 Package content hash validation failed for PackageId.13.0.1. The package is different than the last restore.
+ +### Issue +The content of the package in the global packages folder is different from the value in the lock file. +The package on the source may have changed, or a multiple sources may have different instances of the same package id and version. + +### Solution + +* If you believe that the version you have installed locally is the up to date, correct one, run restore with the [force evaluate](../../consume-packages/Package-References-in-Project-Files.md#lock-file-extensibility) option to update the lock file to the local version of the package. + +* [Inspect the package in the global packages folder](../../concepts/troubleshooting-installed-packages.md#nupkgmetadata-file-in-global-packages-folder) and determine the source from which it was installed. If you own the source in quesiton, you may need to ensure the correct version of the package is available. Once you have figured out which package version you want, run restore with [force evaluate](../../consume-packages/Package-References-in-Project-Files.md#lock-file-extensibility). + +* If none of the above fixes work, the package may have been tampered with before it made it to your machine. diff --git a/docs/reference/errors-and-warnings/NU5040.md b/docs/reference/errors-and-warnings/NU5040.md index f5a37b674..0d90383ef 100644 --- a/docs/reference/errors-and-warnings/NU5040.md +++ b/docs/reference/errors-and-warnings/NU5040.md @@ -10,7 +10,7 @@ f1_keywords: - NU5040 --- -# NuGet Error NU5041 +# NuGet Error NU5040
The readme file 'readme.md' is empty.
diff --git a/docs/reference/errors-and-warnings/NU5041.md b/docs/reference/errors-and-warnings/NU5041.md index 62bef9f20..7574654df 100644 --- a/docs/reference/errors-and-warnings/NU5041.md +++ b/docs/reference/errors-and-warnings/NU5041.md @@ -10,7 +10,7 @@ f1_keywords: - NU5041 --- -# NuGet Error NU5042 +# NuGet Error NU5041
Cannot open the readme file 'readme.md'
diff --git a/docs/reference/errors-and-warnings/NU5042.md b/docs/reference/errors-and-warnings/NU5042.md new file mode 100644 index 000000000..2ebf18b01 --- /dev/null +++ b/docs/reference/errors-and-warnings/NU5042.md @@ -0,0 +1,24 @@ +--- +title: NuGet Error NU5042 +description: NU5042 error code +author: nkolev92 +ms.author: nikolev +ms.date: 11/07/2022 +ms.topic: reference +f1_keywords: + - "NU5042" +--- + +# NuGet Error NU5042 + +
`project.json` pack is disabled in the current NuGet version, and will be permanently removed in a future version.
+Please consider migrating 'MyProject' to `PackageReference` and using the pack targets.
+You can set the 'NUGET_ENABLE_LEGACY_PROJECT_JSON_PACK' environment variable to 'true' to temporarily reenable this functionality.
+ +### Issue + +NuGet.exe pack for project.json projects is not supported. + +### Solution + +Migrate your project to PackageReference and use the pack targets instead. \ No newline at end of file diff --git a/docs/reference/errors-and-warnings/NU5049.md b/docs/reference/errors-and-warnings/NU5049.md new file mode 100644 index 000000000..65b97276e --- /dev/null +++ b/docs/reference/errors-and-warnings/NU5049.md @@ -0,0 +1,23 @@ +--- +title: NuGet Error NU5049 +description: NU5049 error code +author: nkolev92 +ms.author: nikolev +ms.date: 11/07/2022 +ms.topic: reference +f1_keywords: + - "NU5049" +--- + +# NuGet Error NU5049 + +
The `pack` command for SDK-style projects is not supported, use `dotnet pack` or `msbuild -t:pack` to pack this project instead. You can override this behavior by setting the 'NUGET_ENABLE_LEGACY_CSPROJ_PACK' environment variable to 'true'.
+ +### Issue + +NuGet.exe pack should not be used to generate packages for SDK-style projects. + +### Solution + +Use `dotnet pack` or `msbuild -t:pack` instead. +It recommended that you do not use the legacy csproj pack experience as it generates incomplete packages. From d3812c6c953c1a05ad7c82aee50ea911834c1437 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jean-Pierre=20Bried=C3=A9?= Date: Tue, 8 Nov 2022 09:56:23 -0800 Subject: [PATCH 682/988] Release notes for 6.4 (#2926) --- docs/TOC.md | 3 +- docs/release-notes/Index.md | 2 + docs/release-notes/NuGet-6.4.md | 119 ++++++++++++++++++++++++++++++++ 3 files changed, 123 insertions(+), 1 deletion(-) create mode 100644 docs/release-notes/NuGet-6.4.md diff --git a/docs/TOC.md b/docs/TOC.md index 8554f22e6..1ee1c9177 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -65,7 +65,7 @@ ### [API keys](nuget-org/scoped-api-keys.md) ## Publish to a private feed ### [Overview](hosting-packages/overview.md) -### [Azure artifacts](/azure/devops/artifacts/nuget/publish?view=azure-devops) +### [Azure artifacts](/azure/devops/artifacts/nuget/publish) ### [NuGet.Server](hosting-packages/nuget-server.md) ### [Local feeds](hosting-packages/local-feeds.md) # Concepts @@ -325,6 +325,7 @@ ### [Known Issues](release-notes/known-issues.md) ### NuGet 6.x +#### [NuGet 6.4](release-notes/NuGet-6.4.md) #### [NuGet 6.3](release-notes/NuGet-6.3.md) #### [NuGet 6.2](release-notes/NuGet-6.2.md) #### [NuGet 6.1](release-notes/NuGet-6.1.md) diff --git a/docs/release-notes/Index.md b/docs/release-notes/Index.md index 4f75ffbf9..1aeb15996 100644 --- a/docs/release-notes/Index.md +++ b/docs/release-notes/Index.md @@ -11,6 +11,8 @@ ms.topic: conceptual [Known Issues](../release-notes/known-issues.md) +[NuGet 6.4](../release-notes/NuGet-6.4.md) + [NuGet 6.3](../release-notes/NuGet-6.3.md) [NuGet 6.2](../release-notes/NuGet-6.2.md) diff --git a/docs/release-notes/NuGet-6.4.md b/docs/release-notes/NuGet-6.4.md new file mode 100644 index 000000000..509f0b954 --- /dev/null +++ b/docs/release-notes/NuGet-6.4.md @@ -0,0 +1,119 @@ +--- +title: NuGet 6.4 Release Notes +description: Release notes for NuGet 6.4 including new features, bug fixes, and DCRs. +author: jebriede +ms.author: jebriede +ms.date: 10/27/2022 +ms.topic: conceptual +--- + +# NuGet 6.4 Release Notes + +NuGet distribution vehicles: + +| NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | +|:---|:---|:---| +| [**6.4**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.4](https://visualstudio.microsoft.com/downloads/) | [7.0.100](https://dotnet.microsoft.com/download/dotnet-core/7.0)1 | + +1 Installed with Visual Studio 17.4 with .NET Core workload + +## Summary: What's New in 6.4 + +* Central package management is considered production ready and the preview message has been removed - [#11950](https://github.com/NuGet/Home/issues/11950) + +* Add ability to designate a package reference as used by every project in the repo - GlobalPackageReference [#10159](https://github.com/NuGet/Home/issues/10159) + +* Signed package verification is available for opt-in on Linux and macOS by setting the environment variable `DOTNET_NUGET_SIGNATURE_VERIFICATION` to `true`. - [#12033](https://github.com/NuGet/Home/issues/12033), [#11973](https://github.com/NuGet/Home/issues/11973) + +* Improved performance while loading packages for all tabs in the Package Manager UI and solution restore - [#11923](https://github.com/NuGet/Home/issues/11923) + +* Prompts for authentication with Azure Artifacts package sources in Visual Studio indicate that it is for NuGet purposes and contain specific source information. + +### Issues fixed in this release + +**DCRs:** + +* [DCR]: Static graph-based restore should handle an AggregateException from MSBuild - [#12100](https://github.com/NuGet/Home/issues/12100) + +* Signing: use separate fallback certificate bundles for code signing and timestamping - [#12033](https://github.com/NuGet/Home/issues/12033) + +* [DCR]: Central package management package source mapping should only look at configured feeds - [#11951](https://github.com/NuGet/Home/issues/11951) + +* [DCR]: Package Source Mapping API does not support saving - [#11935](https://github.com/NuGet/Home/issues/11935) + +* [DCR]: Plugin timeout defaults should be increased - [#11793](https://github.com/NuGet/Home/issues/11793) + +* Regenerate dgspec when customer triggers VS Feedback - [#8605](https://github.com/NuGet/Home/issues/8605) + +**Bugs:** + +* Details for Installed MAUI packages are missing NuGet Project PM UI - [#12130](https://github.com/NuGet/Home/issues/12130) + +* Static graph restore supports long paths on Windows - [#12121](https://github.com/NuGet/Home/issues/12121) + +* TelemetryUtility.IsVsOfflineFeed fails to correctly identify the local feed with 64-bit windows - [#12110](https://github.com/NuGet/Home/issues/12110) + +* [Bug]: IVsPackageInstallerServices APIs sometimes throw ProjectNotNominatedException - [#12103](https://github.com/NuGet/Home/issues/12103) + +* [Bug]: The transitive package doesn’t show in “Installed” tab until reopening the solution - [#12102](https://github.com/NuGet/Home/issues/12102) + +* [Bug]: Incorrect check for feed count when logging NU1507 warning about not using package source mapping - [#12095](https://github.com/NuGet/Home/issues/12095) + +* [Bug]: User needs to login multiple times while executing dotnet list package from private feeds - [#12090](https://github.com/NuGet/Home/issues/12090) + +* [Bug]: Rename VS NuGet Options "Clear NuGet Cache(s)" button - [#12076](https://github.com/NuGet/Home/issues/12076) + +* nuget.exe help command has unlocalized strings - [#12067](https://github.com/NuGet/Home/issues/12067) + +* Remove unused localized resources in nuget.exe - [#12066](https://github.com/NuGet/Home/issues/12066) + +* [Bug]: NugetSDKResolver doesn't give detailed error messages when it fails - [#12049](https://github.com/NuGet/Home/issues/12049) + +* [Bug]: Package signature validation fails on Linux due to missing 'thawte_Primary_Root_CA' in codesignctl.pem - [#12027](https://github.com/NuGet/Home/issues/12027) + +* [Bug]: "An item with the same key has already been added" when migrating to CPM with `ProjectDependencies` in solution file - [#12021](https://github.com/NuGet/Home/issues/12021) + +* [Bug]: Build failures in dev branch due to renaming of parameter from cpvmEnabled to centralPackageTransitivePinningEnabled - [#12020](https://github.com/NuGet/Home/issues/12020) + +* [Bug]: [Bug Bash] Other versions will lose after selecting a version in the custom version drop-down box for a while - [#11992](https://github.com/NuGet/Home/issues/11992) + +* Remove extra layers of abstractions from IVsProjectAdapter, move RuntimeGraph specific methods from VSProject to LegacyPackageReferenceProject - [#11980](https://github.com/NuGet/Home/issues/11980) + +* Reduce redundant SolutionDirectory calculation, special-case template wizard solution directory retrieval - [#11936](https://github.com/NuGet/Home/issues/11936) + +* Make VS adapter ProjectDirectory sync, use IVsHierarchy only to generate the guids, avoid double casting VSProject4 - [#11928](https://github.com/NuGet/Home/issues/11928) + +* [Bug]: NuGet.VisualStudio.Implementation.Extensibility.VsPathContextProvider.TryCreateContext fault - [#11918](https://github.com/NuGet/Home/issues/11918) + +* [Bug]: Package version downgrade is not detected due to invalid transitive pinning - [#11760](https://github.com/NuGet/Home/issues/11760) + +* _CleanPackageFiles target fails sporadically when (re)building - [#11710](https://github.com/NuGet/Home/issues/11710) + +* Avoid calling CreateLockFileTargetLibrary twice when AssetTargetFallback is used - [#11654](https://github.com/NuGet/Home/issues/11654) + +* Package source mapping should check for duplicate node keys - [#11573](https://github.com/NuGet/Home/issues/11573) + +* VSSolutionManager.DoesNuGetSupportsAnyProjectAsync can exit at the first supported projec - [#11555](https://github.com/NuGet/Home/issues/11555) + +* Review all sync ServiceLocator calls and move to async where possible - [#11203](https://github.com/NuGet/Home/issues/11203) + +* [Bug Bash]The new designs of hovered-on menu between VS and NuGet are inconsistent - [#10978](https://github.com/NuGet/Home/issues/10978) + +* [Bug]: Metadata like PrivateAssets does not flow from parent to transitively pinned dependency in CPM - [#10311](https://github.com/NuGet/Home/issues/10311) + +**[List of commits in this release](https://github.com/NuGet/NuGet.Client/compare/6.3.1.1...6.4.0.123)** + +### Community contributions + +Thank you to all the contributors who helped make this NuGet release awesome! + +* [kkirkfield](https://github.com/kkirkfield) + * [4738](https://github.com/NuGet/NuGet.Client/pull/4738) Fix issue with _CleanPackageFiles target failing on rebuild +* [MichaelSimons](https://github.com/MichaelSimons) + * [4737](https://github.com/NuGet/NuGet.Client/pull/4737) Tweak ApplySourceBuildPatchFiles target to support virtual mono repo (VMR) +* [marcin-krystianc](https://github.com/marcin-krystianc) + * [4611](https://github.com/NuGet/NuGet.Client/pull/4611) Central transitive dependencies should be considered only for root nodes +* [Forgind](https://github.com/Forgind) + * [4766](https://github.com/NuGet/NuGet.Client/pull/4766) Return warnings to log when NuGet SDK resolver fails +* [lbussell](https://github.com/lbussell) + * [4742](https://github.com/NuGet/NuGet.Client/pull/4742) Update TFM to net7.0 for source-build From a0e9b394132949409123645dfc344df298323a6f Mon Sep 17 00:00:00 2001 From: Andrew Arnott Date: Tue, 8 Nov 2022 11:32:33 -0700 Subject: [PATCH 683/988] Suggest a more generally appropriate import tag (#2932) * Suggest a more generally appropriate import tag --- docs/consume-packages/Central-Package-Management.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Central-Package-Management.md b/docs/consume-packages/Central-Package-Management.md index f5ca37d46..b23b59ef5 100644 --- a/docs/consume-packages/Central-Package-Management.md +++ b/docs/consume-packages/Central-Package-Management.md @@ -92,7 +92,7 @@ Repository - Project1 will evaluate the `Directory.Packages.props` file in the `Repository\Solution1\` directory and it must manually import the next one if so desired. ```xml - + From fff672174a84aabd2572e952959c67c1e7c62740 Mon Sep 17 00:00:00 2001 From: Fernando Aguilar Date: Thu, 10 Nov 2022 18:12:25 -0800 Subject: [PATCH 684/988] Documentation for NUGET_CLI_LANGUAGE envar in nuget.exe (#2937) Fixes https://github.com/NuGet/docs.microsoft.com-nuget/issues/2931 Added docs for NUGET_CLI_LANGUAGE envar in nuget.exe --- docs/reference/cli-reference/cli-ref-environment-variables.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/reference/cli-reference/cli-ref-environment-variables.md b/docs/reference/cli-reference/cli-ref-environment-variables.md index fd69e1e49..517901fb9 100644 --- a/docs/reference/cli-reference/cli-ref-environment-variables.md +++ b/docs/reference/cli-reference/cli-ref-environment-variables.md @@ -21,6 +21,7 @@ The list of properties documented in [NuGet pack and restore as MSBuild targets] | http_proxy | Http proxy used for NuGet HTTP operations. | This would be specified as `http://:@proxy.com`. | | no_proxy | Configures domains to bypass from using proxy. | Specified as domains separated by comma (,). | | EnableNuGetPackageRestore | Flag for if NuGet should implicitly grant consent if that's required by package on restore. | Specified flag is treated as *true* or *1*, any other value treated as flag not set. | +| NUGET_CLI_LANGUAGE | Changes nuget.exe output language | Available in 6.5 and higher versions. Supported values are [supported Visual Studio languages](/visualstudio/install/use-command-line-parameters-to-install-visual-studio?view=vs-2022&preserve-view=true#list-of-language-locales) locale names: `zh-cn`, `zh-tw`, `cs-cz`, `en-us`, `es-es`, `fr-fr`, `de-de`, `it-it`, `ja-jp`, `ko-kr`, `pl-pl`, `pt-br`, `ru-ru`, and `tr-tr`. | | NUGET_EXE_NO_PROMPT | Prevents the exe for prompting for credentials. | Any value except null or empty string will be treated as this flag set/true. | | FORCE_NUGET_EXE_INTERACTIVE | Global environment variable to force interactive mode. | Any value except null or empty string will be treated as this flag set/true. | | NUGET_PACKAGES | Path to use for the *global-packages* folder as described on [Managing the global packages and cache folders](../../consume-packages/managing-the-global-packages-and-cache-folders.md). | Specified as absolute path. | From f17b9d3c1c04a6c346ab0a3835fc313d2483ac22 Mon Sep 17 00:00:00 2001 From: Eilon Lipton Date: Tue, 22 Nov 2022 10:39:34 -0800 Subject: [PATCH 685/988] Remove extraneous "because" from localized package doc (#2945) --- docs/create-packages/Creating-Localized-Packages.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/create-packages/Creating-Localized-Packages.md b/docs/create-packages/Creating-Localized-Packages.md index bb8385772..e232765ba 100644 --- a/docs/create-packages/Creating-Localized-Packages.md +++ b/docs/create-packages/Creating-Localized-Packages.md @@ -139,7 +139,7 @@ You would create additional satellite assemblies in the same way for each suppor Using satellite packages has a few benefits: 1. **Package size**: The overall footprint of the primary package is minimized, and consumers only incur the costs of each language they want to use. -1. **Separate metadata**: Each satellite package has its own `.nuspec` file and thus its own localized metadata because. This can allow some consumers to find packages more easily by searching nuget.org with localized terms. +1. **Separate metadata**: Each satellite package has its own `.nuspec` file and thus its own localized metadata. This can allow some consumers to find packages more easily by searching nuget.org with localized terms. 1. **Decoupled releases**: Satellite assemblies can be released over time, rather than all at once, allowing you to spread out your localization efforts. However, satellite packages have their own set of disadvantages: From 0796e700c301fba8cfede1ff0d69ba20aed2705a Mon Sep 17 00:00:00 2001 From: Dmitry Tretyakov Date: Tue, 29 Nov 2022 18:31:05 +0100 Subject: [PATCH 686/988] Add JetBrains Space to the list of products (#2948) --- docs/hosting-packages/Overview.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/hosting-packages/Overview.md b/docs/hosting-packages/Overview.md index 5b6f36169..675c86c40 100644 --- a/docs/hosting-packages/Overview.md +++ b/docs/hosting-packages/Overview.md @@ -28,6 +28,7 @@ There are also several other NuGet hosting products such as [Azure Artifacts](ht - [Gitea](https://gitea.io), an open-source, self-hostable Git service supports NuGet as a [package registry](https://docs.gitea.io/en-us/packages/nuget/) - [GitHub package registry](https://help.github.com/articles/configuring-nuget-for-use-with-github-package-registry) - [GitLab Package Registry](https://docs.gitlab.com/ee/user/packages/nuget_repository/) +- [JetBrains Space](https://www.jetbrains.com/help/space/nuget-feed.html) - [LiGet](https://github.com/ai-traders/liget), an open-source implementation of NuGet V2 server that runs on kestrel in docker - [MyGet](https://myget.org) - [Nexus Repository OSS](https://www.sonatype.com/nexus-repository-oss) from Sonatype. From 7d099dd3b01e05af8c97a41bb2b4710584e88dce Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Wed, 7 Dec 2022 13:53:34 -0800 Subject: [PATCH 687/988] Correct RestoreIgnoreFailedSources example (#2957) It's `RestoreIgnoreFailedSources` not `RestoreIgnoreFailedSource` --- docs/reference/msbuild-targets.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index 684408de1..2c1f78327 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -460,7 +460,7 @@ Project file: ```xml - true + true ``` From c5acc9c606433d74486b7d3700c512cc379f1674 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Wed, 7 Dec 2022 13:53:42 -0800 Subject: [PATCH 688/988] Document warnings not as errors (#2954) --- docs/reference/Errors-and-Warnings.md | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/docs/reference/Errors-and-Warnings.md b/docs/reference/Errors-and-Warnings.md index 2dc24d6e0..a537a9d7f 100644 --- a/docs/reference/Errors-and-Warnings.md +++ b/docs/reference/Errors-and-Warnings.md @@ -14,13 +14,24 @@ In NuGet 4.3.0+, errors and warnings are numbered as described in this topic and The errors and warnings listed here are available only with [PackageReference-based](../consume-packages/package-references-in-project-files.md) projects and NuGet 4.3.0+. NuGet also honors MSBuild properties to suppress warnings or elevate them to errors. For more information, see [How to: Suppress Compiler Warnings](/visualstudio/ide/how-to-suppress-compiler-warnings) in the Visual Studio documentation. +NuGet supports the following configuration properties. + +| Property | Scope | Description | +|----------|-------|-------------| +| TreatWarningsAsErrors | Project | Treats all NuGet warnings as errors | +| NoWarn | Project, PackageReference | Suppress the warning for the project or package | +| WarningsAsErrors | Project | Treat certain warnings as errors | +| WarningsNotAsErrors | Project | Treat certain warnings not as errors. Used in combination with `TreatWarningsAsErrors` set to true. | + ## Errors | Group | Error Numbers | | --- | --- | | Invalid input errors | [NU1001](./errors-and-warnings/NU1001.md), [NU1002](./errors-and-warnings/NU1002.md), [NU1003](./errors-and-warnings/NU1003.md), [NU1004](./errors-and-warnings/NU1004.md), [NU1005](./errors-and-warnings/NU1005.md), [NU1006](./errors-and-warnings/NU1006.md), [NU1007](./errors-and-warnings/NU1007.md), [NU1008](./errors-and-warnings/NU1008.md), [NU1009](./errors-and-warnings/NU1009.md), [NU1010](./errors-and-warnings/NU1010.md), [NU1011](./errors-and-warnings/NU1011.md), [NU1012](./errors-and-warnings/NU1012.md), | | Missing package and project errors | [NU1100](./errors-and-warnings/NU1100.md), [NU1101](./errors-and-warnings/NU1101.md), [NU1102](./errors-and-warnings/NU1102.md), [NU1103](./errors-and-warnings/NU1103.md), [NU1104](./errors-and-warnings/NU1104.md), [NU1105](./errors-and-warnings/NU1105.md), [NU1106](./errors-and-warnings/NU1106.md), [NU1107](./errors-and-warnings/NU1107.md), [NU1108](./errors-and-warnings/NU1108.md), [NU1109](./errors-and-warnings/NU1109.md) | -| Compatibility errors | [NU1201](./errors-and-warnings/NU1201.md), [NU1202](./errors-and-warnings/NU1202.md), [NU1203](./errors-and-warnings/NU1203.md), [NU1401](./errors-and-warnings/NU1401.md), [NU1402](./errors-and-warnings/NU1402.md), [NU1403](./errors-and-warnings/NU1403.md) | +| Compatibility errors | [NU1201](./errors-and-warnings/NU1201.md), [NU1202](./errors-and-warnings/NU1202.md), [NU1203](./errors-and-warnings/NU1203.md), [NU1204](./errors-and-warnings/NU1204.md), [NU1401](./errors-and-warnings/NU1401.md), [NU1402](./errors-and-warnings/NU1402.md), [NU1403](./errors-and-warnings/NU1403.md) | +| Dotnet Tool restore errors | [NU1211](./errors-and-warnings/NU1211.md), [NU1212](./errors-and-warnings/NU1212.md), [NU1213](./errors-and-warnings/NU1213.md) | +| NuGet source errors | [NU1301](./errors-and-warnings/NU1301.md) | | NuGet internal errors | [NU1000](./errors-and-warnings/NU1000.md) | | Signed packages errors (creation and verification) | [NU3001](./errors-and-warnings/NU3001.md), [NU3004](./errors-and-warnings/NU3004.md), [NU3005](./errors-and-warnings/NU3005.md), [NU3008](./errors-and-warnings/NU3008.md), [NU3034](./errors-and-warnings/NU3034.md)| | Pack Errors | [NU5000](./errors-and-warnings/NU5000.md), [NU5001](./errors-and-warnings/NU5001.md), [NU5002](./errors-and-warnings/NU5002.md), [NU5003](./errors-and-warnings/NU5003.md), [NU5004](./errors-and-warnings/NU5004.md), [NU5005](./errors-and-warnings/NU5005.md), [NU5007](./errors-and-warnings/NU5007.md), [NU5008](./errors-and-warnings/NU5008.md), [NU5009](./errors-and-warnings/NU5009.md), [NU5010](./errors-and-warnings/NU5010.md), [NU5011](./errors-and-warnings/NU5011.md), [NU5012](./errors-and-warnings/NU5012.md), [NU5013](./errors-and-warnings/NU5013.md), [NU5014](./errors-and-warnings/NU5014.md), [NU5015](./errors-and-warnings/NU5015.md), [NU5016](./errors-and-warnings/NU5016.md), [NU5017](./errors-and-warnings/NU5017.md), [NU5018](./errors-and-warnings/NU5018.md), [NU5019](./errors-and-warnings/NU5019.md), [NU5020](./errors-and-warnings/NU5020.md), [NU5021](./errors-and-warnings/NU5021.md), [NU5022](./errors-and-warnings/NU5022.md), [NU5023](./errors-and-warnings/NU5023.md), [NU5024](./errors-and-warnings/NU5024.md), [NU5025](./errors-and-warnings/NU5025.md), [NU5026](./errors-and-warnings/NU5026.md), [NU5027](./errors-and-warnings/NU5027.md), [NU5028](./errors-and-warnings/NU5028.md), [NU5029](./errors-and-warnings/NU5029.md), [NU5036](./errors-and-warnings/NU5036.md), [NU5042](./errors-and-warnings/NU5042.md), [NU5049](./errors-and-warnings/NU5049.md) @@ -30,13 +41,13 @@ The errors and warnings listed here are available only with [PackageReference-ba | Group | Warning numbers | | --- | --- | -| Invalid input warnings | [NU1501](./errors-and-warnings/NU1501.md), [NU1502](./errors-and-warnings/NU1502.md), [NU1503](./errors-and-warnings/NU1503.md) | +| Invalid input warnings | [NU1501](./errors-and-warnings/NU1501.md), [NU1502](./errors-and-warnings/NU1502.md), [NU1503](./errors-and-warnings/NU1503.md), [NU1504](./errors-and-warnings/NU1504.md), [NU1505](./errors-and-warnings/NU1505.md), [NU1506](./errors-and-warnings/NU1506.md), [NU1507](./errors-and-warnings/NU1507.md) | | Unexpected package version warnings | [NU1601](./errors-and-warnings/NU1601.md), [NU1602](./errors-and-warnings/NU1602.md), [NU1603](./errors-and-warnings/NU1603.md), [NU1604](./errors-and-warnings/NU1604.md), [NU1605](./errors-and-warnings/NU1605.md), [NU1606](./errors-and-warnings/NU1108.md), [NU1607](./errors-and-warnings/NU1107.md) | | Resolver conflict warnings | [NU1608](./errors-and-warnings/NU1608.md) | | Package fallback warnings | [NU1701](./errors-and-warnings/NU1701.md) | | Feed warnings | [NU1801](./errors-and-warnings/NU1801.md), [NU1802](./errors-and-warnings/NU1802.md), [NU1803](./errors-and-warnings/NU1803.md) | | NuGet internal warnings | [NU1500](./errors-and-warnings/NU1500.md) | | Signed packages warnings (creation and verification) | [NU3000](./errors-and-warnings/NU3000.md), [NU3002](./errors-and-warnings/NU3002.md), [NU3003](./errors-and-warnings/NU3003.md), [NU3006](./errors-and-warnings/NU3006.md), [NU3007](./errors-and-warnings/NU3007.md), [NU3009](./errors-and-warnings/NU3009.md), [NU3010](./errors-and-warnings/NU3010.md), [NU3011](./errors-and-warnings/NU3011.md), [NU3012](./errors-and-warnings/NU3012.md), [NU3013](./errors-and-warnings/NU3013.md), [NU3014](./errors-and-warnings/NU3014.md), [NU3015](./errors-and-warnings/NU3015.md), [NU3016](./errors-and-warnings/NU3016.md), [NU3017](./errors-and-warnings/NU3017.md), [NU3018](./errors-and-warnings/NU3018.md), [NU3019](./errors-and-warnings/NU3019.md), [NU3020](./errors-and-warnings/NU3020.md), [NU3021](./errors-and-warnings/NU3021.md), [NU3022](./errors-and-warnings/NU3022.md), [NU3023](./errors-and-warnings/NU3023.md), [NU3024](./errors-and-warnings/NU3024.md), [NU3025](./errors-and-warnings/NU3025.md), [NU3026](./errors-and-warnings/NU3026.md), [NU3027](./errors-and-warnings/NU3027.md), [NU3028](./errors-and-warnings/NU3028.md), [NU3029](./errors-and-warnings/NU3029.md), [NU3030](./errors-and-warnings/NU3030.md), [NU3031](./errors-and-warnings/NU3031.md), [NU3032](./errors-and-warnings/NU3032.md), [NU3033](./errors-and-warnings/NU3033.md), [NU3035](./errors-and-warnings/NU3035.md), [NU3036](./errors-and-warnings/NU3036.md), [NU3037](./errors-and-warnings/NU3037.md), [NU3038](./errors-and-warnings/NU3038.md), [NU3040](./errors-and-warnings/NU3040.md) | -| Pack Warnings | [NU5100](./errors-and-warnings/NU5100.md), [NU5101](./errors-and-warnings/NU5101.md), [NU5102](./errors-and-warnings/NU5102.md), [NU5103](./errors-and-warnings/NU5103.md), [NU5104](./errors-and-warnings/NU5104.md), [NU5105](./errors-and-warnings/NU5105.md), [NU5106](./errors-and-warnings/NU5106.md), [NU5107](./errors-and-warnings/NU5107.md), [NU5108](./errors-and-warnings/NU5108.md), [NU5109](./errors-and-warnings/NU5109.md), [NU5110](./errors-and-warnings/NU5110.md), [NU5111](./errors-and-warnings/NU5111.md), [NU5112](./errors-and-warnings/NU5112.md), [NU5114](./errors-and-warnings/NU5114.md), [NU5115](./errors-and-warnings/NU5115.md), [NU5116](./errors-and-warnings/NU5116.md), [NU5117](./errors-and-warnings/NU5117.md), [NU5118](./errors-and-warnings/NU5118.md), [NU5119](./errors-and-warnings/NU5119.md), [NU5120](./errors-and-warnings/NU5120.md), [NU5121](./errors-and-warnings/NU5121.md), [NU5122](./errors-and-warnings/NU5122.md), [NU5123](./errors-and-warnings/NU5123.md), [NU5127](./errors-and-warnings/NU5127.md), [NU5128](./errors-and-warnings/NU5128.md), [NU5129](./errors-and-warnings/NU5129.md), [NU5130](./errors-and-warnings/NU5130.md), [NU5131](./errors-and-warnings/NU5131.md), [NU5500](./errors-and-warnings/NU5500.md), [NU5501](./errors-and-warnings/NU5501.md) +| Pack Warnings | [NU5100](./errors-and-warnings/NU5100.md), [NU5101](./errors-and-warnings/NU5101.md), [NU5102](./errors-and-warnings/NU5102.md), [NU5103](./errors-and-warnings/NU5103.md), [NU5104](./errors-and-warnings/NU5104.md), [NU5105](./errors-and-warnings/NU5105.md), [NU5106](./errors-and-warnings/NU5106.md), [NU5107](./errors-and-warnings/NU5107.md), [NU5108](./errors-and-warnings/NU5108.md), [NU5109](./errors-and-warnings/NU5109.md), [NU5110](./errors-and-warnings/NU5110.md), [NU5111](./errors-and-warnings/NU5111.md), [NU5112](./errors-and-warnings/NU5112.md), [NU5114](./errors-and-warnings/NU5114.md), [NU5115](./errors-and-warnings/NU5115.md), [NU5116](./errors-and-warnings/NU5116.md), [NU5117](./errors-and-warnings/NU5117.md), [NU5118](./errors-and-warnings/NU5118.md), [NU5119](./errors-and-warnings/NU5119.md), [NU5120](./errors-and-warnings/NU5120.md), [NU5121](./errors-and-warnings/NU5121.md), [NU5122](./errors-and-warnings/NU5122.md), [NU5123](./errors-and-warnings/NU5123.md), [NU5127](./errors-and-warnings/NU5127.md), [NU5128](./errors-and-warnings/NU5128.md), [NU5129](./errors-and-warnings/NU5129.md), [NU5130](./errors-and-warnings/NU5130.md), [NU5131](./errors-and-warnings/NU5131.md), [NU5133](./errors-and-warnings/NU5133.md), [NU5500](./errors-and-warnings/NU5500.md), [NU5501](./errors-and-warnings/NU5501.md) | License specific Pack Warnings | [NU5124](./errors-and-warnings/NU5124.md), [NU5125](./errors-and-warnings/NU5125.md) | Icon specific Pack Warnings | [NU5046](./errors-and-warnings/NU5046.md), [NU5047](./errors-and-warnings/NU5047.md), [NU5048](./errors-and-warnings/NU5048.md) | From 3ef9620b751fdbc19974fb5d56e32fbc2a5696ab Mon Sep 17 00:00:00 2001 From: Genevieve Warren <24882762+gewarren@users.noreply.github.com> Date: Thu, 8 Dec 2022 15:28:45 -0800 Subject: [PATCH 689/988] Add link and cleanup (#2951) --- docs/create-packages/Sign-a-Package.md | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/docs/create-packages/Sign-a-Package.md b/docs/create-packages/Sign-a-Package.md index e85ccb023..992ea16d3 100644 --- a/docs/create-packages/Sign-a-Package.md +++ b/docs/create-packages/Sign-a-Package.md @@ -8,13 +8,13 @@ ms.topic: conceptual ms.reviewer: anangaur --- -# Signing NuGet Packages +# Sign a NuGet package -Signed packages allows for content integrity verification checks which provides protection against content tampering. The package signature also serves as the single source of truth about the actual origin of the package and bolsters package authenticity for the consumer. This guide assumes you have already [created a package](creating-a-package.md). +A signed package allows for content integrity verification checks, which provides protection against content tampering. The package signature also serves as the single source of truth about the actual origin of the package and bolsters package authenticity for the consumer. This guide assumes you have already [created a package](creating-a-package.md). ## Get a code signing certificate -Valid certificates may be obtained from a public certificate authority such as [DigiCert](https://www.digicert.com/code-signing/), [Global Sign](https://www.globalsign.com/en/code-signing-certificate/), [Comodo](https://www.comodo.com/e-commerce/code-signing/code-signing-certificate.php), [Certum](https://www.certum.eu/certum/cert,offer_en_open_source_cs.xml), etc. The complete list of certification authorities trusted by Windows can be obtained from [http://aka.ms/trustcertpartners](/security/trusted-root/participants-list). +Valid certificates can be obtained from a public certificate authority such as [DigiCert](https://www.digicert.com/code-signing/), [Global Sign](https://www.globalsign.com/en/code-signing-certificate/), [Comodo](https://www.comodo.com/e-commerce/code-signing/code-signing-certificate.php), or [Certum](https://www.certum.eu/certum/cert,offer_en_open_source_cs.xml). You can obtain the complete list of certification authorities trusted by Windows from [http://aka.ms/trustcertpartners](/security/trusted-root/participants-list). You can use self-issued certificates for testing purposes. However, packages signed using self-issued certificates are not accepted by NuGet.org. Learn more about [creating a test certificate](#create-a-test-certificate) @@ -59,14 +59,15 @@ To publish a signed package, you must first register the certificate with NuGet. 1. Browse and select the certficate file that was exported earlier. ![Registered Certificates](../reference/media/registered-certs.png) -**Note** -* One user can submit multiple certificates and the same certificate can be registered by multiple users. -* Once a user has a certificate registered, all future package submissions **must** be signed with one of the certificates. See [Manage signing requirements for your package on NuGet.org](#manage-signing-requirements-for-your-package-on-nugetorg) -* Users can also remove a registered certificate from the account. Once a certificate is removed, new packages signed with that certificate will fail at submission. Existing packages aren't affected. +> [!NOTE] +> +> * One user can submit multiple certificates and the same certificate can be registered by multiple users. +> * Once a user has a certificate registered, all future package submissions **must** be signed with one of the certificates. See [Manage signing requirements for your package on NuGet.org](#manage-signing-requirements-for-your-package-on-nugetorg) +> * Users can also remove a registered certificate from the account. Once a certificate is removed, new packages signed with that certificate will fail at submission. Existing packages aren't affected. ## Publish the package -You are now ready to publish the package to NuGet.org. See [Publishing packages](../nuget-org/Publish-a-package.md). +You're now ready to publish the package to NuGet.org. See [Publishing packages](../nuget-org/Publish-a-package.md). ## Create a test certificate @@ -90,14 +91,15 @@ This command creates a testing certificate available in the current user's perso > NuGet.org does not accept packages signed with self-issued certificates. ## Manage signing requirements for your package on NuGet.org + 1. [Sign in](https://www.nuget.org/users/account/LogOn?returnUrl=%2F) to NuGet.org. 1. Go to `Manage Packages` ![Configure package signers](../reference/media/configure-package-signers.png) -* If you are the sole owner of a package, you are the required signer i.e. you can use any of the registered certificates to sign and publish your packages to NuGet.org. +* If you are the sole owner of a package, you are the required signer, that is, you can use any of the registered certificates to sign and publish your packages to NuGet.org. -* If a package has multiple owners, by default, "Any" owner's certificates can be used to sign the package. As a co-owner of the package, you can override "Any" with yourself or any other co-owner to be the required signer. If you make an owner who does not have any certificate registered, then unsigned packages will be allowed. +* If a package has multiple owners, by default, "Any" owner's certificates can be used to sign the package. As a co-owner of the package, you can override "Any" with yourself or any other co-owner to be the required signer. If you make an owner who does not have any certificate registered, then unsigned packages will be allowed. * Similarly, if the default "Any" option is selected for a package where one owner has a certificate registered and another owner does not have any certificate registered, then NuGet.org accepts either a signed package with a signature registered by one of its owners or an unsigned package (because one of the owners does not have any certificate registered). @@ -105,3 +107,4 @@ This command creates a testing certificate available in the current user's perso - [Manage package trust boundaries](../consume-packages/installing-signed-packages.md) - [Signed Packages Reference](../reference/Signed-Packages-Reference.md) +- [.NET signed package verification](/dotnet/core/tools/nuget-signed-package-verification) From 31bea6a15f954d5f9e483f85b5cfd0c9b4ee797b Mon Sep 17 00:00:00 2001 From: Andreas Stolpmann Date: Tue, 13 Dec 2022 02:51:03 +0100 Subject: [PATCH 690/988] Fix Typo: buildMultiTargetting > buildMultiTargeting (#2961) --- docs/concepts/MSBuild-props-and-targets.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/MSBuild-props-and-targets.md b/docs/concepts/MSBuild-props-and-targets.md index c806f5523..10e630270 100644 --- a/docs/concepts/MSBuild-props-and-targets.md +++ b/docs/concepts/MSBuild-props-and-targets.md @@ -19,7 +19,7 @@ As NuGet has evolved, various different folders for build `.props` and `.targets | Folder | NuGet Version | Use | |--------|---------------|-----| | build | 2.5+ | Build logic for every framework of a project. | -| buildMultiTargetting | 4.0+ | Build logic for the `outer build` for projects that target multiple frameworks. PackageReference only. | +| buildMultiTargeting | 4.0+ | Build logic for the `outer build` for projects that target multiple frameworks. PackageReference only. | | buildTransitive | 5.0+ | Build logic for assets that flow transitively to any consuming project. See the [feature](https://github.com/NuGet/Home/wiki/Allow-package--authors-to-define-build-assets-transitive-behavior) page. PackageReference only. | ## Framework specific build folder From 9efb4cde3857ba571737f44e616e9696be119dba Mon Sep 17 00:00:00 2001 From: Joel Verhagen Date: Wed, 21 Dec 2022 14:41:13 -0600 Subject: [PATCH 691/988] Remove cyclic reference in API key include (#2973) Resolve https://github.com/NuGet/docs.microsoft.com-nuget/issues/2627 --- docs/nuget-org/Publish-a-package.md | 2 +- .../create-and-publish-a-package-using-the-dotnet-cli.md | 2 +- ...-and-publish-a-package-using-visual-studio-net-framework.md | 2 +- .../create-and-publish-a-package-using-visual-studio.md | 2 +- docs/quickstart/includes/publish-api-key-with-link.md | 3 +++ docs/quickstart/includes/publish-api-key.md | 2 +- 6 files changed, 8 insertions(+), 5 deletions(-) create mode 100644 docs/quickstart/includes/publish-api-key-with-link.md diff --git a/docs/nuget-org/Publish-a-package.md b/docs/nuget-org/Publish-a-package.md index 4fbc62825..b2df93f56 100644 --- a/docs/nuget-org/Publish-a-package.md +++ b/docs/nuget-org/Publish-a-package.md @@ -46,7 +46,7 @@ To use either command line, you first need to get an API key from nuget.org. #### Create an API key -[!INCLUDE [publish-api-key](../quickstart/includes/publish-api-key.md)] +[!INCLUDE [publish-api-key](../quickstart/includes/publish-api-key-with-link.md)] #### Use the dotnet CLI diff --git a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md index 5ee25e365..70092f47a 100644 --- a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md +++ b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md @@ -82,7 +82,7 @@ Publish your *.nupkg* file to nuget.org by using the [dotnet nuget push](/dotnet ### Get your API key -[!INCLUDE [publish-api-key](includes/publish-api-key.md)] +[!INCLUDE [publish-api-key](includes/publish-api-key-with-link.md)] ### Publish with dotnet nuget push diff --git a/docs/quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md b/docs/quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md index c4ab0ba07..79355db0f 100644 --- a/docs/quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md +++ b/docs/quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md @@ -145,7 +145,7 @@ If you'd like to test and validate your package before publishing it a public ga ### Acquire your API key -[!INCLUDE [publish-api-key](includes/publish-api-key.md)] +[!INCLUDE [publish-api-key](includes/publish-api-key-with-link.md)] ### Publish with the NuGet CLI diff --git a/docs/quickstart/create-and-publish-a-package-using-visual-studio.md b/docs/quickstart/create-and-publish-a-package-using-visual-studio.md index 8a5afa509..e4c07b65a 100644 --- a/docs/quickstart/create-and-publish-a-package-using-visual-studio.md +++ b/docs/quickstart/create-and-publish-a-package-using-visual-studio.md @@ -146,7 +146,7 @@ After you've created a *.nupkg* file, publish it to nuget.org by using either th Before you publish your NuGet package, create an API key: -[!INCLUDE [publish-api-key](includes/publish-api-key.md)] +[!INCLUDE [publish-api-key](includes/publish-api-key-with-link.md)] ### Publish with the .NET CLI or NuGet CLI diff --git a/docs/quickstart/includes/publish-api-key-with-link.md b/docs/quickstart/includes/publish-api-key-with-link.md new file mode 100644 index 000000000..b0162ee05 --- /dev/null +++ b/docs/quickstart/includes/publish-api-key-with-link.md @@ -0,0 +1,3 @@ +[!INCLUDE [publish-api-key](publish-api-key.md)] + +For more information, see [scoped API keys](../../nuget-org/scoped-api-keys.md). diff --git a/docs/quickstart/includes/publish-api-key.md b/docs/quickstart/includes/publish-api-key.md index 399959ae9..b2588b6be 100644 --- a/docs/quickstart/includes/publish-api-key.md +++ b/docs/quickstart/includes/publish-api-key.md @@ -21,4 +21,4 @@ *Scoping* lets you create separate API keys for different purposes. Each key has an expiration timeframe, and you can scope the key to specific packages or glob patterns. You also scope each key to specific operations: Push new packages and package versions, push only new package versions, or unlist. -Through scoping, you can create API keys for different people who manage packages for your organization so they have only the permissions they need. For more information, see [scoped API keys](../../nuget-org/scoped-api-keys.md). +Through scoping, you can create API keys for different people who manage packages for your organization so they have only the permissions they need. \ No newline at end of file From 4a0b1a5db34d8ad1e59ed7a311de51cbc8bb784d Mon Sep 17 00:00:00 2001 From: Joel Verhagen Date: Wed, 21 Dec 2022 14:42:31 -0600 Subject: [PATCH 692/988] Use sample values for the base URLs that change sometimes on NuGet.org (#2971) Resolve https://github.com/NuGet/docs.microsoft.com-nuget/issues/2963 --- docs/api/_data/package-registration-index.json | 8 ++++---- docs/api/_data/package-registration-leaf.json | 4 ++-- docs/api/_data/package-registration-page.json | 10 +++++----- docs/api/_data/search-result.json | 18 +++++++++--------- docs/api/package-base-address-resource.md | 8 +++++++- docs/api/registration-base-url-resource.md | 14 ++++++++++---- .../search-autocomplete-service-resource.md | 6 ++++-- docs/api/search-query-service-resource.md | 6 ++++-- 8 files changed, 45 insertions(+), 29 deletions(-) diff --git a/docs/api/_data/package-registration-index.json b/docs/api/_data/package-registration-index.json index 41007944f..641dfcfa1 100644 --- a/docs/api/_data/package-registration-index.json +++ b/docs/api/_data/package-registration-index.json @@ -2,11 +2,11 @@ "count": 1, "items": [ { - "@id": "https://api.nuget.org/v3/registration3/nuget.server.core/index.json#page/3.0.0-beta/3.0.0-beta", + "@id": "https://api.nuget.org/v3/registration-sample/nuget.server.core/index.json#page/3.0.0-beta/3.0.0-beta", "count": 1, "items": [ { - "@id": "https://api.nuget.org/v3/registration3/nuget.server.core/3.0.0-beta.json", + "@id": "https://api.nuget.org/v3/registration-sample/nuget.server.core/3.0.0-beta.json", "catalogEntry": { "@id": "https://api.nuget.org/v3/catalog0/data/2017.10.05.18.41.33/nuget.server.core.3.0.0-beta.json", "authors": ".NET Foundation", @@ -18,7 +18,7 @@ "@id": "https://api.nuget.org/v3/catalog0/data/2017.10.05.18.41.33/nuget.server.core.3.0.0-beta.json#dependencygroup/nuget.core", "id": "NuGet.Core", "range": "[2.14.0, )", - "registration": "https://api.nuget.org/v3/registration3/nuget.core/index.json" + "registration": "https://api.nuget.org/v3/registration-sample/nuget.core/index.json" } ] } @@ -46,7 +46,7 @@ ] }, "packageContent": "https://api.nuget.org/v3-flatcontainer/nuget.server.core/3.0.0-beta/nuget.server.core.3.0.0-beta.nupkg", - "registration": "https://api.nuget.org/v3/registration3/nuget.server.core/index.json" + "registration": "https://api.nuget.org/v3/registration-sample/nuget.server.core/index.json" } ], "lower": "3.0.0-beta", diff --git a/docs/api/_data/package-registration-leaf.json b/docs/api/_data/package-registration-leaf.json index 7eac0c826..ebcc2d92e 100644 --- a/docs/api/_data/package-registration-leaf.json +++ b/docs/api/_data/package-registration-leaf.json @@ -1,8 +1,8 @@ { - "@id": "https://api.nuget.org/v3/registration3/nuget.versioning/4.3.0.json", + "@id": "https://api.nuget.org/v3/registration-sample/nuget.versioning/4.3.0.json", "catalogEntry": "https://api.nuget.org/v3/catalog0/data/2017.08.11.18.24.22/nuget.versioning.4.3.0.json", "listed": true, "packageContent": "https://api.nuget.org/v3-flatcontainer/nuget.versioning/4.3.0/nuget.versioning.4.3.0.nupkg", "published": "2017-08-11T18:24:14.36+00:00", - "registration": "https://api.nuget.org/v3/registration3/nuget.versioning/index.json" + "registration": "https://api.nuget.org/v3/registration-sample/nuget.versioning/index.json" } \ No newline at end of file diff --git a/docs/api/_data/package-registration-page.json b/docs/api/_data/package-registration-page.json index 42b0d35e0..3ca362518 100644 --- a/docs/api/_data/package-registration-page.json +++ b/docs/api/_data/package-registration-page.json @@ -1,11 +1,11 @@ { "count": 2, "lower": "1.0.531", - "parent": "https://api.nuget.org/v3/registration3/nuget.protocol.v3.example/index.json", + "parent": "https://api.nuget.org/v3/registration-sample/nuget.protocol.v3.example/index.json", "upper": "1.0.729-unstable", "items": [ { - "@id": "https://api.nuget.org/v3/registration3/nuget.protocol.v3.example/1.0.531.json", + "@id": "https://api.nuget.org/v3/registration-sample/nuget.protocol.v3.example/1.0.531.json", "@type": "Package", "commitId": "e0b9ca79-75b5-414f-9e3e-de9534b5cfd1", "commitTimeStamp": "2017-10-26T14:12:19.3439088Z", @@ -25,10 +25,10 @@ "version": "1.0.531" }, "packageContent": "https://api.nuget.org/v3-flatcontainer/nuget.protocol.v3.example/1.0.531/nuget.protocol.v3.example.1.0.531.nupkg", - "registration": "https://api.nuget.org/v3/registration3/nuget.protocol.v3.example/index.json" + "registration": "https://api.nuget.org/v3/registration-sample/nuget.protocol.v3.example/index.json" }, { - "@id": "https://api.nuget.org/v3/registration3/nuget.protocol.v3.example/1.0.729-unstable.json", + "@id": "https://api.nuget.org/v3/registration-sample/nuget.protocol.v3.example/1.0.729-unstable.json", "@type": "Package", "commitId": "e0b9ca79-75b5-414f-9e3e-de9534b5cfd1", "commitTimeStamp": "2017-10-26T14:12:19.3439088Z", @@ -59,7 +59,7 @@ "version": "1.0.729-Unstable" }, "packageContent": "https://api.nuget.org/v3-flatcontainer/nuget.protocol.v3.example/1.0.729-unstable/nuget.protocol.v3.example.1.0.729-unstable.nupkg", - "registration": "https://api.nuget.org/v3/registration3/nuget.protocol.v3.example/index.json" + "registration": "https://api.nuget.org/v3/registration-sample/nuget.protocol.v3.example/index.json" } ] } diff --git a/docs/api/_data/search-result.json b/docs/api/_data/search-result.json index 74e1973a5..b58fbdaa4 100644 --- a/docs/api/_data/search-result.json +++ b/docs/api/_data/search-result.json @@ -2,7 +2,7 @@ "totalHits": 2, "data": [ { - "registration": "https://api.nuget.org/v3/registration3/nuget.versioning/index.json", + "registration": "https://api.nuget.org/v3/registration-sample/nuget.versioning/index.json", "id": "NuGet.Versioning", "version": "4.4.0", "description": "NuGet's implementation of Semantic Versioning.", @@ -22,29 +22,29 @@ { "version": "3.3.0", "downloads": 50343, - "@id": "https://api.nuget.org/v3/registration3/nuget.versioning/3.3.0.json" + "@id": "https://api.nuget.org/v3/registration-sample/nuget.versioning/3.3.0.json" }, { "version": "3.4.3", "downloads": 27932, - "@id": "https://api.nuget.org/v3/registration3/nuget.versioning/3.4.3.json" + "@id": "https://api.nuget.org/v3/registration-sample/nuget.versioning/3.4.3.json" }, { "version": "4.0.0", "downloads": 63004, - "@id": "https://api.nuget.org/v3/registration3/nuget.versioning/4.0.0.json" + "@id": "https://api.nuget.org/v3/registration-sample/nuget.versioning/4.0.0.json" }, { "version": "4.4.0", "downloads": 617, - "@id": "https://api.nuget.org/v3/registration3/nuget.versioning/4.4.0.json" + "@id": "https://api.nuget.org/v3/registration-sample/nuget.versioning/4.4.0.json" } ] }, { - "@id": "https://api.nuget.org/v3/registration3/nerdbank.gitversioning/index.json", + "@id": "https://api.nuget.org/v3/registration-sample/nerdbank.gitversioning/index.json", "@type": "Package", - "registration": "https://api.nuget.org/v3/registration3/nerdbank.gitversioning/index.json", + "registration": "https://api.nuget.org/v3/registration-sample/nerdbank.gitversioning/index.json", "id": "Nerdbank.GitVersioning", "version": "2.0.41", "description": "Stamps your assemblies with semver 2.0 compliant git commit specific version information and provides NuGet versioning information as well.", @@ -60,12 +60,12 @@ { "version": "1.6.35", "downloads": 10229, - "@id": "https://api.nuget.org/v3/registration3/nerdbank.gitversioning/1.6.35.json" + "@id": "https://api.nuget.org/v3/registration-sample/nerdbank.gitversioning/1.6.35.json" }, { "version": "2.0.41", "downloads": 1677, - "@id": "https://api.nuget.org/v3/registration3/nerdbank.gitversioning/2.0.41.json" + "@id": "https://api.nuget.org/v3/registration-sample/nerdbank.gitversioning/2.0.41.json" } ] } diff --git a/docs/api/package-base-address-resource.md b/docs/api/package-base-address-resource.md index 56bdc55b0..f2bc08624 100644 --- a/docs/api/package-base-address-resource.md +++ b/docs/api/package-base-address-resource.md @@ -28,7 +28,7 @@ PackageBaseAddress/3.0.0 | The initial release ## Base URL The base URL for the following APIs is the value of the `@id` property associated with the aforementioned -resource `@type` value. In the following document, the placeholder base URL `{@id}` will be used. +resource `@type` value. In the following document, the placeholder base URL `{@id}` will be used. The base URL may change based on implementation or infrastructure changes within the package source so it must be dynamically fetched from the [service index](service-index.md) by the client software. ## HTTP methods @@ -80,6 +80,8 @@ in the following endpoints. GET https://api.nuget.org/v3-flatcontainer/owin/index.json ``` +Make sure to fetch the base URL (`https://api.nuget.org/v3-flatcontainer/` in this sample) from the service index as mentioned in the [base URL](#base-url) section. + ### Sample response [!code-JSON [package-base-address-index.json](./_data/package-base-address-index.json)] @@ -121,6 +123,8 @@ If the package does not exist on the package source, a 404 status code is return GET https://api.nuget.org/v3-flatcontainer/newtonsoft.json/9.0.1/newtonsoft.json.9.0.1.nupkg ``` +Make sure to fetch the base URL (`https://api.nuget.org/v3-flatcontainer/` in this sample) from the service index as mentioned in the [base URL](#base-url) section. + ### Sample response The binary stream that is the .nupkg for Newtonsoft.Json 9.0.1. @@ -161,6 +165,8 @@ If the package does not exist on the package source, a 404 status code is return GET https://api.nuget.org/v3-flatcontainer/newtonsoft.json/6.0.4/newtonsoft.json.nuspec ``` +Make sure to fetch the base URL (`https://api.nuget.org/v3-flatcontainer/` in this sample) from the service index as mentioned in the [base URL](#base-url) section. + ### Sample response [!code-XML [newtonsoft.json.6.0.4.xml](./_data/newtonsoft.json.6.0.4.xml)] diff --git a/docs/api/registration-base-url-resource.md b/docs/api/registration-base-url-resource.md index b6136032e..53aceb21e 100644 --- a/docs/api/registration-base-url-resource.md +++ b/docs/api/registration-base-url-resource.md @@ -54,7 +54,7 @@ For more information about SemVer 2.0.0, see ## Base URL The base URL for the following APIs is the value of the `@id` property associated with the aforementioned -resource `@type` values. In the following document, the placeholder base URL `{@id}` will be used. +resource `@type` values. In the following document, the placeholder base URL `{@id}` will be used. The base URL may change based on implementation or infrastructure changes within the package source so it must be dynamically fetched from the [service index](service-index.md) by the client software. ## HTTP methods @@ -269,9 +269,11 @@ severity | string | yes | Severity of advisory: "0" = Low, "1" = Modera ### Sample request ``` -GET https://api.nuget.org/v3/registration3/nuget.server.core/index.json +GET https://api.nuget.org/v3/registration-sample/nuget.server.core/index.json ``` +Make sure to fetch the base URL (`https://api.nuget.org/v3/registration-sample/` in this sample) from the service index as mentioned in the [base URL](#base-url) section. + ### Sample response [!code-JSON [package-registration-index.json](./_data/package-registration-index.json)] @@ -308,9 +310,11 @@ The shape of the registration leaf objects is the same as in the registration in ## Sample request ``` -GET https://api.nuget.org/v3/registration3/ravendb.client/page/1.0.531/1.0.729-unstable.json +GET https://api.nuget.org/v3/registration-sample/ravendb.client/page/1.0.531/1.0.729-unstable.json ``` +Make sure to fetch the base URL (`https://api.nuget.org/v3/registration-sample/` in this sample) from the service index as mentioned in the [base URL](#base-url) section. + ## Sample response [!code-JSON [package-registration-page.json](./_data/package-registration-page.json)] @@ -348,9 +352,11 @@ registration | string | no | The URL to the registration index ### Sample request ``` -GET https://api.nuget.org/v3/registration3/nuget.versioning/4.3.0.json +GET https://api.nuget.org/v3/registration-sample/nuget.versioning/4.3.0.json ``` +Make sure to fetch the base URL (`https://api.nuget.org/v3/registration-sample/` in this sample) from the service index as mentioned in the [base URL](#base-url) section. + ### Sample response [!code-JSON [package-registration-leaf.json](./_data/package-registration-leaf.json)] diff --git a/docs/api/search-autocomplete-service-resource.md b/docs/api/search-autocomplete-service-resource.md index c715a237d..5f8efe82a 100644 --- a/docs/api/search-autocomplete-service-resource.md +++ b/docs/api/search-autocomplete-service-resource.md @@ -30,7 +30,7 @@ This version introduces support for the `packageType` query parameter, allowing ## Base URL The base URL for the following APIs is the value of the `@id` property associated with one of the aforementioned -resource `@type` values. In the following document, the placeholder base URL `{@id}` will be used. +resource `@type` values. In the following document, the placeholder base URL `{@id}` will be used. The base URL may change based on implementation or infrastructure changes within the package source so it must be dynamically fetched from the [service index](service-index.md) by the client software. ## HTTP Methods @@ -94,9 +94,11 @@ data | array of strings | yes | The package IDs matched by the request ### Sample request ``` -GET https://api-v2v3search-0.nuget.org/autocomplete?q=storage&prerelease=true +GET https://search-sample.nuget.org/autocomplete?q=storage&prerelease=true ``` +Make sure to fetch the base URL (`https://search-sample.nuget.org/autocomplete` in this sample) from the service index as mentioned in the [base URL](#base-url) section. + ### Sample response [!code-JSON [autocomplete-id-result.json](./_data/autocomplete-id-result.json)] diff --git a/docs/api/search-query-service-resource.md b/docs/api/search-query-service-resource.md index c244e14e4..7ad5b2cf4 100644 --- a/docs/api/search-query-service-resource.md +++ b/docs/api/search-query-service-resource.md @@ -30,7 +30,7 @@ This version introduces support for the `packageType` query parameter and the `p ## Base URL The base URL for the following API is the value of the `@id` property associated with one of the aforementioned -resource `@type` values. In the following document, the placeholder base URL `{@id}` will be used. +resource `@type` values. In the following document, the placeholder base URL `{@id}` will be used. The base URL may change based on implementation or infrastructure changes within the package source so it must be dynamically fetched from the [service index](service-index.md) by the client software. ## HTTP methods @@ -143,9 +143,11 @@ name | string | yes | The name of the package type. ### Sample request ``` -GET https://azuresearch-usnc.nuget.org/query?q=NuGet.Versioning&prerelease=false&semVerLevel=2.0.0 +GET https://search-sample.nuget.org/query?q=NuGet.Versioning&prerelease=false&semVerLevel=2.0.0 ``` +Make sure to fetch the base URL (`https://search-sample.nuget.org/query` in this sample) from the service index as mentioned in the [base URL](#base-url) section. + ### Sample response [!code-JSON [search-result.json](./_data/search-result.json)] From 1b654961711563f31a902643c45ddf2d71e53bac Mon Sep 17 00:00:00 2001 From: Joel Verhagen Date: Wed, 21 Dec 2022 14:43:33 -0600 Subject: [PATCH 693/988] Add missing registration properties, most importantly readmeUrl (#2972) Address https://github.com/NuGet/docs.microsoft.com-nuget/issues/2752 --- docs/api/registration-base-url-resource.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/docs/api/registration-base-url-resource.md b/docs/api/registration-base-url-resource.md index 53aceb21e..d76d47d2f 100644 --- a/docs/api/registration-base-url-resource.md +++ b/docs/api/registration-base-url-resource.md @@ -174,15 +174,18 @@ deprecation | object | no | The deprecati description | string | no | iconUrl | string | no | id | string | yes | The ID of the package +language | string | no | licenseUrl | string | no | licenseExpression | string | no | listed | boolean | no | Should be considered as listed if absent minClientVersion | string | no | +packageContent | string | no | Duplicate of the same property in the parent object, included only for legacy reasons projectUrl | string | no | published | string | no | A string containing a ISO 8601 timestamp of when the package was published +readmeUrl | string | no | A URL for the rendered (HTML web page) view of the package README requireLicenseAcceptance | boolean | no | summary | string | no | -tags | string or array of string | no | +tags | string or array of strings | no | title | string | no | version | string | yes | The full version string after normalization vulnerabilities | array of objects | no | The security vulnerabilities of the package From 90140b857dd32c585b1ddac678d6bcdf7b126abb Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Thu, 22 Dec 2022 11:28:15 +0100 Subject: [PATCH 694/988] Fix typo in NU5119 (#2970) --- docs/reference/errors-and-warnings/NU5119.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/errors-and-warnings/NU5119.md b/docs/reference/errors-and-warnings/NU5119.md index f5924c4e5..619691945 100644 --- a/docs/reference/errors-and-warnings/NU5119.md +++ b/docs/reference/errors-and-warnings/NU5119.md @@ -20,5 +20,5 @@ The NuGet pack operation found a `.nupkg` file or a file/folder starting with `. ### Solution -If you intent to package a `.nupkg` file or a file/folder starting with `.` then please use `-NoDefaultExcludes` property to allow the packaging of those files/folders. +If you intend to package a `.nupkg` file or a file/folder starting with `.` then please use `-NoDefaultExcludes` property to allow the packaging of those files/folders. From 7907b764a2c28efffd023a4c2c44b117e520c1bb Mon Sep 17 00:00:00 2001 From: Ian Kinkead <96138825+kinkeadian25@users.noreply.github.com> Date: Tue, 3 Jan 2023 10:27:04 -0800 Subject: [PATCH 695/988] Add mention for nuget.exe spec default to MIT License (#2955) Acknowledging that nuget.exe spec with version 6.0.0 of the client, yields a .nuspec that defaults to MIT license. --- docs/reference/cli-reference/cli-ref-spec.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/cli-reference/cli-ref-spec.md b/docs/reference/cli-reference/cli-ref-spec.md index 04e206701..e519b278b 100644 --- a/docs/reference/cli-reference/cli-ref-spec.md +++ b/docs/reference/cli-reference/cli-ref-spec.md @@ -11,7 +11,7 @@ ms.topic: reference **Applies to:** package creation • **Supported versions:** all -Generates a `.nuspec` file for a new package. If run in the same folder as a project file (`.csproj`, `.vbproj`, `.fsproj`), `spec` creates a tokenized `.nuspec` file. For additional information, see [Creating a Package](../../create-packages/creating-a-package.md). +Generates a `.nuspec` file for a new package. If run in the same folder as a project file (`.csproj`, `.vbproj`, `.fsproj`), `spec` creates a tokenized `.nuspec` file, that defaults to the MIT License. For additional information, see [Creating a Package](../../create-packages/creating-a-package.md). ## Usage From aa27363727dace8f6a06ea1313df87487e49996f Mon Sep 17 00:00:00 2001 From: Kyle McMaster Date: Fri, 6 Jan 2023 11:13:58 -0500 Subject: [PATCH 696/988] Update Central-Package-Management.md (#2765) This line should be removed as central package management is now supported in Visual Studio 17.2 and .NET 6.0.300 SDK. --- docs/consume-packages/Central-Package-Management.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/docs/consume-packages/Central-Package-Management.md b/docs/consume-packages/Central-Package-Management.md index b23b59ef5..6293ceeeb 100644 --- a/docs/consume-packages/Central-Package-Management.md +++ b/docs/consume-packages/Central-Package-Management.md @@ -211,5 +211,3 @@ There are 3 package sources defined in your configuration. When using central pa > [!Note] > Central package management is in active development. We appreciate you trying it out and providing any feedback you may have at [NuGet/Home](https://github.com/nuget/home/issues). -> -> * There is currently no support in Visual Studio or the .NET CLI for Central Package Management. From fef51e8df7a8d5ec1bc01918b38ca016f371f80c Mon Sep 17 00:00:00 2001 From: Hugo Pacheco Date: Tue, 10 Jan 2023 19:47:38 +0100 Subject: [PATCH 697/988] Fix small typo in Package-Versioning.md (#2977) --- docs/concepts/Package-Versioning.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Package-Versioning.md b/docs/concepts/Package-Versioning.md index 6ea4acc83..1ea2b3459 100644 --- a/docs/concepts/Package-Versioning.md +++ b/docs/concepts/Package-Versioning.md @@ -251,6 +251,6 @@ If you want to programatically use NuGet package versions, it is strongly recomm If you are implementing NuGet functionality in a language that does not run on .NET, here are the known list of differences between `NuGetVersion` and Semantic Versioning, and the reasons why an existing Semantic Versioning library might not work for packages already published on nuget.org. -1. `NuGetVersion` supports a 4th version segment, `Revision`, to be compatible with, or a superset of, [`System.Version`](/dotnet/api/system.version). Therefore, excluding prerelease and metadata labels, a version string is `Major.Minor.Patch.Revision`. As per version normalization described above, if `Revision` is zero, it is omit from the normalized version string. +1. `NuGetVersion` supports a 4th version segment, `Revision`, to be compatible with, or a superset of, [`System.Version`](/dotnet/api/system.version). Therefore, excluding prerelease and metadata labels, a version string is `Major.Minor.Patch.Revision`. As per version normalization described above, if `Revision` is zero, it is omitted from the normalized version string. 2. `NuGetVersion` only requires the major segment to be defined. All others are optional, and are equivalent to zero. This means that `1`, `1.0`, `1.0.0`, and `1.0.0.0` are all accepted and equal. 3. `NuGetVersion` uses case insensitive string comparisons for pre-release components. This means that `1.0.0-alpha` and `1.0.0-Alpha` are equal. From b7577d4bdb8808e27a307abe07b84b53baaf236a Mon Sep 17 00:00:00 2001 From: Mike Jones Date: Thu, 2 Feb 2023 11:39:09 -0800 Subject: [PATCH 698/988] Resolve merge conflicts (#2992) From c4a389507c2dcf3cda47dc30ed6599eb7b5d5c86 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Fri, 3 Feb 2023 13:24:18 +0100 Subject: [PATCH 699/988] Clarify nuget.config is per solution, not per-project (#2990) --- .../configuring-nuget-behavior.md | 24 ++++++++++--------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/docs/consume-packages/configuring-nuget-behavior.md b/docs/consume-packages/configuring-nuget-behavior.md index 6091482cb..98dde61ac 100644 --- a/docs/consume-packages/configuring-nuget-behavior.md +++ b/docs/consume-packages/configuring-nuget-behavior.md @@ -1,6 +1,6 @@ --- title: Common NuGet configurations -description: NuGet.Config files control NuGet's behavior both globally and on a per-project basis, and are modified with nuget config command. +description: NuGet.Config files control NuGet's behavior, and can be modified with nuget config command. author: JonDouglas ms.author: jodou ms.date: 01/10/2022 @@ -9,15 +9,15 @@ ms.topic: conceptual # Common NuGet configurations -NuGet's behavior is driven by the accumulated settings in one or more `NuGet.Config` (XML) files that can exist at project-, user-, and computer-wide levels. A global `NuGetDefaults.Config` file also specifically configures package sources. Settings apply to all commands issued in the CLI, the Package Manager Console, and the Package Manager UI. +NuGet's behavior is driven by the accumulated settings in one or more `NuGet.Config` (XML) files that can exist at solution- (project if no solution is used), user-, and computer-wide levels. A global `NuGetDefaults.Config` file also specifically configures package sources. Settings apply to all commands issued in the CLI, the Package Manager Console, and the Package Manager UI. ## Config file locations and uses | Scope | `NuGet.Config` file location | Description | | --- | --- | --- | -| Solution | Current folder (aka Solution folder) or any folder up to the drive root.| In a solution folder, settings apply to all projects in subfolders. Note that if a config file is placed in a project folder, it has no effect on that project. | -| User | **Windows:** `%appdata%\NuGet\NuGet.Config`
**Mac/Linux:** `~/.config/NuGet/NuGet.Config` or `~/.nuget/NuGet/NuGet.Config` (varies by tooling)
Additional configs are supported on all platforms. These configs cannot be edited by the tooling.
**Windows:** `%appdata%\NuGet\config\*.Config`
**Mac/Linux:** `~/.config/NuGet/config/*.config` or `~/.nuget/config/*.config` | Settings apply to all operations, but are overridden by any project-level settings. | -| Computer | **Windows:** `%ProgramFiles(x86)%\NuGet\Config`
**Mac/Linux:** `$XDG_DATA_HOME`. If `$XDG_DATA_HOME` is null or empty, `~/.local/share` or `/usr/local/share` will be used (varies by OS distribution) | Settings apply to all operations on the computer, but are overridden by any user- or project-level settings. | +| Solution | Current folder (aka Solution folder) or any folder up to the drive root.| In a solution folder, settings apply to all projects in subfolders. Note that if a config file is placed in a project folder, it has no effect on that project. When restoring a project on the command line, the project's directory is treated as the solution directory, which can lead to differences in behaviour when restoring the project vs solution. | +| User | **Windows:** `%appdata%\NuGet\NuGet.Config`
**Mac/Linux:** `~/.config/NuGet/NuGet.Config` or `~/.nuget/NuGet/NuGet.Config` (varies by tooling)
Additional configs are supported on all platforms. These configs cannot be edited by the tooling.
**Windows:** `%appdata%\NuGet\config\*.Config`
**Mac/Linux:** `~/.config/NuGet/config/*.config` or `~/.nuget/config/*.config` | Settings apply to all operations, but are overridden by any solution-level settings. | +| Computer | **Windows:** `%ProgramFiles(x86)%\NuGet\Config`
**Mac/Linux:** `$XDG_DATA_HOME`. If `$XDG_DATA_HOME` is null or empty, `~/.local/share` or `/usr/local/share` will be used (varies by OS distribution) | Settings apply to all operations on the computer, but are overridden by any user- or solution-level settings. | > [!Note] > On Mac/Linux, the user config file location varies by tooling. .NET CLI uses `~/.nuget/NuGet` folder, while Mono uses `~/.config/NuGet` folder. @@ -61,7 +61,7 @@ Windows: # Set repositoryPath in the user-level config file nuget config -set repositoryPath=c:\packages -# Set repositoryPath in project-level files +# Set repositoryPath in solution-level files nuget config -set repositoryPath=c:\packages -configfile c:\my.Config nuget config -set repositoryPath=c:\packages -configfile .\myApp\NuGet.Config @@ -75,7 +75,7 @@ Mac/Linux: # Set repositoryPath in the user-level config file nuget config -set repositoryPath=/home/packages -# Set repositoryPath in project-level files +# Set repositoryPath in solution-level files nuget config -set repositoryPath=/home/projects/packages -configfile /home/my.Config nuget config -set repositoryPath=/home/packages -configfile home/myApp/NuGet.Config @@ -110,7 +110,9 @@ Copy the template below into the new file and then use `nuget config -configFile ## How settings are applied -Multiple `NuGet.Config` files allow you to store settings in different locations so that they apply to a single project, a group of projects, or all projects. These settings collectively apply to any NuGet operation invoked from the command line or from Visual Studio, with settings that exist "closest" to a project or the current folder taking precedence. +Multiple `NuGet.Config` files allow you to store settings in different locations so that they apply to a single solution, or a group of solutions. +These settings collectively apply to any NuGet operation invoked from the command line or from Visual Studio, with settings that exist "closest" to a solution or the current folder taking precedence. +If a command line tool is used on a project file, rather than a solution file, then the project directory is used as the "solution directory", which can lead to inconsistent behaviour when there is a `NuGet.Config` file in a subdirectory of the solution file. Specifically, NuGet loads settings from the different config files in the following order: @@ -118,16 +120,16 @@ Specifically, NuGet loads settings from the different config files in the follow 1. The computer-level file. 1. The user-level file. 1. The file specified with `-configFile`. -1. Files found in every folder in the path from the drive root to the current folder (where `nuget.exe` is invoked or the folder containing the Visual Studio project). For example, if a command is invoked in `c:\A\B\C`, NuGet looks for and loads config files in `c:\`, then `c:\A`, then `c:\A\B`, and finally `c:\A\B\C`. +1. Files found in every folder in the path from the drive root to the current folder (where `nuget.exe` is invoked or the folder containing the Visual Studio solution). For example, if a command is invoked in `c:\A\B\C`, NuGet looks for and loads config files in `c:\`, then `c:\A`, then `c:\A\B`, and finally `c:\A\B\C`. As NuGet finds settings in these files, they are applied as follows: -1. For single-item elements, NuGet replaced any previously-found value for the same key. This means that settings that are "closest" to the current folder or project override any others found earlier. For example, the `defaultPushSource` setting in `NuGetDefaults.Config` is overridden if it exists in any other config file. +1. For single-item elements, NuGet replaced any previously-found value for the same key. This means that settings that are "closest" to the current folder or solution override any others found earlier. For example, the `defaultPushSource` setting in `NuGetDefaults.Config` is overridden if it exists in any other config file. 1. For collection elements (such as ``), NuGet combines the values from all configuration files into a single collection. 1. When `` is present for a given node, NuGet ignores previously defined configuration values for that node. > [!Tip] -> Add a `nuget.config` file in the root of your project repository. This is considered a best practice as it promotes repeatability and ensures that different users have the same NuGet configuration. +> Add a `nuget.config` file in the root of your solution repository. This is considered a best practice as it promotes repeatability and ensures that different users have the same NuGet configuration. ### Settings walkthrough From 8d3c3ae883cbaf02fc5184e2ff6f3e96f32d7e6d Mon Sep 17 00:00:00 2001 From: isaac ayodeji Date: Tue, 7 Feb 2023 18:49:15 +0100 Subject: [PATCH 700/988] Update the step to find the pack option in project context menu (#2985) --- .../create-and-publish-a-package-using-visual-studio.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/quickstart/create-and-publish-a-package-using-visual-studio.md b/docs/quickstart/create-and-publish-a-package-using-visual-studio.md index e4c07b65a..a988e6272 100644 --- a/docs/quickstart/create-and-publish-a-package-using-visual-studio.md +++ b/docs/quickstart/create-and-publish-a-package-using-visual-studio.md @@ -96,7 +96,7 @@ To create a NuGet package from your project, follow these steps: 1. Select **Build** > **Configuration Manager**, and then set the **Active solution configuration** to **Release**. -1. Select the AppLogger project in **Solution Explorer**, and then select **Build** > **Pack**. +1. Select the AppLogger project in **Solution Explorer**, then select **Pack**. Visual Studio builds the project and creates the *.nupkg* file. From f02aaa9b774c0a15bd0e43d8f105a5d6f78d7e17 Mon Sep 17 00:00:00 2001 From: Alexandra Barry <89422562+albarry4@users.noreply.github.com> Date: Tue, 7 Feb 2023 14:53:47 -0800 Subject: [PATCH 701/988] Update install-and-use-a-package-in-visual-studio.md (#2988) I got an error when trying to run this that stated: "Formatting" is an ambiguous reference between "Newtonsoft.Json.Formatting" and "System.Xml.Formatting", so I had to insert the "Newtonsoft.Json." before the "Formatting" myself. Assuming this could be an issue for other users, we should include this text here by default to make the tutorial as smooth as possible. --- docs/quickstart/install-and-use-a-package-in-visual-studio.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/quickstart/install-and-use-a-package-in-visual-studio.md b/docs/quickstart/install-and-use-a-package-in-visual-studio.md index 60a6bbf52..5ec26583e 100644 --- a/docs/quickstart/install-and-use-a-package-in-visual-studio.md +++ b/docs/quickstart/install-and-use-a-package-in-visual-studio.md @@ -105,7 +105,7 @@ With the `Newtonsoft.Json` package in the project, call its `JsonConvert.Seriali Email = "john@microsoft.com", DOB = new DateTime(1980, 2, 20, 0, 0, 0, DateTimeKind.Utc), }; - string json = JsonConvert.SerializeObject(account, Formatting.Indented); + string json = JsonConvert.SerializeObject(account, Newtonsoft.Json.Formatting.Indented); TextBlock.Text = json; } ``` From 159002e325ef27e30d3f3dcb68bb59b52c0624d0 Mon Sep 17 00:00:00 2001 From: Alexandra Barry <89422562+albarry4@users.noreply.github.com> Date: Tue, 7 Feb 2023 14:54:24 -0800 Subject: [PATCH 702/988] Update install-nuget-client-tools.md (#2987) Was thinking we could break up this paragraph to make it more digestible. I think this would make it easier for users to find which link they are looking for as opposed to the current structuring. --- docs/install-nuget-client-tools.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/docs/install-nuget-client-tools.md b/docs/install-nuget-client-tools.md index fbdb09bdc..ae78bd729 100644 --- a/docs/install-nuget-client-tools.md +++ b/docs/install-nuget-client-tools.md @@ -11,7 +11,15 @@ ms.topic: quickstart > **Looking to install a package? See [Ways to install NuGet packages](consume-packages/overview-and-workflow.md#ways-to-install-a-nuget-package).** -To work with NuGet, as a package consumer or creator, you can use command-line interface (CLI) tools as well as NuGet features in Visual Studio. This article briefly outlines the capabilities of the different tools, how to install them, and their comparative [feature availability](#feature-availability). To get started using NuGet to consume packages, see [Install and use a package (dotnet CLI)](quickstart/install-and-use-a-package-using-the-dotnet-cli.md) and [Install and use a package (Visual Studio)](quickstart/install-and-use-a-package-in-visual-studio.md). To get started creating NuGet packages, see [Create and publish a NET Standard package (dotnet CLI)](quickstart/create-and-publish-a-package-using-the-dotnet-cli.md) and [Create and publish a NET Standard package (Visual Studio)](quickstart/create-and-publish-a-package-using-visual-studio.md). +To work with NuGet, as a package consumer or creator, you can use command-line interface (CLI) tools as well as NuGet features in Visual Studio. This article briefly outlines the capabilities of the different tools, how to install them, and their comparative [feature availability](#feature-availability). + +To get started using NuGet to consume packages, see: +* [Install and use a package (dotnet CLI)](quickstart/install-and-use-a-package-using-the-dotnet-cli.md) +* [Install and use a package (Visual Studio)](quickstart/install-and-use-a-package-in-visual-studio.md) + +To get started creating NuGet packages, see: +* [Create and publish a NET Standard package (dotnet CLI)](quickstart/create-and-publish-a-package-using-the-dotnet-cli.md) +* [Create and publish a NET Standard package (Visual Studio)](quickstart/create-and-publish-a-package-using-visual-studio.md) | Tool                | Description | Download          | |:------------- |:-------------|:-----| From 769454f7ee2ae1bc75a4a07b2861339e632dc12e Mon Sep 17 00:00:00 2001 From: Svetlana Kofman Date: Wed, 8 Feb 2023 10:37:09 -0800 Subject: [PATCH 703/988] Update generated nuspec with Icon tag (#2995) Fixes: https://github.com/NuGet/docs.microsoft.com-nuget/issues/1966 --- ...te-and-publish-a-package-using-visual-studio-net-framework.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md b/docs/quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md index 79355db0f..1e45d17b8 100644 --- a/docs/quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md +++ b/docs/quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md @@ -100,6 +100,7 @@ Run `nuget spec` only once to generate the initial manifest. If you update the p Your username Your username MIT + http://PROJECT_URL_HERE_OR_DELETE_THIS_LINE false Package description From f1372163b750d3e76b55bc216d2d6e9b795c009b Mon Sep 17 00:00:00 2001 From: Svetlana Kofman Date: Fri, 10 Feb 2023 12:37:40 -0800 Subject: [PATCH 704/988] Update NuGet.org FAQ with MSA deletion info (#2998) * Update NuGet.FAQ with MSA deletion info * minor changes * Update docs/nuget-org/nuget-org-faq.yml Co-authored-by: Joel Verhagen --------- Co-authored-by: Joel Verhagen --- docs/nuget-org/nuget-org-faq.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/docs/nuget-org/nuget-org-faq.yml b/docs/nuget-org/nuget-org-faq.yml index 261a6ba55..0b9e041d1 100644 --- a/docs/nuget-org/nuget-org-faq.yml +++ b/docs/nuget-org/nuget-org-faq.yml @@ -232,3 +232,10 @@ sections: 2. Click on this url: [https://www.nuget.org/account/delete](https://www.nuget.org/account/delete) and follow the steps to submit the request for deleting the account. Our customer support will process this request and perform the account deletion. + + - question: What happens to my NuGet.org account when my Microsoft account gets deleted? + answer: | + When the Microsoft or Azure Active Directory account you use to sign in to your nuget.org account is deleted, your nuget.org account will be deleted as well. The account delete action is completed by the nuget.org customer support within 30 days from the date of the Microsoft account deletion. + + If you have packages associated with your account, we will notify you 3 business days before proceeding with deletion and offer assistance to transfer the packages to a different nuget.org account. + From af863ee26e97f134044d5caff06b87d6778afc1b Mon Sep 17 00:00:00 2001 From: Svetlana Kofman Date: Fri, 17 Feb 2023 12:53:02 -0800 Subject: [PATCH 705/988] Typo + minor issue (#3004) Addresses: https://github.com/NuGet/docs.microsoft.com-nuget/issues/3000 --- docs/create-packages/Package-authoring-best-practices.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/create-packages/Package-authoring-best-practices.md b/docs/create-packages/Package-authoring-best-practices.md index b44f70071..12b68d5b4 100644 --- a/docs/create-packages/Package-authoring-best-practices.md +++ b/docs/create-packages/Package-authoring-best-practices.md @@ -60,11 +60,11 @@ Below is a table mapping and describing available package metadata elements: | [`Authors`](#authors) | [`Authors`](/nuget/reference/msbuild-targets#pack-target) | [`authors`](/nuget/reference/nuspec#authors) | A comma-separated list of package authors, often using the individual's or an organization's "pretty name." | | [`Description`](#description) | [`Description`](/nuget/reference/msbuild-targets#pack-target) | [`description`](/nuget/reference/nuspec#description) | A description of the package. | | [`Copyright`](#copyright) | [`Copyright`](/nuget/reference/msbuild-targets#pack-target) | [`copyright`](/nuget/reference/nuspec#copyright) | Copyright details for the package. | -| [`Project URL`](#project-url) | `PackageProjectUrl` | [`projectUrl`](/nuget/reference/nuspec#projecturl) | A URL for the project homepage. | +| [`Project URL`](#project-url) | [`PackageProjectUrl`](/nuget/reference/msbuild-targets#pack-target) | [`projectUrl`](/nuget/reference/nuspec#projecturl) | A URL for the project homepage. | | [`Icon File`](#icon) | [`PackageIcon`](/nuget/reference/msbuild-targets#packing-an-icon-image-file) | [`icon`](/nuget/reference/nuspec#icon) | Path to the package icon image file. | | [`README`](#readme) | [`PackageReadmeFile`](/nuget/reference/msbuild-targets#packagereadmefile) | [`readme`](/nuget/reference/nuspec#readme) | Path to the package README markdown file. | | [`Repository URL`](#repository-type-and-url) | [`RepositoryUrl`](/nuget/reference/msbuild-targets#pack-target) | [`repository url`](/nuget/reference/nuspec#repository) | URL to the repository from which the package was built. | -| [`Repository type`](#repository-type-and-url) | [`RespositoryType`](/nuget/reference/msbuild-targets#pack-target) | [`repository type`](/nuget/reference/nuspec#repository) | Type of repository the repository URL is pointing to (i.e. "git"). | +| [`Repository type`](#repository-type-and-url) | [`RepositoryType`](/nuget/reference/msbuild-targets#pack-target) | [`repository type`](/nuget/reference/nuspec#repository) | Type of repository the repository URL is pointing to (i.e. "git"). | | [`Tags`](#tags) | [`PackageTags`](/nuget/reference/msbuild-targets#pack-target) | [`tags`](/nuget/reference/nuspec#tags) | A space-delimited list of tags and keywords that describe the package. Tags are used when searching for packages. | | [`Release notes`](#release-notes) | [`PackageReleaseNotes`](/nuget/reference/msbuild-targets#pack-target) | [`releaseNotes`](/nuget/reference/nuspec#releasenotes) | A description of the changes made in this release of the package. | | [`Licensing - Expression`](#licensing) | [`PackageLicenseExpression`](/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="expression"`](/nuget/reference/nuspec#license) | An SPDX license expression. | From fd0d255b1691001c295d6b452e236aa40d6f0922 Mon Sep 17 00:00:00 2001 From: Martin Ruiz Date: Tue, 21 Feb 2023 08:58:17 -0800 Subject: [PATCH 706/988] Release Notes for 6.5 (#2997) * Initial Release Notes for 6.5 * updated release notes * updated release notes --- docs/TOC.md | 1 + docs/release-notes/NuGet-6.5.md | 119 ++++++++++++++++++++++++++++++++ 2 files changed, 120 insertions(+) create mode 100644 docs/release-notes/NuGet-6.5.md diff --git a/docs/TOC.md b/docs/TOC.md index 1ee1c9177..c748393be 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -325,6 +325,7 @@ ### [Known Issues](release-notes/known-issues.md) ### NuGet 6.x +#### [NuGet 6.5](release-notes/NuGet-6.5.md) #### [NuGet 6.4](release-notes/NuGet-6.4.md) #### [NuGet 6.3](release-notes/NuGet-6.3.md) #### [NuGet 6.2](release-notes/NuGet-6.2.md) diff --git a/docs/release-notes/NuGet-6.5.md b/docs/release-notes/NuGet-6.5.md new file mode 100644 index 000000000..28681ad21 --- /dev/null +++ b/docs/release-notes/NuGet-6.5.md @@ -0,0 +1,119 @@ +--- +title: NuGet 6.5 Release Notes +description: Release notes for NuGet 6.5 including new features, bug fixes, and DCRs. +author: martinrrm +ms.author: mruizmares +ms.date: 2/21/2023 +ms.topic: conceptual +--- + +# NuGet 6.5 Release Notes + +NuGet distribution vehicles: + +| NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | +|:---|:---|:---| +| [**6.5**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.5](https://visualstudio.microsoft.com/downloads/) | [7.0.200](https://dotnet.microsoft.com/download/dotnet-core/7.0)1 | + +1 Installed with Visual Studio 2022 with.NET Core workload + +## Summary: What's New in 6.5 + +* Manage packages in the Directory.Packages.props file for CPM projects - [#11890](https://github.com/NuGet/Home/issues/11890) + +* Package Source Mapping UI - Allow the Creation/Removal of package source mappings in the NuGet Options UI - [#11363](https://github.com/NuGet/Home/issues/11363) + +* Package Source Mapping UI - List Package Source Mappings in the NuGet Options UI - [#11362](https://github.com/NuGet/Home/issues/11362) + +* Observe Retry-After delay on HTTP request retry - [#10558](https://github.com/NuGet/Home/issues/10558) + +* Machine readable output for dotnet list package - [#7752](https://github.com/NuGet/Home/issues/7752) + +* Honor WarningsNotAsErrors - [#5375](https://github.com/NuGet/Home/issues/5375) + +* Reload Visual Studio package sources when nuget.config is modified manually - [#1538](https://github.com/NuGet/Home/issues/1538) + +* Restore dependencies for projects listed in a solution filter (.slnf) file - [#10809](https://github.com/NuGet/Home/issues/10809) + +### Issues fixed in this release + +**DCRs:** + +* During MSBuild project SDK resolution, always log errors in the case of failure - [#12312](https://github.com/NuGet/Home/issues/12312) + +* Environment variable `NUGET_CLI_LANGUAGE` to control language of nuget.exe command output - [#12181](https://github.com/NuGet/Home/issues/12181) + +* Make it obvious when a warning is elevated to an error - [#8803](https://github.com/NuGet/Home/issues/8803) + +* Show error when using nuget.exe to pack SDK csproj - [#7778](https://github.com/NuGet/Home/issues/7778) + +**Bugs:** + +* Output version option only applicable for format json option in dotnet list package - [#12293](https://github.com/NuGet/Home/issues/12293) + +* NuGet transitive pinning changes g.props import order, breaking the build - [#12278](https://github.com/NuGet/Home/issues/12278) + +* PrivateAssets for central transitive dependencies should flow regardless whether the parent is a project or a package - [#12276](https://github.com/NuGet/Home/issues/12276) + +* Include flags flow incorrectly to transitively pinned centrally managed dependencies - [#12274](https://github.com/NuGet/Home/issues/12274) + +* Possible race condition in ConfigurationDefaults.Instance.DefaultPackageSources - [#12246](https://github.com/NuGet/Home/issues/12246) + +* NuGet doesn't retry on HTTP 429 responses - [#12214](https://github.com/NuGet/Home/issues/12214) + +* Simplification of Linq Any method for performance improvement - [#12193](https://github.com/NuGet/Home/issues/12193) + +* StackOverflowException in InstallPackagesFromVSExtensionRepository - [#12192](https://github.com/NuGet/Home/issues/12192) + +* Versions_SelectionChanged throws NullReferenceException when changing selected package - [#12184](https://github.com/NuGet/Home/issues/12184) + +* Static graph-based restore fails with a NullReferenceException during SetPlatform negotiation - [#12177](https://github.com/NuGet/Home/issues/12177) + +* Reduce memory allocation while creating empty InnerNodes and ParentNodes for a new GraphNode during restore - [#12157](https://github.com/NuGet/Home/issues/12157) + +* SettingsLoadingContext throws exceptions when a different settings file causes an exception - [#12154](https://github.com/NuGet/Home/issues/12154) + +* Bad NuGet.config causes NuGet-based MSBuild SDK resolver to throw an unhandled exception - [#12152](https://github.com/NuGet/Home/issues/12152) + +* Watermark TextBox font color is incorrect in Add Dialog of Package Source Mapping Options - [#12141](https://github.com/NuGet/Home/issues/12141) + +* VS2022 17.1.2: Dependency between .NET Standard 2.0 and .NET 4.7.1 throws NuGet error System.Memory, Version=4.0.1.1 not found - [#12137](https://github.com/NuGet/Home/issues/12137) + +* Breaking change in .NET 8 - Environment.GetFolderPath returns incorrect path on Unix - [#12127](https://github.com/NuGet/Home/issues/12127) + +* nuget.exe strings from NuGet.Commands are not localized - [#12097](https://github.com/NuGet/Home/issues/12097) + +* Process argument string is too long when publishing in Visual Studio with static graph enabled - [#11968](https://github.com/NuGet/Home/issues/11968) + +* Provide solution for NuGet Error NU1012 - the pack error does not call out the problem files - [#11905](https://github.com/NuGet/Home/issues/11905) + +* Some CLI commands don't respect DOTNET_CLI_UI_LANGUAGE - [#11326](https://github.com/NuGet/Home/issues/11326) + +* Reduce UI thread switching when determining solution folder and if solution is open - [#11090](https://github.com/NuGet/Home/issues/11090) + +* Issue saving settings in Visual Studio - adding a source throws an exception - [#8407](https://github.com/NuGet/Home/issues/8407) + +* PackageDependencyGroup does not implement Equals correctly - [#6478](https://github.com/NuGet/Home/issues/6478) + +[List of commits in this release](https://github.com/NuGet/NuGet.Client/compare/6.5.0.154...6.4.1.21) + +### Community contributions + +Thank you to all the contributors who helped make this NuGet release awesome! + +* [Forgind](https://github.com/Forgind) + * [4970](https://github.com/NuGet/NuGet.Client/pull/4970) Have SDK resolver always log an error when SDK resolution in unsuccessful +* [marcin-krystianc](https://github.com/marcin-krystianc) + * [4952](https://github.com/NuGet/NuGet.Client/pull/4952) PrivateAssets for central transitive dependencies should flow regardless whether the parent node is a project or a package +* [marcin-krystianc](https://github.com/marcin-krystianc) + * [4950](https://github.com/NuGet/NuGet.Client/pull/4950) Fix include flags calculation for transitively pinned centrally managed dependencies +* [drewnoakes](https://github.com/drewnoakes) + * [4891](https://github.com/NuGet/NuGet.Client/pull/4891) Display documents from packages in the dependencies tree +* [kvpt](https://github.com/kvpt) + * [4790](https://github.com/NuGet/NuGet.Client/pull/4790) Add support for restoring slnf file from command line +* [AtariDreams](https://github.com/AtariDreams) + * [4863](https://github.com/NuGet/NuGet.Client/pull/4863) Simplification of Linq Any method +* [davidegiacometti](https://github.com/davidegiacometti) + * [4840](https://github.com/NuGet/NuGet.Client/pull/4840) Refactor PackageDependencyGroup Equals and GetHashCode +* [danjagnow](https://github.com/danjagnow) + * [4843](https://github.com/NuGet/NuGet.Client/pull/4843) Updated NU1012 error message to display item paths \ No newline at end of file From 6f23992fa6492c20e7bafa217d273f60152db3fc Mon Sep 17 00:00:00 2001 From: Daniel Cazzulino Date: Tue, 21 Feb 2023 17:43:21 +0000 Subject: [PATCH 707/988] Add NuGetizer to the ecosystem links (#3009) NuGetizer is a pretty popular alternative to SDK Pack (~200k downloads on nuget.org at this time). Recognize it by linking from the docs. --- docs/policies/Ecosystem.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/policies/Ecosystem.md b/docs/policies/Ecosystem.md index 542a0eb8f..636690ff9 100644 --- a/docs/policies/Ecosystem.md +++ b/docs/policies/Ecosystem.md @@ -41,6 +41,7 @@ Many other individuals and companies have made significant contributions to the - [MyGet (or NuGet-as-a-service)](http://www.myget.org/) - [NuGet Package Explorer](https://github.com/NuGetPackageExplorer/NuGetPackageExplorer) - [NuGet Server](http://nugetserver.net/) +- [NuGetizer](https://github.com/devlooped/nugetizer) - [OctopusDeploy](https://octopus.com/) - [Paket](https://fsprojects.github.io/Paket/) - [ProGet (Inedo)](http://inedo.com/proget) @@ -81,4 +82,4 @@ NuDoq regularly polls the nuget.org gallery server for the latest package update ## Adding your project -If you have a NuGet ecosystem project that would be a valuable addition to this page, please submit a pull request with an edit to this page. \ No newline at end of file +If you have a NuGet ecosystem project that would be a valuable addition to this page, please submit a pull request with an edit to this page. From f4034b55fca31112b5158815b476924a8d9b1283 Mon Sep 17 00:00:00 2001 From: Andrei Grigorev Date: Tue, 21 Feb 2023 09:45:05 -0800 Subject: [PATCH 708/988] Package size limits section. (#3008) --- docs/nuget-org/Publish-a-package.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/docs/nuget-org/Publish-a-package.md b/docs/nuget-org/Publish-a-package.md index b2df93f56..ab83d599e 100644 --- a/docs/nuget-org/Publish-a-package.md +++ b/docs/nuget-org/Publish-a-package.md @@ -79,6 +79,19 @@ You can push packages to nuget.org with Azure Pipelines as part of your continuo To submit a signed package, you must first [register the certificate](../create-packages/Sign-a-Package.md#register-the-certificate-on-nugetorg) you used to sign the package. If you don't meet the [signed package requirements](../reference/Signed-Packages-Reference.md#signature-requirements-on-nugetorg), nuget.org rejects the package. +### Package size limits + +Nuget.org has a package size limit of about 250 MB. When a package exceeding that limit is uploaded the following error is displayed: + +> The package file exceeds the size limit. Please try again. + +If such package is pushed from the command line, the following output is produced: + +> RequestEntityTooLarge https://www.nuget.org/api/v2/package/ 13903ms +> error: Response status code does not indicate success: 413 (The package file exceeds the size limit. Please try again.). + +If you are getting this errors consider revising the package content to reduce its size. If you are packing debug symbols into your package consider publishing them [separately](../create-packages/Symbol-Packages-snupkg.md). Other assets can be published separately as one or more dependency packages to spread them into smaller chunks. + ## Package validation and indexing Packages pushed to nuget.org undergo several validations, such as virus checks, and existing packages are periodically scanned. When the package passes all validation checks, it might take awhile to be indexed and appear in search results. While the package is being indexed, it appears under **Unlisted Packages**, and you see the following message on the package page: From ea7616ec307e5fcc1296a2f540ffc8e968c8bf4a Mon Sep 17 00:00:00 2001 From: Andrei Grigorev Date: Tue, 21 Feb 2023 09:45:31 -0800 Subject: [PATCH 709/988] Added a note that --SkipDuplicate option is ignored for local sources (#3007) Addresses https://github.com/NuGet/docs.microsoft.com-nuget/issues/2943 --- docs/reference/cli-reference/cli-ref-push.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/cli-reference/cli-ref-push.md b/docs/reference/cli-reference/cli-ref-push.md index b51fd897d..b8f7b4569 100644 --- a/docs/reference/cli-reference/cli-ref-push.md +++ b/docs/reference/cli-reference/cli-ref-push.md @@ -66,7 +66,7 @@ where `` identifies the package to push to the server. - **`-SkipDuplicate`** - *(5.1+)* If a package and version already exists, skip it and continue with the next package in the push, if any. + *(5.1+)* If a package and version already exists, skip it and continue with the next package in the push, if any. This option is ignored if the package is being pushed to a UNC or local folder source. - **`-SymbolSource`** From 63bcec909cccdda157cb10a33b3e801f3d4a5aaa Mon Sep 17 00:00:00 2001 From: Advay Tandon <82980589+advay26@users.noreply.github.com> Date: Tue, 21 Feb 2023 23:17:35 +0530 Subject: [PATCH 710/988] Update NuGet.org search docs with new UI and Framework filters (#3005) * Updated nuget.org search docs with details on the new UI + Framework filters * whitespace * centered? * resetting whitespace changes for image * fixed something * fixed relative url to TFM docs --- .../Finding-and-Choosing-Packages.md | 26 ++++++++++++------ .../media/Finding-07-Popularity.png | Bin 0 -> 104805 bytes .../media/Finding-08-SearchResults.png | Bin 0 -> 99995 bytes .../media/Finding-09-FrameworkFilters.png | Bin 0 -> 6271 bytes 4 files changed, 18 insertions(+), 8 deletions(-) create mode 100644 docs/consume-packages/media/Finding-07-Popularity.png create mode 100644 docs/consume-packages/media/Finding-08-SearchResults.png create mode 100644 docs/consume-packages/media/Finding-09-FrameworkFilters.png diff --git a/docs/consume-packages/Finding-and-Choosing-Packages.md b/docs/consume-packages/Finding-and-Choosing-Packages.md index 0f59472f7..14c137002 100644 --- a/docs/consume-packages/Finding-and-Choosing-Packages.md +++ b/docs/consume-packages/Finding-and-Choosing-Packages.md @@ -17,15 +17,25 @@ You can find packages directly at [https://nuget.org/packages](https://www.nuget At [nuget.org/packages](https://www.nuget.org/packages), you see a list of NuGet packages with the most popular packages across all .NET projects listed first. Some of these packages might be useful for your projects. -![Screenshot that shows the default view of nuget.org/packages with the most popular packages at the top.](media/Finding-01-Popularity.png) +![Screenshot that shows the default view of nuget.org/packages with the most popular packages at the top.](media/Finding-07-Popularity.png) To search for a package, enter the package name or search terms in the Search box at the top of the page. You can use [advanced search syntax](#search-syntax) to filter your search. ### Advanced filtering and sorting -At nuget.org/packages, you can select the **Filter** button at upper-right to expand advanced sorting and filtering options. +At nuget.org/packages, you can refine your search results by making use of the advanced filtering and sorting options. -![Screenshot that shows the Advanced Search panel on nuget.org.](media/Finding-02-SearchResults.png) +![Screenshot that shows the filtering and sorting options on nuget.org.](media/Finding-08-SearchResults.png) + +Use the **Frameworks** filters to show packages targeting specific .NET frameworks (To learn more, see [Target Frameworks](/dotnet/standard/frameworks)): + +- Selecting one of the .NET framework generation checkboxes would filter the search results to packages targeting any of the Target Frameworks within that generation. For example, selecting `.NET` will return packages targeting any of the modern .NET frameworks, including `net5.0` through `net7.0`. + + ![Screenshot that shows the Framework filters on nuget.org.](media/Finding-09-FrameworkFilters.png) + +- Expanding one of these framework generations with the arrows on the right will show you individual Target Framework Monikers (TFMs) that you can filter your results by. For example, selecting `net5.0` will only return packages that explicitly target the '.NET 5.0' framework. +- Combining multiple framework filters will show you search results that fall in the intersection of your selections. For example, selecting `netcoreapp3.1` and `net45` together will show packages that target *both* '.NET Core 3.1' and '.NET Framework 4.5'. Selecting the `.NET Core` framework generation checkbox and the `net45` checkbox together will return packages that target '.NET Framework 4.5', and at least one of the '.NET Core' TFMs (`netcoreapp1.0` through `netcoreapp3.1`). +- You can learn more on how to evaluate a package's supported frameworks and its compatibility with your project [here](#determine-supported-frameworks). Use the **Package type** filter to show packages of a specific type: @@ -34,16 +44,16 @@ Use the **Package type** filter to show packages of a specific type: - **.NET tool** filters to [.NET tools](/dotnet/core/tools/global-tools) packages that contain console applications. - **Template** filters to [.NET templates](/dotnet/core/install/templates) that you can use to create new projects with the [dotnet new](/dotnet/core/tools/dotnet-new) command. -Use the **Sort by** option to sort the list by several criteria: +By default, NuGet lists all versions of packages, including prerelease and beta versions. In the **Options** section, deselect the **Include prerelease** checkbox to list only stable, released package versions. + +To apply changes, select **Apply**. To get back to the defaults, select **Reset**. + +Use the **Sort by** dropdown on the top-right of the page to sort the list by several criteria: - **Relevance** is the default, and sorts results according to an internal scoring algorithm. - **Downloads** sorts the search results by the total number of downloads, in descending order. - **Recently updated** sorts the search results by the latest package version creation date, in descending chronological order. -By default, NuGet lists all versions of packages, including prerelease and beta versions. In the **Options** section, deselect the **Include prerelease** checkbox to list only stable, released package versions. - -To apply changes, select **Apply**. To get back to the defaults, select **Reset**. - ### Search syntax Package search queries at nuget.org, from the NuGet CLI, and from within Visual Studio all use the same syntax. Other package sources, like Azure Artifacts or GitHub Package Repository, might use different syntax or might not support advanced filtering. diff --git a/docs/consume-packages/media/Finding-07-Popularity.png b/docs/consume-packages/media/Finding-07-Popularity.png new file mode 100644 index 0000000000000000000000000000000000000000..77c240a3c081af60098d79f35456baed74bd0f70 GIT binary patch literal 104805 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
d_#!N#Pln&Ooc4M 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 O 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 S!2@bcs0c#L0fGOkP5cjj$EW`Q literal 0 HcmV?d00001 diff --git a/docs/consume-packages/media/Finding-09-FrameworkFilters.png b/docs/consume-packages/media/Finding-09-FrameworkFilters.png new file mode 100644 index 0000000000000000000000000000000000000000..01a08764370932ba4126182c12e57ca629d61c48 GIT binary patch literal 6271 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 literal 0 HcmV?d00001 From fcfad2f8d23bcab5208285f01135c293be558ba0 Mon Sep 17 00:00:00 2001 From: zhhyu <41028779+zhhyu@users.noreply.github.com> Date: Tue, 21 Feb 2023 09:55:30 -0800 Subject: [PATCH 711/988] [NuGet.org FAQ] TLS/Cipher suites and Client resilience for transient failures (#3001) * nuget.org faq * Address feedback * Address feedback * update * Update docs/nuget-org/nuget-org-faq.yml Co-authored-by: Andy Zivkovic * Update docs/nuget-org/nuget-org-faq.yml Co-authored-by: Andy Zivkovic --------- Co-authored-by: zhhyu Co-authored-by: Jon Douglas Co-authored-by: Andy Zivkovic --- docs/nuget-org/nuget-org-faq.yml | 49 +++++++++++++++++++++++--------- 1 file changed, 35 insertions(+), 14 deletions(-) diff --git a/docs/nuget-org/nuget-org-faq.yml b/docs/nuget-org/nuget-org-faq.yml index 0b9e041d1..d8a6ee33a 100644 --- a/docs/nuget-org/nuget-org-faq.yml +++ b/docs/nuget-org/nuget-org-faq.yml @@ -60,33 +60,54 @@ sections: It is possible to share dependencies between multiple packages, making the total download size for consumers of your NuGet packages smaller. Dependencies are mostly static and never change. When fixing a bug in code, the dependencies may not need to be updated. If you bundle dependencies, you end up reshipping larger packages every time. By splitting NuGet packages into related dependencies, upgrades are much more fine-grained for consumers of your package. - + - name: NuGet.org not accessible questions: - - question: Why can't I download packages from or upload packages to NuGet.org? + - question: What SSL/TLS version and cipher suites does NuGet.org support? answer: | - First, make sure you're using the latest versions of NuGet. If that version continues to fail, [contact support](https://www.nuget.org/policies/Contact) and provide additional connection troubleshooting information including: - - - The version of NuGet you're using + NuGet.org supports TLS 1.2 and the following cipher suites: + - TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 + - TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 + - TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 + - TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 + + - question: Why can't I restore packages from NuGet.org? + answer: | + If you meet transient failures when restoring packages from NuGet.org, we suggest you: + - use the latest versions of NuGet clients with a better resilience support. + - use environment variables of NuGet clients to enhance the retry policy on CI machines. + + | Environment Variable | Description | Remarks | + | --- | --- | --- | + | NUGET_ENABLE_ENHANCED_HTTP_RETRY | Enables or disables enhanced HTTP retry in NuGet. | Possible values are `true` (default since .NET CLI 6.0.300, NuGet CLI 6.2, Visual Studio 2022 version 17.2) or `false`. | + | NUGET_ENHANCED_MAX_NETWORK_TRY_COUNT | Configures the maximum number of times an HTTP connection should be retried when enhanced retries are enabled. | A number representing how many retries to perform, the default value is `6`. | + | NUGET_ENHANCED_NETWORK_RETRY_DELAY_MILLISECONDS | Configures the amount of time to wait in milliseconds before retrying an HTTP connection when enhanced retries are enabled. | Number of millseconds to wait, the default value is `1000`. | + + > [!Note] + > These environment variables are available since [.NET CLI](https://learn.microsoft.com/nuget/reference/dotnet-commands) (.NET SDK) 6.0.100, [NuGet CLI](https://learn.microsoft.com/nuget/reference/nuget-exe-cli-reference) 6.0, Visual Studio 2022 version 17.0 and corresponding MSBuild version. See [NuGet Release Notes](https://learn.microsoft.com/nuget/release-notes/). + + If that version of NuGet client continues to fail, [contact support](https://www.nuget.org/policies/Contact) and provide additional connection troubleshooting information including: + - The package sources you're using + - The version of NuGet client you're using - A restore log with detailed verbosity - MTR or a Fiddler traces (see below) - Your geographical area - Whether your machine is behind a proxy or firewall? - Is your machine located on a cloud providers' data center (Azure, AWS etc)? If yes, please provide the name of the provider and the region. - + *To capture MTR:* - + - Download [WinMTR](https://sourceforge.net/projects/winmtr/files/WinMTR-v092.zip/download). - Enter `api.nuget.org` as the hostname and click **Start**. - Wait until the **Sent** column is >= 100. - + ![Capturing MTR](media/mtr.png) - + - Copy text to clipboard. - + *To capture Fiddler:* - + - Install the latest version of [Fiddler](https://www.telerik.com/download/fiddler). - Start Fiddler and disable capturing traffic using the **File > Capture Traffic** menu. - Remove all sessions (select all items in the list, press the **Delete** key). @@ -95,11 +116,11 @@ sections: - Enable the **File > Capture Traffic** menu. - Start Visual Studio or nuget.exe .exe and perform the actions that are not working. The traffic generated by these actions should show up in Fiddler. - Once the actions have run, use **File > Save > All Sessions** to store the captured sessions. - + Note: it may be required to set the `HTTP_PROXY` environment variable to `http://127.0.0.1:8888` for routing NuGet traffic through Fiddler. - + If that fails, try the [tips mentioned in this StackOverflow post](https://stackoverflow.com/questions/21049908/using-fiddler-to-sniff-visual-studio-2013-requests-proxy-firewall). - + - name: NuGet.org account management questions: - question: How to recover NuGet.org password login? From 35255848f5d0d80edcaff105136f78d1a5b838df Mon Sep 17 00:00:00 2001 From: Jeff Kluge Date: Tue, 21 Feb 2023 15:28:31 -0800 Subject: [PATCH 712/988] Fix CentralPackageVersionOverrideEnabled (#3011) Fix references to `EnablePackageVersionOverride` as the correct property name `CentralPackageVersionOverrideEnabled` --- docs/consume-packages/Central-Package-Management.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/consume-packages/Central-Package-Management.md b/docs/consume-packages/Central-Package-Management.md index 6293ceeeb..16c2b44bd 100644 --- a/docs/consume-packages/Central-Package-Management.md +++ b/docs/consume-packages/Central-Package-Management.md @@ -153,12 +153,12 @@ defined centrally. ``` -You can disable this feature by setting the MSBuild property `EnablePackageVersionOverride` to `false` in a project or in a `Directory.Packages.props` or +You can disable this feature by setting the MSBuild property `CentralPackageVersionOverrideEnabled` to `false` in a project or in a `Directory.Packages.props` or `Directory.Build.props` import file: ```xml - false + false ``` From 25a7df5fc31cbf463ec53b155fa8c61b530e68d6 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Thu, 23 Feb 2023 14:47:00 -0600 Subject: [PATCH 713/988] Add note for CLI override of packageSources (#2652) --- docs/reference/nuget-config-file.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/reference/nuget-config-file.md b/docs/reference/nuget-config-file.md index c48453f33..1f1178677 100644 --- a/docs/reference/nuget-config-file.md +++ b/docs/reference/nuget-config-file.md @@ -127,6 +127,9 @@ Lists all known package sources. The order is ignored during restore operations ``` +> [!NOTE] +> When using the CLI, you can express a [`RestoreSources`](../reference/msbuild-targets.md#restore-properties) MSBuild property or [`--source`(.NET CLI)](/dotnet/core/tools/dotnet-restore#options) | [`-Source`(NuGet CLI)](/nuget/reference/cli-reference/cli-ref-restore#options) to override the `` defined in the NuGet.config. + > [!Tip] > When `` is present for a given node, NuGet ignores previously defined configuration values for that node. [Read more about how settings are applied](../consume-packages/configuring-nuget-behavior.md#how-settings-are-applied). From d04cfaa75e8b06ae29a46cb42c1f17f85b65f473 Mon Sep 17 00:00:00 2001 From: tjhleeds Date: Tue, 28 Feb 2023 18:36:00 +0000 Subject: [PATCH 714/988] Add alternative syntax for minimum version inclusive range (#3012) --- docs/concepts/Package-Versioning.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/concepts/Package-Versioning.md b/docs/concepts/Package-Versioning.md index 1ea2b3459..3ec94a9b4 100644 --- a/docs/concepts/Package-Versioning.md +++ b/docs/concepts/Package-Versioning.md @@ -104,6 +104,7 @@ When referring to package dependencies, NuGet supports using interval notation f | Notation | Applied rule | Description | |----------|--------------|-------------| | 1.0 | x ≥ 1.0 | Minimum version, inclusive | +| [1.0,) | x ≥ 1.0 | Minimum version, inclusive | | (1.0,) | x > 1.0 | Minimum version, exclusive | | [1.0] | x == 1.0 | Exact version match | | (,1.0] | x ≤ 1.0 | Maximum version, inclusive | From 5b11a87445564750911a21d504e7c761b2e12562 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Tue, 28 Feb 2023 10:36:31 -0800 Subject: [PATCH 715/988] Add details about nuget.exe localizaiton (#3013) --- docs/reference/nuget-exe-CLI-Reference.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docs/reference/nuget-exe-CLI-Reference.md b/docs/reference/nuget-exe-CLI-Reference.md index 814c72b56..7bebbea46 100644 --- a/docs/reference/nuget-exe-CLI-Reference.md +++ b/docs/reference/nuget-exe-CLI-Reference.md @@ -73,3 +73,8 @@ Developers concerned only with consuming packages, for example, need only unders > [!Note] > Command option names are case-insensitive. Options that are deprecated are not included in this reference, such as `NoPrompt` (replaced by `NonInteractive`) and `Verbose` (replaced by `Verbosity`). + +## Localization + +NuGet.exe's progress, warning and error messages are translated into the same locales as Visual Studio. +NuGet.exe ships as a single exe, and due to size considerations, only the most commonly surfaced messages are translated in all languages. From f2803ab1ba76a4902c1e189b51925434f091435f Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Tue, 28 Feb 2023 10:38:45 -0800 Subject: [PATCH 716/988] Add NU1012 pack files scenario to the docs (#3015) --- docs/reference/errors-and-warnings/NU1012.md | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/docs/reference/errors-and-warnings/NU1012.md b/docs/reference/errors-and-warnings/NU1012.md index 111fc520f..7ea7bb9b8 100644 --- a/docs/reference/errors-and-warnings/NU1012.md +++ b/docs/reference/errors-and-warnings/NU1012.md @@ -35,4 +35,16 @@ When creating a package for a framework with a platform such as `android`, you n ### Solution Specify the platform version in your nuspec. -If you are using the pack targets, the platform version will be automatically inferred. \ No newline at end of file +If you are using the pack targets, the platform version will be automatically inferred. + +## Scenario 3 + +Some included files are included under TFMs which are missing a platform version: lib/net6.0-android/Foo.dll, build/net9.0-windows/Foo.props + +### Issue + +Some of the files being packaged according to the NuGet packaging conventions have framework parts that are missing a platform version. + +### Solution + +Specify the platform version in your nuspec or in the pack extensibility targets in your project file. From a93a27331c79aa8d89c9464bfd2eb1e6896bc1ac Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Wed, 1 Mar 2023 11:46:06 +0100 Subject: [PATCH 717/988] Add env vars related to HTTP 429 retries (#3016) --- docs/reference/cli-reference/cli-ref-environment-variables.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/reference/cli-reference/cli-ref-environment-variables.md b/docs/reference/cli-reference/cli-ref-environment-variables.md index 517901fb9..dd12cc593 100644 --- a/docs/reference/cli-reference/cli-ref-environment-variables.md +++ b/docs/reference/cli-reference/cli-ref-environment-variables.md @@ -23,13 +23,16 @@ The list of properties documented in [NuGet pack and restore as MSBuild targets] | EnableNuGetPackageRestore | Flag for if NuGet should implicitly grant consent if that's required by package on restore. | Specified flag is treated as *true* or *1*, any other value treated as flag not set. | | NUGET_CLI_LANGUAGE | Changes nuget.exe output language | Available in 6.5 and higher versions. Supported values are [supported Visual Studio languages](/visualstudio/install/use-command-line-parameters-to-install-visual-studio?view=vs-2022&preserve-view=true#list-of-language-locales) locale names: `zh-cn`, `zh-tw`, `cs-cz`, `en-us`, `es-es`, `fr-fr`, `de-de`, `it-it`, `ja-jp`, `ko-kr`, `pl-pl`, `pt-br`, `ru-ru`, and `tr-tr`. | | NUGET_EXE_NO_PROMPT | Prevents the exe for prompting for credentials. | Any value except null or empty string will be treated as this flag set/true. | +| NUGET_MAX_RETRY_AFTER_DELAY_SECONDS | Maximum duration between retries when HTTP response contains Retry-After header | When NUGET_OBSERVE_RETRY_AFTER is enabled (as it is by default) and an HTTP response contains a Retry-After header, this environment variable sets the maximum duration that will be waited. Note that Retry-After can provide either a duration (delta) or a time stamp (date). If the server returns a time stamp and your machine's clock is out of sync with the server, the calculated duration might be very long (or negative). | | FORCE_NUGET_EXE_INTERACTIVE | Global environment variable to force interactive mode. | Any value except null or empty string will be treated as this flag set/true. | | NUGET_PACKAGES | Path to use for the *global-packages* folder as described on [Managing the global packages and cache folders](../../consume-packages/managing-the-global-packages-and-cache-folders.md). | Specified as absolute path. | | NUGET_FALLBACK_PACKAGES | Global fallback packages folders. | Absolute folder paths separated by semicolon (;). | | NUGET_HTTP_CACHE_PATH | Path to use for the *http-cache* folder as described on [Managing the global packages and cache folders](../../consume-packages/managing-the-global-packages-and-cache-folders.md). | Specified as absolute path. | +| NUGET_OBSERVE_RETRY_AFTER | Opt-out of using HTTP response message Retry-After delay durations | Prior to NuGet 6.5, NuGet would retry all failed requests with the same back-off strategy. Starting with NuGet 6.5, NuGet will by default use the Retry-After delay period provided by the server. Set this environment variable to `false` to ignore the Retry-After response header. Also see NUGET_MAX_RETRY_AFTER_DELAY_SECONDS | | NUGET_PERSIST_DG | Flag indicating if dg files (data collected from MSBuild) should be persisted. | Specified as *true* or *false* (default), if NUGET_PERSIST_DG_PATH not set will be stored to temporary directory (NuGetScratch folder in current environment temp directory). | | NUGET_PERSIST_DG_PATH | Path to persist dg files. | Specified as absolute path, this option is only used when *NUGET_PERSIST_DG* is set to true. | | NUGET_RESTORE_MSBUILD_ARGS | Sets additional MSBuild arguments. | Pass arguments identical to how you would pass them to msbuild.exe. An example of setting a project property Foo from the command line to value Bar would be /p:Foo=Bar | +| NUGET_RETRY_HTTP_429 | Change retry behavior on HTTP 429 responses | Prior to NuGet 6.5, NuGet would not retry requests that result in HTTP 429 on 408. The default value is `true`, and this environment variable can be set to `false` to opt-in to older NuGet behaviour (don't retry the request) | | NUGET_RESTORE_MSBUILD_VERBOSITY | Sets the MSBuild log verbosity. | Default is *quiet* ("/v:q"). Possible values *q[uiet]*, *m[inimal]*, *n[ormal]*, *d[etailed]*, and *diag[nostic]*. | | NUGET_SHOW_STACK | Determines whether the full exception (including stack trace) should be displayed to the user. | Specified as *true* or *false* (default). | | NUGET_UPDATEFILETIME_MAXRETRIES | Sets the number of times NuGet will attempt to set the file timestamp when extracting packages. | On Windows anti-virus software might temporarily open files, preventing NuGet from changing the timestamp. NuGet uses an exponential back-off where the wait duration between attempts is `Math.Pow(2, retryNumber)`. The default max retries is 9, meaning the default total wait duration before failure will be approximately one second. | From 7ba803745bd0c6da281b53890e844e50af156415 Mon Sep 17 00:00:00 2001 From: lyndaidaii <64443925+lyndaidaii@users.noreply.github.com> Date: Wed, 1 Mar 2023 09:49:43 -0800 Subject: [PATCH 718/988] Update Readme allowlist (#3017) --- docs/nuget-org/package-readme-on-nuget-org.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/nuget-org/package-readme-on-nuget-org.md b/docs/nuget-org/package-readme-on-nuget-org.md index c49751501..7867061d2 100644 --- a/docs/nuget-org/package-readme-on-nuget-org.md +++ b/docs/nuget-org/package-readme-on-nuget-org.md @@ -56,6 +56,7 @@ NuGet.org allows all images, including badges, from the following trusted domain * badges.gitter.im * bettercodehub.com * buildstats.info +* caniuse.bitsofco.de * camo.githubusercontent.com * cdn.jsdelivr.net * cdn.syncfusion.com @@ -65,6 +66,7 @@ NuGet.org allows all images, including badges, from the following trusted domain * codefactor.io * coveralls.io * dev.azure.com +* flat.badgen.net * github.com/.../workflows/.../badge.svg * gitlab.com * img.shields.io From 24342f994674cbf4042f36784ca18ec2f5ecc624 Mon Sep 17 00:00:00 2001 From: junjenchan Date: Thu, 2 Mar 2023 05:42:44 +1100 Subject: [PATCH 719/988] Update migrate-packages-config-to-package-reference.md (#3018) very minor formatting fix - white space correction --- .../migrate-packages-config-to-package-reference.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/migrate-packages-config-to-package-reference.md b/docs/consume-packages/migrate-packages-config-to-package-reference.md index ee975de2d..918c3cb57 100644 --- a/docs/consume-packages/migrate-packages-config-to-package-reference.md +++ b/docs/consume-packages/migrate-packages-config-to-package-reference.md @@ -109,7 +109,7 @@ Some aspects that were supported in packages.config are not supported in Package * **Description**: XDT transforms are not supported with PackageReference and `.xdt` files are ignored when installing or uninstalling a package. -* **Potential impact**: XDT transforms are not applied to any project XML files, most commonly, `web.config.install.xdt` and `web.config.uninstall.xdt`, which means the project's` web.config` file is not updated when the package is installed or uninstalled. +* **Potential impact**: XDT transforms are not applied to any project XML files, most commonly, `web.config.install.xdt` and `web.config.uninstall.xdt`, which means the project's `web.config` file is not updated when the package is installed or uninstalled. ### Assemblies in the lib root are ignored when the package is installed after the migration From 116b34fd95b4113dddae75b8d705887cd3ba0fd0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Abd=C3=BClhamit=20Yilmaz?= Date: Tue, 7 Mar 2023 19:24:26 +0100 Subject: [PATCH 720/988] Fix casing of paths in configuring-nuget-behavior (#3014) --- docs/consume-packages/configuring-nuget-behavior.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/configuring-nuget-behavior.md b/docs/consume-packages/configuring-nuget-behavior.md index 98dde61ac..fffdea5c7 100644 --- a/docs/consume-packages/configuring-nuget-behavior.md +++ b/docs/consume-packages/configuring-nuget-behavior.md @@ -33,7 +33,7 @@ These other tools look for the user config file under the `~/.config/NuGet` fold If the tooling you use involves both locations, consider consolidating them by following these steps to allow you to work with only one user-level config file: 1. Check the contents of the two user-level config files and keep the one you want under `~/.nuget/NuGet` folder. -2. Set symbolic link from `~/.nuget/NuGet` to `~/.config/Nuget`. E.g. Run bash command: `ln -s ~/.nuget/NuGet ~/.config/Nuget`. +2. Set symbolic link from `~/.nuget/NuGet` to `~/.config/NuGet`. E.g. Run bash command: `ln -s ~/.nuget/NuGet ~/.config/NuGet`. Notes for earlier versions of NuGet: From 343faa21dcd6929f4f91d2c101bcdbdb691b6db9 Mon Sep 17 00:00:00 2001 From: Joel Verhagen Date: Wed, 8 Mar 2023 09:00:49 -0800 Subject: [PATCH 721/988] Add licenses.nuget.org license text information (#3021) * Add licenses.nuget.org license text information Resolve https://github.com/NuGet/docs.microsoft.com-nuget/issues/2980 * Address suggestion * Update date * Add a word --- docs/nuget-org/licenses.nuget.org.md | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/docs/nuget-org/licenses.nuget.org.md b/docs/nuget-org/licenses.nuget.org.md index 735955e00..9f82c2b95 100644 --- a/docs/nuget-org/licenses.nuget.org.md +++ b/docs/nuget-org/licenses.nuget.org.md @@ -1,7 +1,9 @@ --- title: licenses.nuget.org +description: Protocol and display information for licenses.nuget.org. Describes the SPDX data source and rationale. author: agr -ms.date: 02/22/2019 +ms.author: angrigor +ms.date: 03/02/2023 --- # licenses.nuget.org @@ -18,6 +20,18 @@ specify their license using a license expression. `nuget pack` or packing with o the [`licenseUrl`](../reference/nuspec.md#licenseurl) element to point to licenses.nuget.org to provide backwards compatibility with older clients that don't support the `license` element. +## License and exception text + +The license and license exception information displayed on licenses.nuget.org is copied from the SPDX project's [license list data repository](https://github.com/spdx/license-list-data). The format that the information is displayed closely mimics the format used by the SPDX website itself, e.g. see [MIT on licenses.nuget.org](https://licenses.nuget.org/MIT) and [MIT on SPDX.org](https://spdx.org/licenses/MIT.html). + +Licenses that are not approved by Open Source Initiative or the Free Software Foundation are not hosted on licenses.nuget.org and are excluded. + +Several styles in addition to plain text are used in the display of the license. According to the [SPDX license list data FAQ](https://github.com/spdx/license-list-XML/blob/main/DOCS/faq.md#what-does-the-blue-text-and-red-text-mean-in-the-license-list-entry), red text is considered replaceable and blue text is considered omitable. For more generally information about the SPDX license list data, see their [FAQ](https://github.com/spdx/license-list-XML/blob/main/DOCS/faq.md) and the [SPDX license template specification](https://spdx.github.io/spdx-spec/v2.3/license-matching-guidelines-and-templates/). + +Note that the data is copied from SPDX to licenses.nuget.org by the nuget.org on an ad hoc basis. If a license identifier is approved by the Open Source Initiative or the Free Software Foundation but does not appear on licenses.nuget.org, please [report an issue](https://github.com/NuGet/NuGetGallery/issues/new/choose), and the nuget.org team work to update licenses.nuget.org and nuget.org package upload validation with the latest data from SPDX. + +If you, as a package author, are not satisfied with the shared license text available on licenses.nuget.org, you can consider using [embedded license text](../reference/nuspec.md#license) (``) instead of a license expression for your NuGet package. This allows you to fully customize your licensing terms and include the customized text within the package. + ## Protocol Licenses.nuget.org is intended to be viewed by people in their browsers, no machine-readable responses are provided. @@ -40,7 +54,7 @@ licenses.nuget.org. | (LGPL-2.0-only WITH FLTK-exception OR Apache-2.0+) | | The service supports only license identifiers and license exception identifiers that are accepted by -nuget.org. All license expressions that contain unsupported license identifiers +nuget.org. Notably, this means only license identifiers that are approved by the Open Source Initiative or the Free Software Foundation will be accepted. All license expressions that contain unsupported license identifiers or license exception identifiers or that does not conform to license expression syntax are considered invalid. From ed57050267c5631c19e44924aae75c9db483b526 Mon Sep 17 00:00:00 2001 From: Rich Lander Date: Wed, 8 Mar 2023 15:58:05 -0800 Subject: [PATCH 722/988] Update Central-Package-Management.md (#3030) Removed reference to .NET 7 Preview 4. We shipped! --- docs/consume-packages/Central-Package-Management.md | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/docs/consume-packages/Central-Package-Management.md b/docs/consume-packages/Central-Package-Management.md index 16c2b44bd..4e8e8c227 100644 --- a/docs/consume-packages/Central-Package-Management.md +++ b/docs/consume-packages/Central-Package-Management.md @@ -21,12 +21,11 @@ Historically, NuGet package dependencies have been managed in one of two locatio Starting with [NuGet 6.2](..\release-notes\NuGet-6.2.md), you can centrally manage your dependencies in your projects with the addition of a `Directory.Packages.props` file and an MSBuild property. -The feature is available across all NuGet integrated tooling. +The feature is available across all NuGet integrated tooling, starting with the following versions. -* [Visual Studio 2022 17.2 and later](https://visualstudio.microsoft.com/downloads/) -* [.NET SDK 6.0.300 and later](https://dotnet.microsoft.com/download/dotnet/6.0) -* [.NET SDK 7.0.0-preview.4 and later](https://dotnet.microsoft.com/download/dotnet/7.0) -* [nuget.exe 6.2.0 and later](https://www.nuget.org/downloads) +* [Visual Studio 2022 17.2](https://visualstudio.microsoft.com/downloads/) +* [.NET SDK 6.0.300](https://dotnet.microsoft.com/download/dotnet/6.0) +* [nuget.exe 6.2.0](https://www.nuget.org/downloads) Older tooling will ignore central package management configurations and features. To use this feature to the fullest extent, ensure all your build environments use the latest compatible tooling versions. From bf10d2eec0e97a53b86bddcf0a198f132ac1584d Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Wed, 15 Mar 2023 13:24:01 -0700 Subject: [PATCH 723/988] Remove unused environment variables NUGET_PERSIST_DG and NUGET_PERSIST_DG_PATH (#3032) Related https://github.com/NuGet/NuGet.Client/pull/5094 --- docs/reference/cli-reference/cli-ref-environment-variables.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/docs/reference/cli-reference/cli-ref-environment-variables.md b/docs/reference/cli-reference/cli-ref-environment-variables.md index dd12cc593..9e27a299d 100644 --- a/docs/reference/cli-reference/cli-ref-environment-variables.md +++ b/docs/reference/cli-reference/cli-ref-environment-variables.md @@ -29,8 +29,6 @@ The list of properties documented in [NuGet pack and restore as MSBuild targets] | NUGET_FALLBACK_PACKAGES | Global fallback packages folders. | Absolute folder paths separated by semicolon (;). | | NUGET_HTTP_CACHE_PATH | Path to use for the *http-cache* folder as described on [Managing the global packages and cache folders](../../consume-packages/managing-the-global-packages-and-cache-folders.md). | Specified as absolute path. | | NUGET_OBSERVE_RETRY_AFTER | Opt-out of using HTTP response message Retry-After delay durations | Prior to NuGet 6.5, NuGet would retry all failed requests with the same back-off strategy. Starting with NuGet 6.5, NuGet will by default use the Retry-After delay period provided by the server. Set this environment variable to `false` to ignore the Retry-After response header. Also see NUGET_MAX_RETRY_AFTER_DELAY_SECONDS | -| NUGET_PERSIST_DG | Flag indicating if dg files (data collected from MSBuild) should be persisted. | Specified as *true* or *false* (default), if NUGET_PERSIST_DG_PATH not set will be stored to temporary directory (NuGetScratch folder in current environment temp directory). | -| NUGET_PERSIST_DG_PATH | Path to persist dg files. | Specified as absolute path, this option is only used when *NUGET_PERSIST_DG* is set to true. | | NUGET_RESTORE_MSBUILD_ARGS | Sets additional MSBuild arguments. | Pass arguments identical to how you would pass them to msbuild.exe. An example of setting a project property Foo from the command line to value Bar would be /p:Foo=Bar | | NUGET_RETRY_HTTP_429 | Change retry behavior on HTTP 429 responses | Prior to NuGet 6.5, NuGet would not retry requests that result in HTTP 429 on 408. The default value is `true`, and this environment variable can be set to `false` to opt-in to older NuGet behaviour (don't retry the request) | | NUGET_RESTORE_MSBUILD_VERBOSITY | Sets the MSBuild log verbosity. | Default is *quiet* ("/v:q"). Possible values *q[uiet]*, *m[inimal]*, *n[ormal]*, *d[etailed]*, and *diag[nostic]*. | From 5c7456503d6546d513d055fbc0c822130b69c4d1 Mon Sep 17 00:00:00 2001 From: Joel Verhagen Date: Thu, 30 Mar 2023 18:07:24 -0400 Subject: [PATCH 724/988] Clarify that Terms of Use violations are reason for package takedowns (#3039) --- docs/nuget-org/policies/deleting-packages.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/nuget-org/policies/deleting-packages.md b/docs/nuget-org/policies/deleting-packages.md index 3a5502206..5224644d7 100644 --- a/docs/nuget-org/policies/deleting-packages.md +++ b/docs/nuget-org/policies/deleting-packages.md @@ -30,6 +30,7 @@ Packages that meet any of the following criteria are not allowed on the public N - Contains illegal content. - Are being used to squat on package identifiers, including packages that have zero productive content. Packages must contain code or the owners must concede the identifier to someone who actually has a product to ship. - Attempt to make the gallery do something that it's not explicitly designed to do. +- Violates the [nuget.org Terms of Use or Code of Conduct](https://www.nuget.org/policies/Terms) in any way. Terms such as "unexpected", "discriminatory", "hateful", and "abusive" are evaluated and decided at the sole discretion of the NuGet team. If you find a package that is in violation of any of these items, click the **Report Abuse** link on the package details page and submit a report. From 2068a631d2a05e8e75bfb7ca3021abdbf466bd6e Mon Sep 17 00:00:00 2001 From: Damon Tivel Date: Mon, 3 Apr 2023 12:24:33 -0700 Subject: [PATCH 725/988] Document new warning NU3042 (#3034) --- docs/TOC.md | 1 + docs/reference/Errors-and-Warnings.md | 2 +- docs/reference/errors-and-warnings/NU3018.md | 2 + docs/reference/errors-and-warnings/NU3028.md | 4 +- docs/reference/errors-and-warnings/NU3042.md | 44 ++++++++++++++++++++ 5 files changed, 51 insertions(+), 2 deletions(-) create mode 100644 docs/reference/errors-and-warnings/NU3042.md diff --git a/docs/TOC.md b/docs/TOC.md index c748393be..27dcbf2d6 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -226,6 +226,7 @@ ### [NU3037](reference/errors-and-warnings/NU3037.md) ### [NU3038](reference/errors-and-warnings/NU3038.md) ### [NU3040](reference/errors-and-warnings/NU3040.md) +### [NU3042](reference/errors-and-warnings/NU3042.md) ### [NU5000](reference/errors-and-warnings/NU5000.md) ### [NU5001](reference/errors-and-warnings/NU5001.md) ### [NU5002](reference/errors-and-warnings/NU5002.md) diff --git a/docs/reference/Errors-and-Warnings.md b/docs/reference/Errors-and-Warnings.md index a537a9d7f..e06106f95 100644 --- a/docs/reference/Errors-and-Warnings.md +++ b/docs/reference/Errors-and-Warnings.md @@ -47,7 +47,7 @@ NuGet supports the following configuration properties. | Package fallback warnings | [NU1701](./errors-and-warnings/NU1701.md) | | Feed warnings | [NU1801](./errors-and-warnings/NU1801.md), [NU1802](./errors-and-warnings/NU1802.md), [NU1803](./errors-and-warnings/NU1803.md) | | NuGet internal warnings | [NU1500](./errors-and-warnings/NU1500.md) | -| Signed packages warnings (creation and verification) | [NU3000](./errors-and-warnings/NU3000.md), [NU3002](./errors-and-warnings/NU3002.md), [NU3003](./errors-and-warnings/NU3003.md), [NU3006](./errors-and-warnings/NU3006.md), [NU3007](./errors-and-warnings/NU3007.md), [NU3009](./errors-and-warnings/NU3009.md), [NU3010](./errors-and-warnings/NU3010.md), [NU3011](./errors-and-warnings/NU3011.md), [NU3012](./errors-and-warnings/NU3012.md), [NU3013](./errors-and-warnings/NU3013.md), [NU3014](./errors-and-warnings/NU3014.md), [NU3015](./errors-and-warnings/NU3015.md), [NU3016](./errors-and-warnings/NU3016.md), [NU3017](./errors-and-warnings/NU3017.md), [NU3018](./errors-and-warnings/NU3018.md), [NU3019](./errors-and-warnings/NU3019.md), [NU3020](./errors-and-warnings/NU3020.md), [NU3021](./errors-and-warnings/NU3021.md), [NU3022](./errors-and-warnings/NU3022.md), [NU3023](./errors-and-warnings/NU3023.md), [NU3024](./errors-and-warnings/NU3024.md), [NU3025](./errors-and-warnings/NU3025.md), [NU3026](./errors-and-warnings/NU3026.md), [NU3027](./errors-and-warnings/NU3027.md), [NU3028](./errors-and-warnings/NU3028.md), [NU3029](./errors-and-warnings/NU3029.md), [NU3030](./errors-and-warnings/NU3030.md), [NU3031](./errors-and-warnings/NU3031.md), [NU3032](./errors-and-warnings/NU3032.md), [NU3033](./errors-and-warnings/NU3033.md), [NU3035](./errors-and-warnings/NU3035.md), [NU3036](./errors-and-warnings/NU3036.md), [NU3037](./errors-and-warnings/NU3037.md), [NU3038](./errors-and-warnings/NU3038.md), [NU3040](./errors-and-warnings/NU3040.md) | +| Signed packages warnings (creation and verification) | [NU3000](./errors-and-warnings/NU3000.md), [NU3002](./errors-and-warnings/NU3002.md), [NU3003](./errors-and-warnings/NU3003.md), [NU3006](./errors-and-warnings/NU3006.md), [NU3007](./errors-and-warnings/NU3007.md), [NU3009](./errors-and-warnings/NU3009.md), [NU3010](./errors-and-warnings/NU3010.md), [NU3011](./errors-and-warnings/NU3011.md), [NU3012](./errors-and-warnings/NU3012.md), [NU3013](./errors-and-warnings/NU3013.md), [NU3014](./errors-and-warnings/NU3014.md), [NU3015](./errors-and-warnings/NU3015.md), [NU3016](./errors-and-warnings/NU3016.md), [NU3017](./errors-and-warnings/NU3017.md), [NU3018](./errors-and-warnings/NU3018.md), [NU3019](./errors-and-warnings/NU3019.md), [NU3020](./errors-and-warnings/NU3020.md), [NU3021](./errors-and-warnings/NU3021.md), [NU3022](./errors-and-warnings/NU3022.md), [NU3023](./errors-and-warnings/NU3023.md), [NU3024](./errors-and-warnings/NU3024.md), [NU3025](./errors-and-warnings/NU3025.md), [NU3026](./errors-and-warnings/NU3026.md), [NU3027](./errors-and-warnings/NU3027.md), [NU3028](./errors-and-warnings/NU3028.md), [NU3029](./errors-and-warnings/NU3029.md), [NU3030](./errors-and-warnings/NU3030.md), [NU3031](./errors-and-warnings/NU3031.md), [NU3032](./errors-and-warnings/NU3032.md), [NU3033](./errors-and-warnings/NU3033.md), [NU3035](./errors-and-warnings/NU3035.md), [NU3036](./errors-and-warnings/NU3036.md), [NU3037](./errors-and-warnings/NU3037.md), [NU3038](./errors-and-warnings/NU3038.md), [NU3040](./errors-and-warnings/NU3040.md), [NU3042](./errors-and-warnings/NU3042.md) | | Pack Warnings | [NU5100](./errors-and-warnings/NU5100.md), [NU5101](./errors-and-warnings/NU5101.md), [NU5102](./errors-and-warnings/NU5102.md), [NU5103](./errors-and-warnings/NU5103.md), [NU5104](./errors-and-warnings/NU5104.md), [NU5105](./errors-and-warnings/NU5105.md), [NU5106](./errors-and-warnings/NU5106.md), [NU5107](./errors-and-warnings/NU5107.md), [NU5108](./errors-and-warnings/NU5108.md), [NU5109](./errors-and-warnings/NU5109.md), [NU5110](./errors-and-warnings/NU5110.md), [NU5111](./errors-and-warnings/NU5111.md), [NU5112](./errors-and-warnings/NU5112.md), [NU5114](./errors-and-warnings/NU5114.md), [NU5115](./errors-and-warnings/NU5115.md), [NU5116](./errors-and-warnings/NU5116.md), [NU5117](./errors-and-warnings/NU5117.md), [NU5118](./errors-and-warnings/NU5118.md), [NU5119](./errors-and-warnings/NU5119.md), [NU5120](./errors-and-warnings/NU5120.md), [NU5121](./errors-and-warnings/NU5121.md), [NU5122](./errors-and-warnings/NU5122.md), [NU5123](./errors-and-warnings/NU5123.md), [NU5127](./errors-and-warnings/NU5127.md), [NU5128](./errors-and-warnings/NU5128.md), [NU5129](./errors-and-warnings/NU5129.md), [NU5130](./errors-and-warnings/NU5130.md), [NU5131](./errors-and-warnings/NU5131.md), [NU5133](./errors-and-warnings/NU5133.md), [NU5500](./errors-and-warnings/NU5500.md), [NU5501](./errors-and-warnings/NU5501.md) | License specific Pack Warnings | [NU5124](./errors-and-warnings/NU5124.md), [NU5125](./errors-and-warnings/NU5125.md) | Icon specific Pack Warnings | [NU5046](./errors-and-warnings/NU5046.md), [NU5047](./errors-and-warnings/NU5047.md), [NU5048](./errors-and-warnings/NU5048.md) | diff --git a/docs/reference/errors-and-warnings/NU3018.md b/docs/reference/errors-and-warnings/NU3018.md index 90cda228c..62f58ee6b 100644 --- a/docs/reference/errors-and-warnings/NU3018.md +++ b/docs/reference/errors-and-warnings/NU3018.md @@ -25,3 +25,5 @@ Please ensure that the package signature has a valid certificate chain. You can > [!Note] > When NuGet’s [signature validation mode](../../consume-packages/installing-signed-packages.md#configure-package-signature-requirements) is set to accept (default), NU3018 is raised as a warning. > When NuGet’s signature validation mode is set to require, or when running the `nuget verify -signatures` command, NU3018 is elevated from a warning to an error in most cases. + +For Linux and macOS, see [NuGet signed-package verification](/dotnet/core/tools/nuget-signed-package-verification). Specifically for untrusted root certificate warnings/errors on Linux and macOS, also see [NU3042](NU3042.md). \ No newline at end of file diff --git a/docs/reference/errors-and-warnings/NU3028.md b/docs/reference/errors-and-warnings/NU3028.md index bbb2e1e8e..eaa14485e 100644 --- a/docs/reference/errors-and-warnings/NU3028.md +++ b/docs/reference/errors-and-warnings/NU3028.md @@ -24,6 +24,8 @@ On Windows only, this issue may occur the first time a root certificate is obser ### Solution Use a trusted and valid certificate. Check internet connectivity. +For Linux and macOS, see [NuGet signed-package verification](/dotnet/core/tools/nuget-signed-package-verification). Specifically for untrusted root certificate warnings/errors on Linux and macOS, also see [NU3042](NU3042.md). + #### Revocation check mode > [!Note] > This option is available starting from NuGet 4.8.1. @@ -52,4 +54,4 @@ For example, setting the environment variable to a value of `3,1000` like so: > [!Note] > NU3028 is raised as an error in most cases. -> When NuGet’s [signature validation mode](../../consume-packages/installing-signed-packages.md#configure-package-signature-requirements) is set to accept (default), NU3028 is raised as a warning in some cases. +> When NuGet’s [signature validation mode](../../consume-packages/installing-signed-packages.md#configure-package-signature-requirements) is set to accept (default), NU3028 is raised as a warning in some cases. \ No newline at end of file diff --git a/docs/reference/errors-and-warnings/NU3042.md b/docs/reference/errors-and-warnings/NU3042.md new file mode 100644 index 000000000..57c74bd3a --- /dev/null +++ b/docs/reference/errors-and-warnings/NU3042.md @@ -0,0 +1,44 @@ +--- +title: NuGet Warning NU3042 +description: NU3042 warning code +author: dtivel +ms.author: dtivel +ms.date: 03/22/2023 +ms.topic: reference +ms.reviewer: +f1_keywords: + - "NU3042" +--- + +# NuGet Warning NU3042 + +*NuGet 6.6.0+ on Linux and macOS only* + +
The following X.509 root certificate is untrusted because it is not present in the certificate bundle at <file-path>.  For more information, see documentation for NU3042.
+    Subject:  <certificate subject>
+    Fingerprint (SHA-256):  <certificate fingerprint>
+    Certificate (PEM):
+<PEM-encoded certificate>
+ +### Issue +Warning NU3042 is raised when signed package verification failed because a root certificate was not found in the appropriate trusted root certificate bundle, either code signing or timestamping. This warning will only be raised on Linux and macOS when signed package verification is enabled, never on Windows. NU3042 should accompany an [NU3018](NU3018.md) or [NU3028](NU3028.md). + +Each .NET 7+ SDK release contains two root certificate bundles sourced from the [Microsoft Trusted Root Program](https://aka.ms/RootCert). One certificate bundle contains all trusted roots valid for code signing, while the other contains all trusted roots valid for timestamping. NuGet uses these certificate bundles on Linux and macOS when signed package verification is enabled. + +On Linux, NuGet will prefer a system-wide code signing certificate bundle over the .NET SDK's code signing certificate bundle. + +The root cause for NU3042 is likely one of the following: + +* (Linux only) The system-wide code signing certificate bundle does not contain the root certificate referenced in the warning. +* The .NET SDK's certificate bundles are out of date. + +For more information, see [NuGet signed-package verification](/dotnet/core/tools/nuget-signed-package-verification). + +### Solution +On Linux, if you trust the certificate and are using a system-wide code signing certificate bundle, consider adding the root certificate to the bundle. This solution may not be suitable because it will grant system-wide trust. + +If the .NET SDK's certificate bundles are out-of-date, update to a more recent release of the .NET SDK. + +If all else fails, opt out of signed package verification by setting the environment variable `DOTNET_NUGET_SIGNATURE_VERIFICATION` to `false` and [open an issue with the NuGet team](https://github.com/NuGet/Home/issues) to suggest how signed package verification can be improved on your platform. + +For more information, see [NuGet signed-package verification](/dotnet/core/tools/nuget-signed-package-verification). \ No newline at end of file From f6fc5791b2e214d647f473287a10e31d7ec066b9 Mon Sep 17 00:00:00 2001 From: Jeff Kluge Date: Tue, 4 Apr 2023 12:03:43 -0600 Subject: [PATCH 726/988] Update NU1011 to indicate that CPM is an enterprise level feature and why floating version ranges are not recommended or allowed (#3031) --- docs/reference/errors-and-warnings/NU1011.md | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/docs/reference/errors-and-warnings/NU1011.md b/docs/reference/errors-and-warnings/NU1011.md index d9175e129..ab5c76acf 100644 --- a/docs/reference/errors-and-warnings/NU1011.md +++ b/docs/reference/errors-and-warnings/NU1011.md @@ -15,7 +15,18 @@ f1_keywords: ### Issue -PackageVersion items cannot contain floating versions. +`` items cannot contain floating versions. NuGet's central package management (CPM) is considered an enterprise-level feature which provides easier version +management at scale as well as deterministic and secure restores. The use of floating versions introduces the possibility for a bad package to be introduced into your build +after it has been pushed to a feed. This can lead to a situation where you made no changes in your repository but suddenly something is broken and there is no way for you to +get back into a good state without removing the floating version or pushing a newer version of the package which is fixed. Using non-floating versions means that every upgrade +to a package is backed by a commit in your repository making it easy to determine what change caused the break and to revert a commit to get back into a good state. + +The [Transitive Pinning](../../consume-packages/Central-Package-Management.md#transitive-pinning) feature is designed to allow you to explicitly override the transitive versions in your graph for more control. Using a floating version as an override could make restores of different projects end up with different versions for the package that is supposed to be pinned, thus going against the promise of using the central version. + +NuGet recommends you use automation like [Dependabot](https://docs.github.com/code-security/dependabot/working-with-dependabot) to keep package versions up-to-date which provides +a streamlined way of keeping packages updated while integrating into your existing developer workflow of a pull request, automated build validation, and testing all backed by a +commit in your repository. + ### Solution From f19bcb8f8c525bce4d0d22ae4822acc46e35451d Mon Sep 17 00:00:00 2001 From: Andrii Siriak Date: Wed, 5 Apr 2023 00:39:41 +0300 Subject: [PATCH 727/988] Fix wording in Central-Package-Management.md (#3040) --- docs/consume-packages/Central-Package-Management.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Central-Package-Management.md b/docs/consume-packages/Central-Package-Management.md index 4e8e8c227..06890cf72 100644 --- a/docs/consume-packages/Central-Package-Management.md +++ b/docs/consume-packages/Central-Package-Management.md @@ -179,7 +179,7 @@ If you'd like to disable central package management for any a particular project > [!Note] > This feature is only available in Visual Studio 2022 17.4 or higher, .NET SDK 7.0.100.preview7 or higher, and NuGet 6.4 or higher. -A global package reference is used to specify that a package will be used by every project in a repository. This includes packages that do versioning, extend your build, or do any other package that is needed by all projects. Global package references are added to the PackageReference item group with the following metadata: +A global package reference is used to specify that a package will be used by every project in a repository. This includes packages that do versioning, extend your build, or any other packages that are needed by all projects. Global package references are added to the PackageReference item group with the following metadata: * `IncludeAssets="Runtime;Build;Native;contentFiles;Analyzers"`
This ensures that the package is only used as a development dependency and prevents any compile-time assembly references. From 951492e26d85347542e900294e83d5b914b5df9d Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Tue, 4 Apr 2023 14:40:13 -0700 Subject: [PATCH 728/988] Update Errors-and-Warnings.md (#3038) --- docs/reference/Errors-and-Warnings.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/Errors-and-Warnings.md b/docs/reference/Errors-and-Warnings.md index e06106f95..c11a2f341 100644 --- a/docs/reference/Errors-and-Warnings.md +++ b/docs/reference/Errors-and-Warnings.md @@ -19,7 +19,7 @@ NuGet supports the following configuration properties. | Property | Scope | Description | |----------|-------|-------------| | TreatWarningsAsErrors | Project | Treats all NuGet warnings as errors | -| NoWarn | Project, PackageReference | Suppress the warning for the project or package | +| NoWarn | Project, PackageReference, ProjectReference | Suppress the warning for the current project, package or project reference | | WarningsAsErrors | Project | Treat certain warnings as errors | | WarningsNotAsErrors | Project | Treat certain warnings not as errors. Used in combination with `TreatWarningsAsErrors` set to true. | From 2dc9c0ca15f2d7eabeb1bfc936036e525cb85b0b Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Wed, 5 Apr 2023 14:25:16 -0700 Subject: [PATCH 729/988] Update nuget-config-file.md (#3033) We need to give examples of `` in use, it's important for perf and security. --- docs/reference/nuget-config-file.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/reference/nuget-config-file.md b/docs/reference/nuget-config-file.md index 1f1178677..f88e8ddc1 100644 --- a/docs/reference/nuget-config-file.md +++ b/docs/reference/nuget-config-file.md @@ -121,6 +121,7 @@ Lists all known package sources. The order is ignored during restore operations ```xml + @@ -454,6 +455,7 @@ Below is an example `nuget.config` file that illustrates a number of settings in See: nuget.exe help update --> + From e382e68906d4f7a82940168e06067b9112779859 Mon Sep 17 00:00:00 2001 From: Andrei Grigorev Date: Mon, 10 Apr 2023 13:46:50 -0700 Subject: [PATCH 730/988] More modern package sources settings screenshot (#3006) --- .../media/package-sources.png | Bin 20008 -> 26149 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/consume-packages/media/package-sources.png b/docs/consume-packages/media/package-sources.png index 20d91f19eba12ded8ed3754a745493b73c0ed07b..78e834702e8dfb4ca8b26149af82fff8d27badab 100644 GIT binary patch literal 26149 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 From 543dd4a76fae09b815f3ad624ea35b352e315d89 Mon Sep 17 00:00:00 2001 From: Leo Grove Date: Mon, 17 Apr 2023 14:17:27 -0500 Subject: [PATCH 731/988] Add SSL.com as a CA (#3046) * Add SSL.com as a CA SSL.com is a MS trusted CA and participates in the Microsoft Root Program. * Update Sign-a-Package.md bulleted, alphabetized list of CAs * Keep original language. --------- Co-authored-by: Jon Douglas --- docs/create-packages/Sign-a-Package.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/docs/create-packages/Sign-a-Package.md b/docs/create-packages/Sign-a-Package.md index 992ea16d3..fffc365a1 100644 --- a/docs/create-packages/Sign-a-Package.md +++ b/docs/create-packages/Sign-a-Package.md @@ -14,7 +14,15 @@ A signed package allows for content integrity verification checks, which provide ## Get a code signing certificate -Valid certificates can be obtained from a public certificate authority such as [DigiCert](https://www.digicert.com/code-signing/), [Global Sign](https://www.globalsign.com/en/code-signing-certificate/), [Comodo](https://www.comodo.com/e-commerce/code-signing/code-signing-certificate.php), or [Certum](https://www.certum.eu/certum/cert,offer_en_open_source_cs.xml). You can obtain the complete list of certification authorities trusted by Windows from [http://aka.ms/trustcertpartners](/security/trusted-root/participants-list). +Valid certificates can be obtained from a public certificate authority such as: + +- [Certum](https://www.certum.eu/certum/cert,offer_en_open_source_cs.xml) +- [Comodo](https://www.comodo.com/e-commerce/code-signing/code-signing-certificate.php) +- [DigiCert](https://www.digicert.com/code-signing/) +- [GlobalSign](https://www.globalsign.com/en/code-signing-certificate/) +- [SSL.com](https://www.ssl.com/certificates/code-signing/) + +The complete list of certification authorities trusted by Windows can also be obtained from [http://aka.ms/trustcertpartners](/security/trusted-root/participants-list). You can use self-issued certificates for testing purposes. However, packages signed using self-issued certificates are not accepted by NuGet.org. Learn more about [creating a test certificate](#create-a-test-certificate) From ad334958946e5efc87fc041f21381a096eb80986 Mon Sep 17 00:00:00 2001 From: Donnie Goodson <49205731+donnie-msft@users.noreply.github.com> Date: Fri, 21 Apr 2023 15:42:37 -0700 Subject: [PATCH 732/988] Update Index.md with NuGet 6.5 Release Notes (#3051) --- docs/release-notes/Index.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/release-notes/Index.md b/docs/release-notes/Index.md index 1aeb15996..c0e6baecd 100644 --- a/docs/release-notes/Index.md +++ b/docs/release-notes/Index.md @@ -11,6 +11,8 @@ ms.topic: conceptual [Known Issues](../release-notes/known-issues.md) +[NuGet 6.5](../release-notes/NuGet-6.5.md) + [NuGet 6.4](../release-notes/NuGet-6.4.md) [NuGet 6.3](../release-notes/NuGet-6.3.md) From ca0e51d6c1f640343f9385e2d36b4fc295f900c6 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Tue, 9 May 2023 13:41:42 -0500 Subject: [PATCH 733/988] Update Package-authoring-best-practices.md (#3061) --- docs/create-packages/Package-authoring-best-practices.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/create-packages/Package-authoring-best-practices.md b/docs/create-packages/Package-authoring-best-practices.md index 12b68d5b4..0dd9f686e 100644 --- a/docs/create-packages/Package-authoring-best-practices.md +++ b/docs/create-packages/Package-authoring-best-practices.md @@ -124,8 +124,8 @@ Example: Copyright (c) Contoso 2020 ❌ DO NOT use the deprecated `IconUrl` metadata property. ### README -✔️ DO add a README markdown file that provides an overview of what your package does and how to get started. -> A package README will significantly improve the quality perception of your package as well as new user onboarding. Also consider [previewing your README](../nuget-org/package-readme-on-nuget-org.md#preview-your-readme) before you upload it! +✔️ DO [add a README markdown file](https://learn.microsoft.com/nuget/reference/msbuild-targets#packagereadmefile) that provides an overview of what your package does and how to get started. +> A package README will significantly improve the quality perception of your package as well as new user onboarding. Also consider [previewing your README](../nuget-org/package-readme-on-nuget-org.md#preview-your-readme) before you upload it! See [how to include a README file in your NuGet package](https://learn.microsoft.com/nuget/reference/msbuild-targets#packagereadmefile) for more details. ### Repository Type and URL From 57a5a3877ad8f3706d60dd14ec31971ee04cfb0b Mon Sep 17 00:00:00 2001 From: Ryu Yu <11051729+ryuyu@users.noreply.github.com> Date: Wed, 10 May 2023 15:42:20 -0700 Subject: [PATCH 734/988] Update username change policy (#3052) * Update username change policy * Fix grammar. Add new line for one way change. * Update some formatting --- docs/nuget-org/nuget-org-faq.yml | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/docs/nuget-org/nuget-org-faq.yml b/docs/nuget-org/nuget-org-faq.yml index d8a6ee33a..c7264ac1e 100644 --- a/docs/nuget-org/nuget-org-faq.yml +++ b/docs/nuget-org/nuget-org-faq.yml @@ -228,11 +228,18 @@ sections: - question: How do I change my NuGet.org account username? answer: | - You cannot. As a matter of policy we do not allow the change of usernames. Also, doing so is a breaking change for users that may have defined [package trust policies based on the package owner](../consume-packages/installing-signed-packages.md#trust-package-owners). The only way to change your username is to create a new account with the desired username. We recommend you delete your existing account before you create a new one, otherwise you will not be able to reuse your registered Microsoft account. + You can request a username change by sending an email to [support@nuget.org](mailto:support@nuget.org) from the email address that is attached to the account you want to update. + Be sure to include the old username and the new username you would like to change to. + We will then review your request and, upon approval, get confirmation from you that we are about to take the correct action and that you understand the consequences. + Once you have confirmed, we will change your username. + > [!Important] - > Deleting the user will still **reserve** the `username`. You will not be able to reuse the same username again and **this includes the change of casings**. As an example if you created a user with username `mycoolname` and you want to change this to `MyCoolName`(casing changes), it will not be possible after deleting the user. - - Follow the steps given in [delete your NuGet.org account](#how-to-delete-my-nuget-org-account) section and to [register a new account](individual-accounts.md) with correct username. + > - The old username will still be **reserved**. You will not be able to reuse the old username again and **this includes the change of casings**. + > - As a consequence of the above, we will not be able to revert this change either. + > - Any links to your old username profile page (e.g. https://www.nuget.org/profiles/OldUsername) will not be redirected to your new profile. + > - Package versions currently owned by your account will still contain the old username in the repository signature. New package versions will contain the new username. + > - Any author-provided metadata in the existing package versions referring to the old username or other identifying information will not be changed. + > - NuGet client policies asserting trust of your old username will not implicitly trust packages published by your new username. Package consumers with these client policies configured will need to manual update them to trust your new username when they attempt to update to a newly published package version. - question: How to delete my NuGet.org account? answer: | From c2d9b3669a75f1d60e08e90d591966038b5bf2f5 Mon Sep 17 00:00:00 2001 From: Dmitry Tretyakov Date: Thu, 11 May 2023 15:04:09 +0200 Subject: [PATCH 735/988] Add JetBrains Space to the ecosystem links (#3057) --- docs/policies/Ecosystem.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/policies/Ecosystem.md b/docs/policies/Ecosystem.md index 636690ff9..34174bed7 100644 --- a/docs/policies/Ecosystem.md +++ b/docs/policies/Ecosystem.md @@ -35,6 +35,7 @@ Many other individuals and companies have made significant contributions to the - [Chocolatey](https://chocolatey.org/) - [CoApp](http://coapp.org/) - [JetBrains ReSharper](https://resharper-plugins.jetbrains.com/) +- [JetBrains Space](https://www.jetbrains.com/space/) - [JetBrains TeamCity](https://www.jetbrains.com/teamcity/) - [Klondike](https://github.com/themotleyfool/Klondike) - [MinimalNugetServer](https://github.com/TanukiSharp/MinimalNugetServer) From 622d10671943c4ac0833fc2d6029c2024d951220 Mon Sep 17 00:00:00 2001 From: Richard Moss Date: Thu, 11 May 2023 14:07:44 +0100 Subject: [PATCH 736/988] Update Overview.md (#3048) Updated link to Gitea NuGet Packages Repository documentation --- docs/hosting-packages/Overview.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/hosting-packages/Overview.md b/docs/hosting-packages/Overview.md index 675c86c40..853237220 100644 --- a/docs/hosting-packages/Overview.md +++ b/docs/hosting-packages/Overview.md @@ -25,7 +25,7 @@ There are also several other NuGet hosting products such as [Azure Artifacts](ht - [BaGet](https://github.com/loic-sharma/BaGet), an open-source implementation of NuGet V3 server built on ASP.NET Core - [Bytesafe](https://docs.bytesafe.dev/package-managers/nuget/) A fully managed package and supply chain security platform - [Cloudsmith](https://cloudsmith.io/l/nuget-feed/), a fully managed package management SaaS -- [Gitea](https://gitea.io), an open-source, self-hostable Git service supports NuGet as a [package registry](https://docs.gitea.io/en-us/packages/nuget/) +- [Gitea](https://gitea.io), an open-source, self-hostable Git service supports NuGet as a [package registry](https://docs.gitea.io/en-us/usage/packages/nuget/) - [GitHub package registry](https://help.github.com/articles/configuring-nuget-for-use-with-github-package-registry) - [GitLab Package Registry](https://docs.gitlab.com/ee/user/packages/nuget_repository/) - [JetBrains Space](https://www.jetbrains.com/help/space/nuget-feed.html) From 79a4ef48398ceecf3a5905cd99cce29dd9f8bd49 Mon Sep 17 00:00:00 2001 From: Donnie Goodson <49205731+donnie-msft@users.noreply.github.com> Date: Mon, 15 May 2023 11:02:00 -0700 Subject: [PATCH 737/988] Create NuGet 6.6 Release Notes (#3058) --- docs/TOC.md | 1 + docs/release-notes/Index.md | 2 + docs/release-notes/NuGet-6.6.md | 74 +++++++++++++++++++++++++++++++++ 3 files changed, 77 insertions(+) create mode 100644 docs/release-notes/NuGet-6.6.md diff --git a/docs/TOC.md b/docs/TOC.md index 27dcbf2d6..81d299f07 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -326,6 +326,7 @@ ### [Known Issues](release-notes/known-issues.md) ### NuGet 6.x +#### [NuGet 6.6](release-notes/NuGet-6.6.md) #### [NuGet 6.5](release-notes/NuGet-6.5.md) #### [NuGet 6.4](release-notes/NuGet-6.4.md) #### [NuGet 6.3](release-notes/NuGet-6.3.md) diff --git a/docs/release-notes/Index.md b/docs/release-notes/Index.md index c0e6baecd..f1792a4cd 100644 --- a/docs/release-notes/Index.md +++ b/docs/release-notes/Index.md @@ -11,6 +11,8 @@ ms.topic: conceptual [Known Issues](../release-notes/known-issues.md) +[NuGet 6.6](../release-notes/NuGet-6.6.md) + [NuGet 6.5](../release-notes/NuGet-6.5.md) [NuGet 6.4](../release-notes/NuGet-6.4.md) diff --git a/docs/release-notes/NuGet-6.6.md b/docs/release-notes/NuGet-6.6.md new file mode 100644 index 000000000..f2d3b38a8 --- /dev/null +++ b/docs/release-notes/NuGet-6.6.md @@ -0,0 +1,74 @@ +--- +title: NuGet 6.6 Release Notes +description: Release notes for NuGet 6.6 including new features, bug fixes, and DCRs. +author: donnie-msft +ms.author: eagoodso +ms.date: 5/1/2023 +ms.topic: conceptual +--- + +# NuGet 6.6 Release Notes + +NuGet distribution vehicles: + +| NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | +|:---|:---|:---| +| [**6.6**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.6](https://visualstudio.microsoft.com/downloads/) | [7.0.300](https://dotnet.microsoft.com/download/dotnet-core/7.0)1 | + +1 Installed with Visual Studio 2022 with .NET Core workload + +## Summary: What's New in 6.6 + +* [Epic]: Central Package Management improvements for 17.6 - [#12413](https://github.com/NuGet/Home/issues/12413) + +### Issues fixed in this release + +**DCRs:** + +* Static graph-based restore should always log an error on failure - [#12372](https://github.com/NuGet/Home/issues/12372) + +**Bugs:** + +* Set CentralPackageVersionOverrideEnabled=false in project with CPM broke project restore - [#12500](https://github.com/NuGet/Home/issues/12500) + +* Static graph-based restore crashes on systems with alternate console encodings - [#12373](https://github.com/NuGet/Home/issues/12373) + +* GlobalPackageReference is not working for legacy-style csproj projects - [#12368](https://github.com/NuGet/Home/issues/12368) + +* WebSite projects opened from IIS fail to install packages - [#12337](https://github.com/NuGet/Home/issues/12337) + +* StackOverflow in SemanticVersion.ToString - [#12330](https://github.com/NuGet/Home/issues/12330) + +* Static graph restore failure when referencing unrestorable project - [#12322](https://github.com/NuGet/Home/issues/12322) + +* CPM opt in detection in VS and commandline is different - [#12285](https://github.com/NuGet/Home/issues/12285) + +* PrivateAssets flow incorrectly to transitively pinned centrally managed dependencies - [#12270](https://github.com/NuGet/Home/issues/12270) + +* Performance regression of NuGet restores in the sdk v7.0.100 due to calculation of "CentralTransitiveDependencyGroups" - [#12269](https://github.com/NuGet/Home/issues/12269) + +* [Bug]: `NuGet.VisualStudio` depends on package not existing on NuGet.org - [#12164](https://github.com/NuGet/Home/issues/12164) + +* [Bug]: Custom kernel breaks nuget - [#11995](https://github.com/NuGet/Home/issues/11995) + +* PackageSource: returns possibly incorrect hash code - [#10276](https://github.com/NuGet/Home/issues/10276) + +[List of commits in this release](https://github.com/NuGet/NuGet.Client/compare/6.6.0.61...6.5.0.160) + +### Community contributions + +Thank you to all the contributors who helped make this NuGet release awesome! + +* [kant2002](https://github.com/kant2002) + * [5103](https://github.com/NuGet/NuGet.Client/pull/5103) Fix project restore when CentralPackageVersionOverrideEnabled=false +* [atamagaii](https://github.com/atamagaii) + * [5078](https://github.com/NuGet/NuGet.Client/pull/5078) Changed english resource MsbuildPathNotExist to correctly describe th… +* [pombredanne](https://github.com/pombredanne) + * [5083](https://github.com/NuGet/NuGet.Client/pull/5083) Fix minor typo +* [NikolaMilosavljevic](https://github.com/NikolaMilosavljevic) + * [5091](https://github.com/NuGet/NuGet.Client/pull/5091) Trim away netframework targets in source-build +* [uweigand](https://github.com/uweigand) + * [5046](https://github.com/NuGet/NuGet.Client/pull/5046) Limit concurrent connections via NUGET_CONCURRENCY_LIMIT +* [marcin-krystianc](https://github.com/marcin-krystianc) + * [4954](https://github.com/NuGet/NuGet.Client/pull/4954) Improved performance of calculation of PrivateAssets for transitively pinned centrally managed dependencies + * [4953](https://github.com/NuGet/NuGet.Client/pull/4953) Effective PrivateAssets of centrally managed transitive dependencies should be an intersection of parent dependencies \ No newline at end of file From a4b347a4b5204c669bedb2225a3c9d3f9ddbe32b Mon Sep 17 00:00:00 2001 From: Rishi Joshi <110519406+tangorishi@users.noreply.github.com> Date: Tue, 6 Jun 2023 05:19:30 +0530 Subject: [PATCH 738/988] Updated Finding-and-Choosing-Packages.md (#3042) --- docs/consume-packages/Finding-and-Choosing-Packages.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/consume-packages/Finding-and-Choosing-Packages.md b/docs/consume-packages/Finding-and-Choosing-Packages.md index 14c137002..a34bd279e 100644 --- a/docs/consume-packages/Finding-and-Choosing-Packages.md +++ b/docs/consume-packages/Finding-and-Choosing-Packages.md @@ -70,7 +70,7 @@ Package search queries at nuget.org, from the NuGet CLI, and from within Visual - You can search for multiple values or properties at the same time. For example: - `id:jquery id:ui` searches for multiple terms in the `id` property.
`id:jquery tags:validation` searches multiple properties. + `id:jquery id:ui` searches for multiple terms in the `id` property.
`id:jquery tags:validation` searches for multiple properties. - Search ignores unsupported properties, so `invalid:jquery ui` is the same as searching for `ui`, and `invalid:jquery` returns all packages. @@ -108,7 +108,7 @@ The Visual Studio Package Manager Console, NuGet CLI, and dotnet CLI tools don't
### Native C++ packages -Visual Studio C++ projects can use native C++ NuGet packages. Installing these packages enables the **Manage NuGet Packages** context-menu command, exposes a `native` target framework, and provides MSBuild integration. +Visual Studio C++ projects can use native C++ NuGet packages. Installing these packages enable the **Manage NuGet Packages** context-menu command, exposes a `native` target framework, and provides MSBuild integration. To find native packages on nuget.org/packages, search by using `tag:native`. Such packages typically provide *.targets* and *.props* files, which NuGet imports automatically when adding the packages. From f9f9e0932655373da325b177784f5af60559db28 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Tue, 6 Jun 2023 10:03:31 -0500 Subject: [PATCH 739/988] Add security audit concept doc (#3060) * Add security audit concept doc * Update docs/concepts/Auditing-Packages.md Co-authored-by: Andy Zivkovic * Fix editing section * Update Auditing-Packages.md * Add h1 * Update Auditing-Packages.md * Update docs/concepts/Auditing-Packages.md Co-authored-by: Andy Zivkovic * Update Auditing-Packages.md --------- Co-authored-by: Andy Zivkovic --- docs/concepts/Auditing-Packages.md | 108 +++++++++++++++++++++++++++++ 1 file changed, 108 insertions(+) create mode 100644 docs/concepts/Auditing-Packages.md diff --git a/docs/concepts/Auditing-Packages.md b/docs/concepts/Auditing-Packages.md new file mode 100644 index 000000000..cff297845 --- /dev/null +++ b/docs/concepts/Auditing-Packages.md @@ -0,0 +1,108 @@ +--- +title: Auditing package dependencies for security vulnerabilities +description: How to audit package dependencies for security vulnerabilities and acting on security audit reports. +author: JonDouglas +ms.author: jodou +ms.date: 05/04/2023 +ms.topic: conceptual +--- + +# Auditing package dependencies for security vulnerabilities + +## About security audits + +A security audit for package managers like NuGet is a process that involves analyzing the security of the packages that are included in a software project. This involves identifying vulnerabilities, evaluating risks, and making recommendations for improving security. The audit can include a review of the packages themselves, as well as any dependencies and their associated risks. The goal of the audit is to identify and mitigate any security vulnerabilities that could be exploited by attackers, such as code injection or cross-site scripting attacks. + +> [!IMPORTANT] +> Security auditing at restore time is available in .NET 8 Preview 4+ and Visual Studio 17.7 Preview 2+. + +## Running a security audit with `restore` + +The `restore` command automatically runs when you do a common package operation such as loading a project for the first time, adding a new package, updating a package version, or removing a package from your project in your favorite IDE. A description of your dependencies is checked against a report of known vulnerabilities on the [GitHub Advisory Database](https://github.com/advisories?query=type%3Areviewed+ecosystem%3Anuget). + +> [!IMPORTANT] +> For Audit to check packages, a package source that provides a vulnerability database must be used. +> NuGet.org's V3 URL is one such example (https://api.nuget.org/v3/index.json), but note that NuGet.org's V2 endpoint does not. + +> [!NOTE] +> .NET 8 preview 5+ enables Audit by default, but Visual Studio 17.7 does not ship .NET 8. +> To opt-in to Audit explicitly, set `true` in your project file, or a *Directory.Build.props* file. + +1. On the command line, navigate to your project or solution directory. +2. Ensure your project or solution contains a `.csproj` file. +3. Type `dotnet restore` or `restore` using your preferred tooling (i.e. MSBuild, NuGet.exe, etc). +4. Review the audit report and address the known security vulnerabilities. + +## Reviewing and acting on the security audit report + +Running `dotnet restore` will produce a report of security vulnerabilities with the affected package name, the severity of the vulnerability, and a link to the advisory for more details. + +### Security vulnerabilities found with updates + +If security vulnerabilities are found and updates are available for the package, you can either: + +- Edit the `.csproj` or other package version location (`Directory.Packages.props`) with a newer version containing a security fix. +- Use the NuGet package manager user interface in Visual Studio to update the individual package. +- Run the `dotnet add package` command with the respective package ID to update to the latest version. + +### Security vulnerabilities found with no updates + +In the case that a known vulnerability exists in a package without a security fix, you can do the following. + +- Check for any mitigating factors outlined in the advisory report. +- Use a suggested package if the package is marked deprecated or is abandoned. +- If the package is open source, consider contributing a fix. +- Open an issue in the package's issue tracker. + +#### Check for mitigating factors + +Review the security advisor for any mitigating factors that may allow you to continue using the package with the vulnerability. The vulnerability may only exist when the code is used on a specific framework, operating system, or a special function is called. + +#### Use a suggested package + +In the case that a security advisory is reported for the package you're using and the package is marked deprecated or seems abandoned, consider using any suggested alternate package the package author has declared or a package comprising of similar functionality that is maintained. + +#### Contribute a fix + +If a fix does not exist for the security advisory, you may want to suggest changes that addresses the vulnerability in a pull request on package's open source repository or contact the author through the `Contact owners` section on the NuGet.org package detail page. + +#### Open an issue + +If you do not want to fix the vulnerability or are unable to update or replace the package, open an issue in the package's issue tracker or preferred contact method. On NuGet.org, you can navigate to the package details page and click `Report package` which will guide you to get in contact with the author. + +### No security vulnerabilities found + +If no security vulnerabilities are found, this means that packages with known vulnerabilities were not found in your package graph at the present moment of time you checked. Since the advisory database can be updated at any time, we recommend regularly checking your `dotnet restore` output and ensuring the same in your continuous integration process. + +### Setting a security audit level + +In cases where you only care about a certain threshold of a security advisory severity, you can set the `` MSBuild property to the desired level in which auditing will fail. Possible values are `low`, `moderate`, `high`, and `critical`. For example if you only want to see `moderate`, `high`, and `critical` advisories, you can set the following: + +```xml +moderate +``` + +### Excluding advisories + +There is no support for excluding individual advisories at this time. You can use `` to suppress `NU1901`-`NU1904` warnings or use the `` functionality to ensure your audit reports are useful to your workflow. + +### Warning codes + +| Warning Code | Severity | +|--------------|----------| +| NU1901 | low | +| NU1902 | moderate | +| NU1903 | high | +| NU1904 | critical | + +### Disabling security auditing + +At any time you wish to not receive security audit reports, you can opt-out of the experience entirely by setting the following MSBuild property in a `.csproj` or MSBuild file being evaluated as part of your project: + +```xml +false +``` + +## Summary + +Security auditing features are crucial for maintaining the security and integrity of software projects. These features provide you with an additional layer of protection against security vulnerabilities and ensures that you can use open source packages with confidence. From 03296904cb89dc73340cd7304e4fee3270adb7cf Mon Sep 17 00:00:00 2001 From: Bradben Date: Tue, 6 Jun 2023 08:05:46 -0700 Subject: [PATCH 740/988] Update NuGet-FAQ.yml (#3066) Add Q# as supported language --- docs/resources/NuGet-FAQ.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/resources/NuGet-FAQ.yml b/docs/resources/NuGet-FAQ.yml index 7c4bee0ba..ba838716b 100644 --- a/docs/resources/NuGet-FAQ.yml +++ b/docs/resources/NuGet-FAQ.yml @@ -58,7 +58,7 @@ sections: answer: | NuGet generally works for .NET languages and is designed to bring .NET libraries into a project. Because it also supports MSBuild and Visual Studio automation in some project types, it also supports other projects and languages to various degrees. - The most recent version of NuGet supports C#, Visual Basic, F#, WiX, and C++. + The most recent version of NuGet supports C#, Visual Basic, F#, WiX, C++, and Q#. - question: | What project templates are supported by NuGet? From ef6b27eb0500720926e7894c13e26e2da73314f2 Mon Sep 17 00:00:00 2001 From: bub1ick <51718131+bub1ick@users.noreply.github.com> Date: Tue, 6 Jun 2023 18:07:01 +0300 Subject: [PATCH 741/988] Add the Native Target Framework (#3067) In the Blog Post (https://devblogs.microsoft.com/nuget/native-support/#native-target-framework) it is precisely stated that you should specify the "native" target framework, when developing win32 applications --- docs/reference/target-frameworks.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/reference/target-frameworks.md b/docs/reference/target-frameworks.md index 39129572a..95c980682 100644 --- a/docs/reference/target-frameworks.md +++ b/docs/reference/target-frameworks.md @@ -89,6 +89,7 @@ Universal Windows Platform | uap | uap [uap10.0] | | | | net6.0 | Tizen | tizen | tizen3 | | | | tizen4 | +| Native | native | native | ## Deprecated frameworks From 98068a740e9ca26683d18ca57b5a3379f735de3d Mon Sep 17 00:00:00 2001 From: Rob Mensching Date: Tue, 6 Jun 2023 08:11:36 -0700 Subject: [PATCH 742/988] Document MSBuildSdk package type (#3036) --- docs/create-packages/set-package-type.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/create-packages/set-package-type.md b/docs/create-packages/set-package-type.md index b16004f8c..2fc834ac8 100644 --- a/docs/create-packages/set-package-type.md +++ b/docs/create-packages/set-package-type.md @@ -17,6 +17,8 @@ Packages can be marked with one more more *package types* to indicate its intend - `DotnetTool` type packages are .NET tools that can be installed by the [dotnet CLI](/dotnet/articles/core/tools/index). +- `MSBuildSdk` type packages are [MSBuild project SDKs](/visualstudio/msbuild/how-to-use-project-sdk) that simplifies using software development kits. + - `Template` type packages provide [custom templates](/dotnet/core/tools/custom-templates) that can be used to create files or projects like an app, service, tool, or class library. Packages not marked with a type, including all packages created with earlier versions of NuGet, default to the `Dependency` type. From f49329fb5fc31656a199dcee4c8fcb71598d07e9 Mon Sep 17 00:00:00 2001 From: lyndaidaii <64443925+lyndaidaii@users.noreply.github.com> Date: Tue, 6 Jun 2023 08:13:15 -0700 Subject: [PATCH 743/988] Update readme page doc (#3025) * update allowlist + additional markdown feature support * reword --------- Co-authored-by: Lynn Dai --- docs/nuget-org/package-readme-on-nuget-org.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/nuget-org/package-readme-on-nuget-org.md b/docs/nuget-org/package-readme-on-nuget-org.md index 7867061d2..1e82a77a0 100644 --- a/docs/nuget-org/package-readme-on-nuget-org.md +++ b/docs/nuget-org/package-readme-on-nuget-org.md @@ -51,6 +51,7 @@ NuGet.org allows all images, including badges, from the following trusted domain * api.reuse.software * app.fossa.com * app.fossa.io +* avatars.githubusercontent.com * badge.fury.io * badgen.net * badges.gitter.im @@ -100,3 +101,4 @@ NuGet.org currently supports the following Markdown features: * [Emojis](https://github.com/xoofx/markdig/blob/master/src/Markdig.Tests/Specs/EmojiSpecs.md) * [Auto-links](https://github.com/xoofx/markdig/blob/master/src/Markdig.Tests/Specs/AutoLinks.md) +We also support syntax highlighting, You can add an language identifier to enable syntax highlighting in your code spans. From a61f4598d0202bf95c4f869da16bad9447e07071 Mon Sep 17 00:00:00 2001 From: Heng Liu <45407901+heng-liu@users.noreply.github.com> Date: Tue, 13 Jun 2023 17:09:18 -0700 Subject: [PATCH 744/988] NuGet June 2023 servicing release udpates (#3072) --- docs/release-notes/NuGet-6.0.md | 5 +++++ docs/release-notes/NuGet-6.2.md | 5 +++++ docs/release-notes/NuGet-6.3.md | 9 +++++++-- docs/release-notes/NuGet-6.4.md | 5 +++++ docs/release-notes/NuGet-6.5.md | 5 +++++ docs/release-notes/NuGet-6.6.md | 5 +++++ 6 files changed, 32 insertions(+), 2 deletions(-) diff --git a/docs/release-notes/NuGet-6.0.md b/docs/release-notes/NuGet-6.0.md index 14a9306fe..0e5ece5b0 100644 --- a/docs/release-notes/NuGet-6.0.md +++ b/docs/release-notes/NuGet-6.0.md @@ -17,9 +17,14 @@ NuGet distribution vehicles: | **6.0.1** | [Visual Studio 2022 version 17.0.2](https://visualstudio.microsoft.com/downloads/) | N/A | | [**6.0.2**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.0.11](https://visualstudio.microsoft.com/downloads/) | [6.0.301](https://dotnet.microsoft.com/download/dotnet-core/6.0)1 | | [**6.0.3**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.0](https://visualstudio.microsoft.com/downloads/) | [6.0.110](https://dotnet.microsoft.com/download/dotnet-core/6.0)1 | +| [**6.0.5**](https://nuget.org/downloads) | N/A | [6.0.118](https://dotnet.microsoft.com/download/dotnet-core/6.0)1 | 1 Installed with Visual Studio 2022 with.NET Core workload +## Summary: What's New in 6.0.5 + +* [Security]: Microsoft Security Advisory CVE-2023-29337 | NuGet Client Remote Code Execution Vulnerability - [#12653](https://github.com/NuGet/Home/issues/12653) + ## Summary: What's New in 6.0.3 * [Security]: Microsoft Security Advisory CVE-2022-41032 | .NET Elevation of Privilege Vulnerability - [#12149](https://github.com/NuGet/Home/issues/12149) diff --git a/docs/release-notes/NuGet-6.2.md b/docs/release-notes/NuGet-6.2.md index 68b06b1ab..3cf409cfb 100644 --- a/docs/release-notes/NuGet-6.2.md +++ b/docs/release-notes/NuGet-6.2.md @@ -16,9 +16,14 @@ NuGet distribution vehicles: | [**6.2.0**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.2](https://visualstudio.microsoft.com/downloads/) | [6.0.300](https://dotnet.microsoft.com/download/dotnet-core/6.0)1 | | [**6.2.1**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.2.4](https://visualstudio.microsoft.com/downloads/) | [6.0.301](https://dotnet.microsoft.com/download/dotnet-core/6.0)1 | | [**6.2.2**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.2](https://visualstudio.microsoft.com/downloads/) | [6.0.305](https://dotnet.microsoft.com/download/dotnet-core/6.0)1 | +| [**6.2.4**](https://nuget.org/downloads) | N/A | [6.0.313](https://dotnet.microsoft.com/download/dotnet-core/6.0)1 | 1 Installed with Visual Studio 2022 with .NET Core workload +## Summary: What's New in 6.2.4 + +* [Security]: Microsoft Security Advisory CVE-2023-29337 | NuGet Client Remote Code Execution Vulnerability - [#12653](https://github.com/NuGet/Home/issues/12653) + ## Summary: What's New in 6.2.2 * [Security]: Microsoft Security Advisory CVE 2022-41032 | .NET Elevation of Privilege Vulnerability - [#12149](https://github.com/NuGet/Home/issues/12149) diff --git a/docs/release-notes/NuGet-6.3.md b/docs/release-notes/NuGet-6.3.md index 0f0f80c95..abdf4d073 100644 --- a/docs/release-notes/NuGet-6.3.md +++ b/docs/release-notes/NuGet-6.3.md @@ -13,11 +13,16 @@ NuGet distribution vehicles: | NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | |:---|:---|:---| -| [**6.3**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.3](https://visualstudio.microsoft.com/downloads/) | [6.0.400](https://dotnet.microsoft.com/download/dotnet-core/)1 | -| [**6.3.1**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.3](https://visualstudio.microsoft.com/downloads/) | [6.0.402](https://dotnet.microsoft.com/download/dotnet-core/)1 | +| [**6.3**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.3](https://visualstudio.microsoft.com/downloads/) | [6.0.400](https://dotnet.microsoft.com/download/dotnet-core/6.0)1 | +| [**6.3.1**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.3](https://visualstudio.microsoft.com/downloads/) | [6.0.402](https://dotnet.microsoft.com/download/dotnet-core/6.0)1 | +| [**6.3.3**](https://nuget.org/downloads) | N/A | [6.0.410](https://dotnet.microsoft.com/download/dotnet-core/6.0)1 | 1 Installed with Visual Studio 17.3 with.NET Core workload +## Summary: What's New in 6.3.3 + +* [Security]: Microsoft Security Advisory CVE-2023-29337 | NuGet Client Remote Code Execution Vulnerability - [#12653](https://github.com/NuGet/Home/issues/12653) + ## Summary: What's New in 6.3.1 * [Security]: Microsoft Security Advisory CVE-2022-41032 | .NET Elevation of Privilege Vulnerability - [#12149](https://github.com/NuGet/Home/issues/12149) diff --git a/docs/release-notes/NuGet-6.4.md b/docs/release-notes/NuGet-6.4.md index 509f0b954..40fa765c0 100644 --- a/docs/release-notes/NuGet-6.4.md +++ b/docs/release-notes/NuGet-6.4.md @@ -14,9 +14,14 @@ NuGet distribution vehicles: | NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | |:---|:---|:---| | [**6.4**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.4](https://visualstudio.microsoft.com/downloads/) | [7.0.100](https://dotnet.microsoft.com/download/dotnet-core/7.0)1 | +| [**6.4.2**](https://nuget.org/downloads) | N/A | [7.0.107](https://dotnet.microsoft.com/download/dotnet-core/7.0)1 | 1 Installed with Visual Studio 17.4 with .NET Core workload +## Summary: What's New in 6.4.2 + +* [Security]: Microsoft Security Advisory CVE-2023-29337 | NuGet Client Remote Code Execution Vulnerability - [#12653](https://github.com/NuGet/Home/issues/12653) + ## Summary: What's New in 6.4 * Central package management is considered production ready and the preview message has been removed - [#11950](https://github.com/NuGet/Home/issues/11950) diff --git a/docs/release-notes/NuGet-6.5.md b/docs/release-notes/NuGet-6.5.md index 28681ad21..9313eae8f 100644 --- a/docs/release-notes/NuGet-6.5.md +++ b/docs/release-notes/NuGet-6.5.md @@ -14,9 +14,14 @@ NuGet distribution vehicles: | NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | |:---|:---|:---| | [**6.5**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.5](https://visualstudio.microsoft.com/downloads/) | [7.0.200](https://dotnet.microsoft.com/download/dotnet-core/7.0)1 | +| [**6.5.1**](https://nuget.org/downloads) | N/A | N/A 1 | 1 Installed with Visual Studio 2022 with.NET Core workload +## Summary: What's New in 6.5.1 + +* [Security]: Microsoft Security Advisory CVE-2023-29337 | NuGet Client Remote Code Execution Vulnerability - [#12653](https://github.com/NuGet/Home/issues/12653) + ## Summary: What's New in 6.5 * Manage packages in the Directory.Packages.props file for CPM projects - [#11890](https://github.com/NuGet/Home/issues/11890) diff --git a/docs/release-notes/NuGet-6.6.md b/docs/release-notes/NuGet-6.6.md index f2d3b38a8..ecbb35a69 100644 --- a/docs/release-notes/NuGet-6.6.md +++ b/docs/release-notes/NuGet-6.6.md @@ -14,9 +14,14 @@ NuGet distribution vehicles: | NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | |:---|:---|:---| | [**6.6**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.6](https://visualstudio.microsoft.com/downloads/) | [7.0.300](https://dotnet.microsoft.com/download/dotnet-core/7.0)1 | +| [**6.6.1**](https://nuget.org/downloads) | N/A | [7.0.304](https://dotnet.microsoft.com/download/dotnet-core/7.0)1 | 1 Installed with Visual Studio 2022 with .NET Core workload +## Summary: What's New in 6.6.1 + +* [Security]: Microsoft Security Advisory CVE-2023-29337 | NuGet Client Remote Code Execution Vulnerability - [#12653](https://github.com/NuGet/Home/issues/12653) + ## Summary: What's New in 6.6 * [Epic]: Central Package Management improvements for 17.6 - [#12413](https://github.com/NuGet/Home/issues/12413) From 93383a51c7b0c27325991e5f9f18714af27e6b1e Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Tue, 13 Jun 2023 19:15:27 -0500 Subject: [PATCH 745/988] Update TOC.md (#3069) --- docs/TOC.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/TOC.md b/docs/TOC.md index 81d299f07..b251cf415 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -72,6 +72,7 @@ ## [Package installation process](concepts/package-installation-process.md) ## [Package versioning](concepts/package-versioning.md) ## [Dependency resolution](concepts/dependency-resolution.md) +## [Auditing package dependencies for security vulnerabilities](concepts/Auditing-Packages.md) ## [Best practices for a secure software supply chain](concepts/Security-Best-Practices.md) ## [MSBuild .props and .targets](concepts/MSBuild-props-and-targets.md) ## [Troubleshooting Installed Packages](concepts/troubleshooting-installed-packages.md) From 8e05739aa2174b107463be0999219aa764a6c059 Mon Sep 17 00:00:00 2001 From: Heng Liu <45407901+heng-liu@users.noreply.github.com> Date: Wed, 14 Jun 2023 18:50:18 -0700 Subject: [PATCH 746/988] update NuGetScratch related doc (#3073) --- ...managing-the-global-packages-and-cache-folders.md | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/docs/consume-packages/managing-the-global-packages-and-cache-folders.md b/docs/consume-packages/managing-the-global-packages-and-cache-folders.md index afa31e2a2..8a1d00060 100644 --- a/docs/consume-packages/managing-the-global-packages-and-cache-folders.md +++ b/docs/consume-packages/managing-the-global-packages-and-cache-folders.md @@ -15,7 +15,7 @@ Whenever you install, update, or restore a package, NuGet manages packages and p | --- | --- | | global-packages | The *global-packages* folder is where NuGet installs any downloaded package. Each package is fully expanded into a subfolder that matches the package identifier and version number. Projects using the [PackageReference](package-references-in-project-files.md) format always use packages directly from this folder. When using the [packages.config](../reference/packages-config.md), packages are installed to the *global-packages* folder, then copied into the project's `packages` folder.
  • Windows: `%userprofile%\.nuget\packages`
  • Mac/Linux: `~/.nuget/packages`
  • Override using the NUGET_PACKAGES environment variable, the `globalPackagesFolder` or `repositoryPath` [configuration settings](../reference/nuget-config-file.md#config-section) (when using PackageReference and `packages.config`, respectively), or the `RestorePackagesPath` MSBuild property (MSBuild only). The environment variable takes precedence over the configuration setting.
| | http-cache | The Visual Studio Package Manager (NuGet 3.x+) and the `dotnet` tool store copies of downloaded packages in this cache (saved as `.dat` files), organized into subfolders for each package source. Packages are not expanded, and the cache has an expiration time of 30 minutes.
  • Windows: `%localappdata%\NuGet\v3-cache`
  • Mac/Linux: `~/.local/share/NuGet/v3-cache`
  • Override using the NUGET_HTTP_CACHE_PATH environment variable.
| -| temp | A folder where NuGet stores temporary files during its various operations.
  • Windows: `%temp%\NuGetScratch`
  • Mac/Linux: `/tmp/NuGetScratch`
  • | +| temp | A folder where NuGet stores temporary files during its various operations.
  • Windows: `%temp%\NuGetScratch`
  • Mac: `/tmp/NuGetScratch`
  • Linux: `/tmp/NuGetScratch`
  • Override using the NUGET_SCRATCH environment variable.
  • | | plugins-cache **4.8+** | A folder where NuGet stores the results from the operation claims request.
    • Windows: `%localappdata%\NuGet\plugins-cache`
    • Mac/Linux: `~/.local/share/NuGet/plugins-cache`
    • Override using the NUGET_PLUGINS_CACHE_PATH environment variable.
    | > [!Note] @@ -53,7 +53,7 @@ You can also view folder locations using the [dotnet nuget locals command](/dotn dotnet nuget locals all --list ``` -Typical output (Mac/Linux; "user1" is the current username): +Typical output (Mac; "user1" is the current username): ```output info : http-cache: /home/user1/.local/share/NuGet/v3-cache @@ -62,6 +62,14 @@ info : temp: /tmp/NuGetScratch info : plugins-cache: /home/user1/.local/share/NuGet/plugins-cache ``` +Typical output (Linux; "user1" is the current username): + +```output +info : http-cache: /home/user1/.local/share/NuGet/v3-cache +info : global-packages: /home/user1/.nuget/packages/ +info : temp: /tmp/NuGetScratchuser1 +info : plugins-cache: /home/user1/.local/share/NuGet/plugins-cache +``` To display the location of a single folder, use `http-cache`, `global-packages`, `temp`, or `plugins-cache` instead of `all`. ## Clearing local folders From b2c50eeb86f6ddc9196c42f7dbbaec7cac8e0a3a Mon Sep 17 00:00:00 2001 From: Heng Liu <45407901+heng-liu@users.noreply.github.com> Date: Thu, 15 Jun 2023 08:47:20 -0700 Subject: [PATCH 747/988] update 5.11.5 (#3074) --- docs/release-notes/NuGet-5.11.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docs/release-notes/NuGet-5.11.md b/docs/release-notes/NuGet-5.11.md index 48c02be5c..516930917 100644 --- a/docs/release-notes/NuGet-5.11.md +++ b/docs/release-notes/NuGet-5.11.md @@ -16,12 +16,17 @@ NuGet distribution vehicles: | [**5.11.0**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.11](https://visualstudio.microsoft.com/downloads/) | [5.0.400](https://dotnet.microsoft.com/download/dotnet-core/5.0)1 | | [**5.11.2**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.11.16](https://visualstudio.microsoft.com/downloads/) | N/A | | [**5.11.3**](https://nuget.org/downloads) | N/A | N/A | +| [**5.11.5**](https://nuget.org/downloads) | N/A | N/A | 1 Installed with Visual Studio 2019 with .NET Core workload > [!NOTE] > Visual Studio 16.11, MSBuild 16.11, and .NET 5.0.400+ requires NuGet.exe 5.11 or later. +## Summary: What's New in 5.11.5 + +* [Security]: Microsoft Security Advisory CVE-2023-29337 | NuGet Client Remote Code Execution Vulnerability - [#12653](https://github.com/NuGet/Home/issues/12653) + ## Summary: What's New in 5.11.3 * [Security]: Microsoft Security Advisory CVE-2022-41032 | .NET Elevation of Privilege Vulnerability - [#12149](https://github.com/NuGet/Home/issues/12149) From 226d8c2f187cd1acb9f6e222437618e66d8ec4f8 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Mon, 19 Jun 2023 09:17:29 +0200 Subject: [PATCH 748/988] Update NuGetAudit opt-in instructions (#3071) --- docs/concepts/Auditing-Packages.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Auditing-Packages.md b/docs/concepts/Auditing-Packages.md index cff297845..26fdbeba3 100644 --- a/docs/concepts/Auditing-Packages.md +++ b/docs/concepts/Auditing-Packages.md @@ -25,7 +25,7 @@ The `restore` command automatically runs when you do a common package operation > NuGet.org's V3 URL is one such example (https://api.nuget.org/v3/index.json), but note that NuGet.org's V2 endpoint does not. > [!NOTE] -> .NET 8 preview 5+ enables Audit by default, but Visual Studio 17.7 does not ship .NET 8. +> .NET 8 preview 6+ enables Audit by default, but Visual Studio 17.7 does not ship .NET 8. > To opt-in to Audit explicitly, set `true` in your project file, or a *Directory.Build.props* file. 1. On the command line, navigate to your project or solution directory. From 580240e3610c0c06b6e08cb5e4aef514c440db8e Mon Sep 17 00:00:00 2001 From: Mike Jones Date: Mon, 19 Jun 2023 10:07:55 -0700 Subject: [PATCH 749/988] MsDate update for the hub page (#3065) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Change link for pre-release guidance * Update release notes images * End of May 2022 Live Update (#2763) * June 2022 docs merge (#2783) * Add 5.9 release notes (#2780) * Add 6.0.2 release notes (#2774) * Add 5.11 release notes (#2775) * Add 5.7 release notes (#2776) * Add 4.9 release notes (#2777) * Add 5.2 release notes (#2778) * Merge main to live (#2808) * document The parameter is incorrect behavior (#2800) * document The parameter is incorrect behavior * Add a note/tip instead of bold. Co-authored-by: Jon Douglas * Add a dedicated page for props and targets (#2807) Co-authored-by: Simon Cropp Co-authored-by: Jon Douglas * Updates to ms.date values based on file history * edit * fixed year * August Docs Live Merge (#2840) * document The parameter is incorrect behavior (#2800) * document The parameter is incorrect behavior * Add a note/tip instead of bold. Co-authored-by: Jon Douglas * Add a dedicated page for props and targets (#2807) * Document NU1802 and NU1803 (#2816) * Add list in Normalized version numbers (#2818) Fix #2817 * Clarify headline of section about projects without any package dependencies (#2812) * Add issue management bots (#2825) * Fix formatting typo in CPM (#2832) * Add Gitea to NuGet hosting solutions (#2828) * Add Gitea to NuGet hosting solutions * Use Gitea project URL * Update NU1100.md (#2829) NU1100 may also be caused by the lack of a NuGet configura * Updates to ms.date values based on file history (#2831) * Updates to ms.date values based on file history * edit * fixed year * Alphabetize nuget list (#2837) * Improve NU1100 (#2838) * Add CODEOWNERS to docs PRs (#2836) * Release notes for 6.3 (#2834) * release notes for 6.3 Co-authored-by: Simon Cropp Co-authored-by: Nikolche Kolev Co-authored-by: andrei Co-authored-by: riQQ Co-authored-by: Drew Noakes Co-authored-by: John Olheiser Co-authored-by: Nestor Waldyd Co-authored-by: Mike Jones Co-authored-by: John Olheiser Co-authored-by: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Co-authored-by: Martin Ruiz * November / NuGet 6.4 Merge (#2934) * In all content, remove (#2920) ms.prod = nuget Replace with ms.service = nuget Co-authored-by: Docs Allowlist Management * Update VS extensibility docs (#2929) * Document various log codes (#2933) Documenting: NU1008, NU1009, NU1010, NU1011, NU1109, NU1402, NU1403, NU5042, NU5049 * Release notes for 6.4 (#2926) * Suggest a more generally appropriate import tag (#2932) * Suggest a more generally appropriate import tag Co-authored-by: opbld17 Co-authored-by: Docs Allowlist Management Co-authored-by: Andy Zivkovic Co-authored-by: Nikolche Kolev Co-authored-by: Jean-Pierre Briedé Co-authored-by: Andrew Arnott * Ms.date update --------- Co-authored-by: Christopher R. Gill Co-authored-by: Jon Douglas Co-authored-by: Christopher R. Gill Co-authored-by: Joel Verhagen Co-authored-by: Nikolche Kolev Co-authored-by: Jon Douglas Co-authored-by: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Co-authored-by: Simon Cropp Co-authored-by: andrei Co-authored-by: riQQ Co-authored-by: Drew Noakes Co-authored-by: John Olheiser Co-authored-by: Nestor Waldyd Co-authored-by: John Olheiser Co-authored-by: Martin Ruiz Co-authored-by: opbld17 Co-authored-by: Docs Allowlist Management Co-authored-by: Andy Zivkovic Co-authored-by: Jean-Pierre Briedé Co-authored-by: Andrew Arnott Co-authored-by: Your Name --- docs/index.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/index.yml b/docs/index.yml index 792a6b3f7..0ca90f01a 100644 --- a/docs/index.yml +++ b/docs/index.yml @@ -9,7 +9,7 @@ metadata: ms.topic: hub-page author: JonDouglas ms.author: jodou - ms.date: 01/13/2020 + ms.date: 05/26/2023 highlightedContent: items: From 15603a1f1007ab30285ee9a16596f2865377f153 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Tue, 20 Jun 2023 10:30:04 -0700 Subject: [PATCH 750/988] Explicit NU1012 example (#3078) --- docs/reference/errors-and-warnings/NU1012.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docs/reference/errors-and-warnings/NU1012.md b/docs/reference/errors-and-warnings/NU1012.md index 7ea7bb9b8..be74dc1fd 100644 --- a/docs/reference/errors-and-warnings/NU1012.md +++ b/docs/reference/errors-and-warnings/NU1012.md @@ -35,6 +35,9 @@ When creating a package for a framework with a platform such as `android`, you n ### Solution Specify the platform version in your nuspec. + +Example: `` + If you are using the pack targets, the platform version will be automatically inferred. ## Scenario 3 @@ -48,3 +51,5 @@ Some of the files being packaged according to the NuGet packaging conventions ha ### Solution Specify the platform version in your nuspec or in the pack extensibility targets in your project file. + +Example: `lib/net6.0-android32.0/Foo.dll`, `build/net9.0-windows10.0.19041/Foo.props` From 3d297af348d4d7613815e91a41f96be6a0c3c10e Mon Sep 17 00:00:00 2001 From: lyndaidaii <64443925+lyndaidaii@users.noreply.github.com> Date: Tue, 20 Jun 2023 11:54:46 -0700 Subject: [PATCH 751/988] update image allowlist domain (#3080) Co-authored-by: Lynn Dai --- docs/nuget-org/package-readme-on-nuget-org.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/nuget-org/package-readme-on-nuget-org.md b/docs/nuget-org/package-readme-on-nuget-org.md index 1e82a77a0..d42465398 100644 --- a/docs/nuget-org/package-readme-on-nuget-org.md +++ b/docs/nuget-org/package-readme-on-nuget-org.md @@ -80,6 +80,7 @@ NuGet.org allows all images, including badges, from the following trusted domain * sonarcloud.io * travis-ci.com * travis-ci.org +* wakatime.com * user-images.githubusercontent.com If you feel that another domain should be added to the allow-list, please feel free to [file an issue](https://github.com/NuGet/NuGetGallery/issues) and it will be reviewed by our engineering team for privacy and security compliance. Images with relative local paths and images hosted from unsupported domains will not be rendered and will produce a warning on the readme file preview and package details page that is only visible to the package owners. From aa232657735115f3abc56fad02c510b6a4bbad44 Mon Sep 17 00:00:00 2001 From: Donnie Goodson <49205731+donnie-msft@users.noreply.github.com> Date: Tue, 20 Jun 2023 15:36:44 -0700 Subject: [PATCH 752/988] Document the Package Source Mappings workflow in VS Options & PM UI (#3079) --- .../Package-Source-Mapping.md | 44 ++++++++++++++++++ ...ackageSourceMapping_PMUI_Status_Mapped.png | Bin 0 -> 121875 bytes ...ourceMapping_PMUI_Status_Off_Annotated.png | Bin 0 -> 114933 bytes ...eMapping_VSOptions_AddMappingCompleted.png | Bin 0 -> 48524 bytes ...urceMapping_VSOptions_AddMappingFilled.png | Bin 0 -> 18744 bytes ...urceMapping_VSOptions_AddMappingOpened.png | Bin 0 -> 56709 bytes ...kageSourceMapping_VSOptions_NoMappings.png | Bin 0 -> 45233 bytes 7 files changed, 44 insertions(+) create mode 100644 docs/consume-packages/media/packageSourceMapping_PMUI_Status_Mapped.png create mode 100644 docs/consume-packages/media/packageSourceMapping_PMUI_Status_Off_Annotated.png create mode 100644 docs/consume-packages/media/packageSourceMapping_VSOptions_AddMappingCompleted.png create mode 100644 docs/consume-packages/media/packageSourceMapping_VSOptions_AddMappingFilled.png create mode 100644 docs/consume-packages/media/packageSourceMapping_VSOptions_AddMappingOpened.png create mode 100644 docs/consume-packages/media/packageSourceMapping_VSOptions_NoMappings.png diff --git a/docs/consume-packages/Package-Source-Mapping.md b/docs/consume-packages/Package-Source-Mapping.md index ec65391b8..544651d7c 100644 --- a/docs/consume-packages/Package-Source-Mapping.md +++ b/docs/consume-packages/Package-Source-Mapping.md @@ -14,6 +14,15 @@ Use Package Source Mapping along side other [best practices](..\concepts\Securit Starting with [NuGet 6.0](..\release-notes\NuGet-6.0.md), you can centrally declare which source each package in your solution should restore from in your nuget.config file. +Starting with Visual Studio 17.5, you can add and remove Package Source Mappings with the Visual Studio Options Dialog + +### Visual Studio support +| Visual Studio | Package Source Mapping | Support in Tools -> Options | Support in Package Manager UI | +|-----|---------------------|---------------------|---------------------| +| 17.0 - 17.4 | ✅ Available | ❌ Not available | ❌ Not available | +| 17.5 | ✅ Available | ✅ Available | ❌ Not available | +| 17.7 Preview 3| ✅ Available | ✅ Available | ✅ Status displayed | + The feature is available across all NuGet integrated tooling. * [Visual Studio 2022 and later](https://visualstudio.microsoft.com/downloads/) @@ -32,6 +41,41 @@ For a video-based overview of the Package Source Mapping feature, consider watch To opt into this feature, you must have a `nuget.config` file. Having a single `nuget.config` at the root of your repository is considered a best practice. See [nuget.config documentation](../reference/nuget-config-file.md) to learn more. +### Enable by using Visual Studio Options Dialog + +1. Open your solution in Visual Studio. +2. Navigate to the `Package Source Mappings` Options Dialog. + +_From the Package Manager UI_ + +- Select a package from the list to show it in the Details Pane. +- Press the `Configure` button to open the Package Source Mappings options page. + +![The NuGet Package Manager window in Visual Studio showing a selected package, and a highlight around the "Package source mapping is off" status with a `Configure` button.](media/packageSourceMapping_PMUI_Status_Off_Annotated.png) + +_From the Visual Studio Options Dialog_ + + - Go to the `Tools` menu in the main Visual Studio toolbar, and choose `NuGet Package Manager` -> `Package Manager Settings`. + - Navigate to the `Package Source Mappings` page. + +![The Visual Studio `Package Source Mappings` Options Dialog showing no package source mappings, with an `Add` button to create a new mapping.](media/packageSourceMapping_VSOptions_NoMappings.png) + +3. Press the `Add` button in the `Package Source Mappings` page to open the `Add Package Source Mappings` dialog. + +![The `Add Package Source Mappings` dialog](media/packageSourceMapping_VSOptions_AddMappingOpened.png) +4. Enter a Package ID or Package Pattern, and select one or more package source(s) by toggling the checkbox for your desired source(s). + +![The `Add Package Source Mappings` dialog with a filled package pattern and selected package source.](media/packageSourceMapping_VSOptions_AddMappingFilled.png) + +5. The `Package Source Mapping` options page will show the newly created source mapping. + +![The `Package Source Mapping` options page showing the newly created source mapping](media/packageSourceMapping_VSOptions_AddMappingCompleted.png) + +6. Press `OK` on the Options Dialog to save changes to the applicable `nuget.config`. +7. The NuGet Package Manager window will refresh and reflect the new status of the selected package's source mappings. +![The NuGet Package Manager window in Visual Studio showing a selected package with the "Package source mapping found" status with a `Configure` button.](media/packageSourceMapping_PMUI_Status_Mapped.png) + +### Enable by manually editing `nuget.config` * Declare your desired package sources in your `nuget.config` file. * Following your source declarations, add a `` element that specifies the desired mappings for each source. * Declare exactly one `packageSource` element for each source in use. diff --git a/docs/consume-packages/media/packageSourceMapping_PMUI_Status_Mapped.png b/docs/consume-packages/media/packageSourceMapping_PMUI_Status_Mapped.png new file mode 100644 index 0000000000000000000000000000000000000000..e27bf39206e23fce16ffc7a0e744b880938da7ca GIT binary patch literal 121875 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 Ii|G6OAA98_uK)l5 literal 0 HcmV?d00001 diff --git a/docs/consume-packages/media/packageSourceMapping_PMUI_Status_Off_Annotated.png b/docs/consume-packages/media/packageSourceMapping_PMUI_Status_Off_Annotated.png new file mode 100644 index 0000000000000000000000000000000000000000..c2d698f2074de8c1173290412341599fc90618ec GIT binary patch literal 114933 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 WU{pcPo$<4?@?1_uw&2;D5B~vX9b|t1 literal 0 HcmV?d00001 diff --git a/docs/consume-packages/media/packageSourceMapping_VSOptions_AddMappingFilled.png b/docs/consume-packages/media/packageSourceMapping_VSOptions_AddMappingFilled.png new file mode 100644 index 0000000000000000000000000000000000000000..6e0e9390f6c916c0444e8854ff79e9cd7f9cd22b GIT binary patch literal 18744 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

    +> NU1109: Detected package downgrade: B from 2.0.0 to centrally defined 1.0.0. Update the centrally managed package version to a higher version.
    +>   'Project' -> 'A' 1.0.0 -> 'B' (>= 2.0.0)
    +>   'Project' -> 'B' (>= 1.0.0) ### Issue diff --git a/docs/reference/errors-and-warnings/NU1110.md b/docs/reference/errors-and-warnings/NU1110.md index 2c6fe2488..1a7c6aa58 100644 --- a/docs/reference/errors-and-warnings/NU1110.md +++ b/docs/reference/errors-and-warnings/NU1110.md @@ -11,8 +11,7 @@ f1_keywords: # NuGet Error NU1110 -
    NU1110: The package `B` is available in the Global packages folder, but the source it came from `https://api.nuget.org/v3/index.json` is not one of the configured sources.
    -
    +> NU1110: The package `B` is available in the Global packages folder, but the source it came from `https://api.nuget.org/v3/index.json` is not one of the configured sources. ### Issue diff --git a/docs/reference/errors-and-warnings/NU1201.md b/docs/reference/errors-and-warnings/NU1201.md index 6fd890c0b..0a2ad3ddd 100644 --- a/docs/reference/errors-and-warnings/NU1201.md +++ b/docs/reference/errors-and-warnings/NU1201.md @@ -13,7 +13,7 @@ f1_keywords: # NuGet Error NU1201 ### Example 1 -
    Project 'ProjectA' is not compatible with 'TargetFramework'. Project 'ProjectA' supports:
    - 'TargetFrameworkA'
    - 'TargetFrameworkB'
    +> Project 'ProjectA' is not compatible with 'TargetFramework'. Project 'ProjectA' supports:
    - 'TargetFrameworkA'
    - 'TargetFrameworkB' ### Issue A dependency project doesn't contain a framework compatible with the current project. Typically, the project's target framework is a higher version than the consuming project. @@ -22,7 +22,7 @@ A dependency project doesn't contain a framework compatible with the current pro Change the project's target framework to an equal or lower version than the consuming project. ### Example 2 - NetStandard targetted projects cannot reference NetCoreApp targetted projects -
    Project 'ProjectB' is not compatible with netstandard2.0 (.NETStandard,Version=v2.0). Project 'ProjectB' supports: netcoreapp2.0 (.NETCoreApp,Version=v2.0)
    +> Project 'ProjectB' is not compatible with netstandard2.0 (.NETStandard,Version=v2.0). Project 'ProjectB' supports: netcoreapp2.0 (.NETCoreApp,Version=v2.0) ### Issue In this case: diff --git a/docs/reference/errors-and-warnings/NU1202.md b/docs/reference/errors-and-warnings/NU1202.md index 32c369fa7..86e50f8fb 100644 --- a/docs/reference/errors-and-warnings/NU1202.md +++ b/docs/reference/errors-and-warnings/NU1202.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Error NU1202 -
    Package 'PackageId' 4.0.11 is not compatible with 'TargetFramework'. Package 'PackageId' 4.0.11 supports:
    - 'TargetFrameworkA'
    - 'TargetFrameworkB'
    - 'TargetFrameworkC'
    +> Package 'PackageId' 4.0.11 is not compatible with 'TargetFramework'. Package 'PackageId' 4.0.11 supports:
    - 'TargetFrameworkA'
    - 'TargetFrameworkB'
    - 'TargetFrameworkC' ### Issue A dependency package doesn't contain any assets compatible with the project. diff --git a/docs/reference/errors-and-warnings/NU1203.md b/docs/reference/errors-and-warnings/NU1203.md index cf387a274..3d0e33e26 100644 --- a/docs/reference/errors-and-warnings/NU1203.md +++ b/docs/reference/errors-and-warnings/NU1203.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Error NU1203 -
    'PackageId' 1.0.0 provides a compile-time reference assembly for 'Foo.dll' on 'TargetFramework', but there is no compatible run-time assembly.
    +> 'PackageId' 1.0.0 provides a compile-time reference assembly for 'Foo.dll' on 'TargetFramework', but there is no compatible run-time assembly. ### Issue The package doesn't support the project's `RuntimeIdentifier`. diff --git a/docs/reference/errors-and-warnings/NU1204.md b/docs/reference/errors-and-warnings/NU1204.md index bcfc268dd..ef386ec01 100644 --- a/docs/reference/errors-and-warnings/NU1204.md +++ b/docs/reference/errors-and-warnings/NU1204.md @@ -10,7 +10,7 @@ f1_keywords: # NuGet Warning NU1204 -
    Invalid tools package Contoso.Tool 1.0.0. Tools packages cannot contain more than one PackageType.
    +> Invalid tools package Contoso.Tool 1.0.0. Tools packages cannot contain more than one PackageType. ### Issue diff --git a/docs/reference/errors-and-warnings/NU1211.md b/docs/reference/errors-and-warnings/NU1211.md index 186124a36..c0cf3e3ea 100644 --- a/docs/reference/errors-and-warnings/NU1211.md +++ b/docs/reference/errors-and-warnings/NU1211.md @@ -10,7 +10,7 @@ f1_keywords: # NuGet Warning NU1211 -
    Project `DotnelToolReferenceProject.csproj` must have a single package reference(s).
    +> Project `DotnelToolReferenceProject.csproj` must have a single package reference(s). ### Issue diff --git a/docs/reference/errors-and-warnings/NU1212.md b/docs/reference/errors-and-warnings/NU1212.md index d383effdf..5a2d7b395 100644 --- a/docs/reference/errors-and-warnings/NU1212.md +++ b/docs/reference/errors-and-warnings/NU1212.md @@ -12,7 +12,7 @@ f1_keywords: ## Scenario 1 -
    Invalid project-package combination for Contoso.Library 1.0.0. DotnetToolReference project style can only contain references of the DotnetTool type
    +> Invalid project-package combination for Contoso.Library 1.0.0. DotnetToolReference project style can only contain references of the DotnetTool type ### Issue @@ -26,7 +26,7 @@ Use a different package that's of the `DotnetTool` type. ## Scenario 2 -
    Invalid project-package combination for Contoso.Library 1.0.0. DotnetToolReference project style can only contain references of the DotnetTool type
    +> Invalid project-package combination for Contoso.Library 1.0.0. DotnetToolReference project style can only contain references of the DotnetTool type ### Issue diff --git a/docs/reference/errors-and-warnings/NU1213.md b/docs/reference/errors-and-warnings/NU1213.md index 51881485a..2b2eb288c 100644 --- a/docs/reference/errors-and-warnings/NU1213.md +++ b/docs/reference/errors-and-warnings/NU1213.md @@ -10,7 +10,7 @@ f1_keywords: # NuGet Warning NU1213 -
    The package Contoso.Platform 1.0.0 has a package type DotnetPlatform that is incompatible with this project.
    +> The package Contoso.Platform 1.0.0 has a package type DotnetPlatform that is incompatible with this project. ### Issue diff --git a/docs/reference/errors-and-warnings/NU1301.md b/docs/reference/errors-and-warnings/NU1301.md index 910c0c794..60aa3e8c5 100644 --- a/docs/reference/errors-and-warnings/NU1301.md +++ b/docs/reference/errors-and-warnings/NU1301.md @@ -10,7 +10,7 @@ f1_keywords: # NuGet Error NU1301 -
    The local source 'C:\Code\Contoso\contosoLocalSource' doesn't exist.
    +> The local source 'C:\Code\Contoso\contosoLocalSource' doesn't exist. ### Issue diff --git a/docs/reference/errors-and-warnings/NU1401.md b/docs/reference/errors-and-warnings/NU1401.md index f365872ae..a902b408a 100644 --- a/docs/reference/errors-and-warnings/NU1401.md +++ b/docs/reference/errors-and-warnings/NU1401.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Error NU1401 -
    The 'PackageId' package requires NuGet client version '5.0.0' or above, but the current NuGet version is '4.3.0'.
    +> The 'PackageId' package requires NuGet client version '5.0.0' or above, but the current NuGet version is '4.3.0'. ### Issue The package requires features or frameworks not currently supported by the installed version of NuGet. diff --git a/docs/reference/errors-and-warnings/NU1402.md b/docs/reference/errors-and-warnings/NU1402.md index de7afdcaf..b503b03b6 100644 --- a/docs/reference/errors-and-warnings/NU1402.md +++ b/docs/reference/errors-and-warnings/NU1402.md @@ -11,7 +11,7 @@ f1_keywords: # NuGet Error NU1402 -
    NU1402: The package 'PackageId.1.0.0' contains an entry '../../foo.dll' which is unsafe for extraction.
    +> NU1402: The package 'PackageId.1.0.0' contains an entry '../../foo.dll' which is unsafe for extraction. ### Issue diff --git a/docs/reference/errors-and-warnings/NU1403.md b/docs/reference/errors-and-warnings/NU1403.md index f15bc56c9..44c5e8e50 100644 --- a/docs/reference/errors-and-warnings/NU1403.md +++ b/docs/reference/errors-and-warnings/NU1403.md @@ -11,7 +11,7 @@ f1_keywords: # NuGet Error NU1403 -
     Package content hash validation failed for PackageId.13.0.1. The package is different than the last restore.
    +> Package content hash validation failed for PackageId.13.0.1. The package is different than the last restore. ### Issue The content of the package in the global packages folder is different from the value in the lock file. diff --git a/docs/reference/errors-and-warnings/NU1501.md b/docs/reference/errors-and-warnings/NU1501.md index e315acc9d..8c87d199e 100644 --- a/docs/reference/errors-and-warnings/NU1501.md +++ b/docs/reference/errors-and-warnings/NU1501.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Warning NU1501 -
    The folder 'FolderPath' does not contain a project to restore.
    +> The folder 'FolderPath' does not contain a project to restore. ### Issue diff --git a/docs/reference/errors-and-warnings/NU1502.md b/docs/reference/errors-and-warnings/NU1502.md index ef225d101..a03595763 100644 --- a/docs/reference/errors-and-warnings/NU1502.md +++ b/docs/reference/errors-and-warnings/NU1502.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Warning NU1502 -
    Unknown Compatibility Profile: 'aaa'
    +> Unknown Compatibility Profile: 'aaa' ### Issue `RuntimeSupports` contains an invalid profile. Typically, the supports profile was not found in a `runtime.json` file from the current dependency packages. diff --git a/docs/reference/errors-and-warnings/NU1503.md b/docs/reference/errors-and-warnings/NU1503.md index 3e472cd1e..55a969055 100644 --- a/docs/reference/errors-and-warnings/NU1503.md +++ b/docs/reference/errors-and-warnings/NU1503.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Warning NU1503 -
    Skipping restore for project 'c:\a.csproj'. The project file may be invalid or missing targets required for restore.
    +> Skipping restore for project 'c:\a.csproj'. The project file may be invalid or missing targets required for restore. ### Issue A dependency project doesn't import NuGet's restore targets. This is similar to NU1105 but here the project is skipped and ignored instead of causing all of restore to fail. In complex solutions there are often other types of projects that may not support restore. diff --git a/docs/reference/errors-and-warnings/NU1504.md b/docs/reference/errors-and-warnings/NU1504.md index 368a1e6f6..0b1cb88ae 100644 --- a/docs/reference/errors-and-warnings/NU1504.md +++ b/docs/reference/errors-and-warnings/NU1504.md @@ -13,7 +13,7 @@ f1_keywords: ## Scenario 1 -
    Duplicate 'PackageReference' items found. Remove the duplicate items or use the Update functionality to ensure a consistent restore behavior. The duplicate 'PackageReference' items are: X 1.0.0, X 2.0.0.
    +> Duplicate 'PackageReference' items found. Remove the duplicate items or use the Update functionality to ensure a consistent restore behavior. The duplicate 'PackageReference' items are: X 1.0.0, X 2.0.0. ### Issue diff --git a/docs/reference/errors-and-warnings/NU1505.md b/docs/reference/errors-and-warnings/NU1505.md index 3fe1efb99..d767e2de0 100644 --- a/docs/reference/errors-and-warnings/NU1505.md +++ b/docs/reference/errors-and-warnings/NU1505.md @@ -13,7 +13,7 @@ f1_keywords: ## Scenario 1 -
    Duplicate 'PackageDownload' items found. Remove the duplicate items or use the Update functionality to ensure a consistent restore behavior. The duplicate 'PackageDownload' items are: X [1.0.0], X [2.0.0].
    +> Duplicate 'PackageDownload' items found. Remove the duplicate items or use the Update functionality to ensure a consistent restore behavior. The duplicate 'PackageDownload' items are: X [1.0.0], X [2.0.0]. ### Issue diff --git a/docs/reference/errors-and-warnings/NU1506.md b/docs/reference/errors-and-warnings/NU1506.md index 25588baab..e6fdc0f46 100644 --- a/docs/reference/errors-and-warnings/NU1506.md +++ b/docs/reference/errors-and-warnings/NU1506.md @@ -13,7 +13,7 @@ f1_keywords: ## Scenario 1 -
    Duplicate 'PackageVersion' items found. Remove the duplicate items or use the Update functionality to ensure a consistent restore behavior. The duplicate 'PackageVersion' items are: X [1.0.0], X [2.0.0].
    +> Duplicate 'PackageVersion' items found. Remove the duplicate items or use the Update functionality to ensure a consistent restore behavior. The duplicate 'PackageVersion' items are: X [1.0.0], X [2.0.0]. ### Issue diff --git a/docs/reference/errors-and-warnings/NU1507.md b/docs/reference/errors-and-warnings/NU1507.md index ca093e17b..032ac4119 100644 --- a/docs/reference/errors-and-warnings/NU1507.md +++ b/docs/reference/errors-and-warnings/NU1507.md @@ -13,7 +13,7 @@ f1_keywords: ## Scenario 1 -
    There are 2 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. The following sources are defined: https://api.nuget.org/v3/index.json,  https://contoso.myget.org/F/development/.
    +> There are 2 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. The following sources are defined: https://api.nuget.org/v3/index.json, https://contoso.myget.org/F/development/. ### Issue diff --git a/docs/reference/errors-and-warnings/NU1601.md b/docs/reference/errors-and-warnings/NU1601.md index 174de7403..76d0d5704 100644 --- a/docs/reference/errors-and-warnings/NU1601.md +++ b/docs/reference/errors-and-warnings/NU1601.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Warning NU1601 -
    Dependency specified was 'PackageId' (>= 3.5.0) but ended up with 'PackageId' 4.0.0.
    +> Dependency specified was 'PackageId' (>= 3.5.0) but ended up with 'PackageId' 4.0.0. ### Issue A direct project dependency was bumped to a higher version than the project specified. diff --git a/docs/reference/errors-and-warnings/NU1602.md b/docs/reference/errors-and-warnings/NU1602.md index afcfaa095..e461722ef 100644 --- a/docs/reference/errors-and-warnings/NU1602.md +++ b/docs/reference/errors-and-warnings/NU1602.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Warning NU1602 -
    'PackageA' 4.0.0 does not provide an inclusive lower bound for dependency 'PackageB' (> 3.5.0). An approximate best match of 3.6.0 was resolved.
    +> 'PackageA' 4.0.0 does not provide an inclusive lower bound for dependency 'PackageB' (> 3.5.0). An approximate best match of 3.6.0 was resolved. ### Issue A package dependency is missing a lower bound. This doesn't allow restore to find the *best match*. Each restore will float downwards trying to find a lower version that can be used. This means that restore goes online to check all sources each time instead of using the packages that already exist in the user package folder. diff --git a/docs/reference/errors-and-warnings/NU1603.md b/docs/reference/errors-and-warnings/NU1603.md index 2b4e2ba4c..edb6d032f 100644 --- a/docs/reference/errors-and-warnings/NU1603.md +++ b/docs/reference/errors-and-warnings/NU1603.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Warning NU1603 -
    'PackageA' 4.0.0 depends on 'PackageB' (>= 4.0.0) but 4.0.0 was not found. An approximate best match of 5.0.0 was resolved.
    +> 'PackageA' 4.0.0 depends on 'PackageB' (>= 4.0.0) but 4.0.0 was not found. An approximate best match of 5.0.0 was resolved. ### Issue diff --git a/docs/reference/errors-and-warnings/NU1604.md b/docs/reference/errors-and-warnings/NU1604.md index 99eb4d2d1..5fef4363c 100644 --- a/docs/reference/errors-and-warnings/NU1604.md +++ b/docs/reference/errors-and-warnings/NU1604.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Warning NU1604 -
    Project dependency 'PackageA' (<= 9.0.0) does not contain an inclusive lower bound. Include a lower bound in the dependency version to ensure consistent restore results.
    +> Project dependency 'PackageA' (<= 9.0.0) does not contain an inclusive lower bound. Include a lower bound in the dependency version to ensure consistent restore results. ### Issue A project dependency doesn't define a lower bound.

    This means that restore did not find the *best match*. Each restore will float downwards trying to find a lower version that can be used. This means that restore goes online to check all sources each time instead of using the packages that already exist in the user package folder. diff --git a/docs/reference/errors-and-warnings/NU1605.md b/docs/reference/errors-and-warnings/NU1605.md index 60a45861b..d8197d284 100644 --- a/docs/reference/errors-and-warnings/NU1605.md +++ b/docs/reference/errors-and-warnings/NU1605.md @@ -14,9 +14,9 @@ f1_keywords: ## Example 1 -
    Detected package downgrade: 'PackageB' from 4.0.0 to 3.5.0. Reference the package directly from the project to select a different version.
    -'Project' -> 'PackageA' 4.0.0 -> 'PackageB' (>= 4.0.0)
    -'Project' -> 'PackageB' (>= 3.5.0)
    +> Detected package downgrade: 'PackageB' from 4.0.0 to 3.5.0. Reference the package directly from the project to select a different version.
    +>     'Project' -> 'PackageA' 4.0.0 -> 'PackageB' (>= 4.0.0)
    +>     'Project' -> 'PackageB' (>= 3.5.0) ### Issue @@ -28,16 +28,14 @@ To the project exhibiting the restore warning, add a package reference to the hi In the example above, you would change the package reference to `PackageB` 4.0.0: -
    -  'PackageA' 4.0.0 -> 'PackageB' 4.0.0
    - 'PackageB' 4.0.0 -
    +> 'PackageA' 4.0.0 -> 'PackageB' 4.0.0
    +> 'PackageB' 4.0.0 ## Example 2 -
    Detected package downgrade: 'PackageC' from 2.0.0 to 1.1.0. Reference the package directly from the project to select a different version.
    -'Project' -> 'PackageA' 1.0.0 -> 'PackageB' 2.0.0 ->'PackageC' (>= 2.0.0)
    -'Project' -> 'PackageA' 1.0.0 -> 'PackageC' (>= 1.1.0)
    +> Detected package downgrade: 'PackageC' from 2.0.0 to 1.1.0. Reference the package directly from the project to select a different version.
    +>     'Project' -> 'PackageA' 1.0.0 -> 'PackageB' 2.0.0 ->'PackageC' (>= 2.0.0)
    +>     'Project' -> 'PackageA' 1.0.0 -> 'PackageC' (>= 1.1.0) ### Issue @@ -50,18 +48,14 @@ To the project exhibiting the restore warning, add a package reference to the hi In the example above, you would change the package reference to `PackageC` 2.0.0: -
    -  'PackageA' 4.0.0 -> 'PackageB' 4.0.0
    - 'PackageB' 4.0.0 -
    +> 'PackageA' 4.0.0 -> 'PackageB' 4.0.0
    +> 'PackageB' 4.0.0 ## Example 3 -
    -Detected package downgrade: System.IO.FileSystem.Primitives from 4.3.0 to 4.0.1. Reference the package directly from the project to select a different version.
    - Project -> System.IO.FileSystem 4.0.1 -> runtime.win.System.IO.FileSystem 4.3.0 -> System.IO.FileSystem.Primitives (>= 4.3.0)
    - Project -> System.IO.FileSystem 4.0.1 -> System.IO.FileSystem.Primitives (>= 4.0.1)
    -
    +> Detected package downgrade: System.IO.FileSystem.Primitives from 4.3.0 to 4.0.1. Reference the package directly from the project to select a different version.
    +>     Project -> System.IO.FileSystem 4.0.1 -> runtime.win.System.IO.FileSystem 4.3.0 -> System.IO.FileSystem.Primitives (>= 4.3.0)
    +>     Project -> System.IO.FileSystem 4.0.1 -> System.IO.FileSystem.Primitives (>= 4.0.1)
    ### Issue @@ -79,10 +73,9 @@ You may choose to use the `version` matching the the major version of your SDK. ## Example 4 -
    Detected package downgrade: Microsoft.NETCore.App from 2.1.8 to 2.1.0. Reference the package directly from the project to select a different version.
    - test -> mvc -> Microsoft.NETCore.App (>= 2.1.8)
    - test -> Microsoft.NETCore.App (>= 2.1.0)
    -
    +> Detected package downgrade: Microsoft.NETCore.App from 2.1.8 to 2.1.0. Reference the package directly from the project to select a different version.
    +>     test -> mvc -> Microsoft.NETCore.App (>= 2.1.8)
    +>     test -> Microsoft.NETCore.App (>= 2.1.0) ### Issue diff --git a/docs/reference/errors-and-warnings/NU1608.md b/docs/reference/errors-and-warnings/NU1608.md index 888d06a00..4a5590843 100644 --- a/docs/reference/errors-and-warnings/NU1608.md +++ b/docs/reference/errors-and-warnings/NU1608.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Warning NU1608 -
    Detected package version outside of dependency constraint: 'PackageA' 1.0.0 requires 'PackageB' (= 1.0.0) but version 'PackageB' 2.0.0 was resolved.
    +> Detected package version outside of dependency constraint: 'PackageA' 1.0.0 requires 'PackageB' (= 1.0.0) but version 'PackageB' 2.0.0 was resolved. ### Issue A resolved package is higher than a dependency constraint allows. This means that a package referenced directly by a project overrides dependency constraints from other packages. diff --git a/docs/reference/errors-and-warnings/NU1701.md b/docs/reference/errors-and-warnings/NU1701.md index a96240d32..077330f44 100644 --- a/docs/reference/errors-and-warnings/NU1701.md +++ b/docs/reference/errors-and-warnings/NU1701.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Warning NU1701 -
    Package 'packageId' was restored using 'TargetFrameworkA' instead the project target framework 'TargetFrameworkB'. This package may not be fully compatible with your project.
    +> Package 'packageId' was restored using 'TargetFrameworkA' instead the project target framework 'TargetFrameworkB'. This package may not be fully compatible with your project. ### Issue `PackageTargetFallback` / `AssetTargetFallback` was used to select assets from a package. The warning let users know that the assets may not be 100% compatible. diff --git a/docs/reference/errors-and-warnings/NU1703.md b/docs/reference/errors-and-warnings/NU1703.md index 911170c4d..b1f40d7f0 100644 --- a/docs/reference/errors-and-warnings/NU1703.md +++ b/docs/reference/errors-and-warnings/NU1703.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Warning NU1703 -
    'packageId' was resolved as a dependency of 'project', but the dependency is using 'Xamarin.iOS' while 'project' is using 'net6.0-maccatalyst14.5' as its TargetFramework
    +> 'packageId' was resolved as a dependency of 'project', but the dependency is using 'Xamarin.iOS' while 'project' is using 'net6.0-maccatalyst14.5' as its TargetFramework ### Issue diff --git a/docs/reference/errors-and-warnings/NU1901-NU1904.md b/docs/reference/errors-and-warnings/NU1901-NU1904.md index df8207be0..e0c986676 100644 --- a/docs/reference/errors-and-warnings/NU1901-NU1904.md +++ b/docs/reference/errors-and-warnings/NU1901-NU1904.md @@ -14,9 +14,7 @@ f1_keywords: # NuGet Warnings NU1901, NU1902, NU1903, NU1904 -```text -warning NU1902: Package 'NuGet.Protocol' 5.11.2 has a known moderate severity vulnerability, https://github.com/advisories/GHSA-g3q9-xf95-8hp5 -``` +> warning NU1902: Package 'NuGet.Protocol' 5.11.2 has a known moderate severity vulnerability, https://github.com/advisories/GHSA-g3q9-xf95-8hp5 The warning code changes depending on the known vulnerability severity level: diff --git a/docs/reference/errors-and-warnings/NU3000.md b/docs/reference/errors-and-warnings/NU3000.md index d71cd9e7e..d4419ce9d 100644 --- a/docs/reference/errors-and-warnings/NU3000.md +++ b/docs/reference/errors-and-warnings/NU3000.md @@ -17,7 +17,7 @@ f1_keywords: ## Scenario 1 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature does not have a timestamp.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature does not have a timestamp. ### Issue @@ -32,7 +32,7 @@ To enable long-term signature validity after the signature certificate has expir ## Scenario 2 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': Multiple timestamps are not accepted.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': Multiple timestamps are not accepted. ### Issue @@ -47,7 +47,7 @@ Please ensure that each package signature contains no more than 1 timestamp. ## Scenario 3 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The repository countersignature does not have a timestamp.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The repository countersignature does not have a timestamp. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3001.md b/docs/reference/errors-and-warnings/NU3001.md index e90bf5b25..69f27b47c 100644 --- a/docs/reference/errors-and-warnings/NU3001.md +++ b/docs/reference/errors-and-warnings/NU3001.md @@ -14,37 +14,31 @@ f1_keywords: ## Scenario 1 -
    Invalid password was provided for the certificate file 'certificate.pfx'. Provide a valid password using the '-CertificatePassword' option.
    +> Invalid password was provided for the certificate file 'certificate.pfx'. Provide a valid password using the '-CertificatePassword' option. ### Issue A password protected certificate file was provided to the NuGet Sign operation. But an invalid or no password was provided. - ### Solution If you are using a password protected certificate file to sign a NuGet package, then please use the `-CertificatePassword` option to pass the correct password. - - ## Scenario 2 -
    Certificate file 'certificate.pfx' not found. For a list of accepted ways to provide a certificate, visit https://docs.nuget.org/docs/reference/command-line-reference.
    +> Certificate file 'certificate.pfx' not found. For a list of accepted ways to provide a certificate, visit https://docs.nuget.org/docs/reference/command-line-reference. ### Issue A certificate file was provided to the NuGet Sign operation. But the file does not exist on disk. - ### Solution Please ensure that any certificate file being used to sign a NuGet package exists on disk. - - ## Scenario 3 -
    Certificate file 'random_file.txt' is invalid. For a list of accepted ways to provide a certificate, visit https://docs.nuget.org/docs/reference/command-line-reference.
    +> Certificate file 'random_file.txt' is invalid. For a list of accepted ways to provide a certificate, visit https://docs.nuget.org/docs/reference/command-line-reference. ### Issue @@ -55,69 +49,56 @@ A certificate file was provided to the NuGet Sign operation, but the file is not Please ensure that any certificate file being used to sign a NuGet package is a valid certificate file. - - ## Scenario 4 -
    Multiple certificates were found that meet all the given criteria. Use the '-CertificateFingerprint' option with the hash of the desired certificate.
    +> Multiple certificates were found that meet all the given criteria. Use the '-CertificateFingerprint' option with the hash of the desired certificate. ### Issue A certificate was suggested to the NuGet Sign command using the `-CertificateSubjectName` option. But multiple certificates were found to match the certificate subject name in the Windows certificate store. - ### Solution Please pass the '-CertificateFingerprint' option with the hash of the desired certificate to the NuGet Sign command to uniquely identify a certificate. - - ## Scenario 5 -
    No certificates were found that meet all the given criteria. For a list of accepted ways to provide a certificate, visit https://docs.nuget.org/docs/reference/command-line-reference.
    +> No certificates were found that meet all the given criteria. For a list of accepted ways to provide a certificate, visit https://docs.nuget.org/docs/reference/command-line-reference. ### Issue A certificate was suggested to the NuGet Sign command using the `-CertificateSubjectName` option. But no certificate was found to match the certificate subject name in the Windows certificate store. - ### Solution Please ensure that you passing the right subject name filter, otherwise pass the '-CertificateFingerprint' option with the hash of the desired certificate to the NuGet Sign command to uniquely identify a certificate. - ## Scenario 6 -
    The following certificate cannot be used for package signing as the private key provider is unsupported:
    -  Subject Name: CN=Certificate Subject Name
    -  SHA1 hash: HASH
    -  SHA256 hash: HASH
    -  Issued by: Issuer Subject Name
    -  Valid from: 4/9/2016 5:00:00 PM to 4/14/2020 5:00:00 AM
    +> The following certificate cannot be used for package signing as the private key provider is unsupported: + Subject Name: CN=Certificate Subject Name
    + SHA1 hash: HASH
    + SHA256 hash: HASH
    + Issued by: Issuer Subject Name
    + Valid from: 4/9/2016 5:00:00 PM to 4/14/2020 5:00:00 AM ### Issue A certificate was passed to the NuGet Sign command which has an unsupported pribvate key provider. - ### Solution Currently, due to framework limitations, NuGet sign command does not support CNG key private key provider. Please use a certificate with a CAPI private key provider. - - ## Scenario 7 -
    The package already contains a signature. Remove the existing signature before adding a new signature.
    +> The package already contains a signature. Remove the existing signature before adding a new signature. ### Issue NuGet Sign command was used to sign a package which already has a package signature. - ### Solution Please ensure that you are signing an unsigned package. If the package is already signed, then please use `-Overwrite` option to overwrite an existing signature. - - diff --git a/docs/reference/errors-and-warnings/NU3002.md b/docs/reference/errors-and-warnings/NU3002.md index abd57086b..3b379ecd0 100644 --- a/docs/reference/errors-and-warnings/NU3002.md +++ b/docs/reference/errors-and-warnings/NU3002.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Warning NU3002 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The '-Timestamper' option was not provided. The signed package will not be timestamped. To learn more about this option, please visit https://docs.nuget.org/docs/reference/command-line-reference.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The '-Timestamper' option was not provided. The signed package will not be timestamped. To learn more about this option, please visit https://docs.nuget.org/docs/reference/command-line-reference. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3003.md b/docs/reference/errors-and-warnings/NU3003.md index 32d509f14..67505254f 100644 --- a/docs/reference/errors-and-warnings/NU3003.md +++ b/docs/reference/errors-and-warnings/NU3003.md @@ -14,7 +14,7 @@ f1_keywords: ## Scenario 1 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The package is not signed. Unable to verify signature from an unsigned package.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The package is not signed. Unable to verify signature from an unsigned package. ### Issue @@ -29,7 +29,7 @@ Please file an issue at [NuGet/Home](https://github.com/NuGet/Home/issues) along ## Scenario 2 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The package signature is invalid or cannot be verified on this platform.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The package signature is invalid or cannot be verified on this platform. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3004.md b/docs/reference/errors-and-warnings/NU3004.md index 1e016fcf0..fdf2f1d1a 100644 --- a/docs/reference/errors-and-warnings/NU3004.md +++ b/docs/reference/errors-and-warnings/NU3004.md @@ -14,8 +14,8 @@ f1_keywords: ## Scenario 1 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The package is not signed.
    -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': signatureValidationMode is set to require, so packages are allowed only if signed by trusted signers; however, this package is unsigned.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The package is not signed.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': signatureValidationMode is set to require, so packages are allowed only if signed by trusted signers; however, this package is unsigned. ### Issue @@ -33,7 +33,7 @@ Please ensure that any package intended to be installed or passed to `nuget veri ## Scenario 2 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': This repository indicated that all its packages are repository signed; however, this package is unsigned.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': This repository indicated that all its packages are repository signed; however, this package is unsigned. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3005.md b/docs/reference/errors-and-warnings/NU3005.md index 4fee4e186..a2c32aff2 100644 --- a/docs/reference/errors-and-warnings/NU3005.md +++ b/docs/reference/errors-and-warnings/NU3005.md @@ -14,7 +14,7 @@ f1_keywords: ## Scenario 1 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The package contains an invalid package signature file.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The package contains an invalid package signature file. ### Issue @@ -29,7 +29,7 @@ Please request the package author to re-sign the package using the `nuget sign` ## Scenario 2 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The package contains multiple package signature files.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The package contains multiple package signature files. ### Issue @@ -44,7 +44,7 @@ Please request the package author to re-sign the package using the `nuget sign` ## Scenario 3 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The package does not contain a valid package signature file.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The package does not contain a valid package signature file. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3006.md b/docs/reference/errors-and-warnings/NU3006.md index 08533cb4b..bb8000c35 100644 --- a/docs/reference/errors-and-warnings/NU3006.md +++ b/docs/reference/errors-and-warnings/NU3006.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Warning NU3006 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': Signed Zip64 packages are not supported.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': Signed Zip64 packages are not supported. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3007.md b/docs/reference/errors-and-warnings/NU3007.md index b6972611e..19077c226 100644 --- a/docs/reference/errors-and-warnings/NU3007.md +++ b/docs/reference/errors-and-warnings/NU3007.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Warning NU3007 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The package signature format version is not supported. Updating your client may solve this problem.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The package signature format version is not supported. Updating your client may solve this problem. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3008.md b/docs/reference/errors-and-warnings/NU3008.md index 2f723239b..9d825e4ca 100644 --- a/docs/reference/errors-and-warnings/NU3008.md +++ b/docs/reference/errors-and-warnings/NU3008.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Error NU3008 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The package integrity check failed. The package has changed since it was signed. Try clearing the local http-cache and run nuget operation again.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The package integrity check failed. The package has changed since it was signed. Try clearing the local http-cache and run nuget operation again. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3009.md b/docs/reference/errors-and-warnings/NU3009.md index e45e9ee5d..713c2ee4c 100644 --- a/docs/reference/errors-and-warnings/NU3009.md +++ b/docs/reference/errors-and-warnings/NU3009.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Warning NU3009 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The package signature file does not contain exactly one primary signature.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The package signature file does not contain exactly one primary signature. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3010.md b/docs/reference/errors-and-warnings/NU3010.md index 9257129d9..e0616dd06 100644 --- a/docs/reference/errors-and-warnings/NU3010.md +++ b/docs/reference/errors-and-warnings/NU3010.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Warning NU3010 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature does not have a signing certificate.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature does not have a signing certificate. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3011.md b/docs/reference/errors-and-warnings/NU3011.md index ce8f9802d..223a4794d 100644 --- a/docs/reference/errors-and-warnings/NU3011.md +++ b/docs/reference/errors-and-warnings/NU3011.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Warning NU3011 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature is invalid.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature is invalid. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3012.md b/docs/reference/errors-and-warnings/NU3012.md index fe4853df2..9cecd28ac 100644 --- a/docs/reference/errors-and-warnings/NU3012.md +++ b/docs/reference/errors-and-warnings/NU3012.md @@ -14,7 +14,7 @@ f1_keywords: ## Scenario 1 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature validation failed.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature validation failed. ### Issue @@ -29,7 +29,7 @@ You can get more details about the problem by looking at the debug logs. If the ## Scenario 2 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature found a chain building issue:  A certificate chain processed, but terminated in a root certificate which is not trusted by the trust provider.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature found a chain building issue: A certificate chain processed, but terminated in a root certificate which is not trusted by the trust provider. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3013.md b/docs/reference/errors-and-warnings/NU3013.md index e8180bd75..bd2d3a0a5 100644 --- a/docs/reference/errors-and-warnings/NU3013.md +++ b/docs/reference/errors-and-warnings/NU3013.md @@ -14,7 +14,7 @@ f1_keywords: ## Scenario 1 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The signing certificate has an unsupported signature algorithm.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The signing certificate has an unsupported signature algorithm. ### Issue @@ -32,7 +32,7 @@ Please ensure that the signing certificate has one of the following signature al ## Scenario 2 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature's certificate has an unsupported signature algorithm.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature's certificate has an unsupported signature algorithm. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3014.md b/docs/reference/errors-and-warnings/NU3014.md index db7748cc5..e292ef72a 100644 --- a/docs/reference/errors-and-warnings/NU3014.md +++ b/docs/reference/errors-and-warnings/NU3014.md @@ -14,7 +14,7 @@ f1_keywords: ## Scenario 1 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The signing certificate does not meet a minimum public key length requirement.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The signing certificate does not meet a minimum public key length requirement. ### Issue @@ -29,7 +29,7 @@ Please ensure that the signing certificate has an RSA public key of length >= 20 ## Scenario 2 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature's certificate does not meet a minimum public key length requirement.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature's certificate does not meet a minimum public key length requirement. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3015.md b/docs/reference/errors-and-warnings/NU3015.md index 8443439e8..5a04c73ef 100644 --- a/docs/reference/errors-and-warnings/NU3015.md +++ b/docs/reference/errors-and-warnings/NU3015.md @@ -14,7 +14,7 @@ f1_keywords: ## Scenario 1 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The lifetime signing EKU in the primary signature's certificate is not supported.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The lifetime signing EKU in the primary signature's certificate is not supported. ### Issue @@ -29,7 +29,7 @@ Please ensure that the signing certificate does not have lifetime signing Extend ## Scenario 2 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The lifetime signing EKU in the signing certificate is not supported.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The lifetime signing EKU in the signing certificate is not supported. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3016.md b/docs/reference/errors-and-warnings/NU3016.md index eb43ec64e..ac4c9d36f 100644 --- a/docs/reference/errors-and-warnings/NU3016.md +++ b/docs/reference/errors-and-warnings/NU3016.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Warning NU3016 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The package hash uses an unsupported hash algorithm.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The package hash uses an unsupported hash algorithm. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3017.md b/docs/reference/errors-and-warnings/NU3017.md index 8a7a038f4..c8d255031 100644 --- a/docs/reference/errors-and-warnings/NU3017.md +++ b/docs/reference/errors-and-warnings/NU3017.md @@ -14,7 +14,7 @@ f1_keywords: ## Scenario 1 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The signing certificate is not yet valid.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The signing certificate is not yet valid. ### Issue @@ -29,7 +29,7 @@ Please ensure that the signing certificate is currently valid. ## Scenario 2 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature's certificate is not yet valid.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature's certificate is not yet valid. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3018.md b/docs/reference/errors-and-warnings/NU3018.md index 62f58ee6b..93baa310a 100644 --- a/docs/reference/errors-and-warnings/NU3018.md +++ b/docs/reference/errors-and-warnings/NU3018.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Warning NU3018 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature's signing certificate is not trusted by the trust provider.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature's signing certificate is not trusted by the trust provider. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3019.md b/docs/reference/errors-and-warnings/NU3019.md index 65fbf57ed..689208f87 100644 --- a/docs/reference/errors-and-warnings/NU3019.md +++ b/docs/reference/errors-and-warnings/NU3019.md @@ -14,7 +14,7 @@ f1_keywords: ## Scenario 1 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The timestamp integrity check failed.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The timestamp integrity check failed. ### Issue @@ -29,7 +29,7 @@ Please try to re-sign and timestamp the package. If the problem persists, contac ## Scenario 2 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature's timestamp integrity check failed.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature's timestamp integrity check failed. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3020.md b/docs/reference/errors-and-warnings/NU3020.md index a4755a354..cfca6be9a 100644 --- a/docs/reference/errors-and-warnings/NU3020.md +++ b/docs/reference/errors-and-warnings/NU3020.md @@ -14,7 +14,7 @@ f1_keywords: ## Scenario 1 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The timestamp does not have a signing certificate.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The timestamp does not have a signing certificate. ### Issue @@ -29,7 +29,7 @@ Please try to re-sign and timestamp the package. If the problem persists, contac ## Scenario 2 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature's timestamp does not have a signing certificate.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature's timestamp does not have a signing certificate. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3021.md b/docs/reference/errors-and-warnings/NU3021.md index f528760a0..c0655ce3d 100644 --- a/docs/reference/errors-and-warnings/NU3021.md +++ b/docs/reference/errors-and-warnings/NU3021.md @@ -14,7 +14,7 @@ f1_keywords: ## Scenario 1 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature's timestamp signature validation failed.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature's timestamp signature validation failed. ### Issue @@ -29,7 +29,7 @@ Please request the package author to re-sign the package using the `nuget sign` ## Scenario 2 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The timestamp signature validation failed.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The timestamp signature validation failed. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3022.md b/docs/reference/errors-and-warnings/NU3022.md index 73a97fa03..bbe3e11f1 100644 --- a/docs/reference/errors-and-warnings/NU3022.md +++ b/docs/reference/errors-and-warnings/NU3022.md @@ -14,7 +14,7 @@ f1_keywords: ## Scenario 1 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature's timestamp certificate has an unsupported signature algorithm.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature's timestamp certificate has an unsupported signature algorithm. ### Issue @@ -32,7 +32,7 @@ Please ensure that the timestamp authority's signing certificate has one of the ## Scenario 2 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The timestamp certificate has an unsupported signature algorithm (SHA1). The following algorithms are supported: SHA256RSA, SHA384RSA, SHA512RSA.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The timestamp certificate has an unsupported signature algorithm (SHA1). The following algorithms are supported: SHA256RSA, SHA384RSA, SHA512RSA. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3023.md b/docs/reference/errors-and-warnings/NU3023.md index 8e815be5f..b984ba930 100644 --- a/docs/reference/errors-and-warnings/NU3023.md +++ b/docs/reference/errors-and-warnings/NU3023.md @@ -14,7 +14,7 @@ f1_keywords: ## Scenario 1 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The timestamp certificate does not meet a minimum public key length requirement.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The timestamp certificate does not meet a minimum public key length requirement. ### Issue @@ -29,7 +29,7 @@ Please ensure that the Timestamp Authority's signing certificate has an RSA pub ## Scenario 2 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature's timestamp certificate does not meet a minimum public key length requirement.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature's timestamp certificate does not meet a minimum public key length requirement. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3024.md b/docs/reference/errors-and-warnings/NU3024.md index 199f65d91..373a01016 100644 --- a/docs/reference/errors-and-warnings/NU3024.md +++ b/docs/reference/errors-and-warnings/NU3024.md @@ -14,7 +14,7 @@ f1_keywords: ## Scenario 1 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The timestamp signature has an unsupported digest algorithm. The following algorithms are supported: : SHA-2-256, SHA-2-384, SHA-2-512.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The timestamp signature has an unsupported digest algorithm. The following algorithms are supported: : SHA-2-256, SHA-2-384, SHA-2-512. ### Issue @@ -32,7 +32,7 @@ Ensure that the timestamp authority's signature has one of the following digest ## Scenario 2 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature's timestamp signature has an unsupported digest algorithm.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature's timestamp signature has an unsupported digest algorithm. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3025.md b/docs/reference/errors-and-warnings/NU3025.md index f80ff68b3..ea3569e9b 100644 --- a/docs/reference/errors-and-warnings/NU3025.md +++ b/docs/reference/errors-and-warnings/NU3025.md @@ -14,7 +14,7 @@ f1_keywords: ## Scenario 1 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The timestamp signing certificate is not yet valid.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The timestamp signing certificate is not yet valid. ### Issue @@ -29,7 +29,7 @@ Please ensure that the Timestamp Authority's signing certificate is currently va ## Scenario 2 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature's timestamp signing certificate is not yet valid.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature's timestamp signing certificate is not yet valid. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3026.md b/docs/reference/errors-and-warnings/NU3026.md index 8d078a2d4..2fafbfb69 100644 --- a/docs/reference/errors-and-warnings/NU3026.md +++ b/docs/reference/errors-and-warnings/NU3026.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Warning NU3026 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The timestamp response is invalid. Nonces did not match.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The timestamp response is invalid. Nonces did not match. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3027.md b/docs/reference/errors-and-warnings/NU3027.md index 4a0316d6e..382dcad8f 100644 --- a/docs/reference/errors-and-warnings/NU3027.md +++ b/docs/reference/errors-and-warnings/NU3027.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Warning NU3027 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The signature should be timestamped to enable long-term signature validity after the certificate has expired.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The signature should be timestamped to enable long-term signature validity after the certificate has expired. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3028.md b/docs/reference/errors-and-warnings/NU3028.md index 4e1da0240..5ad0ba503 100644 --- a/docs/reference/errors-and-warnings/NU3028.md +++ b/docs/reference/errors-and-warnings/NU3028.md @@ -14,7 +14,7 @@ f1_keywords: *NuGet 4.6.0+* -
    The author primary signature's timestamp found a chain building issue: The revocation function was unable to check revocation because the revocation server could not be reached. For more information, visit https://aka.ms/certificateRevocationMode
    +> The author primary signature's timestamp found a chain building issue: The revocation function was unable to check revocation because the revocation server could not be reached. For more information, visit https://aka.ms/certificateRevocationMode ### Issue @@ -41,7 +41,7 @@ However, in some cases, this may have unintended concequences such as the packag When the revocation check mode is set to `offline`, the warning will be downgraded to an informational level. -
    The author primary signature's timestamp found a chain building issue: The revocation function was unable to check revocation because the certificate is not available in the cached certificate revocation list and NUGET_CERT_REVOCATION_MODE environment variable has been set to offline. For more information, visit https://aka.ms/certificateRevocationMode.
    +> The author primary signature's timestamp found a chain building issue: The revocation function was unable to check revocation because the certificate is not available in the cached certificate revocation list and NUGET_CERT_REVOCATION_MODE environment variable has been set to offline. For more information, visit https://aka.ms/certificateRevocationMode. > [!Note] > NU3028 is raised as an error in most cases. diff --git a/docs/reference/errors-and-warnings/NU3029.md b/docs/reference/errors-and-warnings/NU3029.md index 689e83f96..7eb3898f4 100644 --- a/docs/reference/errors-and-warnings/NU3029.md +++ b/docs/reference/errors-and-warnings/NU3029.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Warning NU3029 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The timestamp signature is invalid.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The timestamp signature is invalid. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3030.md b/docs/reference/errors-and-warnings/NU3030.md index 45c892b2b..1c1966246 100644 --- a/docs/reference/errors-and-warnings/NU3030.md +++ b/docs/reference/errors-and-warnings/NU3030.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Warning NU3030 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature's timestamp's message imprint uses an unsupported hash algorithm.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature's timestamp's message imprint uses an unsupported hash algorithm. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3031.md b/docs/reference/errors-and-warnings/NU3031.md index d590213c0..d065571b2 100644 --- a/docs/reference/errors-and-warnings/NU3031.md +++ b/docs/reference/errors-and-warnings/NU3031.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Warning NU3031 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The repository countersignature is invalid.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The repository countersignature is invalid. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3032.md b/docs/reference/errors-and-warnings/NU3032.md index 447de425b..3265c81ad 100644 --- a/docs/reference/errors-and-warnings/NU3032.md +++ b/docs/reference/errors-and-warnings/NU3032.md @@ -14,7 +14,7 @@ f1_keywords: ## Scenario 1 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The package already contains a repository countersignature. Please remove the existing signature before adding a new repository countersignature.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The package already contains a repository countersignature. Please remove the existing signature before adding a new repository countersignature. ### Issue @@ -29,7 +29,7 @@ Remove the existing signature before adding a new repository countersignature. ## Scenario 2 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The package signature contains multiple repository countersignatures.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The package signature contains multiple repository countersignatures. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3033.md b/docs/reference/errors-and-warnings/NU3033.md index ffabc561a..9349057ee 100644 --- a/docs/reference/errors-and-warnings/NU3033.md +++ b/docs/reference/errors-and-warnings/NU3033.md @@ -14,7 +14,7 @@ f1_keywords: ## Scenario 1 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': A repository primary signature must not have a repository countersignature.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': A repository primary signature must not have a repository countersignature. ### Issue @@ -28,7 +28,7 @@ Try to re-sign the package with either an author signature or a repository signa ## Scenario 2 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': A repository primary signature must not have a repository countersignature.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': A repository primary signature must not have a repository countersignature. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3034.md b/docs/reference/errors-and-warnings/NU3034.md index 54034f27c..43886c386 100644 --- a/docs/reference/errors-and-warnings/NU3034.md +++ b/docs/reference/errors-and-warnings/NU3034.md @@ -12,10 +12,13 @@ f1_keywords: # NuGet Error NU3034 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': signatureValidationMode is set to require, so packages are allowed only if signed by trusted signers; however, no trusted signers were specified.
    -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The package signature certificate fingerprint does not match any certificate fingerprint in the allow list.
    -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': This repository indicated that all its packages are repository signed; however, it listed no signing certificates.
    -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': This package was not repository signed with a certificate listed by this repository.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': signatureValidationMode is set to require, so packages are allowed only if signed by trusted signers; however, no trusted signers were specified. + +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The package signature certificate fingerprint does not match any certificate fingerprint in the allow list. + +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': This repository indicated that all its packages are repository signed; however, it listed no signing certificates. + +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': This package was not repository signed with a certificate listed by this repository. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3036.md b/docs/reference/errors-and-warnings/NU3036.md index 8710049cc..854f65bdf 100644 --- a/docs/reference/errors-and-warnings/NU3036.md +++ b/docs/reference/errors-and-warnings/NU3036.md @@ -14,7 +14,7 @@ f1_keywords: ## Scenario 1 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The timestamp's generalized time is outside the timestamping certificate's validity period.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The timestamp's generalized time is outside the timestamping certificate's validity period. ### Issue @@ -29,7 +29,7 @@ Try to re-sign and timestamp the package. If the problem persists, contact the t ## Scenario 2 -
    Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature's timestamp's generalized time is outside the timestamping certificate's validity period.
    +> Package 'SamplePackage v1.0.0' from source 'https://contoso.com/index.json': The primary signature's timestamp's generalized time is outside the timestamping certificate's validity period. ### Issue diff --git a/docs/reference/errors-and-warnings/NU3040.md b/docs/reference/errors-and-warnings/NU3040.md index 0d9e92d92..95b15be40 100644 --- a/docs/reference/errors-and-warnings/NU3040.md +++ b/docs/reference/errors-and-warnings/NU3040.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Warning NU3040 -
    There are two certificates with conflicting allowUntrustedRoot attributes in the computed settings. The allowUntrustedRoot attribute is going to be set to false. Certificate: SHA256-3F9001EA83C560D712C24CF213C3D312CB3BFF51EE89435D3430BD06B5D0EECE
    +> There are two certificates with conflicting allowUntrustedRoot attributes in the computed settings. The allowUntrustedRoot attribute is going to be set to false. Certificate: SHA256-3F9001EA83C560D712C24CF213C3D312CB3BFF51EE89435D3430BD06B5D0EECE ### Issue diff --git a/docs/reference/errors-and-warnings/NU3042.md b/docs/reference/errors-and-warnings/NU3042.md index 57c74bd3a..04497a9f6 100644 --- a/docs/reference/errors-and-warnings/NU3042.md +++ b/docs/reference/errors-and-warnings/NU3042.md @@ -14,13 +14,14 @@ f1_keywords: *NuGet 6.6.0+ on Linux and macOS only* -
    The following X.509 root certificate is untrusted because it is not present in the certificate bundle at <file-path>.  For more information, see documentation for NU3042.
    -    Subject:  <certificate subject>
    -    Fingerprint (SHA-256):  <certificate fingerprint>
    -    Certificate (PEM):
    -<PEM-encoded certificate>
    +> The following X.509 root certificate is untrusted because it is not present in the certificate bundle at <file-path>. For more information, see documentation for NU3042.
    +>     Subject: <certificate subject>
    +>     Fingerprint (SHA-256): <certificate fingerprint>
    +>     Certificate (PEM):
    +> <PEM-encoded certificate> ### Issue + Warning NU3042 is raised when signed package verification failed because a root certificate was not found in the appropriate trusted root certificate bundle, either code signing or timestamping. This warning will only be raised on Linux and macOS when signed package verification is enabled, never on Windows. NU3042 should accompany an [NU3018](NU3018.md) or [NU3028](NU3028.md). Each .NET 7+ SDK release contains two root certificate bundles sourced from the [Microsoft Trusted Root Program](https://aka.ms/RootCert). One certificate bundle contains all trusted roots valid for code signing, while the other contains all trusted roots valid for timestamping. NuGet uses these certificate bundles on Linux and macOS when signed package verification is enabled. @@ -35,10 +36,11 @@ The root cause for NU3042 is likely one of the following: For more information, see [NuGet signed-package verification](/dotnet/core/tools/nuget-signed-package-verification). ### Solution + On Linux, if you trust the certificate and are using a system-wide code signing certificate bundle, consider adding the root certificate to the bundle. This solution may not be suitable because it will grant system-wide trust. If the .NET SDK's certificate bundles are out-of-date, update to a more recent release of the .NET SDK. If all else fails, opt out of signed package verification by setting the environment variable `DOTNET_NUGET_SIGNATURE_VERIFICATION` to `false` and [open an issue with the NuGet team](https://github.com/NuGet/Home/issues) to suggest how signed package verification can be improved on your platform. -For more information, see [NuGet signed-package verification](/dotnet/core/tools/nuget-signed-package-verification). \ No newline at end of file +For more information, see [NuGet signed-package verification](/dotnet/core/tools/nuget-signed-package-verification). diff --git a/docs/reference/errors-and-warnings/NU5001.md b/docs/reference/errors-and-warnings/NU5001.md index 101d6682f..c5ec558be 100644 --- a/docs/reference/errors-and-warnings/NU5001.md +++ b/docs/reference/errors-and-warnings/NU5001.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5001 -
    Unable to output resolved nuspec file because it would overwrite the original at 'F:\project\project.nuspec'.
    +> Unable to output resolved nuspec file because it would overwrite the original at 'F:\project\project.nuspec'. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5002.md b/docs/reference/errors-and-warnings/NU5002.md index 556e0aae8..24672a3ee 100644 --- a/docs/reference/errors-and-warnings/NU5002.md +++ b/docs/reference/errors-and-warnings/NU5002.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5002 -
    Please specify a nuspec, project.json, or project file to use.
    +> Please specify a nuspec, project.json, or project file to use. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5003.md b/docs/reference/errors-and-warnings/NU5003.md index 83e5e5c44..415f01851 100644 --- a/docs/reference/errors-and-warnings/NU5003.md +++ b/docs/reference/errors-and-warnings/NU5003.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5003 -
    Failed to build package because of an unsupported targetFramework value on 'System.Net'.
    +> Failed to build package because of an unsupported targetFramework value on 'System.Net'. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5004.md b/docs/reference/errors-and-warnings/NU5004.md index 70d0121ac..2e008e785 100644 --- a/docs/reference/errors-and-warnings/NU5004.md +++ b/docs/reference/errors-and-warnings/NU5004.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5004 -
    Failed to build package. Ensure 'F:\project\project.nuspec' includes assembly files. For help on building symbols package, visit http://docs.nuget.org/.
    +> Failed to build package. Ensure 'F:\project\project.nuspec' includes assembly files. For help on building symbols package, visit https://docs.nuget.org/. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5005.md b/docs/reference/errors-and-warnings/NU5005.md index 6506a3777..ef54649f9 100644 --- a/docs/reference/errors-and-warnings/NU5005.md +++ b/docs/reference/errors-and-warnings/NU5005.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5005 -
    Ensure 'F:\project\project.nuspec' includes source and symbol files. For help on building symbols package, visit http://docs.nuget.org/.
    +> Ensure 'F:\project\project.nuspec' includes source and symbol files. For help on building symbols package, visit https://docs.nuget.org/. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5007.md b/docs/reference/errors-and-warnings/NU5007.md index 203389722..3b499e554 100644 --- a/docs/reference/errors-and-warnings/NU5007.md +++ b/docs/reference/errors-and-warnings/NU5007.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5007 -
    No build found in F:\project\bin\Debug\net461\project.dll. Use the -Build option or build the project.
    +> No build found in F:\project\bin\Debug\net461\project.dll. Use the -Build option or build the project. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5008.md b/docs/reference/errors-and-warnings/NU5008.md index d013cdb86..c837ed1a4 100644 --- a/docs/reference/errors-and-warnings/NU5008.md +++ b/docs/reference/errors-and-warnings/NU5008.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5008 -
    Manifest file not found at 'F:\project\project.nuspec'
    +> Manifest file not found at 'F:\project\project.nuspec' ### Issue diff --git a/docs/reference/errors-and-warnings/NU5009.md b/docs/reference/errors-and-warnings/NU5009.md index 3da5c1008..792d50a34 100644 --- a/docs/reference/errors-and-warnings/NU5009.md +++ b/docs/reference/errors-and-warnings/NU5009.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5009 -
    Cannot find version of msbuild.
    +> Cannot find version of msbuild. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5010.md b/docs/reference/errors-and-warnings/NU5010.md index 4d94bf141..15c1a66f6 100644 --- a/docs/reference/errors-and-warnings/NU5010.md +++ b/docs/reference/errors-and-warnings/NU5010.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5010 -
    Version string specified for package reference '9.9.9.9.9' is invalid.
    +> Version string specified for package reference '9.9.9.9.9' is invalid. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5011.md b/docs/reference/errors-and-warnings/NU5011.md index 87469ed52..d437c1606 100644 --- a/docs/reference/errors-and-warnings/NU5011.md +++ b/docs/reference/errors-and-warnings/NU5011.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5011 -
    Unable to extract metadata from 'project.csproj'.
    +> Unable to extract metadata from 'project.csproj'. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5012.md b/docs/reference/errors-and-warnings/NU5012.md index 4e46b3aa1..ee612fa1c 100644 --- a/docs/reference/errors-and-warnings/NU5012.md +++ b/docs/reference/errors-and-warnings/NU5012.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5012 -
    Unable to find 'F:\project\bin\Debug\net461\project.dll'. Make sure the project has been built.
    +> Unable to find 'F:\project\bin\Debug\net461\project.dll'. Make sure the project has been built. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5013.md b/docs/reference/errors-and-warnings/NU5013.md index e1c551b00..187f889be 100644 --- a/docs/reference/errors-and-warnings/NU5013.md +++ b/docs/reference/errors-and-warnings/NU5013.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5013 -
    Failed to build 'project.csproj'
    +> Failed to build 'project.csproj' ### Issue diff --git a/docs/reference/errors-and-warnings/NU5014.md b/docs/reference/errors-and-warnings/NU5014.md index da935113f..cb07c53ac 100644 --- a/docs/reference/errors-and-warnings/NU5014.md +++ b/docs/reference/errors-and-warnings/NU5014.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5014 -
    Error occurred when processing file 'F:\project2\project2.csproj': The 'id' start tag on line 4 position 10 does not match the end tag of 'ids'. Line 4, position 20.
    +> Error occurred when processing file 'F:\project2\project2.csproj': The 'id' start tag on line 4 position 10 does not match the end tag of 'ids'. Line 4, position 20. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5015.md b/docs/reference/errors-and-warnings/NU5015.md index 34ddf8367..247940575 100644 --- a/docs/reference/errors-and-warnings/NU5015.md +++ b/docs/reference/errors-and-warnings/NU5015.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5015 -
    project.json cannot contain multiple Target Frameworks.
    +> project.json cannot contain multiple Target Frameworks. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5016.md b/docs/reference/errors-and-warnings/NU5016.md index 74c14cc5c..d70ed874c 100644 --- a/docs/reference/errors-and-warnings/NU5016.md +++ b/docs/reference/errors-and-warnings/NU5016.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5016 -
    Package version constraints for 'NuGet.Versioning' return a version range that is empty.
    +> Package version constraints for 'NuGet.Versioning' return a version range that is empty. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5017.md b/docs/reference/errors-and-warnings/NU5017.md index ffda1be4e..67a3648c8 100644 --- a/docs/reference/errors-and-warnings/NU5017.md +++ b/docs/reference/errors-and-warnings/NU5017.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5017 -
    Cannot create a package that has no dependencies nor content.
    +> Cannot create a package that has no dependencies nor content. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5018.md b/docs/reference/errors-and-warnings/NU5018.md index 44b50fcc9..d505d56ac 100644 --- a/docs/reference/errors-and-warnings/NU5018.md +++ b/docs/reference/errors-and-warnings/NU5018.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5018 -
    Invalid assembly reference 'xunit.dll'. Ensure that a file named 'xunit.dll' exists in the lib directory.
    +> Invalid assembly reference 'xunit.dll'. Ensure that a file named 'xunit.dll' exists in the lib directory. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5019.md b/docs/reference/errors-and-warnings/NU5019.md index 165772bf3..a5195e127 100644 --- a/docs/reference/errors-and-warnings/NU5019.md +++ b/docs/reference/errors-and-warnings/NU5019.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5019 -
     File not found: 'bad_file.path'
    +> File not found: 'bad_file.path' ### Issue diff --git a/docs/reference/errors-and-warnings/NU5020.md b/docs/reference/errors-and-warnings/NU5020.md index b6c771748..56c685737 100644 --- a/docs/reference/errors-and-warnings/NU5020.md +++ b/docs/reference/errors-and-warnings/NU5020.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5020 -
    A source file was added with an empty path.
    +> A source file was added with an empty path. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5021.md b/docs/reference/errors-and-warnings/NU5021.md index d89e38f1c..d419bb941 100644 --- a/docs/reference/errors-and-warnings/NU5021.md +++ b/docs/reference/errors-and-warnings/NU5021.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5021 -
    The project directory for the source file 'src/Project/Code.cs' could not be found.
    +> The project directory for the source file 'src/Project/Code.cs' could not be found. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5022.md b/docs/reference/errors-and-warnings/NU5022.md index 370c50b8e..1656f4f02 100644 --- a/docs/reference/errors-and-warnings/NU5022.md +++ b/docs/reference/errors-and-warnings/NU5022.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5022 -
    MinClient Version string specified '9.9.9.9.9' is invalid.
    +> MinClient Version string specified '9.9.9.9.9' is invalid. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5023.md b/docs/reference/errors-and-warnings/NU5023.md index f88252691..9b319ac03 100644 --- a/docs/reference/errors-and-warnings/NU5023.md +++ b/docs/reference/errors-and-warnings/NU5023.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5023 -
    The assets file produced by restore does not exist. Try restoring the project again. The expected location of the assets file is F:\project\obj\project.assets.json.
    +> The assets file produced by restore does not exist. Try restoring the project again. The expected location of the assets file is F:\project\obj\project.assets.json. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5024.md b/docs/reference/errors-and-warnings/NU5024.md index c542ab37a..6350658f5 100644 --- a/docs/reference/errors-and-warnings/NU5024.md +++ b/docs/reference/errors-and-warnings/NU5024.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5024 -
    PackageVersion string specified '9.9.9.9.9' is invalid.
    +> PackageVersion string specified '9.9.9.9.9' is invalid. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5025.md b/docs/reference/errors-and-warnings/NU5025.md index e041791ea..3ed29ba0d 100644 --- a/docs/reference/errors-and-warnings/NU5025.md +++ b/docs/reference/errors-and-warnings/NU5025.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5025 -
    The assets file found does not contain a valid package spec. Try restoring the project again. The location of the assets file is F:\project\obj\project.assets.json.
    +> The assets file found does not contain a valid package spec. Try restoring the project again. The location of the assets file is F:\project\obj\project.assets.json. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5026.md b/docs/reference/errors-and-warnings/NU5026.md index 239d61f4e..b1d9917cc 100644 --- a/docs/reference/errors-and-warnings/NU5026.md +++ b/docs/reference/errors-and-warnings/NU5026.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5026 -
    The file ''F:\project\bin\Debug\net461\project.exe' to be packed was not found on disk.
    +> The file ''F:\project\bin\Debug\net461\project.exe' to be packed was not found on disk. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5027.md b/docs/reference/errors-and-warnings/NU5027.md index e5261eeb7..8effdd12b 100644 --- a/docs/reference/errors-and-warnings/NU5027.md +++ b/docs/reference/errors-and-warnings/NU5027.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5027 -
    Invalid target framework for the file 'F:\project\project.dll'.
    +> Invalid target framework for the file 'F:\project\project.dll'. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5028.md b/docs/reference/errors-and-warnings/NU5028.md index 12c7ad06f..2b8e8b89e 100644 --- a/docs/reference/errors-and-warnings/NU5028.md +++ b/docs/reference/errors-and-warnings/NU5028.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5028 -
    No project was provided to the PackTask.
    +> No project was provided to the PackTask. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5029.md b/docs/reference/errors-and-warnings/NU5029.md index f6e5ff460..18e600f49 100644 --- a/docs/reference/errors-and-warnings/NU5029.md +++ b/docs/reference/errors-and-warnings/NU5029.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5029 -
    NuspecProperties should be in the form of 'key1=value1;key2=value2'.
    +> NuspecProperties should be in the form of 'key1=value1;key2=value2'. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5030.md b/docs/reference/errors-and-warnings/NU5030.md index 654669992..e7e76da82 100644 --- a/docs/reference/errors-and-warnings/NU5030.md +++ b/docs/reference/errors-and-warnings/NU5030.md @@ -10,7 +10,7 @@ f1_keywords: --- # NuGet Error NU5030 -
    The license file 'LICENSE.txt' does not exist in the package.
    +> The license file 'LICENSE.txt' does not exist in the package. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5031.md b/docs/reference/errors-and-warnings/NU5031.md index 01ccd5ea7..e87a11e57 100644 --- a/docs/reference/errors-and-warnings/NU5031.md +++ b/docs/reference/errors-and-warnings/NU5031.md @@ -10,7 +10,7 @@ f1_keywords: --- # NuGet Error NU5031 -
    The license file 'LICENSE.txt' has an invalid extension. Valid options are .txt, .md or none.
    +> The license file 'LICENSE.txt' has an invalid extension. Valid options are .txt, .md or none. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5032.md b/docs/reference/errors-and-warnings/NU5032.md index afc9634db..886e4c77e 100644 --- a/docs/reference/errors-and-warnings/NU5032.md +++ b/docs/reference/errors-and-warnings/NU5032.md @@ -10,7 +10,7 @@ f1_keywords: --- # NuGet Error NU5032 -
    The license expression 'MIT OR OR Apache-2.0' cannot be parsed succesfully. The license expression is invalid.
    +> The license expression 'MIT OR OR Apache-2.0' cannot be parsed succesfully. The license expression is invalid. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5033.md b/docs/reference/errors-and-warnings/NU5033.md index 3569d58db..0840e32dd 100644 --- a/docs/reference/errors-and-warnings/NU5033.md +++ b/docs/reference/errors-and-warnings/NU5033.md @@ -10,7 +10,7 @@ f1_keywords: --- # NuGet Error NU5033 -
    Invalid metadata. Cannot specify both a License Expression and a License File.
    +> Invalid metadata. Cannot specify both a License Expression and a License File. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5034.md b/docs/reference/errors-and-warnings/NU5034.md index 1db56fd9e..e44ae8707 100644 --- a/docs/reference/errors-and-warnings/NU5034.md +++ b/docs/reference/errors-and-warnings/NU5034.md @@ -10,7 +10,7 @@ f1_keywords: --- # NuGet Error NU5034 -
    The PackageLicenseExpressionVersion string '2.0.0-InvalidSystemVersion' is not a valid version.
    +> The PackageLicenseExpressionVersion string '2.0.0-InvalidSystemVersion' is not a valid version. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5035.md b/docs/reference/errors-and-warnings/NU5035.md index 472e217be..d2b8aa165 100644 --- a/docs/reference/errors-and-warnings/NU5035.md +++ b/docs/reference/errors-and-warnings/NU5035.md @@ -10,7 +10,7 @@ f1_keywords: --- # NuGet Error NU5035 -
    The PackageLicenseUrl cannot be used in conjunction with the PackageLicenseFile and PackageLicenseExpression.
    +> The PackageLicenseUrl cannot be used in conjunction with the PackageLicenseFile and PackageLicenseExpression. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5036.md b/docs/reference/errors-and-warnings/NU5036.md index 0859655d4..bd3f14d75 100644 --- a/docs/reference/errors-and-warnings/NU5036.md +++ b/docs/reference/errors-and-warnings/NU5036.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5036 -
    This package has an improperly escaped Url in LicenseUrl
    +> This package has an improperly escaped Url in LicenseUrl ### Issue diff --git a/docs/reference/errors-and-warnings/NU5037.md b/docs/reference/errors-and-warnings/NU5037.md index af357a185..bf74dc5c8 100644 --- a/docs/reference/errors-and-warnings/NU5037.md +++ b/docs/reference/errors-and-warnings/NU5037.md @@ -11,7 +11,8 @@ f1_keywords: --- # NuGet Error NU5037 -
    The package is missing the required nuspec file.
    + +> The package is missing the required nuspec file. ### Issue @@ -29,9 +30,7 @@ Contact the package author. Restore fails for a project managed with the `PackageReference` format. For example: -``` -The package is missing the required nuspec file. Path: C:\.\.\.nuget\packages\x\1.0.0.'x' represents package name and '1.0.0' represents package version. -``` +> The package is missing the required nuspec file. Path: C:\.\.\.nuget\packages\x\1.0.0.'x' represents package name and '1.0.0' represents package version. ### Solution diff --git a/docs/reference/errors-and-warnings/NU5038.md b/docs/reference/errors-and-warnings/NU5038.md index 27b38557a..282d1f988 100644 --- a/docs/reference/errors-and-warnings/NU5038.md +++ b/docs/reference/errors-and-warnings/NU5038.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Error NU5038 -
    The readme file 'readme.txt' has an invalid extension. It must end in .md.
    +> The readme file 'readme.txt' has an invalid extension. It must end in .md. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5039.md b/docs/reference/errors-and-warnings/NU5039.md index 31b4b9e51..ddc6034f1 100644 --- a/docs/reference/errors-and-warnings/NU5039.md +++ b/docs/reference/errors-and-warnings/NU5039.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Error NU5039 -
    The readme file 'readme.md' does not exist in the package.
    +> The readme file 'readme.md' does not exist in the package. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5040.md b/docs/reference/errors-and-warnings/NU5040.md index 0d90383ef..de314e8bb 100644 --- a/docs/reference/errors-and-warnings/NU5040.md +++ b/docs/reference/errors-and-warnings/NU5040.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Error NU5040 -
    The readme file 'readme.md' is empty.
    +> The readme file 'readme.md' is empty. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5041.md b/docs/reference/errors-and-warnings/NU5041.md index 7574654df..a6278fb0c 100644 --- a/docs/reference/errors-and-warnings/NU5041.md +++ b/docs/reference/errors-and-warnings/NU5041.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Error NU5041 -
    Cannot open the readme file 'readme.md'
    +> Cannot open the readme file 'readme.md' ### Issue diff --git a/docs/reference/errors-and-warnings/NU5042.md b/docs/reference/errors-and-warnings/NU5042.md index 2ebf18b01..40a51fd43 100644 --- a/docs/reference/errors-and-warnings/NU5042.md +++ b/docs/reference/errors-and-warnings/NU5042.md @@ -11,9 +11,9 @@ f1_keywords: # NuGet Error NU5042 -
    `project.json` pack is disabled in the current NuGet version, and will be permanently removed in a future version.
    -Please consider migrating 'MyProject' to `PackageReference` and using the pack targets.
    -You can set the 'NUGET_ENABLE_LEGACY_PROJECT_JSON_PACK' environment variable to 'true' to temporarily reenable this functionality.
    +> `project.json` pack is disabled in the current NuGet version, and will be permanently removed in a future version. +> Please consider migrating 'MyProject' to `PackageReference` and using the pack targets. +> You can set the 'NUGET_ENABLE_LEGACY_PROJECT_JSON_PACK' environment variable to 'true' to temporarily reenable this functionality. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5045.md b/docs/reference/errors-and-warnings/NU5045.md index a38ca3a7c..897e0f521 100644 --- a/docs/reference/errors-and-warnings/NU5045.md +++ b/docs/reference/errors-and-warnings/NU5045.md @@ -10,7 +10,7 @@ f1_keywords: # NuGet Warning NU5045 -
    The 'icon' element 'icon.svg' has an invalid file extension. Valid options are .png, .jpg or .jpeg.
    +> The 'icon' element 'icon.svg' has an invalid file extension. Valid options are .png, .jpg or .jpeg. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5046.md b/docs/reference/errors-and-warnings/NU5046.md index cc2191688..5825565ee 100644 --- a/docs/reference/errors-and-warnings/NU5046.md +++ b/docs/reference/errors-and-warnings/NU5046.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Error NU5046 -
    The icon file 'icon.png' does not exist in the package.
    +> The icon file 'icon.png' does not exist in the package. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5047.md b/docs/reference/errors-and-warnings/NU5047.md index 1582c09ca..44a3a86e2 100644 --- a/docs/reference/errors-and-warnings/NU5047.md +++ b/docs/reference/errors-and-warnings/NU5047.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Error NU5047 -
    The icon file size must not exceed 1 megabyte.
    +> The icon file size must not exceed 1 megabyte. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5048.md b/docs/reference/errors-and-warnings/NU5048.md index f91c9661a..e948b398b 100644 --- a/docs/reference/errors-and-warnings/NU5048.md +++ b/docs/reference/errors-and-warnings/NU5048.md @@ -12,7 +12,7 @@ f1_keywords: # NuGet Warning NU5048 -
    The 'PackageIconUrl'/'iconUrl' element is deprecated. Consider using the 'PackageIcon'/'icon' element instead. Learn more at https://aka.ms/deprecateIconUrl
    +> The 'PackageIconUrl'/'iconUrl' element is deprecated. Consider using the 'PackageIcon'/'icon' element instead. Learn more at https://aka.ms/deprecateIconUrl ### Issue diff --git a/docs/reference/errors-and-warnings/NU5049.md b/docs/reference/errors-and-warnings/NU5049.md index 65b97276e..4e186a366 100644 --- a/docs/reference/errors-and-warnings/NU5049.md +++ b/docs/reference/errors-and-warnings/NU5049.md @@ -11,7 +11,7 @@ f1_keywords: # NuGet Error NU5049 -
    The `pack` command for SDK-style projects is not supported, use `dotnet pack` or `msbuild -t:pack` to pack this project instead. You can override this behavior by setting the 'NUGET_ENABLE_LEGACY_CSPROJ_PACK' environment variable to 'true'.
    +> The `pack` command for SDK-style projects is not supported, use `dotnet pack` or `msbuild -t:pack` to pack this project instead. You can override this behavior by setting the 'NUGET_ENABLE_LEGACY_CSPROJ_PACK' environment variable to 'true'. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5100.md b/docs/reference/errors-and-warnings/NU5100.md index 8ae38a462..fe9fa082b 100644 --- a/docs/reference/errors-and-warnings/NU5100.md +++ b/docs/reference/errors-and-warnings/NU5100.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Warning NU5100 -
    The assembly 'bin\Debug\net461\project.dll' is not inside the 'lib' folder and hence it won't be added as a reference when the package is installed into a project. Move it into the 'lib' folder if it needs to be referenced.
    +> The assembly 'bin\Debug\net461\project.dll' is not inside the 'lib' folder and hence it won't be added as a reference when the package is installed into a project. Move it into the 'lib' folder if it needs to be referenced. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5101.md b/docs/reference/errors-and-warnings/NU5101.md index 9a20f02fb..4f884638b 100644 --- a/docs/reference/errors-and-warnings/NU5101.md +++ b/docs/reference/errors-and-warnings/NU5101.md @@ -13,7 +13,7 @@ f1_keywords: # NuGet Warning NU5101 ## Scenario 1 -
    The assembly 'lib\project.dll' is placed directly under 'lib' folder. It is recommended that assemblies be placed inside a framework-specific folder. Move it into a framework-specific folder.
    +> The assembly 'lib\project.dll' is placed directly under 'lib' folder. It is recommended that assemblies be placed inside a framework-specific folder. Move it into a framework-specific folder. ### Issue @@ -26,7 +26,7 @@ While packaging a folder please ensure that all assembly files are placed inside ## Scenario 2 -
    The assembly 'lib\project.dll' will be ignored when the package is installed after the migration.
    +> The assembly 'lib\project.dll' will be ignored when the package is installed after the migration. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5102.md b/docs/reference/errors-and-warnings/NU5102.md index 25cf64e5e..c95d23f99 100644 --- a/docs/reference/errors-and-warnings/NU5102.md +++ b/docs/reference/errors-and-warnings/NU5102.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Warning NU5102 -
    The value "http://project_url_here_or_delete_this_line/" for ProjectUrl is a sample value and should be removed. Replace it with an appropriate value or remove it and rebuild your package.
    +> The value "http://project_url_here_or_delete_this_line/" for ProjectUrl is a sample value and should be removed. Replace it with an appropriate value or remove it and rebuild your package. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5103.md b/docs/reference/errors-and-warnings/NU5103.md index 9f94a4c60..ab9bd4c60 100644 --- a/docs/reference/errors-and-warnings/NU5103.md +++ b/docs/reference/errors-and-warnings/NU5103.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Warning NU5103 -
    The folder 'lib\random_tfm\temp.dll' under 'lib' is not recognized as a valid framework name or a supported culture identifier. Rename it to a valid framework name or culture identifier.
    +> The folder 'lib\random_tfm\temp.dll' under 'lib' is not recognized as a valid framework name or a supported culture identifier. Rename it to a valid framework name or culture identifier. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5104.md b/docs/reference/errors-and-warnings/NU5104.md index dba53d3fb..a25e8b315 100644 --- a/docs/reference/errors-and-warnings/NU5104.md +++ b/docs/reference/errors-and-warnings/NU5104.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Warning NU5104 -
    A stable release of a package should not have a prerelease dependency. Either modify the version spec of dependency "NuGet.Versioning [4.7.0-preview4.5065, )" or update the version field in the nuspec.
    +> A stable release of a package should not have a prerelease dependency. Either modify the version spec of dependency "NuGet.Versioning [4.7.0-preview4.5065, )" or update the version field in the nuspec. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5105.md b/docs/reference/errors-and-warnings/NU5105.md index 4c278c447..da447a0c9 100644 --- a/docs/reference/errors-and-warnings/NU5105.md +++ b/docs/reference/errors-and-warnings/NU5105.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Warning NU5105 -
    The package version '1.2.3+semver2.metadata' uses SemVer 2.0.0 or components of SemVer 1.0.0 that are not supported on legacy clients. Change the package version to a SemVer 1.0.0 string. If the version contains a release label it must start with a letter. This message can be ignored if the package is not intended for older clients.
    +> The package version '1.2.3+semver2.metadata' uses SemVer 2.0.0 or components of SemVer 1.0.0 that are not supported on legacy clients. Change the package version to a SemVer 1.0.0 string. If the version contains a release label it must start with a letter. This message can be ignored if the package is not intended for older clients. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5106.md b/docs/reference/errors-and-warnings/NU5106.md index 52524a311..637373f03 100644 --- a/docs/reference/errors-and-warnings/NU5106.md +++ b/docs/reference/errors-and-warnings/NU5106.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Warning NU5106 -
    The file at 'lib\WinRT\temp.dll' uses the obsolete 'WinRT' as the framework folder. Replace 'WinRT' or 'WinRT45' with 'NetCore45'.
    +> The file at 'lib\WinRT\temp.dll' uses the obsolete 'WinRT' as the framework folder. Replace 'WinRT' or 'WinRT45' with 'NetCore45'. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5107.md b/docs/reference/errors-and-warnings/NU5107.md index 595d1ace8..3ae39e017 100644 --- a/docs/reference/errors-and-warnings/NU5107.md +++ b/docs/reference/errors-and-warnings/NU5107.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Warning NU5107 -
    The file 'tools/subfolder/init.ps1' will be ignored by NuGet because it is not directly under 'tools' folder. Place the file directly under 'tools' folder.
    +> The file 'tools/subfolder/init.ps1' will be ignored by NuGet because it is not directly under 'tools' folder. Place the file directly under 'tools' folder. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5108.md b/docs/reference/errors-and-warnings/NU5108.md index dd7774181..ce801cc36 100644 --- a/docs/reference/errors-and-warnings/NU5108.md +++ b/docs/reference/errors-and-warnings/NU5108.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Warning NU5108 -
    The transform file 'other\code.pp' is outside the 'content' folder and hence will not be transformed during installation of this package. Move it into the 'content' folder.
    +> The transform file 'other\code.pp' is outside the 'content' folder and hence will not be transformed during installation of this package. Move it into the 'content' folder. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5109.md b/docs/reference/errors-and-warnings/NU5109.md index 26ff11cc8..9641ff624 100644 --- a/docs/reference/errors-and-warnings/NU5109.md +++ b/docs/reference/errors-and-warnings/NU5109.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Warning NU5109 -
    The file at 'tools/_._' uses the symbol for empty directory '_._', but it is present in a directory that contains other files. Please remove this file from directories that contain other files.
    +> The file at 'tools/_._' uses the symbol for empty directory '_._', but it is present in a directory that contains other files. Please remove this file from directories that contain other files. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5110.md b/docs/reference/errors-and-warnings/NU5110.md index fe9b4a099..191f63eab 100644 --- a/docs/reference/errors-and-warnings/NU5110.md +++ b/docs/reference/errors-and-warnings/NU5110.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Warning NU5110 -
    The script file 'other\init.ps1' is outside the 'tools' folder and hence will not be executed during installation of this package. Move it into the 'tools' folder.
    +> The script file 'other\init.ps1' is outside the 'tools' folder and hence will not be executed during installation of this package. Move it into the 'tools' folder. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5111.md b/docs/reference/errors-and-warnings/NU5111.md index 962d82d3d..fee3943e9 100644 --- a/docs/reference/errors-and-warnings/NU5111.md +++ b/docs/reference/errors-and-warnings/NU5111.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Warning NU5111 -
    The script file 'tools\random.ps1' is not recognized by NuGet and hence will not be executed during installation of this package. Rename it to install.ps1, uninstall.ps1 or init.ps1 and place it directly under 'tools'.
    +> The script file 'tools\random.ps1' is not recognized by NuGet and hence will not be executed during installation of this package. Rename it to install.ps1, uninstall.ps1 or init.ps1 and place it directly under 'tools'. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5112.md b/docs/reference/errors-and-warnings/NU5112.md index 192844f22..8b77a6fed 100644 --- a/docs/reference/errors-and-warnings/NU5112.md +++ b/docs/reference/errors-and-warnings/NU5112.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Warning NU5112 -
    The version of dependency 'NuGet.Versioning' is not specified. Specify the version of dependency and rebuild your package.
    +> The version of dependency 'NuGet.Versioning' is not specified. Specify the version of dependency and rebuild your package. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5114.md b/docs/reference/errors-and-warnings/NU5114.md index a2dfc2236..4a5d32b9b 100644 --- a/docs/reference/errors-and-warnings/NU5114.md +++ b/docs/reference/errors-and-warnings/NU5114.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Warning NU5114 -
    'SolutionDir' key already exists in Properties collection. Overriding value.
    +> 'SolutionDir' key already exists in Properties collection. Overriding value. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5115.md b/docs/reference/errors-and-warnings/NU5115.md index 941c84d85..d9c6a8a3d 100644 --- a/docs/reference/errors-and-warnings/NU5115.md +++ b/docs/reference/errors-and-warnings/NU5115.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Warning NU5115 -
    Description was not specified. Using 'Description'.
    +> Description was not specified. Using 'Description'. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5116.md b/docs/reference/errors-and-warnings/NU5116.md index 7127aaebe..469fbfc1a 100644 --- a/docs/reference/errors-and-warnings/NU5116.md +++ b/docs/reference/errors-and-warnings/NU5116.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Warning NU5116 -
     'Content\sample.txt' was included in the project but doesn't exist. Skipping...
    +> 'Content\sample.txt' was included in the project but doesn't exist. Skipping... ### Issue diff --git a/docs/reference/errors-and-warnings/NU5117.md b/docs/reference/errors-and-warnings/NU5117.md index 3d198a771..187fb6c8b 100644 --- a/docs/reference/errors-and-warnings/NU5117.md +++ b/docs/reference/errors-and-warnings/NU5117.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Warning NU5117 -
     '$(MSBuildProjectDirectory)/tools/sample.txt' was included in the project but the path could not be resolved. Skipping...
    +> '$(MSBuildProjectDirectory)/tools/sample.txt' was included in the project but the path could not be resolved. Skipping... ### Issue diff --git a/docs/reference/errors-and-warnings/NU5118.md b/docs/reference/errors-and-warnings/NU5118.md index a8bf62a31..99b5e5242 100644 --- a/docs/reference/errors-and-warnings/NU5118.md +++ b/docs/reference/errors-and-warnings/NU5118.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Warning NU5118 -
    File 'F :\validation\test\proj\tools\readme.1.txt' is not added because the package already contains file 'tools\readme.txt'
    +> File 'F :\validation\test\proj\tools\readme.1.txt' is not added because the package already contains file 'tools\readme.txt' ### Issue diff --git a/docs/reference/errors-and-warnings/NU5119.md b/docs/reference/errors-and-warnings/NU5119.md index 619691945..8b92ad1fa 100644 --- a/docs/reference/errors-and-warnings/NU5119.md +++ b/docs/reference/errors-and-warnings/NU5119.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Warning NU5119 -
    File 'F:\project\binary\Libuv.1.10.0.nupkg' was not added to the package. Files and folders starting with '.' or ending with '.nupkg' are excluded by default. To include this file, use -NoDefaultExcludes from the commandline
    +> File 'F:\project\binary\Libuv.1.10.0.nupkg' was not added to the package. Files and folders starting with '.' or ending with '.nupkg' are excluded by default. To include this file, use -NoDefaultExcludes from the commandline ### Issue diff --git a/docs/reference/errors-and-warnings/NU5120.md b/docs/reference/errors-and-warnings/NU5120.md index bd45bd1d7..18e7a1db9 100644 --- a/docs/reference/errors-and-warnings/NU5120.md +++ b/docs/reference/errors-and-warnings/NU5120.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Warning NU5120 -
    install.ps1 script will be ignored when the package is installed after the migration.
    +> install.ps1 script will be ignored when the package is installed after the migration. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5121.md b/docs/reference/errors-and-warnings/NU5121.md index 31ee44496..f2a3aeb8f 100644 --- a/docs/reference/errors-and-warnings/NU5121.md +++ b/docs/reference/errors-and-warnings/NU5121.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Warning NU5121 -
     'content' assets will not be available when the package is installed after the migration.
    +> 'content' assets will not be available when the package is installed after the migration. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5122.md b/docs/reference/errors-and-warnings/NU5122.md index fa928b1fc..01a31181a 100644 --- a/docs/reference/errors-and-warnings/NU5122.md +++ b/docs/reference/errors-and-warnings/NU5122.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Warning NU5122 -
    XDT transform file 'tools/transform.xdt' will not be applied when the package is installed after the migration.
    +> XDT transform file 'tools/transform.xdt' will not be applied when the package is installed after the migration. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5123.md b/docs/reference/errors-and-warnings/NU5123.md index 7931c2c37..3ac6486ea 100644 --- a/docs/reference/errors-and-warnings/NU5123.md +++ b/docs/reference/errors-and-warnings/NU5123.md @@ -11,7 +11,7 @@ f1_keywords: --- # NuGet Warning NU5123 -
    The file 'content/<LongPath>/readme.txt' path, name, or both are too long. Your package might not work without long file path support. Please shorten the file path or file name.
    +> The file 'content/<LongPath>/readme.txt' path, name, or both are too long. Your package might not work without long file path support. Please shorten the file path or file name. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5124.md b/docs/reference/errors-and-warnings/NU5124.md index 39fcaec77..522840ba3 100644 --- a/docs/reference/errors-and-warnings/NU5124.md +++ b/docs/reference/errors-and-warnings/NU5124.md @@ -10,7 +10,7 @@ f1_keywords: --- # NuGet Warning NU5124 -
    The license identifier 'Microsoft-SpecialLicense' is not recognized by the current toolset.
    +> The license identifier 'Microsoft-SpecialLicense' is not recognized by the current toolset. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5125.md b/docs/reference/errors-and-warnings/NU5125.md index d6a21b797..313f74c7a 100644 --- a/docs/reference/errors-and-warnings/NU5125.md +++ b/docs/reference/errors-and-warnings/NU5125.md @@ -10,7 +10,7 @@ f1_keywords: --- # NuGet Warning NU5125 -
    The 'licenseUrl' element will be deprecated. Consider using the 'license' element instead.
    +> The 'licenseUrl' element will be deprecated. Consider using the 'license' element instead. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5126.md b/docs/reference/errors-and-warnings/NU5126.md index a91a1d10b..43224ecb2 100644 --- a/docs/reference/errors-and-warnings/NU5126.md +++ b/docs/reference/errors-and-warnings/NU5126.md @@ -10,7 +10,7 @@ f1_keywords: # NuGet Warning NU5126 -
    `project.json` pack is deprecated. Please consider migrating '{0}' to `PackageReference` and using the pack targets
    +> `project.json` pack is deprecated. Please consider migrating '{0}' to `PackageReference` and using the pack targets ### Issue diff --git a/docs/reference/errors-and-warnings/NU5127.md b/docs/reference/errors-and-warnings/NU5127.md index 8e1ba098f..9a3c2ac48 100644 --- a/docs/reference/errors-and-warnings/NU5127.md +++ b/docs/reference/errors-and-warnings/NU5127.md @@ -11,9 +11,9 @@ f1_keywords: # NuGet Warning NU5127 -
    This package does not contain a lib/ or ref/ folder, and will therefore be treated as compatible for all frameworks. Since framework specific files were found under the build/ directory for net45, netstandard2.0, consider creating the following empty files to correctly narrow the compatibility of the package:
    --lib/net45/_._
    --lib/netstandard2.0/_._
    +> This package does not contain a lib/ or ref/ folder, and will therefore be treated as compatible for all frameworks. Since framework specific files were found under the build/ directory for net45, netstandard2.0, consider creating the following empty files to correctly narrow the compatibility of the package:
    +> -lib/net45/_._
    +> -lib/netstandard2.0/_._ ### Issue diff --git a/docs/reference/errors-and-warnings/NU5128.md b/docs/reference/errors-and-warnings/NU5128.md index 7ded238b1..c2b14d33a 100644 --- a/docs/reference/errors-and-warnings/NU5128.md +++ b/docs/reference/errors-and-warnings/NU5128.md @@ -13,8 +13,8 @@ f1_keywords: ## Scenario 1 -
    Some target frameworks declared in the dependencies group of the nuspec and the lib/ref folder do not have exact matches in the other location. Consult the list of actions below:
    -- Add a dependency group for .NETStandard2.0 to the nuspec
    +> Some target frameworks declared in the dependencies group of the nuspec and the lib/ref folder do not have exact matches in the other location. Consult the list of actions below: +> - Add a dependency group for .NETStandard2.0 to the nuspec ### Issue @@ -50,8 +50,8 @@ If you do not wish your package to be compatible with the reported TFM, modify y ## Scenario 2 -
    Some target frameworks declared in the dependencies group of the nuspec and the lib/ref folder do not have exact matches in the other location. Consult the list of actions below:
    -- Add lib or ref assemblies for the netstandard2.0 target framework
    +> Some target frameworks declared in the dependencies group of the nuspec and the lib/ref folder do not have exact matches in the other location. Consult the list of actions below: +> - Add lib or ref assemblies for the netstandard2.0 target framework ### Issue diff --git a/docs/reference/errors-and-warnings/NU5129.md b/docs/reference/errors-and-warnings/NU5129.md index ccd56200c..3e75b385f 100644 --- a/docs/reference/errors-and-warnings/NU5129.md +++ b/docs/reference/errors-and-warnings/NU5129.md @@ -11,9 +11,7 @@ f1_keywords: # NuGet Warning NU5129 -``` -At least one . file was found in '//', but '//.' was not. -``` +> At least one .<extension> file was found in '<build_folder>/<tfm>/', but '<build_folder>/<tfm>/<package_id>.<extension>' was not. `` is one of: `targets`, `props`. `` is one of: `build`, `buildTransitive`, `buildCrossTargeting`, `buildMultiTargeting`. @@ -22,13 +20,16 @@ At least one . file was found in '//', but ' At least one .targets file was found in 'build/netstandard2.0/', but 'build/netstandard2.0/MyPackage.targets' was not. + +> At least one .props file was found in 'build/netstandard2.0/', but 'build/netstandard2.0/MyPackage.props' was not. + +> At least one .props file was found in 'buildTransitive/net472/', but 'buildTransitive/net472/My.Package.Id.props' was not. + +> At least one .targets file was found in 'buildMultitargeting/netcoreapp3.0/', but 'buildMultitargeting/netcoreapp3.0/Contoso.Utilities. +targets' was not. + +> At least one .props file was found in 'build/', but 'build/AdventureWorks.Tools.props' was not. ### Issue diff --git a/docs/reference/errors-and-warnings/NU5130.md b/docs/reference/errors-and-warnings/NU5130.md index e04d10328..af139a88a 100644 --- a/docs/reference/errors-and-warnings/NU5130.md +++ b/docs/reference/errors-and-warnings/NU5130.md @@ -11,8 +11,8 @@ f1_keywords: # NuGet Warning NU5130 -
    Some target frameworks declared in the dependencies group of the nuspec and the lib/ref folder have compatible matches, but not exact matches in the other location. Unless intentional, consult the list of actions below:
    -- Add a dependency group for .NETFramework4.7.2 to the nuspec
    +> Some target frameworks declared in the dependencies group of the nuspec and the lib/ref folder have compatible matches, but not exact matches in the other location. Unless intentional, consult the list of actions below: +> - Add a dependency group for .NETFramework4.7.2 to the nuspec ### Issue diff --git a/docs/reference/errors-and-warnings/NU5131.md b/docs/reference/errors-and-warnings/NU5131.md index 947cef557..26953b57d 100644 --- a/docs/reference/errors-and-warnings/NU5131.md +++ b/docs/reference/errors-and-warnings/NU5131.md @@ -11,8 +11,8 @@ f1_keywords: # NuGet Warning NU5131 -
    References were found in the nuspec, but some reference assemblies were not found in both the nuspec and ref folder. Add the following reference assemblies:
    -- Add AssemblyName.dll to the ref/net472/ directory
    +> References were found in the nuspec, but some reference assemblies were not found in both the nuspec and ref folder. Add the following reference assemblies: +> - Add AssemblyName.dll to the ref/net472/ directory ### Issue diff --git a/docs/reference/errors-and-warnings/NU5133.md b/docs/reference/errors-and-warnings/NU5133.md index 2cf0963d3..ea8282dda 100644 --- a/docs/reference/errors-and-warnings/NU5133.md +++ b/docs/reference/errors-and-warnings/NU5133.md @@ -14,7 +14,7 @@ f1_keywords: ## Example -
    Warning NU5133: NuGet.exe file on path \Downloads\nuget.exe needs to be unblocked after downloading.
    +> Warning NU5133: NuGet.exe file on path \Downloads\nuget.exe needs to be unblocked after downloading. ### Issue When downloading a file on Windows, in this case nuget.exe, through a web browser, the `Mark Of The Web` may be added. diff --git a/docs/reference/errors-and-warnings/NU5501.md b/docs/reference/errors-and-warnings/NU5501.md index f6591f8d3..0df5db23b 100644 --- a/docs/reference/errors-and-warnings/NU5501.md +++ b/docs/reference/errors-and-warnings/NU5501.md @@ -14,7 +14,7 @@ f1_keywords: ## Scenario 1 -
    The following dependency group(s) require(s) dots in the framework version: net50-windows7.0
    +> The following dependency group(s) require(s) dots in the framework version: net50-windows7.0 ### Issue @@ -48,7 +48,7 @@ Change `net50` to `net5.0`. ## Scenario 2 -
    The following packaged file folder(s) require(s) dots in the framework version: contentFiles/any/net50/a.img. 
    +> The following packaged file folder(s) require(s) dots in the framework version: contentFiles/any/net50/a.img. ### Issue From 44fca654bdf095c149fe2576c035d606a41abc36 Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Sun, 4 Aug 2024 19:40:47 -0700 Subject: [PATCH 861/988] recommend usage of trusted package sources (#3318) --- docs/concepts/Security-Best-Practices.md | 2 +- .../consuming-packages-authenticated-feeds.md | 8 ++++++-- docs/reference/cli-reference/cli-ref-sources.md | 5 ++++- docs/reference/nuget-config-file.md | 8 +++++--- 4 files changed, 16 insertions(+), 7 deletions(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 2ead7aa6f..9d232c23e 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -117,7 +117,7 @@ For more information about Dependabot alerts & security updates, [see the follow **📦 Package Consumer** -When using multiple public & private NuGet source feeds, a package can be downloaded from any of the feeds. To ensure your build is predictable and secure from known attacks such as [Dependency Confusion](https://medium.com/@alex.birsan/dependency-confusion-4a5d60fec610), knowing what specific feed(s) your packages are coming from is a best practice. You can use a single feed or private feed with upstreaming capabilities for protection. +Use package sources that you trust. When using multiple public & private NuGet source feeds, a package can be downloaded from any of the feeds. To ensure your build is predictable and secure from known attacks such as [Dependency Confusion](https://medium.com/@alex.birsan/dependency-confusion-4a5d60fec610), knowing what specific feed(s) your packages are coming from is a best practice. You can use a single feed or private feed with upstreaming capabilities for protection. For more information to secure your package feeds, see [3 Ways to Mitigate Risk When Using Private Package Feeds](https://azure.microsoft.com/resources/3-ways-to-mitigate-risk-using-private-package-feeds/en-us/). diff --git a/docs/consume-packages/consuming-packages-authenticated-feeds.md b/docs/consume-packages/consuming-packages-authenticated-feeds.md index 6382c6b95..59ab8a14f 100644 --- a/docs/consume-packages/consuming-packages-authenticated-feeds.md +++ b/docs/consume-packages/consuming-packages-authenticated-feeds.md @@ -10,6 +10,10 @@ ms.topic: conceptual # Consuming packages from authenticated feeds Many NuGet operations, such as restore and install, require communication with one or more package sources, which [can be configured in *nuget.config* files](../reference/nuget-config-file.md#packagesources). + +> [!NOTE] +> Use package sources that you trust. + For HTTP feeds, NuGet will make an unauthenticated request, and if the server responds with an HTTP 401 response, NuGet will search for credentials in the following order: 1. [An environment variable `NuGetPackageSourceCredentials_{name}`](#credentials-in-environment-variables). @@ -37,11 +41,11 @@ This approach provides an extra layer of security by storing the credentials in For more information, refer to the section on [credentials in *nuget.config* files](#credentials-in-nugetconfig-files). > [!NOTE] - > Be aware that encrypted passwords are only supported on Windows. + > Be aware that encrypted passwords are only supported on Windows. > Moreover, they can only be decrypted on the same machine and by the same user who originally encrypted them. 1. **Using Environment Variable Macros in nuget.config**: If using encrypted credentials is not possible, consider storing the credentials in the *nuget.config* file with environment variable macros. -This approach allows you to reference environment variables that contain the actual credentials. +This approach allows you to reference environment variables that contain the actual credentials. It enhances transparency and helps end users understand how their credentials are configured. For more information, refer to the section on [credentials in *nuget.config* files](#credentials-in-nugetconfig-files). diff --git a/docs/reference/cli-reference/cli-ref-sources.md b/docs/reference/cli-reference/cli-ref-sources.md index fd93f4d7e..827cdb3c4 100644 --- a/docs/reference/cli-reference/cli-ref-sources.md +++ b/docs/reference/cli-reference/cli-ref-sources.md @@ -13,6 +13,9 @@ ms.topic: reference Manages the list of sources located in the user scope configuration file or a specified configuration file. The user scope configuration file is located at `%appdata%\NuGet\NuGet.Config` (Windows) and `~/.nuget/NuGet/NuGet.Config` (Mac/Linux). +> [!NOTE] +> Use package sources that you trust. + Note that the source URL for nuget.org is `https://api.nuget.org/v3/index.json`. ## Usage @@ -54,7 +57,7 @@ where `` is one of *List, Add, Remove, Enable, Disable,* or *Update*, Specifies the password for authenticating with the source. > [!NOTE] - > Be aware that encrypted passwords are only supported on Windows. + > Be aware that encrypted passwords are only supported on Windows. > Moreover, they can only be decrypted on the same machine and by the same user who originally encrypted them. - **`-src|-Source`** diff --git a/docs/reference/nuget-config-file.md b/docs/reference/nuget-config-file.md index c82f127ed..ee6fed91e 100644 --- a/docs/reference/nuget-config-file.md +++ b/docs/reference/nuget-config-file.md @@ -117,7 +117,7 @@ Lists all known package sources. The order is ignored during restore operations | :-- | :-- | | **Key** | (name to assign to the package source) | | **Value** | The path or URL of the package source. | -| **protocolVersion** | The NuGet server protocol version to be used. The current version is "3". Defaults to version "2" when not pointing to a package source URL ending in `.json` (e.g. https://api.nuget.org/v3/index.json). Supported in [NuGet 3.0+](/nuget/release-notes/nuget-3.0.0). See [NuGet Server API](/nuget/api/overview) for more information about the version 3 protocol. | +| **protocolVersion** | The NuGet server protocol version to be used. The current version is "3". Defaults to version "2" when not pointing to a package source URL ending in `.json` (e.g. ). Supported in [NuGet 3.0+](/nuget/release-notes/nuget-3.0.0). See [NuGet Server API](/nuget/api/overview) for more information about the version 3 protocol. | | **allowInsecureConnections** | When false, or not specified, NuGet will emit a warning when the source uses http, rather than https. If you are confident that communication with this source will never be at risk of interception attacks, you can set the value to true to suppress the warning. Supported in NuGet 6.8+. | | **disableTLSCertificateValidation** | This configuration property allows you to disable SSL/TLS certificate validation for your HTTPS server. When set to true, the server will ignore any errors related to SSL/TLS certificates, such as expired or self-signed certificates, and establish the connection without validation. Supported in NuGet 6.11+. | @@ -134,6 +134,9 @@ Lists all known package sources. The order is ignored during restore operations ``` +> [!NOTE] +> Use package sources that you trust. + > [!NOTE] > When using the CLI, you can express a [`RestoreSources`](../reference/msbuild-targets.md#restore-properties) MSBuild property or [`--source`(.NET CLI)](/dotnet/core/tools/dotnet-restore#options) | [`-Source`(NuGet CLI)](/nuget/reference/cli-reference/cli-ref-restore#options) to override the `` defined in the NuGet.config. @@ -303,7 +306,7 @@ Identifies to the currently active source or indicates the aggregate of all sour ## trustedSigners section -Stores trusted signers used to allow package while installing or restoring. This list cannot be empty when the user sets `signatureValidationMode` to `require`. +Stores trusted signers used to allow package while installing or restoring. This list cannot be empty when the user sets `signatureValidationMode` to `require`. This section can be updated with the [`nuget trusted-signers` command](../reference/cli-reference/cli-ref-trusted-signers.md). @@ -439,7 +442,6 @@ The table below show environnment variable syntax and path separator support for | `$MY_VAR` | `/` | No | No | No | No | | `$MY_VAR` | `\` | No | No | No | No | - ## Example config file Below is an example `nuget.config` file that illustrates a number of settings including optional ones: From 8eeac5dfa824ee7e40cb111f02f28e508c38ff64 Mon Sep 17 00:00:00 2001 From: Martin Ruiz Date: Wed, 7 Aug 2024 11:39:17 -0700 Subject: [PATCH 862/988] Release notes 6.10.2 (#3329) * Release notes for 6.10.2 * fix link * Update compare link --------- Co-authored-by: Nigusu Solomon Yenework <59111203+Nigusu-Allehu@users.noreply.github.com> --- docs/release-notes/NuGet-6.10.md | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/docs/release-notes/NuGet-6.10.md b/docs/release-notes/NuGet-6.10.md index 1db0940b4..a8eca0db0 100644 --- a/docs/release-notes/NuGet-6.10.md +++ b/docs/release-notes/NuGet-6.10.md @@ -12,7 +12,17 @@ NuGet distribution vehicles: | NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | |:---|:---|:---| -| [**6.10.1**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.10](https://visualstudio.microsoft.com/downloads/) | [8.0.3xx](https://dotnet.microsoft.com/download/dotnet/8.0)1 | +| [**6.10.2**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.10](https://visualstudio.microsoft.com/downloads/) | [8.0.3xx](https://dotnet.microsoft.com/download/dotnet/8.0)1 | + +1 Installed with Visual Studio 2022 with any .NET workload + +## Summary: What's New in 6.10.2 + +### Issues fixed in this release + +* Revert Enable central package management implicitly when Directory.Packages.props exists - [#11834](https://github.com/NuGet/Home/issues/11834) + +[List of commits in this release](https://github.com/NuGet/NuGet.Client/compare/6.10.1.5...6.10.2.8) 1 Installed with Visual Studio 2022 with any .NET workload @@ -201,4 +211,4 @@ Thank you to all the contributors who helped make this NuGet release awesome! * [5673](https://github.com/NuGet/NuGet.Client/pull/5673) Enable publishing in VMR * [5625](https://github.com/NuGet/NuGet.Client/pull/5625) Eliminate System.CommandLine prebuilt package * [brianrob](https://github.com/NuGet/NuGet.Client/pull/5650) - * [5650](https://github.com/NuGet/NuGet.Client/pull/5650) Add Restore Instrumentation \ No newline at end of file + * [5650](https://github.com/NuGet/NuGet.Client/pull/5650) Add Restore Instrumentation From 86705bde69f479172dbd678d2f820d58d81695fc Mon Sep 17 00:00:00 2001 From: Martin Ruiz Date: Mon, 12 Aug 2024 16:03:01 -0700 Subject: [PATCH 863/988] Release notes for 6.11 (#3330) * release notes for 6.11 --- docs/TOC.md | 1 + docs/release-notes/NuGet-6.11.md | 99 ++++++++++++++++++++++++++++++++ 2 files changed, 100 insertions(+) create mode 100644 docs/release-notes/NuGet-6.11.md diff --git a/docs/TOC.md b/docs/TOC.md index 965cbdedb..4296bca8d 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -341,6 +341,7 @@ ### [Known Issues](release-notes/known-issues.md) ### NuGet 6.x +#### [NuGet 6.11](release-notes/NuGet-6.11.md) #### [NuGet 6.10](release-notes/NuGet-6.10.md) #### [NuGet 6.9](release-notes/NuGet-6.9.md) #### [NuGet 6.8](release-notes/NuGet-6.8.md) diff --git a/docs/release-notes/NuGet-6.11.md b/docs/release-notes/NuGet-6.11.md new file mode 100644 index 000000000..dc7489ef0 --- /dev/null +++ b/docs/release-notes/NuGet-6.11.md @@ -0,0 +1,99 @@ +--- +title: NuGet 6.11 Release Notes +description: Release notes for NuGet 6.11 including new features, bug fixes, and DCRs. +author: martinrrm +ms.date: 8/13/2024 +ms.topic: conceptual +--- +# NuGet 6.11 Release Notes + +NuGet distribution vehicles: + +| NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | +|:---|:---|:---| +| [**6.11**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.11](https://visualstudio.microsoft.com/downloads/) | [8.0.4xx](https://dotnet.microsoft.com/download/dotnet/8.0)1 | + +1 Installed with Visual Studio 2022 with any .NET workload + +## Summary: What's New in 6.11 + +* Suppress NuGetAudit warnings for specific advisories for PackageReference projects - [#13679](https://github.com/NuGet/Home/issues/13679) + +* Add `--allow-insecure-connections` option to dotnet SDK - [#13396](https://github.com/NuGet/Home/issues/13396) + +* Swap authors for owners in Visual Studio Package Manager UI - [#12501](https://github.com/NuGet/Home/issues/12501) + +* [Feature]: add dotnet nuget why to dotnet CLI - [#11943](https://github.com/NuGet/Home/issues/11943) + +* NuGet cannot restore from HTTPS sources that have SSL certificate problems - [#4387](https://github.com/NuGet/Home/issues/4387) + +### Breaking changes + +* `MSBuildRestoreUtility.GetRestoreAuditProperties` needs a breaking change to read `NuGetAuditSuppress` items - [#13313](https://github.com/NuGet/Home/issues/13313) + +### Issues fixed in this release + +* IVsNuGetProjectUpdateEvents.ProjectUpdateStarted or ProjectUpdateFinished should only provide a list of files that will get changed. - [#13413](https://github.com/NuGet/Home/issues/13413) + +* `dotnet nuget` commands should not output usage information on all errors - [#13251](https://github.com/NuGet/Home/issues/13251) + +* [DCR]: NuGet causes many ArgumentExceptions to be thrown & caught in VS - [#11535](https://github.com/NuGet/Home/issues/11535) + +* Remove .NET Framework TFM from NuGet.CommandLine.XPlat - [#8452](https://github.com/NuGet/Home/issues/8452) + +* PERF: GetPackageInfo allocates by unnecessarily calling GetNupkgMetadataPath - [#13556](https://github.com/NuGet/Home/issues/13556) + +* 'dotnet nuget why' crashes when using --framework option - [#13547](https://github.com/NuGet/Home/issues/13547) + +* SignatureUtility.GetCertificates in NuGet.Client can skip calling Dispose on error - [#13535](https://github.com/NuGet/Home/issues/13535) + +* 'dotnet nuget why' does not work when a directory is provided for the 'Path' argument - [#13527](https://github.com/NuGet/Home/issues/13527) + +* NuGet IntelliCode Package Suggestions are missing Author in packages list - [#13515](https://github.com/NuGet/Home/issues/13515) + +* Rebuilding in VS causes unnecessary restores - [#13505](https://github.com/NuGet/Home/issues/13505) + +* MSB4181: The "Restore Task" task returned false but did not log an error. - [#13460](https://github.com/NuGet/Home/issues/13460) + +* TaskResultCache incorrectly shares the same lock object for all the keys. - [#13448](https://github.com/NuGet/Home/issues/13448) + +* Calls to CompareTo and Equals should not allocate - [#13442](https://github.com/NuGet/Home/issues/13442) + +* Enable Nullable and throw in KnownOwnerViewModel - [#13425](https://github.com/NuGet/Home/issues/13425) + +* `PackageSourceProvider.UpdatePackageSource` doesn't respect a value from `disableTLSCertificateValidation` attribute - [#13423](https://github.com/NuGet/Home/issues/13423) + +* `PackageSourceProvider.UpdatePackageSource` doesn't respect a value from `AllowInsecureConnection` field - [#13418](https://github.com/NuGet/Home/issues/13418) + +* "nuget install -ExcludeVersion" inaccurate reports "already installed" when trying to install older version - [#13334](https://github.com/NuGet/Home/issues/13334) + +* Vulnerability InfoBar remains visible in the Solution Explorer after closing solution - [#13055](https://github.com/NuGet/Home/issues/13055) + +[List of commits in this release](https://github.com/NuGet/NuGet.Client/compare/6.11.0.122...6.10.1.5) + +### Community contributions + +Thank you to all the contributors who helped make this NuGet release awesome! + +* [seclerp](https://github.com/seclerp) + * [5783](https://github.com/NuGet/NuGet.Client/pull/5783) Fix `PackageSourceProvider.UpdatePackageSource` doesn't respect a value from `DisableTLSCertificateValidation` field + * [5767](https://github.com/NuGet/NuGet.Client/pull/5767) Fix `PackageSourceProvider.UpdatePackageSource` doesn't respect a value from `AllowInsecureConnection` field +* [mmitche](https://github.com/mmitche) + * [5749](https://github.com/NuGet/NuGet.Client/pull/5749) Build NuGet from the VMR + * [5752](https://github.com/NuGet/NuGet.Client/pull/5752) Fixup signing support conditional +* [ToddGrun](https://github.com/ToddGrun) + * [5859](https://github.com/NuGet/NuGet.Client/pull/5859) Reduce allocations in GetPackageInfo by conditionally calling GetNupkgMetadataPath +* [omajid](https://github.com/omajid) + * [5848](https://github.com/NuGet/NuGet.Client/pull/5848) Dispose certificates on failure in SignatureUtility.GetCertificates +* [SimonCropp](https://github.com/SimonCropp) + * [5842](https://github.com/NuGet/NuGet.Client/pull/5842) remove redundant .GetTypeInfo() +* [ryanmolden](https://github.com/ryanmolden) + * [5834](https://github.com/NuGet/NuGet.Client/pull/5834) Eliminate first-chance ArgumentExceptions when querying a legacy project for properties that don't exist via DTE +* [hickford](https://github.com/hickford) + * [5743](https://github.com/NuGet/NuGet.Client/pull/5743) Correct message in the case that a higher version of package is already installed +* [ViktorHofer](https://github.com/ViktorHofer) + * [5764](https://github.com/NuGet/NuGet.Client/pull/5764) Use .NET SDK sourcelink integration +* [NikolaMilosavljevic](https://github.com/NikolaMilosavljevic) + * [5738](https://github.com/NuGet/NuGet.Client/pull/5738) Disable CA2022 errors +* [jv42](https://github.com/jv42) + * [5717](https://github.com/NuGet/NuGet.Client/pull/5717) Fixed NullReferenceException in ResolverComparer From 57cf76b3397660b6e862f0ad80d5e42bb64b0fa8 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Wed, 14 Aug 2024 08:15:08 +0930 Subject: [PATCH 864/988] Create NU1508 (#3333) --- docs/TOC.md | 2 ++ docs/reference/Errors-and-Warnings.md | 2 +- docs/reference/errors-and-warnings/NU1508.md | 26 ++++++++++++++++++++ 3 files changed, 29 insertions(+), 1 deletion(-) create mode 100644 docs/reference/errors-and-warnings/NU1508.md diff --git a/docs/TOC.md b/docs/TOC.md index 4296bca8d..245df7df1 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -183,6 +183,8 @@ ### [NU1504](reference/errors-and-warnings/NU1504.md) ### [NU1505](reference/errors-and-warnings/NU1505.md) ### [NU1506](reference/errors-and-warnings/NU1506.md) +### [NU1507](reference/errors-and-warnings/NU1507.md) +### [NU1508](reference/errors-and-warnings/NU1508.md) ### [NU1601](reference/errors-and-warnings/NU1601.md) ### [NU1602](reference/errors-and-warnings/NU1602.md) ### [NU1603](reference/errors-and-warnings/NU1603.md) diff --git a/docs/reference/Errors-and-Warnings.md b/docs/reference/Errors-and-Warnings.md index ff75abcec..e848f3094 100644 --- a/docs/reference/Errors-and-Warnings.md +++ b/docs/reference/Errors-and-Warnings.md @@ -43,7 +43,7 @@ NuGet supports the following configuration properties. | Group | Warning numbers | | --- | --- | -| Invalid input warnings | [NU1501](./errors-and-warnings/NU1501.md), [NU1502](./errors-and-warnings/NU1502.md), [NU1503](./errors-and-warnings/NU1503.md), [NU1504](./errors-and-warnings/NU1504.md), [NU1505](./errors-and-warnings/NU1505.md), [NU1506](./errors-and-warnings/NU1506.md), [NU1507](./errors-and-warnings/NU1507.md) | +| Invalid input warnings | [NU1501](./errors-and-warnings/NU1501.md), [NU1502](./errors-and-warnings/NU1502.md), [NU1503](./errors-and-warnings/NU1503.md), [NU1504](./errors-and-warnings/NU1504.md), [NU1505](./errors-and-warnings/NU1505.md), [NU1506](./errors-and-warnings/NU1506.md), [NU1507](./errors-and-warnings/NU1507.md), [NU1508](./errors-and-warnings/NU1508.md) | | Unexpected package version warnings | [NU1601](./errors-and-warnings/NU1601.md), [NU1602](./errors-and-warnings/NU1602.md), [NU1603](./errors-and-warnings/NU1603.md), [NU1604](./errors-and-warnings/NU1604.md), [NU1605](./errors-and-warnings/NU1605.md), [NU1606](./errors-and-warnings/NU1108.md), [NU1607](./errors-and-warnings/NU1107.md) | | Resolver conflict warnings | [NU1608](./errors-and-warnings/NU1608.md) | | Package fallback warnings | [NU1701](./errors-and-warnings/NU1701.md), [NU1702](./errors-and-warnings/NU1702.md), [NU1703](./errors-and-warnings/NU1703.md)| diff --git a/docs/reference/errors-and-warnings/NU1508.md b/docs/reference/errors-and-warnings/NU1508.md new file mode 100644 index 000000000..542939894 --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1508.md @@ -0,0 +1,26 @@ +--- +title: NuGet Warning NU1508 +description: NU1508 warning code +author: zivkan +ms.author: zivkan +ms.date: 08/10/2024 +ms.topic: reference +f1_keywords: + - "NU1508" +--- + +# NuGet Warning NU1508 + +## Scenario 1 + +> Duplicate 'NuGetAuditSuppress' items found. Remove the duplicate items or use the Update functionality to ensure a consistent restore behavior. The duplicate 'NuGetAuditSuppress' items are: https://contoso.test/cve/1 , https://contoso.test/cve/1 . + +### Issue + +Sometimes when adding `NuGetAuditSuppress` items, you may end up adding an item for a particular package multiple times. + +MSBuild projects commonly import multiple `.props` and `.targets` files, so the duplicates might not be in the same file, but may be in included files, such as `Directory.Build.props`, `Directory.Packages.props`, or `Directory.Build.targets`. + +### Solution + +Remove the duplicate item, so that it's included exactly once. From 9a8e29343f8dfdc2a6bd1d96fddbd7249b135c61 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Sun, 18 Aug 2024 07:59:42 +0930 Subject: [PATCH 865/988] Update NuGetAuditSuppress info in NU1901-4 docs (#3332) --- docs/reference/errors-and-warnings/NU1901-NU1904.md | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/docs/reference/errors-and-warnings/NU1901-NU1904.md b/docs/reference/errors-and-warnings/NU1901-NU1904.md index e0c986676..08ef6fd06 100644 --- a/docs/reference/errors-and-warnings/NU1901-NU1904.md +++ b/docs/reference/errors-and-warnings/NU1901-NU1904.md @@ -47,14 +47,7 @@ For example, `high`. If you would like to suppress a specific advisory, add an MSBuild [NuGetAuditSuppress](../../concepts/Auditing-Packages.md#excluding-advisories) item. For example ``. +`NuGetAuditSuppress` is available from VS 17.11 and .NET 8.0.400 SDK for projects using `PackageReference`, and from VS 17.12 for projects using `packages.config`. If you do not want NuGet to check for packages with known vulnerabilities during restore, add `false` inside a `` in your project file, or a [`Directory.Build.props` file](/visualstudio/msbuild/customize-by-directory). If you would like to run NuGet Audit on developer machines, but disable it on CI pipelines, you can take advantage of MSBuild importing environment variables, and create a NuGetAudit environment variable set to `false` in your pipeline definition. - -> [!NOTE] -> The initial release of NuGetAudit [does not provide a way to suppress specific advisories (URLs)](https://github.com/NuGet/Home/issues/11926). -> It is a feature we intend on adding based on prioritization of other improvements. -> -> As a mitigation, you can add an appropriate `NoWarn` to your `PackageReference` declarations. -> For example, ``. -> However, be aware that this will prevent new vulnerabilities of the same severity from being reported to you. From c8cb9d9cee603b1bdf6ea1bd0eb1089dbc074317 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Thu, 22 Aug 2024 17:40:29 +0930 Subject: [PATCH 866/988] Say what version of NuGet auditSources is available in config reference (#3334) --- docs/concepts/Auditing-Packages.md | 18 +++++++-------- .../errors-and-warnings/NU1901-NU1904.md | 2 +- docs/reference/nuget-config-file.md | 1 + docs/release-notes/NuGet-6.12.md | 22 +++++++++++++++++++ 4 files changed, 33 insertions(+), 10 deletions(-) create mode 100644 docs/release-notes/NuGet-6.12.md diff --git a/docs/concepts/Auditing-Packages.md b/docs/concepts/Auditing-Packages.md index 1f7db10bf..c2e03d2e5 100644 --- a/docs/concepts/Auditing-Packages.md +++ b/docs/concepts/Auditing-Packages.md @@ -22,11 +22,11 @@ We also have a [blog post](https://devblogs.microsoft.com/nuget/nugetaudit-2-0-e | NuGet | .NET SDK | Visual Studio | Feature | |-------|----------|---------------|---------| -| 5.9 | .NET 5 SDK (5.0.200) | N/A | [`dotnet list package --vulnerable`](#dotnet-list-package---vulnerable) | -| 6.8 | .NET 8 SDK (8.0.100) | Visual Studio 2022 17.8 | [NuGetAudit](#running-a-security-audit-with-restore) for PackageReference | -| 6.10 | N/A | Visual Studio 2022 17.10 | [NuGetAudit](#running-a-security-audit-with-restore) for packages.config| -| 6.11 | .NET 8 SDK (8.0.400) | Visual Studio 2022 17.11 | [NuGetAuditSuppress](#excluding-advisories) for PackageReference | -| 6.12 | .NET 9 SDK (9.0.100) | Visual Studio 2022 17.12 | [Audit sources](#audit-sources). [NuGetAuditSuppress](#excluding-advisories) for packages.config. | +| [5.9](../release-notes/NuGet-5.9.md) | .NET 5 SDK (5.0.200) | N/A | [`dotnet list package --vulnerable`](#dotnet-list-package---vulnerable) | +| [6.8](../release-notes/NuGet-6.8.md) | .NET 8 SDK (8.0.100) | Visual Studio 2022 17.8 | [NuGetAudit](#running-a-security-audit-with-restore) for PackageReference | +| [6.10](../release-notes/NuGet-6.10.md) | N/A | Visual Studio 2022 17.10 | [NuGetAudit](#running-a-security-audit-with-restore) for packages.config| +| [6.11](../release-notes/NuGet-6.11.md) | .NET 8 SDK (8.0.400) | Visual Studio 2022 17.11 | [NuGetAuditSuppress](#excluding-advisories) for PackageReference | +| [6.12](../release-notes/NuGet-6.12.md) | .NET 9 SDK (9.0.100) | Visual Studio 2022 17.12 | [Audit sources](#audit-sources). [NuGetAuditSuppress](#excluding-advisories) for packages.config. | ## Running a security audit with `restore` @@ -48,7 +48,7 @@ We recommend that audit is configured at a repository level. | NuGetAuditLevel | low | `low`, `moderate`, `high`, and `critical` | The minimum severity level to report. If you'd like to see `moderate`, `high`, and `critical` advisories (exclude `low`), set the value to `moderate` | | NuGetAudit | true | `true` and `false` | If you wish to not receive security audit reports, you can opt-out of the experience entirely by setting the value to `false` | -(1) NuGetAuditMode defaulted to `direct` when it was introduced in the .NET 8.0.100 SDK and VS 17.8. In .NET 9.0.100 SDK and VS 17.12 the default changed to `all`. +(1) NuGetAuditMode defaulted to `direct` when it was introduced in [the .NET 8.0.100 SDK and VS 17.8](../release-notes/NuGet-6.8.md). In [.NET 9.0.100 SDK and VS 17.12](../release-notes/NuGet-6.12.md) the default changed to `all`. #### Audit Sources @@ -70,7 +70,7 @@ Note that the [V2 protocol is deprecated](../nuget-org/overview-nuget-org.md#api ``` -Audit sources are available from NuGet 6.12, .NET 9.0.100 SDK, and Visual Studio 2022 17.12. +Audit sources are available from [NuGet 6.12, .NET 9.0.100 SDK, and Visual Studio 2022 17.12](../release-notes/NuGet-6.12.md). Prior to this version, NuGet Audit will only use package sources to download vulnerability information. Audit sources are not used by `dotnet list package --vulnerable` at this time. @@ -87,8 +87,8 @@ Define a `NuGetAuditSuppress` item with the `Include=` metadata set to the advis Similar to the other NuGet audit configuration properties, `NuGetAuditSuppress` items can be defined at the project or repository level. -`NuGetAuditSuppress` is available for PackageReference projects starting from NuGet 6.11, Visual Studio 17.11, and the .NET 8.0.400 SDK. -It is available for packages.config with Visual Studio 17.12 and NuGet 6.12. +`NuGetAuditSuppress` is available for PackageReference projects starting from [NuGet 6.11, Visual Studio 17.11, and the .NET 8.0.400 SDK](../release-notes/NuGet-6.11.md). +It is available for packages.config from [Visual Studio 17.12 and NuGet 6.12](../release-notes/NuGet-6.12.md). ### Warning codes diff --git a/docs/reference/errors-and-warnings/NU1901-NU1904.md b/docs/reference/errors-and-warnings/NU1901-NU1904.md index 08ef6fd06..3f92de711 100644 --- a/docs/reference/errors-and-warnings/NU1901-NU1904.md +++ b/docs/reference/errors-and-warnings/NU1901-NU1904.md @@ -47,7 +47,7 @@ For example, `high`. If you would like to suppress a specific advisory, add an MSBuild [NuGetAuditSuppress](../../concepts/Auditing-Packages.md#excluding-advisories) item. For example ``. -`NuGetAuditSuppress` is available from VS 17.11 and .NET 8.0.400 SDK for projects using `PackageReference`, and from VS 17.12 for projects using `packages.config`. +`NuGetAuditSuppress` is available from [VS 17.11 and .NET 8.0.400 SDK](../../release-notes/NuGet-6.11.md) for projects using `PackageReference`, and from [VS 17.12](../../release-notes/NuGet-6.12.md) for projects using `packages.config`. If you do not want NuGet to check for packages with known vulnerabilities during restore, add `false` inside a `` in your project file, or a [`Directory.Build.props` file](/visualstudio/msbuild/customize-by-directory). If you would like to run NuGet Audit on developer machines, but disable it on CI pipelines, you can take advantage of MSBuild importing environment variables, and create a NuGetAudit environment variable set to `false` in your pipeline definition. diff --git a/docs/reference/nuget-config-file.md b/docs/reference/nuget-config-file.md index ee6fed91e..355d1b37a 100644 --- a/docs/reference/nuget-config-file.md +++ b/docs/reference/nuget-config-file.md @@ -147,6 +147,7 @@ Lists all known package sources. The order is ignored during restore operations Lists all known audit sources, which [NuGet Audit](../concepts/Auditing-Packages.md#running-a-security-audit-with-restore) will use during restore. If no audit sources are provided, restore will use package sources and suppress [NU1905](../reference/errors-and-warnings/NU1905.md). +`auditSources` was added to [NuGet 6.12](../release-notes/NuGet-6.12.md). Audit sources support the same attributes as `packageSources` (`protocolVersion`, `allowInsecureConnections`), and sources that require authentication are configured with `packageSourceCredentials`, the same way as `packageSources`. diff --git a/docs/release-notes/NuGet-6.12.md b/docs/release-notes/NuGet-6.12.md new file mode 100644 index 000000000..17b55019b --- /dev/null +++ b/docs/release-notes/NuGet-6.12.md @@ -0,0 +1,22 @@ +--- +title: NuGet 6.12 Release Notes +description: Release notes for NuGet 6.12 including new features, bug fixes, and DCRs. +author: zivkan +ms.date: 8/19/2024 +ms.topic: conceptual +--- +# NuGet 6.12 Release Notes + + + +NuGet distribution vehicles: + +| NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | +|:---|:---|:---| +| [**6.12**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.12](https://visualstudio.microsoft.com/downloads/) | [9.0.1xx](https://dotnet.microsoft.com/download/dotnet/9.0)1 | + +1 Installed with Visual Studio 2022 with any .NET workload + +## Not yet released + +This version of NuGet is in preview and these release notes will be updated when it is released. From 50aa4c833406887f42d5d3131dfb3419d47878cd Mon Sep 17 00:00:00 2001 From: Mike Jones Date: Tue, 10 Sep 2024 12:23:44 -0700 Subject: [PATCH 867/988] SFI remediation - Updated images, removed orphaned image (#3337) * Remove orphaned image * SFI image updates * SFI image updates * SFI image updates --- .../nuget-org/media/nuget-org-permissions.png | Bin 99072 -> 82712 bytes .../media/nuget-org-register-2fa.png | Bin 17269 -> 0 bytes docs/nuget-org/media/nuget-org-register.png | Bin 43226 -> 45287 bytes docs/nuget-org/media/unmanaged-aad-tenant.png | Bin 116440 -> 171011 bytes docs/reference/media/registered-certs.png | Bin 9177 -> 15934 bytes 5 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 docs/nuget-org/media/nuget-org-register-2fa.png diff --git a/docs/nuget-org/media/nuget-org-permissions.png b/docs/nuget-org/media/nuget-org-permissions.png index 024b5ecce31fb37ad9a6f04b8502ab40c13dd875..6ab466f4d5343c39a0c28d9b33426247c4311229 100644 GIT binary patch delta 73338 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 U55=^u+Qzopr02n%4jsO4v literal 99072 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
    W0*}b1ncTAt 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 diff --git a/docs/nuget-org/media/nuget-org-register-2fa.png b/docs/nuget-org/media/nuget-org-register-2fa.png deleted file mode 100644 index eadbdcb645669a5b5ce1a6c1d13c513d108c5d92..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17269 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�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 diff --git a/docs/nuget-org/media/nuget-org-register.png b/docs/nuget-org/media/nuget-org-register.png index b159da110ca6298f8d4a9fd41d7526743d8708b2..bed06b4595de3734054361fd97e04a83762bf99e 100644 GIT binary patch delta 36435 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 rW|FlThv`_-i?*@zxd>!P&vE;tr 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%0A=9I3nCx>Kq9l!}#+Q?0;Tv z6pDp&V0w&el+~}*-F}Gs%CBY^O%4owc7@%}Z?)~KJoS==rE)WGduSD6)+~(%2Qjlk zO&xUq#lGBXeV&Dwvv9!HFY;R+l#6itv^=Ez29G7L`h@)IJO0l~ad&*XV!^DRBLx&! z&3HK@QP;pt9({jUPw~t=I7C!sNYDS5Put?*nbN|%pi^PW4;(id*(z7196cV{C`w-S zF2kCvl}^fUadP?>C%3mp(3U#GDjK#bvg|GO7uow3Ekb1CidA7%qU|mYd<90T%&(5$ z76g2aEX&`OdU7&DE+(=Ax4u||8){ml#b?hoK86^TJkP00bzZExAbwa0PWXu= zhZWu;ms$5t1z(-b*f*g%1Z_$XHdeP%#Yh#$ThN~bjq^LiROay}~xhSccfFu79yagUPhDP z{pp77^s_;|+nyV~QMz#*s+VtUxut*gaud}e7^;souB$DZjt}q7`gzFnZ!^bx3OCi< z+Nz1T%?{9pJ0g($q-dS|g$aR$Eb_Q7-%3+GLJb~-=gbNX4&;wYQ^A6pJsOV{6OGZE zIz0Cs9t(wODfKG1SLgT+*RBUkdn`|zOE0dDc)Uw&IR_95cz zt1N{T0+Qd~7iNO$9=6Y%9>t2RP%J0%{X2&kEyFdY9s3+{;n(i6eN$jx2kL9%_b}oq z)$wUgPVfe;Ni)S({m{_bJ@4Ei`0RZw&KTn%$*+3Rrzka?^Fz{mgqsQe{M_cWtkp)Y z;d@fj0+b4oiSuk9~Hoe6S_$i{*OblNw#6xE8+pww1>?kbwBrsr{!>X0@*}^pe8$ zgtxvbU_^C=gyk@rV0_Gr-y80maUaV(x!l%QVX2kP!7r^|zOjTF^>uZ75IsD(NVjnd z1Bp*2P|=mZ%K9oddc&PK z$YdX+JQiQJCn<;9-Nc~Mm~w4GPsBl;>K>mBTU>TyY)U7K-C36)E9TZr`n#uU{}VXy zc1)|6y?0pR`#RCw`|xGJcEBi+e#-BKSAXFKw;@cL`&05jYlA0cEv%xZ{CN(f-p}b> zwj-!l3cA~MFu?TmbEzF~waOwBdy~GkJVSY!iLC}(M^^52lB?fLQNP&+cX>IpYR3Ih z=95!Gsj*uF6>sYZKWB<7YPMT%Y4Wejsl1>$#D%qn(H5qE0CE7w=*RA5O#?4`^xnKj zP$TS`>2my&4uqJSmSU{eW!5F3pu@WP#W@{S6V5`X06PIo+pgbjmY~vXW=LBpLU6q} zrTW2Oj@OyGu&@T&!n|*Q#jDFvx7gNN+oN(d?mtmfH0s*zHBwjCi2SEhi#^>u}ZbycisogYHbt?uc*FQPhBN%dHRQUa!LB`SMBfHghX$pZkHWa z3%45vj1oXhvo?M8c_cy6kt<4LYiaXM`9Ip#dW?TzeJ!G{KBQXCVjXKyXY+d1Fiv;L zi`y+(-&bC|>f+)!1;<*lDq1O4?5wPUB-n|_ZCJR4!bRwJ-IwB`%$!N!SL{H_7o;Ea z59@q=IpC`4Fp$p7-p>89VgK z&e+%0Lh-g+-4?b~*_y1N@B-(g#Ae+<51$z8e@BhhMXHA$h5`|W^$ zwe9ze@q#kxIok4~={3gfqxlue`}r$5jjZP)N!iM|-#tnMQ%9-=;?m%8Q`@0Qt5p}u zt%985%E+#gMj~Mf{(dm&={+BQdS1=Y*^p@z^QfzIB&{sJJjXF?gk;)Rt(w#L{=f-9 z&llLu@Dp5H>F$J4BxS-3f!@G8rK?zUBn%1zG22W14!Ek{ns0D z?okGTchE&ETL!o!>S1{iI-0CZmO6|%h?@v|*h&){MR~=gyPy5E94OflxN#SXEkrGASq$c6Q>R75^4p&y)K+dvwS`IX z1g7xVP@X4-t#GbI#|a;pmilf6K8cpTLWs#3CvmiadBvk&#`=D1Bc{10;*h(H2d%HV z!nmQZu0*sNs*{AR;f=1B$r2PVI_UR|(uO|H9{(CtAD1*RsG~V!QVS1!T*5Rh2#|8D}#P zq`3l%8V2>Nkv`(W9vl+ah*DYA*DV2dHYwtJm!t7Am?yhpu7UOArmmX1NsaijbqXix zm7qQMo24{|horK&%n=ZhD}A${DAj;5DKwqa?!b}Re(u_l z%N%WtWEpZXaVDrhfjDq#rd) z!_SZi&457frwP4oi*W2v#82Axl96Z>&jTno-?i}FU=K&~Ol8Gwzd|bNsABUEJ)3*k z0!CR6({y*|bN96?*Fqlsnm%pHy@%<-$Fl8*_Ra^4YJ+ZoelEcchwe`eq~C~*?FwA} zB=kGtmFR8jc}5m?`Z;Bv&^XS%W=MC(E;~oz8pL{gQ+BF@in*(%kOx(U^2K2T=EWw1 z&Z?8Iw&8mZqykG=aKYL$=-7eQibj-~Di(8|TQx;-nf7|?WkxONCVD+IjXIesSjX-J zcWAiDMaGEvuJE9YU$HyS&o?W6mt3Q_*Lg--Dk#3m3E;j{z}pbPYnfp(pr_r&_O8x` zfwC?Kl}3-25mR0KxorF3kJ@nRp~_=AXc9jRWyR zR-)GnG;TL$Jo7YA`yM-L=)#r8%MX^?=0N7NftiwAwl3Y|Hcsx@R$?!E|IA}id*VZf zv?av>6*YXt6U+r|3%skc*4d6gyhtkttJlIKB#Y_*#)N_*;iHcU%0#SClE>BeB0>OX z6c^BZ^sL%wi_yUk7YzTyiUN;%goIi&Orr6hnrHIb`K7F;*RM~UxxRF+Kl-U&<~jcW z-)9L3Y9kh;sQLIBej2o)JrVpg!HC|o^|&g>*8gJbjB_C7rqK|OkG%Rv%zo8hh0fU3 zKF+lpoeZks%eIdBxs5ON+74~u@!4$=lT#$wG!;%K1kx<^MVf~WNs(ReYBz#%O4xe1 zFJEd_aOdv7QH5g2&6=PaL1_2H;C#2_fkyBR;1B??+%bS$_-pjzpW#Tpo#{;TTv2_1 z2{fRKiJ zL2HF=*}f70w*B<7|cHScwxmq;N{r?mABD6Nv-H-Tk27S>)ymTW&2g_fTwHY zwI%`!lr9FNnC3|NlF;nzyoIc-`~52*ca6IG5$2oNyK||SxnG?a=5Tc8G+vnbKp45Z z?@dP5?o6yN%SrBuYs*Fv2=hms6SUcO1G@z+na})#b{;XDU}XE;TETqX*3QcH!aeb1 z-6Ff89MwNAt~&#?*RF!H*{Q(2bs6qeGz@lo@)9k8X8XMewq|dmSzPa?OwpY6=~TbS zx&eG@_+%*HYtBjxh8?(>UGU@UtmJSf!(CQ&Wy`yC_(Kabq5hA{%&=dV)f~>xf6N{Z zxqD$9ECWnq>u!g(yX>4)sQ0il>E*t&2i;3_EcH2UIh>*_Y_PSvBpR|B*-|?0fwFh9 zft92}P1V{y())c8GcN+FL|tQi!qW>~OF;mKggJdtd{y>v3ia)MV-f$hd@GSC+{}G$ zQK~*@rc}V3giM0A<}27gEtwk_Ig>*j%~#&}$+`f}9SgViDMT)}nhKSz&t0m4iA2Jw zT|#yv9sH7_@X`;x9Nm%LFa9QyXE7`HQF=u29wVEB3$)Li1X-Q98A>lvOm1DH^Y>`^J`C z^6lk*Dr$Z}N>#7m&7(NQBWjM(hs6E2CwOI;G*Fb+tijPjd3H(tSQ&c*k;9L_MQid_#xG7e}O>)p1pX1 zus=}*<0CIF=4Gul-YiTMOKwQI_p&|E#-gcR6~}a zlJ(0P?ZT)?x89zPS4*mj8<+Cyn>kog_P>mxYu_bJ4|iz~I$qxLE$to$OiR_83wTH% zd^x7x#0T0;w=Cxs6%7TuXhKx1a=>q=7PvQlWxwHp4RLHW4_Z}bqjsC zUF2Oa9aX3pbyvT+Z$XH`&~r-#LJpyGVZ-1Hn#Fwa50Ii+`WojqO_1@4q^vZA{mqew z#R&s{KN_@EGKC(--C1LnhpVJI_diMYmn)B%jEyrzLMj>{vdqN>{g6pzvmat?kjijnm_uy=~KdN-*slj^$-G>oy+dRYtq77hHamvr&0H)Yg-Ed zg!;upt%p9PM48+~UX?|a%-tF2ds#Er_;LpiN6+gpKEyfjCms&w0c1PRl#b|GS#Oh_ zyMu`xEjvb5y`cyz_Y!ygw(c#M9j?lUyK0^>Z*CE-Jcezw<32bjJP2W)4k87_*=N2= z+u_KK7b!^WTNNuI#ef2|R)Y2~WR~K3F~jOcM@7#ZhMle8BKXS=%eq>_-ZLr-hZk<` z3JYCFegr4Ce7ROT0`0qV^u*R^RcQ%Fv43%4Xn-xij5ojFlwV0i{@$<+yf z{eyb0xF2p`pTbq)_t`#kA-J6w>p4*=L0?5uuQRKEs zYt6l8`4Oj(Sy(wQTS8^3a<4x=2JBxqv3l-^6eecc_Nl@ywo4o`_8Kw8r>A<`LR<{Ed9Il68NU1@WyyRtSjpm zC&=8DcPi8e%w}NfSZ@OJv!xO&(7}bKK9wh+=^N;i()51dA(6#Msrb+L?~+md$-i3EkiRh z8m)#?mq#Sy>dLCDJucoLAk^CW>}5gw4i^R?T(*a!5h?G&0@byOFh!Twn~bL7*P1%L zC)TS_lDkVw#-k*N?21L>YxRD$k*qtGO;(quW^B2Gf`aCk7Or*k!=`LhOD-)N^~ve= zt=}HL?58<-*&tEV3~w34FjJmStVxcTCpZbKQynH=Sz6vE8|_=KhOf@{UtIX%o$vs^ zTvYg%jDk~Yzg2gn#LA{|B=nC;2V0D9)IOHZX)@g@L35^}nTdr@e!KM()r^88LGrP2$5u zuFYjj(G~el$o`V~Vb zl-yzTtKC}^O{cR*iilHXO}~4p1q)r9#-7rgZ4UtV&CkK5c2tx&dHVZu;3=8T?DK1k z;sf>JW{I;Pp$l%Li@EMr# zMO9D7#G+9>isSNyJYva$io2bevHV2CYkmKMs?rK5^HEDG_cyuM;#&E+%QM#Lqb|a| z!`MxifrT@-+WECghHkDug`& zbZP_|ER(2;={m|ZdF`4FQb53ODi<(_p}GTMnahn2p2);n_VE^T4y(TT6Fc{g-wwAS zGJU@r3#2QDuLOBT3Z@I172Y(|7SR8by`#gF9j-IF!YK*|n7TfL?|5bPetr@%a~tiL zRwj#gM-)N#FA#zOie;kil1BYumqj9sKk_a>4w zh7>Suj$+^3&?6qo-aqf~czrLRLmUXq;T23>Z%^@^dla;G{|CEkdF`RO=^sUm-x%f6 z&V3;~?|SrVjQ$*zLplNIg@9KwyvFZj&qyt3;$L2Ri+(VaB-5sqztVbXol&b}`}4t4 zZI6%_#PYtSI?1NX`ivmGE4OEt3RaL1^ta|N$R%+SsjgWUSDn* zmvJ`3){EU%h3GCkkbH1~+E5~!{#*LTr3ERg=0^2;_IIkN*H(@)GgSe*6$<)W0Q4+#Y;lb@%?CWs#L{Lp5P0 z5%a^k63weLfU6+Tua6D!ANz3F&im>`jq~VY3P(9?;9mr)L@q=GnyCEHHqqWgQvv^W zf-&l8)1};_r(FI|L}Zi0f{^e6Lre{6<4f#D`-bZBDZuSX`)=RKLaQ^S%4Fm9O-sdv zj9FtqZv1ypu2A!Z+4^|D6vN>2#vPiY=ZaQOJiB`~;cc*vyIDf#KykK)So^iJ36@S< zv5MQ5zLX^?qA!uaH8&g0Y>Y2`bhZ>^`z8boj-4sHSqvWJX6<$<4vC4*M(hr4*(}1F z)q(*RTd=Cu)U}k+?>nC1qBlvjopu{oiZH;N84YTOO7u>1M=7_9YG%2XS8tkV7w`F3 zgCq3*3Bf`N?0REsu86gTzUa?9ZR0$WWU6gf*4y@1ZglE%v7UJ21(hI?O~l2Y?n(b~ z$8}+`Mm&9;H`g6yi^?}Q?9rZ#F2Q+wC7bnV2`|WLu{SgPpC?tF7z3>>E3@At07$mUXB%|@AGQWriQ!6dx9*Hu3h@oiE=QWkYwqrvhp&q-@U+N={_W_tY>>n>sbBe!NP4Z)7rECLK5 z0Eg2XKe$lN$nD+-(F%bsBm5Jg5&jUJv(;ytZu2Y;E(F+9{~DK6_@KdXuHw~9^#0Ii zC0}xD?QH8SfGP7~di|p{*l1rYYO=)p`R%y=oY-*? z9yA{GY#6ho$8f zUsCE^+~`+&6_-PNrmh<^E=jK67qS6^ls2Hk#W%-qKz9|phI?ZV0ao zgEp0^Kt-O;Vp3sl-D9H{pTj}_9Vc>cJx|#6+uoKy3vFE%pK=@X-#*v;YRp2TJ7o$L zv_VK5bJi-FjMamTIIQgnpkzdQU#%*#RB*N0M53HQjl;qSuS_fbK)oaEaL>o@{(b8c zGHb=xv(lGiLZ>K)qcoj>D$H1pztqAoKFL!xzD5pV-xBJ}S~Ai~>B#z+n4@GNPicKH zv$SL~M<8^pP{2MjzZN=08#F}a*Cq$hBZNGYV!HDOu`k2HomC-6;p$}PTb-JYk7H$} zhA&;83PqI60=TIn(<%y#I8Ra650?9n)JL$(zxpb`Y4HIj=3;KfDw7}gx8%;dZe0SJ z;v!^D@=S$hQ{6|h?7H}`QX|jv|cM$4H3cr_~ zZL>9%P-g`=DkoR8X56)O5(q5=xVT}zKCPK7oc2#IE{W2DOz3%Ez8J5}hZ7m4%r^}W zeZ<>DiGw%M3*Lr@*Ab*7v`4CD2?nB5*k%({Ar5>-Hsrp*xn!m}bZMV3UCEO~XB)A68-?w@{V6Vp= zFCH$GFk+u!f-VgKdbnhL%YW~}<<-6^N#cyfG-s%4SzF3(D(NNd-j2@U7S;~v_uj04 zBY(A_CZnP1^FUU`hN8iStRy&lm=%d^HG+Qi$b=ega$JW<3}e49%9iibQwG z!!@wFKcTHjW51vuKMLB=IW)lK3&6!ISgg$=MA=J%$!@{A;_^<)i@`SBU#|Amm3Y;_Dv|U z{51t)oWcrxZ@!Tx`o=($uu5!T(N?~HKR7Mw`bg93kLx?=x7rs07k*j?*QyTA7pQc^ z`}>#o6->Sfam|idDNqp}*jj|dKF};_+?~7G1{LugzE-wBD2D!GW&Q&?978ExMo)Ze zSn2e2T`3>dMV>DoZk10a?*4X|pw`j%%e|2|O53fhpH0fArS~yLoTEDey|Pfl-54aT zYKzijYp_Nytz4A7--bMT50x0M&&XYYC(t=`hl!S;UO|?j(8$>l!SB5`TGbo?+U##Z zq?YVww4`Hi!cYGuK$pZYWY2vVYF47s2K^7WUr{0&zXKb*)u$CX{99E(@o+JPI==4i z=h5%a?yS=|`U(KU`ahX!UD{mQ)^=+MIrMGVRDBf$FK7gO!b{KQZ5El3D$Cu*QMaR} zq*!$H-Llu8r}Gn?R9TpumJJmAI>xSK<`|noLq98f# zmlteOA)^e!ydn#IIB$ca7kVPGsbyTa-yfb}oTyXG$+F-LcU-^4Yr!e8aVFvHZsSf}D@}Xah1860Sae=RAM|; zFYIl~`ds_`$fFqleWLRs^{B3g76$eAd9hW`u+1+D#&At_c_JOmz%3Ka5dUqVI}G-k z1J)yi@YY#RMsrl7LaTUjO2EFW8}b5gY1p$7F?a#^D35W}`IrvdWS_@Ee!qN$>r*Ue z*>oMJBl|ib2f0qg9K|okS9`h{ZuEb%tF)Qvk@>Kt3{T4LdP*@QC~~Y@Zg*O<>`--0 z(qjaIZNh$6=)x-Pp$?l%jagG8T1o8c!5hu-w6(KnhQ-sKn7+O%C|Z>3{NWZvM%?D; zd9CsxnMQ?*xBB5=tR;wo_zX9FPq1dq9ukwa-ve5>ZE1D`Rkh8eopgH)&a!FBVtixx z&m7LTt_K&4<0}7)91xdW!+HqP1L&ls2pW_nUgreb$Ii>m?dPHytu!81-71ajKOM8x z!t`11^X+OUY|XQ(55ILE8(Ot=jX<`Vp>3DiHZC4TaoSCaxWx*i-`an>l{m7!p4x}p z2y)v0hqY_1%TKguUP2W0US9%q~h?qJuDUOFt6 zirSbeN=pRqlWt`(@6jhLrgV#u#lgq#L8dV?N~;8LiN_e5qsE4DK|p2UgL0I(t2Hj{ zXuY%~r4M|Fr2B7RiBRyr1A83g<@E1|xTb+4*4lcC1;k9Ibsc4TDE#7z=L{}9fO&39 zgJqMP2q_|57YEV~X2)M=+YJ%%1g)_HAwA7eok7CU%|oFs;__C>yM+YAWut8oBijL+ zkg04X=e8vA1of=et}c|#As!Ko*?1QGn5riVpv4IBGnI_K8e!BSgJ5z{oLRzk%Mswb zL-sO{B_(e)T2aKd26-mHng%iuO$e|oOq#RMif#Axd03JB&v8SWb|7%|@LGse0xOf} zk@-HR^XSN+!Dd}E@W^M66l-v>!gg_y>6@V>vE#^5A8kO5jD?eoKg&l1zfF1&tg=46 z3@3T9ca9%EbD*iJ4$X*AWm~+nHkLf%EDtQDIm+=1b~=o}LMvC*pJJCN->|2Nw8{)Q znyDq{#?6rN)D`zX1tv*aYXR3Oe-d?!db72FF))V<{@Ruq2GbPFHrdgxg#OCn@$XBX zJU>y*WF)=4P_gTZ!rQpq;FoEC9^hnglwa^`%k%RtFNG&>2*$e3@2pj7q&l{JM58DF zT8sl#y5@N?A#Up8k3|wc+hiPu17xio9LVZC(Pips`;87=HTom=I?_FvQo(ORK8f1z z!{rm==le;{$!S>m-815dS0d#!O#9aBC889=y)C0DcV?HK=b!69KG)@Ykvz+ansCvT zrMb~X;#`a3H?9dByhfUn-v{L&FIedND>XRv6=KE!J|j<3&h5t_qM zIx3a$1nr>-IMs!N13u?_6~%G>-1__`@G{!E9-Q#qgtFm+(YEoTZmloM&ydPj$h+#l z(QQQhYy0tId(^*053==r)^s&y^>GdO>jUKcQT;{GxBP_RH z5EuPmqLBS(He_HOzQaMwBVD)QQ;|CDO)66(NzTIp^H$6#FvhDiLije9vxqF3y&}fUps#q-N&nPD{ z-|unfaZBg(JjAwVQ^ib^DRRK1D+E8ProjCA^}o7w%~1)#1e;JB#B^F&yJ*OJvMcy$ zW0H+qn#C4+Su^4YJj*DCG;uio3NAksT#c>C(VI;KnJWA`d1i%BKViOq>D%`Mui|!J zYS==rVysQhEs4co-i}SB!C8;)ozQ3-=OUUZI&gm^{c9p_SDWy5@HhUb>G#7B*?Qk;OjiNeK9xO-U<|;^a>3OS&)vZ2etz)AU@5Kxf_I^SlFM9_vrX_1AX~`^pMqt_ zFyaWwe2=g+k38|>6+8h!e}r7rVo&Z=^f*;I7Vj@oFn`g3s@B~N@w9ghA!~G$B#H!% z=I<|D6IniWZRLAxd1~M34F6LqwP!!GmDPx;*}3UvhWSR%pf1OpvXbt2flGeWzb~!8 zHAe6U22h3YUxm7g?W3TrMw=q4G@8+a8SYPh6~^7a2A*HMkBD}#Zo}fHT6z%??I+iX zg8_(W-8L+AQ4=ANF!IuD;mRFs@q*mYVDUz)Uaj(ilqD7uVKp^Xvl{+3)%R1G_=;|F zJRsQ zJrjho1HCsSeXB%m7*pQbS=BsDruTj&Z+(I5=nIeAU)^8_<(b( zxFBhCrEfnZPK^EWfbNLrmu-J@wT}E!@z{xlt03TE0({!ZXqlo;_0q?QcH^ud0(m_? zZ5h#g4%t3@Iup-t(G?NAf23pCtT4RW1&gJy71}ZcUjz7fg@w@Ca#9 zjEMY;L2$zSZ(G7m1k2|P#G}o{Ks{;*ca2$)T6eYjzrL*;GH()z7HVxam}|57mqSec z#oEA>D*nG>={84&D@iZ0yG%92PQx6|%rAW_S^D zLW<)RA|0Z2uc)w(o?#~&eTqTFg+ zo%EICA~=F!0n_1*YrW5bT)ROG5R`U}{bk&2m5^O24xxRvVV^hc)8RO`NZ_L@FFYdd zJgAu!QvWtp8sX)lE^L$jmpzJ6o4W~H@qc4t-M_Q)D){)gml;OQ7h-C+3p)5Rq;wG* z*}8w>8tCqAqi(H6eDe?NWwjcjDaNJum#BsVPMO;!xCQLBO3d>YqhKtSZ*wcB&W7_m z*aBGI5wpy6-ybv^G6E~7l0I5h{X|}HJ%wA%>>dB>M^Z|Xf1v!S0biY+fXd-~Et^$v zl)e$Ya$qUpaI9iJwhx?tB?tmnR?I&fnJtb!Ucdh{wnbmCO??5U)RLg1wJcL*{LjVN z5Kksb_3p+N-lcnSv9oV=Jm^An7su<3gKb9tD#A&4En2n{sXXosLSfjMt23o`2UZD* zzzohuJpKrUxhiO(!q$ec9vvzSkz<^j>i>SljF>M2CS1MZU`S>k;oEClJrA1~cetQ7 zYLc92|J-G~W0X`bW)7q9G|EzQ*i-kG$vhFYQTN-qWcA zF^Vdbrl0r`V@0;j%xcNsoK}Uk3%3kot_8yg2%XKaTpB0Dj#rVSL^$$ayn=38-Ve7T z3u$TK{u+Dp0bKF^70s-L*M>`1FZKY6xlGwxoUHAA3s zolxFHg%u!T4qpS?Gt&1?a~-M%Ego!M(R;rWP>(j~*Z%}hP#@;0i}4?ibZQOtw!f>P zsxIyLi6tcXUOl`4->SH^4ls-G0v9$ou&#mc2`6B!qdm=7Ew zJ{oC;ZM_V+F50N@DmD$Kk^Xhv>*-YO3~PbY1rWINVVmLAjm*M_&TeuLvsc9w9p?Nm zT=PojoeFfQf-@lcz@SI$YK~lL9rwY5q^M8(Wjz>m79QAs%ZR|;zf(w<)K|uD1a3-` z5;kb&-SwGY$$!#Vzh5(09y(}J9O~0q{HLVn^RuMyU|$rpf_yTB<$Z)iJ-;0SGm67 zu9}HEWTW?^!8#+@9%T!0mcgkyv@ZDr$f<6)fO#4T1JWy@AvS5N6VIZjVE>X7D5GQv zn}m<-2=#|IiB99(jnl9=<@)YQwO0+^m+&VcOQqAVf=HmV4_FlDJ2F#K3FcGgAiiiD z2>vQ=C*qaoN5u;Vj)d)Ir+*L#^G)a@wn<3eKaypyZpK#A689U@7p`ZQSBh_o!p?_e zg)u{iX4vh}fpC#)FuecQo&{Q~d-)(QS6(C$u@f%>Sl$0Jls$|Cz1H$=}Z# zyE;H22@X4tFiAB&j4ku7-S~lUFmnr_qk-5&m6-0jeDd%T%})AmQ@TJg!$V2M3fh)l zFy#t)%=6apA?*4#Jc^~cJNse1?bli-QFb!D#2FfQeAS2j;g{E!waz?Uxf+waoxI_+ z`2+i;{RdLaJukOZkSfy>QKkR(Z(}^6O-7ag4WTQ$(I`?&ZhxI^DS>V zOJb)qVfj$E+Zc3Q3iEp8brnYJi2OZWRKAgW8+|Dg9&ZY@9!=As#^t^^KC|=r-XcYr z&Z`2tgNm-zc!lrv&Bm$U60lj|3v_raNSr-k)Z#J8zx-+C$FOQQ5HHhTAOy2Wh=bZu zHwsD#5totbg4LZ)j&kFUQyW6L?gTAK3~4tjRM}E)@wQQY+yLXD&*CvG9{Q$8c9+mO zy*T|7&Hv|~qsYBM=~*ck2u4is6>%lS;ofJ_5Vq2GPHy>*GCLb2K(7nu4N|V2{mi+u z@aX2L%@@RjrrbHeU|L9;4FT+-Ngf=LNy!Xo^KZ>d9|+%nLeR=x^-#5r^NK^I(dH-b z4Rl31@Im+Y8xubgWZpYiE=LR2euk{x;pQ40lQySsPR|6tGY|)Ey><}l&=_;!3VGZW zk9$w{zr*u*x8sf{mt8h`#WYELl{ykw;9ub^qVYK1Vlxxo*#|7ZPaw2Ymz5JNcFY^a zbV)zi2_5`8*^0xq^4aEx{fUgg-+1|r9>lXa0lAsmEcXo+EIqcFt5GO zn^gPbJ8`!Ei=%UKWa|I_c%|B>go==BQXw&`++|%!%DTJHWeG9N+{2RGZ-rcPS&~+{ z-)8RjE!Txy=RPyc+-7Vu{Pz9*3uou-eR(||&nG>YA*2_Le>)OX+l}T_0Z0zP-rk$? zxEZwnlLZ30tPl8d>I=|!Si?YSv|qua{&ib~imTRZ%h9mns*LzRIql%0P=anliFbB- zE!kJCJCsy`?4JG#r<^RbKMEy6G(L7-^f(tZE*Nb4F~ddI=u+^}*Pa5g$G$=8|ID2m z4{zVfJwsoUQFe6i8k;S=3Pxe1GV6+uC7vKe-g`KDC51kbYw$E6k`sSSB~SE#WId~b z?EZMdrry%6XX2w4G@S{2Q` z73(q6K7%F#uzZAQEev?Q@STQOd=)`i2W zgX6061T1zQK(0^|ODrC4$w~0((-p>i>@Q?X<^C1?(jY{c=rGsT*HT$!g@(vg;Q#33x^P<5Z3%I2Rly3AmSax@ z+2yMvGoMB9y~L@{nmodUM|5!m8Ag?mxi_&f8}lq2%XBSHA@=&QXd}CW?}fZ)y#gYI z2May7`*uAyhf^tz$S$59_p5-Yl5#Ecxkk3@5MLDxW99V~F(WMr8=oWvKVNaz3n_!L zHB3&<+u};AVz3j>gJG0BW0Dl3%C+KCxtp9`P zRnh})8Rpb;rptX#xAUJmdRL>G+QM| zvBj9>DjmwCP1{;=)||DJ;>iPeooG%)obo#M&s(hNdYJ&~40jKYb^XxlCl{K|iD`ae zgV5ndCTVq<`hs5=l*%D|ZFb~QG$-1KH=UtUCQ-W{FK!`*ac5SE`}!xweW_rcW*ZR} z=8rlfn*vWm>BG8Ju9)EH;uP{w9%vCJvw#^%4i2PBA$Bs$ftGRCd=^|CrA9;fcDOm? zg8)h9@UI-&h|bIIz7Z`;CyTm25KhJdB-Io7db9TL#v^u@7$KLqE!f2wD&Lr8mv5}i zdsk*oCWp?+x*I19xE(*=hDF4s2{aNx3*1m&kzJ<= z4+C%~K@A3m8a>=^BL6^@6g6Do4W-t~aYWhX0ijI+(Xj-s_hF6Vgm?+mgI43&G>I7a z?!wH&-O_sxWbgPtj?iP0gBK&D%UOi|F(FTby%fRJ>qC8a@XO~lT*ia{T;)2@=+i)> z8o}&5uuM>84iaoE>)s70ys&u1pF~b61=&AIb>*auVpbu)_Hwnjh&C=?f=H3_o)&qw zl`4HBY%d@$Epd7{_ye(S)=*qY`t1YO!kOS*zZ6%D{(Sb%i@j3=u>-Rhdc#8rNru48 zmRVzh^A+q3QiC`VNL$FbnBZXfz)=^cS6ej_yqtJGV>*ehvb!EUDY|QR31yW6PB~Uu zk1QhDpmy`OiH+Im68~iX6L9ts_FxD-m+0!Rs>*ULgSTKGC5gKPo2wZ(lRJtjZS-ZA zx(}asFL~zl`pH1FxG^x#wc7vO zKG^d<>DH+K#`nF$!I_2mzjSh$JMMU zFxlmFdP24535{5y5AUR$z3Q6MHNX>;Ex{4rG7k-dF+}t$$Jl}ChjNBvk0H9qmjX^= z8+(~pZ<6*kp^e;+xiEEUd=wSec3mv4HPQYp_44w6m(Z=DtZG)k89aPYxIge*!7o1o z2^hPY)=B&Bc@8yf<6e8IHYHlPrXcuU@nz=%F*S`S192(+ZXnfWWSvj8w{k zn$`i{XsE!0Es@H+20rd>CDi8IJ8wD_ZGyfv6P<*JG~Us`MCJrsQy|~db5jP)`*l~z zJh5S2_KiIi8i!Ga>y;F$irvIAt^h`>nVO@eu z%$lLEKVVBY@US(~Dk#~dd*YZ@oxjEKen&^f7sG!hpuYj=0g1=Kxpl8X_p@}FaC-ar zAJKJ@Va9wVAutVqWq`tVF70X==*-wTj{b^UJJx*H{Io)kFm;@IJJX-=6Ie@d_$}@`eb^@6!`IihF?eUI%cM8%&d3^O-XFla$h52CQDZwDKJ&(^ zou9;u%!QI#IBV1yb6rGeBQ?R>L28{J+*u3_TxW{7lB}=dhf-fRW?NhAa|Tx!f69ma zyd2km5B*Gp#Zk;W1<840h!os5pzcg!serAzvtXjtA6T(vKyWagBCg!l)6<5 z7AgSTh?9-=Yv&#@Y>>)G`{M4gr88^sXD5a2q3T3KZ(=-5vF7P? zas5p99^n$4kD2Ar{VlfOm8FL>U(&AwT`Y68=l5n2F-`|4Gkf)JlLXB{rwN$#w756Qh?Dj zOBw5j`$W%LAp6@K1Z86Us)=>Dui~viCOT90l=HJu_p9w<`9r19H&Al%iV+rHOL)q9ngEQT}ymU`ky(N7&8-RmwshSRsxe@2#QhAA`d_9VV2t?D zw^r*Bn=<~Bmu18p`}L%v092(7)L*>5Z}VcZD2&X=<98mJ=f7TbBfAL)HPamW)^mn@ z?+RA$W#5q4dbXy`JGQ*^iZJxf7_oW4AAxqFNwf&3sU}tnRrz_V%#l?HtSw!5M-pM6 zuYGgDY}{g~1GvERm#{IV@q3d03yjiFg9^^B|Mj+Thf!Citk-{M+;atVPCD9F*getq zch5J9JJKf@(>|~Kb?;c|`aLUX4&wk`OvnWKRo@P4R8qHJmVF5#;cj%cdyw{8VaJPm%__xVa-(J!A%-Jz}l z_Ih?TL@f}yuDtpIj^X38(X_wOUhXyln$I89K*>!$*)UNFf$0BwHBwmwzJdFVJ>KZ>u?fCyAkGphi5HWr+Df4 z&rW|Hj#f@&&LhH6VVR}7%VtQ;r^Fx;NI%AFa zshpCBof9~i)VaFI{(I1tnfBw<;QlcOEA)XhAoYU+y1^r>f-L01&$V)g-_Zm5TT5!n z+FaS)olrnyWiKM6hGSbS=7QqC@f&n!XtPGhFh|iI1)z@nP(E;|hLHBhm?kdnFFRjz zemgV2x>`S|w@@Ic$Yv|20zP7MQ5ekUvic-tvq9N%ldXEO9bRt753Wa_^?Y*FK}#A! zw{_iJFTZLj*tOd;@jLVgm``#jqW(hYj8S!F_T_7BGdn-znCpX!9GUA5^U|@UR}@RG z$?{yx#|b69Cn6}Ug}Z3S$E*g{V!OGv_V}>;Dg?dq&*v@Rq$6edf{b_gTD{kPr;7Q* z-vrw)s}YPF8$XR$@q@>>Eb}9Y$^(BM1>o#+l9`|HF|%mvE4P}@yfWW#3f^O{EqTKO?uU2v6C zTboW*nVD9}8N7Y6f6Q>lqPccZgnyg|&zX38L}9!W?nLoTKXv3?vyLk6@W6QWF#p*!BcvySjUvuaq@6Z#kUw2Av z&inA>*GVa~H{*v29`jnXbBxaR3<&&6^ip)B@)bN;v3xP0ze9m_LWQj4{d$0ts*VwF zDJ#1ePIn7v_tixQHS6t*42G0vqm%uPQbFiojho?CYgq->%x#&0RNOT8Jv=MXsM+ju zinhc1fv|y|3Dw|0T;I|qR7LOZ!lOA8L64SOwJW-1e1x^LhbIo6sR*mP5o{iBQVMRY zT_})jFab`cRz0aD+cYRro2)JC74$Z|t*K%l;NFQ?Zvod~QXP?HZX0VByW=5%J2@P( z#faHHZer%Jzjj|Icu(hMFr!M0_N=u#L2vC1WJifwQ(c3F{(uNQZe-P+gaNT&pr+eI z(T*qw5CL!y<*o`;ySW7J0HDGsztO#!fgU>Cmr);%vTfRMGe3nSZC%h-wJ;-va!% zCd-W}Y#xyPAB|!2??`LtDT>x1`bxc`E(zE*zco-+&925`Jjx`;V{adHe0=~jlkW2+ zGk;8RrMt&m+O_>)e>7xr?leNlYUEm#8#d{WNaNlNz|5A$G4gnC@3$>I>=_J2=KU+J zDUm`4_Jr(a{4LKeT5Q=MZ-~_ryQb&vvAt%B8uF>DiR*Ws6RXruU9VXY)Fw;m*{;fzZ}n_SuJqV!)JxOA=?2 zGVNDhe-s?%oglLt(-#9ko_h_R=tIYf5LWyqCDM&&7Z z7w#b&G>3(Atjd>NYCA8!pD$y`#kPiKjjV2W`V`3SahNJ`!|JM5%-rzO1QP*T`<9JZ zfpd}3u@M?_jv!cXw^xR7;nlcC~}96Jf57|xTB%a>S=Q4ZpCW?#p6((Z+Ut3#s?N%NtzPszH9)U)ozWlq z43({Wj%37~S9`Wq=v&VT8hRcuf0pT;Rg~C!EVlQksIAuVE2kAQNrGpOKDtnSXX9N9 z-zN|4Qy=q~5e{dmKLIH2f3-(03Ep$^wQbU>EeQKwysnf=9Ym>xNuS|~XGK?G|esa&Kdbc$%MR>L8lC;NJ-*?iL_(JVlmivb12XLHX zn|r@tpM@KZpOTO1;{M0U{{SM&?xDA&Y^3VC-oV?PzOclm^T4Un%`h?k>tiDUPpB))s3Jy0>b(0l zLVZ)@i2HDaC#PYyERgvo#TSpe+IUzJpUO-wdOxuKqRy}1Iy(dC9$a0#wULtXJ_iQu!N~huNzxmC&`Wgfsv&k-~US+kJoI2{b%q?6wnT+Knp%O6;6y6je8Mh&s0wlkhSUW>!%4qloFc?9fEDX&uCY?PMB zuViR4RSn%Qo=42;jR*XUvK;-XaB>VgTM`u*sP<(?Zpu^Z3Q)+SR%V2K?}-UdrZjTu zs#|M>dGsZ=0ySh8Pq7C95J|x3z)_N(S#jYc(D4~RWoGO_Ywq2jFEy9gK13y-5o;N% zL!ta}T5oqEBHNXp_;)}9D^D(EYGb`_=A9^QVSPSOqa;dDDzUb*QngubP(@x_?V@sx zFUzT;O%xJp_bac3cZ#BT2eOKfL zMw;F2&u{ze4nsXWUoHC~f|Q_-w@9eUquz#%XVqtI3?kpm%+c-tv1Z@pKZS0t&Dld; zO*Lgwnn{{zlKRJampUm+FH{MUK+?@3z<)oZqLhc9=$G>7`!s)!z0=O3PwO*i8(8;> z?%N0lH@jaAD#vH`J_{)pL{Kx3#1XeJfSe4_%BO)vb(o+1zD&?pR}YQhYl!XvdfOe$5X8vnIdn%Kb~Nc`GL5ajC(g;nj;Ni^c;} zLC`<9^i0OZYTx!7i36Sz+$t)sUpj@_+De?9-{CSi8adpN_pPHHM%ws}Ky9j z)>1&7wr;`~hR{PVYN|`K*x63B_uWTIdWZ+J(qa?=$-)~2-qF+~u7fc7pL#}QUXX&j zjrEKtMJ#>ymgQbkAy{K8M5+zGuhbSVbT`4}yxxy|hDa=UZ7yOm*aCASI8)#Cxs)x3 z&pOznOTm@3`3YJ}Y@8?m8PPS6z1px}7PPj2`M~<7f_Cka{jk*fD0uBG_o#AJbLm7t9p`v(F2nQ{D(w;NldfH$xBs5-||Djn-w5?9d=X z&CZRrq!$*cPg_*zXZ0sNn_d-iqE8V_>5r3w>6wz?rq>Mxq3A=;1Xv3m0mnbdK4;|o zhl-qH-R54mAkQj%Imc0xfU%8KhhJ}gHQD`()|j7|XYsLfTZJMu!OTzy&$5*)-2tGTzXGFpLUi7r}KzSi+ugt2!uE{a@`2jP6Ni9Ww;qe>U8zSVfqgJZ@`91vqOAz-v}?Yi;#c&g4RM7O;bzc^h+Z|z=$FsetAZb5&75$HQW0tkT}tQ z+bZy{epcXR4bU5F|3hTK;Vdd}>Bt@1QrE@oj=eJzm7<+5cnaw{ zc`g%GbP=Btw0x({RiUi{?|*Ji|EEN23XA;~u8pn{iW?FH25f#lM3uqmnYk2kfBMc9 za6$W%zT(9<&I{Q|*ZHtFOjTGvYqdROF^xl_v&cfk)L;Dp5|4ka=?zd&n+++4OHYlo zkr7mt)VsExbcA&UMpZhLrSft!sz?7W!E*Xd&^C9;Z|;ceP|A)t)pawdE*jF|5~BVp zPD^vM!=+iFq!ZQV9-D93eoS)d+?WXmR6Ek}prL*LW<``6HIP4&q&3m9{;~w+64^jd zk$>AjKv@VT^mcwkSq<+c#|E`*e?tuO{%OkxaA$-b9&e-s1#Cefob_VoliLdm@buwl zE@_u-|84J<_Ee z-TqkEm+I1cy;CA+a+{p*V4#)?7{8Im$o)sGr`0H7b{yi@RylRV};e}PyEC9JHsW(&mLNoRXH6xuUXky88cuWX*w;kEY7H!?}{TObkf8U2rQox zq@au=%?uU6jWbkLF%9ZHiAo*{lshA)LJzY+Tqr?uv7+bjPNe}LB^5VT;Ip7^bU)Wz zXe`6Bg+AAz!IHqV9-Q67cVcjn;uU;a%rioT_Ji1C9ChC%ae+z*!1Wl`g3yyq~r;n_Ag4KN4 zm9*Qnv9$JLSOcf4PkAFa_kfg~0e_zg%2c)_Dzqc-pKTo;f1$ej#f(!oPHfod+gcb= z*N_buQPQ6(KkREaw;Q7)Tf0C?-!Fmau?>HjV&l7Lxxmgtt*ux}&^_x5e<2o@@`45X zPJ4Oss-+`2@#0a9-)D{(R7l?d@nz^dC{N&M>`V`&Mk$mm7aTbMu28D2`I>e-^N_LQ z)0tFZ$?|J%BbE8@BL}~?!bKX#o-M^2I%ndtwEk$&MY7(j2dg)D1xXP!pf+GUyv_fL z;9V9@c_O&f=5^{&=WJm>Pp@*X0x#M}+Unp+Lx6P(LTs!U(P}JparDwFuaZZl)ma-0 z9$}lbB!}+Q#3hY+;ayR19HaoTaMi}>OCw&>@A_05{HdN%d;+|XF%9gF^slIWu`-T& ziuFn8Y^89D-hFqE(HF9p?u|c1zYuIK^AA&*O6LP2lgv`r3^EN!0(^;8gtowM6uq^> zc-<2D@fSU}C*BRiQoKca*1>NM4vc4U~4qtDL-GS^j)3Ja_ibdCr-dT>q1G1uW}59zar)a5}xdo z!Fs6RqAxZvNfqD+=(bW%w0<{f%1YG zQ!DfQNL6ftL|mX(#2Kb%cfd*U_OimU=}b_*j7x%a?~5{bX5X=cEtxHioSFT9?xdn) zV;1G762d=O#y%Z?I*GPP>GC_QMtlJU%-@{x9lj8qx@C;*AZTq$lS5tt5OuC-!smoQ zmm4BzfIaDhO&0;NNb@%`tES5u>!>iZfx|6QVNbL*Ei0g1Tk@fzL~NwejSu_29!eFV z`${HOdivbW-UmwjGzZ!fJ<17Zg5rIQYI3GwjIa(ta9?NghX0cX_weX&p8V+EEQcGE6^jR{+l ztS!Qaf%3DA82J3p(C1U&*|Dkqb?-)mRIwOk!L~{Yy>Tsuqa6zdG#&&p4Dm~DA^@dDR^p#k)B=}d0X4cmpJ@mEz@Nw|3#*o;E?X*g&S3D z?Z0~&p;y(bo}!osuqr0^#de~Zr}XE?sW3g7S}D}eh+p8<2nWRYbow>E6b~7R*6|kim0;eF!oyGnc=`J3{oOP z`2JLQ|5kH$(0mYuYajz-el4;g6p%FnixQQ=eC1y6iXM!I+)LSda)tEcLeax>qh;RX zqEq6m#(|?%dXou8)zOfo2EpA^;MfZKDHA}FJ=zIbgkPafnOouO-?U7-%OrjkhL(l`fv)*5{4``ycBB*T|={RF~R@P=gEk%U+!6tr)c70?`^)1Gq!9%)?HROsW_6W+gcOO}@> z|EH8~Y`SZ?*8#cRyICc)Gdmi0F?(Dv3-_UZNnGc_*0YR2Ct#G8%rh`oQsXZ931Hh& zYE}{>tUOePvkT?&l%Ov%PieXmNkx@`2LPl}6UlgHMF>h3Qn-A%DqI#$&M$3CA72As zqz(_o?aIrL3c7gPYg;DF+Rt;aFcjPRD}u<7FM|QcjL=4aPl7}Q1OgV;(Q;oMAqC}>!?9QBe^7QTo)Tl44$rF z;Z1^t3Evvxa^cH&YNszBlN`Nsy-G>e2;Xd$f5%qGrt_zpmfxvXy_2SXMpUj8$$P2o zKCY~*u0&=0r6E_WbSw=n4SOfjQM};(C<$r*B2#C21*b{fD z>Dus#fPeIqB*dNJwKAEMp=!uFDFQwjdn#yWoBaC3Fwv^gJ)$VC(r-=*U3t$$TPE+B znBOZwZB@%f#lOl`%C9!0#Y57+$6N`p?jP#7bi6;2EN)b$g`f3nDTM|t=+42Z8i{V8 zZy#Gca;zdto^jWRVUm)t5Je-*F@qVUS>c9w(;cONKBiJCnQz3sgsx=EaU6@P~NR!Zqi?%U5U*{1E+vi-5*cmv(2S~5qlhCI;9 zG%E)Q4%>EPR0n;2 z*uV!fI~sew>fA>wy`v>@fr=*zo-3Qv2E&OL5~Vk=##?9e+XcJhA+|WhvX~?HauSyH z!ZjFw?H`xsHxQqx?A+WC&l|cpcph6W?LUG#?`R*^YZgrz`L#9JfWd$dOSBLAj5ub- z17S?o??(Z!pFgBpBk||lK8LQ>Ny*PQ?Y-%dA2T^|U;k8zG}&2l`AX3ze~SOhM**~| zbv2VUVJy6ZUoo$K&KngDQk1bGvx?K`I6O4h~_6uDCxOODVI&4hWhTD3}j^*!ZoFHKvw zpc7nh_@kT#MC41X6m3u?;TYen#e=``euLsY!1gnQ>D$hTLx#Ies~#68U--_QN-gw& zb^C~r=Iaz=bM($l^7vb1^h+4x;IQA_@#wQGz3M(-T(vheIi(SHN;7WTf%g(;(mp>q zjL4Bw&Gx#~`t`vN>`-~38D45Q&hD;#Q0z;!gl*0Pks47#V4N%m6g?2ob`k>C+Va@Cia;Wsm$bL z+>w{9apSH@2upOZ$i}UNM9|39R8fqL7{S@9I<8u%Hg+)To^^%4TesZs4Z`yblaDI# zaN8->=>WnbHel+Frv4DoMdTXgZ0V(r&%U;mCr^EcNCk*}2!cmsMIP>m21(FZx5W*` zFZ9Bf&Vy+1RaUiPi}%3*E5-QK_43{k0Z2fZjJ1)LU}dsN?AodaOp=_Q;dOGxBR1I7 z_BC1*y#5hh_Kbg#QJG~CiFDsW%B@T@Fs=$1$=vl&g+s54>9Bao$UYiQXe7^(X*R)j{jwY`I95s@&0C)DCc(C zkf)(BVjGXfIi*O{l_}oBfOd`8hp)okG9Wxzt?q{~-lKwyCY5i{BQ%I0LJY?5qcINA?z!seZz%#BZhdASyA`5zIqT$kVf{wy|fVjWh<3I13b&~JlS zas+Q^W)qSUuyR-s8vl8(^u`ZZ*2rxgMi{-GZumb`f|9I0W46)5d>R8P>IjdZhi1i< z1?=C_))O*0S!hYPuU8G<>n)UVg;Zjze3!d~S;)Uee2OBp38K2G73Y=7UibUzOqtaBP&zNfUL1y)Huh_2 z+81GKZBJwPCGQjT?bX2*GL4rNhF_LGlcrG9PEG0KUy(dU!kyd>=eL%jvUGakc#guS^g1{y0S3oBPBi!1{|G#LQTo z2Xu;SP<3SQz^Up79&Nqoor}x%nkg>j)kl?9oy>YHEUFScwt4D))V1_;_d0fKrtg2a zi&(46+D79!OrfIy;wt*!$bDXspdSZ zc4dpbm9?eW2TH~?7|J!t-H}~*g|W8%+X9*{Wbcg8EQT(Z>gQ3cf|NF?(&rdi^S2o< zUfwTC$XkpYMnle3;7%1+3cGrmoJM*<t2h!Iq* zY+LYDMYc$lCh!qw3-_1|aqYH$6eGs zS=~a7mZCECmx;2&XhGA4dW#bG>?AdZq$T%wVYY8;xqGI)=^i7Pi-Qv(#mw&J%vdk&Qj<=g(A^AZ+W@2eSCueFgflE(8r~U;xf^ zWzt&7I0M)@q+?=x17SrG*%P=Hh3xkmiH1Rvg$#-%FcoPxR&oPwC8G+398N1lzgc@U zPAD-<%a$j`Aumi0V0^pqTY16n@&0L5VWlEq>M7do(w1VQPC}`(VLkcjWueLX_Sz#M z>3I~oUz>x>6TSr9s`xZRsEg_Sco-L-rSo9lzTf90yG(SXSK&dYQ+FVqjT|>SP5KH~ zD1U`~(b%flhR|VeVs}cfnPl&qWZ5rYW)t@hpC&o19faZv>R8^)y1D|DgQ}>YC#sFn z@P$H`5Pk9FX4}Umfefm8%t93OwfrqY5=bzgdbkH70J=qfC1sF}N z?nAY?V!9McO#Mc)0zX9<>UE0G_u@X;Mqepof6gY^7lrIwUSRC9r((XztNO{vtfZ#u z0z1)-yqqnXY3K&1h$k$D)@PMfp{(3?ZF4gBAOH%Q%Qj)l3JG?a4wT~_aDR$QUu8Bs z_;VaHD8&fjt&U~aYOZDkr5U`}n2K5lbMrUAyKI}3R8%E~j$#7$0c=!R$>Sf5&s;nL zynbd@fv1G0gdF#vY*uc<^R7_T`Zw-C53g#8RovNF%~g-j-T%!U1PT6_ZUy73cZqva zV$aL}m)WH3`0&buueG_v{ZXvizJ%2)#=7B6sYn_Hp!IdHD{CWRoA(Ts0gaj|lJFPE zE5bvWTUKhBtr7r0%Af6R{j;})Ud^=zEU&sIV^D0n{dYZLgO6Xh%{ThjoM-6EHOWh%xjz$ck|Fyetf=r%=#=+IJ*1OG|xKh}hsolaY6vZ;b>M5u#djORi+0{Th}O zzA|DoPVR|lpl)Y=b!PoTFNx_^9@GsuJG$I~c zxPsnIAwJwyLLDa;0teAhOjdBXbSeAU!d{eH1MAwxTr>Kcf+(HKSjt7?097m_w>^;? zVPH7q?T#Xbl}_g(r-&)@(Y*G?jyqF=p(6{1NG+fu3;*G1q7P0egMZ$z z?%d3m{vkb_Np}V)ixIGFnrupxHCB)vQZDI8=UT}gUvInEV`mBYnd*W^H*RZ{R=Woo zjW?N|7#dqIDGWO8k_dJo21PUTfWvugWfbR#K@5N2m+<;6yFctynmx$5&ylCB$2gXqebB9`QmWX+=$)8e1JclPhh1%%u1mMPq=ZAL~5#I18^U z4)Xc@P%k9z;AZH(DW7EQO|=|}(2699%}M7)n6%Jqy}twT{6h+-Ot4~V^e}-NzF!&J zji>d4aN<)9g}U1JbT2J$#M6aOfNb`Ezu%bd;ZyfLO#hfeKEw>^@dsre*25v!ZBwg1 zh5BAPj-0;Lt8n|cui}cI01sWH&=3uJ3rRpBt@)2GYGZZ=Iuucbhj>r7M}SN{8}FU2 zfJ4R#GBSbT{4QBsGaJSqU8f=;q3rHf_7hy|K#C5@v)Ak0c}GH+-{cV10AM~;+A74G zG!=}MK!+$gUaE)3?K4|O^wPA#=g+_rQfbZF#q9wfR|*lXNlAkCe$K(~`Gm@hjkUhc zG||5ZM=<^ha$fwZ1YZ*$MNA;-*IvP;DP2{D%sGLXu=aB51k*P2b-5+PlRcL&nwee& zv7KvAdN7gt{j>~XoH`yy5vK(>!(E<>Rm3Lw7f!SukyO1-l6b%N>L>HhE+jbeUSq8A z4pW(f;jFcUGX^%^OCy~S3Ttatnnfpzv#Ke1y;6h1E3Sh_QpRNThZp!|Nav3-t-4fz zyma0t^4W7^!N>c;0-)%0cXT7nQ95YDOk&%N8deI*{7&21)V?pKVal#3of659m~fpy zzspYreXD;^RL2L?9a{Z#N()|s(*=ALNsejb2aC|Ze)2UtE_B!Gr2o3{bZb^Tz*J#w zM08^&zSoR?^S2pusZh2{_b9Vd3Eeben(34jw7;aszoWOtYI0bgFlp$|U1$;rvK&Ed zI9I-}5PuRHINcZW_O^78`efsSLI8b?TE{wk%dU|~dg=m_nNkS@{L}C)p@f709E=%J zd>WAVi6vPgroIkZ;wJ}!*%yqal&dQ$QzSPx5K;?)V^#L_jpE4>G+DKLJB?JmD|w5sjE7@g5Wif(RzJ*Aq;#PF)&2v>cu zM9xSr+sA%O&EmvPUg|Cf@ui6BvZE6Z_xvx5q_HP(bsfanIx9RCKNpcyExSrAD~A6e zC6PTf(v+&GZuvx^!|Y(CDKY7X0$od;_S#w_Kn#=q=+DFdbu#?G*ufsw2@1w{dH7(v z4{Pi)Coj*=2pVLI*k5bVe{NH4IZx%a-Lu)e^Xo0`TB+nN-}T@t+}Es0rCBx6_SM13 zSWG6%uh{cf>kBDaASI~GM#j}OHNw(zJ?0Oy-m)RJizvggE;`eu5CK`8R55g9D#=j{ zZoy43j-Bis&Jhb5fN!riKsh@5y`FZpVvKQa#EG;}(%@$jW$t99PtUo~baSrhPA}Xq zbc(J8#H@E!cP1e57|CCM0lgl#a!^!!I#wIfI1>2$e~lQv?h}2!PA0ueX>UCCu$j<0 zU^x<5Ddf~ZTuB2Tb_|9rEpHZBL9(-#g{W zD6x~rY1ima8(Q@$w-*jK`~PET3?0Zryn86*Xh&pvecS6$V%$*4_g!^@YZbQ-8d6R) zI{>VT*rQ?EyJo-EEA~Ay)GsM=c#TE>I9IMDpRsjwmr?G$IRD`)(%k=k(;%|#_=%6C zW9Smf$$5V`vOaSKo;tRI9|4LXPQ# zoRi}miXbmH+GUwsc39#D+bmcsk*4xtq>dg-nvM+ZGD` z8oz62@cn3vkL<<4Cuu%mysFa$jQitf+w-@vQyWF-HS&IL;oV#9<{oMkuYcID@;)WU z=FcK!jd?Q-aWdwcA|I-#AaFU$>_+#x-&B3LQv)HeoV@UM zZhOe@pd1nxu1)?xa9u+JWe;c&9}^u_?yjUDjhpsKvfHMY&L|hk&aYlFxXPYXZr=YT zQsLI9`1yh;RgjdVWT68ZZK5QbOSSXT>{=}9?i7EbEi(Q^Q=`1u`m@`j;ojEsJ= zEzF|$M|nOc-drP?*lrK& zUr$f0>kJB&EU}%|_aDH9(m6WOURCivgExQ@d29`twx6EUMhL4Ydj@YilW7%aQF;P> z-L$ExiYh-NMZTxQF+VF$P)2LzOMe;9`f(UHH#EIwl2}=fgDf0%j`@2b%_cA3Gfw_U zbT@~In6xgSiAGI^#kh^S!pRkxIjILdSxQMuYQ(0;pFScp3KwbT=P={awe)Dc$bQOzzzz1*kmkpc5AU!Qm1<Cg z_2W|4k_3+;4F3MZ)_d>z1{-VHQW)y1Po^0UFK<~+ZwgVBGrNf`bdz&6bCM6M`>ZV# zeQNnc2}aiMOK?`qE~&o{*E(KIMNr<%#hOmGu5PT&epC6M5JHl3FS$I2Y5)WN~GuBe3hXI034Pe5kz2~(wMaf-*) zwuvk~Y#aGp*%tKDQQp*vA!8V6a=J}k1~|bpL2Zz;tTVM%$F^QA_dbMsSN2>V>XG8y z|4#*@cGjpPrg`OzDpqLno*`cy6(9^*$ciE~uw}Hi-tm6HK{I~}(5@LNcWh##rN4JQ z?yIK|Uuit@(m=jtN=xJQ-YXe*O zaIT{l^7meY4DMZraS+#fsm?V{DsvL2g~hMnee%$c@U?WP`WkyjikoZAi2R^X%G!J0 z~VLw zgOVGwdMkiszJQSg-7d8bX8`nZ=QzP@=}yN|0@Cr94N@H&E0u&CHrP_iX(2_P$O0R_}2+2szF`c04TD8OH&0- z1si_?hQVx~{R)+qS8=-R?q9R6=cJCC{UZNByER3Gw%Tq1iI7Vx|nooCh~J?o-U451B_a zZM0asZVdUX(_0t+->FdbJP7@2Ml+o}DrE@l#>AjQpS9Iw#RYoMo#rpVsG!60g{vXb zp0zgnS?7l3KEh5ld>{vp!fe|!2ItT448;U?unRU>ue!#pY=6r(lfWmmfifc+3hPv) zHt<~RwDQ=PR$h=1W+61lNAphgO1@90Tf?-dQrO|g9VfIvW5;!pnorQ>wLLyq$rsl3 z+L@PuAiPps+bN?;-GU=yOXG{ze`y&tJSKsJFL#ErI!|G=n^F6MAe_^+MM;xJo$^eZ z*y)4H&8#%ut^D6onUZzD{1tyM!^u8BfbWv(TYQ0LNfafl*vG|f!ygKwTo5vPvim)5 zA#y9WRB5?qZ8oHM!gtk0GWJ)RxxG%h(PodOSD{(IhnOiT6yhWpIT5a6xZ4Y9mKAwO z=xCLhjV*qn6e7uWcrf!|WomGw(&^v}rHy6sT%5jJG6Malp(b-EyN4T?FnMEzHbl)-JTdN^1E6eEo$} zTxYAJ3TZlX$UVIFn>W^-!OTEatp;(H7gM9^kF{_~Pr@?aTc4_K{rIpBklfM@-t$gH zc#)^7SoF)Uvvc=}oX3m(`SbQJjZ%Hh*b@M;jK;OQm1UMZ6v)wtQuf!QL?c{xmJv>) zuW!8G>*Imtg#}zCc8gc0h1kD9uBd5g2BANg536&+?M}W)LcQQk*|A}q1eZ1X6c!be zZ=SNi%mmh2@rbzB$Z~8nz^!>UN|Na;jeCX3TD<3b<}Jg0P35@=~q; z4RXpJN>ye_*TBM6Irq^#vfm+)a+7M|SGA$`7FBFU$h^Oym70VD;#wUZ7!<|*&+ZM9 z`CF=k5QzZ!26Bj%9m2Y|G+m+ z?Qgt5;e9R3HapiS$kCFo_T!ZKFMWxcb3oVd1wO6pVOU$eYl?2;X*me#8Pf^xah z#l)Qs#m13&(tuZ*pMP^vk)}8#<|P{aMm7dL`#LZO{|0{s9e|}rjcNnXsr59+=OaiJ zf=gg@OzRH%`8U2$@d*x@K%WjbuTwk=X*9D9vlUCv*bV=o!2fb})KKSI7e-crIFcv3 z_vRqg{U~C^}7 zTGq63Ahh%;`aZM}R9jx^f8QmRwZ0*krmw{6m2A5iQFUbym$Rx_ z2$Qr*QfMVPATCXeymFEDi^Bp5i-ceg4&F~$24qgMdac_z2a7do5()gK<+Vr2Gm!Mb z^o7Lixt9EY`_8`1^vG54VN5Zl7r#3xi&Wj%JOeXfsQTw8Yhun8~Y&X4ZQ}G#;=1!7n}Xqms)VO(Vs7gKsH2J@6g< zu1yZ)u7r7LLLA374E&;=V?)j~?o zP}nc1YS9}R#%|cvj9zC;@XWOt5)vwtxL73Q)IOp;ab@YFWS&379D7qek?OjknVY?p zDCFiD?~qXr3Xz9?m~1?>P^pwnk+oKbXeM?rg2fpwifV}#%U4d7V&GRhCCmJWA89?Q z=GC(Px%4|K=$ux`g>B^vg8@q&yEFH4Q%jeBNG7<kEh5BA-bpbJReS~~tFkR$I(OU} zy=?#ViOtMGOWy0k(>F(7YiIm5+OjXI7pBj^8`ZSegRQ*zI+w89>IT=bmWAOL8y?Xg zN>kN7Yg~MkD$TQ<9Ca8B&NrjB`c4CeU`5WAkDUx9j+GL)DE|shSHF|CQ}^mQR4-50 zz;+cb_f%H>L5Jk9n!&ZVng!dTs<#P68{;sN;Xh*x+_Dvi5Pa$NT5A<+|A^qiMJ^5t z`hpL039;hPa_W zn_AtK=<)K@jQ@Ypdu2;ToO}>8Q8HlSlw%^#js4lzwCj%+|Hk<_3IB-+)yC^*I(s0i ze0m61WZ!e`+=%#G8ve*9LJ+~M$h5?Fyo4to?1rn3s8sdscYk#oiv7WUYFK7+oRp)KI;QENN7Bg8V-_UEO#$)uUi`nW`!kfQ~dt~c_kzrR$c zDhBPpdrIEEYS+b6=Wna4c`@d?24Qn0wp@`nc3AM*pD0ZWI_YPh+_m)4vhU3pd&7_Y zeL(Yx8gpe0Amg7r;9w9$QsneIwpTwZP4FFh1{G!45TYZRGD-BnI{O}l$CIkXQqD7HgGSxp9Rd7u9Y zabLKEsN}QwLSx;}F5|#7^b$o*Vk1|8mNlmr+~n<}r{(=vQz*Wg;yY&8twkw{-hql{N=)B<>dcoHk3&WK-SzL2hNS#p)2HJzE~a)(w(khXe;O{?l1d0ZP@_OS+yw)a%kb=QNPM z;;mq~U{@pvc2&1~?0=x?-n_f+G>HMx6UOth5iMB-%2z-RM1~Cnn~8nFzRk)LRII%i=ihB-?AUrZ;ULEW%Abd z;Q-wW&ZUtnrwLtH-6bfi3CXT6Z^S57@=jQbYT{-r2Xp*LZMa0tGMRVHj17D(oU_%X z?f~er?C6JUloV@89DnL*^}WQx+0b$tsdHU}6#;+qN0uWdylJVp0Laew3;X;!1Mt_b z-+VDh?im;Ex(=he--Ry|jI;jX?j<` z4(g8(1tTua;LV?^V>~PRPGw59g}`V=W^o2%vG82x$FXHBd{k+;iZa?)+`N8s96*Sl zA$_z~x>!jTu{XrHG$m=eQ$^anief)AG)CTYVSP~pouVw~t*EK6|uf|5e;R3St>LkdMV2ACK&;3}O6DgX0OU-V8|>yNsT3=-X01l%{ySG~;qq~H0MZy?co_ZiwveL|lxwLy{N;UzU8 z4h~xS1P^zmcXI_VJ;HeSM?+sWWkLT&f+jk?i&%T>8F)G%#qnjxrA znw4o3VM_W!R}3J8ZTloHe|Dp`=8W?mR}gygQ9ncGb5$shpU@g@;Sqzqv=73=y+ldN-kHy z+E%WF^s)FBcn>N8R!M64aZhBW#LObOaDRKJBI|O-7dQK&z8hq_+==HDOYXd#>cYD2 z!mf|0m#{jF!nX`j&Mzm=3hAD;|1k39X>7msxm4S2-M?l7!yO+5eAi?CYXMxA1l^Vh_hfZb{w{Pzuu$IUzy4j0Jj3TteIcH#I;ejf9c*jvqp z$T1xtS+;YV0Ts4({*MSi{TEW4EMFFjNiua!BE63;EvQ#>a$x*O;MjdU?hTXSP8S+bnjo$ z+2bq}5yQ=;+KFTm(q`oQCp5wS_4d0e_q{lzdXbm(u%Y)>^?h=m&N>D*Bd_Egl&vQi z9H@M9)#_K?k>*fkjP%62|gnYbk&4%W4WL78OaUx)?3lIT1S_7k?+NDmn>9g;`fd^Hd(|a4Wa++TH(*b&O2fL~ z5okb276}W_7vUR64XFHqZeNu=5E5|TQ-QADxmwSbqj1{YCD6f@OH9Y}jA+^;HN=p% zDYme2qKNH~`km$~pe9UXFPZ-J0+{dy3vAT9t?bqzGV27tz-rK6D zWNC83Keb=1 z{+jcvL1%5WL19K;6J-z`uy0Hw;+=$Jk{e`hZSr4-m!f0uqvJ% zHfFpg+$2!husvjMgB)o=b?W=Vs(ZeYt-=>#zpi{u9mNocB*&Y za(lU&ALO}Ry)0Xj!>`C`x6*{2Ph1I3zHV4Pg>J(K#YNQSe8s2kUW_mYJ()oj`xGY} zOLWgn9_}tAd+QMFvDK^g>fSz0KEk2A7Tbb_0aRUsr+qrx1U{bv%_F)!fpVjMu5V1R zCd;BUIND~*+|qtY2=(c21Zj*#!{0Kc5| zC8|b9X{NZGL+hvy-KwYi@o!4bTuXV2g44>_9l&xZ>b;EI;YFO%)tdI<@-+cOtR#Ui zf2h1)X-z`4`Y?;H!@-przK9(9pq&MV9n8gKqdy`ShT!&6*w1A@k+ao^+hY{@KCAZi zmAFwVU+3q**tEhe5VK=-c;~l&!P@*g(9F29m3ecUsPbdC6`^l_FJB(J=>0YpDCD~g z4gQmktHxUt+UzT4mlyNoETq&7FCae5P~%2?YklK~Cs&n$EB?6VqM^LLPe% z$KXzjZ+i@sP7tf|D{|9O;XLJ5>E_>;1MZF>s5_21UdCmbKczld`ArG z)|I~5q1B9MV`9xFHj%V0rG=!xkIy*&y=$N+kdzVj@VN3@JP#-Dnk>!%->v2PeVkM2 z#rQ<2L=!c0J0C!@Xq9fl88^WmqUZm+PBp&p`QggV?Po|$)>@)WV0_z6L#ge2BldwI zxqkyAv?Sg}%GJ&V|JaRFdB)4fG1~dmpHLH0;UP$nc!A)7#idzDzV^RBmMe5W`%*wiU{bB)8{0<$V z#kFq@N#Lv_RmXtHO|}SvOBcvXuFtYGs7QaTZH}*F-|uLm2^zaI;;I@kRDNb0D`@-R zd$XMO@1Xa(JxxdavX5!{=y8)$KHQEoG{+6T+MYii(bVfbmku^&^?m4m9NwWa-6?)^mRcPPh`}{8tR1t`xO%3h=U@ZYA7- z{*xA~9S<}Yoh-M0#xu*aj=a|5jJgE*c_-SR5bPwg)-r7p3SDO5#8M@=@%BiQTci`q zgDsx_>nC}RRWZP#0Y=39a{arzJfuilm9(1^$=|vvJnq`fF#N%7w@fViQ;`ZY9Hq*TOG${xf?T4UK#oFg|dbG1e^uwli?ET|gHFGTDSl_`C%T0BF4F;~ zlnL}UMjW$PN@PKwmAsu*T!~JHoH9q;u<wuTLQ9& zslY!KQTvw(1${g#p*zlsQROCum;3gm4Q2JP-DbNfoQVgVqz` zD1Cyz#GITZdI1(WnRl|mBM48q4qxk1SD>}J1i=W_%}O?)HsA4vmdoC=+z`MM5dTbt z`Z#eUMp=>O#AhL0|MPCaEsv9!zN!HhCOmD*Bm+Lvt@1dNs%XFbW-vP&36Z5k?t*W} z1pyS`XR%~Vm6rMVj%v#zH`{x{u2;mCZtuf;40Zk~P2y?*oh3AP&BYXdwoZrqQm6KpG`FGeo1QQ#2VF#0sEd4MMUPYF4+!5~lE_3)GcGTQEc>72} zj{pG?mFtH_RagZpQIYe=v=psvzb#?TA|vY0e|>^?jaCm`K}w{(qjs!WfV3IV)-B)1qcK zbZtNJoUZOFaR=XEutesqs~0npEDfUr$2~9bM{nHUP4V!tD8Tr}IuO3Q7;=||#BB_f40Z6BuB8`b( zLXWLudJ}wp$k@wAlgoat@c~Kqa}&_J1<0SsIRmJA-*=XFk5mp!=*hZ>sF7~wTNx7b z{F$)d7Bg1u);4BGu@p2F3^C}Hs21%YbxsUB8S9PpW1j^0^L zIqHoglep=AGgrq)z$Xtc9moq~52`)|b{MF>P#=LuuqGs`#XjPCWT>hHo4&}o#CzNY zrWIwM-5(a+=JywSXfJhgf>ZyB2;uVwUEdCQM{3vp0JpOJJ3(3EkC`%OfC%l~C4>O* zKsz-{^$qrT=TNHy?0R6F|9O!c$WM>Rs#W71$D|%?-JKS(7V;9H!fKoWN|z#H8NrEmX-9q*`Qk-y#WQwCz{ti#x`ytcR+_ zgE+TXn1n;)Gh$)~pievpahnCLVP_`bf0!|)MJXBO3g^hbr#7$uU~F+ zcEVi50>@RN%iBCAwfy~CnZtAPqKekTg}{Jq7gVMkM$^I3{6sh1uYw5gz-uOz2iY2R zTdA8#Qe)NhUH&HPRHtO~aUH(+1=;!L)*)YF9}pWm1{8Txow#jp5(USwTVSsU({eeC z_=5Xog5-?QK*{!{I$%K1l?>mZi-SS^0Q>n?wDWjMOLz{xwTYxt!UaCeQYAQMBmF+t*u17b9$zOzoWV&M4-m@>YFr4ostr@F4a5N)GfI3n-;# zw3H9Ef)lbQ^KGgYO2@r~=OTC^uaRjrUK9j%G-MuVgU?5fr+)!^XDX6qPsiLC(IxX2 z?*le6LoJy6cir`p6p*TX_5a2uUv3w6&GyD5*WzgRV8`E}I z`s~O)cppsdj`>3REQ2;$-<-?wv3U%~?`ieU>ZECvcCnE1sKiRAm`h`P)mvzM(P?kj zCNrJ1{5@m4aBJr5gQmIf6CEnh0`kP2&;x^ijGyy0o;QFP;sKdCYcs~9x9Q{l`zm8X z7NUa=-+@e9dIaM}X{I}-=@QnmMfsT8k(%rpn|Dgck}eeP`(^~3cWqFL8&}az@@|6^`&4)Ney?n__XCYPWW=gEqI~RFX3`04$)_!l z9O_x1NxU2CiqAq`ypz}B`2P^p`S~8WjP{q~bA=zhErW#{RmGiBb~xkYA|fK@mj-*O z+g*LQLxJ`R{|#$ZO-&g|n5J|<%Vt_eMRSc!wz|1=fLQ3==0C3%&WO#oP5}-!nf*Ch zGKZ8(hrl)8t4&%G2__4;!A3BBWi`mxOjzB&Ey1a~d%)`rzf5v_RvZe2Iq};s<^F&sf?k;%@9V3osEFrp@YPS)WUi)k*28ejdTzTCSzzbZU_E4h z&h>pw%gksUTYV_mfY^)2C%5;al2IO&)q{0xgPEVisBOpHaZQXBCeQ?Fu2i$vZ5#A} z*)Y98c^%q%k2Eb)8RNZ~B~fFVjMK0Ml8@;B3n6X22RgT#v>%D>v1sCPZR6Se_?Ep0 zhj+eaN4$g0>sz6!D9!)R( z+fdA~ZSOO5D5@Ht2K#6ja-wyB&dki(vM ziC`RuU#L%0W23S4I>Nep^~D>shJ|lg6Wz0u6$o<(pu~;PNt+c*Z-Db*pC)13s^Gt; zM|!t3rQHXYoEB$G>UuHVP(~s`F%aJ9RxG&E}*2AmmvjLMUwOc zfE|9mzR$JT<7@jF=0AKR4vorD9xLc}#9Q|0`$;? zV2*OS>hwf+z5{LEjsQ#8t?teON$wQG!%v$Y;fYfqhr_a5a;p(;xz8q=qUsl-pcP>< z*^(nPziowJ&2$odth*+V;<)jSgQ%S&)ia#w$VGRUA~EOm5p8@siE)xL>-v(Ubt5S-;d<60ykvwG`_5>?$d9K&+Ybl_;KkIC#=>X>2#`;1{P3D!GB?WJik*HK+HTH zUh9qgyTgV0=agM!C01$%vF1(61oKc9>2pmjibJcPZcsizT%P_Iajn%PXkN7!RtODS z*NpYS9`(X3c&6k7;=(`e?Q6amW%ph$x^Z@6+pNC2uYGsRtC6+|(n?m3C~4di^}>%O z#)FE4MqQnz^rX!juLm`?=fP3$v!*usiuaDx^(IPNej;PLHaOppyo>Z|F<;r3nUMXE zvUjDMUg{!^D7wc|_pYc&WP=w>O5bMqRIJ#!fDmHD>LBXz?OLj6JoA4~^F7LmaKdeT zXIzb*)l?eVp#9}lWCa@iDw)@FnA75XX>JND-N#C|O7JA}l>8GZDgOJY`k(CVok~`s zKhJZgyy8RQSB1`jm+lHWmR~u1I=k}=s$tg2jYrBAS{kJZB~;FjZITCHPfvzD=Zb)@ zpv~*lH45Nxjx##Y1*_9raIrEP$=l>x<^w$<;J1gT1I^RB@Pgmzwmpx|0JCh3pzyUy z-_tq-@=;|)b+r_WZ?sh6>{vZ(|65R4@XoqwiEjc6?B0t7uDs@0;T9CpvgFNMZxK&V z+!o>(!}s(o#zQvdtyQBWzHo_6>xnRSE@*B2G7aTA*iy{Q8qA7E>vABwB5rfhwi#B6 z;h&D<42Hr@TSR#&9y@P_NsSRdH)S-apiUt&byB?~eD7ky$K@-jqnU7{I{Q$;W2&wy zHmmK@2A>WO(igbbD>m;vSqwY1LsWYci12u&{C9xL|E~|XwG^o}T8=T+s$P}t>3zp} z)G^5%%&I^_+s0)m8?6EjyVgw|Lo&$`D=|XZl`)WcrZEGBPPBY1yQ}p@2W(b_!L`M@%+`OW^r^)?3KL)RWNLz8#ruR&s_n z=NGrlRBf!Y$$Y_}Z}Slj`~)@M+0OD?tL#O*WEvJ$Q@$Z1U7EC1>5@|ww^`$qkCR`& zxzrxW_>Z%BzthA?8Zu+m-o##TcweICLthb0b0#rP7Ym;LdH;`L+J%{UZ8zt=AU@TA zpvZ{P6UzzQ?tW;?y(ofa#OOqhK*!Dd2=o<|!bYg<^J$>8Ulp4HG2ZON&elpNAZ}?rr$P={STv3NR-?Z2UFq0ebnd-p zk#C)07$c3g)b*eixi@&X*|TQ&xksFxcK+bxC+uPC;{9J^zgXpm=|pw=@9#atsn2gR z8=MOx(mv=(8<`*NR3vco&X5MY1zI=Wd%l@&H}ZMgC`v(pvt4GVZOulmaB0$L%2fu- z1%_vlO92Ze!|$5IvUUT`Q$$DNWrj}1WJ(AQqRS#24zex{PLL9ogw-2u)}9FN0(Ps78d zt@TG&r}@|Ne+O)is=a3JL}~e33qQ*#W=Q-Yp4;6#wPS_R8WUza)HA`&f*46bSx13jP-rU>j$5+kI#5HH}*qn{kcX$d1?S|LI#6Pe@u!i~wQM(Zr&XQr{%}sFz2_R6 z_J5&dote~IEKLmb`(qJrts(0T{ein1X<;amS=pg(H_r+ECz2G=XPsnPYMnAQWmP5X zYxC8#zK{IbY3_80)7kHZ%-_aS(!9J-0LILieRRkh&1#--CNxP2tn7H#8p0 zX4Srd!0_%v>0+_@jGm3T2G_Nq?+1bO-PhxthL|Luc|PwJES;{J_Vb6yn*ek{gLUIX zaqV}9lKMW>XebE1%Uj49DU(F9T%@U3_fi$E2D$rrdA*4T?pA4pg&vRh3(Td;_`?A_ zfVJNOSr=rCD<1^77@QyO3Jg-Jt?+7|Y?&HfZ#}l;^i=Md95vHG^NUeIW4F%rt zI+yky;CmT%uN(5^Pd@JC;3c^uP+835@`MzlpilvY)Zgi)wN$GJS>KstQ`sQn1!8?P zdqF*9r}EDEy*PvWo19M-TM=`UQtI!9*rwl&!#4-LJk|dB_iJ8S2_yCSi?`#>cO-sZ zP_?I$`gnP)*|T}^Gpa^%f+kso+%UzhkP_&&dfDwLn(9cwtqmOpHt|Vzwd6~ehv=D9{mADL+l#A@1yGL} zCTufp)O}GN!IH-1*O%5lw6lunO;!!TVSQou()Zv000)P*J6JkY)z^Je5R?*c;NK-& zga`=C3zukzi(gR9%CZIg_n9d)HWYUrgXqwBn_m7S5MQg&p* ze-z%y+-8i#iA8!bSRT;~ADvX{9e3Yd-#3<);y4`6r3(i2d*)$hoCo)+Wu^E@E>Y9J zZ$0#&1cRH{ZXl&KsbKfdKp+(ey{p=mwRZO!N^{EH1G|a;`~y_BNgiHg$w%w^ezK2Pl8#ojLQu-8rl9Cb~i<8?3R8M_elzjalp4 z@trDcpQ7&KWPMJw?rut3mmdG>=x` z3TiTYh!FQ_?54wpxAPV@H=hM6f5YpoCX6ju z*ekH(=1m%C+C=?2E3NRx1rb7e#Ol|uts})$xT-*P z+?q%Gwbf#*2;!?Up5|zye+uk_^ZTC7O#sfU=>h+PKbawwVWw3$m01n*fN%K-XY4t0 z;$woW^|fo>ziTg0Ot))ij=r)m9-?LzPnDYAl-AI%(bx^tB((O)dIQD=Pc_rf0ncZ` zhfrUl`D>Zx4}SqSZo{vnI3#S;CsRQ7UsM0+2XxcMylyn-6oCQ~?BV@yhFGzJhj z(mDx$@E@|Nw7IUrY!?RWwxC=Qv(&d}e$5)10>SN>?_Q1y(ukC|vN=tcn|`7jD-(8N zK_{j;+Jk(KoK#GOk^sQ$k(d*UsfUBC(=*46T81Ye54P}S6aKVc$ZbDBhW@c&V}T=a zFH2Mlwn|h;d1n=u~qH zi$uJNy7e#he$zEGor!BfJEQka;a`n1xJb{p$CcMBfYr#7zKuD96C71U_KBajrL4A9Xt7=bbaK4^WhMPo8yPd01rAi|?W>8>3$Uy6b%oyeLaRY8e1|<* z#i9kBdi!(c(AK8zJ3J0^U&<8#anQp%Q4y-?@3YTty}actrXl|VB^4!BJ00|0%;N0Q zhQOu-ujae<{OXSveG&GzwZ`8T_0|@YMzBMAcZVAf-kTgR-PJ4@%09&%F|l0mZ9Fne zv$^>pQqwr8neBm9kjp2dnXM=l4SJht2a(%p`)D{oJeaa!d9`l_NF0QzifFp!nO`^~ zE#pRSyd?Na%?PwyZ?|>xyBpn#b0Gy4LV~I8&+&p4>wo$LI(?+ii7mh4{!?J!}N^6RyE`w}u*Kl8;{juxNT^yirDx3T5BCmk2u@QkJ_K6A_i(W z-hJ2n+{I9tnOpTE2F>PE8f<9#N?v(Fdrs@#*|I^X_`B(q2Z6mN>_uM-M{p?~HgO{g zt`pqv`H&5z!C@To<(+yra|MnI_ls-?Yqww@nYq;!l=AY>ux5i2ly9ZgRV>lnNH z*4_41<^+Gu(pz5eJH*>Q%lgb^_(b?qmz^iR{08Ob49PjIWA3w;JiMX^9IQZbq0`vE zz)l6?t6IivgC+A|#*_erk1)6b#{wCR)Wn%%eflDKBdN4W<0VtmJ*S5GKIei~=AFTr z!v}O%WrbX;-4N%LV3d*{JhW+nA#CQIg}$b}^GY$4Jn=x7bt?Qz_g zcK0w;Bxz~m>DL4&ElC5EbW++06~w+iz4Ul7p&P|eE}SPQPp8ZruEtaCdh;T@=YhwY zVs+P#c1=?pcCo;2vevjbQbhUG@qXX2F8yeD=dKp5*lTO}8zL6O3Wy%r(fhGBUy+9! zPThJ6?G;`dKpcvBV+`?Ph3%2UzQ&{-V_$E+Jc_4=TSh&|50qRY_iLoE+ z7GL!0Z@4C7vwgG)9zsH!E-~oCB1iwhikeQQr%7lrySxH}w%XIE;{zd7 zdTW9S&gmCz+*Bla26Kfvf>M`}j6o$0Qj4kMz@S&*BFI;i;~b;zgcP~sP}uKYCoS_k z3L?)^HV{sA3}*NFg}Fp(R%K~-X}$rywL6ptRbF*l^T6;;@Ua-`+ha>`iW%6F7m?v8 zC*I7g5t}E>9JW&rwX7dru8qv^E623i_bvxjS5gtI3aW;H2$| zj(lG}QSWhd(9ob&Z_J~aA>B^Iwwye7w)EsxkL6Gtbp`0yjie`jr5>e~cF!PI$W($i zZhl;AS{&7jPXe|=h|Ol=GuM@i*hdz{v<`|8KG9#J4w$A8;IUTE5%RtDxR21;X|E^m z{*R(Fab)`cJs4!A;sjiboQ;9EQuTbw}#@O z<<{T1{+e6(*jhvgda_p8dtA9cp&qgsvKvZn+BA}@96KD&Ki{~S9WtQL%nX?w+&tyT zC<gGVpoLN}_Lpa=*L7op@oR^FAX%&+Ut&{CwTjxm-ECB1dVLP9)_mp(M>wNU z6}BVN%6R_fpFBwzZW?N!i9Y11&GR>zetac-XDKi5+ z1wR7+Xq0R1eM(_bvC!SsLqqf&lpRkNtg<^@Y`@v+UozHJhynfPx_xIy;~07ZUnYX@ z2`L`6DdKvL$1L5s(Ok1$2XohT6nBfqO9Bv9nx^08(#<&0oM8*Yd9SO;YV$*hJaC9E z>o0$gLiv&@g@BD&CHNbO4MWVwJ^;aScuWh|IOLFN0j;d6crhErc<@E1Am;r$*v*p2 ze};{=O=*t%J=qA5((fW%%joxkX!zq$RgN76uf7fd{KV-IiL$o9SD z_6xqjiz`HbUA^Sf)pJc{d%;==XFrHzv zTZ3DUKd!811$qF)>dQcUXeOU*FGzSLQeXF)P{4S9_A(Vt!`7)QLF!p$y zXsJ@2dvL^A!P8juH>sehi_+WqI%3NZ4aXf8_S zAQN^|9DQSq=7%!p94};8#?&q+?#nQwMaSX1_!#v|7uoiE$Da4sAp6lr`Cs zl;35s&?(&-7AA6bAw4x3#5PW++aWvd*~Mrr3M3{_u_d#}RN|Z?5!v1co3@Gvnd3Bn z8uN=yj)-MMLPf;>Fn;jCXzq%Vu>P`%b}V>E#s4G>YtM{@8Oa!|CQhv0il4jyKd)7h`qb1}KfC`G2>P^P-R|kY>|PVYozBL3d-pNew%S zBtIkZL*!;_=A$!xY%Ax_CQV+h4qq}`c{eMQ%{)P4b4;czg7(Ktuz-Ey0zT$XyH|5O z9GOTQ@*TuWRJ8=I-exRnhZ|lFvxK__xK~aQl_mxhQgWChub6XBbpPH?Oi)3Vg$>*R z7F2rwqzJ6d48;4_z6n0o+8vrn>&{l)Ie|XsBdK~_W&PbwhIcNOsdyDm{>6)~O#m6Qeb0ST?x?2C=Y`;&R@!iVz9HMPUuAUVa(dQ?E{XoAif zAnz*f;eqCJTN68j2XniSDO`(WvxGt{%UBo4qxxJk7%nA^Wzy~+rDc9p`oXy9c{4r@ z3{R-QDt%8dD1W#wLVlIOc(IbGsdxk~!uhtqesOkcfEP%N_u)HG_m*sh&RuRa7|^|J z8|TCK^1mD6mvZBj%WQ6aGb_B`%F#J=RrsOCXzqm56!;HpYWLm!i|-x)<37%fa$=x= z4?$jtXCq^WG)#hoPA6NFZ&X}^pNQDfO~PxJuMVL1Rxj`hWp)bWf&Ncf0H&)ak+pBP zx2|`*H!F3uJAp^aZUGl{&B1Ar=LPO;33Jh6;%D{xdrMAXBGf_rk5S{xdVG8axM=tC z!`+T|%?rOx_qkpIrpgVy#-!vKE>Yk7zgX)+JTpPOsEZ5c`(+GFTBN|je@%yATa6i5 zJNggFVO=~&)Gfez?m!ji=Kg461iJdX$ug5W1BRIRGpK;`OZ{)Y7S8eL#K-{R!r|_T zfMwQeo?2_2h@pRFasDwDv_w}F>4dRD6Mo}& zr2HXd*my4SG5l2^DH-7^2LA*4p)zp`?_awNMiSncg<>E23$`MSOL_FOpjAGj!7WL#uCj@i%6tmp(iyEIGk7ERCS+-0k|zwg>tq22Svz#;=Cz~yW4 z@4uDVh+!@RR_QO#S=pVG^xu7q?lJ{0chs`ycX*(~MDvw75*`(HV(-557MnNfGEz7Y z;d>q7VSxRP_qKBc&JoH_-auqQKxer(`1c)~i!A@T@{W(KiMfL+uN;r7;#C+IsKcvH zx{dFM8h2&i8O+HV?6?vukWk>t6+Vos*?s*H`k}fGoIrzF35KV#plQmc0b4br*S&v8YvAaaw8r zB{DD@&0E&lP1q80X-F9hsQ9UOr(&6?+doakGCpv2_)la9V%>_GDIKu>(B(O!ucarw z@JHQsT4BTw@C0@V_)CrX{901lw(#U*Uz6$?ymstX>IIj_LZ$0GUhN%ewhW8Y4|j(W z=N@127k;?=DW>T8-B6DA!^Uyat>Tfl&t~qd8sYcS4wl&>RUe%xiGO7{u26Nz#e2XT z4n#*DSt5rfz3d#*3SWMP928v?!Tu_%k%OLAy;~W7=U&#r2xormp|0V;aIo`7fDh;{ zw||Fa4qSCi=|DxJ%EK-`oJ-8hXdIGZ7MrWl`TnXrb=3a|VRU3Q%VDWwv}NVl(5l)D zTPm6g!abE5j1DLb=K8IBrshOW_YyYz*_*Rh-#H`baedIaN9Uj?#dte!dXSTbTZf?U z$H$wQX(|W(IPH6+Nnd|a>}^l`1RmyNlBv0gC6a?3Iwz~)=YjIHg-fOo&nv9~b5~d_ ztE0NmHf#iHG>%Vlf$K;#r&V}3S}ZzjL8ZL+0J*M0u+-fXfmMEWRkgSVW95%mpmkPH<$05e|zB3DIw@!xn@ z3Fij`%nuoj?;?=6v-SiI1A2ebQ6xzDF7|Ed#Lb^3)|SlI`>p-QBo|?(p&9jdQO@BD zFa&9_jnL4a>^>0qL`r(qZFSK4X~w1_Zk^;Q%={?)UBO}(=WN*3m6H|6|Gk9Y%iSTu zxG;=ZHrIJ7m-rerOf!_nc!S(HIt&S~-ftBt;8qC`Ubr*{WQZl*b{woA#_BOIDy@AE zAGwJTkc92(-`4w)XlzH&kjHRgc8UnU(?em}H#Ab#kPWn_ZUnu8o!(W;t>r(;9@+!WXi9Z?R&NOr~eEC35xuYh0^eHR%?^Q;tq1F9lb7#{YmIm*_F5$Te5jt0{g?B7QeqH z>>ZWMZ-OUvf87au*M3SpR8ldr@iO_MuOH#?N3OfwG%I;#G|*|+2RomXKn)2RT~~B? z8dO}Ps4Hqy5;MG8i@`%+{MhwVWgJOi^kjeX)kBrT*!s+b*Z&m3Uvqc%Va1v`ehpOr zqsW9UWw!wZ(aCJHU*iJb9>yG(+V4PdDTwHKkf<>MQV=_YsYZTqsR`THlqW}y)dO+O zyc1_I2Of68=WJJ{BE2=IheeZln~otz=n_l<2=;tl2RW#?$HhLiwS zo!yVIA34{)CxHI^RqXWAp1hMewRf-`{7OTpJqCQ+&SiHyrq<8S`7VTfOT``b>hLaQ zxHmQM4=s(Kx-6y}f+Tnt?gJjd(oxk#y^9S{t z;>MMO3fxrmMdb{R&oP(lF|0{tK_Jvlm4qn45I7NX0s7Z949Sx->>5f;+I}JoUifbX z#wI-8wTls?pqm$3XW^rV1w?-&yW=A!Ua!$m-g!udI%wybLDI(!V=7#Voqtf*iePcR z5d~!Wg_VBpVmU~L<2zSjv>)?UA~>8XxHtw$Ds{#k1{M>adm69I8@Xrn&4!+bt{8nl z@!#7}%iH_VsPQ(5sL|Z<4$6oz>+KF(Y=wGZS?h*6R-Ev^KB`k&vOvd-n&2VPv?~~Sd9t824rv+B!;FO zXB{;6GxJEOWL{H;@|8j=Y#$W}#lI@Kn$2}U#s|p^+u+r`xHG_{2}B{WJ2@CS4w^~H z0*yc)kgdU-RJoo+=)xe3wleR08;YUZ1jId9>vTym6zp$PdOhbpVVrtW8|3N)Lj$S)oWCc4ie@Ggx>N zF4vDv`)x%0ZAc`wHG5vh2?wU|?Re@qWm{fY5As~5;XUZo|Z>&4enN(&$>Ewzj5xQ(5iSyxhFnmVyAHOO#pn*^Gi+)!h1E&dw0x`2-@1 zJ&mkEglFsz?JXo&SLfdwOsUu^Q*I|uP7s$mCPriIZ5Kuw6dq*NWbIZ9E1YPlOiIj~ zGAKSntO3s3-!ri*W-H34D;d%H*!cFcH*+{7CpLJ2uet z>-9ol-LK}qof2Z>#+ajOLODx5f8uhW(N1mvGdMOh7htR^R54B&KI!&Mo z5(sTKb6jRKz1wL5E+Z^LHB_{UZ&tfwt(IcY8C-D@9L*<6dS%*P@0$reocv@7GKFkf z@&j2~s8_-l&_o{pKjwJjvK1a;E6h1EzTfj5; z`}oAk&gr2|i?eY^nCc;7!50&UUD6~GB9_{?R7aoan|~Q34cM#TxSg)VZ{hT|OE{15 zb$7arQ3gJzFNZ#8ciJ-(86MAqDmf?3<`Dph{O?b<+ZMzCD;wh40`c-nu?KP~RKHOV zO5&f_E(Q^7ZI_H5=J&2t@;BUPM=;Ar1v-ypo9Wly;@*a|n+vwP153fTo*?){wI?-- zk-z=zrUcZi%KRge*X24q@KdIks$A0rfi;;&)m4%j2Pcu+e5%3>p>$U7MMi!3>gJ7S z8?z11Qc_ZSk~4BniSm*JGpm%-Q^9%og%dZIN24#BEs6cN6`3EXH;^L7df#`&~8<9qGpSw!EA+HO>@0gPME>U>JEBY_G9pdOAM34VUHzyev!#ipYup5_fr+XdfS z9Um1am%K4&ce#v8j$&Ymmx)>&QUu|AhV+1fm5)w663CEw6a4EH(#1&`k^3x&$D6TVLwaD3O}rHUMddheePU+tPji{U};$ zdvFxrkUI7&{u@6#WX#XXNtY_& z;Zbu93;HTAuaKffOIT7yDmv6ZK@Em_>eUU!+Hi&C(gy~PepNPo^}e^8nriX-&xPZL z*6C0#`fXj`me&V?TBw9A1$@&R(7Ur!)t*K4UXa{xm70Y?C>fXOJA;9R7P5;1O1>gx z%KQUH68~oZ8GE)P*x=4@7t?H{Pm&OJ`rI(qfEEdYR*c%+5k<7Y-*1`ScO6cRyQ6cs z@M}y|dFJ5R0(x7%;}T8SBin-1V|Fd)HA+!{dbz5ksvwsPO}`Q<^6lr zDsLO_FN24%M}71!X(?{8Ir5T6QIaas>lTgDUxl%x)Gkw#zG@|j{*M*%sNn^2MZ^sF zaC@|HrEnwRPSO@=Nhx-R|E0y@*)N9{mZcRl{NPKecGPwyza@UuSnV`_0;*UKKhyHh zcd#YZsA>SMTIJVrgg2PKp+iIp8?V#S=$Mt2X>UU4R9@^$9klz2wsdNQjPV0><8{jY zQ;=%k2MZv6Sg}lnlD)x!-KJkbo7v4*9Nb-9qSrgVD@7J+{bE_wDg!Asv@y#9ioINiVD|BV5>Zp%Jb~0O9ZGL{#lw(`?Xm`{ z228f6l|A0``T6Jz+s2nUika&I&ttmznA`foHirR%IpeaA)8wdi3>{?mPL$C zhgBaZy}ZIIc68SPaY4Q@j>4E>JM?!wD?4tab;l&iOdda(YT$xZIfoMfyTdOw7tnG; zL#OLOr)|^hVk=DaTE01K7x?C(RDu9^sgtyWVbFpyfVPOSrM(Jz8Z&A|FRbR_XSSoj zT4fNUGtP!&ss!hq-^mr&+6@&q-GlUpW@ZMf{gV6cYcs)-rl(8)PrUnev(d^uj&vdL zIpy~R5J+I=xv-ek>ka(-qEY@84T>7jU%w`@{qj}WBNG)j{&qOms0S!JHU$7F$VYD? zi@i@5e|?D(Pf~*~9h8_|&MfXpP8i>r&~X*h@)a2v$ht;Wluxa`u9Q+8_^Dv>4S&vm zkLFT-j$L}|&)m?SEIc?PdAp(&>gHB|%|fK_Y3TA(qd3pf^>V+K>T)Sg;*0QVEsh(d z8JwBe> zPQ$Ic1Mk~ay4DFbtJbAv+nyMi9lwdg^WhTwCEH!~;Ql^VwQITk8JP>36Mfpao#tq0>RkJFJ_(#CtNHZc`C3(OUnV%k++0eFt>P z<-w`OFwj7mWB$>D`sdzS%9_jw7OC-$;}ghvCcjGe{kmK)nba(6r?+b3>MfWYN~>q4 z`hs;I9I7(#*jp61H~k;^v7?k2=5s*UlHPhIt%UL%kf<3JIL`d#n-o8$Pfmw-1nX!p z;1?|r`3sZRbK*Yav{h9^TpZ^+89XQqM6B1%)UkG(X~%6WC}a132DOc$*K0+~9jhCz zEYs}Ibu#P5^=R7KdW?f9y6tjf@#L$PA9V{|_YQXbj<|?hsQ&uCZo(^;$P%17tH)7< zN&5qR%)bDk1gb+0aiX;Imauw?{h0AAIJD(P3MAOSh@8I|J=}T70_QaJFaGpS2U_t7B$e{ z62{o3k8eVt)sfSuw*r0V?i(MJ_tzXMT3G9Pjfs>!8i-d5O^@V6>a$&>ec5+1)KLr^ zWozr~6&V7sZ@kwPd@l*+`nSEr{xic&m)Ccg&BHejCXwPVzL~})_SgpCAUjp>S0pm^ zvUk!~ae1(=OD0y0o&Ls6v1&fTLj4h%f;gG7`HV$1e{Nvszox&ymBi3OjmM0!QP!&8 zHa;^FeH}DcbX?=$Xmj&uzKlhs!}D$R(y8IP#cG*HJJmC#jxPbByYx6#Sdc0?{w+1| zo6{o{)7-q-XE1mZ)1WM-(;8j6F->ek zv$?ju`d0yPVvtrE%Ii7lUxGS}f4+K#kMfab1AdLB>spf*c#vS9Cq-u%k$&3KJGw1i!IA5P^i#~Af*;BCU|!V*H3 z<6n1qa3DfiTJI_aJF%2Dk(ZAfjN25jr&V|XvrRwxW!7tcqy{)?{bwl7TB!&Sty?|6 z0tKJi;W&&i;1#<$dAh?zIJ-6Q%fj0(9scM5(4YLlo3hQ%X@(t#S?qUY>R)g5eLLGF zvXlJkp{}TWrkED(X8Uy;(S7+TK@S`csFQu7?iu1S4ONn*w!WN_x;fGy!K{gdYHyjx zsP}zCn6qR-xWH*;o=f1QQE${jXWuM_S17; zLT`G}t|&RHv;D)mzrm>+&QJEihZb%>s)lh-x}4$s_t-`<`(DtcANvBS@Np`u`rg@B zOCu#u!R8*#-pqsXC;=H7Mw$mxL_ip{hM{ zW{tVyoyrvwQfXJ`YhG5it^W7N-_)IKuGv2yTHV4oo%eRHEY7p&Yi7M1Og{R&H1a_Z zKbVZp%zS!636Q9)G)s=(d9Er&w%!fs!IJK#r#s3g!2h=KY|b?XZofzm?ixJ1JCfrV zXjsOanJpoDYI>*SCdl-rtFgOMHttSDC>iKX;%lu@O(&MKboSb{wGI9?JJR3JUcth8dhW4c)TwtfKTp3XBO^qt;%qU$*KLF+lgZn?_}z@LPHx6#IMs< zwCmPZ^h$PpPL-UV1p0s0OCk*FxSoC;#xh08t{}+p+W4e}#@JZz#^NKb8iYkC+R}|| z#+T`{wqUO!QhgO*pmo>h(lAp?yA5f`Lpktt0Mp?6qn0{rHK%byN>0aRva9VEv0m)%U6Koo{>l463t9fRsFs{Yb z@|&!tt^r{PdELu4#$+cMadPiHo;KL$Ti9)nSJivk^6c#|#CounHoYLTDe%7b#&xES zO+iQnr{R+TWWQ3`r;@Bx_6po6t&^6*}3eHlt^jZyKv;9{sGGO2Cw8+V|hJ%9Ets?$n4Zr#u89Aecj0j9bu z#i3pOpZxibXs&eGPtgF2wacytg+D3!yo*J6L${l60}rR;BxRae00|AQaHc3~5kJ94 zu8!RJJ*Wy3XdpT0)mln(1M;i3ol*hTJ4E$f5n!BjAPKC?7k@|iJd7t`a*Y@ZC}>Zj z(;@R();sxmL&oH<9C;voU;lg*#(ra_NbCwN;3vt=y;q)t&oYFtG&6?M-&xu!#81fm zJy~MeI!5}}+7a0@GcP9q{&X=V{G*aRt$UI^bL9C4bCkxd^q(n$LoNY+3W^R%#LDDY z{LnMD8=9J+0EUHKSMaave%-Lmb0;6Pz~4@q_~NpxZKlmX5jlLkB+D; z<$D@YVuxz%|El*xw{q9?zPbJ@yV7;>YZao+6#o5Akyp^GyzQ;-DXLglE?ehY^ca3L zr=`r2bBY(PJyja>^Cdub-sj5QaVv-0OqYp3(6j94ak~4Syb!kD z$@$o3w2!}*wg{qWc1x`J<>`rO!f-U3C-LB?ez|LQ5>M>SA1A_}wwm26azV%EQ03@^ z=5`N-C+TUyKT#q766oqG_V6K_2|0e)pXblDZM{NCUO`cjyN4CvB>~@gHYuw&-;2C1 z-K0g84-)@73$OHf^%X*ls*MPZ@T=cTr~figk3Bj={Wm}*mGNdv*vbMJA(o6DGSamvLEc@ib)lZj6~n#c{;^DlNY zfW16Fvg^bBJX}4JDX4@mbqrPjw)igo?LRrI7)F5SywN7!fdq7qz27RquCMGNL~jwa#vV zQ?KFHACbt$6tW}0j3pr&WFPywSU|XRMZSqA?ajB#TpdYHTpwXh+$ZRUhJ*GrEb)tM z#+JAD+xY>CF2|+6#{96;we}A6bc;GvQBrSjf-k7=s_TAvH~{Mb8HE&>D2zwvj~-KWFchW?>0UzHl3~c;8bcqk`Umu`pe4Z<<5?w+rQtajqH4%;opAZmQ_I|ab7@5ef5(d zJv>(A97aZ(1x=MmO0zw<9_I8}QzeS!Vx1YT|J(R1=&N@p>&c`+oZs5 zAT8nI2oEk_pL3gIBi2WX_o2B(fXlUO$Gqo_!eTjxn}t3C*1KE*GSFxL)+9pa6DGuk^Bo9OCvO)tbR;K|q2IPcB5!x`;}DlK*o+_yC2l3aZ1enTvxN15O3 zY9JubKTq^}V@|)qcED9~PvS}HvpXQF%#qC2QQA^|-SS@NlYt?Vh1<=+L~Tq!ugMe@ zegYIZqoj}GS=Q!!hp^+ zOuX>%`n8K7PJhvqPD{FZTy%h|-L-X&3t@;KDc1Uzq!V8~8g*wXdzD0OGQm)Q}uC+rIy}N`qLu_@Qf$qx>HJhzA50}1Y zohP)#DodNb;4ht30dbXyKZTZ(cO*a}|zCiaz`i z4VDKX>uj2V#Mw0CwzU)yB^8v@RM~KVXPH$Fz7m#tH(lHJ33_bItGJCb=;G=L6NGN& zp*uuAoDA^0%+J=BtY!E!N29l|BHB05oh9Hk9VLOL-il+kcSi>vD#W}uuE>*X&Dv5v zE1<7ss@vMhZTdDODLIF;R%dTja$Trsa>J$H>&t#6dv7(m;izyW{nw3gy@Q2Z+c0@$ zUVTQFneo-kpTTyi<_@c{~M_5U#2MMQyNujPwjlPa` z2rW@KSXS|z^aA*d$XYzRRydtl>w{OwS8^~M8x-+6mPX*|gmDA^Yo z3iV91-oRQ;4Z#SW!=dwMYIJ7~_QwhRO0T3ukt_PeLaaOeR*gSVM>BzQzIK7{2g;Za z4fO0hqkBJS8|-LeL0VgTt+H3zQqGuMJ)Qpj^gv&7GR?h*)Ss}l!+3Zga^ZL@{lG+@ zEY*FAO+VIM-@3GT*{o)3PkSc_eQf0dw2|{6PQQJ3c|k{crgWUG0RNW>>%2!u6Yw)n z_@JXq{(U8PiFi(bP(KWDKa<`dv-q0&S}Vl0DYNddLN%3R!`Lwm_mp-5U4%B({Owbc zPqAMNU7r!f5UCOYrX7nS0?`4fbwbP#^e6O2t2nLp-Qp-E{s(8WXY0ad^;STjjo6sA z^{qIvj`9HO9i7YX>Kpuuj_w0VhO-TXz22R+;d+|UeuxuKVL{jw_S=ezo#vUh4Xz75 zz^`3d(a{@g#)Cyxq=40(fVr!P?})WS;|}z*;E10Cb}U;4@QqB4#r)L4)mAVnKh-Q* z-R}KCS*h%!DJhfVyHgP!GUuk!h^3#aIWjV8xg?}ZUU|b2rKyY z>>4zFp%`^s|DxWXfjzD7h-~H`$dV&a#(Ux|-7}PE3uKR~jC9*;?kVKn)y@O=D52xk zJAL#7*I+8r^h(=nQ>q|xHDY&Oy7E)R0?ntaKR?jDL+hvd+^N(6mIj@SrG*I;rxKT0 zrk1T6-@vCk#enl>4h;lh*R#4>seJ*i45MJ*--E4)VWUDb{raPuc7{d)POusq23$<* zsdT_*^2t5BXX;PgKKr#s3Q_1M!^2?lAdaWvj7I7}wiom380&6yVwTa;RC*E=`gk?V zK`wu=*+z6>Z6i|_X-?r&Sp(>a1+DH0M)a$9iETLMlX9+;D_U|If^#!%&+w526c6t? z$zJ3Sc#^6#w;$_Q$=ZB;0ZG*;wU-}M$QqsH@dFO*75*jnif(L~4iMj6t(D_rqtbFZf0U8dzN*1W#pN z0dx9fT|GHTQzOQ8z#9CsNg)HD^DtY5tvC6FAVh z8Ic%tlvy^nU7|8cOLlI4);W$aJfiPj^KX>X*cNJ#q6Nc-a;^Pmd7#qY#MpM&cJLjHw`X`K`u`&t0f z!f`Wiji85onREnCa_u_w4#nHM28WDm|iIu8NRk!G?k2b9@ z*KiSl#xuy|@UowythX*4+;AxL-$oyJ2)Ai6Yf&J;qS?&OpyxyV-PnC=SKq^3Y2ly? zF8emOa}L{qe58RLVibC|9O^CM*4H(vUQDz1v*Xm4K8V#?u}Pi14czuKSoo)db``1V zS3~&D+8Fh5+Y99um=MR7awJHG6(`Ahh3{J_+HuC9p+uSn&YeQQd`f7}l@p9S2R^&Sr*C_#_ut!KNhjmlw`-qE2(xqNOHJ!Si z)7JuyVdkXVOh4DQq9-Ff;En~tOJ35CBJSl*CikHa&cgF4ITGCC8KAU!@MTOfjFO|} z(}?>36dzH`ZyJ)c+&1^LnU zhncn+Vu5cfNtwVaoZEBHgU)+?qvbrg_i#D)pl@6-^uDOLR zZJMjB9(9J7ZfoZa8ci+viWG&VTcd=(Wy*dSZvy;4NRC150iQTpN|_-`zuUWgckqwW z=M!%6?rR(PX3UXw1%6U)9Jf8{jqYp{hcHU#4zPN9r^FLtLo!@f_Tw%16jKSQsebtt z>L2*8BabRp+RRk_0 zk6i-3FY&28Dp*_B9m1WZ(cq6aWo1e(4m5dg99!73c$hd!?WGLaDDdxl^g|#ce#W9OyYJb!+he+8t021`|nnow8vBlnZL;o9@1ZRuSk5|=DPSU z*H{(nCUVIQ`=!8Z2W`X0TnzG3uZ(I=CH$9jFatW0>`~S z9Rf0vGRlCSc)=S0;3e+}NIT5*ft|#pgKDGpx2OS)pbu_`*&>jr4w(^EvS?WYnB8AXarg(vscm$j@LQj-|NR5?&t~AKgf)MYVrWVzQvx8KRRqoShvl zD80V2zi702UsehDfojYTO>2RRjx(;AX&DM3`KHMw?4a`Ye3Vq_kd|AEftx~NqTbd+ zaHHfR`K9%S$?`40%U@#MY^q*j-qaArQ?HV|lijDPs$W)K)6JIQv1;%bfyx?=Z&1bs z&wIw+#+d^xju|ntzRQRhl^89L3;%ZaZ?{3zPUTYn4l9xFr=DA9VyX z?+sq(rl$d6;;pc4`-p{WQp!IDZP*$*U4;*y%Er~bXyA(sy*K^riVX3;S@tKv_u3y+ zydL^{s?ztDS*f9BMC17+p@UQYi$uIofTD?5;H1{ua4(ih=k}Vh#-bcZEKIz_O>Qi= z=|Hu8L)0(bvBZ$%E?QndRLOx3w3l_ZTam5)42T4@TP-&3Jj6OF?^b-?`JQcY`njuSavxXtcR zXdmbIrHs1MMhf3+#?s+yaB>`1TItd z@uH;LRDA_ULWWs~ilP+!N1AoQx(ZX3L#1B=8*c=A=!N+pb}(Z_nJSFE5x$zpJ|CFi zYRk-fzJwX=PV<5qNli`AayWjMwXL%GoQ@U|s!F!bqNkqnKxGHGxaruW(^_cm|tl9x)+TS@btK zzUS=jHR+(Clw+?5!|YEG_e?kPexhS%KjOKAe4{TZVvY@YO03QrA;6vEm&oP^4facJ zZXaOmY?DCG;XT!sy0`Ak?3UZ9|)Uj13XxWOY{4XpoBqGuL0nT5I*>1UutjlxQ2r^#A6>e%aJ zf^!jEGJKsEkd4y8Q@L){CA4v321Ee7NtNjt$;i3JuTNE5V)Bs}zSxt)GtqSfD#!?LJ=2$3Ey0TW(^#0&%GF%)-m?hy+1p!_V+S4zHc;Ob0-XH(CX+qQZpF@J0bvoOQw}@GRXNE@!8VP1OWrJT>-XsI48ivb0d+S9~M;SO-Y( z-#L}e8kR7g3jyrN9 zUQ3>#mEE;kIhuXBE*8&cSoF)+7K8?=>N99Hf8f8#0hfk6GaI4s-1?ifCf%9+zjyn+ z3-Upt$D`n;S{_RScW*oG;dS$ef5rbxyJ}i~{F(Kn1F~)7*C_54M-V7xtMvO)u2|G+`h<1XE zO!f4i&5{}q)Z=Rv$UtFLjzQfRzaG0^{f4T?X7{6wSTEgQz5Tw$FuobyCi#JV!ObZFA-0NI-40Yw9MxE`3zYkin3&uDnRn+D^ffJRj`o2Oy98DD&IpCZ5 zVc7xL3oSiOOlBJ5H3<={0&av=hI8h7Qp+&we-HoK6^Q9h>?(8T#*Vv0i+)SuIY238 zc2yp5SC?Avj9|bQv9IlJ@Exj}ilFiH8J@k=o}$$kJiA5)V*L1VP|%XlCCM$`S${0d zZeia>6klSxtEurlgZ3JcIQ6`Ql`1P}274PjX_y5eK$_nomKBZsM6#Bjj-JVM~q^{g;=sN@m>ut%$hI}omSZn zNbYw1k?uSbwaxwnhR#x;2oCfKQ~O2D%Ntm-!-W$bBOLH)zD`f_ zoEkGMsynL4HExOJX?~Xs+I@{hPJzrOTF9Dr(cum2T_*lqu!Jz0;Ns1U7zz~6#@{wZ z9kpy*e3fI3Io!~OMr9)%S`8uF*ry_n3>dP6jE=+2N-b2lT z{*Hw?&u*LfEq6)>h%S0;?vJ=4=SGUI6T!DbnT8{7Ye3Dl3^&5 z+WX&s|90-*HhjY0g0NHLP?1P9E)G2)SrnhT2)FL$dx& z3t!5s9kelvNuj6P@t;V5Ld^TPhbl2d&|Q=(1lI>GLwy}gc%stX8~EGAfBw4gxzNuW z;-YMkS90*AKx^9bgoAqpSkJ@0pw{}>p%eafel{lK3!|8cAvB%~20MH)I}y_o zbaNIVIZ&%D>#)4Y6AWKr%+-ps*La>5h|p{a+NaUR`gxtlrGSgfYB(bs=sjViTW>i*bOlIx#j#r%z zOE}Ky?*CzH+uu%vRu8z(*@CspOf^+WlTqHpj}YOU2s2t@eNWDAu>wX;vTkCq!iD1# zi`4ux+?c+kfR<<|fVhF~^X&V&*2eiy!#*L)mqP8DS_U{51$s0l-pPd7K>G8kZ+4)o z0??CurNo6>%|$0=-S&}-@v*{PR0b9)1-ZW_9JybjuQEf@>GYlw|Ez>Ta^oTWT0{#W z(c9jl+MJU=1Qf`4oUh1aTHU0#6IlO`nwO7H&O)%cZz)nZnq>`LZ zV~!QuoXMFv#F(6IjLuxf#c)$83FbvU!4Wp^R;f763t>az;Z3i2 zW-EGDWN@U8zvtpY&$<0~6VyMX^)dEy(#bYH`@_wL=;+b+PDT=K&sNP7duMP1RT9vs zUvYC2GpM*Oy@>h=hs7_tc(fu8sSq?jSC_roUwJ zZ_LvZr@`blNKo{So2b6SPXo=53(f=dE`Rn&%*j!81njT&j~8U(xB0 z$0l+Iwx4T!)uYU*XGW*hDwUjh-X4q7)?Uyf?n5^i*(N)u&NACt2UE8Iydx^% z*|`hH-zt{)iPMAEgTjE@mL--*zKyRO9l*lHnf%W~J3pPbmS_g=&C9}lCA>>ky#DZk zbW5rCf%+_jBKa8gJDj>j?{t_cUz?S6*KPRemlN1oX9?2l81cE3@4m4%slaq8n9Jmo z*7WiG>?lql%HL7$iF$u{F-^Iwx$Fz!Yy&S~V%gCQazsC;OP)S1Sp^zi94pu3l>JOP z{ZFJeMzd|KoU0YJ6Z)V75AJRE`4jZzVAu1Ew~JQi5BG2tN4MfU9WrpN7&Kr zb5U!z23pvp&W2p}aXoSQl=*A9^E(fPN?u9Fqn0l6zFn34#mS^f=nc^V-!;R1aK$r0 z{SLGQZ~BT7tI41QJnQjj!lO7xiImp6g6O}bKlec;;(&O(pEB&qC0+vQly4T@7{Tp3 zc|UjSv5QLjm#ja-awr$m`)- z1%qi7l`#@M<~)=+^@-m`{W`6(bhrXhG#t>3>=lbkGa^cxRJQ_MR=`2O^UJ^3TrV}* zHta1(GjTy?TWCF7hll=!Fn{C>P-3+hmlptg>mJE`X!L?e%WIy1_;EcqtKdHqt*v#h zs7BLU$iXjMR4&>Z;POl=nsg}v&%BoAw_0Fnu8S0^VrIqo z9N1ro-*Ws{4%13FT-o-&yt|l3IAgekM`rSOX*w#?7r~UMsk6#Eb8on;=BMa(Mx{JU zVr(|<$b7%bwe?LAft`IC@Gc@8UgtRrd~LfiCwm9i=Wjan!CAyvG2!u3**-DL3Ge2e z+c_bXYXhzrUzq2Yc$}D;gS_)HaR{pZCT)8hT9@y;Ij7#QKG`;|HG2VhXVk<-oCAh> zi2oL`?Z(zZ5SGeM;4z*I=X~@_*?{ZOb(b$34)Jz8OP8eICpE?L0u{Y|IYMWM2LaEm zn;vfmCH!5i zHgX?JsQB|Yy+;}6)Y_e7+$y{+ockU<3;y?Ee|%wZp}%5lVRub?;aA2%kYjb>v4`fA zCu5%IijN8VBE87lD9;H0Ue^|C0%{ALZ|shB(8q}w`IKD!ik56S!DU4r@6!>JR;|Zz5Jx`P;o1eK`w@f$J)H2cwFoRa9aSw*|TC9qhrLGP|DYnj;v-Cgc?F(T%=*6U#|1ZQ8xu z8BT*j*&3}~{uY=D2hq#zJd>Z;Np?jm2_?~*dW7=SlnIy*N^M)}#WBmg^)CsfLYz`j4aQZ_qZ z(~PQZZB1vLtb!Wdr<^$KC&K4=$tkuA{j0(XCGsnlHsVI!rQkzWN!MDU2et@wKpm|! z)HWfuLyck*6NkWzbG3t31;P6Pm{XZBN%r9w zKkmKtQI8eft#@9LwgPV_JiF`QwL!wCb>21$YmKBz6YPzv<9z@Sv|GT0w>{k{`Le{Ji* zm0_o|&$Wd*R{!x676AUus#@LoIdVm|+@uxY;>DmjIj*}%fNiyy-`mr9z0Jh3oo`yR z&M|&wRYnU7Osjx_TzlI@p9n%&aBlu3)RgvJoqB7h3@P~$|tZ?I(h!oTn+yDJR zCOS2>wp^rIQM2xMM>qsfNJTmS1{e9Dr$2ivwZzRUUh-F4%N#$b65h*0EW#As4vIF3 zoHQVBA$Pswv|`Y`>TL;-GwaTZ64DJ|%qw=Q=IIOCovrL-C-zSHl7i^dvtna+HH&2d z@qDNXCGmc`o(;tRnGt^?aWbNL`6AK6F zoOu}%;}7B{TyUcZ7ZHTp@_9&P?LAOeup2oy3y{Q+U#x4d&86*2=~Av>iC134W-=n0 zJZA|&+;^$N+mOPQ3UPKzaiJ2-FDO$y7Z!1IW-}~}*2X)q`5P4X*UU|}w3H#V^bcrz z#B1FB;a~LJX2R_Q?jHe}p-ZR*K7|Dh@nrh8n%Z!V^sh8HnHklU)f{(mBzH!!C}cw- zxus=SZD9kcF9*@5QR&kE#^g3-JefPo>&MxV8e2v5OtS^mbKrv?>s(N26)w08;O~2Q z(&+G3y9OJFuW^eXvIG+lRKi+r%Jw=1RcfhcWK`0|qZYd9wP_@msFVG{&WI}3d;zq} zc|@br8TBb(PHaOSqL0PAHe@N}9x>>mdq=48qq)|~maXUGje)zmbAfBJApi|S*1%5< zNw&5iOxdHx-Mixqow}oWb^GhV83BR*k=i={?q7AFb3b!0osnC~{MSckO$Kg9Z~UWE zij+1A3b=}b*Ag6w5+iQvi=ch9q#KJKfX4^qv%=!zPrhB~+06bWbjY~0np@{{TK$l@ zu{20pJBh}gZ>@12Q^)7_j~-8-TQ(jGu5irHD?W~ zDZou=2<-)fur}Hm1qtHWiip;(kzq0|TE7)7pAnyQ)-fN2m$c5xP7jT&wxbG4QerBZ z38S4M4FN^PGfWucI&s%mzf3cL+OD>+iD=Nm9nz2BT0SG`5Id6 zm+x8cBDb(8iIw8fiTezI9EJmE#I#)87g^j*>7_mETT}SR;0p>?VzzCw+Mx?fg^fe+ zZPr7t;A~LKL6&VpX&E?owb>xYZ~G^sIq0+|ZNFxITTL&*_Q6J3mEg#$!->6xB#wi6 zrmN9b+7~JAU?oQPcJ(GBWt!L!;C?IX+u~^9AkkJWgqg}10%TRS=w;#BhM^T~t@w%c z?q6}Pt!4KMO6q=hgsRNE$=5mM{oL&6{GhYN%Dpz<_@b##+c4Xs zL=+(I-KaJ5+@pgVnHC(hQXR)Nu&O}raL+sHRm_2*=teUnw_Sge5mPc8ThU!!8%S;?fJ50M4kC} z?QNp8UXW;QvI^1*=|&!jLSS(k?5ob!-S5bt-ilD&1pM>}I4IySFUU<+j0{+bcicWj zWOF(B-R^+|oa>Q4gZRw2cZXcD6)5>J8g_PC-hW{BWTk}QckWF+izW=atS&%q;@pL~ z4%Oai1>b7;BYWWFG3~g(Hfz#H_(%|p4F`f_^gK;5@3%jjMRyQ}tUf2Mhg-^K|BC2{ z_>q)?_zBi2f4re(3K2WRC#4T|?Rm5`zs|;M|2D9G&NiYoOcG?D_b}OZJ{oF}NhXh~ zxI{J6ya10xUu3IMu0z+4Umx5HZcU1G6%86bk>x*-6t8Og+oT=eS2M3;>bri8ss*kM zTlxX&yH}*ih0)3A%`TQTc#G)uPvoMZdxGY8RW=79`vX|NrZD~Bzg=6na6seW0#fTmz+w#mt#ElZ|o@#IYF{jG4-ajuWgNJ*K?r<$o-2l;7M*8cxh zDnab#32d^6KY&IbaDk0)TOs>l#&G`U*y z*S+UyGt(=+INUW5&bA(7EsG#|W!G_!N9uEMm{}@3ud}I(oX|V}64sf(6!Zsc> zQgNiW3)F)f8{a*gU8%2~Kx@~jiybibJ*L1+P|m8>p&tNwC$fGdfrh$HJrx;3}OhiU_cO4n1R|ICYLqwtRE;(_&~VJ7TTfq7E5)+WDcj zq!u?$VD~4P{r*g->8suhXMOGq}&ILu##?t2JxK*8TvjG~YIay;A*h z(W|b|HE;HG6%lwGhI~#n#_waQo(0#T(sang(a>D03i!f`f!Io! zIu9ZhhB+x(8{*f3#>|8+#CG-KtXlZ{av>L+{bmUo1O&zrd$Lb+=M>GRx#bz;a=Jcg z7qhosJx2Vn6M$f*jGiYPkBk}}C*Mtk@3$eE4#z>$t7z?4nkKj+P?*0cJjomPWt)hf zayxUVkyugoo2gcIZ~{Sx}{0Yq1^cXsRzcFwksa zp2aaNkctuS?YsFRSKB6a(Ii=ll&hdHI->4At2Qn0A5G58bbW2B75*lzvc|jYQIEJn z6ysB*W38TA#G}4Z?&ZA0kO4GmU4vR^wZ@<~Hw5~{>Z_=4y254lQKz8c%w2x^F*Yb8JuIs)<&&(?Vx zve$XUcJ#^i(lAJOV`}<%!3LXQ#S2?*EZ2t04OVR}6fSjCHsgmEc<47|q-ZubMd|q;L{%QM4XYb# zsZC8$P9eUcjS{JZFQ?<38d?V-OM-S*@xJS6huMY}3L2d>3Mo)up-6OLcKwe1`Y~}q zPT?S#qRSw99?tH^EsnE)dAn)#!My1^2#+yM+u*aD;~6x>tZS!vhO(Jq&UcU6+lD#Y zUtP%P(2DWGb9TnbF&SDL-s0ER-(?7P@{cS|HT;MQ_C3~~4EQ|P`n}Mq9&)t$yls5r z@F7ueq?>=UX=W83gxpw7We^CeKVGAWm~NFU#Re0C_QKW>LE%w zX0F&_ZL);YTd^RvVzv`e4aPKZU)Ma*Z201-+S^4RdZF;<e zJLRLo*xS?7_fhL2|{dr zXlCKb`tcA7&nMg2v|}A-{IcZ9uJ?~S4OV+GGSN}xP6b2$3&Ay2f!_eu-&WqBmSK{% zrLlPbA=WK?!Uwaj?ZW7`iD;|M4|6*9A!GhL9Y1Ul93XGoLgq;_PUg)@zex!;C=Z@h zp67>LuuRZRkmLRe09AAA1f3C7p~ffuw2H2&*xFqC47lm=D>35UBWhc!-qSC|GZv&1 z9?jhnCG5UO4%7aM?I|gcR7TQqsV^aR!E7|76xP_zrYZP~0gdM-jWz`vFJ~5kQ!odk1qP0SESYxt=eRr(l z0&7f=l5NieZ6gYw2>u6Z=XG5?@Z=U0N8MZ;W6>WnhDt=gbp_-7j&yvM@s%Rzj`_X8 z-YKqClxfm`6b;WeQ>`&>8a@vnlH&gjt(6|9w{L|AX%B6ifi-`m>qCtDlE>j_Cq}n$ zNvv4bP5Gp#{{(6ZwXs8q*4_UZ{^{GvoLsJh+$g`ZPloX3F3%JoS~&k% zdZKLR_n$cbq3Kgx4^dn{e+qk_mRM}Ve67=MurN{1m5;Ru6o7rmv-$JOuQQ7MtNUa~ zQNl{mf;KR|zi>A(rocfAuZIeEgb`&E#yzB?G*Ric=^G2}n6VA7@1OMRB&~Z`w>TJ57@bi+IQI(=u+!CLjEf~gSOZvN}HS3C)T1znQrg@q?ZUEye~qt}Nv{K{_Ka-tB87AElvB79KTF+sNcj2m+a zo2OdatX~0c#Xvi~ zqK_z9T98R_9Waw26F5VF8rO92b@}tAoSYw7?1VFKbyk}smmxk zi9;(#f%+=;?2CQzE70L%u>FnC_EN_4so6<#VeqfFTIE4?`k`!23v+;#pNgkm=-6-Q zPQ0Wf-_h35dE_c4+%-l;&TfPn(;fMOHrV)cCVf;l>L()lx^JwnzMxu}bd!`q>dsiB zTMQsK2xk%sJiX^_uj~>sjxL@d`a9pt_#nPI6l%CW|D!>=w}aEu6GI0^p<@jPbw)6e znr6$^XT942@S}S#N}Uf*-a70kFf}Z`Z=DD{y0L54y|FO-d*3Z>5rJV`SriauF>q`D z>y}v@8TNXS(IQcMR!1-5r?}d0vA^<6QyhoYKEmescB(PpKb3{C{By-8kmh+vfEliW z$WT}g_{A2)`Y!6}+N!PEIqzs4Vndm-mRA1yDb;2>s^6ymonO-Pyds37g_rziU(mIU@KZ*Aa(pBU@mdFBn_I5`H-BFIKtp zVZ?`A`@MM_)eDC3WWQ=OOypPuQir@hmSC3Pjr|&vKrp}SRo=j?xFd0)kjq;Csb02& zNuQ9pouSC=LdQDoO&dHXJYWm-d=C58a=(j@VgsmlP`bZ=pGH(V!spi=RMc4}|7kUh zK9(WwScto)B904ZivLTBMLDC5Tbg=>4s=!Nq)Visr$IgBN_=ot@f5iPs#_WQzZm%JskaH+&&n=&2wDw=ZwoD(kagl271D%PLe`zx!BM2&wzp?Q#umtlor3%`}k^gu*DXrTj z$;r~CKy58TilOfGOnzXTMkOrK@wwj^2lVMC8Q5wTw^tyHJ~QPA5c= zn4oGMyB@$7fQ(8rd>+;?xrW7{QRl{x@?qH(`A-n;lY~1a?M6iC_$k z8P3yF$RMkf51(Ntgq9HtrEFjqIMOOwZ6W?AL$Y+lk(a>2KOU%-pR6~YAHMDUeoI30 zxeOGNyan~-vBksoKeu`RSv;l2C)icUovkbg5pNy7Ex)qj8}aCowLIAWKj!(ItbOoY zzjBE4dC+}VE~vAh0JQ5%mBh6`U%@U#^CeKJozMDOat6cyk!p9k&gQ<`{saNBfd6t% zu|D4^g!y9D)^zTdyRTiGTF~c5ea0!nUCv$G`S%nDqz+cjG9mbY6mD*6TA7WKtcl|6 zYwyol`uJ$r*NBDyj)G)@nv<}syI$?iCGp#^V?wtTB3C< zhCaCpaC>gl&Ee@W+4!8Q0#kuHdq!!hLrZOKpY;oaY-Uu_jqxr6O|IsvgwW&j|&>OJ!``%m!!>$z8$y(zR`X@B(mAw-e+#z>1Nk_`~s_Fhc3yo(c_ru@OpI=r^j`9rpX$%)Y_|F`S&&7^;*BYVnvVS zEu$(YPG&d-z2*)9D5*@DU#ZgNn6CK%(@GX z1^RX!SWjP_Jr&EK((KM){2rxeXUhwEz!VDl?nK2dFQ|>B-ONZ>Lw9dM^=(FS?>qwd zrl$6_r`AE;OBJHJ78|@DZ~Rcb5GU+8KszmT5PMyx`PJZ8|DhI3_I=vrRr1jfd`wXI zzxsuP+4{mQi^aq%`hRQw-6d1Ch(iIeqRJ!Mt_T72HU3(r_bZ`J2m))5K@E(zx98q z!3k{o-FbTf>Q-%3L|5EWGbuyEpQ&H*bStuG2hQ z?YHf+u~)Ipy!zP4VRNm3S@ty0Vfbqi-mSIQ10iqVh8Ev~9Us*-bk!tAV(`DGTQcv# z&;>5RCdzUku)M)IPk;* z=$5@OON6am!w5YT%ltHB@T|EyVzb21s~C|0zZAC8NjvVEDu(Ws>C7QPOwGMb`>Fk} zVx#XOJOt>_m;1~0qufFC57Gi(4zF=})h>)mv7~&W}I)Ro8PJ1>hd}&cP`^41O zqSrnI5YeDEOe>b+*6F;b2PZurasE9$b&f(1#wFa-j$2X8n!Br@yj!4LF2934<&0*c zyHRt?$0@p%B*V>}^ip%by^BIT){e|d+`)`j#Am_d<{BeNbv#Q~Y+8lKYV4{kg#2~Yx!#45)KcAgS{8&cFAX#Qd}4J^X`v%8P&hQm z4v(Oe#CH>#AmHt94PFa(@qWk_H{{gF)OZ~rh0hVexcl6)1q$-Dd5OCd{GDA0=x!xA z^7wtQbXt}Qvs;PQuKBck3?kXe`kqVi^%fSaN>gFd9|Uo%>O_XrWJdr1E#r|Udb~!# zap#hY5l56c(?z(O-GU!y?)$@+QO(Od>LQ)(&UPm|OJq;pls10ZCWni^Ir)>NW7a$i z*UoLMjz1OW@n|O_OSPdda?%G}VI0U(P&{hK&1F`tz7)Jys4clx{`&Q7QsMc|=C{v) z)jgk1-U4lYN3G0UMO?=UuAF(yVO_$@ywsX>rQ5|yNvZQgtUzlS&wu}~>BZ-Ujgx>x zDf{B>=_#0J&tfZ<%aMJn`csVpa@#8R z_**5R0sz}kHrJ**A8-9U@LV*o9gBNubss8$^`+GW!y9*tn&w)GeiPKj7p(F;Rjlge zk{T5pzXWI)yCNG7(-FTm8tNc%Zf_x6$|R20rQ4{&TAPIRr$Vfa)Wx0NlnKb@>5&qx z|8ULRP8Ng9nSWDZ)| z>v0_@`um`+{8FU^vk6+HX4Tj32nsPG+G<-}T&t!n%%Uv)xU{KC1?{$*Soi0~9-wTY zHF)m9Y%oQK*wHSQ{^RT~JKnom=igNSm$$OoPke5EPyv!2BK;lzf_!Lwvqp8h;zkpp z@d}rdqVj5cC4p19vclu-Fhy;s6>8De4iy|(9IKYpr;D5Aqk@yeToFsd!{BY-9A4kH z)B~dM0gypmt5EL%J~>J@Qb_Bf9@iI^dw%bJ6e2aJCugNmnrwu~bYjr|p9On6`{5Lh z0Epmju*s!WHu5nwNXyYiC?+??Tc6Mmg^L_bl#=AT$tFscb4rD3G>sfA!CVG%eq;;j6^{4Ly(Y1mP%6#uYy~c*wiwcDH_f9I64HE)9?^QM+39 zTKLi71Xo46DKUlXuKaOS1b(+sL}N4k=|fW`prrb9H)#xE)F)uD57i0@VqPCfM z>w)YR&7o%42Th0XOX-&lV5mSv6sje@cESt5UVcNS@hP-cWCImj5qa8Hazx>#Jz0iO zAV%=R%kVo?3jsHF^+DR!GCn>#Oh*y~pyGTCp=Xl$7U(5pE&tz!`t_E@4qW^ctyIfh zE0dq0S;ZO~?NxMCT&X)h*+tnp?WxhMnn}^)eKSFC)tps6F5J*S)WB-qaV>0=4;4;! zgtOj`mSl(rS9S%%Nq-S>p%4li%9xy@<2@!aO8{3>zy}xY&*;PZxj%{cUx-!`M|rKi zffiX+dk2?u8@9;K^N;oDZ(bFmh>ac1X809VwhHKPrwFcktwyGh-oPnq$T(B*G_Fv# zEW9lB@K1qdn?)%eTTq^K*X`h0!w-qg;)AyWz4Q)4yr3@#BM;Qsp^0yT8KWS9IA1x&B@A8w2H*_Z^C_|L7Z#$R|PT z&Z{dkDZR`56SpdZ0cm;hv<9G`y%pa(nXW^s(NwwxJ3+nl3qjZ`uMJ0v1jUOUSQkqM z?}x|D!9DvbMVV7g^N$7h+6OSp8Xe@RS9p9riTsDvi)9I~`4u7AlBv6Fp<; z711srfP3edE7a$!Yb+@AejeVjvpoCzOnugth3MOzRzJ3mtX2I|?8L4gmQA=Ygkn*l zmXH_k_`|zBe^%R_*moGN)Y$g!IyM1w9NbuMl|S@O%Q3bKwA!x_s6uv0eWrbMRGt>! zpZC5hDN9Y-bfVPoQ*g+Ad_oAi*u1N)WH{ly=LbE~xtCyF_hG#i=~?}_sns*gT@`nzPVH6&yXtD*ydNKLJV{(mBeK=* zJb>N%12Vav!FCsHFD3qWv?7483?BHc%&M9`&U5(=OBMe>mK;{B6&b~k%L-VuMg?`n zRyZ7^N>)Nb`A;XKyYvL#B7gPKK0w+oDt}(;xVp+8Tc2#3kVzSL<_Qr}K#L3KN9I2J znK0wrW;?y@i+{YKvpg)b^#(Geg|QRUqGX_V zg^8}aSm$0Lk01|jH-lw~_jtg3=8jlGZy9L{Q>YPnSfQJhIc?F|;Pv^zq!T{W-v>W$Y1N8{A$QZljXg{x^AAseyy5hU zxCQQ)jH~NJcc7F3(YM>aSlni_i_&x?G?}C12+J0MKHMCvTf1StXTOlR=e&jPPJ9Pu zQ&xI0Z;g@<)y3YaGHyNxJ&1O)>a<|~P1wJSI8?QLO9Mb1CcC9RJL|h8i8+OH6UO#O z>)95;tVr8oBfMC2>KBxZi$}r7 zYMm2GdTR$Cf97T$KQ*(H{a1v9`d?;&!g=v@sZ^Sap?ymfC#q$*m8Jt+9aNzwaoz=C zDIffTMGO_ko@PdFj8z*QP@|9wr)=TQT=R+&4h3toliS4phZ`tZiPMF*ey4NaF|L5h zzNrh~5|u}rb$5Oxz^XYr{I^xFC`VKTsK-uz=CCPI9%7FgIjITHj3Q}{xGs&r?a6Ky zxsEG*QLhqha&^K~G)?*S>qOE9=DsveTFz_&v@yqAiyL1sw$OrldnVl3mf{rXVYYf_ zGA_kmUE(aQO_G&qJ65r#XEl5J>6C!Y{ErdfP}H+nwfStnSB>C@#p~1HA zfN*kAdB~cj2YG1{wK1GPlNyfhZ=tO0S}tNuUlPn>dov5cEjkB;NZ+gDEpRXhUfruR zlty2OGq+m58~rEi3w&h^C%R7_)hx=b%iOBNSQ-ylP%>GC`O&t2Mb9|k7<8dmO_;wB z?ZrPr?~1(g67_v2g`BnHMu$1HMnrFmF3n5$3=w=p;oZ>-2k-6>zxI+d!Z5!By8W=4 z#rc-2ZQ~&>MtL>CxzR|^F5EHnLEgUn!mjQN4ymIl0LJ$U8{#z6{ygNhp{oaTw_^C% z$(i|w6R?gJ(E=CF@q{3lX*zM23iFXD6g6!BK){*+2 z*va0y-oXm^BjjH#8~crb{0*>@%;%8;4~oSAr^ELd%6Po6tBJbLgpsx>kQaO0Ie zTqR}VDZWG+&n3U*Zi(x_Eg&0j_*0E%_s^2}5suw;-AYKapZgLJ}45#zvPHU*rJ)w# z={#hdUeFs+Z)>+|st_%clQ}oOG$~>mG{@yP;{P2I7zYt`c+sE*+FZ;6T=u}QN1A_3 ze5iLZ;m`WwA1TT%T=es!Xf3~L^}Ed3{eu1Fu zc1_JcA!$8&*riKI>III=?j0w$EJ-G#4o-U81tqwkg%phBTgsU3(Kc2)r9E_jbm78i z%Hbb)rU+jN1Es^VjIATOjK#zTMFsbyQg-!U7g_#!5RI6DDI8FNE0@I)_{%vfFPOxi zaJW~G|2)`TEd*ODw9Qd!EU`~D=n&d{7IeoMTYc;^Y6_-r5V&-ZZ1>js^;h!vqWBFd zd7`vgeT!TrcY2>*hS|o_f21p1=%>@iuw}rg6sB6K`{(|DMr(I1sc&$zc=5!@ z+;aKyRn@KOcRy*kvqo@f-O6}&!JiX@Nt$y4tuZ!QskO>1Gb zM_2i@h`+hvX6!Fp8eWJUMq;89LTbe7)O~#KO~g)7W@=YFHz94VtPc<|xK+lGh`PiC zO2=UQiF5OugwMcf9P4tA9!s>q0#V6PN}0p%#DnJmJ1d@SgF^BoDh0(fKxo6k?tR=> z0{_ZM(Y{G>5hHlLua{and>QKz7npY6a-IC6ItR)9GftK%g|E!9Yf-+8adPKSSJQ=K zwcfrOXMaM*$Ua##fA7bUL_W4ku|ZHsgt)t;KeB^;ZlAs~+@fjyihh3LGUu#aZSzL!6E>mKyP{OVw2TYN65LID%x+xy1Dl-L$pE!?dTA1u8)5#O= zTO6yBWhhJl>Q1#wB-*iMXcuz^B#y9PbLUTpr+>ccV=*bV3to3i9p2fgEH8(JEFz)> z0hXmgUHEyLWG=6=q}0(*v*s|1o-+rab)5l=F4P~R4qAPHbY}nK$N02rN%6fzl+QqBpq=}qg?yk|LH)+2SFsCe`1Kh3d7_%$7m_4}I+=8MtHKE( z!6L8T@p9)(dtV`mLzJu>$F$V%YHvemh6knG2h`0-^)NY;Sg3ytq!>;Ze2(5ePClcA-X|i#rt#PCrM_On|yiE6556pm;Jj zR*ktptPh(FqE=2c*7;J~dN8|8>gTJ1F>W62$vX|A2O=qk+_Kv#mkbknlb6P&b}}1? zp1xVBwqq#RF3+OwcAjI%TTM5lzM^5yhhp1hf48sQk0iAhPV+-90EMJnXZKry58gtS zXc5)*ob>X4_j6i-AGwhvRFbsv_=wi|Akc_;7wya7f)^{#hLkd;YO~CZG}yCv5er-ZpG{(ynQh#X>5FElJX{!N!+%P=l*)! zgw|%ZP{{aFdBgYB4V(MinP94B950HySglP+#Axm8SJL%dwsPHRu*H5j(f52m(-Gu; zXgXpJ?IgC{#@Fl2Y<{zv(Tt;vyBCdj4*{)tmeV`aOP|fDPqNGD1_uQ2t9*Q%kW+Vo zIuXzXwxUogP)D5F(&%I*{FgP5`z?LAm^6Fv85!CC66LIt%=;hdIWpJ(m!2-k(%O+! zoY<}l7rOOlc1m<%u0}n`Fkbb_E&E$u4$D!t#wMAs$?|C?5-KD}mR!-O``pcPn-Pza z6a@w6E*hmTWl*7Z-ca$aDqBkpZ(3b%ylj3Zg68BKV@SOd;;^M%V3O-s3h-a|d;Xl^ zh>zV*JC09fS!&r(u^0rty8d?^6BUV)FKM3SG7-r)F0DnrZ<=dxA7a;l*IHJ1=ZNR4 zkifFQG&r7MLAeMRf04Z=H^^j}Se@V1xnCtJ$bBfT_ev?a?Yo|sK3q6Hb|OqStHl*4=@(JL;sem4E!cRiM<#ghd8`&dL`f`F;<`&mm0 z1-Vrm_+NNFRmWZ&z{=kq;Xb_Nd{K5U(`hYfRD>%8=NZ}(ual*e$gM|dpd&QLxf^i(Zw`gc_}8inoAUskK`sdJ4|zs^0uEBXoF4^$mLW6*VM z!ZSkW3mpB^4>@Dd!I#3fd=*hC4f%QLEK{Wv_P+OS_M?m}Wxl8tdy|$g#xRFd<5}q( zMvv*$glAJR_;D}Vh`T1f($Z#P;+o1v)017FjkL7mFjtzgtxBxgPTC7X2a7EMsgUS5 zs@L*)V|D3^7yQs>xOISVoKPxnvZ4CZCnpu4WixVC(ah^}Nv((4wJ2{*Yvs99T?BKF zK#H13be)i_KzIc~kld+#cXu~lB)~?id!h{I7N%e|(UxvWe1)O5*WVngEL#J@+zhR& z@)Op^s#T7PZC}gl#ht!DPqdvIV&T`)^9tGx0n5$_{HU)j4kFwu=Z+;?=76xYwM&`e z+Yx6+w;YtK2`$g&;(_<6R864~&kzSo-zTFgwy$yGjcv!Xn9z{;I~leX%2rl;WVj}} zS5pqRs7uQeO1f=5h{k599bT#ZT43zi#W<_5y!^rCUtGW%Ay^64d_(QWvzep$N0_s% zv<=&4I$goZd2h7qFnh|2@ypA*V^9|6lZ7vIvm1z5b6>(YZ~ z+~VKjByMHhu%e*-LJG1D`k&zO&8Oqsa|@a@zg^YXr%5uUTl(MM&fb*m?EWPzW@Lj; zpqv{at@mboF-LZ;>mP5XQmV8{Us+^?U|WMp?|@-^l$%DV8KDt`cqFbjY!^7eZd}prh)doqf!T9GPF|O=S}NnT^P#Zc4H()Jd~M);fRK^xEGGur+uf74Qv1<1 zUH-T}y2SR-Sn(!bto|=EzKEz4orB!nTJg6GJftaul&4CsuKzaNO~L{%0|r4>6B&s2FIK>t z5*6@V%H%k2%z*1lu6cvzF)F0Ux^)R7e@VsRG*{3vR_ur;{&BRC#JCT+&8};VpRjw+ zE*fe7oH^zthI9tdAX?;(R5;3X7CI+EytLWe(xgpC?DFi;R0uT{t3#q*fB!`JEh^h6 ztEnX|Ogpci&qrOBWjQwccY6wGa0< z)3|Ge*$-07@CNG_-MXSc)jL^_CF;ca#HB|cq|XC(MYMku%)VfjuN=sq+2L_$=bH05 zJ`W+bU%zxLUl`F!s$8|tldx`vDJ%A-AW;8lbx_L|wjH0sem>R`7(>BJ=zkUDu{d@nl`?dSNU)OzK*Yok9 z+2)zLV6fD${}`G64?yqc_Sj0tk8XjVC@JjjzG3>KT>r;_o-kLl+x)>}rw;{sF5k$` z%Tcc)Rxav)9{~j>2Mk%dmB<@68^Kp@7}A;85;yss-4XHkYWx$Doa^5#k#l=*6-Y{R zbcW+7U#6SP88?lGO?wm8I?jPZ!ptN|9BStMLXN>@I@HlGRgJNbTn4%-7Ou3z2OjqR`dGS ziO~<<^PNPPtLO-b<>BK^&fv0YTum!8YE8>QfU=;=31Lrotmiqod6^>vT`OK&mM>3; zFc)nB@r);m+o#Tr$kaTy(bp@HY7LgINvH|jznzuWW@O}MgTmjh5RVM8N;!INrhoA- zGh2&?v^9tfRpVEx_0aLYIM=}Gn67#7nRQ<1d&qA8Ki6oEH^~;c^{LvT#CLb4<_&l?X**m7 zlR%al*}KtYK-fMc{`w!tAQ*T3^HGP1{_WkrC!LOCeoA9Sh~OlhtL+f)OAAtb@>+e( zzw2*-{SiL7ur}k012<+$qiQN1F|~vFD}?SlW17k)NPA2(xIjg6M zzCL~7QQ5Of{x1-AQtY?po9yiDE5MbL2NxB4VC0s!PjDtU_j{FNz@BU=LTrSwfeK0! zt7n%JVet8w>iH@g*jfo@bQ;uh-8Dtm`jH#p;j_vplhLvECQ(b}4k15lbWHO_&TbXS zz}_$45kiTTRHECpt-|1RS+&tWIsZW-KvYZEYRC+`_n``-l=9Ja=Q_cng)XHy%@2X!~T!1mAflZ!673K+<-N40_9ODD%KFa|hI>9%oNlHsu9FxH~8 zVWMtZ-QCj%3@@QehZ}yREM0>NYsxoZhnDY?E-o$OQ|0b`haTZWl(T|xF9?}eZOAI^ z8=zOcA(e>WojEg6Xb&KmsWey{og&eyw%Fa(+j~XFSPNM0h&XV@rqp`dkNV;ewYB;@ z|HXW36uRcuv)$TXfjHQ~>S@a|n>^=BwriyxjWEmV1jB_x^MK)5R(ka>pvm{}w6&nJ zmip?g2OTGvtk-8}0T931lV@GaF3dYn5har@q&C-^@Qaa%MEFZ3wI}oNP$ikiVgpaT z*RI$cQ(n<*evPfF{lNy+VepXZ8r_iV6=3W~xyWO3sRn!Qf z29pDX13%PMX=$`Oo)`Gw?a>I&aNL*_3UE>jB)Pw}wk{fEg53iEV@5F?dhtPO$V{GV;9Pf7{Q-hP9wzhv2)cocSio=C4<7)h}iF&Z+W$8wmt%x!>7%O?zbH|wYw zkKTM=%aYx9#}jZR>GY z)_BfK31E6vsrBI0-?r#y##>&fTAMFF)=9`{!ktz0tb=bo`MG3wU8L*OddgFh6u$p~ z@o)dD5~u#|4^FAt?$iV;oE0{!01<4T+`d86l6&;AEZ>tj536iokXyww{r{TQ6|iY=63%B8%_r7i`N@ zg-il7-hqdcNt=}l%GM39jf;4BNxy1`TnkJlk%RdRN6qPEBPV8y8l9OQ#h|6PYigpI zkZr&0EYn2wqU>J{0l !ABhF+?ipvTzy&_RK0Hei(R3?EWv5;!$_~Kn|ggJbU}z@ zP4cQ|o1rGy&Z#dzvpPu7g3jV_yX(x_N^(q~(~!o~+4;^ZDK$sH;X;E%kt2MrJ?Prx z%op|ZTfAcgdbC*lP1?v$P)$I&LbKwmk+PJTftGa5y*yN2dG2OaRH!9o@iIQ=DcBqB zcF4k)abncLVLN-U7TT==JPcGffIh2T^_lH5UflM$l;7siy)MpWAB&8u|60fEg_ms4PY0BFL88Q_b@``8H%_4K-%=~tNiSYMMgbIY#EY}JM7;Kq`vMkIRjCcLi< zq&Z-(OrLLXH)zZBstbphhEf`;Tx#uP(Zdpi4;Cjw+=UvY#ut;?vo=QPHrD>hzZqqL zJL@*tS=Y)SA=N=L1aZVA&s#xrU~47w^B6EHMZ51D`G2OZ8f_tu-6#zrWYrtKh2uY! z5e<>Rt;aG13#Qt(x-pDBxcPiZy;`n6mk?FV z{~foSJNgp$7)|_UBh;lW=BpEcTc;K5%F}}ob;)w#(RiqteeRz*1;u3jA04VA7O=4- z;-BR9SfwFs3*}SBAO7A@#=g1QmRN0l%d1+G!wuKw)h9y@_kVFZnitTNqjqqtg4x6v z1<6Lwtjh~#{sZvtZw)Ouniiq5_c}f1vYi6D+;D+uOqxuHLS#4E(Op zd?*V~yfKEnKeEtzKgs-3Ij?OwFA%owQct|EGWQx4TjO*L|K8X1z^B~ntGoU08lD&a zQqrt4$l5SjRT>E}3A4FS-t^?`t>@)vp*o;iGGM(?vSOHEJ7U?@U)G_Ug6xhx+nx(k zF#h9RULLEOC4!i45Oo8bTLpj!(c^dEPptiR|H^+zl$NpeO^Uu_`<*y`rqJA2`k-Rx zXCg1wn`Zp1@a1F?@dLR~TPf}}HCxOPa%tj!M8##(%y0QX(?9F$BU;_xLY3{+%X#2K zZKy~{-av4K7yi!3y`Px&U&@p?wOdM#Tl?f89%>U-ZqP3^C#-OjG3B#+d-cq1G&Bjv zMJ6h?o#0y|kT1XCX*Ea3Dx=$-Tut_oU_GZ{Mt(y-##59Eg?b&?xT^uF+Hw6sfBsrL zPT2U9Hs53R=#io0u%j?RIC`4xdph~URZX=}(c!n+XEN6RRD@Q?^rPHE3jjArj1sJNnQnLaRwJce z%4<;;Z4=Vnn?x)^bHSj77ovIPK9ECzC}Z(u!?!w#=>A8RHeIG6(~W*=-l?Yy(qe7b zE*zj-Pf)YHD&f;`hJ4+sE^Ddb^De8otxCE1koUeY0jL&E8R_nJ=}->wagc^oUnn-^ zNGccgGQvX-LnEWqZUR(VnV6TGNxGORkYuuAyHv%BHz07aVe$i?ymk3;$GgO=( z4xQNFa3ps!l<@w}Sx&v=+wUUdTW_WnB3>+j*>@JY{`rLYu|6UMaaUM_PYmZp&Yp|9 zNYtbhd}FvR^clU?+_1%v75OVGOQwH#o(MggtVasU)&86q`o7*GdzaXyoT%~5>N~V= zHi(+g`gph>!oMol)CDL{Nik^lVD)5o`RWdv|1QbYT1qZi9fl8Sy&mFKop)i(kN=#! zklPY0+P+(9qjZgW!T&w{MI==$6C1(Hu9)YG|*!t-D2Yr-z{wD+}T`TH>`{v`k z8es8()A7r-k$F_`3;)xB_~?9@r}d+x?@-s46xn*G5J35^S=2{L%S7J;=(~JO<++9| zwTb7shVQKds%?!A1T=U!mM@-<*!bF7t>`lGU9Q6vW|F~^t*50tpM%qcCvE6fXa~;IaHWph(=V*%K&xSACCw@!hc74z~|4RGW zVn$l`O4n^(z^TcreYYZIu${a)79+fL=R@kYlr*}Z_X$y*RFbueAWKu5Wim|ana7D$0ODgPbi?7i1mEyMbd}Sr5(WEW6n4)NrH~PP# z*W+=WH3_dTD0lcZO$F4648)}Y+721@{q-L-oD?28(T>(aY>F^l=ON-DSB?j^fAf}T z?@PcLX39t=KA=*oAKKoAy**RpOqdDV7`DjHiV;Y$Q)Lt_Z>F4v9GzeqPag#XCTr1| zj~4CJdr!~`DOWeBIWBcML*$k=BW&?oXJBdE@DcMUEo3#BZ5`4zR6_Yb8 zr{hlrEvT9*T|MQv{Z8a*i45mX6vuk$!f4Lmk7KH3%Yh!-o@0v}k!|QP1=B=lkF~o! z3i914)a$rd$yu|wmVGP~=E{5)S_AOZbwPRP$#iKb49?2m zR3y)8qS9Lo*Y^~=7*yK@>p6D+Yhypmjut)L_^F5c{t!BUH@kTq1EdrOD^MsmVdpjD zK)W#u&?+^#n3s{r?IOSB8?^`4GaZ2s7w4{BIfZYSIutVA#Toqf#Q-xhE|n8tUwblb!imM?Z7v8LUWDao&B|JEGGqx6Q#a2?m% z0XyjZbj7Tfa$&aVuS6}9Z=97`Omdn#8S+?PlNA)ac+Y(UA4ZH)Z4dz<$?N1iR7g7UV1^{eG(kKJN`WizRG7Q`Cz zj;G>W7rQ!HGT#`0JVVBZU)90;W$aLwEN6(I-w4k#yH}zIBQ8-JA zq!Hh1Xx&+!v&?;$P&2pXiE`Lz=n0#1J+#v53#<)5arW5C`rr3P=nCj_xi%FrV@IRm z6QU9PX;rUj+=Phks z3Jimow|SG7-x>yz)XpOtU$f*;^g(e_%sNxWEs=OVNM_w0*2)IO697O0q2b z@r}q%yeWJ}p+W)%4hHX7)v{^bHSg6VdxAFSD8cz+?JL!}mJBBD#>6NSR!O@2QPQRC zrk}`A&0YUHD_{Hk(!JwT;fmPd3(2txUnRfI(zHeg1S)ZvhM$(!QbI+Z>^_Sl$(^c< z+FjFVyfrv|Wx1XAQ1M~u^y=RnoujygcKy_)h^?hW#O~rT5{T?_4CTRyyRjd>ppd=(eRtX>F}>db`yOC zU!jccBl@G8NmVhDCddriK-~FpmjJ{>fRhZHaio;Hn8D)2He;uj@D(-vkUx^%c_bzS zP=_haVFkKnT22Q)=~GlLSMAefQ4A9ACc9~27CsdPS!EqvEHS)8wV@u=-O33yk5B+U zB~1r2vMBnCUH)YYtjCJ<21D}#+zU)bPVW#|&>**8c_h7{yw-CsiP)otYSSS_`j&V@Z+=h2 z>FKktgvoIpUA}U1M_1G!W;6!GiUF6|yKWqB--L~2&^o64e|}1#oEeGr{_B4&-0do= z7~u;DcqRT{a`I^>F<8#SFyjpG*BO9az0>EY9hm^`SF-cq3ZLf`qD?7{ZRhG;3Q(}t zld|27f-t)DSYFRbRd?&$^c$?e zF!mG?%o(Hi%&JjOg|1}Nn|4gx^I`1Xg>LkErdMWPhH~R>6lq+zP(_NJ*ra@TvCxrQNXgeCD(5#bDcz~Wp3EH+pv#ZK{0r`* zKu{ktpa8)7Z~dQB>PUd4j){Zm?(71c%dJ}Q_0PYAHsw2Ko6>z)P0FB)>cH^IOG{DD zKzA!_X7t0B;^>bB*A3aLj0HtY+(}(?%~DCkG{Eq|BJf~o2+-ASiUZ4rP57|Z7oZEx zJMbD9n}AMpM8PnZ@`?;;KcC?N#U;{<1gyf2d&HL>KtjomKT6C0e;2sY4hy$>T0)S! z5#5}8ctrLddjl4HEV&v54fOPcRtg?o2MY+R zd*>2E(VI|B1HG03fD2 zI2f9XMe&CMw}&krArN)2lQO$KJF9KVZFPnY?$4S40~ysMjtPJ4hx9_6{$5eXj4m-o zZ_o~35_M_AdTE%4nwPXy_~G-6d>76Ur-S9TDe z8{&g#J@sDQ3I+}F@cvut&Vtwxb97hi*u}$T+1vDL0ur#C$iYn($1C~TYy_WlGu=Z+TB9P zwOiP58O#m!HRW*Q=&Q3{uQyqA@t1r=scN~$)Kq{gefWpwjN#6}; z0VZ*k`c3QJB$|)mRaTAA%K$QpGvfCCqQjLh*#=&(#2H9bowvR7*xeFA$Pk_e9>pMQKyrYbJYT8KQ(3fm>~VaN@GphIBt@Xz~(tbEA5XDL1g^2*KJ9l$0(*+ zmN;RqIgTQ9fB^|@m^W7{AFhHzkL{BcYsERAj5LGKSZDf<*^)oLQ$3ZOl-e%#uHCdF z7Q_B5Bh5bH16Q}s_ldm+ZrAgzf}NB2pzM2Ji)`obR%$EP-Rw0D^SN9PD*@r{1fJCf z|71KtOv5p9Yh`;9cJfV$-$L&P(Sbk8!xrE_-rEOlL?IR8)Ex_^;fO~*H~Qaq#zDsPIjH&pGI~g#vN3)i zmfIkme{-^h2({aOSBU=i*}wTgX`S+W|NNHoaVZ4L&_eCD1&r@6;C^uVU9IzLUzjc7 zx9%lM#mP1&8Ok13R#rBIU_i)a9RFmo5;`SYgypq9e>FMfX64rycMsExs*`69z~w(?Apt)8oVUD(i9;N#G+brl*;m+E0|trW@g5iFxECM&Z`(+uz`bkL}2w zTo*PfQrpn#fWB1xL2bjtTPb@q_MUx^(9|Z4*>zNI{+mz!P;>HT>o2XF8kcJvhSxU5 z6x2q^v%|7;{U#1;5c$yrepiLA5KNSwFh6AVn?0WkG6q{76mVEx!`iZ6lv4pJ>uIC3vh#lo$axgYqsL`?%UeCTgB9SVp+sJ<^^l zNxqD`%)Y6s53$i}J|rK{PMdicrh^!42At7E24hFML0m;+z6pMSVoUxX-KsVeT%TLZ zE@oP{HJ_I_=ef_`woJ+7j3WN7}C> z!^$D{hZC!fhzAS_Yk>Cu6ftrZlf6eO^HPLR?+v-CIfqiGGnJ!l!= zYPfGAHdnSgEHr6i8l3I_?+`(|1xu6Ny~>$+EWaER{QJtZtZ;5#`trmcoulWZm#Sq$ z_6gIPmeDBRiJZhpEuWRyk-4KHS0o(SRzKGd4&g^ef}4jzrhqGQ>sGd6{t^v zLSBwP@H~lS9^L+0(w?IP)hBBEUL~Ylb0rT!&Y=OIa_|oMWX3C zACn~e4{AInm%zm6wqGu6Pd7?7B=lnql5?2RFZ4I|p|6EUe(Z}Rd3f+LXS%nG>*H0yG+)bSg zx7?Ytpz(7^T0HzE$c?R^Z}XtXGC=#W8-R0Ul>6a5$W-~s;=8yeTKl5^uT$1;nKQw`9Ka1E|G7n#Q zlj2Nh3f7W1=kaL7^GMBA(!1|-hV6Tz^fY~v+<8goBFNfm@8C~`aIkX)5E59UT(~;N z3tMj33c>uPZ~NrU&bWe zROi+-`>?|J!@j!bbNm`&rTB}+A4TCRiFYf}&V=*l;h%lU z?O&6i=P}e{p+;e>^?Y!}i>%0}nn7zpwkAHt$>2==@wa0oQHCBl{|t_-s3~Cz4g7`+ zWmon4ejNru15BPwWlqENcEnEao`)V});7DtvU|tg~1I zS@Ag5gS)YPZN;fGKRllIDP^uTi+nR5~ z>VZ?q#md_Ey~&?_E8}k2B&L)9J72jvVDRsu2Do(~yTbm`xb^{Gp&|^U`;72?x%Tc0 zUd?C^cix2)pRo3UeNLX!@$mW9GNDIyFsPPE$o+cxbgd1uSi4~(2;#g7ppXOK$!6!Q z4gSbVb4z^d3vBnrb)Kh6CK69(G|xHxCO_HIXx-!Y_&ub_MOhG@Gq>+Z++yq94$N<` zc&a~5WWv;NEXL%W`lV%lNVrN+X~%bn#l+k;eF=7)s5_Ij29U_}v{%rAc%mkbv&^q- z#H2H9WDPOoClSldg)2tN)$<W`EQg7K_AI773Gw{mSh+rh zeyCi^J*a1LAG#{`ZoF0=LkzKMjHudw?EAt|n6vod+RLVp)8+fM-=4w=7gNeJ@Y|Eu z3b|*D{VcUV*`D_Td`x&dO40l7VHla%cIIZ~l^E8%!I)d!W^rAgrAFAOCiP81Kooe9 zEkKD})QHlWShSXCpj)RVYgE5e#bp~q_KmPhy@Oj{CxcaWzld{lr3py`?NN;D%;6vf zs#9OkyP;Rf=I%>?cGEW9CEDXV2RZbGU}kjxd4Gp+_*`4`A?(u)gAWN%ABaO^y4TiI z$|rrb;>%be;UIQN4`uw^Oj*SPg=Hq*tPhw*+>djd9ZmD&2o}N&XJTtdQ`H_5+nn+htZB|R zanj#=9RrpK?`pQxPzAWQjhZck`I??gZCQ0#^sV(sEdXcHxaVrVp%dDds**^S>&JPR z4@%m!|3LYcezi(LUi4E`B|qzdTnXIQoqQatsYFnGSNHJF$_s1KHysG;^68Ti;=}#u zHbM<#JoN0V_l-dsdhFwzy)XVNSyqU}^@kiQ+}U;k2xiN)No z;v`uU&L3jfDHnskGO@Ylk4ugy-eefP^XLCFPm_Oj#QS~8oG9VsK-f7L1&qAi_cxq= zSpqwB;NgJeUsS$@Ij3U}bD;AulW~Z}=PQ0Tz z1~8vyqTFamDf+ltz?H>=h?XK)jIIx$rJSHUCN}~eL$vyL#4^*Kn4fYVu+LYmBrL}O zHqq>~#5}l4e9Kye$z{GBWi2<=FksTOzq;0%oFqf{M~+a>b3B^KfH0zg>}RdNtt8nVE*T^8m1?Hg6-)=lyyZ+T868*!BW#7_Ley3QmG zs=(wVs7Q0!V5)@G9J@Cf8;$XvXgu*h7e8|n_X%-recfKW zeb5gi4*f^mdxd>U_Qu(LcKZWP=U(`>pA!7Phvk*G8C}?2hq@=my zp)NR#TBgzgc%Yk)p+(=~0gk(1+g)b5H%FhqfKs`q+2a3+4n9*3sz4cH>$qI4i|uTZ z;CqaI;_1Gl%U_x6A+^{3b=$Voqz!-4f?YhKPdldfjUt^@W-%6PL^!LtT`Iz9y*+Al z?VgvyR;wu7Z-P)G+U}vAD8W%@%VvV@)vK5EB|0;i$65RJvA+wpe3ryMB-KFVujI-T z;)c1a6m5uH;8#SJEv8J0DoayQRcMYOj|Yn{Dl&%2-N8#DmHvH^Ac>DOROJ2_{t;$Z ziVh!w4;$95cIU;3mZOoz&I$pDB8Do_L&{>BW;w`R!toUHAf(j8!dF3n;yJfU;x=Gjqi@$zxak{?`G!B}2VwD4 z3y9KB=%}-;qQG;@F`blYgGlS>ghM(jWpnge-$7DX8doPynQQNh`oyFpjwXbzKsA>W zq;7jlKMWgi%tVKmrjayk69d*}3myPQUeg-Eqgr$Jujofm<}*7S*dP9ei9P&j3hmWR z!)6WGxr?F`0@I(HL;lSctr(sGV%tnb>FIZa_G**plX4ua;Af!4#H+;{KA4M43U1Rl zC@;M63r~32c*Wm(0rJcz!gfMl9-;qd*o93~W@#ZxT_*m_@!8Q@u!6R;YF+8-jw^^i zLOp_jiRNj^N&9oHrEC`ym|ZCX>}K`{p1%N(>#qoX%?0w*l%I1?4b+fW6nr7K0Js%f zXVj9ghE^qDxwHQ3Ya#kb&j-PHhKu_pf7Xu>-Am*1yc7s-Q@~y;j}dSa7F;)Aj>dWw zjR>C6aIf-9+J(|>eZegDs$VO++MQFaDM?wGT$Tsdo)7c0VB$LlbW@RCQ{jY4qJeAG zwgKev=}B3CsPd?4=%_rJ|p zYbjX)X>qnoGxyvCJbEi$t;*S8w2_YIGlX^z+mX>f5kl3@AH;WV8Gal45?6ktCQxk` zjGVL05YD7_$J7q+V+CE3zsILVwUX`8G{?uHlVB+EBHx(51n~%LDv43vy_S@)3*27D zyO{EHfUdTltqC{ZQ>+DpOOJKm9!3fKl~~tA{P(U0;vP5g<9BpRKQa7R zQOFs|VG;FL+ws{L+C!(A{~h3UbmHc1m0lDipd<$c?2!6hp-4S0^)g6=V=nhBMZ^ZT z+QO7#UC;mX;$L0(=3~T(7VS~Fud`n_AXEdq;3uqFZ^7JVauIax?FTSTl;@`L&Ui*c zk^dbwv7xMvT;>p~;Vbo(Xl}M7_msknzDx2}v0836JsTO| zC?ioSsK|FjaG$Z7`zX<5T^`dv)H_Uo;yO$n5@k00na6RzBl%->DFJH&noJi;@CT(K z==MUE(UcZBBS5~pXZo34u=@i9#of~MD4&yqXXPvi@gbV-Y#G6QP8tNsEaX3At&#X^ zZqveNF+#kOf9DZr8TCADfHEJOnch7DU=7o4fjeVq!5IiHR+isoY|F`SCblWjOjP)+6KkeeGLwi{M|G_ed9^@C9H$;%&m9MH z@dQ|u3RKi@y}s|K^0!_!sx-CT)L9yXMULvj0^h{aKoq@auyMPMu#TFq{kPylhfsYp_1s#>=g5$I@2 zBZ0iAU?z&cj9Oojt`$So%u9#;+VGt zUU((}mK8EbcCO&$TTpj} z@d5WVkAveRS9eE0g`@(v%z^inB389MK5kI)f(Rkid*`dW;2*!a*(|KvW%>=dmzXgE zk+JAe7SNQn+yxof40Yt%y|C4O+$$~I?isvY4R?1N@5)rFESf3csSe9wg)-v7pNntd z&6BCN-es|&niouZ{&;IpZ@@+=&Fip{+W+^07QO=kD%yz+Z>SrIgg^ zLy0p7x^5l4Z*=~$=5x*aiEws1>7w%POvtu&g$XAg_z<^=Ur(FBGl}yIU0ZzBQ~~Tr zNWi6Fch+I86O;Sx%>IN^^cx>A1@v^S-v*lRvCC@43I_boC!OXLME|7=R^n}p1S_O3 zBF1iz5U1ao+@DshLK1OMACipceA~@6t^#@QxA)GS`KmYc7Ocf<_Fc;&DkG5t@MUZF ze@#{f#V3&!gQ<~ovA%sHl}}ns$=6Cl)HNqBNpC-y5jJd&JjBSeZ!M7xoAtcE?Z0gd z{h}mfxOz<1g%Zd=FQG1|TG&DX<*P>_OW zBGoP^uD&70%f_5r)N&MMHnlNV9!WK)Ug8{;+zm4wI^YiVaT+Wf{Us?r9Q~ypuykBR z&lkW&P(l!eleN%7*vx!vybi{9S?(9r~zejf;sDC^*7)@Tk?GBP9&$p~;A!rE;YJU7YI-G*ElEH@G zGZVJiRL~xhL$?yMj?z^0Z~v-?t@&sA!zNt1o98<9Y;cQ1-Azs)=#pRx&j|^d3*U$! zxoltSuM{;a)x^%Ux@N+6e+~QR@XwF-mvHVZ)#Ir3T~o--Q`;Bw#UOOOFrn%X|Mmks zP`#1Y98)$D#lH4Z<5ic*;*aXYzkwwhYt@Ri4=2a{^;)|o6|D`@@vqvW^XA00Yv8Z9 zY#(1gFEan9(G;W6Xm(mf##ClZAKv2fNfDmaGdP$gaacgt7lb8va7h>49VBJZG?fbv z)B(Z<*A^!RYvNiPHYcm2Xys301t}UlBk4@g#3wfd>Lm9ckha=}1`yiWqfp(?D#u_F z-WXF-UnzRek8oqEmXp#2C7O(|k5_wq9UXQd0Q&h`h5Y38(rNZEwkxJK&j4Z;@))^> z=2ds?*A6RWX1n7Y`gjWoszG-AND5$V1j^YmltZ7@kwNHGm;XFXVm2Q#!F-#F18(!< zkBA?}#&r@hPi=7U0*XwHMlh_O!JfussZ9wvf;Ui3H-M&_6oCf2V*d=&p6eZq&^kvddgf?=M45;kmH_Y=k zc$n#?w_k`kXV4p5zt;b&A=k~rTVv(EsRs?W>T2xA+l{89@;L>8yZzv5rT1Rb%pwqE(7tbG6?*H`t>iTR8&f5cL6dX#bR1Bi&n*S@XE%?ssnV_B?!B-z0@7ClhMDfF> ze;-l5T_p)mNDoTBuE3B$wp~5xOnAso23oMyD&C9tTVdu4j(;%nYqW|d;f;M5TTJ$P0r(>qjRB0@cvb9W1N zg+C36CK~WgH391)ES2MR&P&!&@Ecky|51r2`3ZQ$UB|6lkr8~L4JuvR>mcM2X$aMD z4(7@d{7DFZyCAJ~Q`D|hdzefT)L{pSCcCvu%18{ib4PH?^~MW{$ZippjbF$G0S!1b z=@xcV?fx7@bhe3X%Z~&8NJwF4cTkQ;r9@4H&)A5a_JDh2(zesfd)jH15B?_6yt#Ea}Rc7f!x{Y+|9QUd@hSF4YUUqdT4Z{pl-fEL=tKj zDB64yHS_W)ow~kA!HR(5zH){^#jR7v5#$EkGSypHwRP9KCNkiaIF%BK{6_cwydmVKFX>+!Mb=kU6G-JPSpt6&EBKQro`ZJs-qC;~jK6GT z_@balx~;%`ds%!##Rbqh+nJy&(m>54O==#lAuaz^Aiudt8Iu{_Knge$*2=6iiNVRf z<%7H(;5Ig$ASzfjGhyAFj20|4F4P0JTs~J}9kY;VP5?bg_00Zi*qLl( zaT_!kJ8C--Nf;(4lM)mSe%aQ^rQ$ra{)vw74DAycQIC*&d@r%cq#lAP=z@P3TRt4656LCg!gYJwIu(;e4d$MRo6>U- z6E0oNNbb}FqKwFwv#n@_A6-E9clZA5Ykd4@TjYGY@K0hnj2G8PKk-X!iH6PD3LZ5U zU7tX)J5l{jE{=rbkm?#h8w{xb8Me2cP3zJc0T+?8> zI|l{1_aSyga?TqO&l5vtV~e8%dJLVP~;i@Y^oiVOkqqE@c5b%?1s7 zXkIPCr2MA#FZv!++Zyg`lmVT9pPwg|l!IIzn1p$)$kEUJ=k^(PLhCqxP5G_pW)#}@ zt>jx-Q{5-YFH>93d%WTzFIt~GlmPMg}c58^$YufGk>vnwUa z>{P6D**AC3_GGeRy4u@}S2LSYtFzZ5ztE5y-oI5DhS-lW zMM3|P#gsKMZ=#!x546pMjs|{!c(85Wh-#UZ({dtOXTBOV_U_OGKOiF%(b3{iHNPZDAu~6+L^{yiF7$YRz=}ZyHhNSPRVaH&Lyff%cr`7y1aCX} zJoWJFT~{j^9Wx1@bF5gfXg%2wo_YxIpN)Wwl7VA70x>$T|MfIufq3B))Jef1&I4|6 z@Sy15PjpkzY8;jt_r$_V(d+o6H&$Qa7(-D%)B&8tp*>FeYECLueg8?@_5W5^o5`Vg z94~rEiiwFi&}2`H=$|)%0%w-ilVPd*;WE= z;x|FAZo{&%3c?pHD3AZ&MD_TGW`cIz1HJSR&TEXn>b^sh)6YGg?jlbX8;8yv)>Z`> z@ly}sEK!VEsGd!#0Q*$^9pycy;M}@9%6Ux$Q|rjI@sQEN2S zK(zyl^@9eG*Yf;GX02@DGPPlE%vFtQMm;*AGY(n>VK^;c*oPJdTged~LJ*}q{F#3VmX7_U z(Ds70t2mVi73SF_n(=@FcJr#GZA|uLjJsLw6s*U@d$T*LRM(Z|bD`t{m)u})O#Kg; zM!aNe!cUND;=Im1)jG;>yqk?aD$bqy^zb@jIm!&YX%QL2qE_>dezk@yemFdOCwTaR z(v}!+7saJpmzvBG#&X`?(7&8kPid!h_4Nn0C!yEoA!{CwU~>I1Uw>*l>?mT&PmBIi z;D!1rU2tn>{m`W6BzX5&sO0(duh6`zq=h86)I{V0vTY8$XWy zM<+>AuxIoXzxs-W=ZLD4Mvr8{DqAEFKutgzs+%-!&>?(fy-Uk_JD(JV$kDPd4mVSt zi;bG%WnIP(?Mby$R(cq6rVj_b=C?t#BOzJtqMAb|ovV=a^f5suX6D0`8-L1KKGlzq z1n|eoa}S-l@3ytegroqWX}v!F$x>N~Kd!=Rnj|fDjX;QE@&|G&TVk8mmp1*wR;1K< zPfE{v;r`=>MiG$e0_(FFS8Fqmds{QFW>*#0Y_{j`O_%eIcgg zKM`25@XUu}Wpl>Q_CT0)DKPYQNG8kN8F1xt;r@JSYpMbUaNIixUND$(Ee-$ zT4MqC201wt`>CqqZ$yza=<{Q4ecQcF@qt-4vcDE1Yv1J&V_<}v0U1!lH_zP_M_+sU?-GzF9rA$ zgJfkFkLs)wZdwFsc@Im-4*8s>k^*+yLo3*f+af-wUEoni+V>bAPR}jeXmbEPC{UO` znATz&YMqj+0O(88)ugN-|Ky7|vS_B;I7$xZ#e$Xd->9hX@5tn!;-O+t;CBj#%HFc+J2A(u?Y%;z+m;1$Q4FE3ZT3hq=~|8Ebr;ZEAX zw*-8hzT5@0Ux+ltX5q%&1S&4nUwwSCs%6gt*rE?uPvniO)khf)f7GFOZvsXy?D98m z@^^)z4b>mU3zYQ;mH{z`s&VnnAmKF1a!<76f%omD`C{ld5A-ZtRr`GhEvKpq&*z1n<5y zS$@%i&dWZM3Znm7fezmmezngR>U&Ih=(kqQDYLAtQ_<0Dyc;7Zst@E5%*cd}5G-N~ zM}aJp^exswDV$dzce3#E1NDtqr{7!*E6m)>+MRADm)7U_;LA;^^v0mnLRbyLw%cO- zuq449jl)oP*5lZNp8JV!TZ+<$Isa?_;$&0X!jxlN(KG`B2)*CO2qATi0b8Yb)Mm&( z4>#8B;EnlUE_wDR^>U1z(%^>dD;wY@5$k^We2Z069-;j>q!_a9q`CZ1wB(FlK@IJ5 zaupWJO5-tUtX%RRZO5Bu=4j>}!;C%7QeQlF>8v4<%xsH-C&zXh)D9js_}Pnu_C>Id*EH83RaM0<^RZwWPF$*{?hMMx#-Q!0MV&v)D}zYo9;8)Cjk#hjeE7HGp27W@sd;urF24V4)v`g}SS6Px%b$LY%Is z`4!Y>wI(vFMTcyh!4-B_9rapVv*$`Vv5Mpup_Wk*jFI<2rk38bt4~+Aw|WH`pP^057jw~GzIl)iiY=S z3iZpB%L~iulIzhPS8DHfFU|9u7=nX_e?SCx=LCbIJoKkd7C0l#2-$S*+tjDP&9LI^ z+#eSX5qCXMeAI@zV100j^`6carS~9QVd7&2EeBl^6YAi%&wdOEbPko;^0b&W5s%S- zjeUnt&00?f2Q}3%r;W&9A8H|L3qm~C*6P+rdWqD>vfGz_&9%u&TfKC-q85f#ZH7_C zr;SVM)|4&jsN;0<*>IWu9QNto!?JE(b`7`YH~#;xvmofV((){S%GdRPd$APcXf~WUl{J@M-I*KUe4)Y9Fl$&@3zWeGdj3AfqY$ z*}}1;b*khdHYjneSqeToH$Ok$e#7K-K~}w8`^(IC&5K_a@iIGtDtoQj;OR|-AFxfY zu7~Q~zED;N)k9QcvWPGCc{OdJDI~@1BZ1OOCR6!MP$}^U#pcG(vhnsHLu^Gy) zZd!9sbw`BFf}XdN2(;+MGzYZHfRsD}akA3_p#nW=6JEz$#jcsG0+L45>P&CJbZbN? zv?QWHaKo~-@t}E7;)2EKk4;E+^XiiDVb+GX9&`$Fk8PEAFG{TBpEx@MjBQOr;_7zy zVDn7nCxqZ5ba?yja48(pdR@qi&VDir@HxtH$P_cK|DL!vePr45Og>&=RAcLKNchB= zwwE`2O+s&=!=-$^Rk*%7Qh98BS7ps@vwKq~*ov;i($y(a2Sv`!#V5vn0NS_1=4=G_ za&JZy`=kr^$XODfSohuwn(nO?7*)oM?41%KrmGZs;euC4KRk{zt)DA5vS{}Af74n} z4A{EZDe@pL8PuKQK)ljx-<{(;NWMtTDTYDXt{&XZ%x>sNkngzoH9PBc3%lfb$&!Wj zF_%dK>N%1+;G>2BUFjrdsme5d%Xm&Vt@;Imi_ZlIwR`PdrdFB~?v;Wu zj#Q-%zRe}6>D!IH0^sL2B@Y@HJJf-#i*EF7w+zXSo2~hDxk(P8d$xvSUfQbWF<$qldUXon5k-H$_CrJPC?=*{M3# zmA?3ZFNcH^Xis&yU0{afH1BCHZQlS&u}cKI#X!}5%o7pLncQ_w8Kacj0#P)4Ce171 zYmQ8h+`hrIU1V^Ulh{dL1*pcHr4z3}5m#CJ`j5pqGois>`ge71;+3(N*8SrcwRZI_k;^uY9Jv~B_ zqV23M(_3#Y887Al3qCXZ3|krzr+6WpE+?o-;1wl3y1%N_`1wj>+qKTcu!ZmUhc6F& zdMR^SOn$E^IiOeLIAS_}tb${`gxo_TRHt)^$d^9P&z+)lbzqID{ElG8Ob=RxhWik zF=ufJzL*EjRW}DmI=BmCwsZahwh_Zy(I{`1;}RzDCkyfopmIQ5|5(++^QE4;X`c`S zN^On5;1i+aSJTyD4cj4RLH22Hc)ZI+^Z<=dOh(1J`$y@|p74Mc#k3E9X+<}t+gZ@h zB<{|)rndRQ{@aPbd0%U6zjqph6|QVy3+!;KZtf2{=#=j4#?~8Q{aB8U};8Csl*+&pX{s{7ht4w0-{#c5AWbZ}$20Pcx zWS(Dj{q213*`qP(>w8M5SDfPE2jgXjzYK*gg!_9(NV7u)_4b)&j zl1%mwJzQ0>`AD+=CHrqG$G^;#;TFmNl;9cb;RW~=5j?J7a(eg-a< zoS$EQ&=+6syYqI(J7(r5vHyf_VtFq(-1yx2tnBi`>{7Ej zrM6qypbA8b4Cpr0YF7hnc-3po-GN003w<-aGEa&1m=PZ=-ntnJ(l9`RhO|1 z0!YwfYxH6!?aXt8Ede2PL;R1qO+@bD>=9!JnLHxd?B}ZSG^k zd44766dgVGG$u)DasS&Qdj^{*CPeA;WXh~q*~NrQ{9n%k1riKpCc~|mbBm*!&p{E_ zX<71LmZG%oK6p0Wc`=TRE6uj#Gh)oUN**G@Ue*gR`FHEWs=dN`eRUP}mu&HX6(Hx1 zeaU51tMDB2f@stVIGkp#4#YD5#W0`>h0p zeSfwVrC1{%!j_PVF*;6e%AHS*H6hAlzZztwD|EEjWa9J(C&!ezS0A%nCb#IBHcw-= zoCFSsfkcD!-se_P!u#71^S~HwX9y*8XO_$>!9&r$G|oNlKRbBsG|F+rq(e3h{>HQu zVx|Py%=ByjlKPcRiT?uV2z}$ezZrd9{F>HHk-vwlUF#iDW9r1SFtS8hn9KPpJAn;8d+?%91bjSYQ~;>wpH$2 z+w^bb`>q(zMRxgX$UD|?J+doVMj6z0zKS1+L)$`ln>*CgqC(1iNl?Y}$!MVgZsu88 z`y9;EFhg;y)HXw-S9C701pJAk13NMb%4V5;q)dkZynV&V{H#Gi$zL}||LJD`dPnSY z==Rz#MyUuj(}!-j}$eU`8bU4yoyd@Ko$y=UtyN;ye1t17m(Ou+IJr> zXt=+qF_w%@9nAGC{TP=dG}5S<12$}4uaX0&RAS-Dhs70 zSlqZ=*xZWbE{?n>eE>sW*;1FJ`_5UMB9iQ7+%)sd`{+kKzB0P*hUAM3sPm;jml`Fq`VrqtqKv3lnspf>Y2 zZ{hT-fZeP3%+0F7-K~m}&`W&$lnG^+NF0|(_x-k7d5XERF?;L4*4hCYTwEHY3=S}r zxNx+^8(b{h0#bg3KyJ|d#YJZ!2U~bk9imV2OTuxQqUmGb9p-EqoAJ5+UB2W%CpE{F zZ}tGJTL4@GwK}?m@!0s0dSa@2;3?_$STA-oT7z$cI<91l1NjRWT}R|v1ENqFAY8dn zu*FKG0Yz)PYV{Py;Y&3-Mxm~IP*=vA|1!S*FmFD0wCt*`Api#g$8YA0*?yZdV$|aD z<2=LWf?C!-`UezbP%7vf6vxccRarI71C7=bW#|m=Q?oobSh@QaoeggC3X6 z^#MTJSMkI&BO-=*9m?}0s=s5TD+_AGE4p7wsLCb2a&8Bk9I!<-%<<8K?ddC8`}-Cb=q^kR$t+b4w2zmFv=F`i7^nW zmhXQHeF!}3S&9G|$xKR-j(u#2--XQ3CxW%&vO#4E6^fC|)F`NF9EiJ=*i7EQ1%&#asG~Qkr zzEceE0W6xc{h$tY?czk_-_N&}+I^Kh{_FV7dO89ohb+56z{cqOu)?6Fu8eB-YwiyR zbKz63s;tDS74Th~QxXA1p1me%LC`wHrAau()V)`w4^dRO4$@gxmHn@^f?5|;!HL!g zQZtH;w@a1*>NSlOkuHwLu8<DbWki~zg+rqqiDH7w);BBFZf#eJsHy&P) zl`1$XmDijZ=badf>x`=-{W$XC~X70?cD_^BQ`an49Z zl4>*#>tqjp*y14YAMW>ice2d6lonpW@%N#PTs`Dc#$w`}V@Z!BjD`FgHnzp%C|H&0 zCS?`U10SleWS;e~WY+?(3|22falWdI=VOnT>5tqC9=6MGvA^zN{%t;bZ*v&98?D$v zh6(cscT{3qzkmhw)rWgG1wsc%sLz67GJ>rja$<74XCP2Tu~|!g2n|Pr3wcrE4E#&) z0ecQmbo@q4JQ+QqsD%oS;rEc@VYrl7H9vu0i}N3N24u0dDVf!TY5#*H{b${wJ)wN8 zhTZ+~-kSa<0yB%QA)0*8BQ{{o$FvX-B&`c$R?!r7gHj7v71aWnT$zRaw z+k5*)f!3|p@NWoxz?$s*Q|Ew=i-9`i;ff0Nai=Us2n&1rTURR%JF}bjSNr78`nJC& zcwbMs-y^yIV%&_q)yh|@*5s&nVvH;jP@&cQL@hAUPW5iD^`~0j?449$ivuV3q8lLD6u9^pMYUBE{!lZSjr%ytetz_>=e;j} zRth*+@^w4ryj(9A|M@{2nSk4Zb)?t@4=1WcuKuFpwlW!CF>Zl7T?2|*ma8J#hdr&} z@@;60qRE7#?7XnO{a0s8Np0kzD(1+h``5b7Q`PnQaOnf@7PIFUPST`uZ^-`lJ|Vp$ zRm%X2Rrhnjhy!hY#lO}A{`+@7FRyERO9wwSsnXRpG*<4QvnTq3EA&peqHlwLMtU_{r#Zk3q#>H;M^)q-UbjGb6LgTy-7jReu(*fA;89UOzh) z?ACJ?g+|l+dB2m}oEk~GlI!yi!4plEz|@Y%k`DKz1?}N*Y`0Wq#K|u^Ije0Quw-V2 zRGyyHw@XEwVtLdPI3C|kO_}O`jwG@=>8F$nP~)*HW?d8K7Acg&PCO}?c2?fil)DD8 zoy?B15h?l;YwyM9x69vf6shPX7_PXk-l*=hb0c*117D;@`d;Il=JF_-N{={?@JPZ6~{}xe(4cAP_b;-@fFq zFt^PBU2WtPnWG>d{Y81H;5ulVowe%lk)0hUg8BfgB3AvOCeDMLt&8JLSJ1?{_?8#r ze}u;4%uH76c)2BW)KsdhfN~YPb7lpr9)YaeBt3bVQhE9{@73+{XxA#?zC%)?sHD3k zfD<41e6wgq`I?ZIEAKsNLN_MBK{M{rW`xHvq;GQdzAf0~oFv(xECW zV{Ko9RBuCNs)3&#?g=OrqbR2Wk>4a1^RWF{otsPTi1Wn^UMGEH_p%CMnxf}V9+8!X z?wHcC71h33eS?^pa!?c@Z_D0KIsi4PqI?;WKESvv*8ABP|0 zgVbfL$NP8td^+7ZnC$A@1{s~WVgNwz0=rF4n1GGOi|c3IFN*33)cF6qIL4#``I=6u z=dVrFUB7xbzce_OPxAYmSf)miSv3EtjigsXsn-EJgC2PQlG&dNuW+$Y5&4<$c(-C# ze;JRU*5z^BM5-=(UXWXk?=8J@@A2kt@BR5uW(Dr`59P>JQvMtn>FsyeTb$ z8;=G49M-*5QRoE%(cp$;rIgJtA}p1%cal@o!l*3vo_TqYvs8rM$K)O#-`89nxhoTj z!+J0wCFlz!aKwizYtmop4w^2J@a(1o_IVwUubA#cUuxA_zHj%#k*i+2A)zcGIMD?O z)s;%V45|!!k@`dau}h?B=+bu-w83tpLShqg1^I7tzKM=n&_e&x6&7xpsE*kaLF$s(j(X&bT*=lHy37Y<59|Bq0If-q~(> zvySxnpj>^%m^_O`$6v7AamTWt!nU9wsE>dNs(0j}K_^I}4&u}U+G%E*gQ`i?PFYkw z*7=(N_+a*IpkH2HaG*RN&g}uSGRPoG{h~jYTIw<4@_4Ge$)fn*IS+9?eSuK^Nv_^V z{|jSx?Zod%z{~mO%DKX~kLnNXqiFxg=K(=2_q})ZvQ*BjJ=J6>lbkwrA^)%wt%6eJ z>7MpKv;5x28nx`6eR)pJPdupq9j7OBM|YDCQ#vL-a}xP zV=7`6s7~B?hG+>D_bWMqZ2nz~U3xuL3o5wb_t>J!1H@9634p%O<`(`2`TB485v7?) ziteejLaH!wnh7iu$*BYiidtqt+Nzr~?5qXF0~|WhJ@pLq@) zq;J#uW{&5xF zSzeJb@OU=-%h79E@C80ttks^FD3MQX&r8lKYCw&mae z2OH2ph&@I8b0zGajS|cUGs(GdwAav=HK%saZj?TaIw@O29$-b0sMX0j*I!PrJ0h-j zz=WPp*ZHnKI$#%)q=7w*C&)rnrM7f6b5Nv0U^rppRa%ys`RHQ{;T`bE@+(ei; z%a#I5Z#)1J)x-NCEM%W+OkT)Vi>=a`IHS|BevN=EIPP|xJLj5UXKTg#ttmbmYh?`7 z!`THl2&*4{4K4=|DMAiN~HleS-zE=+FbXx$86 zXj8ofbWAC+vUW5cbuuw(%1X0C#8mZ-lnxi>^~Xg3zLK2~$?f@Qha>ZOuEU3}3hok# zl*O;D&in6#3QH_3*fJF@^@K~=;oy~Q{NhMvaW8aaUJi(4Y6V* z*O;U=97^(=|4%81@uK<0<$}7%)fa=;i;b>P1QK;xl!9WSvqzaOQyj}yev7*3D*YDE zFgLp|ic(`hZ|+NEsv9DDlga}ryLwh!?K6zCYNO;@iFZXLvewRFtu>*TT6KHv`4H#f z#%)0F!O2Chos8@jcjZgo1~6hqX|nS+&wdQ&t>|mk0oyg|UwJkgihFDY2Wu~7pg>9V zHZKk-+;9Nw)hR6=lNY430cMMNDZZLhwl<)T?N;-z64-}bE$1z~1p-b#?ABA%iX5@9 zds?l&Hr{~h7M!+b69O33^q%4x*)fdsQgq*~=OBAG_jkgWc^>tFP#)^7AIL>9Frym1 z{+|h%IJ&9km~r$_aQusZ#t`hYTEOmj^KZan5A@C4(~)0+?^lGh$ARk)NIo3MT*kv@Y0M~5IVZPqUE<(M z2FiaIPs}C{b3@gbWdJ1wB-I9xnj35a)p5Cl-O(YQ%cPpgfU9L!Q$B34^>03Dkh|s zo=~5B<$Bw-Vv!cseB$T8`MCh~x|UsOX@^i>4R^7;k}qQlC<=C_ z%lM5d(1za$jSK_zZAE8&yFpUZUERV5A6~mfj_}MAOJ+101K&05bQYSbH8N?D&V-IX zB42SYTntODQg?`m+vCeB+)EU#6fDQKp+I|3yAAfKvE;Vdw9=;XxWhkW#+j0mAEnDQ zk=RXtotVk>C4Rk1`=GH56IXjBQA>n|Wowl>X%B*1wy&PH%O%Km4peajh737+ZmZmV z-oe~__4nks)>%c-kf4(@i{sZ5Pm_d6{QT$rq^)Wg49w=U>YwzH7lG;=zM!zS-kz%0 z)prs(O&(1}U3c<={aQOS-f;Lg!dLad=59=T%His*tNkEF5An^pPkzLSGk^BZb{x}_ z&-tYfZQg2){k3J~#^O)=8I%3)ygnt%oVKS)$V&Dr$MqiL7FWMFGiehII?NHi#t_NU z`FGZiHLCV&0M>8=Lw^XTfsGm4+$L8d=dra651 z&X%Q|Csr2rZ`YPJ{BMa?`Sx8@(|`TPPj~;eha|tyP_=mdR9!OEVy8KzY9vW&ZXl(q zIg1l1=rS3b?h5#R`V4SpENj4l9y#0wq6dbfnAyLB#gHil!)o?HZyda6-osKjFUR9( zV^1`;r(u_xDN|t`-Kzd8hqdnZ(Zxbn6>d?*4{n)5Y@HjyIh5RNNwJjbC-V+q;4*zH zt(cK%E?~JuZ)~G^ZMKB9m#ezD)%mY!qxq}W#rd633>ioXdkaEiF&P>z2DflgiL}ryY;B-^@ zTnhs^{g@Py*f3THuLA7A>P=v3>LV4u^^sM+%Tfz@lGav|NONQExe?xlbF?opy`*FJ| zI{5DTHza)m`r~bBICN5-)GRbQBxPYKS<})Aef&-PA6>?`N074z^DW=M$FD`6vG)1~ zP8k9VPJ1~vUge&kSH(p9q~@W)5my>9UGA)rrdCyS*qO&xuoxxRfOR8%2JTK7x|0H{ zGnKtHs{-9gwYdUm#d`zEQlgqLt&7M&HX$joQ4gcl)C`Z%4?#AP^FG@pTMXU0u93;W zuH9IO64)~5^=m7u)l~MN+t6PBN&~F6KWqFQ{&`I^MT->D9gnjTy*yKWzq_SIc1(BP zvp$JR))E(yK+ZJ$If(tU=T+jL*)c#-T@e+{!}l^pbj6Ekb;WBObd`Xp_`{Xv@_<%} z9eHC<5H$p=^A4Q9S6k;dD&a8NEbBmM4no7h(I142olpWEq=ToVa)&y1*R?T-cg_0D zak(wN#5i#&4ec;K(z7)y?_&!`0eekauW8Zar2>jXDan?~29ymm)656nw7jkrK1In) zZd{Elb~OlFQaTjEIm$0(WOqF&2*+g_Y1gtgK>t!+=2q)AZd4@)_b*HzU*27AqPxT7o1id*;gOt=_S>!;V|8F(0Xui znxywah%E8Ur;2|lwtu6bs|VG@dBwcUTR?ruGj&VzOc|!e(CG(h=?1G#AMdFwve~)@ zQ~x3d7KwfWTXqc^q5w?jgqC_+5$`q&R{9Q`>*7L+ol*G|xH|I+~~{7>KFw4`gC z@KOAz^cOK9^P^ZZTl@o<4sS8zNwePHJLjJHe$x8FF)m4=oiB1LoIB8tx-`3|_P{7* z6vbNUVmA3q+a}n>wj>j9dafS@7i%HZZL^@B+H$`=c(>FC2Xa>xt4b%mwXVyBxQX2d zh8121E}|BD?DJlLul}`EAxYdoiqYj1ri^=Sv=SCt5`p=7o@chBK4vlRThVk{66L_;(Jh>xs^csBeGsVtMSU$U4cg| z7!S=%#_MkCSXfwq4H)LNK;vC~Bi#XRIEm9<2S%y#2!VQpLiptr~~c@bbL}z6nK~pCRuoBYR*(7H$iiIpTed_+e4%wC+H;of`c$ zhmyxcwE=Rqj{RFj9^%^qt-@iwStN%y-ZfD2n$p&JJD!oz$%D9*BNjkdC}V7<3F3WC z)Fo+p%|3M;i^eq}PK;Q5mzBEXjdql-1U-TmQ_hd{h*FSm1xCdP2Hmz^J3dNYr_BWO zE0-$&3}btU_dUcc+{f{xbWzt&*ios`NZu7!zMC9BC0Ba&Eg#^e(NS8L|Gkaa=$A!V zEW z7$~XmUyoBwcF5*oTjql-CmZF5MM1+nXsoA@Xqh5uSNjH~y%T@)W>vA?56Z%quT?Df6q!f~=LwJSUg zvM}T3_NNcboZgb2rcXw7yuR}b0i`wtX8;(5p{#x5lyT|k$SN^>rnY~7qy_Z>&oAk6A zII-t7-y8e5Q|vbFs;bbNHKl-8EL^c7JnikN=yZ~&y&2Xw!|Lr!TA5cYtS6BLm3X>H z;}k`Fc%2v!|BIsS}wW8K&gFVN=LV0Se=c0m&>BC^HW7+{A_pIXghWCxT|gTlwg?oxz3fAod|tGQU@@ zC9pxJw`Iw!XuJ^L&sx|eBk&#)#%%~rpeb>a#PgNwJJGCWh8~H#kO2>ksi18r+CW=uskp3 z(3_B#EN1bStMPodGG5qeZAK}ga0sFpPXtsIfeJ;{ck+8NwHtT!{884MUr=85tA8_y zMJ!42$i0Whp2+efzt5i%4?k6<@Kf=LGCeO>Va=w=wdeNZ(!i*9vkN4YB;DEc7+ zW&Z_9{WT$it@#e3dXagqLm(4~;7W707~Sb9hQlxQILz_A=`O$$ugdb^oY!mqIj}mI zpkAXFWVUs=h?|KiH1!GO+eNqQ>gGnur}xuI<{x`nrl~juK61;n51v!Fc%Bl~Dpuxg z8iE9xzCEY(g}I20EBl9TuMLZIgPBt+y*29&Kn!}FXQqC^Ylf(uc_Ukrn#bKGk%5Vs z5;w;h%3t?%(46nFFy%3Jm#Bz9peu&+hYM>{4!(ZzQHkH_JA3Ik(P(F;Kuj3MV9gnc zXs9iJkCGr<= z>f*s<_*MnxzfpV5Km%y{UeFYL_n$}X@b{(zB&2g}1=p%ttpExHcpausXLa^RDE zImxK*at{58AJ)}x2#5D#Sb!3Mze8Ljqr@5=me+K!C>Q$O1(cDw`n%BsUuN6_`)iQs zyoS&RXEDL|wm;ThJRBLdZP;n4T6V8Yu)y%*7S)_Gh9tq^rSpLAd+Y_hCJFS!l1v^^PekjD13DfX2u5LM1T!g2U#I`O^jo5Dr zx>xa}Ag9N$eBO2YT%j%asj`3j0S2`NMdzo+t%DUMC zR1*`G_xpKRB|YJsD&?@-_ss1KrE9CYr_+>YZhCyf_;v^I&o}1mRgL9}Dg!}(;b77N z>No2t!sU6x%kwfG*mA5eOaD%W{K&ZP%u87DA+QMw<=_X=!rH%o6+TQ?JNm-9De=N8 z1bstLQT0RjTJ~_otHnFkz0Kj?>r?2wqIRe0k$ye^lp~{fUsC|h-8PM0z;?wohyB{pn=GTgO%io@*(rB3FAU2-){!DH|e$J8n#-?`#>to4yGv zxFf#gC_=Jki^Zc#no@<68wsj(x1{84Sts>C*i1KH5agLZ2RKi#hROb9$}c4>Um`%r zEd!URIDh_dXIwsomKT?j)1d`@5U;T#Fk^c{No72u*!k zW>e)~bjEL_F5{{{KnI#B?H$)#rbE;=GgUXv4c41C0EN3*Ly!8#ON;%~_%VwrPxNhH z6Y8ez-b;Q}wbs9|oVnef=kFGH>N<&!qsZi?7sLVDu1ws9>Q(BVPiA`4alT(6$@}uF z0ko9mSEV>H{;sw#|J^tFGg6ck>Xfv?Y`Q1*9P4%;_3{;`SM}#IHq!(t$fDJ@@>&to zMvy+qe?Gn3c~Z`SiUBzcKVf%wLTNz1zb-Z}EDZTnv2iMHEF?Sl=DX9=l!H0=2d|Wz zF&;H?fm??YPS(>KiYL&lCg*r*N^RT%it?-K=9me?`M|Za0`;Cn^LnbmRhopRTeV@4 zSBF>;gr@3TPx~}Y!Fa9}*5xOsc#`jH8wH*eC9}o2bqR}XRU=~>GiRoP&{(4|i}5^4 z)))AvHM`h!_L}W9R>Q$jDMd$|9kWk$n7t9^#kNq}r&pupT~u}SXHTN7wjX7Jsuof7 zwuO*7v-p28S`w)jP`qyAha-4_#?MPiCTfx?k*GWezUGcI!=J1M&y>H~a&m-0bEYLvt3+go!HCDW)d*6#ps;b!LjF#K zL-lq4>(qhU;)JEGV^FpE`=hXD^-*GPM|4bhQhqwVnRl|`{L{`Hu=T>dTwtsrcZInF zWHI_c%1a%-uegjV4q}P+hxI}Ti76?Z9f*Gi*7bH-so8yd5t?$d%3XGyphna4J1gy{8FTF*yE?jUNaTcCi}o8Wiz<$Ks?`@quM zG*;FE;ejw4p#V@}-EI{KGP|F@bwJxm*RxD-GVNJ_mB=A zyX(}4?cc@xsJp)mw-Y+(2&0F2MTu&BRjVE&<1M){l6{N9=ZAnJvhMFWJE*0 z)L@RJL~7-SL=elZJE8W6NkJ9O57y3n;G2iqb)9Nw4b|;>Aqp=f5Nv@0vg|sz#@u!r zlV;iXe%(hXWS~NyYvYg_72~%Q`}Ng|Lzg@xP1v$uhwN7 z1pBw2E@rLKJI(%M1N{LD&$brH-MB&Q{F1h|XPg}wtRgFyzwX^1S9+de60rj~{=HmC z&lHW=?eeUIfr!&0&ZW)aQsBX~6IQ&?O|7~nYSQ?cNyFE4R{m*lvg1c0XSf|^U|7~K3F6Pwh1&?N$Ve* za7oH)+t8`1mG<3-YGv1)VmMjc8@o+>`vT3NX8sKek4GBs(y-!Qw$vkQ3IN@9_`v;U z1ajMUda0xK!Q`3npp2f6)*U4Zd-mY$XHLTQ^QZoX1mp}-F<*R=Le*UMdLx(i2Iy>sHIDc_t*`sc=9zj)pFS@yN1jgO=W zRe#xfb(01~*=#=T=sLas)?`>E-ZISo8`qA<%c$7jD!dRM`k82@-@{j&0?LXwZ-oyz z)R3~AK@1b+XaQ&QJpyoN=587+S1k0ee&^==A7ghO4`u)N5C1GhWvi5ZNk~qiNtm&W zN>PO5EV2zIWEmQheT-z^rLtrYDwQl_8B3OIGZ>8BFc@Z-$!?5&z32R1*LDBy`}*U4 z-2ctr#~hF2a~z+~`}KONdVCOAYHm<58giMdZS}qc@#d;UoIA>`*7_9JpyuNU_bp)UU))v1Nru8Xv>E8!?r;O`K3?05?G@lc!HE2L zq<$?fl(w47Gi|0J+oA&R1y%AbH-z5Hu4=ey$f@)SseIefr-hp*31o0%oma}C-}zgD zSu8i3hxE($943Cqhz+7vrj+OzK0@Mj49jXzslL`v{|WE%$hV$UA+=W_Om z9r*Zuh4veS_B(ed(yh@k&a{MY|4hgIsIgoXX$|^itxs1=&Iww3zr2QhlBAn$v_rV! zy{djW^P52&7ob?S^eWnG|7v<6bXWn0@x)@*en5AVyhWMq0c2BnM+PVy)-A(~wNaEz zedqqX;m^pdCEOh~C7NFGA$zA^+5Zm*tVPBP7uqfuB4NRrc_0zqkde0QnQLy703yQV z=$D#98=wDWQRHTZLFn!cYj+H7{<-RFf8q)vHyXkEUVULqO>DO!{n06YB_Fi)9bEBm zE5~yc$2gOB&(2+}%ZB@p-v=4YR^8fOy%J0FdQPuJ9b`T<$qI@s%v<<=5XBGaix zA8iwbD%%hB;N{9Mug1gIi;b&~2Yo_o2VsK)`tmGmdPH=on;5dq5f4CRKvqer0>qCk zFK{+`)}ZgTSMxMcP7Bd~9{4Ph+Sw!C$2bbr*3^Owvz}$rPM{KpO3QRVm)E^%d1S-* zHMj;#0e<5}$B#~*Z=jDcMSkc8M`CleDc1o|Px=t>6(hVOE4cFuR4>=Ir5K}TLJC`m zSi1AEc(yMN`k?v%ZpT+71(3sb!#UH`UUlGi;^AB9lhA1fT2GfQc0*jsw~M&#`Odf? z=_#B!!YrS7Txn0iSY^7C2$c>&%47i|`4Mpwzx%k17sKiJICB1;$e_W3Hi_>6<4k;$ zc=BtX+rxk+(MNwC^tu=*58sExeE(v)J;IDe$8;ubKA`NkOXFnX)8haZKs@1qPyI8c z_9cCMbpV-@BLZhDAJiEe#G_(=e?>k^%U4r2t4kK&L~Qn(AWn|6ay2?vNSXO0eVw6cWL z{Sraww72JJk?P|z9sbLugJvR+HL69!pDTs!4$5adJ^M#{c|qxKf7$jo&mSVnc%8oG z_%!?30R&C#{r0&We>9%Jn}nRsY|N$ZL54QDeybrSb1Zln>&a*#|o3ea)wV3>547!&HSTb@=U*vDgOLw94>_!iX z@WTqvg`6rJI#q<}D$nGvH`vpd^PW7H-@;Xk0U3sX9iJaL8_mt7#k)6=wgZYsqh5Kh z0jW2S&hBjn%Z`FKw6tXmwzRhE{qrqlbmtO;U;^739?;*;_i@>wL%g!tTCEw0?bomG z9h*tWyZG_*z3Z*JXM4=y4fLaV;}p@s}0a#VRZ^$ z@lMiF>VbXI#UxGKCA*jJfv95cyNVCWa)EZ`S?C|S-73rQdwl}bN3ChTiRX|Xv+FLG z2%1*Eh5UIgglc`{-h^I_4r?^N>}+e=>)2CsY6N|$VOQ)ymOEjfpH)7%{Y2E%koXi) zzdJAcS02dwl@TAvt^x*X6<@;3wp~mUR2*A{ipPQi3{nDqaK@C=6c~eEfQuXl(QVrA z`C$&UG5_&V>D$6a2A1CEri3;dCj+vYf90hUS^$7#I^dz+1DTJq_hQ#8B3Ag=6$g#6b`fhpQwB>-W+0O1m7 z9be?$57h8U{+=0_3CK~aecy?Y4j2xcJE(&mSHQbtGh9}CZRjoyrJtU&-4gNmC~Qv2 z()X?LWS)jrX@tZ-oTm!x=M9+X@I`d{`O~A=6xroJ(narH9e0!9IxrD8Y%VKqn}@qL zoQt!uikIYsX`bW@fp$##oAK|_MZYJ$&{QM9v#ja)K$(Z}gCm{#)|+}GF9E4V0RfUa zhVKzo!v4KBvXFI<-YbyKUM_}R?E+%IHxp`z7#KC2x6XzQu;cbG!nVFg+W zH|)Ip8J~nq%y@GT=*+;uj2_Z3jsuQ%4pV0&0~AE%?K%ku;kP>i@o)LmFEBr42UGPA z;@?3Zy(k2Y#?!Tgr@b1W0li$!qzijLd^{ZcxyIDJw8wxhj=z*cN0v|AzR8stDPl=~ zJW^lEs|}Z$0(OeQnimI~(7gpWP3m`JqLvgAGdC1C@d>H`78)R9u{VZ=HzRQZk&Ili z>5;g%VojubE}U2m{}MGW3BdQ|V2{W!>_3Kn_({M11NcGOGV9*@Z2ol+?=j{CsYz(}wCc zfIIduFPoCpA&zh5q3NoC#Uv3#rP5NX4CBo(X>;zSy01!c>1S5?qf zFCCQX`1HHF^jH4D1@a}*@U4o{6K!~_ZFyo{&8=9%;=HhZN7xJy>6aTDR0B?O%ln{n(yK)5tc$z4X z-dbi#yKh|?Z^kN3aO_J2ycqE3BM+y`C>s;OUlM4~Rax)6Bovi*p&Lf(n{SJH{|qE# z06v!omkA`wtvYct(M;KO8KLDPM;kfd`Y=CZfI+Jr`%0gJ{lYmG2C(u9>f%5&1C$Pb|ltkcrzSLJo zLKAN_pU(6H^I=TQfcXD_Gw3C4{{I4JsOiD6`_dVHEu8`K@#187S^cYNb03-iCphD- zrMhlIy?qWZO__S)Q<($Mr`2NKrM+q@Y>N?hS^!wHu2hwNu$?-aKYCV3W}~IC?U<*$ zK3zgvA$B0AKqdK$DO!O#z3tHvrG42G_Xn!3+>t1(Wa54T4LHs#aWaS}Jy3TyNZ2a`Ov`h_QlQHetn} zXEHthiAxttX;Qht4ZQ!u>HPZ!$q-}1Cd=2o&wjcCf4{tg>qbfZ4Ba{0&VWLd6I73! zT_m^}=}nl*FQpQLShN?WmjwAsH_dm2k46{jTR;f>oRm-4>9u-&-)UedjXP6 z#A5+@Dvhm*&@&5(o-~kcv@T`FASHht?WjVpp6%LIF9C*ytovsoAc8BT%U{V9ix_=m$;Zpp4 zX%F@OcX=ZYT@bRag#kIEQ6AB5DQUcS#a{aa|I5Ox{>#FgBmU6wJqQz{-Bj))0&$zS z!}_UQk;umf|AAqaH6#u$JI6_ol=wbRvrKymgb4oYVuQI}JsD|Z(R~>HeRLWoLI4VH z2c5u<^_tBm@@8G2?0<>6s_{qksftA#f1=V?mf>~}{_s6Ie`Cf$eDhx!X6rhh&yJpf z9K=<_+iCGRz;6-XuFP<_!d9>A&Xsxn&}-QgPQ3t4peB^M4(z{38&P}VJ>FG9eV+ZN z=5QFp3(nWv1e!@%#zRd$61ER^PnJAo91{uQOcm!H{LAO$6k26UWmNJT_9!g zzb-`0tMgqL5MOo{>8#TJg|sya)L@J%EABuL{Mh~-t`SMY8-4Cr7->=(o zzNbUtsHL^ZlCSuCnfIOGt#-IMC%i@q|1*-GfjO;&1`50+x&FXSjGM9 z6930*fkK-_a!(7PgShl(QkILqDtoj=<>z0VJCL4}{QVek^6ty?(e`I9JgB<+PU#-F zBCO)_rDLNTrD_^8|6UHF|2hK=EeP*k5P{;yL((J^4%k9Wa2MYeALlMQ>BH;)2r=t7 za}d7TLkzeqLPTrQ?xa?>&W87+O3Y6`=@YCZFC?@{~&U0T!MTneeVbE~Y8(Wo++<|XPloZ~{kf~Y#r^c25W3!S@cvYf+~mU|ghJ#AdJ-0*1mGgT@a+w>~J^AuHEK3U?wTO$aVi`I|z&SUfSy)oTD0tuB<9ho$6_` z8^`)_Yz+pq%@tx*e8^BFSeRrdmn?OB3A>$x7P9VnTVB(2s0i7KUFDMkYj+WgSW$o6 zUTg7?4I~y_dWzWmXQQL|5&xD(9f}7Yd0(n>%l|#MZ2kUVl96lCPIFrSO92%JJxy@v zsN4JCZ-|G~$5L8w2RVNhy-mP!3Y>HX8h!u`jwjT7`(PC>7ByoO6ubW> z(|WXd7q$#C;sUy)?+xkkfZczf)E~+VkN!+?I)WfoZ8Z(iLBky|#F@+VAuJgU$Ha zR=#CQ;SO6eIrDF|Nw0~t5PCDd$W8kRj-E&PunRT zxA_oDDfq=Jc$?JqHl8n)rwjMX8L2J@cNHj#L^0Y}lU|{}tIlR^|NdpkdkenXHfK<# ztf8+tNV|;>I`o>B#UhpxYTNKJA2vkviT|>$p1dO&6%Co_nIF2v*8a%mFLG-dk5IGm z*txD4l85#(UYl320WxTle%c5V4{jnYS5sOXl4 zS8ZhxV`iZ?_#|kv>Q_q+@T!($kZ!)9dcYnOjX$LS$`=Li3t!jY%JjQ>TlpX5E-`Ff4f>!ks&lm5 zg-~q!tCKw0pvM)bf5!XhV9PxewQrtd=WWobN(fr1uhM2J+3T#`4fs>ilj@F|t6lp_ zsr{ZUZ2+%kv6UC(0wHz}Cq}VZ_Gj=pJVM9CMgaUiOR>wJD-jApIm*Pn2N^@-4(tkB zDP# z*5vt%*Tpk){05Kqw)B}GhWL4ThicBvsGD7UQI=H>LD~D4h%FBNwY5-}|1n;mivbJO z$VNzZVKK5jCRmv}`nvZu)b-`TH`O|m{nIM5&xoza{rhElL-{Y_}I=3&M{iI>9@n6;DpvSMl{HYCS2&+It z(cguTo)J4juKFo#Oz637SiE+Wc!Ll zRU?Nw#B6eWlieB4zYxy$TSDh8LUz=~glfQENSYWSb8`KwZ$t!VO0KBcp< z2iU55WA05>&QYE3=d`u0+ypM^NqPtzwlmHE7s#RqSC#|Q7Lz2jh6N@44sGCt#uINR z_pLK4%l8Ika(?^2kMsK+RWq%#>A#~PRg+n&S*YPMb`XspbkQ+D&D?yiVofjGTjoz& zvdqx%vVp)}>-C&hK1;1d<;wdNPsy9=Jn}stEb+1sN6V^XA`?hfx6(491od5g^IsDw zfA{l6i+{-$@5P3f5&}iYPnq`h7-%o13z?*#`g)au-Tzk{}@cKzJ@E+b^A%>&)b$6f7`0m$kP5Vcm z^}s9SgJVV3IXiwi?ttP0p-eK?V}iZ>J|nOO43d0Ue3O2(&gBRd%iJ&+xZ{foAiG6} zG@$z<{a>a9ddl==KweiE&(_8DFQ?>Z?*LM_eR>c{8&742>T$@1d-#VEF38 zY%;q?iV%BIv9nLNrpf`e2$dQLUC~?7({T(&5rZc4oi;GKbp|K{$#fMm|8ahd|D&Cw z?xri=PvYlS4$jH#4Z_FY+)e67rkFG|ReDm=rB!C`&r$E8D|mDi;SkhsP7Wr5r^%KH3mqm7ujmz#Q!iX2t3&Dju>5~=vTv>WXL|eXsY=^W%cL5 zu>V_O0sNQ3vX~kZczsp;^DL(#dE-EKoq6LfCK<}IJg=76ftTLMZ z-RX3nPddJz#^3JFNB6s(F;fiT$%7%RHk&xC7+nGIXb`*l%*bX|O&c*!GmzNbzA)bq zRmfQ^WkoFGXTHu!D;S${Pvni;yE-Gu~>0+Up{B*qCda{9Lk~KbWa{45qEOh^r^*27p*6?Vq8ncuMuB{34 zuXgLrWhfe5-IT4bbg=am#`VJi-2?NiM|MF=l~4FjECpR^6`d7CSI>F#K!$fazZcr; zmDGaGiG`(H4gNVe7LYkPi3$yER5_LTO`v}8NH?Ig3X|{)RF0zRnLw$(edaBfyO^GW;Iw+pKch6L-UqHSwPXa%0 zf%7tY>oPToVk}wa7IY35SuZ?OTzrM&HM{-nrA_d`DHp#mt;d@+y-oBP4*pd4;+n4s z3T`d>n4+r0fKLbO1>j=ELZP~;lVuK`V(K2foUF;MhAJf+yYCZQ40*z4NR9hXzE0g$ zv^>7nDV24?@y(s4<{SC{HrLaUvx$Km)X^v z1Fz=Q@{>AStrycB(}h@Dy8_kmEvfq@N0pEm#>r?FwPP7!*5%F>`;J%g!ZM1u6x-sD zqB~CFW{V~^ZD_HI>ox<3R+=jBtN?(r)vzV~j_G1gFY&oHjR+{?!@2x|k+IJC8@#~x z4DeP>ZM|%RL!r+<8*#H-y2|pyqeP?P#?7I8pA@Ea;N*pX1A6AUm6b+FmGlHvkJrEd zBKBvD`*yb%%G~#zE{Cm$Mq)kno`u4S)czD#Zqz9*CGSs=2HvqEy_rr@G6Pz8WjL0A zs>KyZ(4%KJKGc>3@2G?mkUA@%;-iszU)ZxF#gSB&?i)$+ANGQRY_39I{XkRCC^|0ejASy?XpZ9EZFbHzfe-9<^qhNSspB_;h|0ftIB6gF|`g zAO3cuV&pmc!W!FYa~rqt&XS1B0(zUMg?>vAofSQV@~PJd;#?89(+%Ak_%}C|a|?3T zv-wTdIEqr4!izOJxVXzM}6(_Mjq!M&*cIHF`Nb}DcNW{-qJIrI}cVyK*_yE6^ z3ag_0t>yWCZ2Q3Go^SPYeA5CGFFBIrABQ&69V1l_>HTTzo3%AsEFDk1KAyR$#0a4$Uxsb<2{kGDit9cojwL@Wg zPBgEDrsYXo9cFtf1uE9Lz<9rIcgPde#x7*&!TVI{mjTzQPd3vIX^kZ{I?QmsZ>==V z?kuhx)76=Lut30lfWKCC5kIEyZ57*uIJP#wVE3%p76EHHnvvIi#x5TPw|%W&JHf~F zC!j54^@w-s9{T^Dz(5UlTIIoJIgOtLXYej&Rt>*tWwS5^-OPH=?)frWmS5}UhF+^2 z#XogQlj|^K?^i(ut!}Z5Fy>3EE3VDMQuZWEJOixV!dt|nkK!%t&&6%@73p2u8fn;d z%HKxk!&+y{?dY8@mOH~*%xXT?@GjZw*E4LIoz+Uu>Y1`OJ#oppZQ)Bf7iQ9ari-PO zoBk|mJlx&vHvpf`&w{#8T0&kWt@+dRJ@Vgj(bhig(#0s>1Rmj>yChb|?Iz)PUK)GUgXUVVzh+Z@~%> zfEBqapc~4c;kVuQBZc5IQohi1+#NC_1Hct=WcW9M8h{iOa?gRqyN3+cng(tCTj^YGE*;R57n_a6GK&3L(ssk}ZdWq1Ff9ek(FqTboLYxCa{)62!{ z^NiSwZnI%E@u6WYZ5bnVKju1OHfPeA@sK?sHPc@f^*?sUh5<3<{)aKn1SI4rvio8f zHu>CS-pf{i!)R(Pand^AT$Jz6cfqg%)V2$R?4RAxN@Be|Fg{B3YcSFrE^_!Z>-{Mk z)Vs{?Iem$&i7eW)kt_*0Sg_V6pNnc(4C(Hhwlri69&aX!|qvk zY#5o$gxP(CXN^0&B`ZJqM>Rqg3j(hBEzISNm<|&I+Ev!=u7GqCDI3Mlg)kCvI{=j; zZsDNph4nKphc|~9aTrWRu}owdEHg|ZO$F0Y)i}ZM`4lF?qBjj!GIs54EA{q+j*6&3 z^>lT6akBSA$Z%hSmHf2cqIk(lVenszYnw1|r&s`Kc%lE-oK>lcZ zk_yDcYP9TllOg7lYVI5DJ#kUnv}kHG{c&I zb_p`O@m4MIH!^uChy>n!eDmlXaYR)r`$L5=dm}!WI=}};zWesxWg+%904Rl3so$N| zbl>=JqJ-1mcSd6?y2%)>Q7fnOq;!O>-J|=Ml#dokM_Z~%+qNu0-<=9&{ifvOq+04(4A9k5=^!Jkh7m} z`X@fi!muQ0Vqr|o1dCX1=Cz%*#(QLFxOWx4#y8q}O?R#s-29>PyPdOn)2Rei z3n3g8@}tZM8$x#2AJk(b*bCVgSvz!}#_f-yX-ohCh=l&L@P7c2j1hCnj&oa^c#aH4 zP$lRYdNgXqs05`jTPqom+atxs;zFYDEOJS6;)>38OiOpF7cXnM<(Kb)=SISR1QD@7M5)Ti ztd3OOuda|^p82JDal@_9%w zCWzlLp)Zah76ZE5ydNoD_AN~Ew+K=(pSLRR9|5NPzLDs`LB^h6;K(W35sMREE?=^D z4z@p|d)-PqiR*LFUr_JccER@<$D~i|V?J~LN=15n;|>w6lrTk;$K9`+=}VC-3SDT8dL9liRxEsMhk$%-l|DhX;cGT3JB zUka&;M$lJ|-{^@e2)V7e(L#A9d{IzwS>r9F(na6L#djz+=jmQ|0jjrKXbqEudZgvp zSl4t?E>t4NHJQj*IZE-A_s*_5zH>$1OD>ouM(Hgo>nqRfQ!*OKEZK2W&VI(MbX|I# zt!jpd{pjkVKiQj3aY}P|(5IgLVC_qai?mC_ooiww^Tm9!=Gn&Z{94DSHv58?X}3+4 z*-dB5BoZW8Y0UzbEYtYr95HWuUft`ong6ZpS0d!Kh(UJRB|H)b7BR7yp*a zHkq_ErGTTpC8qyc>r`C$|4=&CRj;>R@agJ{x&2&xUX_HDN7t$je zFEAdF@FL&Ig|D>!pl56DGp~i@?7Wa&%nuwH(G}^x_)a6(;V5@&A~&o(YGty>I`)0i z^3JUQRwiYfuRqaXa!EwECMvtSRU-$2oP8lSOHzr^+25vgYLgqD&qsWu)f#|rec-K{ z=6}t_C_eZQ7*sy*{QD;M{;ZdQ&)W9n9P}<)) zg^+02-g2juth06(*>ov5$fX=(sXK|cIQWoMp>!dj_{S1|J z^})+fTkK-Nn7B36l}&P(Z_6g6dfgVy{BM$D^|x&1)G+dL-~4}2jsTyDfGM`h(PH!e zQaQ?%UeWFx4c18gx%Cskogn(>mt%WI9VgL1#EJ_GM4=Xi&qoyh|i#Apv@D<(NceUUi7`yZL(!GdBd;hoA~k1Qb!2eHPJ zoq&ZgUvOREErJ9;ZS7K%P;mBN5F$ji{A)2HK8Az>wG)%x8?n35l61_9Kh{3hY`oMo zYds>g+PYhSdf70OVl=pkm=3)M2-xBvA)k zE-5Ddg;B0!*P{0!u6aUR&q=~L;>P`Ne1~1&I(_E9RF01|=|MpP7GdW&M+_R0n;1Q7 z@Sb!=hYVy%dxuc5PQ4OnMRi?(!&3 zv!y291>!iGQ^fd^WJMqXtqyJDwJB>?_&z(_A$7{Hiuq>qA4!YozP@e4QanR+%VG4Zm?OG}aY}?5}r+v#LOuYV>{xymT4W^#>jGgG6R*I_)liESf zsVomHN!s0WH9MZRmO%?C=3Uf4(KOz3xqm@EmNeCgP}Dr-{L#c^l(h3`tSrU`rgsps z>(*T(`G-TyqDH%>*RQcTic6KcV+=e)3uY>Y6selp!kV9!@I&@v){089UDb?@9d-yW780HY+enUcBXBQ5c4k#Zevga6=E0 zAY7@=%e6#o_+yxLzj|}9{OF5H&U>8_%^AJZy3pR9BhYM*gx_U-9aq;)(r9NkhBgzk zkOzIIO56=7gl~LY_@o6vIqbGsdJ>!0^d#E28kkmU5e;cY{%<{XSg*%Qd)IP~Uw1zA zlA`|&DTWHOhSe#r2a1MCzV(O9h!c~TWE0fJiN|oN(p}r>P_x2k?DV@7{|%&d5``^| z&Op+jG>$$BN$?MGDV(I;yZWOr>)QX*+wlLjjM&mW)f!ls-QOW#HMvVKBUU8^{I|0q zzoMI4_1fpMNac+9ks?1p-KNoG{{t5y5vbj?LvA#-c(rZR=XVP8zl;qm;2uDs>4Du* zD_5pRzB>J5h{jI~{5K)#2|hs4uxo-=;2U-pGIYT&CMEF0h?k14#w z!6bjMCGnTP%0xpW!hK@yaPk-C?d?D1en+=q*S(IGV6jG7{2oC^L!R~bzPdOIyC1t( zBpl^cz%*7rB4^KAuM0~1f%luATc4X6A;wiH*D#03Ut7VDN$&;g3XZAFsLko7crmK6 z#>78Lu>z@LxT3*JHYjoLPz7`Q-_z-?9XD@SXmThSLdDVLv1 zL@PFw4wc^=d`)>fqofXHK08OVXY3)M zuuUS)ze}$A&*FF86S;(Ocay-#%%{ZCj+l)%$s9GSOFDa%!Q8A7_41#~VvqC=@FMtI-9Dlpcm$m-Vi8SRp?Z6~*p6l~p@nTwZ9t9QnK zwQ#FzljcT6JgU)XDO3BJ2Id)b641sApRdawKR)S6DuY)XsH)4kO;9(e*qTyA&&)$J zZuY_N7chCI29qBB0W)+1+}dzqR8_a4ED3cK4ncMaHCN-@F)6UPEU13SBdSy4-*Zam zV#oF)?*|e-&owJIhEl7J9ng~~l51jt71Jay>dk*a49o`m)y-`LY++NZfg%yTaLn$K z_r`J!L-3Q0is{UUxEm_<7$Mf^@D3>vj3l?S+?djk9_EtVf~Mv6 zqkU`!%bxJx{zZ}3myDob?pQDLS&i}SO)($H5w5DGcx(>_fyK4wD8o z+O&xpKVP&oz;?BZTp)*~J`F$5QS=AM9u5l{`1Xu(iMWG!WA^Ve5pnzrcf?p%4A?uA zmm%{&)M}GIRB8IV6r9wlTa+_1=8ZM3i@0yyL(XP)Y2YszAg)xQb?+^RGLA3&z3Cm_Z<;0Qw{3qZZjWLs-?c@cA$*S#v`DkppS1kGudAli*oI=aUr|kOhH7Ag8 zzT_A$a<5Ykz;vccJtw|o03_NcI6m+fr;Glu`QxAQvrdCleR9(a zY&HUYF6VGfVr`-8oc!nMGD;z&QCTVJcd987JLmlqfc^*>;GH%*f8~o(T5EpWskv4h zh3+LqqR(n&vjRwMrorLQgA8du$!_^hSpeMdF{4I7=>y^Shr4Dz-*bYqL;Yx(jN>lX zLb`{lYYv0=FxnoOR+j1yA3#P*-T^{v>=c|SBbUXxoNXaEcBb-B-NvwadE_e_Q~5q- z8M&H}#qu~j$9;n;T6;|F!5^h8aS5T2a^onW#s63pr!KAWh;KD10xD#qrl7ULqqTRModnntZ{4boI9H7}NABMGtRX}{4)CSBclFq8tLfZr>j5T< zXEwue>VC7XSv1a6WOHMidg1}#tFSyi*~@ff+uY0JXE_omd!x(N^NB;sz4Oc?~n zNgw)T7wzj2v9oRxvMLmG`C@-h8QgG_+LTUBHM#LZh#j?%3<`GUuBWCL;qLNmWh!HJ zsjnRQnP(=Ip4vaQiR)@%mK(PWLE`fbklvpv(g7pYBD!nlhw;Z;;SNjH^lP^ERbxD} zZKyvUx-&+uI}e1g^s~SVc(difOjYYCY`XA+=SEVJ9zSj>qvNbP!7pcXUW%e(zpFDu zUyjef*!(DbN4@{aEv)vyl!% z`lw~){*vA`>euwxi`-fZqLR4vDrF)ejXl3W>Nh|xzpCrIxmV{Hk$Bj75!DKI$g%?LZoh`>^|> zO**wEnAD$i`KVXxDM1C-^L^(RU+Zbl1dEq*e{}TSDXH9FG*(apC-t)y=v1Fx|82!! zn&4(Xm-9w~(;eHcjzr+We!q=v$#nw=gR9S`BBMl>`A$;l&@C1=%kgmR9Y6FunJGOa zB}%-vFPH`lr67CHXe~;VPjebwf*})sHUP^8iui{I35`&{(hfE1As6jO$DFdGYXA z)!wdApm-D{F2kdBq(NNIzgaqGRn3IJP2FIZz(f07F#2$#S2w_^5!^#!!FK z!s!~^he%|LiPH6}&_j?ePF9fNofW7i6d4ea*uP#OZHJ4zUc3>IOEeo z?7J!1&W3!m&W?9TznFSGJeTBJ-ziLdBu^thRdP3~3kP&cggjP~XjC#<7jNv|T8fae z(KZM=wRd16k?)YdvJ=U!ku#?0Km4OmgBo_?>#2fA1IUqYU%ijyc$>9zW%8o{WINew z)zhZst3w~3W5YZYyMrskPWspQW*8*2gxR&`+S>O$g{LOVP2Rcd|EA3JvZVa^_u}oe zCP$6TqZ*kf?mfx4j?H9sFY&u&+5Jq1Ot)#^a13-?Lt;$4aOZbf+lk^0rKeLb9>%9y z*gM$O0VH=47O!Rrx0b_(&46E(WQhdSRg)jLdnSq&FX1%!=QFeR9cvH=EE`hg(|`mV zHuoD*eO{((>Y=L-o`iiiQVJcXUN33SfG)^2&*ZmS*Y|y^7sptV9tEaGASA9C zlE#u)Kj0Oqha~k)xH1mLO4eT4&o%?{YqdSpPOvy%ys!XI?XvK{^$xaJ0rK2_A3Z8G zdV-OtBUi0S8Gn4CMO&C$Q-J)q6mI%dANYRETN!HT4oXu`1|8=r~=UQI2s$I6~aIa1CVk-~1 z);uoVSffmg#pNxptRE}VU)5nFdms!bM$o*JoG7=Y?x)Gea zPCUwPRD~&7Mo3@(?%S)ci+983uCy*Acsj(hzb`|5Uazy>_Kfc?#0GrihWhURts4`7 z@CdmNaS>;=v$Ef<(>{~*8d3r5@j$(@g+Cl4>QGJZCA2)ci(LJO#JbcKaVL zou1)_&n^_kLbV>Dszqk{ro`u#gyX-4qbhdknq1jSqETN;&nG2z-}?FG`J9XW^xa3C zW|Y%1>DCvcj!CbDmc&hg_A;;ecwUV2Uxyw)D2vjLVErom{8q zZCrP4&Pyxyz}@B)LjlW7KY!R6g<;oWie=5k$h@M@kn;CyFI)F~K?kTW`3o|XY^T)3 zu*s1t5**Ka`KkUeaI0D_tQd1bxHG3H4fJ`w_q5c5&LNB_WWFCMub*1Fbe~IR{zA$~ z%M~nfJiYwY9NwV?XVb2M_#t14gS)r?Io$jpnUgAnkmH&Ma%3$^$3jCYiW)+7o8$b=^hP;R zG<&g%Fm;b-D$y@5*;cK*ttp*Y!JLGs>VvY-|;!+^g<+?!ocZ@c}^ zM0)`fYdd^WXqpqx&bz-LTy+>T6^}xOSq$9vF1lI_0I5j?x}7sXs`^pc&+TU;i_ym< z7&y1Pb2}jU9mJ4r&~3?bi$(4jz*kbz z=mzFv5Bv{z76bTo&?(%6-jseeah8DEjOdL#Q0EiJ=e;mEGmhD=Xu01Uu%1Op!Qwi! z5ymjeR{n|X12ww#K|Up>8$er!>izSs&f}6*I8Zd9@ywuHVk6YuF?9u9z`{PT~1NNZ?PZB+P?%8VC7N3u^Y^ezQox*X+HwVyjDx< zu1f(Bc4Z%oZKkVBGR|qhapHA1J$GBb3|(SLOSUR4xgGS~VyM%elHr--f9nsn?6``n zz2ybONR02HLI0B*pec!DLRm7AP`&pSu|_*97#SG+d}65+xADwiwO9-DnI3U88;ZC? z#zZ8i!J`%@)O9O{HG)`lG}J{|Pg^>R1W03vQ)xA~J@#(>&4=|F^Io(ZbQd|1mRLN( zudVbeTF>kncCgJG##$B1Y0t^S1m|_9gY59Si=qb0zh3C+=y&@@bB%zypH$M+uF>zs zrxOAmx0?e;)!EbMXLmS9hBfhg_~IgfM<(lu82G(&*wgg0*pKp!-;C(P$m7uawOrS) z^zh#mle<-aL;bPYCqW?bBw!wt*GTb(dSl&D6{cF87youhul6yykA9r1~kM|o?cg4`M6X?6(ikRA~SH=?g4pH(JZk@6i2^6Xj=<3foxqPokXAP10!Lsaz!T8bgsM#|RX$ z`fOI=%I_B`{;GD{gMwK4v5s`jj=MMGZ^}!G8-V-C>TRDA=z!uqX13B@^@>Wbmp+nZ zQNo2vInUkeex?Zvv8c(xqjyZ3zP0tK(=9zWQe8704QM}>|C69?l`E3NIy)_(x`TDp(*LL%JpW>})X4}G=!QzSCJkWQ zN)zFuQG-+&{`T?jqipto5@P|1yqfg39!C1RpnU-OVl;z4Yp2~VkeUl){{6H(%u;1> zs$d(y0J_<7-Ct;tCns~sjgWxZ=KHN-MHo`xWNli%YNnJWD6*uld?3;)9xS7?9h&m`BV1&yR@R%LTb9XkFM(*62q zZqj$#8g@MAvfZ$jot@Mr7~1VlPFTol!7heag4ULXklz_`g@HjTShS1_B24E|;T)R3*7E75L4^i}*X2A942lUyQwXT+)5~?_GIaSyztA za^$M4tX!Ena6n~cWoc&aflB5U5x1h5xd)j$2bGn%x45^W;>?MtC-^5| zoZo$)bKj5iC;u=%e7@uTdcK}NEIcM*>T3QKQ)RZACK?L*?+lA&^NUT4Tyd}zuhl-F zGve!CuSK&x3&O-zX?XMf@{4j+miu$s4pL`W5ggXqgh)7?q@t8amka^@U~j7vB=&wc zl5={EzdzZt%k!NP^F^o+EY4tMW_~vq!8J~ekN&>M73)Gws4gYh(e~M{zLjKmuXr5; zvd#mv*GaVyl$3t{P?5Pspew1ijFgNoNk|oiee~E@0g|7Xe=v($10RgaNkhWhP$f$X z59()EL~jLMx&{Go9(nX5Z4l1!fg*ww@m0)j z0dgATHnKUV+BLCXRg6t4U{GuWL*%Okt;h^@{uGhuQU}eL)V+*xTfC5_{E3iDpy<(n z_Fo_8x>@&qhJszbhL?N-I0IrDo}Q1v~`StYX=sZJ1!Dp$yhL&5b3 zJaI%V9gdnaNWoPFOYvcmMPcB-xkM+m7f(5^!yZVnV!}p&*-O<}uJso>a|C!d1yPj&PiU2J$i2m0M8Mhy0w-}K* zd4}Y^{~|fJ`Dd3LaTlQEYH!E8ejB~2I#K-@+rID?R|U7jHQ7QcmF(nU%0d^#@iXLNfeEYZT9_oJ($4Ixb)}BMkxN{zE z=_35PMQ;sA)14Zbwhl)<_kspiUN(8^YiRNSr|1e{&W*da9i(FNw%t_ZgDW8FPl5l0 z5$2%Zm-cFY+p(-M;Nh`iM}?}ur=^Dzw}K)~=pRt~AEbgdRur3<`Hb#>BbD201UN<1 z1(5M~F*ASo(Dv=&@2m4v@4Sd^RHo5?00;qxzn2?=m`i?VC9+cfPH9-#uw5V#Nn`2o zzzgIVa=o(ws&@SWo)Pu4$AHVaqk8hkt{y-xQ9BFqY`XMe4vVw)kXJBMa7RM&;4{eA zjWs{Ptj``RPSXnL2ZXmj6XaNNZCiC~Zb^YmY#Y_x`tR_;5Y13tB&1OO60kE19fuun zDv%L(w?Sb~T#XTl7LQS@yzGiZvu8eA$Vs+wFp?KBC2(@3#dwGNfS>n!?N7hl>pa&E z-ZYK|#>m0niX337aa_{rY(wgLC2 zTk%Lj*L>>0t?z{Wp1=$G@P*8`GqCSgq5=Idu5;*#WABgzqd0xS*$MygVm3Gxn8SGZ9$dELyQ>O>HO?er}fRY``C zB@j^$U}AmZS4EjOndeL`{sSebF#SpZoC?qSt}-Xp^gF@ra#?t)E?EY&lKqqQwP`H0 znJ3fbUJo|Y++JHePE=u^eLUj4a~^x#BI4vf@iQ%Fnfr&Lwntk4(Sj;CClAc(BHZs+ zZ-MFc&wVM?f&=qCb0cXA=kke>KJCOp44utRqOZ1;?0(yu2uZi!< zAEw~oNW0e01RINP1CCku`D+BgY;taB*?Yr@v)h!6>R%$gp`7&2P~(LV;|o;+vTq9L zvrryE#hF6!fEZn0ck5DVv$$kUJSy!Ii%7J;?#BAJr(7#ec zu8d*BOX(}E%Jp-x%h4Rv`$4->;A~VkMQ;A}zQR`HLtmh>+v-yU89&BB%QRYeB+cqo zTSfU1hxo&(EYaN6lKJYts&~0mRWNahO`owLae;+`Uh4B=)Sb* zKhh{_7Hq3lwaym(f&33XpzZjpR{53t2SGIR%*6fwYd`=4jwW9;J~UV@xgKbl7 zP?BEOcgAs^TzNQTAm$NuJY5OJT)ul>T&83H^JbE`N?b=750RZrJg`L-WLrIPF%w7y zFFGfn*u#bzUpm?pb|WC{E%Vq($#anNvQIN&Q(sAZv+~5$AIv(ZSvD0qTc}+}NPNF4 zeNXi9VKbr5+sLHOFRvgA_o`^Fye#ddE#`3lnI9im#XzZ#X^sn8^a1#dyDS&i*@ipw ztksq}SCeEl;Pd5~Nm4;YB7oS;>Mif-*M>!PznqQhzV-H+>lfkN#}{W$49Ps|x;kv# zxH(L%dnw#=asmq_Vb4LJYQHlwr@=)J3bO6oHdQ;SK}Lo}jlVLoC}9n!*mav#qMRKA zsl5k9W@AaC`Qu6B61tPc(u?iIZ)p?1H`#*3u$m8ZVv-;LUA z83;sbFh3Q=6!{HB@rTnt;};fwc>SY`pv?6kWC@!J-zaR$z zuF0tEt-m9BZBIDWx?8QgtSx&92eHkzB2^1PtYX%4|2W@{Xvw;P$MVJbf*H=6U)}cnU5!LE1Q1)J zjP4++k}PzMLBEB9Y}fpvL|{+{M!<7a#D>54T{a~D?$8u-9+)DzViiz@uX1rxG9|p% z^j(Le@+mb$;VM%tgC^s^&3Sj5%=)6q#9T5(DLHd_}e{9J8t(ZIL>?aRa#c-^;4VPF1Yt0 zbGI^Nnwm0HX}Ruhd*m{o0HYch{;=l^QL5y|rvL2b;a%m@yj4IouaRWXYo7H9<2dmt zy>-=y*b8OujN0v7K1pn+L4vLOI|(0Dy8)%N>g~AUTWg|Ye%ww*jGCII zP#UL;4|ZcXC;*D{Iw&lgH*o^a7kO0^+yAe?2RZ*8rymM0_VsoQFD*RD5Y)?9sdcin zoY{)=PE3&0t;&>z&#jHEL2>GaAab$Fw|Sj-HLsc1h{bOV>GfDPqB;e`i2AwO2Q{<@ ztA5_t2--xf`Qn-0V#R8G&DU}W^-G2$t3jg*I-oZH&EN!*6fZ*af3go)N@B)Qb2u%9 zQzvuet{Y2=G6DTjdp2cPV_!?_Bro$mAarc@EClM zx1B$Jl&AB(f-4vsa;~_nX-E7B(YF>U>2d$M7@ALPGjKNroSlGV1ngevm|dH#V&^F$ z>-#EQAZ$2jug87ui<9u7B#7SaPC)G4Qd&!rbc?{4k&&QXG*KI`+{jM9zl8ef+of&3 zuY+LXwj*@|9%dMy*~YW6Xp4Vo2#c)`L*=-Yu>x7O8DA}DFzAu_b}S{P2tJ$cJ^byb z;!oLhW7JjXflt356rM30UUNejf=vM~dRKGx-QvF!aQ+fA@}=-|I}2sZl{pZ#udKS- z2ezfIN*Q_rmI3}D0hTXIB3B!YZ`_a*Q`w5>jHaLjadu$ZToA22IC^5&V#;gw<7&AG zu0hXOOXuVm4k9ovmtL(RUr8h4E*1T=S>{ZEQ)SM- z=JMjY>{w$O2Iu}1kN^IaJNAi>)9VDZmdqW{k5Z|sf2c&8R9f;Q6=tx^HWTy;|0Z37)lc2ak)cV;11p$zYOs>PpDS8fiO z6pr2AU@!1KF@(+cI!{x!eON1C0udLdvSUkt(_leQQLOG^$mmDk_mFbUgUc%J4JDQ< z7l^8a7^pNwx0}%i^+DJnx*F*aP#=cY$;+ZLx)}godgu)H8U?deHeLm*d(o;lht?}!)={%Z3 z4cyB9r?~lADg}NA#Fn6hDJbGJIg2_6_g^$Ttn;}2-U_3>Tk5hna@0*3Ex+H`gY_$M zHP^iy@Tm~Zy4;`eosJ4<%%X2z=PBm(%{&iWn{6{%*Y>R{61)&XwLbWh4=yS<1V7t! ze2;cwlEvhGq;#NE#O9u`w+5)$q(Q7oBFrNr1alJuCy~YrhR=v2feibaqk-ko1ZP<2 z7Mmh69)nJC@is=3zp^~sPFZ=`n-CO;D%$_JQm$pSWpWwD+Ti#j!j}H^S%U{F{e3Z>N5#xN>8BALq@1f=M zvMQNPj9Gz7^PoA~{M%w~F52{U@1}f8`Z$Z|?YV} zLFpF--~n;%ruD0~a!#;`#+~I9n>9Z#`k$1>AA;b6$?=ND1{w(@#|3xs3{&6l;M*O8 z79iugDV4tLC0bL6E$fw6y#W-!ZpZ-#=QroHq_uihwq1n4j(>N%oSgyCF={X1_S8d~3t-$|PO6to z?WsTB?N*=oBe(rocTps#>XwdUUjvCRRrBsX*9)r?NGqOpeyg!kQaEAnySf|scx9sD zR7trUo*GTHr7x7VYANyy*x9((N~eGMfLo-AP5-(v-xAbfD|se<;e_u~Gv2ds%HVRx zM^Re=+2M`JQiHXbHcY6?mO=@Q|LP=5O(`*rTRB-%OZ;XIxj*r4L*t9Sk)-4R1I{jz zJ>~r%kK?CE?fmJVcJuGy)}_5DHDrdPNYQ=MiMeujza*aD(Z9P>KlUq{JkIg?_OT`} zYvIG#mW(!#BV;G#G-=0S#Lp(Lzyz4LCD>>r+Zo60IS1`@5j*VHH_pwHO|kGbNEfCf z1fm$5Q`lF9<2A;FYARW355G~Z&zXN1Hv%{%KrKI zoAdMshpy)+z2NG0tqcL(qYpgByg@mE9rr(oV*Uqx0RUGLb4CNHx#Aww(16u!@sYR* zIp{)c!oa;Q3Ux2&8JZ6;U=|#ZkbwToK5#)74RMROzQyF9D}8c|f7y$M^~v!Oj&Ar3 zM;$$d&T~-v-ikFRi(2_z(4Rgd+ z&Ox=(A%~I8h|=N2V}r3z^@Htm ze=gs+sqv!<+hb}jCJOR<C(nSQUG0h%Y!>z4#20q_N_RZ1FSbXY3 zHglnK#c)0(j(lhj&Xyjh<|gC}B!|)yNbNW+NB`Bg0566IuEC*ll>xnyrP|muRki1X zE2Zd@cDfmg?>YRvl6O@G&3TxS?J4fojr_q=4W;_Y7N)z2q(w{P2q{Tefv44UKk=Ba z*jKFHfc!JX#*&g({HHt|L;@f+)jSnHH-*^3u`}mu4;Ahd+qX(?)Xdkmn%C`;?{<_% z^(iQluc2$5&+0=eX6|lFgH_=_xtTTR!2g068QZZ_m0Q-~&t$Vj_%A7ePtEop z^eH!*aNfY(*L47vK70c{Wn+HOlfTl>!D-aP0j}3oORbmKrG})t?t8AOi|TVe%{nbC zz{u%m-RHE4HBlJ3Pq?Vre_>QoCzXw3Jf434|Hd)u9p}?C)U9qRGk-cycw|rh2a;jw zz^H@O6BqV|yTS)f1+l`?m#M#fPIiV^7s@|PJ;U>^*Q~VVfod0T7Nc18DL9nlgA?6@ z&bd}$%coA_qgn=<6gLtc{t(?+$Y8I|Sr&?K=Crd>aowR&MF3rTc@@q7R#PlRUG0vL zu$n!QeVMc?^N2cEyLnURw&h&|@G5N0clVu+Dfo(I)Mj=Vf3-xzt!h` zKLNn*-PautYBv8q*Re3oYt=;2*l;jsy>Oqd^(;$b3$0XK(pt+wgjGMqom6;Ph>GNH z@Q_MvRWPBX4eZw$UhD#oRku4J3zYslFXea-Jj>}6oC|*~D0PgI*38z4)*#Yndgjjv zZU+|vnXdeZ#WN3g(kv_g;Y_S?Ul^(H0N<*f(xIGlpYh>Vkw zU$SlfcMfZw#?Y=5m76g&uu(@5K_pt>j=4Y-)KjOpphm~?j#rY~sP@FXx`+Nm-}fv}G4akDygLIj8Mn>QQy-+d)7YYc^tYONFYphypFby1 zj(X4Zcoth^r||wjUW|qR%W^~rm>WQ|ebSt=&}U1x=>ArgzXH$pkgIf)JHtbKafc*nIOW^Tj&wTw93H7W0NkC|i)0)HF64U8H2qu4)*! zVe*m8z=Z_pg`D62Pr3s(lcvwk)LYyHvzCp5H&@H(XeDieb91&u@Q}EomGtCrXH~so z?-xc#R*D6S8g($vi%_%~nY<@b0Xq0D<#}~(Qh(qur7_?&t-dFL_c}A?f!YxzQO$cQ zQm`}@FUDz!Q}D`AhgoRO}VhkI+K2ol+aU>3kqa zv=j54-gAE{Ld}3pzivv5Aw0ZxM}+(4hgD9!KEN%$PUfVHTF-i+6LzT1^+Ay4T+=P0 zck2FJ{!*RNH2a2nE_Az)P*&)iA?s&>0Fn1IB?9Bt33{&eq@pq}`~kL8NWA&eh1Q!w z5lU}nh!55D__4%x^M=^)i`oO%yKL7c%N)1W`yVMKg{bT=))`b!UIC(4qD>xo$@xNxX8@D8}x>WPt`!G1wZas6;|<(5plv=e$wdYJUamlbP<_im2BjxRvf zRE=mN0YQi=&Mk$SD`}h$Kr_o3rKQNEre%68Dzy4U$Oq3zJ1geQmz40Vtt*GiNyT#P zsxG#r18DH>*Ar}t=bv#QmAIr{xFyK7aV>MQc_&KI=M}~*C?I`Wbaaj8w&ssiUekJnFC#%_Eve={ zYM(g&^!JN=hUcyQD5C9iQJmm}ysDBp89n;^?KrO}tkfN88OzuWR)`NzByMlDRv-JS zGB|ADGMyOwnY#-8l+TqM_M&eg#V2UVx>|trSLBcD z%xc!J9XtW(vDw*`M?xK{zOa7+l-AY1!t%MD&M75I98|5yJZi8ND&2i|b)L+ta;K@! z3>}I7nA-jjiw4rYez-rEAJK)el)e(O=7lYGxoa6=VlF!;`FBMBrAg%f3r$k=Uucrb zP5|!Fnwny3D%5od35^ztRtnG`GA932rr7}Ts^a(|3ZAgoc&n3_O#vJo`l!j0h53OO znq0{06J`9G%=D&R`xP?>vL&0rGegq3l^a=4rpKGM)=KhefoA>2qle#@)7SRHz~qJ_ z3I8XG&FTbVHupi*615@=L2nzQmput6j~B-?WFEQS@W$AHAo>%G*oSk(w%WnY`W5_l z&n)8wZBYy_aNmlQyg7nYaVDY0blqJ5_!~11f5=c=27JirkWblw1hanBch6XOaGR~8 z1>#KUHeV6TU4%AlmT+Njh1n&C9DPlxDbQxbq#!!o%7C#rQ#$coKkc`@rdgqSOFGymN(`+`#e_6UDt9=(+ zR_55}(GhOx+lRVc4%baysuadn6a{|eP%3`KpOqnJ>)0?OmVru_p`PJmSL*@hiycGq zznGX0Nt<~A$otpUUbm;q@L_X$dK_l5-pU3@ly-W&?6U2f9IefK2J7?nR0{ViXuWt1 z6x|krBqFHzM2kZRG>nbQV_77R`_@8opbJ`VA*>5XW55kDg?;0-ljZ#??nex{l z-rMcW*Iu8$P0+9+mm!U3R~Ulk8+do*1i-L!`>rD_d(G;e*#MwFLN|!cL-!;{@cnVa zZHyL!Qk55Sn9PG9j-*yhdC34fBci9~H zXDY{jlxJT7G~Bj?e)IT?dQGydJ@i!gN4EBXCkyIF#{?h0DocK*&Q6wUokto9?xT}# z5YOqu+GbP>RbW_I0mG^DM$au?6?E@se4NnJ>JiMkPB(l}(c|83D_zC56GfjTow`Q3 z-K%5qgt=Ycp$hpFLO#+W#7|0=eBpKObSu#IVF_k!V3IuC23H_EK8m70_>`URcD}OA zHkOyHyPzDsCJMPPNtp37-_4$g1Kdl&6wV}Gcd8hNC@)O8OvTD~r&2F_P(e$&f*2$7p6fDf+^D2t+73%r4T5}uO zcw&Xq%?kS}_}YzOe6Fp3f{P6o)6-0#KLW{mqLQs3^^CnoYf^(J>?-bhV?M`dafxsp zC@w90Y;x2Wc~%u!bB|)h5mxYzZ&@P=D)oPPyb! zMRMLqNN<*Ro&T&diH2}+(W_vSPuv4P#e;Up$u&2mD;FFrnsk@?(s<3_=Ko;mCShac zE$RtD*y8YU=7FN}$wMXS=bb!4dH%_PF1J|KqIz8Y2~adSlWBjk=H4NI_uHd_dy=OM zfCTHJ!6BLuQG2wpDJu{w3*yBMDTM<@A%agd~r&G`Yzf_DPO zu^fKu-X5n>HezGSuJU$)max9-#a*K6Hjhee(@Pu@YF<}=8i~?E2(`cq4J%5KW@Mfz z9#jcbK3mb!P8Q}`J!mgmav=Yu0rCgvA)|xjG{XrdoG-n(yNsr#BP?%x%LXau>GU?c zU|X@#thd8+!oH(^))FtVrZzk@JM;gJ;VcUnSGnw0=&}yYW08T5w`AV+fS@D)JDE}o zcb_TS^Hb}*Rai%M7Kv*s?s%a@bOOg+aS=WZp0B9CY>84B2lBfp5;ovs!~nqhf|yHZ zyhf=$Scc`%{4?yb8@A7O<9)C*8B ztD4>M66Jsx5ow)p?dz)%)GCcw@tu6a6wx-Wf=|t6`;JG{{zjMf>21CL0jOfno?u~b zH;=u0^-s%PJ2qihd!?G$5!}(Db!= ztcUq8Lj;YsFfQdUvE7G*6u$~?MdDbdSEiF+)Ye_`MQ3HACLtKWXsZhmP8GsKi21ts z2nVhxJP%Tk;xiWOd`O9VQwY$!B#GCYtcRWL_Ir*AcgYK#HBY4=u3&0=&^>A%X<;-%zh@YJYuJ z#oM~E+r>i@N*8u;LZ)#eBKad&u!WArCN^dT7+EE z7g-b+xff@6xXPEWtm}Fnq80F*v&}0;yKXhdZzjl79-b(fH%T%34+_xm|P`?;w&868#=`N-^ zgSjua)B>*bg~2WFJNJbPpDf)ndI;W8gLiVJ_v+UCm9>@!C5;-+DhUV*3AhaJl^oD} zFjJyf`SZLoY6s^OoD2DYhj~y@Q_RMGb6MLkOjOFP*Rx%wgi%lWKYlftQve=(C!k|> zLXutmj+OH$G0Z24ssOS+GTP(++zAO`7mzBoe|S2eli?hRaygOEssgEs;Zt13+Y**j zoFR=Jv#Bus=>p*xK59{LXI!XZ>19_9JDxbgmbFN)p1mY93jqpD59#8+TChm*W4}Oa zoR4n}TBTnK{u2qqog62(3AX?Q<&QSDYtqOVSPi@;Zwi z(P=6%X=@IeuAAR}a|>J7-QZw{)Uc5erw(6FsebzK*o-W%%K~9 zUTT#h{wRYPe~EW|=l)p8w1$cT7Crzht8$rnIFlEMNOFdgiL#Mcy}v1}vse$sG%+N`mY^jIdQht__=DKA?#D znCd}XmQ91aA}8zx{$0VZ@Hx+R1qifkfr=2u(zPwP+pLy9=S{ifN&{BC@ z1VAE*GFmbw!jpC?km|PLQ`1#|&NgtAS)W$S&$p|`-u>}%d~_nFko=6l{BsHPBi~T6 z{UtN^vJ1HTANl0j&g*m+Tg}p-&Ub{*#7GGAf!eQ7YL5ofG^6pYInmbqxs`tbT0s=) zGGd^lr`30S+;6^{Kj>$+O4Ved)HTRNf1nKdEW~Ijv#?{^!_tC|Qu{;ZtMQ#;&>ri$ zj3m(dysY}S)T&F~pa75&XMOxYw!#zbqjv+lmtkxHWAWjg-;A?pV*GrLsh*1N(yD#- z+N|a!&Iz)iAk7*jd7Jg6^1t`gP5T~9id>_vv` zE&{hifS4gqsPX1)F~;l4bstwUoSoDlF*5D#phJYa~1eM8gIiv zL_jkC*ZCXj@Woa87;Q@tNqpE!(iNXeTBVCQ{ET{aA-vaFgvN2zXt)Dx2`c)iei6Dl zJ8bjAmlP3SQZ2#F6;=I+3qRI~FR9`Vl{ew+e;_Bm9Fg=RwmY1yUICKR*KU$$FmSGc z%3960=_-CjA$=1=MltPLY{mn|ZBIZ7tbE$!fV>6y>0E6{el`jqp@ui3Tc}1SdUMh z9lsC!WC+3=QL)xOm$l3B2k`!MqKnF@zpO^QPgwu@TlvA~59}az z{HkzZnSvhf(Mok9nP7IdoxS?y9zpQmD#7z2g}aWq+GpAuYdkZ0!nY=xDoA6_-_{^x zW$H;^ci9dnz^>u>SRpwT56B~PMuP6dB_rStw=j-VhXkhBI;D?5y@K&R+9;n#c$FNL zemQuhYgc1ss#D`Rqr(_sN#(ILaJsTMWay;C^ZpLCa2}wq?SXx$EocWr_7BKRcTTWW zrEtq;r&#9f;Q;%sU1)O>^$r_2BDs=_ zt$9@+csd#`1d<8=CHV_+u?@T>*p&CWzAGFE30UIQbImQTLMGi&bD1}lzb=UOlSlWq zRU<&~)sB^sYbDnf<*u{Udek_Uqc;jjrKVdIyCHfJe&l-;(T@O+mamrb08Mj7WzU%Y?U$ z)r)SCd;PEs?b*TPhwAv){jp>SPN+?BeNO3U=I+_#WSOF`=UvT|VyuCi<1Lu_^FzKXImt7X{oA|+f$GbmXxPW!{JDh5h$WFXDJ6VLtlzrwYvYcmgxY>-!1x+{X!E;k zS6W-^f!bXPf$=6S=f6fi4{wq!`uIR4uIl=Ai#=@p?$-;AI7>LLI9hSLxGD`ykc0Qq zzVMa;sY~s5Ek7FyKaWH0hzg%E>Q{-dEee^syMDeZ3mP~y*%{c!bNAN@=5!qo@CT}# z_`|b(s~q_@7l7O{qFy17?=87yOV5FR4Zy-Tzm^{ zIX?h&Xo;b}8n^kA{+iAOD`}!Iwk|c=-qeXpDM{y|b8RMDO{ui2Q19r{-+~W(W#4u+ z>Nkz#sD!U-rHf0IWNWY{Row06&x6@cqI><4+q8O?it^iZ_YUXXmyEEzpmwE>(xNR| zDv{|2(7SZh3&`Aj73R#?`Z2HW8?SKq=htaxHagf9@(?8*HC+C!Vxr(Qj6?UKDC8un zv^w~@x%(m|o-(vy^=+W4gO>5PDqR(M#d1G=3zri^dMp3LO8*ktnG+^<9=}KAne&l0 zu>n$t1zqqb`9R2YIhcDuoIgwrg3*#{dP9(3&9V?rv6-Q*b={A-zV#c!zQAcb;eX@1 zGqnekbkYk#b0|ozTFl??25&=bo}P4$(O4WtL7a4+F*uXYc`?myJl6sdhZy_#xiMt< zUn$oSuem5A11^K;V%@{UE26fqPymk6Y8K#doFL0H%h;XT&e4IgAlKg|!vY+JZ-YCG9DP&l`-DO_uvX@nfjSWQi442nj z1H$@B2*m7e&2wk9StkdtF zGyJ#9vp%yhCH^cP!~IIeE@XE#gZD8oV15!iSaZ_Q@-3(QqIL^8UbH}B%54>rb zM`R$Y&cE-ve{5SgD0mhHayyt6&;pqZuC{?eq0OjM)qCZhvPWhJt8F{+nCyXzTjiqi zQ2)bwj}Oy0tC*1-5E|SjAN8o3=#E>llRps+di)jj$ZhJQc0-M_dc`5&Z_F>=Ak`1> zcABnah0?CWK&?D(88M029v7wwa~E z%@0akKz!vRb~f9@U_NB?&N&vdccHhFK~=sb`&gbhkNVifn1a@}XJ_-8p_h5vR~83B z{dEUO${Hc?#X9V6CU>lI0{{t0Wq8VL+*1H+~wwQ~rdxBqqyw6rf8;VQHwL zmnoh-k65@XhrRuScR%09pjcPLQlze9lx7w#Y%LGadY%6gb5v{h515L@nD4`%46mRq z0 zbj%EFIt`@1ZxeMrLVvJi_qs;m1M!ilRJaJ{9X8|%_Ka8iJXFHgg0`Ew_HX&Ap7hE* zWM(>ZqzIX!f3TK2 z`$iY|gwr(3JR$`YOd(t%ZWM_E+!u)7BqVq6kQr+|3X+$rVomJY?XXe>!cUJrN5}}H(OIW(`aTMUlg*OTY>WxfdY6q?$^A)e1E_p*S-=cpz}_Fb|8}l5UclT zCc0Zsv(&utJQ?q;Pp#GrQ{sFEvN!~Evw*Q)If0r`*4PkjMMY9)fl!%l&soyR(aIr7 zG0`SwYQScRJ7wSbQnb3%R_|`;fC_n;2(=@!Wy|s2sv6SqxTXhPggNT*P|iF3ik7$H zKx29Vvv}{>Pb%n;H_RJip;dWO?sJT_+Vv@wpVf!lKn!fPRQ{m7Tz0FhF%~e61J**e zc&FqGW~z^11!VDgrqBq(rbVhLUjl%Gc%=>9%w(K92?769OP8C*VS^M+546Z z#g*kyg70&F-z-)m)M}DPg}hT)Qg;rjd{#9VwGXNkC;>$F-@OHc#P7QJT3t6H4(b?r zroz=XcESV7GkH&{cU91{8eH&#t;xV0)~cP;dc`pB^n-DmkGwUX5-^2hA~_e+8`XV; z2S7y=MNj72#Lxd|w4fgk_vsO$#*DgsfMP?$x3TVr=Q4f0y*?+-I+^?dX>TrRQ@PdA z2>HOOHSJ*ue((2F4$81BO%X^@<(2teA`v-FGq~;!xlmF8~8C@N=1%%Hr{lL@Zu}d7K{etTD-8Y^cT$!G( zRO*dY|MjlQ%VmymbPg{rP>x_9%Mb^T($UxPG2~8Gz8ECn9?B(~fD%rJ*2W{sm(adE zh=HX9<^f|Bt4j;Iu@uNFy{@p_cx?k}sbaLD{W?6$Y$X8oc~9EmXnG^i2vm+>ck@>s zWK@t4y-s8Gwd!umKLS;={w?RXU@Kh2ZsXA|GK2%dimo3B9RM!0`TLg{Tw>kUsPPeK zh_$aDq*g0{Jt$Z_5WDSJF|S*s`)^f$hbRjp=3fxN9Bh(-5@2>UiJ+Qw=mo2OI_tN3 zj(WJG&BOMPshi#FAqVTX^yQ*ZaY(v(n+{KB)Im!SBPS>i#X}jW(dPY_ljZXUVH4|q zMn@MT*jTWeq;J#`W;ro+d4!s?EWS@fT!ND);&qpDh~o{!pTzH~-&l0ikuQ!(-x?S( ze@|s68l+HlM-P^SRz7cQ?)Di4e2CtEKuF#tewaK%S?0C>qGl&V-Jb~|Z4Tjjf-6%& z2DFFXQ3DSBec4Ug5a0&eNj~c^Hmuv&t}IzmuEpEqdeqWp3*1@I5-Lm6D8H-`RPV8I zs9|e8XKs?JHe&CqfND?RPM`L~NUy$M@Mh z>yEuLKXnmi^4G6BDxBX$AJ6Be-Bk$9O3`Ktq#6w8_q1Q#z6R||J9vks=Ps4`vX=9j z%f1&(S2wm%n0D4&}zCWDJ^-=Mec2}E!e%cGAp2?fv>5cKo0DfQ72t3HY*~sl5xlmY^U3=#?$X+L0l{1+Bk+61Oigh? zN2-z{s68SeV%e7T#Z6~7Jn#u<%GA>((5BWr?viX4ruJ0Lds_v6$D)EJA-oFnX3lAFBtjY(tG`_KO>Wz!siRp7LH&8x`KF6(AyS6(=_sUk>W&=G zS=gE0L-V%p;utbXeoYXw^%|dc#{9I$mynW5UE%rSEPwcmqgFXDqq+=TaPpy;v1RvV z#bc9?{yeVgQ*NTa6g9pPbQ0c;0!mqWB=Ot;?YHng>)&2Z?cGvE%K31 z_vxg%R#O;G7i;MC;>(nvazG=E)O2=z)CfFH*4X>kgm_AO`(8} z=pUhUb!lJ-5e;PjL%ZwkMvr1lO~&ve?&j|e!4N!MkU-bdTC)&6Au}gyKZE8 zBPLuN6Zsxc`=o^xuJW<+;sg_7S=C~OxNlx`5!v*F8z$`~C!HJ;K4amvIt{+~sT{tS zBw9CPv94B~GgU=;vYIM>)8BjQwPC;WO-{RkM18G|+be@0k5g(Mi*`z{kfQ&%T@((qpqcEhGZoO#LRTJqvKGs>OKpG6paDIfi$%%xd zfsHMciaUZo!>qLRr0GbXab-DelO{xdAa|xJ_Q&eJ`^A#oza7M!+j#C8$#(tvhxxs+ zHSG73Z;+Kq7(N%JnrxmbrE7y*3O(B$!TFQ?YTgpa-R}vz*C>OExGuWc{QxG&D>0D& zQ$wCl8K;;P&*7{JxWDZFBwVm`%~3ek)NI_QwMaonUYMWZyb>HOU+4R3eM>fC= zKft~xo3y|A3bg#}S`cSEl?=QFVb^E&Nty7xJ8`wW*_z#m`ak6WPY$i&qZcb#Gkb28 z9hp}cH%#3A?&SERU>W@QTo*~NbLJ)eplaF^v3e6o?>TFL%E@d z@T15C@U4I4L^FZ-zOsg$Ka5VU;>%|0?Q<e7jh@*_ml1={ zKllIuvmGWR#!9iAQB(C~A={^yf`>L)R96V+P0xX9wS4Pg^I^&V=@BpnvT~79N)Wc{ zi?$u7=H<}uRiCE{J34)AEJ=I9-uH1gN0}~vYMZT5eaYCx@1)bdhi70`In2d};Sy%! zrOYrL|gs~C7qdqGT6CtvH# zEg$YI@sU<@`E0Qsx6EAYAFJtY|o92W~$F_!IA^fohvpNf!l{@28nZzVDhJ z%vG=*c;NPaTB7=OnrVg%y1>kWHt;e@_j-^>8f?_NdhC2Fdgi9ux~j2Za9inc4)#`n zvp?3Q&U6~>40=TqRe57rXge9$XT?3bsjwl>HoGy%4oC$4OtwY&(RIT9U$DL&kGs$e%OG(tuNY^IQiRY*1C!;#e3v!Fxu{$;nz-zt2%qS3?s zhohRLZ%xF0O5`@qAC${M_!mJ-z?Zw7!n2BL$-Jv9*1H2J(A}H9lLN9?KWsjDJDi)T zBA18^S{^3-tF%)85uGp6BkJ9lv&s(sb9!|K82WnQ7{96!=a@bu+WtH;Wxm>GvoK`? z$asZA?1hg~x<9OzzVHzqRrKJJ<(O&w@hP3mj;I!;n7c=sZXrnp>URjq@}~6rh;L#! z*JQ-heeQgH0bEireRJ8~dAf$r=xKn95GQddt;_{)=w{yB?}yw;%w4LqUFl3KbE9>a zRU3=iZ2-*Q4ai7o@vIH!6BZsEP5aXlPm4_HWEP==e9WTNF5_QFr(bHg-CtkQ_G|W0 zt$TBA-=(dub@09Q9+|Pd$nMeF%6m<(ivP;nbaXslzt>^Fu|afczc^yLIzq;-XW}cV zzg`qin<^EdI!6a@#g;oin88=Mjyd6CwD5>JbW#m2yH?||PW}1M+)lhemz=R=4k!JA z!OF&LQsJ=YitDZPsZv`VAx%Q;1vU+cvI&#s_Th8f0F`+`7w|nRvXKbx;*NTd& z<1hjHZwdd6rt|(ws(=4@W@X*pYG$RmsI2VHl+4_NrdF0_%Z-D|6gN2$$jnhHX3H&^ zmF70XiQvXc#R-av8%#u83_;=R=ZEhD?jFa$ju!FxccdybbDvcbrqxR6s?L?-bDE; zcN$VgrG?wrfU>P72%{U#!Mp7>3Eb#!XT+-r=pqbzbdu*!VXi^r@U{~wK^ z;JMjeyMu=7bayxPWp32+(s?n<>dzLcBgT?5cWAf_Ro95yTu3t*g^Jth!QJ|l_bGt- znw1)J`vjqQ5g5{ogAqr!_fiMdND$PTt6D-Bgt77eWQLS%3^{sZxo<`$Kp5)sp>am7 zz8@zjvj5HapAEueA&cF+O=!3{x1%m_>hcUd+ZZYEp54lh3|u>3sfH16Eyr_?C=sVI zA74SQHAWQ)uO|@0E0zxpNBzjysky}Wn*PKHSqMgYpOrmvkXgVf`KU32ZZk?&|I%s4CxRX3e^JF=|J>(PO(At!RqSskPI?L-IH*GpU+yA( zKG7Mrm8rjAAp7P4Wk|A1(raN2w7_}g`R5}n1B$G$&g1dYFQ`v_rYF_IB@5%+lD6yN`B0UdK%(k#|JboNGsl9Ocrc( z#`?Ks6Bg+yVPv^#v%L>=#1mYaVcV+KZ8_6pPItS@4(nh2^djTUdD_LqUl)0&p4^A9 z&+9+>SNlh_KT+35TYXG9{pcmtVwRjY>%bFd>mS}H!EY>f4aP_g2r5bhS<0K28jWtG zeVp{(XzjnYnEcO^Y;El$_mcGz&wM%=k;}l5;1jSV_Cu2IztwqwFD48eDwh{QV%zh= zP&`_FcVxmGZTg0sTT9~#4GHJP$O+yR6gG>2uBe7_91=U;7$Ql4qRPz0oU~ED>@hR&aQn zqnbmwq2SjgjcT0g&4jlb`ze4ZM-o%7o95Maret0nPf@mo({sHJ}q-Yw&f9x7QC`Sf~1Der^(i2w4eHMX>QFeF`zZFI0{R@7f*%okF z3PIQeaMBDL8Y%UHRaBAme)cR%9r&mXjAp$w0qTR9PbMIF$BDeKdO{sff($`E?Jt~OSZ5Jy1BGV({z;ewYa=m zdUPu~l)aG5ZIqh`P{eHfbZwRVZ$e`R?%U|q#(NfRAV$@qtbnoOTkD^42+t0MwM|Cw z!ba6604>PE>~#*TAs;i)M*d|tiWJp_a&IlFao>l({2bLZyMoELwndI9kr5*`$>>S;ZWMB#F7cXY}m~e z*H$qN-|A>!i9|^FHuH8g9Tf8IELX)J>UV{Q0d^(g=OHLp}`v*Q1nc_>X-Vm?0{ zk-N2SXX0K=yaHL~^X?&`vRTa2JsbKdl~t!o>?5>XuTn-B(9Px<{vbs5DEovLtvAPP z2PXpm5-aU+c-Poz506tMrLxZwcwW1dHK_Ja`4ge$o{dkNv0f;P8SPu_LOX468xdjX1sB*$!Cl8B% z*^pVok2F;8B&>cYpGTBL7F%F;iD#uyV{CF@>QTPM0ij@O3Uou8jC?Wi?|77 z3)_V`^3zteL64Z90tb$YWkJ6>9gqmS_>|%{+>Y5<0V_{aDcD3O? zSdi3ieg>{b4?QbcJ$;j9=hPT@ATs-u+hUe)P^FQ|mJcXz1dEk5)t6QZa6uf| z%K0g0aaOLQ`9HPJ#=xn%(ACLL=56Ed;}BovC2&wdZ7Yu(KKA|lwoT>Oc9e#spo4q^ zYpOZ7aJI4GY!K*1XBtXH2OYI94cNV^v?5kv6H2Ae)_swgXZ&4|P3qiwjURu9icc6S z*e}sOWphB$YN&R@A02gsEL@(S^l#W)eccA9Rjq~m^;{^Iyqxu+vL7}D1q=M_;aiX8V1 zAweuG?(iJoN53RQ&Si~v$h7_X&nCDH?jE)8ZnyK5z~#pv@FRXMX}i~wf-8%5>Z~+* zzQgUVM7mfgX0l&pDJs)K=5qd7a#BaGA`tH}K=F!y0+6zzF^jv>&%{5MJ9o)XJTE5- zbG<6+2Xa$B4RBkQ>^T-6p4q_`ySGrw9`Gq3q7?C$ggPc?hKOo9NlZj-F#F3bhGBzK zeTGVrxIhRt*?Y4({tl>u?A$} zBs)wExJ4w4afa~UrF+#JepT9VZZ>k8yHb=Xyrw-9|FNSv=1f>inETe(tAnq>ul&qn z40OPC!)ShVg6Yb62Z@RNHxED2*P0ph+xYi!)*fb649S`NcgUXoqNd+deG=tAwzj@C ziN?dIR`JB}Y@|)2Jjv{;_E`6Pw2C>LZSx|25^hqhKSJnJ^L5{v4_oFQmD~c1kTv{!284 zvpjL)!tohO|)whKOra; z1uYXcO4Baf{XzSZ+`%l^kB!T5Ujm6@*frbPEvn4)wVRmZ29)6`v}diB1`w#A?MUjq zeMb_zJOJLmY;m`B7dCMuI&SI7f;&Lxw zhX*zQB^<4Px6u=ZAK>krw3>`awCl&+B*F4mt?_!i_spybrc#!ma*b zgD$QfL%>AiRlbK8Xq>OJ}f~&aBG* zs~if%Q_I|_ev~p?p)GEOozDkN*hkD+5|k#r37b)*7z+_%Xh^I4r?%Ne;mMmmaEY+T zQ86@B@wIWFt3ajxVrEvru$XGfTfQ)T_7PD{X?Z@v<$m)3yGZ~(pos}Bb#`B~P~yn? z3SX+!j9YADFnKRZrhe1xN7Y=epk@pMMV_cS@#b|=?D(IprBouIWT%f4$qIlN%r%CO zEj4a?r;2R-8LKg;DCJAoZKs-9(ef5PtA@w9q=f&s5Ta6#C<{?7r%6I~MOmoV(B?50 zpEZt;D~?_=Es(4FLhrTa;7nPBlr6JW7fzG-$kJl9oZPzlaA1#};%1k8;G9YHH<5Sy zLge&COj}LmudRj&5A+@brUe3jtU|-rG1cVF@)S3kf`F9n>(yf zS$hcFLUh;Eywhg&tMx+!!cu}6`To{xNB+%|TLIc0gpDxNy%mwqnbD2pgY*M{$e_lq z6uYh338i?aK0|`aHUm?GAruSJmNpI05w`1%ua}L11dSi-i{(Fp<#K9>1^9&02~nTb z`sN4mCt-|Uirnh@ZH<$7%70ttxbpJJ6+_cUXFd71_iTRKg(T&!?m%9VB%sPrGNjkU z2`q0ahW{--fl_nHmnAzfUF~+fxW%R0^IfD%naGd#NEbEPs8U$m%S=AIWQ79Y-d3B+p8Pj|~TGosuOkgpc9y zChGGVJX23-)Ew9ewjOrON9IwsIK_ySO!%)=SC?)gvduN}icpVCDa;VVdK$TPE#>{5 zXAz4578buS`os`wMKuX3WQgPWZ)*+?Fq%IwhoY)a+HZuu>r=08&+cAJV$=)Lrk^WQ zh(mR(^xJ$xzDC(&HT=%C44Vy057!&s@u-Tw|NPdfa$|f5+ugR|14h*M+t`yuzV1nC zbbTp(&f7H34z5;#&+ab0wnxceic^DMk{h$N^6}M2!T(hG(KKNeW#xBaJ^BYF1F-T# z_-{ECaqY^k<(>u9%y(fXwrKf3@KUV#T=+}Vw^dt@n@eolOkhu^;WwS5>h_08M{UT2 z+|!s+UCeo2hp67D)lEU-lWy3Q?rU?-_uI5wtuB>I=Lt5;4^ZH`=rhEIbFFCH9X8z|Y1`)rj{Gxd}l>LSzv{z5eCs{yE zy#l>nJRr#Jx!mCP?N7k|6y+b+FpheBnNentv#I(Apr8}6^Nb;|s9#F5bzHa^*> zJknEc;-%BxmRq`Rh=Bg)X6R9?Si^+SsFHv&hSt|ItBO-It5NRVg;R|Vi^c2OFMBSD zTjs$@i=$B=tehfk^(lA{P(o*^$*TvOoqBD4>2k&jKuQ()c3rC(H?m{KT^6t)e24oovz}b!IOBT@Gnt4t`@qHZVt`e2pOkLte zSGyBjBRAYwa&mq%DOFCF{F<|nmg#hEWv^LlfPR8e=@Dl#=h7WTAl(P#el^=?kNAv~ z7$R1>0f7ETb8#Vx7N*-(JJ!UX?c^qtQc$mBqRcJHQTy|68-Irnp#*L54nD8VI6D!U zdWO?y)*W{b^N&e&B*bU;LCX$NfMBk-+l!P9GvwecVO`bef-B0c!^Ql@&dyZxyp+ja zfc&3tg^R752#kH>d~NDG*zAVZM?Q!%@}$(|kCaWYbWx%%fAjDalA|{yCv#v1BHM65 z&ka!qGY&130q_zGkPaO}5-b}2v3^*Jx4Sy0zS=VQ;qBSL?t~hhOGiit=fDGn%vTDGx`DSM5kQT(~bP@l)T){H>9r zQV}Zkk<_;H>_v(HUd~=k_=stbHUVs=8uDKy9E&sY@4)WRSJP~2y405QLjROi^jeo5 zGYm2GlB9aX_FzLFD%BcooM5cZEZJw9T#k^@fAz|1=~6mW;sb0s4VULX^dMZ7J?w-^ zD8*STN0%6myrR}{v1a#N1|Kd^EM6AHx@7reNP_HF`WS7-Pu;=~oAMiFX;c*t0C7mo zK|GqToQ62z#Xbo=G#IHD7Y>X4He%1q7kuRVsle(j^H$}*mgxq5B2N~Or_AQZ)^uG> zI@(g!UF^ojpy)v<`aN}IU81iODPr}5MLe#*fP0#ISNChm;3Do~ z$F;7v-AvWeud`p!Ep8DdLG&(tqqK_U?W{55rw$}A!tkY6+MG5C=#yOoN^}4)Qz`w(73> zbBB5rxP%e8ZMe1lydoAg+#S8q;lw94eYG8mbtTUFvZ}b&mO__LjKQ^|M$2#pWFRE8 zA;O$){J4Qrr7qk@J4C=0^9!4YP0Bb1EB5}SBlq|RorB>7yDS&%H?qS)Lfx#?Jg@S^ zqUJ%O+1xuV@cB^xr}FX42F0WveN0HLc<{ku9iz*`zpZEUd*0LgvKKLHs)Uyu({qYx zM^9Kmd`?B}Yb)H>gd~pIuRU?A;h1DnlzT7>z@WVj8lQ!(s84IrIc-=-!2{mCJJ;tlNx>e_;?pwr%4Oxai}UTu(t}+X365yCGhP z1v$5lG-P~8$I&$7-B=s?t!({M*znuv*v2B4*BHjdZs(Q`>0!S6-nW>mdv*0KANleh zX?U66!H#sg{#K}XQtf%1!c1~asLYv}@x_8#>*M$iUI_Qwyn`5_HwgBb+oU(@6E&#x zti=tYU%qiQS>mmxPlj8%=c`3WSa`l1@hhOZo#q0;H;pdwTPmwDNh4q2b>lKK`Dn^UMb|M|!E3TlUQ(8owqC~kOJc)Q}gdD{*N#n;JXz0LB!cf*OFi?#4Io|o@`#G=k0%rA8 zs|pKNYvV)-$PFV|#v$WxjcPtdL}K;uTZ+l^LyXt);Vv{MvjxAF7VCu6CTVHKr`MC? z$EB{ybhRCedvo!kr<(KC6}jCHVzLj)0U)~#b`(CGI&m;&cuc7U+El6fy*bOl_`smv z%IHI3R>#2s_H%Elr6I_m8 z{ca7WRqg>DWi{t$K(wq%t0rM(kTdq=O;UzemJfIAw|&GHslrGB?Ty!C zX60s+TvOt^+7UN5ImV%mhyX_BG`CW_dRE)1`&X`?MtYh-(rb+c@crDvnwRa;4j`q2 zO>L`!wWy0e8W&&x_nD>OH7lQ?g1zAOdak1>SGmj0K%3G|vWx6GlK`lpntU6O;6k-!9hoXh_?2$Z*$Oc2}uzpV33eV*3HIj{D)X+v$VQqp^3~+bXV`8y)rp z*tO4gI<5G6Ya1-QN=a_PKq)^g9lUD@yj}!UIkDT!JJAewA9-1|*YY$vvReT%CvP=> zz}L!mjwksM=`8`9Kas_Uo8^C!kk^vkwu7yPn^T@xP`ssvzY|Vptl<(O#s7ewBsu&& zT|F!1Le!m((ckd2{QxC!4RXy7yU`^ifka2h_l$^i1&h#rV@e9FpIMY;T%rY-bRqUx zEf?_m4BD^KlvJv>ozw=4u~OaF5|1to6&UEDMRm5TJFo%l+vOuLmn%_C)ZA;Es#(>S zoZEItvhVAyCGH`n#@xBJ{#d8I4!C-bJmz7Gntffswe#WY26F#MIs2S(+Pi&XI~lHd z04~J#h{6y_uS^HOKS3M`q}wAdGAFkqW>EQ#D~||RY4EezSWrD0#(n)^+FIuCviklc zNYtw!QTDsKzVewz(iU^RP16(6-7h{G{0cgJLSnt{Qldn^SKjm8ymu#Z_YD(zcSLvz z?-Y0G%M`)tH8?%8a_ck%htCk;NEViC%;R6oAc}9 zCe|#bU$(g;(PgCJ*+ABAQBgbWGmpx9JUNMM!%=aeCH%s#JrdrNMgU1b`Ld}YbSJso z>}ZOV@$o0x<*V^-#?1rFYhr!-(4v{f)w%@yT1xL+tS24l4Zo zV6{%tbP$@?US}5*u{5swS6aulDHSL~pHdRU@edeM9GNk?cC9!tl+f~U=8K`=oFQ>R zG2K}ZESoAkEEurKbtvd5OjXTpIBd1N|NB0OAOj+E&6cWakARvD7)u5&3R`(quS-|S zqN3zYB~!!TbJimMxVopKR41b8tUmQH9Bh0qpzVQLk3G2UKdDX!`Uexb0qH=Tw34Kn z%f6pCLL_ldd@Esoc2^YSvn&|(sgwEPhDI0uJzX>Gr)L|iS1|at`UZ54oQ*|HUWtbe zrmve;lRxiaTq{{Lno=!D?`;oyWgEJA;z#JzLkr7|${z;Qw&r();T*%j$~fq#fzTHM ztT-U}nrQkix>XQu1`fLA?N#F2wNGcHFi}*PpZ(mkRAbfNWKs^v3>}ZebrqOF_c;fj zCpF$Ay&lleUAJ2}={BGGL^TGvvVhf-%ZIN%#asw35kT(yx>}uu-n35!QdJ9-$op>B z0ZR_S7^Obzrp9IO;%Dv?*Hq=__=8f?&5a=?!g3K+#VTkg&Dpct)_jSG_tclN?UCl@j~}s@fphLJ~J`%xKa^9w*HgQ-Wfhp;y0H!rJ4!bRek#>T3_X zU$@(OCwLi6SNABrle=T~CZv-^T^ilM+BR{z4au(^csH;5F@7!SuI?LpHQZxsUhEbB zeFAG-FH66o_Bn9mBleW`_Ay_05_(HDX$8y?m`}L8HpKAyIY$81Q%fH}*vOu4jn^}V38qJZm4xvk21uj*R zRk9HJTkTbHk7kMYckDwG!#2zAqCQpfPbbJj&NZ3i`rSgs%~vPk-*5a2R|)#1Qi#{@ zZoV>zyT_C6tj8j!oQm%)*e72B^FIb-Wn~#}Ao~&(D}4P=0o(mF&s)&j8sTA7@<>iK ze93J3q08pwp)mh(pB2&-Z0kGQ(VmB5sZ|}GsCz#sNZMNZBz&7s$-FX6YG%v}iWL)gcUu z9ry7Rh0BvPAuC@h{s+rtSfM5==o3F>tTBw|&$U#Y-Ze61{aRwxt!}mdCNXYHol6OA zGqJ6%1AJ1q5}ffW)$e*0i(R!H(48BkCc5M~T5OhVT8GfVX98G%_ziiZV_3v$6Y+8#hJA|Ao za4wq3uE)TZ_JcUbeG^Wuwmbs2te^+jFr2TOQHOfIp?fztxW9a}@OGEJq$ImP=rf55 zQJp>$kYS&k0VssOt+Q+^i#%;M1@JlBe$YXSczbv=zUz77BZYTOdHZ@i7}w$y3v0?6 zM|5boaT=l#bkQ_!!X(gxLBhto^K*ImW``=aG&B_2fMCb)goNTNeSPWtm9_ciMlMw= zZ8RodkG06H3ypgAyf#0S!%<<;lbPlgKdYwTHMFPYmsvj{tA?5nIXy~a)d%K$k)_jck$H^~0mV6{@SQ5Pa@+4UvAjBL zqOmV@BV=NJttYD-OYx`qSZyk*uatzU?BuWy`sIA^pY~Zy*``j+s>{G zQ{BJr34U!A25}X$JXDUahCf(RuG-H3F_Z#I+;#)X*~BN?Z*f5X3Iu(T3-+t(h#kAc zJowH6bT4+?DbD2a#H)yuC#cnJ9mO6seVP+pS-KwD^_Jjs_$CO=tM_?kGk5Fk`rD9G z=q|TmQoE@0T9?y{3Ed;i`lfzxdaHiy?B|dWtMjv0ON^Nj4TX9?pQ16=nF%iOaXwk_ zqDnosr}psb%IAge*?sxJMKZd@sgBZNK74O{yTuE5S)J~aV;^zW4x6Uuq!RbG`FC7B zzQ-kLGWLczd^}c~)sf8paeEMrI&bmv&CE;jZ|%S}t`uuZ6Z3N`9`kc1UdU>WkrQ4! zE?X3CXN$Uq#>J$ts~Mr?KjqXdd@*L>0L6-U7M)YfI_yKMZxAR(d{0pY7pLS0N_x&%y|=pKG`MwfcUXkQ6b!bKcNa zaAoaV_~=9BhH~zv~XEeJKybWgr*ztbXZX7Spq=AyYjr%&F@jv+Bog4g;cE@Ii%q z-(~p>QiCETB@*pu5_%-QFQO}`EWEWW)nIA&9bOT-Y=Bdt&Iq#GZPn3Y0$Y_BCwkgx zBEEvT_b?#OesA|4PFsZ6i9Le)@nVn~g36ZRNojqYZd+|$S;MD*;$7U41K?1A7j)z;lI? z^U*(50mL&pviQyPf$FxbN_z7=;uoYnib#sMx@_zQ738O3sV-GLE-JnF5A`o|IU@$l zFjx0p$8}?SE%18dlhVnVLaAfWR}pi%HMze!)E{q6-mw`0@p9{8|E&Gg1^PT;P4<{v zTwSwbc@;gjplegl)zFKqA%jZOF$C^o|CKf;WgofbZHn7VH1qz1;IY)8itjIdPLUu_ z7g}H5!bWD>4yyYV$gTyJ>DKmJ1g-LV759#mR?R+53h^mq{&u_Ybk|SKLCNqE9Qi&h z-ux&CceUgG#AUPqmOQPILT|TBcN2Q6uhX4Ac%kK85)C@u0O?1np0`V3J?v~&nAh}<)r)5YNurHV(b~Aw zIf}{FZF=SRoa${+0pge-*&Y}sDUbV|=RZH`sx02%B7VPQ(Z+eyx<+eOgv-$fntT#w z!f!N1mO52{$T7n6!ri=I)LaDV{%;LaQJ3rwL?ScVIES^x9-i8RO>b z6?kq-&`H9mMqFjHrrVs14*JU3?OML!AX|6s95r`^d>aF`*S0o^&I{%HV5}n-oo7R3 zdm{pGDgD7h`_O{O{W~p3FUVP_kqWOA9=4)RI}`vm`W3bmoJ=)4emgQ{HssTkBhb2W zp(W=-Z%6?{S3|0pCl!Uqt+p@sV>hb9L&v7eUR6t`ED`gYlI~;_s^fiHm-|PtI@6vB zRac&qDlzBW&x$xg!Y#{NSU3_hUyl=?cScP_JIY}tx(w4SgPV#3&o`wjp%J?MHcua^ zLU#vnA4WW_0T8i2XgOIb zyoUXAW`?#u&txSjeg(%gZ93%79Fv}cvhq_b`ePFm6JoaDjx&>w#u8#;Qbt8NVblVv zt$`C#@tUkfJ=grYz2GE_24(6JMN!xkb5U)xm*{Lr^OdT7PKez29Q9Itf2HQjpB5%< zyEl}V$Y4Kv;L>-JnS0QFd&0rIccCRw=i*~r7|$;d@uzb|lNv>?LGo_GRPFF$TYYzm z60^iZrU#N;_czg85!KbLHyEnw*E9Yp9@cKE!zXi(2EUCLUP8@b)jo~uKZ+s2U|Ldl zZu9l56cZkxH&vlxyRbrqd|@hZy;kuvy}+NGm~C;KZ1Vi~uL%{OmYWuTCrt#Y)>oMmbl~O}C!w(0<0}<^ev@M>TWi!Ur%b?PZWj z6ZM&uLZ6d|u^C~<9y(Q2yG3}s!%q%4O!s@Kd@|8jSK`{T})})`ja};6aY%V6NP^ejyvTCg~ z0!_z-AK4JXo*COgZVaA*v!-H%D|gj=XZJ`)C=sPwwkO*cT;!?AT5v~kbByHHpXvbo zDyLdF{l{^peZ0H|4&du0-{cGaoK;Cf0(Dh%PtyY++%dw_bJn62+!fo!_Q-UjP zyibTAxrO7mMT{OoT0EPfd3;~HM_KMUdT^#qoLh*Kz)$i9m+O7Q8jVh^%h$>FJm^_yR7Il;K1OS-*OoDFRAD#Fj@k~t zdQjTQm={Tm%UrbTAX*raGE47;_7tNNPQH)9TutUg4oL?FKN(`&PwVW9Otn72{*tH^ z{6ddcNbjX*&VJ1iHtE;>Q^Qt%C#Cf_gLgFCkUVu7eTWBvby;IlbgfG6UHSFcEDzWF z5%NpL_j#=g$VWyPUx)oJ>sbpFxX!8;X6_?bSRQ9O!Ipn3Lb@}cT^m>%09BIusZfh>Wb>G6oNF;lxT0H4tYJ!`v7()$P)QOR!-f~ne zAl}HuJ=~BeZkL;-dqzF0m;g7d1~>5LGq{a46X3slmwOhLR_eH-Ms|&@ETB4`2fClE z2qcVgQ|kR!Q!y$XDP1!ntsmd@3{rzO8N*YiW(({;93%;wXz%7{503nfV4c@_!?2-3 zQFA}mp}@k*#XtWO-Kf+oVY6!diPrJOhyi5#upgrQj1=eJ>S4GrLA4Hb&sRO|q|I|A zOZ&}6SE9qHA4Dh5?D%@PHmbCpnsm&H&l)JmOh|B^{`8n{(_C1fk8(`^6MmG~q917M zRGgf@Fl3(O*3p$1*|zy7-B|UI94N&raJwFNk*MUF=IU;*k0Oc=g-K%35o)&g!BE$# zRMRMLucSKjGdk-|fBJ*C>5)Pc$c|NMy8-CjIfG~aS|rULeR~htBdoC=3@7|#tIkOQ zL%J9npFp)X1Jf>yLYr4<$rgYar9(53&+B}^RO90$ryt>=MHKo0*pjnIulm)6+(MzGdaR_?^>CZ zNx0^<#q3cin-=M8F*Gs`4Im(@a?EiQ3qc`DDaL7xc(}}U)S1XSL1TD6nCUwPnnjI; zR?lc)@BbJFbp~y9$RH|aS)&tBQ;gcrG`B?F;^ivtYsFEhA*X+enI-@!f>g6Nj&^`E zVlbIs^m!ngH(k;geWAM+pwSq(Ju?egfzILsNf0oCru72bZ@=zPwW({bU9uMjABQ{) z)9F9R{?DOYXGc1{pyh?Ve!A7|o@6thU{NoSQU+LSwtUkHpNu+cEG4tG&$>H}WH8GU z)su8pyHhtEG_8ieG|=xTFr}+((^}`{{VI6Hb((D7i(+azP#JY$5WN^oOERLl?b-*D(d-yzX{2BPa5=Y4F%>x zhT-bknw7WoBwlv3{HL;3ig;b@!QwIBY3MFhYZl zjrvNPctT_#Xn9ORF7OB8Wpp(UtoCQ#YUadlmb!vbFGFxNywach>}S z0Wd=Ws)lI9MZldE1Jgp%U9PfY!=Bb^>?-hE|Dz~{QT(-iZr9{*nX)E52p4_C&%S7{j zHJ7fS?zZZ4o~pb2&;=Wa&&MB5n%?o25M29k{l+6%UndI0g>^DF5Rf6~kWa@R7V1Re z6dfh!iC;#AlDd>F=RvjNiPFfiE@I_kzU9U3-T-CqmU0fnE%3l1DI{{MN5iyfGf!u$ z*%fAN5})t;+%xscY0S#f?sIADSN$#v+xuK*?<9+WGW$77PsQFbwi$C#0s8eu+7F&0(<&X8CCHOyh(l8=#v>)Mtr~q zC3jZ&O+~u%^Ve;WTV)d6@8yE-gX)HkQaTx$t$ZYTN@O=WKFZ?UmzEn#N>-&sxZ=6v z+>TPYhbYzLj;?Em21BM=HbTP#du6}d;(MbVM2GCb3CjfNd_Xt1`aKb3K;Bbj@Y8H~ zB0$Qorg6E&hN}bm;V@thK*mY^w`^Y14RTou5{A(Rt>f9#p2cah(KI&z%vJV_&x-M2YmipJ-g~rO>iS_*lgJ8K$+lvo?%??VN z(BWA9uczX2{_1@>DK2(udIe3vK8v~_`0ne1aR&uTny#iB3$UQ@NR!<0nOY% zM4dt&hrd8*Yx0>Zg9*MZCT|nDcj4sgrwx2I!iO;-`^pfvKHGFyB1wM@)T}Qmo9$tA zHIh?Sb%C3Sb!CUl_gjZ`^ee*9zkcc0xgYvC-FZk9>H9?OWl!DwjmkBo#O(Qa64S-X zpYi0OS!kx-vjkG6ktN}GV&+f1GRj|z&)lp?wU|EcVtHUcu(ZSqNm7IforIGSZ8uO) zSJUfn`Y((=?`B6|J0Sh_+~L#RzY7|GiZam&j`foHVw$M$~9sUX!z(=TMWKwahi+SyZgy=*q}= zXi$oqU&t2_?%PN8s_`-x!~>x2szU5f`KS#xHH-Z-F%5`ikbY1^$w$d^$sn`Z0)qKW z0f1zg?Ph`t=R9e6of)@Q(v2On9*3*lLRZ$9EUVW6*DC`^e~|o__sn=Vh3DEc%LSDW zk;4N4+9g&h?m7&pjO+^-Og1X77}h~R?K*7`PJX6KV%(W)AD-DX5uQQoy+C&V)q>4= zepNy@r{TDEnZR2aGYDe#9h`7l z35RH-68=ni;pl}~K_wE8{J7K99|M-^Xi&2S1>C(406Ap8VK{4IWpPnXFk8|1lzSS$ zm@4Lwr#oX0cF3T`WwWd4RJP#3-Is>fkFN~O9#Aw$ zJ{bMtKwx-{IRReh8a4B9qv*u69en0@BCES0p0ybZ6a1W9nUX}9u<4~WK|$1e2t4E2 zV|FpC=Mt0$u<%vvQD-Wk;*E5H??G=2Y;uhY(&qWM)d$2M|- z@YA|s%VwdQqQh&*mjgBL{)TdxrIkWitI&YI<`?KIa~<17U_ea}g~)z-fk%;tiN<7g z9=b{ceNu7>gGe5{W|iGA$jCtinOBAE8h9nzOI_3UU5wQVSl{|jY8d_(%T>`lg8DDy zJS;`Ne5R!~;TP6JXY*FiE0j@ntQMl8E_c%D-JZ2C=yaYc{-7!_=HqZtKDo4BN?YHH zY`ihqu8JhK7dlW*EZ}YG)trSBKY1?}EK~G#jED#qQ0}YWdP6s8(Z%aXsxpYFe&4TE zw}mvYsz82}{3F>6?N(+?_p+@*UR2yRH^wO&u6;vLHHS>U+IZfR>7XhGtu}BU6>ml? zE`Srt*%@n;6z!Q)+FzwOKP%!>1|VO`ZcH?3AG-Mc0q2qLknGv^Q*O!SSS7tR_r`r< zI!dO^#mHDfQraR`YOEl)xqX+0uO_B-W8>B9-rQ-A87GbD+zsPLQ6kiK=NaV3z(-ZG za!36&LC9UsDWmPN%n_i-McB8^z`f^eizVQAS}fKCegrv}rgLI~WL`C%i&&`L>gw@t zSj9x;n{$j;#cTl93$^rLpxIZP00cV8PYzhb0xgnd_)*0BE|?lfAmIqFf*Y?kYw{+H}K@%62>z6)dlfu?&c(<5PBcXcpP5 z1oaq=~mM2x4^lP^*5WdN1qTX8cuTf2bHQvKHfH%1qW$6n3GP;l28C}=e! z@`y8ytnXfQ+D}gYwERSAFq< z)XHptfd=AQ%FG^gM%LPMc&42(Y~qDi?_Hx}#DA#50B864ss%k#+}J(r;PBTd5pAs} z(`>!l3_Rc#at-g-DpG7baxXl=IDlNwZSW%4t$UZ~w%6Q8HIiS$3nA*k_BpYM=^Kx( zY@Rwxkg~jc@zqiJV?-aRXP-a6**aUM-?p)1Ug72e>oWdqvatksGT2}A^uF0_a@>Zy z?fkpgkg`gKcbVBOmx946+E2ZYA&&8y7|vB2iuwxHkiV}Ra{u2qioQ)Qt=TwTk{h@8 ztNJ+#xFt<0V=@!oJl5-J3c-mvMo(qCi032xiuGOd`9{;4hZliScK6I``S$*w0c-eB zOvcQXolcX$AtUBa9>S^mpYf)c~fjhWGX} zSN)y}gNCt|zgw_M3d|Grt=xxezJvZI+9Ku40<={hYlijx&6ErqBvF^*u`LFH3Uqh1 zu6^xoPyJVZlx8&dk?G~p`!yh-!mg>?gfG}$W zapZ~ihbz$4m%tPmGWq)1m5{AWo$1Oj_sptu$cM)dX;p%^ftdqlxoTxAFF_HX!T!iD zsiT^HxkMvortWa6-n_0SnQ~+1^pPZn&XaJ1pn~rYZU5N`SK7l20$$vBD zOD*W>GR#Yctil2q>U&&Wey%%$|6TV2DXKNMcS%t2_ut&xx>Y$9HsNIbNWX(Dt;WWh zk}0q>@pruL>MmxEQIY`8j0|y$rVT0*L}34GAs;Ap*B-L z$f<;NHKa$s*=jPu-WnV1%C}*KU2&Pyj8m2`PT%c|lhoMv?*6W;$9J86{i)*YLFl1( zz1}+S6YUfFZamDDfWLR|$*;!FDk13wAj^PsW>;N|nsE^$y`-VY8*#;#lO;zRRDrJ# z_ZcgsL`_m|DN6Jd<9nte*X1PxhKtkz+iKNY=Aq+;!4%asM_?*P2@p}_xU~1+O!nkm z*`~fRsM$|RY=H%L=DgV*(~ga=nvC;L)Qfd`r2IkxKD(hGxRKbz8*l~2r?swQ{*<|T zTC_aci#7iWMtKs)JQJt?HIF2W_%pULkn>x@L9_0)&d8YcZ~`^a3S%81>mcp-n;ABZ z?I{^o?SXaYN;wC9Q}0-|8kre%HhvxibYDI#V`RUOt9STQb;*R5_j~ZDb$5|1u1t@; zk2rbMp^6KJW@rinU4D54a0?DMVc)yyXVq}K9X@d(-QO?i7E6Q4|IqMDW=Yr-4p}gl zP1IQE3HrrW*Zrnmc7!>$J6rT$+ud8qsY-X`JM3I87`AmCH6^oJdDy_T|Fd5%S#-wEVqMexm zQHMcm2QoE$?wRMU-fs-Cd5?|2c95=>a)E(43q%~xa5ZaGq%RAJhW-~CH1VngAiRv4 z{kn&Wd?Bzfe6`J7SbUD1x$L{})hFm*v!ogGb4h{|7L9v@xN)41?#08*Pk-=lNrK&;LKv!qK9n$HDH9-FeQm_0mRj@ysbF?mQ zF{w5Cy1Dh{;KA&rN*~Ami$(=YdDzn(0#(KQ{|guq=kD|C1EA~Hc=4h3Qa$*Jt(uXE;- zgY^KtPl}wZ5gJ@)u5T{&LLZ=gEj5@+)F%vDBPNf%c{o;n>M9yIx<}2!pM6kc)Re#S z6R4*QMya6WRRFY?CzX$Ru*XV6S8AnQ^`kM3NKk1=(agWO>w z+_(GyIWmT8)aei4Sd^SxPx`nPN7$^h^G_Eq*xYyKg17FEM)I6?2j;y9pX!pw`53KN zp2_FQYzzDzpPAAQXFmhkvbAp&0a1JTJ?$izcDn~8=UKjbksnp@*E z4{Q=&YE<6z2N&mw66gG%MC+z?)*)Z5XWyi;##g>stJgz4A~@D^BWC8QadZ7a8?crO ztm(-5(=%aW))ZW;;~aHk95^!8KG#|4$>UWuO?iWlJb~opyz-P`A~ z{iSV*k0_i(9+#pcYXpYc_?h|6L2Ny~>pegIE-W?c!EJS{E63V7V9a|Fm}?O8`O$4< zUUN>-oqDS;c-H!tuh*^nKgX~2;n*@FGC76WHt&-;AJ6bI7lC#=eGJt&xR!>L8~4+`F1rjt_G;;qjkB1iTit3S!QarTA5(HYq!R z_-u}%=)+o^;d5@?95w6{49Es!?s&~<3oSLyCy%toCfGM?9oD5Lk$fE8i+yDuYP{;X z&#(;#$NLcV>i!WN?c+G?wPQ*R&pBqz*gtcNhq;q&&|&U4!P8!95miT?pv6a2j*JZ- zVNQ)eKTeY-jPfBbYuGpS!CakFKJHPg)^<(vWbG+-?OdfTe5{Th?J`iXVS$WIMK)(l^2Gk^4_{#gUax`=jNYnCmzb8nXV z;yi4QU&% z>Rgy&hPu{O`*VD)SNn}z$1n0$lp4hP-c6k5ig>{sHO~IfTjy1K^)K?*eBjg=TnOqj zD`M_PVEocEc&t)O-QUO^V!)x?T%&gUDZZ3jCt7h4wq4#1p>SL39<{;*Htg|LOHNN(>w%-%a+=DRJ0xIX=FL^`V zs;lrgeiPr?o)-P)tU8m+_KANj2dK3duLp?dxC!GO7!yU(#S<2+!Ww%~7a$y~5q9Mx zQo>^0<9i(EgnsfQ4X&(#npr<=U&--WKE^OMY^#`fW@T-R_ui~&T3x(S zvw66VysTMbq}RDz1G*S7Cvwe`eF6F4Qnb!ojFo?$(+{{`u7}=ZtUQV*cbRKso-Vkw z^g9jZMw~`)5Nr9hKh`7{eRZFvJr{>{g^fr%W5`#z0oJv>`U(GD&UI_9z+CDE7^gX7 zr@D?wzG)9NMz7Ma#G%^dys8|h?34K&tC4$4zQVEU9Y4xmx_%x@%v?YHbG-ONi+zj- zIG=lUjpWAM{^WCyB__4iHR~a2rDHvY{?t`?$W72b)MGr5dL3td=AU#Du9bS~F=CyF z%RPZ5Idjjsj?YO@cO0uFtiOba1Y+21APZxZNFc{(%sH~bXJO{>gNz!XjSb=?m5=fG zY2;?rO|Z6^8+O_TAF*U7pL3|g8yTDAwf(ArY}a>P`{v#?XHCQswXXBLPOhlU1Ly~n zp&m!?0pMEV3cYoYWCxq=#E?^J${%%BI(pBV+lH~$%ADxcytZep;BlYX4`TuPr5o#2 z-YSk5YLL&d)kbj5SfKh9zf`B}LG9h6;sEno2kjZBytsh!0oT5W%Tax;){Y@G=NS7V z&d^NczGLm!YD?}|XC3wxJ#%fl5ITBp=!p7?3C?<~#Zl^Ko$BMrJm$xqnuBn@*NgnY z;kA4K7&Ur-s$PxOTx}TF?5qi75AfTkHBkQ@tHIB|kHWggM7-iy2fo5B&^PUaa$>Yi z{H_P|-dsQ4wqbniLDw?rj`+2hSg+N0e$iO-hj_#=mN~R35Ad-tlv{L*FEo-*b|8-( z=d{u9YeAVaM>;lO{Q?%7RmEpv3v&Y@ieO2?4RCa%K4Ol0Wok zAJg$rUf5D^)Q}eEN4)GUIVsPaR=!%M;EFi9!*Zo#r*u)+6 z>T%CH?yG8Lj(ItT*34lIaz&0goHNufH3j8huH)MCs}8McFUKeOV{Lxta-Fe`F%R`c zZH-GdK%9}U+OBC`@SA&Ba~`#vTmQyx;MX|5a?ovkEnT*ev)V$N_eL?=qaN=&QGzuy zA1mwhnnvnFJYe1f@slHLIWM}z6MLZB<5~wWm*esP#;BUC74fP;UF4{K=3rC| zY{}t$oA*ID8rD^l^<>>rM;d^PFUO|a`uW57exc<1Q}C0Mu>KlbwJN&kV0_p#GB)|U zU%A0cxL#g-%bLn?Ij=s|`F@w%H-j!dzQj=g@^~r|$;+?4ZfTcW*Seu_Ce&(8U#koJgF@#3f zaLwSaHuq*t1o<-F8~{1#)0{kIk8^aq#$Lm93D+KYY>T|)BS+N8Jqo{LGcQKhQB192 zo`_AZ(8pNY2<4g+tBj>D_Dpm8fuUyD%uURXXH~yz^tjbpbM{nn+~X3a_rUOf5g@uy!$_6BtON_gFT+Y}czZAi`INPE=F z=CfwEIo5GAzb>xDrg-~-fsY&j$APDE#DNnJP!FVSet=8;fIR%Vr99C6Zbd+Rw=L{D z^kpwo?ZFp1rK50JH*(2;@iYC|1AKxt)tX_mrXC*`AV7Rmjm)7Iasiy1JC6f3GG+s&JFp(; zgi1~t3y`3&Sy0+y^D-X!^2Y``&NVWxY-YyzKmxMSSDH5eQq4hE&5LI`&dGQ{@zz-n z9>CnS9P`GBVlBggEOF_l4j><#BcBJ&Cu-d<$8)Z+?A0na#>&qTeA!pb2|uGto*2!e zHT|$i`&=t>G9JFQ-pN<`_S*WoeHB~zZR;2Hv4(XK_T^aWtZ_0YdLE85Anvl~1mlyB z`P3Bo(iVLU$1L6>kv(c#t9b}(sd1^rbvZ9Jt!3sFC%FsPux3tZP7d?BmTS~~vA)Pn zovg=^zR;jC;IB0>*9IR9I60S{TeuPDm3J39qS+B0I~>25|^e_B<36)JKM4$H^|MhKbn`_ zg0)%QZmw+7ar9v%|G-^+aljMymx-MMQ&0Feq-zwHITC;A{6C!U|FC6Ez1($h}FXF1+)Wh1$$9ye5 z>T;C6m=n1smyZ$SqOLjS9%QF~?zz-VZO&QZjl7`;z`Z1A)Us_&569xGT&^XZ9AOt% z(UCrkS;tz!=bRdoJkC-5^1kb&sm6+{>cv{Q(Jzs;I4^r+-KpO_0p=ICYp||!=%;<| zgE>(Hvu@`YcV~9#+J07Du%;27;aR{hletkr!& zueqy!aUxFexPZ-H=F23IZi2+IaKVzTV)lEjCZbVq(qbIP*x(t-QDMHxw~1#>&jRvU z+QR+}x=-^j_=tg7Lhma4Q@!TS@{o@&g;-KaHZ-nBZw z#+cyUv|c;T@Vl>yrMRkBD7Gbyn{t-w2~+&s!;H0>bDY-;_F04bJ&kklZL$+nz0>+w z%LQ!H80W+q=K2e9i*+$y+kg9KU)VQ3HdNjTKk0d91fdf?+Qf^v!!^ zj-|ZhFFbRcds>P$h8m0s3_Z^^0q)@v)-GWGGT??b;cIN5)AnxxGsjO_yFw3=3n!+yHXNTnOC5c>mN|2ek6ZsV`2Ump zF946-mreQ>>>IiMCH44IA9Ek?CDa~%iakmEi`WBj@PU70Pp8z#y_kCZGas`Bzqn3$ zd|bp&xi7QcrN_RX5NITDAVPXIP002ovPDHLkV1gcDks<&9 literal 116440 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 diff --git a/docs/reference/media/registered-certs.png b/docs/reference/media/registered-certs.png index 39a20e9eb9bf930ad3fab177c456e32ebc344644..2b9cc1b646866a3f940081f56062639a4c9f407c 100644 GIT binary patch literal 15934 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 O0Buc!2bK5j|NLJQll+DN From e5c8e3d877a6f4c8ea24ae534a8e1cdf050be4a2 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Fri, 27 Sep 2024 10:52:59 +0930 Subject: [PATCH 868/988] Update secure supply chain doc with latest NuGetAudit info (#3341) --- docs/concepts/Security-Best-Practices.md | 168 ++++++++++++++++++----- 1 file changed, 131 insertions(+), 37 deletions(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 9d232c23e..b8e5377a1 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -3,21 +3,26 @@ title: Best practices for a secure software supply chain description: Best practices for securing your software supply chain using NuGet & GitHub. author: JonDouglas ms.author: jodou -ms.date: 02/08/2021 ms.topic: conceptual --- # Best practices for a secure software supply chain -Open Source is everywhere. It is in many proprietary codebases and community projects. For organizations and individuals, the question today is not whether you are or are not using open-source code, but what open-source code you are using, and how much. +Open Source is everywhere. +It is in many proprietary codebases and community projects. +For organizations and individuals, the question today is not whether you are or are not using open-source code, but what open-source code you are using, and how much. -If you're not aware of what is in your software supply chain, an upstream vulnerability in one of your dependencies can be fatal, making you, and your customers, vulnerable to a potential compromise. In this document, we will dive deeper into what the term “software supply chain” means, why it matters, and how you can help secure your project’s supply chain with best practices. +If you're not aware of what is in your software supply chain, an upstream vulnerability in one of your dependencies can be fatal, making you, and your customers, vulnerable to a potential compromise. +In this document, we will dive deeper into what the term “software supply chain” means, why it matters, and how you can help secure your project’s supply chain with best practices. ![The State of the Octoverse 2020 - Open Source](media/opensource-percent.png) -## Dependencies +## Dependencies -The term software supply chain is used to refer to everything that goes into your software and where it comes from. It is the dependencies and properties of your dependencies that your software supply chain depends on. A dependency is what your software needs to run. It can be code, binaries, or other components, and where they come from, such as a repository or package manager. +The term software supply chain is used to refer to everything that goes into your software and where it comes from. +It is the dependencies and properties of your dependencies that your software supply chain depends on. +A dependency is what your software needs to run. +It can be code, binaries, or other components, and where they come from, such as a repository or package manager. It includes who wrote the code, when it was contributed, how it was reviewed for security issues, known vulnerabilities, supported versions, license information, and just about anything that touches it at any point of the process. @@ -25,21 +30,33 @@ Your supply chain also encompasses other parts of your stack beyond a single app ## Vulnerabilities -Today, software dependencies are pervasive. It is quite common for your projects to use hundreds of open-source dependencies for functionality that you did not have to write yourself. This may mean that most of your application consists of code that you did not author. +Today, software dependencies are pervasive. +It is quite common for your projects to use hundreds of open-source dependencies for functionality that you did not have to write yourself. +This may mean that most of your application consists of code that you did not author. ![The State of the Octoverse 2020 - Dependencies](media/dependencies.png) Possible vulnerabilities in your third-party or open-source dependencies, are presumably dependencies you cannot control as tightly as the code you write, which can create potential security risks in your supply chain. -If one of these dependencies has a vulnerability, the chances are you have a vulnerability as well. This can be scary as one of your dependencies may change without you even knowing. Even if a vulnerability exists in a dependency today, but is not exploitable, it can be exploitable in the future. +If one of these dependencies has a vulnerability, the chances are you have a vulnerability as well. +This can be scary as one of your dependencies may change without you even knowing. +Even if a vulnerability exists in a dependency today, but is not exploitable, it can be exploitable in the future. -Being able to leverage the work of thousands of open-source developers and library authors means that thousands of strangers can effectively contribute directly to your production code. Your product, through your software supply chain, is affected by unpatched vulnerabilities, innocent mistakes, or even malicious attacks against dependencies. +Being able to leverage the work of thousands of open-source developers and library authors means that thousands of strangers can effectively contribute directly to your production code. +Your product, through your software supply chain, is affected by unpatched vulnerabilities, innocent mistakes, or even malicious attacks against dependencies. ## Supply chain compromises -The traditional definition of a supply chain comes from manufacturing; it is the chain of processes required to make and supply something. It includes planning, supply of materials, manufacturing, and retail. A software supply chain is similar, except instead of materials, it is code. Instead of manufacturing, it is development. Instead of digging ore from the ground, code is sourced from suppliers, commercial or open source, and, in general, the open-source code comes from repositories. Adding code from a repository means your product takes a dependency on that code. +The traditional definition of a supply chain comes from manufacturing; it is the chain of processes required to make and supply something. +It includes planning, supply of materials, manufacturing, and retail. +A software supply chain is similar, except instead of materials, it is code. +Instead of manufacturing, it is development. +Instead of digging ore from the ground, code is sourced from suppliers, commercial or open source, and, in general, the open-source code comes from repositories. +Adding code from a repository means your product takes a dependency on that code. -One example of a software supply chain attack occurs when malicious code is purposefully added to a dependency, using the supply chain of that dependency to distribute the code to its victims. Supply chain attacks are real. There are many methods to attack a supply chain, from directly inserting malicious code as a new contributor, to taking over a contributor’s account without others noticing, or even compromising a signing key to distribute software that is not officially part of the dependency. +One example of a software supply chain attack occurs when malicious code is purposefully added to a dependency, using the supply chain of that dependency to distribute the code to its victims. +Supply chain attacks are real. +There are many methods to attack a supply chain, from directly inserting malicious code as a new contributor, to taking over a contributor’s account without others noticing, or even compromising a signing key to distribute software that is not officially part of the dependency. A software supply chain attack is in and of itself rarely the end goal, rather it is the beginning of an opportunity for an attacker to insert malware or provide a backdoor for future access. @@ -47,18 +64,35 @@ A software supply chain attack is in and of itself rarely the end goal, rather i ## Unpatched software -The use of open source today is significant and is not expected to slow down anytime soon. Given that we are not going to stop using open-source software, the threat to supply chain security is unpatched software. Knowing that, how can you address the risk that a dependency of your project has a vulnerability? +The use of open source today is significant and is not expected to slow down anytime soon. +Given that we are not going to stop using open-source software, the threat to supply chain security is unpatched software. +Knowing that, how can you address the risk that a dependency of your project has a vulnerability? - **Knowing what is in your environment.** This requires discovering your dependencies and any transitive dependencies to understand the risks of those dependencies such as vulnerabilities or licensing restrictions. -- **Manage your dependencies.** When a new security vulnerability is discovered, you must determine whether you are impacted, and if so, update to the latest version and security patch available. This is especially important to review changes that introduce new dependencies or regularly auditing older dependencies. -- **Monitor your supply chain.** This is by auditing the controls you have in place to manage your dependencies. This will help you enforce more restrictive conditions to be met for your dependencies. +- **Manage your dependencies.** When a new security vulnerability is discovered, you must determine whether you are impacted, and if so, update to the latest version and security patch available. + This is especially important to review changes that introduce new dependencies or regularly auditing older dependencies. +- **Monitor your supply chain.** This is by auditing the controls you have in place to manage your dependencies. + This will help you enforce more restrictive conditions to be met for your dependencies. ![The State of the Octoverse 2020 - Advisories](media/advisories.png) -We will cover various tools and techniques that NuGet and GitHub provides, which you can use today to address potential risks inside your project. +We will cover various tools and techniques that NuGet and GitHub provides, which you can use today to address potential risks inside your project. ## Knowing what is in your environment +### Packages with known vulnerabilities + +**📦 Package Consumer | 📦🖊 Package Author** + +.NET 8 and Visual Studio 17.8 added [NuGetAudit](Auditing-Packages.md), which will warn about direct packages with known vulnerabilities during restore. +.NET 9 and Visual Studio 17.12 changed the default to warn about transitive packages as well. + +NuGetAudit requires a source to provide a known vulnerabilities database, so if you're not using nuget.org as a package source, you should add it as an [audit source](Auditing-Packages.md#audit-sources). + +By the time that NuGet is warning you, the vulnerability is publicly known. +Attackers can use this public disclosure to develop attacks for targets who have not patched their applications. +Therefore, when you get a warning that a package your project is using has a known vulnerability, you should quickly take action. + ### NuGet dependency graph **📦 Package Consumer** @@ -67,20 +101,22 @@ You can view your NuGet dependencies in your project by looking directly at the This is typically found in one of two places: -- [`packages.config`](../reference/packages-config.md) – Located in the project root. -- [``](../consume-packages/package-references-in-project-files.md) – Located in the project file. +- [`packages.config`](../reference/packages-config.md) – Located in the project root. +- [``](../consume-packages/package-references-in-project-files.md) – Located in the project file. Depending on what method you use to manage your NuGet dependencies, you can also use Visual Studio to view your dependencies directly in [Solution Explorer](/visualstudio/ide/solutions-and-projects-in-visual-studio#solution-explorer) or [NuGet Package Manager](../consume-packages/install-use-packages-visual-studio.md). -For CLI environments, you can use the [`dotnet list package`](/dotnet/core/tools/dotnet-list-package) command to list out your project or solution’s dependencies. +For CLI environments, you can use the [`dotnet list package` command](/dotnet/core/tools/dotnet-list-package) to list out your project or solution’s dependencies. +You can also use the [`dotnet nuget why` command](/dotnet/core/tools/dotnet-nuget-why) to understand why transitive packages (those not directly referenced by your project) are being included in your project's package graph. For more information on managing NuGet dependencies, [see the following documentation](../consume-packages/overview-and-workflow.md). -### GitHub dependency graph +### GitHub dependency graph **📦 Package Consumer | 📦🖊 Package Author** -You can use GitHub’s dependency graph to see the packages your project depends on and the repositories that depend on it. This can help you see any vulnerabilities detected in its dependencies. +You can use GitHub’s dependency graph to see the packages your project depends on and the repositories that depend on it. +This can help you see any vulnerabilities detected in its dependencies. For more information on GitHub repository dependencies, [see the following documentation](https://github.co/dependency-graph). @@ -88,12 +124,14 @@ For more information on GitHub repository dependencies, [see the following docum **📦 Package Consumer | 📦🖊 Package Author** -To ensure a secure supply chain of dependencies, you will want to ensure that all of your dependencies & tooling are regularly updated to the latest stable version as they will often include the latest functionality and security patches to known vulnerabilities. Your dependencies can include code you depend on, binaries you consume, tooling you use, and other components. This may include: +To ensure a secure supply chain of dependencies, you will want to ensure that all of your dependencies & tooling are regularly updated to the latest stable version as they will often include the latest functionality and security patches to known vulnerabilities. +Your dependencies can include code you depend on, binaries you consume, tooling you use, and other components. +This may include: -- [Visual Studio](https://visualstudio.microsoft.com/downloads/) -- [.NET SDK & Runtime](https://dotnet.microsoft.com/download) -- [NuGet](https://www.nuget.org/downloads) -- [NuGet packages](../consume-packages/reinstalling-and-updating-packages.md) +- [Visual Studio](https://visualstudio.microsoft.com/downloads/) +- [.NET SDK & Runtime](https://dotnet.microsoft.com/download) +- [NuGet](https://www.nuget.org/downloads) +- [NuGet packages](../consume-packages/reinstalling-and-updating-packages.md) ## Manage your dependencies @@ -101,15 +139,18 @@ To ensure a secure supply chain of dependencies, you will want to ensure that al **📦 Package Consumer | 📦🖊 Package Author** -You can use the [dotnet CLI](/dotnet/core/tools/dotnet-list-package) to list any known deprecated or vulnerable dependencies you may have inside your project or solution. You can use the command `dotnet list package --deprecated` or `dotnet list package --vulnerable` to provide you a list of any known deprecations or vulnerabilities. +You can use the [dotnet CLI](/dotnet/core/tools/dotnet-list-package) to list any known deprecated or vulnerable dependencies you may have inside your project or solution. +You can use the command `dotnet list package --deprecated` or `dotnet list package --vulnerable` to provide you a list of any known deprecations or vulnerabilities. +[NuGetAudit](Auditing-Packages.md) can warn you about known vulnerable dependencies, and is enabled by default when [a source provides a vulnerabilities database](Auditing-Packages.md#audit-sources). ### GitHub vulnerable dependencies **📦 Package Consumer | 📦🖊 Package Author** -If your project is hosted on GitHub, you can leverage [GitHub Security](https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/automatically-scanning-your-code-for-vulnerabilities-and-errors) to find security vulnerabilities and errors in your project and Dependabot will fix them by opening up a pull request against your codebase. +If your project is hosted on GitHub, you can leverage [GitHub Security](https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/automatically-scanning-your-code-for-vulnerabilities-and-errors) to find security vulnerabilities and errors in your project and Dependabot will fix them by opening up a pull request against your codebase. -Catching vulnerable dependencies before they are introduced is one goal of the [“Shift Left”](https://en.wikipedia.org/wiki/Shift-left_testing) movement. Being able to have information about your dependencies such as their license, transitive dependencies, and the age of dependencies helps you do just that. +Catching vulnerable dependencies before they are introduced is one goal of the [“Shift Left”](https://en.wikipedia.org/wiki/Shift-left_testing) movement. +Being able to have information about your dependencies such as their license, transitive dependencies, and the age of dependencies helps you do just that. For more information about Dependabot alerts & security updates, [see the following documentation](https://docs.github.com/en/github/managing-security-vulnerabilities/about-alerts-for-vulnerable-dependencies). @@ -117,7 +158,10 @@ For more information about Dependabot alerts & security updates, [see the follow **📦 Package Consumer** -Use package sources that you trust. When using multiple public & private NuGet source feeds, a package can be downloaded from any of the feeds. To ensure your build is predictable and secure from known attacks such as [Dependency Confusion](https://medium.com/@alex.birsan/dependency-confusion-4a5d60fec610), knowing what specific feed(s) your packages are coming from is a best practice. You can use a single feed or private feed with upstreaming capabilities for protection. +Use package sources that you trust. +When using multiple public & private NuGet source feeds, a package can be downloaded from any of the feeds. +To ensure your build is predictable and secure from known attacks such as [Dependency Confusion](https://medium.com/@alex.birsan/dependency-confusion-4a5d60fec610), knowing what specific feed(s) your packages are coming from is a best practice. +You can use a single feed or private feed with upstreaming capabilities for protection. For more information to secure your package feeds, see [3 Ways to Mitigate Risk When Using Private Package Feeds](https://azure.microsoft.com/resources/3-ways-to-mitigate-risk-using-private-package-feeds/en-us/). @@ -127,7 +171,8 @@ When using a private feed, refer to the [security best practices for managing cr **📦 Package Consumer** -There are policies that you can opt-into in which you require the packages you use to be signed. This allows you to trust a package author, as long as it is author signed, or trust a package if it is owned by a specific user or account that is repository signed by NuGet.org. +There are policies that you can opt-into in which you require the packages you use to be signed. +This allows you to trust a package author, as long as it is author signed, or trust a package if it is owned by a specific user or account that is repository signed by NuGet.org. To configure client trust policies, [see the following documentation](../consume-packages/installing-signed-packages.md). @@ -135,7 +180,8 @@ To configure client trust policies, [see the following documentation](../consume **📦 Package Consumer** -Lock files store the hash of your package’s content. If the content hash of a package you want to install matches with the lock file, it will ensure package repeatability. +Lock files store the hash of your package’s content. +If the content hash of a package you want to install matches with the lock file, it will ensure package repeatability. To enable lock files, [see the following documentation](../consume-packages/package-references-in-project-files.md#locking-dependencies). @@ -147,13 +193,54 @@ Package Source Mapping allows you to centrally declare which source each package To enable package source mapping, [see the following documentation](../consume-packages/package-source-mapping.md). +## Secure computers + +### Directory permissions + +**📦 Package Consumer** + +On Windows and Mac, and some Linux distributions, user account home directories are private by default. +However, some Linux distributions make user directories readable by other accounts on the same computer by default. +Additionally, there are [multiple configuration options to redirect NuGet's global packages folder and HTTP cache to non-default locations](../consume-packages/managing-the-global-packages-and-cache-folders.md). +Solutions, projects, and repositories might also be created outside of the user's home directory. + +If you use any packages that are not on nuget.org, then if any other account on the computer can read NuGet's global packages or HTTP cache directories, or the project's build output directory, then these packages might be disclosed to people who should not have access to those packages. + +On Linux, `dotnet nuget update source` will change *nuget.config* file permissions to make it only readable by the file owner. +However, if you edit the *nuget.config* file in any other way, and the file is in a location that other accounts can read the file, there might be information disclosure about package source URL or package source credentials. +You should ensure any nuget.config file cannot be read by other users of the same computer. + +### Solutions within the downloads directory + +**📦 Package Consumer** + +Extra care should be taken if working on solutions or projects in your downloads directory. +NuGet will [accumulate settings from multiple config files](../consume-packages/configuring-nuget-behavior.md), and MSBuild will typically import *Directory.Build.props*, *Directory.NuGet.props*, *Directory.Build.targets*, and potentially other files, from any parent directory, right up to the filesystem root. + +The downloads folder has additional risk, since it's usually the default location that web browsers will download files from the internet + +### Build Agents + +**📦 Package Consumer** + +Build agents (CI agents) that are not reset to an initial state after every build have multiple risks that must be considered. + +To learn about secure ways to manage credentials, [see the docs on consuming packages from authenticated feeds](../consume-packages/consuming-packages-authenticated-feeds.md). + +To learn about modifying the directories that NuGet stores data in, see [the docs on managing the global packages, cache, and temp folders](../consume-packages/managing-the-global-packages-and-cache-folders.md). +These directories should be configured to a directory that the CI agent cleans after every build. + +Note that any packages used by your project might be left in your project's build output directory. +If your project uses packages from authenticated sources, then other users of the same CI agent might gain unauthorized access to the package assemblies. +Therefore, you should also clean your repo at the end of your build, even when the build fails or is cancelled. + ## Monitor your supply chain ### GitHub secret scanning **📦🖊 Package Author** -GitHub scans repositories for NuGet API keys to prevent fraudulent uses of secrets that were accidentally committed. +GitHub scans repositories for NuGet API keys to prevent fraudulent uses of secrets that were accidentally committed. To learn more about secret scanning, see [About secret scanning](https://docs.github.com/en/github/administering-a-repository/about-secret-scanning). @@ -161,7 +248,9 @@ To learn more about secret scanning, see [About secret scanning](https://docs.gi **📦🖊 Package Author** -[Author signing](../reference/signed-packages-reference.md) allows a package author to stamp their identity on a package and for a consumer to verify it came from you. This protects you against content tampering and serves as a single source of truth about the origin of the package and the package authenticity. When combined with client trust policies, you can verify a package came from a specific author. +[Author signing](../reference/signed-packages-reference.md) allows a package author to stamp their identity on a package and for a consumer to verify it came from you. +This protects you against content tampering and serves as a single source of truth about the origin of the package and the package authenticity. +When combined with client trust policies, you can verify a package came from a specific author. To author sign a package, see [Sign a package](../create-packages/sign-a-package.md). @@ -177,13 +266,14 @@ To learn more about reproducible builds, see [Producing Packages with Source Lin **📦🖊 Package Author** -Every account on nuget.org has 2FA enabled. This adds an extra layer of security when [logging into your GitHub account](https://docs.github.com/en/github/authenticating-to-github/securing-your-account-with-two-factor-authentication-2fa) or your [NuGet.org account](../nuget-org/individual-accounts.md#add-a-new-individual-account). +Every account on nuget.org has 2FA enabled. +This adds an extra layer of security when [logging into your GitHub account](https://docs.github.com/en/github/authenticating-to-github/securing-your-account-with-two-factor-authentication-2fa) or your [NuGet.org account](../nuget-org/individual-accounts.md#add-a-new-individual-account). -### Package ID prefix reservation +### Package ID prefix reservation **📦🖊 Package Author** -To protect the identity of your packages, you can reserve a package ID prefix with your respective namespace to associate a matching owner if your package ID prefix properly falls under the [specified criteria](../nuget-org/id-prefix-reservation.md#id-prefix-reservation-criteria). +To protect the identity of your packages, you can reserve a package ID prefix with your respective namespace to associate a matching owner if your package ID prefix properly falls under the [specified criteria](../nuget-org/id-prefix-reservation.md#id-prefix-reservation-criteria). To learn about reserving ID prefixes, see [Package ID prefix reservation](../nuget-org/id-prefix-reservation.md). @@ -191,13 +281,17 @@ To learn about reserving ID prefixes, see [Package ID prefix reservation](../nug **📦🖊 Package Author** -To protect the .NET package ecosystem when you are aware of a vulnerability in a package you have authored, do your best to deprecate and unlist the package so it is hidden from users searching for packages. If you are consuming a package that is deprecated and unlisted, you should avoid using the package. +To protect the .NET package ecosystem when you are aware of a vulnerability in a package you have authored, do your best to deprecate and unlist the package so it is hidden from users searching for packages. +If you are consuming a package that is deprecated and unlisted, you should avoid using the package. To learn how to deprecate and unlist a package, see the following documentation on [deprecating](../nuget-org/deprecate-packages.md) and [unlisting packages](../nuget-org/policies/deleting-packages.md#unlisting-a-package). +Also consider reporting the known to the [GitHub Advisories Database](https://github.com/advisories). + ## Summary -Your software supply chain is anything that goes into or affects your code. Even though supply chain compromises are real and growing in popularity, they are still rare; so the most important thing you can do is protect your supply chain by **being aware of your dependencies, managing your dependencies** and **monitoring your supply chain.** +Your software supply chain is anything that goes into or affects your code. +Even though supply chain compromises are real and growing in popularity, they are still rare; so the most important thing you can do is protect your supply chain by **being aware of your dependencies, managing your dependencies** and **monitoring your supply chain.** You learned about various methods that NuGet and [GitHub](/training/modules/maintain-secure-repository-github/) provide that are available to you today to be more effective in viewing, managing, and monitoring your supply chain. From 4ebc4cc69a5b39ef449d8e15de924954b45c6e94 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 27 Sep 2024 10:47:44 -0700 Subject: [PATCH 869/988] Document the new dependency resolution algorithm, add instructions for finding differences (#3340) --- .../Package-References-in-Project-Files.md | 36 +++++++++++++++++++ docs/reference/msbuild-targets.md | 1 + 2 files changed, 37 insertions(+) diff --git a/docs/consume-packages/Package-References-in-Project-Files.md b/docs/consume-packages/Package-References-in-Project-Files.md index c243db7e7..15d372a96 100644 --- a/docs/consume-packages/Package-References-in-Project-Files.md +++ b/docs/consume-packages/Package-References-in-Project-Files.md @@ -392,6 +392,42 @@ You can control various behaviors of restore with lock file as described below: | `-ForceEvaluate` | `--force-evaluate` | RestoreForceEvaluate | This option is useful with packages with floating version defined in the project. By default, NuGet restore will not update the package version automatically upon each restore unless you run restore with this option. | | `-LockFilePath` | `--lock-file-path` | NuGetLockFilePath | Defines a custom lock file location for a project. By default, NuGet supports `packages.lock.json` at the root directory. If you have multiple projects in the same directory, NuGet supports project specific lock file `packages..lock.json` | +## NuGet Dependency Resolver + +The NuGet dependency resolver follows the [4 rules as described in the dependency resolution document](../../docs/concepts/Dependency-Resolution.md). + +In order to improve the performance and scalability of the restore operation, the restore algorithm was rewritten in the 6.12 release. +As of the 6.12 release, the new restore algorithm is enabled by default for all PackageReference projects. +While the new restore algorithm is is functionally equivalent to the previous one, as with any software, bugs are possible. +To revert to the previous implementation, set the MSBuild property `RestoreUseLegacyDependencyResolver` to `true`. + +Should you face restore failures in 6.12, .NET 9 or 17.12, that weren't reproducing in earlier versions, please [file an issue on GitHub](https://github.com/NuGet/Home/issues/). +Any differences between the old and new algorithms may have different impacts, such as during compilation or at runtime. +There's also a chance that changes don't lead to failures, but different package versions being restored. +If you think you may be impacted by any changes, here are the steps you can take to verify whether the changes in the NuGet restore algorithm are the root cause. + +Restore writes its results in the `MSBuildProjectExtensionsPath` directory, which can be compared with the new and old algorithms to find differences. +Usually this is the `obj` folder of your build. +You can use `msbuild.exe` or `dotnet.exe` for the next steps. + +1. Remove the `obj` folder for your project. +1. Run `msbuild -t:restore` +1. Save the contents of the `obj` to a location indicating that it's the `new` behavior. +1. Run `msbuild -t:restore -p:RestoreUseLegacyDependencyResolver="true"` +1. Save the contents of the `obj` to a location indicating that it's the `legacy` behavior. +1. Compare the files in the two directories, particularly *project.assets.json*. +Tools that can highlight differences are especially useful for this (for example, Visual Studio Code, open both files, and use the right-click "select for compare" and "compare to selected") + +If you follow the above method, there should be exactly 1 difference between the `project.assets.json` files: + +```diff + "projectStyle": "PackageReference", ++ "restoreUseLegacyDependencyResolver": true, + "fallbackFolders": [ +``` + +If there are any more differences, please [file an issue on GitHub](https://github.com/NuGet/Home/issues/) with all the details. + ## AssetTargetFallback The `AssetTargetFallback` property lets you specify additional compatible framework versions for projects that your project references and NuGet packages that your project consumes. diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index 9d6d9b1db..aa4406876 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -444,6 +444,7 @@ Additional restore settings may come from MSBuild properties in the project file | `RestorePackagesConfig` | An opt-in switch, that restores projects with packages.config. Support with `MSBuild -t:restore` only. | | `RestoreRepositoryPath` | packages.config only. Specifies the packages directory to which the packages should be restored. `SolutionDirectory` will be used if not specified. | | `RestoreUseStaticGraphEvaluation` | An opt-in switch to use static graph MSBuild evaluation instead of the standard evaluation. Static graph evaluation is an experimental feature that's significantly faster for large repos and solutions. | +| `RestoreUseLegacyDependencyResolver` | An opt-out to use the legacy dependency resolver. NuGet's dependency resolver implementation was rewritten in the [6.12 release](../../docs/release-notes/NuGet-6.12.md). This switch forces the previous algorithm to be used. | The `ExcludeRestorePackageImports` property is an internal property used by NuGet. It should not be modified or set in any MSBuild files. From 534e4e22c180b3b1a4246c31e2a4f141b0d3c0ff Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Mon, 30 Sep 2024 12:08:21 -0700 Subject: [PATCH 870/988] deprecate SHA-1 usage in nuget.exe sign command (#3342) --- docs/reference/cli-reference/cli-ref-sign.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/docs/reference/cli-reference/cli-ref-sign.md b/docs/reference/cli-reference/cli-ref-sign.md index 732a71b47..68b4dc650 100644 --- a/docs/reference/cli-reference/cli-ref-sign.md +++ b/docs/reference/cli-reference/cli-ref-sign.md @@ -29,7 +29,12 @@ where `` is one or more `.nupkg` files. - **`-CertificateFingerprint`** - Specifies the SHA-1 fingerprint of the certificate used to search a local certificate store for the certificate. + Specifies the fingerprint to be used to search for the certificate in a local certificate store. + + Starting with NuGet.exe 6.12, this option can be used to specify the SHA-1, SHA-256, SHA-384, or SHA-512 fingerprint of the certificate. + However, a `NU3043` warning is raised when a SHA-1 certificate fingerprint is used because it is no longer considered secure. + + All the previous versions of the NuGet.exe continue to accept only SHA-1 certificate fingerprint. - **`-CertificatePassword`** From 2413007b41b5e77c6f4c558969012395c2c0862a Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Mon, 30 Sep 2024 12:10:01 -0700 Subject: [PATCH 871/988] add docs for new NuGet warning NU3043 (#3339) --- docs/TOC.md | 1 + docs/reference/Errors-and-Warnings.md | 14 +++---- docs/reference/errors-and-warnings/NU3043.md | 43 ++++++++++++++++++++ 3 files changed, 51 insertions(+), 7 deletions(-) create mode 100644 docs/reference/errors-and-warnings/NU3043.md diff --git a/docs/TOC.md b/docs/TOC.md index 245df7df1..9efbb2f86 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -244,6 +244,7 @@ ### [NU3038](reference/errors-and-warnings/NU3038.md) ### [NU3040](reference/errors-and-warnings/NU3040.md) ### [NU3042](reference/errors-and-warnings/NU3042.md) +### [NU3043](reference/errors-and-warnings/NU3043.md) ### [NU5000](reference/errors-and-warnings/NU5000.md) ### [NU5001](reference/errors-and-warnings/NU5001.md) ### [NU5002](reference/errors-and-warnings/NU5002.md) diff --git a/docs/reference/Errors-and-Warnings.md b/docs/reference/Errors-and-Warnings.md index e848f3094..11def614f 100644 --- a/docs/reference/Errors-and-Warnings.md +++ b/docs/reference/Errors-and-Warnings.md @@ -29,14 +29,14 @@ NuGet supports the following configuration properties. | --- | --- | | Invalid input errors | [NU1001](./errors-and-warnings/NU1001.md), [NU1002](./errors-and-warnings/NU1002.md), [NU1003](./errors-and-warnings/NU1003.md), [NU1004](./errors-and-warnings/NU1004.md), [NU1005](./errors-and-warnings/NU1005.md), [NU1006](./errors-and-warnings/NU1006.md), [NU1007](./errors-and-warnings/NU1007.md), [NU1008](./errors-and-warnings/NU1008.md), [NU1009](./errors-and-warnings/NU1009.md), [NU1010](./errors-and-warnings/NU1010.md), [NU1011](./errors-and-warnings/NU1011.md), [NU1012](./errors-and-warnings/NU1012.md), | | Missing package and project errors | [NU1100](./errors-and-warnings/NU1100.md), [NU1101](./errors-and-warnings/NU1101.md), [NU1102](./errors-and-warnings/NU1102.md), [NU1103](./errors-and-warnings/NU1103.md), [NU1104](./errors-and-warnings/NU1104.md), [NU1105](./errors-and-warnings/NU1105.md), [NU1106](./errors-and-warnings/NU1106.md), [NU1107](./errors-and-warnings/NU1107.md), [NU1108](./errors-and-warnings/NU1108.md), [NU1109](./errors-and-warnings/NU1109.md) | -| Package source mapping errors | [NU1110](./errors-and-warnings/NU1110.md) +| Package source mapping errors | [NU1110](./errors-and-warnings/NU1110.md) | | Compatibility errors | [NU1201](./errors-and-warnings/NU1201.md), [NU1202](./errors-and-warnings/NU1202.md), [NU1203](./errors-and-warnings/NU1203.md), [NU1204](./errors-and-warnings/NU1204.md), [NU1401](./errors-and-warnings/NU1401.md), [NU1402](./errors-and-warnings/NU1402.md), [NU1403](./errors-and-warnings/NU1403.md) | | Dotnet Tool restore errors | [NU1211](./errors-and-warnings/NU1211.md), [NU1212](./errors-and-warnings/NU1212.md), [NU1213](./errors-and-warnings/NU1213.md) | -| NuGet source errors | [NU1301](./errors-and-warnings/NU1301.md) | [NU1302](./errors-and-warnings/NU1302.md) | +| NuGet source errors | [NU1301](./errors-and-warnings/NU1301.md), [NU1302](./errors-and-warnings/NU1302.md) | | NuGet internal errors | [NU1000](./errors-and-warnings/NU1000.md) | | Signed packages errors (creation and verification) | [NU3001](./errors-and-warnings/NU3001.md), [NU3004](./errors-and-warnings/NU3004.md), [NU3005](./errors-and-warnings/NU3005.md), [NU3008](./errors-and-warnings/NU3008.md), [NU3034](./errors-and-warnings/NU3034.md)| -| Pack Errors | [NU5000](./errors-and-warnings/NU5000.md), [NU5001](./errors-and-warnings/NU5001.md), [NU5002](./errors-and-warnings/NU5002.md), [NU5003](./errors-and-warnings/NU5003.md), [NU5004](./errors-and-warnings/NU5004.md), [NU5005](./errors-and-warnings/NU5005.md), [NU5007](./errors-and-warnings/NU5007.md), [NU5008](./errors-and-warnings/NU5008.md), [NU5009](./errors-and-warnings/NU5009.md), [NU5010](./errors-and-warnings/NU5010.md), [NU5011](./errors-and-warnings/NU5011.md), [NU5012](./errors-and-warnings/NU5012.md), [NU5013](./errors-and-warnings/NU5013.md), [NU5014](./errors-and-warnings/NU5014.md), [NU5015](./errors-and-warnings/NU5015.md), [NU5016](./errors-and-warnings/NU5016.md), [NU5017](./errors-and-warnings/NU5017.md), [NU5018](./errors-and-warnings/NU5018.md), [NU5019](./errors-and-warnings/NU5019.md), [NU5020](./errors-and-warnings/NU5020.md), [NU5021](./errors-and-warnings/NU5021.md), [NU5022](./errors-and-warnings/NU5022.md), [NU5023](./errors-and-warnings/NU5023.md), [NU5024](./errors-and-warnings/NU5024.md), [NU5025](./errors-and-warnings/NU5025.md), [NU5026](./errors-and-warnings/NU5026.md), [NU5027](./errors-and-warnings/NU5027.md), [NU5028](./errors-and-warnings/NU5028.md), [NU5029](./errors-and-warnings/NU5029.md), [NU5036](./errors-and-warnings/NU5036.md), [NU5042](./errors-and-warnings/NU5042.md), [NU5049](./errors-and-warnings/NU5049.md) -| License specific Pack Errors | [NU5030](./errors-and-warnings/NU5030.md), [NU5031](./errors-and-warnings/NU5031.md), [NU5032](./errors-and-warnings/NU5032.md), [NU5033](./errors-and-warnings/NU5033.md), [NU5034](./errors-and-warnings/NU5034.md), [NU5035](./errors-and-warnings/NU5035.md) +| Pack Errors | [NU5000](./errors-and-warnings/NU5000.md), [NU5001](./errors-and-warnings/NU5001.md), [NU5002](./errors-and-warnings/NU5002.md), [NU5003](./errors-and-warnings/NU5003.md), [NU5004](./errors-and-warnings/NU5004.md), [NU5005](./errors-and-warnings/NU5005.md), [NU5007](./errors-and-warnings/NU5007.md), [NU5008](./errors-and-warnings/NU5008.md), [NU5009](./errors-and-warnings/NU5009.md), [NU5010](./errors-and-warnings/NU5010.md), [NU5011](./errors-and-warnings/NU5011.md), [NU5012](./errors-and-warnings/NU5012.md), [NU5013](./errors-and-warnings/NU5013.md), [NU5014](./errors-and-warnings/NU5014.md), [NU5015](./errors-and-warnings/NU5015.md), [NU5016](./errors-and-warnings/NU5016.md), [NU5017](./errors-and-warnings/NU5017.md), [NU5018](./errors-and-warnings/NU5018.md), [NU5019](./errors-and-warnings/NU5019.md), [NU5020](./errors-and-warnings/NU5020.md), [NU5021](./errors-and-warnings/NU5021.md), [NU5022](./errors-and-warnings/NU5022.md), [NU5023](./errors-and-warnings/NU5023.md), [NU5024](./errors-and-warnings/NU5024.md), [NU5025](./errors-and-warnings/NU5025.md), [NU5026](./errors-and-warnings/NU5026.md), [NU5027](./errors-and-warnings/NU5027.md), [NU5028](./errors-and-warnings/NU5028.md), [NU5029](./errors-and-warnings/NU5029.md), [NU5036](./errors-and-warnings/NU5036.md), [NU5042](./errors-and-warnings/NU5042.md), [NU5049](./errors-and-warnings/NU5049.md) | +| License specific Pack Errors | [NU5030](./errors-and-warnings/NU5030.md), [NU5031](./errors-and-warnings/NU5031.md), [NU5032](./errors-and-warnings/NU5032.md), [NU5033](./errors-and-warnings/NU5033.md), [NU5034](./errors-and-warnings/NU5034.md), [NU5035](./errors-and-warnings/NU5035.md) | | NuGetAudit specific warnings | [NU1014](./errors-and-warnings/NU1014.md), [NU1900](./errors-and-warnings/NU1900.md), [NU1901, NU1902, NU1903, NU1904](./errors-and-warnings/NU1901-NU1904.md), [NU1905](./errors-and-warnings/NU1905.md) | ## Warnings @@ -49,7 +49,7 @@ NuGet supports the following configuration properties. | Package fallback warnings | [NU1701](./errors-and-warnings/NU1701.md), [NU1702](./errors-and-warnings/NU1702.md), [NU1703](./errors-and-warnings/NU1703.md)| | Feed warnings | [NU1801](./errors-and-warnings/NU1801.md), [NU1802](./errors-and-warnings/NU1802.md), [NU1803](./errors-and-warnings/NU1803.md) | | NuGet internal warnings | [NU1500](./errors-and-warnings/NU1500.md) | -| Signed packages warnings (creation and verification) | [NU3000](./errors-and-warnings/NU3000.md), [NU3002](./errors-and-warnings/NU3002.md), [NU3003](./errors-and-warnings/NU3003.md), [NU3006](./errors-and-warnings/NU3006.md), [NU3007](./errors-and-warnings/NU3007.md), [NU3009](./errors-and-warnings/NU3009.md), [NU3010](./errors-and-warnings/NU3010.md), [NU3011](./errors-and-warnings/NU3011.md), [NU3012](./errors-and-warnings/NU3012.md), [NU3013](./errors-and-warnings/NU3013.md), [NU3014](./errors-and-warnings/NU3014.md), [NU3015](./errors-and-warnings/NU3015.md), [NU3016](./errors-and-warnings/NU3016.md), [NU3017](./errors-and-warnings/NU3017.md), [NU3018](./errors-and-warnings/NU3018.md), [NU3019](./errors-and-warnings/NU3019.md), [NU3020](./errors-and-warnings/NU3020.md), [NU3021](./errors-and-warnings/NU3021.md), [NU3022](./errors-and-warnings/NU3022.md), [NU3023](./errors-and-warnings/NU3023.md), [NU3024](./errors-and-warnings/NU3024.md), [NU3025](./errors-and-warnings/NU3025.md), [NU3026](./errors-and-warnings/NU3026.md), [NU3027](./errors-and-warnings/NU3027.md), [NU3028](./errors-and-warnings/NU3028.md), [NU3029](./errors-and-warnings/NU3029.md), [NU3030](./errors-and-warnings/NU3030.md), [NU3031](./errors-and-warnings/NU3031.md), [NU3032](./errors-and-warnings/NU3032.md), [NU3033](./errors-and-warnings/NU3033.md), [NU3035](./errors-and-warnings/NU3035.md), [NU3036](./errors-and-warnings/NU3036.md), [NU3037](./errors-and-warnings/NU3037.md), [NU3038](./errors-and-warnings/NU3038.md), [NU3040](./errors-and-warnings/NU3040.md), [NU3042](./errors-and-warnings/NU3042.md) | -| Pack Warnings | [NU5100](./errors-and-warnings/NU5100.md), [NU5101](./errors-and-warnings/NU5101.md), [NU5102](./errors-and-warnings/NU5102.md), [NU5103](./errors-and-warnings/NU5103.md), [NU5104](./errors-and-warnings/NU5104.md), [NU5105](./errors-and-warnings/NU5105.md), [NU5106](./errors-and-warnings/NU5106.md), [NU5107](./errors-and-warnings/NU5107.md), [NU5108](./errors-and-warnings/NU5108.md), [NU5109](./errors-and-warnings/NU5109.md), [NU5110](./errors-and-warnings/NU5110.md), [NU5111](./errors-and-warnings/NU5111.md), [NU5112](./errors-and-warnings/NU5112.md), [NU5114](./errors-and-warnings/NU5114.md), [NU5115](./errors-and-warnings/NU5115.md), [NU5116](./errors-and-warnings/NU5116.md), [NU5117](./errors-and-warnings/NU5117.md), [NU5118](./errors-and-warnings/NU5118.md), [NU5119](./errors-and-warnings/NU5119.md), [NU5120](./errors-and-warnings/NU5120.md), [NU5121](./errors-and-warnings/NU5121.md), [NU5122](./errors-and-warnings/NU5122.md), [NU5123](./errors-and-warnings/NU5123.md), [NU5127](./errors-and-warnings/NU5127.md), [NU5128](./errors-and-warnings/NU5128.md), [NU5129](./errors-and-warnings/NU5129.md), [NU5130](./errors-and-warnings/NU5130.md), [NU5131](./errors-and-warnings/NU5131.md), [NU5133](./errors-and-warnings/NU5133.md), [NU5500](./errors-and-warnings/NU5500.md), [NU5501](./errors-and-warnings/NU5501.md) -| License specific Pack Warnings | [NU5124](./errors-and-warnings/NU5124.md), [NU5125](./errors-and-warnings/NU5125.md) +| Signed packages warnings (creation and verification) | [NU3000](./errors-and-warnings/NU3000.md), [NU3002](./errors-and-warnings/NU3002.md), [NU3003](./errors-and-warnings/NU3003.md), [NU3006](./errors-and-warnings/NU3006.md), [NU3007](./errors-and-warnings/NU3007.md), [NU3009](./errors-and-warnings/NU3009.md), [NU3010](./errors-and-warnings/NU3010.md), [NU3011](./errors-and-warnings/NU3011.md), [NU3012](./errors-and-warnings/NU3012.md), [NU3013](./errors-and-warnings/NU3013.md), [NU3014](./errors-and-warnings/NU3014.md), [NU3015](./errors-and-warnings/NU3015.md), [NU3016](./errors-and-warnings/NU3016.md), [NU3017](./errors-and-warnings/NU3017.md), [NU3018](./errors-and-warnings/NU3018.md), [NU3019](./errors-and-warnings/NU3019.md), [NU3020](./errors-and-warnings/NU3020.md), [NU3021](./errors-and-warnings/NU3021.md), [NU3022](./errors-and-warnings/NU3022.md), [NU3023](./errors-and-warnings/NU3023.md), [NU3024](./errors-and-warnings/NU3024.md), [NU3025](./errors-and-warnings/NU3025.md), [NU3026](./errors-and-warnings/NU3026.md), [NU3027](./errors-and-warnings/NU3027.md), [NU3028](./errors-and-warnings/NU3028.md), [NU3029](./errors-and-warnings/NU3029.md), [NU3030](./errors-and-warnings/NU3030.md), [NU3031](./errors-and-warnings/NU3031.md), [NU3032](./errors-and-warnings/NU3032.md), [NU3033](./errors-and-warnings/NU3033.md), [NU3035](./errors-and-warnings/NU3035.md), [NU3036](./errors-and-warnings/NU3036.md), [NU3037](./errors-and-warnings/NU3037.md), [NU3038](./errors-and-warnings/NU3038.md), [NU3040](./errors-and-warnings/NU3040.md), [NU3042](./errors-and-warnings/NU3042.md), [NU3043](./errors-and-warnings/NU3043.md) | +| Pack Warnings | [NU5100](./errors-and-warnings/NU5100.md), [NU5101](./errors-and-warnings/NU5101.md), [NU5102](./errors-and-warnings/NU5102.md), [NU5103](./errors-and-warnings/NU5103.md), [NU5104](./errors-and-warnings/NU5104.md), [NU5105](./errors-and-warnings/NU5105.md), [NU5106](./errors-and-warnings/NU5106.md), [NU5107](./errors-and-warnings/NU5107.md), [NU5108](./errors-and-warnings/NU5108.md), [NU5109](./errors-and-warnings/NU5109.md), [NU5110](./errors-and-warnings/NU5110.md), [NU5111](./errors-and-warnings/NU5111.md), [NU5112](./errors-and-warnings/NU5112.md), [NU5114](./errors-and-warnings/NU5114.md), [NU5115](./errors-and-warnings/NU5115.md), [NU5116](./errors-and-warnings/NU5116.md), [NU5117](./errors-and-warnings/NU5117.md), [NU5118](./errors-and-warnings/NU5118.md), [NU5119](./errors-and-warnings/NU5119.md), [NU5120](./errors-and-warnings/NU5120.md), [NU5121](./errors-and-warnings/NU5121.md), [NU5122](./errors-and-warnings/NU5122.md), [NU5123](./errors-and-warnings/NU5123.md), [NU5127](./errors-and-warnings/NU5127.md), [NU5128](./errors-and-warnings/NU5128.md), [NU5129](./errors-and-warnings/NU5129.md), [NU5130](./errors-and-warnings/NU5130.md), [NU5131](./errors-and-warnings/NU5131.md), [NU5133](./errors-and-warnings/NU5133.md), [NU5500](./errors-and-warnings/NU5500.md), [NU5501](./errors-and-warnings/NU5501.md) | +| License specific Pack Warnings | [NU5124](./errors-and-warnings/NU5124.md), [NU5125](./errors-and-warnings/NU5125.md) | | Icon specific Pack Warnings | [NU5046](./errors-and-warnings/NU5046.md), [NU5047](./errors-and-warnings/NU5047.md), [NU5048](./errors-and-warnings/NU5048.md) | diff --git a/docs/reference/errors-and-warnings/NU3043.md b/docs/reference/errors-and-warnings/NU3043.md new file mode 100644 index 000000000..b633581b0 --- /dev/null +++ b/docs/reference/errors-and-warnings/NU3043.md @@ -0,0 +1,43 @@ +--- +title: NuGet Warning NU3043 +description: NU3043 warning code +author: kartheekp-ms +ms.date: 09/11/2024 +ms.topic: reference +f1_keywords: + - "NU3043" +--- + +# NuGet Warning NU3043 + +> Invalid value for `--certificate-fingerprint` option in the `dotnet nuget sign` command or the `CertificateFingerprint` option in the `NuGet.exe sign` command. +The value must be a SHA-256, SHA-384, or SHA-512 certificate fingerprint (in hexadecimal). + +> This warning will be promoted to an error around the .NET 10 timeframe. + +## Issue + +Starting with .NET 9 and NuGet.exe 6.12, NU3043 warning is raised when a SHA-1 certificate fingerprint is passed to the sign commands. +SHA-1 is considered insecure and should no longer be used. + +## Solution + +To resolve this warning, ensure that you provide a valid SHA-256, SHA-384, or SHA-512 certificate fingerprint (in hexadecimal) for the `--certificate-fingerprint` option in the `dotnet nuget sign` command or the `CertificateFingerprint` option in the `NuGet.exe sign` command. + +Customers can use the following PowerShell script to compute SHA-2 family hashes for certificates. +To use the script, customers need to save the certificate to a local folder. + +```powershell +$certificate = [System.Security.Cryptography.X509Certificates.X509Certificate2]::new($certPath) +$stream = [System.IO.MemoryStream]::new($certificate.RawData) + +Try +{ + (Get-FileHash -Algorithm SHA256 $stream).Hash +} +Finally +{ + $stream.Dispose() + $certificate.Dispose() +} +``` From c8f4c6b1864aa14d7e20b350238c74f0f8ff0b21 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Tue, 1 Oct 2024 06:46:36 +0930 Subject: [PATCH 872/988] Update 6.11 release notes with .1 update (#3343) --- docs/release-notes/NuGet-6.11.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-6.11.md b/docs/release-notes/NuGet-6.11.md index dc7489ef0..bb12d50d8 100644 --- a/docs/release-notes/NuGet-6.11.md +++ b/docs/release-notes/NuGet-6.11.md @@ -15,6 +15,14 @@ NuGet distribution vehicles: 1 Installed with Visual Studio 2022 with any .NET workload +## Summary: What's New in 6.11.1 + +### Issues fixed in this release + +* Fix "multiple attempts to download the nupkg have failed" - [#13545](https://github.com/NuGet/Home/issues/13545) + +[List of commits in this release](https://github.com/NuGet/NuGet.Client/compare/6.11.0.122...6.11.1.2) + ## Summary: What's New in 6.11 * Suppress NuGetAudit warnings for specific advisories for PackageReference projects - [#13679](https://github.com/NuGet/Home/issues/13679) @@ -69,7 +77,7 @@ NuGet distribution vehicles: * Vulnerability InfoBar remains visible in the Solution Explorer after closing solution - [#13055](https://github.com/NuGet/Home/issues/13055) -[List of commits in this release](https://github.com/NuGet/NuGet.Client/compare/6.11.0.122...6.10.1.5) +[List of commits in this release](https://github.com/NuGet/NuGet.Client/compare/6.10.1.5...6.11.0.122) ### Community contributions From c77daee14ce6fe4b2d30f07a3bc28f2428bae725 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Thu, 3 Oct 2024 12:04:29 -0500 Subject: [PATCH 873/988] Clarify nuget/mono isn't supported and never was on Unixy platforms. (#3335) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Update NuGet-FAQ.yml * Update docs/resources/NuGet-FAQ.yml Co-authored-by: Jean-Pierre Briedé --------- Co-authored-by: Jean-Pierre Briedé --- docs/resources/NuGet-FAQ.yml | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/docs/resources/NuGet-FAQ.yml b/docs/resources/NuGet-FAQ.yml index ba838716b..240020b0f 100644 --- a/docs/resources/NuGet-FAQ.yml +++ b/docs/resources/NuGet-FAQ.yml @@ -23,11 +23,9 @@ sections: - question: | Does NuGet support Mono? answer: | - The command-line tool, `nuget.exe`, builds and runs under Mono 3.2+ and can create packages in Mono. - - Although `nuget.exe` works fully on Windows, there are known issues on Linux and OS X. Refer to [Mono issues](https://github.com/NuGet/Home/issues?utf8=%E2%9C%93&q=is%3Aissue+is%3Aopen+mono) on GitHub. - - A [graphical client](https://github.com/mrward/monodevelop-nuget-addin) is available as an add-in for MonoDevelop. + The command-line tool, `nuget.exe`, builds and runs typically under Windows. NuGet can run on Unix operating systems using `mono`, but it is not officially supported by [NuGet's Support Policy](https://devblogs.microsoft.com/nuget/announcing-nuget-exe-and-nuget-client-sdk-packages-support-policy-keeping-you-informed-and-secure/). + + [Mono has transferred ownership to Wine and is no longer maintained by Microsoft](https://github.com/mono/mono/issues/21796). - question: | How can I determine what a package contains and whether it's stable and useful for my application? From ec588d9889a199470daa8dcf157e6608ec3c0866 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Thu, 3 Oct 2024 12:09:16 -0500 Subject: [PATCH 874/988] Add transitive guidance (#3336) * Add transitive guidance * Update Auditing-Packages.md --- docs/concepts/Auditing-Packages.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/docs/concepts/Auditing-Packages.md b/docs/concepts/Auditing-Packages.md index c2e03d2e5..d05323ad8 100644 --- a/docs/concepts/Auditing-Packages.md +++ b/docs/concepts/Auditing-Packages.md @@ -125,6 +125,15 @@ If security vulnerabilities are found and updates are available for the package, - Use the NuGet package manager user interface in Visual Studio to update the individual package. - Run the `dotnet add package` command with the respective package ID to update to the latest version. +#### Transitive Packages + +If a known vulnerability exists in a top-level package's transitive dependencies, you have these options: + +- Add the fixed package version as a direct package reference. **Note:** Be sure to remove this reference when a new package version update becomes available and be sure to maintain the defined attributes for the expected behavior. +- Use [Central Package Management with the transitive pinning functionality](https://learn.microsoft.com/nuget/consume-packages/Central-Package-Management#transitive-pinning). +- [Suppress the advisory](https://learn.microsoft.com/nuget/concepts/auditing-packages#excluding-advisories) until it can be addressed. +- File an issue in the top-level package's tracker to request an update. + ### Security vulnerabilities found with no updates In the case that a known vulnerability exists in a package without a security fix, you can do the following. From d9adcadcf092fb08d33502e6d9fcfd0fa4020872 Mon Sep 17 00:00:00 2001 From: Rainer Sigwald Date: Wed, 9 Oct 2024 17:45:39 -0500 Subject: [PATCH 875/988] Append warning-behavior properties (#3346) Specifying the current value for the property is a best practice to avoid accidentally overwriting an existing value. --- docs/concepts/Auditing-Packages.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/concepts/Auditing-Packages.md b/docs/concepts/Auditing-Packages.md index d05323ad8..ce53cda68 100644 --- a/docs/concepts/Auditing-Packages.md +++ b/docs/concepts/Auditing-Packages.md @@ -102,8 +102,8 @@ It is available for packages.config from [Visual Studio 17.12 and NuGet 6.12](.. | [NU1905](../reference/errors-and-warnings/NU1905.md) | An audit source does not provide a vulnerability database | You can customize your build to treat these warnings as errors to [treat warnings as errors, or treat warnings not as errors](/dotnet/csharp/language-reference/compiler-options/errors-warnings#warningsaserrors-and-warningsnotaserrors). -For example, if you're already using `` to treat all (C#, NuGet, MSBuild, etc) warnings as errors, you can use `NU1901;NU1902;NU1903;NU1904` to prevent vulnerabilities discovered in the future from breaking your build. -Alternatively, if you want to keep low and moderate vulnerabilities as warnings, but treat high and critical vulnerabilities as errors, and you're not using `TreatWarningsAsErrors`, you can use `NU1903;NU1904`. +For example, if you're already using `` to treat all (C#, NuGet, MSBuild, etc) warnings as errors, you can use `$(WarningsNotAsErrors);NU1901;NU1902;NU1903;NU1904` to prevent vulnerabilities discovered in the future from breaking your build. +Alternatively, if you want to keep low and moderate vulnerabilities as warnings, but treat high and critical vulnerabilities as errors, and you're not using `TreatWarningsAsErrors`, you can use `$(WarningsAsErrors);NU1903;NU1904`. > [!NOTE] > MSBuild properties for message severity such as `NoWarn` and `TreatWarningsAsErrors` are not supported for packages.config projects. From 2c8810de338a47937fcc9a91a147ff42ca188fae Mon Sep 17 00:00:00 2001 From: Jeff Kluge Date: Thu, 17 Oct 2024 13:47:06 -0700 Subject: [PATCH 876/988] Update NU1011.md (#3347) --- docs/reference/errors-and-warnings/NU1011.md | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/docs/reference/errors-and-warnings/NU1011.md b/docs/reference/errors-and-warnings/NU1011.md index cdd4e9567..9e966a2e5 100644 --- a/docs/reference/errors-and-warnings/NU1011.md +++ b/docs/reference/errors-and-warnings/NU1011.md @@ -15,7 +15,7 @@ f1_keywords: ### Issue -`` items cannot contain floating versions. NuGet's central package management (CPM) is considered an enterprise-level feature which provides easier version +By default, `` items cannot contain floating versions. NuGet's central package management (CPM) is considered an enterprise-level feature which provides easier version management at scale as well as deterministic and secure restores. The use of floating versions introduces the possibility for a bad package to be introduced into your build after it has been pushed to a feed. This can lead to a situation where you made no changes in your repository but suddenly something is broken and there is no way for you to get back into a good state without removing the floating version or pushing a newer version of the package which is fixed. Using non-floating versions means that every upgrade @@ -30,4 +30,11 @@ commit in your repository. ### Solution -Change the floating version to a [non floating version range](../../concepts/Package-Versioning.md#version-ranges). +It is recommended to change the floating version to a [non floating version range](../../concepts/Package-Versioning.md#version-ranges). If that is not possible, you can enable +floating versions with CPM by setting an MSBuild property: + +```xml + + true + +``` From 49798a1ebf26d34f65f55b511d285bb63f376275 Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Fri, 18 Oct 2024 10:22:06 -0700 Subject: [PATCH 877/988] Fix the name of the placeholder file (#3348) This doc should not reccomend that users create a `.` file. That's a reserved directory alias for current directory. I'd be surprised if that actually works, it would definitely confuse the build / extraction / etc. I can't even create a file with this name. The correct file name is `_._`. --- docs/reference/nuspec.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/reference/nuspec.md b/docs/reference/nuspec.md index fa9c09c6c..da7370ef6 100644 --- a/docs/reference/nuspec.md +++ b/docs/reference/nuspec.md @@ -825,11 +825,11 @@ C#-specific content for net45 and up /contentFiles/cs/net45/sample.cs ``` -Empty folders can use `.` to opt out of providing content for certain combinations of language and TxM, for example: +Empty folders can use `_._` to opt out of providing content for certain combinations of language and TxM, for example: ``` /contentFiles/vb/any/code.vb -/contentFiles/cs/any/. +/contentFiles/cs/any/_._ ``` #### Example contentFiles section From 7268a5579cb7a0597551eafe88423e547053d675 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Fri, 8 Nov 2024 07:29:32 +1030 Subject: [PATCH 878/988] Add NuGet 6.12 release notes (#3349) --- docs/TOC.md | 1 + docs/release-notes/NuGet-6.12.md | 149 +++++++++++++++++++++++++++++-- docs/release-notes/NuGet-6.13.md | 28 ++++++ 3 files changed, 173 insertions(+), 5 deletions(-) create mode 100644 docs/release-notes/NuGet-6.13.md diff --git a/docs/TOC.md b/docs/TOC.md index 9efbb2f86..a1cc9d343 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -344,6 +344,7 @@ ### [Known Issues](release-notes/known-issues.md) ### NuGet 6.x +#### [NuGet 6.12](release-notes/NuGet-6.12.md) #### [NuGet 6.11](release-notes/NuGet-6.11.md) #### [NuGet 6.10](release-notes/NuGet-6.10.md) #### [NuGet 6.9](release-notes/NuGet-6.9.md) diff --git a/docs/release-notes/NuGet-6.12.md b/docs/release-notes/NuGet-6.12.md index 17b55019b..6808aa972 100644 --- a/docs/release-notes/NuGet-6.12.md +++ b/docs/release-notes/NuGet-6.12.md @@ -2,12 +2,10 @@ title: NuGet 6.12 Release Notes description: Release notes for NuGet 6.12 including new features, bug fixes, and DCRs. author: zivkan -ms.date: 8/19/2024 ms.topic: conceptual --- -# NuGet 6.12 Release Notes - +# NuGet 6.12 Release Notes NuGet distribution vehicles: @@ -17,6 +15,147 @@ NuGet distribution vehicles: 1 Installed with Visual Studio 2022 with any .NET workload -## Not yet released +## Known Issues + +* Project and package in the same graph with the same name but different dependencies may lead to incorrect versions of the dependencies of that id [#13888](https://github.com/NuGet/Home/issues/13888) +* VS PM UI shows warning icon about package vulnerability even after upgrade [#13866](https://github.com/NuGet/Home/issues/13866) +* dotnet nuget why reports missing argument, even though it ran [#13908](https://github.com/NuGet/Home/issues/13908) + +## Summary: What's New in 6.12.1 + +NuGet 6.12.1 is available in Visual Studio 17.12.0 and the .NET 9.0.101 SDK. + +### Issues fixed in this release + +* Deserializing an empty version range in a package dependency fails in .NET SDK 9.0.100-rc.2 [#13869](https://github.com/NuGet/Home/issues/13869) + +## Summary: What's New in 6.12 + +NuGet 6.12.0 is available in the .NET 9.0.100 SDK. + +* Add new graph resolution algorithm for better performance with large graphs - [#13692](https://github.com/NuGet/Home/issues/13692) + +* Owner profile hyperlinks needed in Details Pane of PM UI - [#13686](https://github.com/NuGet/Home/issues/13686) + +* Audit security vulnerabilities without adding nuget.org as package source - [#12698](https://github.com/NuGet/Home/issues/12698) + +* Deprecate SHA-1 fingerprints usage in NuGet Sign commands in favor of SHA-2 family fingerprints [#13891](https://github.com/NuGet/Home/issues/13891) + +* Deprecate http usage: Promote from warning to error - [#13289](https://github.com/NuGet/Home/issues/13289) + +### Breaking changes + +* NuGetAudit should check transitive packages by default when the .NET 9 SDK is installed [#13293](https://github.com/NuGet/Home/issues/13293) + +* Change NuGetAuditMode default to all for non-SDK style projects - [#13584](https://github.com/NuGet/Home/issues/13584) + +### Issues fixed in this release + +* Bubble-up Known Vulnerability Indicators in Solution Explorer for Transitive Packages - [#13636](https://github.com/NuGet/Home/issues/13636) + +* Enable `dotnet nuget why` on non-SDK style projects - [#13576](https://github.com/NuGet/Home/issues/13576) + +* NuGetAuditSuppress for packages.config - [#13575](https://github.com/NuGet/Home/issues/13575) + +* Enable Transitive Dependencies for Solution-level in Visual Studio - [#13216](https://github.com/NuGet/Home/issues/13216) + +* Roll-out new breaking change process for SDK tools, respect SdkAnalysisLevel - [#13309](https://github.com/NuGet/Home/issues/13309) + +* Add property for toggling the to the previous NuGet resolver: RestoreUseLegacyDependencyResolver - [#13700](https://github.com/NuGet/Home/issues/13700) + +* Reduce allocations in TokenSegment.TryMatch - [#12728](https://github.com/NuGet/Home/issues/12728) + +* Use `SDKAnalysisLevel` in restore "https everywhere: promote from warning to error" - [#13546](https://github.com/NuGet/Home/issues/13546) + +* tweak wording of NU1603 - [#13446](https://github.com/NuGet/Home/issues/13446) + +* Default Package icon shown even when embedded icon file exists on disk - [#13766](https://github.com/NuGet/Home/issues/13766) + +* Navigation telemetry for hyperlinks: License, ReportAbuse, Readme, ProjectUrl - [#13749](https://github.com/NuGet/Home/issues/13749) + +* Navigation telemetry for Owner Profile URLs in PM UI - [#13738](https://github.com/NuGet/Home/issues/13738) + +* PM UI should show transitive path - [#13574](https://github.com/NuGet/Home/issues/13574) + +* NuGetVersion should use a factory to intern parsed versions - [#13532](https://github.com/NuGet/Home/issues/13532) + +* Remove NuGet.Packaging.Core code - [#13385](https://github.com/NuGet/Home/issues/13385) + +* PM UI transitive dependencies should display all transitive dependencies, not just ones brought in through packages directly installed in a project - [#13060](https://github.com/NuGet/Home/issues/13060) + +* Remove deprecated field "owners" from VS UI Details Pane - [#10666](https://github.com/NuGet/Home/issues/10666) + +* "Value cannot be null; Parameter name: source" displays in error list when clicking installed tab in PM UI - [#13801](https://github.com/NuGet/Home/issues/13801) + +* New dependency resolver does not properly handle missing package versions when using CPM - [#13788](https://github.com/NuGet/Home/issues/13788) + +* Saving PackageManagementFormat throws Nullable object must have a value. - [#13773](https://github.com/NuGet/Home/issues/13773) + +* ProjectReference causing PM UI to error with "Value cannot be null. Parameter name: frameworkIdentifier" - [#13737](https://github.com/NuGet/Home/issues/13737) + +* LockFileUtils.CreateLockFileTargetProject allocates a lot - [#13712](https://github.com/NuGet/Home/issues/13712) + +* ConvertToProjectPaths causes extra allocations due to yield usage - [#13677](https://github.com/NuGet/Home/issues/13677) + +* dotnet add package with CPM installs a different version than what gets restored - [#13657](https://github.com/NuGet/Home/issues/13657) + +* `dotnet list package` does not work if project is using central package management system, after upgrading to `.NET 8.0` - [#13632](https://github.com/NuGet/Home/issues/13632) + +* Add a log code NuGetAuditSuppress duplicate items - [#13620](https://github.com/NuGet/Home/issues/13620) + +* Solution Explorer search can be broken by skipped dataflow updates - [#13619](https://github.com/NuGet/Home/issues/13619) + +* Add nullability declarations to ResolverUtility and RemoteWalkContext - [#13617](https://github.com/NuGet/Home/issues/13617) + +* Use of Obsolete X509Certificate2 ctor - [#13612](https://github.com/NuGet/Home/issues/13612) + +* nuget restore warnings can't be suppressed with NoWarn in Visual Studio - [#13571](https://github.com/NuGet/Home/issues/13571) + +* Restore may write nulls to project.assets.json - [#13563](https://github.com/NuGet/Home/issues/13563) + +* VS 17.10 - Error building projects with CPM explicitly enabled if ManagePackageVersionsCentrally is set to false in Directory.Build.props - [#13560](https://github.com/NuGet/Home/issues/13560) + +* PERF: Version and VersionRange allocations are very prevalent in profiles of Roslyn solution load - [#13559](https://github.com/NuGet/Home/issues/13559) + +* PERF: LockFileFormat is filled completely when common callers only need some of the data - [#13558](https://github.com/NuGet/Home/issues/13558) + +* PERF: Unnecessary construction of LockFileItem.Properties dictionary - [#13557](https://github.com/NuGet/Home/issues/13557) + +* Narator does not read the value of `allowInsecureConnections` - [#13555](https://github.com/NuGet/Home/issues/13555) + +* NuGet fails because of invalid characters in User-Agent header - [#13531](https://github.com/NuGet/Home/issues/13531) + +* 'why' and 'config' command does not show up in 'dotnet nuget --help' output - [#13517](https://github.com/NuGet/Home/issues/13517) + +* allocation: nuget.protocol.dll!NuGet.Protocol.HttpCacheUtility+<CreateCacheFileAsync>d__.MoveNext|nuget.protocol.dll!NuGet.Protocol.PackageDependencyGroupConverter.ReadJson - [#13445](https://github.com/NuGet/Home/issues/13445) + +* Reduce allocations in ContentItemCollection - [#12657](https://github.com/NuGet/Home/issues/12657) + +* When a source isn't accessible, service index cannot be read issues suppress the internal message making it difficult to understand the root cause - [#12530](https://github.com/NuGet/Home/issues/12530) + +* [Bug]: Extra space at start of package description in tooltip - [#12105](https://github.com/NuGet/Home/issues/12105) + +* Map branch name from sourcelink to RepositoryBranch for NuGet pack - [#13625](https://github.com/NuGet/Home/issues/13625) + +[List of commits in this release](https://github.com/NuGet/NuGet.Client/compare/6.12.1.1...6.11.1.2) + +### Community contributions + +Thank you to all the contributors who helped make this NuGet release awesome! -This version of NuGet is in preview and these release notes will be updated when it is released. +* [akoeplinger](https://github.com/NuGet/NuGet.Client/pull/6005) + * [6005](https://github.com/NuGet/NuGet.Client/pull/6005) Improve build.sh and fixes for building on arm64 macOS + * [5956](https://github.com/NuGet/NuGet.Client/pull/5956) Add System.Formats.Asn1 into Version.Details.xml + * [5911](https://github.com/NuGet/NuGet.Client/pull/5911) Don't use obsolete X509Certificate2 constructor on net9.0 +* [ToddGrun](https://github.com/NuGet/NuGet.Client/pull/5862) + * [5862](https://github.com/NuGet/NuGet.Client/pull/5862) Reduce allocations for version / versionranges + * [5857](https://github.com/NuGet/NuGet.Client/pull/5857) Reduce memory allocations during solution load in VS + * [5861](https://github.com/NuGet/NuGet.Client/pull/5861) Defer LockFileItem.Properties dictionary construction until needed +* [KirillOsenkov](https://github.com/NuGet/NuGet.Client/pull/6008) + * [6008](https://github.com/NuGet/NuGet.Client/pull/6008) Always debug RestoreTask and RestoreEx when environment variable is set +* [vernou](https://github.com/NuGet/NuGet.Client/pull/5982) + * [5982](https://github.com/NuGet/NuGet.Client/pull/5982) Fix restore when a package is installed with a version specified in CPM +* [mthalman](https://github.com/NuGet/NuGet.Client/pull/5959) + * [5959](https://github.com/NuGet/NuGet.Client/pull/5959) Allow override of System.Formats.Asn1 package version +* [MattKotsenas](https://github.com/NuGet/NuGet.Client/pull/5923) + * [5923](https://github.com/NuGet/NuGet.Client/pull/5923) Map SourceBranchName from sourcelink to RepositoryBranch for NuGet pack diff --git a/docs/release-notes/NuGet-6.13.md b/docs/release-notes/NuGet-6.13.md new file mode 100644 index 000000000..825f7b406 --- /dev/null +++ b/docs/release-notes/NuGet-6.13.md @@ -0,0 +1,28 @@ +--- +title: NuGet 6.13 Release Notes +description: Release notes for NuGet 6.13 including new features, bug fixes, and DCRs. +author: zivkan +ms.topic: conceptual +--- +# NuGet 6.13 Release Notes + + + +NuGet distribution vehicles: + +| NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | +|:---|:---|:---| +| [**6.13**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.13](https://visualstudio.microsoft.com/downloads/) | [9.0.2xx](https://dotnet.microsoft.com/download/dotnet/9.0)1 | + +1 Installed with Visual Studio 2022 with any .NET workload + +## Not yet released + +This version of NuGet is in preview and these release notes will be updated when it is released. From 225c8c25f1aba9bacda17586a4d51007ecb99acd Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Sat, 9 Nov 2024 06:13:36 +1030 Subject: [PATCH 879/988] Fix links in audit docs (#3352) --- docs/concepts/Auditing-Packages.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/concepts/Auditing-Packages.md b/docs/concepts/Auditing-Packages.md index ce53cda68..ce331a686 100644 --- a/docs/concepts/Auditing-Packages.md +++ b/docs/concepts/Auditing-Packages.md @@ -130,8 +130,8 @@ If security vulnerabilities are found and updates are available for the package, If a known vulnerability exists in a top-level package's transitive dependencies, you have these options: - Add the fixed package version as a direct package reference. **Note:** Be sure to remove this reference when a new package version update becomes available and be sure to maintain the defined attributes for the expected behavior. -- Use [Central Package Management with the transitive pinning functionality](https://learn.microsoft.com/nuget/consume-packages/Central-Package-Management#transitive-pinning). -- [Suppress the advisory](https://learn.microsoft.com/nuget/concepts/auditing-packages#excluding-advisories) until it can be addressed. +- Use [Central Package Management with the transitive pinning functionality](../consume-packages/Central-Package-Management.md#transitive-pinning). +- [Suppress the advisory](#excluding-advisories) until it can be addressed. - File an issue in the top-level package's tracker to request an update. ### Security vulnerabilities found with no updates From 00c4eefdbd756719fa836474b7f7147348c5b9a7 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Fri, 15 Nov 2024 16:28:07 -0800 Subject: [PATCH 880/988] NuGetAuditMode default change respects SdkAnalysisLevel (#3354) --- docs/concepts/Auditing-Packages.md | 8 ++++---- docs/reference/errors-and-warnings/NU1901-NU1904.md | 3 +++ 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/docs/concepts/Auditing-Packages.md b/docs/concepts/Auditing-Packages.md index ce331a686..c0ad794bb 100644 --- a/docs/concepts/Auditing-Packages.md +++ b/docs/concepts/Auditing-Packages.md @@ -3,7 +3,6 @@ title: Auditing package dependencies for security vulnerabilities description: How to audit package dependencies for security vulnerabilities and acting on security audit reports. author: JonDouglas ms.author: jodou -ms.date: 07/19/2024 ms.topic: conceptual --- @@ -44,11 +43,12 @@ We recommend that audit is configured at a repository level. | MSBuild Property | Default | Possible values | Notes | |------------------|---------|-----------------|-------| -| NuGetAuditMode | all (1) | `direct` and `all` | If you'd like to audit both top-level and transitive dependencies, you can set the value to `all`. NuGetAuditMode is not applicable for packages.config projects | +| NuGetAuditMode | all | `direct` and `all` | If you'd like to audit top-level dependencies only, you can set the value to `direct`. NuGetAuditMode is not applicable for packages.config projects. | | NuGetAuditLevel | low | `low`, `moderate`, `high`, and `critical` | The minimum severity level to report. If you'd like to see `moderate`, `high`, and `critical` advisories (exclude `low`), set the value to `moderate` | | NuGetAudit | true | `true` and `false` | If you wish to not receive security audit reports, you can opt-out of the experience entirely by setting the value to `false` | -(1) NuGetAuditMode defaulted to `direct` when it was introduced in [the .NET 8.0.100 SDK and VS 17.8](../release-notes/NuGet-6.8.md). In [.NET 9.0.100 SDK and VS 17.12](../release-notes/NuGet-6.12.md) the default changed to `all`. +Note: In .NET 8, the default value of NuGetAuditMode is `direct`. +Therefore, setting [SdkAnalysisLevel](/dotnet/core/project-sdk/msbuild-props#sdkanalysislevel) to `8.0.400` changes the default value of NuGetAuditMode accordingly. #### Audit Sources @@ -111,7 +111,7 @@ Alternatively, if you want to keep low and moderate vulnerabilities as warnings, ## `dotnet list package --vulnerable` Once a project is successfully restored, [`dotnet list package`](/dotnet/core/tools/dotnet-list-package) has a `--vulnerable` argument to filter the packages based on which packages have known vulnerabilities. -Note that `--include-transitive` is not default, so should be included +Note that `--include-transitive` is not default, so should be included. ## Actions when packages with known vulnerabilities are reported diff --git a/docs/reference/errors-and-warnings/NU1901-NU1904.md b/docs/reference/errors-and-warnings/NU1901-NU1904.md index 3f92de711..75ad6cba0 100644 --- a/docs/reference/errors-and-warnings/NU1901-NU1904.md +++ b/docs/reference/errors-and-warnings/NU1901-NU1904.md @@ -51,3 +51,6 @@ For example ` Date: Mon, 18 Nov 2024 17:02:04 -0800 Subject: [PATCH 882/988] Move updates for Solution Explorer and Solution PM UI to What's New section (#3361) --- docs/release-notes/NuGet-6.12.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/release-notes/NuGet-6.12.md b/docs/release-notes/NuGet-6.12.md index 6808aa972..834c64f75 100644 --- a/docs/release-notes/NuGet-6.12.md +++ b/docs/release-notes/NuGet-6.12.md @@ -43,6 +43,10 @@ NuGet 6.12.0 is available in the .NET 9.0.100 SDK. * Deprecate http usage: Promote from warning to error - [#13289](https://github.com/NuGet/Home/issues/13289) +* Bubble-up Known Vulnerability Indicators in Solution Explorer for Transitive Packages - [#13636](https://github.com/NuGet/Home/issues/13636) + +* Enable Transitive Dependencies and vulnerabilities for Solution-level in Visual Studio - [#13216](https://github.com/NuGet/Home/issues/13216) + ### Breaking changes * NuGetAudit should check transitive packages by default when the .NET 9 SDK is installed [#13293](https://github.com/NuGet/Home/issues/13293) @@ -51,14 +55,10 @@ NuGet 6.12.0 is available in the .NET 9.0.100 SDK. ### Issues fixed in this release -* Bubble-up Known Vulnerability Indicators in Solution Explorer for Transitive Packages - [#13636](https://github.com/NuGet/Home/issues/13636) - * Enable `dotnet nuget why` on non-SDK style projects - [#13576](https://github.com/NuGet/Home/issues/13576) * NuGetAuditSuppress for packages.config - [#13575](https://github.com/NuGet/Home/issues/13575) -* Enable Transitive Dependencies for Solution-level in Visual Studio - [#13216](https://github.com/NuGet/Home/issues/13216) - * Roll-out new breaking change process for SDK tools, respect SdkAnalysisLevel - [#13309](https://github.com/NuGet/Home/issues/13309) * Add property for toggling the to the previous NuGet resolver: RestoreUseLegacyDependencyResolver - [#13700](https://github.com/NuGet/Home/issues/13700) From 06a4c9111bdda03727ca274a02f5e9cd878910e8 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Tue, 19 Nov 2024 09:32:11 -0800 Subject: [PATCH 883/988] Release notes 6.12 improvements (#3359) --- docs/release-notes/NuGet-6.12.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/release-notes/NuGet-6.12.md b/docs/release-notes/NuGet-6.12.md index 834c64f75..2da03291e 100644 --- a/docs/release-notes/NuGet-6.12.md +++ b/docs/release-notes/NuGet-6.12.md @@ -35,13 +35,15 @@ NuGet 6.12.0 is available in the .NET 9.0.100 SDK. * Add new graph resolution algorithm for better performance with large graphs - [#13692](https://github.com/NuGet/Home/issues/13692) -* Owner profile hyperlinks needed in Details Pane of PM UI - [#13686](https://github.com/NuGet/Home/issues/13686) +* NuGetAudit raises warnings for vulnerable transitive packages by default when the .NET 9 SDK is installed [#13293](https://github.com/NuGet/Home/issues/13293) + +* Change NuGetAuditMode default from direct to all, raising warnings for vulnerable transitive packages for non-SDK style projects - [#13584](https://github.com/NuGet/Home/issues/13584) * Audit security vulnerabilities without adding nuget.org as package source - [#12698](https://github.com/NuGet/Home/issues/12698) -* Deprecate SHA-1 fingerprints usage in NuGet Sign commands in favor of SHA-2 family fingerprints [#13891](https://github.com/NuGet/Home/issues/13891) +* Owner profile hyperlinks needed in Details Pane of PM UI - [#13686](https://github.com/NuGet/Home/issues/13686) -* Deprecate http usage: Promote from warning to error - [#13289](https://github.com/NuGet/Home/issues/13289) +* Deprecate SHA-1 fingerprints usage in NuGet Sign commands in favor of SHA-2 family fingerprints [#13891](https://github.com/NuGet/Home/issues/13891) * Bubble-up Known Vulnerability Indicators in Solution Explorer for Transitive Packages - [#13636](https://github.com/NuGet/Home/issues/13636) @@ -49,9 +51,7 @@ NuGet 6.12.0 is available in the .NET 9.0.100 SDK. ### Breaking changes -* NuGetAudit should check transitive packages by default when the .NET 9 SDK is installed [#13293](https://github.com/NuGet/Home/issues/13293) - -* Change NuGetAuditMode default to all for non-SDK style projects - [#13584](https://github.com/NuGet/Home/issues/13584) +* Deprecate http usage: Promote from warning to error - [#13289](https://github.com/NuGet/Home/issues/13289) ### Issues fixed in this release From 09a979d11ae751b192b9a31f772d8ae4a0f9ee7b Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Tue, 19 Nov 2024 09:50:22 -0800 Subject: [PATCH 884/988] Clarify what a package being available means (#3360) --- docs/api/package-base-address-resource.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/api/package-base-address-resource.md b/docs/api/package-base-address-resource.md index f2bc08624..56416a5d6 100644 --- a/docs/api/package-base-address-resource.md +++ b/docs/api/package-base-address-resource.md @@ -36,9 +36,9 @@ All URLs found in the package content resource support the HTTP methods `GET` an ## Enumerate package versions -If the client knows a package ID and wants to discover which package versions the package source has available, the -client can construct a predictable URL to enumerate all package versions. This list is meant to be a "directory -listing" for the package content API mentioned below. +If the client knows a package ID and wants to discover which package versions the package source has available, the client can construct a predictable URL to enumerate all package versions. +Every version listed in this list must be available for download. +This list is meant to be a "directory listing" for the package content API mentioned below. > [!Note] > This list contains both listed and unlisted package versions. From 2540fb2ac62f597e62d69f593c245edda13b898f Mon Sep 17 00:00:00 2001 From: Shujing Zhang Date: Wed, 20 Nov 2024 01:50:49 +0800 Subject: [PATCH 885/988] Delete .openpublishing.build.ps1 (#3355) --- .openpublishing.build.ps1 | 17 ----------------- 1 file changed, 17 deletions(-) delete mode 100644 .openpublishing.build.ps1 diff --git a/.openpublishing.build.ps1 b/.openpublishing.build.ps1 deleted file mode 100644 index aadef7620..000000000 --- a/.openpublishing.build.ps1 +++ /dev/null @@ -1,17 +0,0 @@ -param( - [string]$buildCorePowershellUrl = "https://opbuildstorageprod.blob.core.windows.net/opps1container/.openpublishing.buildcore.ps1", - [string]$parameters -) -# Main -$errorActionPreference = 'Stop' - -# Step-1: Download buildcore script to local -echo "download build core script to local with source url: $buildCorePowershellUrl" -$repositoryRoot = Split-Path -Parent $MyInvocation.MyCommand.Definition -$buildCorePowershellDestination = "$repositoryRoot\.openpublishing.buildcore.ps1" -Invoke-WebRequest $buildCorePowershellUrl -OutFile "$buildCorePowershellDestination" - -# Step-2: Run build core -echo "run build core script with parameters: $parameters" -& "$buildCorePowershellDestination" "$parameters" -exit $LASTEXITCODE From e813422e6f0ba1abfeb204a51fd2b0a04c10c6f2 Mon Sep 17 00:00:00 2001 From: Jeff Kluge Date: Mon, 2 Dec 2024 15:24:28 -0800 Subject: [PATCH 886/988] Update NU1604.md (#3350) --- docs/reference/errors-and-warnings/NU1604.md | 50 +++++++++++++++++++- 1 file changed, 49 insertions(+), 1 deletion(-) diff --git a/docs/reference/errors-and-warnings/NU1604.md b/docs/reference/errors-and-warnings/NU1604.md index 5fef4363c..2c132af48 100644 --- a/docs/reference/errors-and-warnings/NU1604.md +++ b/docs/reference/errors-and-warnings/NU1604.md @@ -12,10 +12,51 @@ f1_keywords: # NuGet Warning NU1604 +## Missing Package Version + +> Project dependency 'PackageA' does not contain an inclusive lower bound. Include a lower bound in the dependency version to ensure consistent restore results. + +### Issue + +A project dependency doesn't define a version. + +This means that restore used the lowest available version. +Each restore will float downwards trying to find a lower version that can be used. +This means that restore goes online to check all sources each time instead of using the packages that already exist in the user package folder. + +### Solution + +Find the `PackageReference` item that does not define the `Version` attribute and add it: + +For example change from: + +> `` + +to: + +> `` + +If the project is using [NuGet's Central Package Management (CPM)](../../consume-packages/Central-Package-Management.md), you need to update the `` item in `Directory.Packages.props` and change from: + +> `` + +to: +> `` + +If a version is specified in a `` item and you still receive this warning, verify you've correctly [onboarded to central package management](../../consume-packages/Central-Package-Management.md#enabling-central-package-management). + +> [!Note] +> When using CPM and the file `Directory.Packages.props` is invalid, NU1604 is raised. + +## Missing Inclusive Lower Bound + > Project dependency 'PackageA' (<= 9.0.0) does not contain an inclusive lower bound. Include a lower bound in the dependency version to ensure consistent restore results. ### Issue -A project dependency doesn't define a lower bound.

    This means that restore did not find the *best match*. Each restore will float downwards trying to find a lower version that can be used. This means that restore goes online to check all sources each time instead of using the packages that already exist in the user package folder. +A project dependency doesn't define a lower bound. + +This means that restore did not find the *best match*. Each restore will float downwards trying to find a lower version that can be used. +This means that restore goes online to check all sources each time instead of using the packages that already exist in the user package folder. ### Solution Update the project's `PackageReference` `Version` attribute to include a lower bound. @@ -32,3 +73,10 @@ or > `` which implies a lower bound. + +If the project is using [NuGet's Central Package Management (CPM)](../../consume-packages/Central-Package-Management.md), you need to update the `` item in `Directory.Packages.props` and change from: + +> `` + +to: +> `` From 0d3df96e26048d1eb540c9befdf9bd45070d62dd Mon Sep 17 00:00:00 2001 From: Olia Gavrysh <31997351+OliaG@users.noreply.github.com> Date: Tue, 3 Dec 2024 11:35:29 -0800 Subject: [PATCH 887/988] Updated messaging according to reverting Audit default mode. (#3364) * Updated messaging according to reverting Audit default mode. * Update docs/release-notes/NuGet-6.12.md Co-authored-by: Andy Zivkovic --------- Co-authored-by: Andy Zivkovic --- docs/concepts/Auditing-Packages.md | 5 +---- docs/release-notes/NuGet-6.12.md | 3 +++ 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/concepts/Auditing-Packages.md b/docs/concepts/Auditing-Packages.md index c0ad794bb..873c7b345 100644 --- a/docs/concepts/Auditing-Packages.md +++ b/docs/concepts/Auditing-Packages.md @@ -43,13 +43,10 @@ We recommend that audit is configured at a repository level. | MSBuild Property | Default | Possible values | Notes | |------------------|---------|-----------------|-------| -| NuGetAuditMode | all | `direct` and `all` | If you'd like to audit top-level dependencies only, you can set the value to `direct`. NuGetAuditMode is not applicable for packages.config projects. | +| NuGetAuditMode | direct | `direct` and `all` | If you'd like to audit top-level dependencies only, you can set the value to `direct`. NuGetAuditMode is not applicable for packages.config projects. | | NuGetAuditLevel | low | `low`, `moderate`, `high`, and `critical` | The minimum severity level to report. If you'd like to see `moderate`, `high`, and `critical` advisories (exclude `low`), set the value to `moderate` | | NuGetAudit | true | `true` and `false` | If you wish to not receive security audit reports, you can opt-out of the experience entirely by setting the value to `false` | -Note: In .NET 8, the default value of NuGetAuditMode is `direct`. -Therefore, setting [SdkAnalysisLevel](/dotnet/core/project-sdk/msbuild-props#sdkanalysislevel) to `8.0.400` changes the default value of NuGetAuditMode accordingly. - #### Audit Sources Restore downloads a server's [`VulnerabilityInfo` resource](../api/vulnerability-info.md) to check against the list of packages each project is using. diff --git a/docs/release-notes/NuGet-6.12.md b/docs/release-notes/NuGet-6.12.md index 2da03291e..90ff0d250 100644 --- a/docs/release-notes/NuGet-6.12.md +++ b/docs/release-notes/NuGet-6.12.md @@ -7,6 +7,9 @@ ms.topic: conceptual # NuGet 6.12 Release Notes +> [!NOTE] +> In response to developers' feedback to ensure builds continuity when updating to .NET SDK 9, we have reverted the default value of NuGetAuditMode to `direct` in Visual Studio 17.12.3 and .NET 9.0.101. + NuGet distribution vehicles: | NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | From 6728686ee3c36b1a2200fa4432826161acbb8745 Mon Sep 17 00:00:00 2001 From: Eric StJohn Date: Tue, 10 Dec 2024 09:07:30 -0800 Subject: [PATCH 888/988] Add best practice to Package-Versioning.md (#3353) --- docs/concepts/Package-Versioning.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/concepts/Package-Versioning.md b/docs/concepts/Package-Versioning.md index 01a806a88..f4bde854e 100644 --- a/docs/concepts/Package-Versioning.md +++ b/docs/concepts/Package-Versioning.md @@ -116,9 +116,10 @@ When referring to package dependencies, NuGet supports using interval notation f | [1.0,2.0) | 1.0 ≤ x < 2.0 | Mixed inclusive minimum and exclusive maximum version | | (1.0) | invalid | invalid | -### Examples +### Best Practice -Always specify a version or version range for package dependencies in project files, `packages.config` files, and `.nuspec` files. Without a version or version range, NuGet 2.8.x and earlier chooses the latest available package version when resolving a dependency, whereas NuGet 3.x and later chooses the lowest package version. Specifying a version or version range avoids this uncertainty. +Always specify a version or version range for package dependencies in project files, `packages.config` files, and `.nuspec` files. Without a version or version range, when resolving a dependency, consistent restore results are not guaranteed. +Avoid specifying an upper bound to version ranges to packages you don't own unless you know of a compatibility problem. Upper bounds to version ranges harm adoption, discourage consumers from getting valuable updates to dependencies, and in some cases may lead them to use unsupported versions of dependencies. #### References in project files (PackageReference) From b3cd2766151a7d11406e65dac41c519a8f1e6646 Mon Sep 17 00:00:00 2001 From: Nigusu Solomon Yenework <59111203+Nigusu-Allehu@users.noreply.github.com> Date: Tue, 10 Dec 2024 15:17:49 -0800 Subject: [PATCH 889/988] Update Nu1302 documentation with more information (#3363) --- docs/reference/errors-and-warnings/NU1302.md | 39 ++++++++++++++++++-- 1 file changed, 36 insertions(+), 3 deletions(-) diff --git a/docs/reference/errors-and-warnings/NU1302.md b/docs/reference/errors-and-warnings/NU1302.md index 989cef448..8e2d44615 100644 --- a/docs/reference/errors-and-warnings/NU1302.md +++ b/docs/reference/errors-and-warnings/NU1302.md @@ -8,14 +8,47 @@ f1_keywords: - "NU1302" --- -# NuGet Warning NU1302 +# NuGet Error NU1302 > You are running the 'restore' operation with an 'HTTP' source: myHttpSource. NuGet requires HTTPS sources. To use an HTTP source, you must explicitly set 'allowInsecureConnections' to true in your NuGet.Config file. Please refer to https://aka.ms/nuget-https-everywhere for more information. ### Issue -`myHttpSource` is an insecure HTTP source. We recommend using HTTPS sources instead. +`myHttpSource` is an insecure HTTP source. We recommend using an HTTPS source instead. ### Solution -This can be fixed either by removing the HTTP source or disabling HTTP Errors for the specific source by using `allowInsecureConnections` option in your [NuGet config file](../../reference/nuget-config-file.md). +#### Option 1: Update the Source to Use HTTPS + +If possible, update the package source to use `https://` instead of `http://`: + +```xml + + + + + +``` + +#### Option 2: Allow Insecure Connections (If Necessary) + +If the source must remain HTTP, explicitly allow insecure connections by adding the `AllowInsecureConnections` flag in the `NuGet.Config`: + +```xml + + + + + +``` + +#### Option 3: Consult SDK Analysis Level + +The [`SdkAnalysisLevel`](/dotnet/core/project-sdk/msbuild-props#sdkanalysislevel) property in your project can serve as a temporary workaround for managing HTTP sources. +If additional time is needed to resolve the HTTP error, you can lower the `SdkAnalysisLevel` to suppress errors temporarily. +Here's how it functions: + +- For SDK Analysis Level value **below 9.0.100**, using HTTP sources triggers a warning ([NU1803](NU1803.md)). +- Starting with SDK Analysis Level **9.0.100 or higher**, HTTP sources result in an error (NU1302) unless `AllowInsecureConnections` is explicitly enabled. + + From 3087932eda7231e7d21e06da4ca647bc6b1ed2e7 Mon Sep 17 00:00:00 2001 From: Donnie Goodson <49205731+donnie-msft@users.noreply.github.com> Date: Tue, 7 Jan 2025 15:27:55 -0800 Subject: [PATCH 890/988] Update NuGet-6.12 Release Notes for 6.12.3 (#3378) --- docs/release-notes/NuGet-6.12.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/docs/release-notes/NuGet-6.12.md b/docs/release-notes/NuGet-6.12.md index 90ff0d250..18572d668 100644 --- a/docs/release-notes/NuGet-6.12.md +++ b/docs/release-notes/NuGet-6.12.md @@ -24,6 +24,14 @@ NuGet distribution vehicles: * VS PM UI shows warning icon about package vulnerability even after upgrade [#13866](https://github.com/NuGet/Home/issues/13866) * dotnet nuget why reports missing argument, even though it ran [#13908](https://github.com/NuGet/Home/issues/13908) +## Summary: What's New in 6.12.3 + +NuGet 6.12.3 is available in Visual Studio 17.12.4. + +### Issues fixed in this release + +* Small Solution PM UI size can cause a System.ArgumentException SolutionView.ListView_SizeChanged - [#13928](https://github.com/NuGet/Home/issues/13928) + ## Summary: What's New in 6.12.1 NuGet 6.12.1 is available in Visual Studio 17.12.0 and the .NET 9.0.101 SDK. From caaf35909af2a9fbc606c226a1dab8051d4d5d9e Mon Sep 17 00:00:00 2001 From: Olia Gavrysh <31997351+OliaG@users.noreply.github.com> Date: Wed, 8 Jan 2025 17:24:44 -0800 Subject: [PATCH 891/988] Adding No README chapter (#3381) * Adding No README chapter * Minor update * Updated text to address review comments --- docs/resources/NuGet-FAQ.yml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/docs/resources/NuGet-FAQ.yml b/docs/resources/NuGet-FAQ.yml index 240020b0f..264903b2c 100644 --- a/docs/resources/NuGet-FAQ.yml +++ b/docs/resources/NuGet-FAQ.yml @@ -179,3 +179,12 @@ sections: If the `target` has been modified manually, NuGet might not be able to detect that it needs removed when migrating. If your project is `PackageReference` and you still have this target in project file, it should be safe to remove. + + - question: | + There is no README in Visual Studio NuGet Package Manager for the selected package. + answer: | + If you see the message "There is no README available for the selected package version" in Visual Studio NuGet Package Manager, that means that the selected version of the NuGet package does not have an embedded README file. + - If this is not the latest version of the package, consider checking the latest version. + - If the latest version doesn't have the README file embedded either, and you are not the maintainer of this package, consider filing an issue or contacting the maintainer to request a README. + - If you are the maintainer of the package, here is the guide on [how to embed the README in your package](https://aka.ms/nuget/readme). Please note that if you have added the README file on NuGet.org but didn't embed it in your package, the README will not be shown in Visual Studio. + From d0bb0cd9b52ec846a06caa7b471a58120a7ce753 Mon Sep 17 00:00:00 2001 From: Alex Czarnick <25237790+aczarnick@users.noreply.github.com> Date: Tue, 28 Jan 2025 19:33:23 -0600 Subject: [PATCH 892/988] Add Pre-Release Floating Version Documentation (#3385) --- docs/concepts/Dependency-Resolution.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/concepts/Dependency-Resolution.md b/docs/concepts/Dependency-Resolution.md index 0f7da2b60..81cb86f50 100644 --- a/docs/concepts/Dependency-Resolution.md +++ b/docs/concepts/Dependency-Resolution.md @@ -63,6 +63,7 @@ When using a floating version, NuGet resolves the highest version of a package t | 1.1.* | 1.1.0
    1.1.1
    1.1.2-alpha
    1.2.0-alpha | 1.1.1 | The highest stable version that respects the specified pattern.| | \*-\* | 1.1.0
    1.1.1
    1.1.2-alpha
    1.3.0-beta | 1.3.0-beta | The highest version including the not stable versions. | Available in Visual Studio version 16.6, NuGet version 5.6, .NET Core SDK version 3.1.300 | | 1.1.\*-\* | 1.1.0
    1.1.1
    1.1.2-alpha
    1.1.2-beta
    1.3.0-beta | 1.1.2-beta | The highest version respecting the pattern and including the not stable versions. | Available in Visual Studio version 16.6, NuGet version 5.6, .NET Core SDK version 3.1.300 | +| 1.2.0-rc.* | 1.1.0
    1.2.0-rc.1
    1.2.0-rc.2
    1.2.0 | 1.2.0 | Despite this being a version range with a prerelease part, stables are allowed if they match the stable part. Given that 1.2.0 > 1.2.0-rc.2, it is chosen. | | > [!Note] > Floating version resolution does not take into account whether or not a package is listed. From 415d518bc7f1e482d9b3f2e20e76f1b70def0956 Mon Sep 17 00:00:00 2001 From: 100tomer <43668725+100tomer@users.noreply.github.com> Date: Sat, 1 Feb 2025 03:45:39 +0200 Subject: [PATCH 893/988] Added RepoFlow, which is a new package management platform that supports NuGet and other package types. (#3386) --- docs/hosting-packages/Overview.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/hosting-packages/Overview.md b/docs/hosting-packages/Overview.md index b016cef0d..a19316165 100644 --- a/docs/hosting-packages/Overview.md +++ b/docs/hosting-packages/Overview.md @@ -39,5 +39,6 @@ There are also several other NuGet hosting products such as [Azure Artifacts](ht - [ProGet](https://inedo.com/proget) from Inedo - [Sleet](https://github.com/emgarten/sleet), an open-source NuGet V3 static feed generator - [TeamCity](https://www.jetbrains.com/teamcity/) from JetBrains. +- [RepoFlow](https://www.repoflow.io), a simple and easy-to-use package management platform. Regardless of how packages are hosted, you access them by adding them to the list of available sources in `NuGet.Config`. This can be done in Visual Studio as described in [Package Sources](../consume-packages/install-use-packages-visual-studio.md#package-sources), or from the command line using [`nuget sources`](../reference/cli-reference/cli-ref-sources.md). The path to a source can be a local folder pathname, a network name, or a URL. From 300a248589a4b12fcee0f04fed404ee3846b3c19 Mon Sep 17 00:00:00 2001 From: fuixx217 Date: Fri, 31 Jan 2025 20:46:55 -0500 Subject: [PATCH 894/988] Add an AzureDevOps example with the sources command (#3380) --- docs/reference/cli-reference/cli-ref-sources.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/reference/cli-reference/cli-ref-sources.md b/docs/reference/cli-reference/cli-ref-sources.md index 827cdb3c4..56935e51b 100644 --- a/docs/reference/cli-reference/cli-ref-sources.md +++ b/docs/reference/cli-reference/cli-ref-sources.md @@ -107,5 +107,7 @@ nuget sources Enable -Name "nuget.org" nuget sources add -name foo.bar -source C:\NuGet\local -username foo -password bar -StorePasswordInClearText -configfile %AppData%\NuGet\my.config +nuget sources add -name MyAzureDevOpsSource -source "https://pkgs.dev.azure.com/yourorgname/yourprojectname/_packaging/yourfeedname/nuget/v3/index.json" -username ignored -password + nuget sources Update -Name "nuget.org" -ProtocolVersion 3 ``` From 778b8d4462c8cc3c8c585f03107226e92024d62c Mon Sep 17 00:00:00 2001 From: Juergen Gutsch Date: Mon, 3 Feb 2025 18:11:03 +0100 Subject: [PATCH 895/988] Adding CLI command to create a Directory.Packages.props (#3387) --- docs/consume-packages/Central-Package-Management.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docs/consume-packages/Central-Package-Management.md b/docs/consume-packages/Central-Package-Management.md index 06890cf72..d24d79b0c 100644 --- a/docs/consume-packages/Central-Package-Management.md +++ b/docs/consume-packages/Central-Package-Management.md @@ -38,6 +38,11 @@ Central package management applies to all ``-based MSBuild pro To get started with central package management, you must create a `Directory.Packages.props` file at the root of your repository and set the MSBuild property `ManagePackageVersionsCentrally` to `true`. +You can create it manually or you can use the dotnet CLI: +``` shell +dotnet new packagesprops +``` + Inside, you then define each of the respective package versions required of your projects using `` elements that define the package ID and version. From 63ac1d5520745cc8d6078b98d3754c2bddf64744 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Tue, 4 Feb 2025 15:38:57 -0800 Subject: [PATCH 896/988] Transitive pinning and pack (#3388) --- .../Central-Package-Management.md | 41 +++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/docs/consume-packages/Central-Package-Management.md b/docs/consume-packages/Central-Package-Management.md index d24d79b0c..029b2fad7 100644 --- a/docs/consume-packages/Central-Package-Management.md +++ b/docs/consume-packages/Central-Package-Management.md @@ -122,6 +122,7 @@ For an idea of how central package management may look like, refer to our [sampl You can automatically override a transitive package version even without an explicit top-level `` by opting into a feature known as transitive pinning. This promotes a transitive dependency to a top-level dependency implicitly on your behalf when necessary. +Note that downgrades are allowed when transitive pinning a package. If you attempt to pin a package to a lower version than the one requested by your dependencies, restore will raise a [NU1109](../reference/errors-and-warnings/NU1109.md) error. You can enable this feature by setting the MSBuild property `CentralPackageTransitivePinningEnabled` to `true` in a project or in a `Directory.Packages.props` or `Directory.Build.props` import file: @@ -132,6 +133,45 @@ or `Directory.Build.props` import file: ``` +### Transitive pinning and pack + +When a package is transitively pinned, your project uses a higher than the one requested by your dependencies. +If you create a package from your project, in order to ensure that your package will work, NuGet will promote the transitively pinned dependencies to explicit dependencies in the nuspec. + +In the following example, `PackageA 1.0.0` has a dependency on `PackageB 1.0.0`. + +```xml + + + + + + +``` + +```xml + + + true + net6.0 + + + + + +``` + +When you use the pack command to create a package, both packages will appear in the dependency group. + +```xml + + + + +``` + +Because of this, the use of transitive pinning should be carefully evaluated when authoring a library as it may lead to dependencies you did not expect. + ## Overriding package versions You can override an individual package version by using the `VersionOverride` property on a `` item. This overrides any `` @@ -181,6 +221,7 @@ If you'd like to disable central package management for any a particular project ``` ## Global Package References + > [!Note] > This feature is only available in Visual Studio 2022 17.4 or higher, .NET SDK 7.0.100.preview7 or higher, and NuGet 6.4 or higher. From f204fb6da39534a7b07eb5ae9adfab0b472a4d50 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Tue, 4 Feb 2025 16:27:30 -0800 Subject: [PATCH 897/988] Document the project.json migrator (#3389) --- docs/archive/media/project-json-migrator.png | Bin 0 -> 33829 bytes docs/archive/project-json-and-uwp.md | 3 ++- docs/archive/project-json-impact.md | 3 ++- docs/archive/project-json.md | 17 +++++++++++++++-- 4 files changed, 19 insertions(+), 4 deletions(-) create mode 100644 docs/archive/media/project-json-migrator.png diff --git a/docs/archive/media/project-json-migrator.png b/docs/archive/media/project-json-migrator.png new file mode 100644 index 0000000000000000000000000000000000000000..4328dfa7f7d903995913f7efdc34a069794a3519 GIT binary patch literal 33829 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�>oha6|J9dP*UEn>P?^PA;Mc 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 Y#}RTe>veiL6!;}0sUT4y_BP=E0c(f*SpWb4 literal 0 HcmV?d00001 diff --git a/docs/archive/project-json-and-uwp.md b/docs/archive/project-json-and-uwp.md index b36ab5d20..0d88aa35a 100644 --- a/docs/archive/project-json-and-uwp.md +++ b/docs/archive/project-json-and-uwp.md @@ -10,7 +10,8 @@ ms.topic: conceptual # project.json and UWP > [!Important] -> This content is deprecated. Projects should use either the `packages.config` or PackageReference formats. +> This content is deprecated. Projects should use the PackageReference formats. +> Learn how to [migrate your project.json project to PackageReference](./project-json.md#migrate-projectjson-to-packagereference). This document describes the package structure that employs features in NuGet 3+ (Visual Studio 2015 and later). The `minClientVersion` property of your `.nuspec` can be used to state that you require the features described here by setting it to 3.1. diff --git a/docs/archive/project-json-impact.md b/docs/archive/project-json-impact.md index 3f171f019..23aae4fc2 100644 --- a/docs/archive/project-json-impact.md +++ b/docs/archive/project-json-impact.md @@ -10,7 +10,8 @@ ms.topic: conceptual # Impact of project.json when creating packages > [!Important] -> This content is deprecated. Projects should use either the `packages.config` or PackageReference formats. +> This content is deprecated. Projects should use the PackageReference formats. +> Learn how to [migrate your project.json project to PackageReference](./project-json.md#migrate-projectjson-to-packagereference). The `project.json` system used in NuGet 3+ affects package authors in several ways as described in the following sections. diff --git a/docs/archive/project-json.md b/docs/archive/project-json.md index ec21cf7e0..4b6243821 100644 --- a/docs/archive/project-json.md +++ b/docs/archive/project-json.md @@ -10,9 +10,10 @@ ms.topic: reference # project.json reference > [!Important] -> This content is deprecated. Projects should use either the `packages.config` or PackageReference formats. +> This content is deprecated. Projects should use the PackageReference formats. +> Learn how to [migrate your project.json project to PackageReference](#migrate-projectjson-to-packagereference). -*NuGet 3.x+* +*NuGet 3.x* The `project.json` file maintains a list of packages used in a project, known as a package management format. It supersedes `packages.config` but is in turn superseded by [PackageReference](../consume-packages/package-references-in-project-files.md) with NuGet 4.0+. @@ -37,6 +38,18 @@ The [`project.lock.json`](#projectlockjson) file (described below) is also used } ``` +## Migrate project.json to PackageReference + +The migration between project.json and PackageReference is straightforward. The easiest way to do it to use the built-in migrator in the latest Visual Studio 2022, Update 14. + +1. Load the project.json project in Visual Studio. +1. Go to the solution explorer of the project.json project and find the dependencies node. +1. Click `Migrate project.json to PackageReference...`! + +![Migrating from project.json to PackageReference](media/project-json-migrator.png) + +Alternatively, you may use the [dotnet migrate](/dotnet/core/tools/dotnet-migrate), or do the migration manually by taking all of the content from the project.json file and replacing it with the equivalent [PackageReference syntax](../consume-packages/Package-References-in-Project-Files.md). + ## Dependencies Lists the NuGet package dependencies of your project in the following form: From 487e05961c0a8eccda5555a47eb2f38c365c3f5d Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Thu, 6 Feb 2025 10:48:12 -0800 Subject: [PATCH 898/988] Document package pruning (#3393) --- docs/TOC.md | 3 + .../Package-References-in-Project-Files.md | 68 ++++++++++++++++--- docs/reference/Errors-and-Warnings.md | 2 +- docs/reference/errors-and-warnings/NU1508.md | 2 +- docs/reference/errors-and-warnings/NU1509.md | 28 ++++++++ docs/reference/errors-and-warnings/NU1510.md | 25 +++++++ docs/reference/errors-and-warnings/NU1511.md | 27 ++++++++ 7 files changed, 144 insertions(+), 11 deletions(-) create mode 100644 docs/reference/errors-and-warnings/NU1509.md create mode 100644 docs/reference/errors-and-warnings/NU1510.md create mode 100644 docs/reference/errors-and-warnings/NU1511.md diff --git a/docs/TOC.md b/docs/TOC.md index a1cc9d343..e2a9f438b 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -185,6 +185,9 @@ ### [NU1506](reference/errors-and-warnings/NU1506.md) ### [NU1507](reference/errors-and-warnings/NU1507.md) ### [NU1508](reference/errors-and-warnings/NU1508.md) +### [NU1509](reference/errors-and-warnings/NU1509.md) +### [NU1510](reference/errors-and-warnings/NU1510.md) +### [NU1511](reference/errors-and-warnings/NU1511.md) ### [NU1601](reference/errors-and-warnings/NU1601.md) ### [NU1602](reference/errors-and-warnings/NU1602.md) ### [NU1603](reference/errors-and-warnings/NU1603.md) diff --git a/docs/consume-packages/Package-References-in-Project-Files.md b/docs/consume-packages/Package-References-in-Project-Files.md index 15d372a96..1476382ff 100644 --- a/docs/consume-packages/Package-References-in-Project-Files.md +++ b/docs/consume-packages/Package-References-in-Project-Files.md @@ -61,7 +61,7 @@ This may be useful, if you reference projects which are PackageReference styled ## PackageReference and sources -In PackageReference projects, the transitive dependency versions are resolved at restore time. As such, in PackageReference projects all sources need to be available for all restores. +In PackageReference projects, the transitive dependency versions are resolved at restore time. As such, in PackageReference projects all sources need to be available for all restores. ## Floating Versions @@ -285,7 +285,7 @@ To suppress a warning project wide, consider doing: ``` -Sometimes warnings apply only to a certain package in the graph. We can choose to suppress that warning more selectively by adding a `NoWarn` on the PackageReference item. +Sometimes warnings apply only to a certain package in the graph. We can choose to suppress that warning more selectively by adding a `NoWarn` on the PackageReference item. ```xml @@ -307,15 +307,15 @@ When in Visual Studio, you can also [suppress warnings](/visualstudio/ide/how-to Input to NuGet restore is a set of `PackageReference` items from the project file (top-level or direct dependencies) and the output is a full closure of all the package dependencies including transitive dependencies. NuGet tries to always produce the same full closure of package dependencies if the input PackageReference list has not changed. However, there are some scenarios where it is unable to do so. For example: -* When you use floating versions like ``. While the intention here is to float to the latest version on every restore of packages, there are scenarios where users require the graph to be locked to a certain latest version and float to a later version, if available, upon an explicit gesture. -* A newer version of the package matching PackageReference version requirements is published. E.g. +- When you use floating versions like ``. While the intention here is to float to the latest version on every restore of packages, there are scenarios where users require the graph to be locked to a certain latest version and float to a later version, if available, upon an explicit gesture. +- A newer version of the package matching PackageReference version requirements is published. E.g. - * Day 1: if you specified `` but the versions available on the + - Day 1: if you specified `` but the versions available on the NuGet repositories were 4.1.0, 4.2.0 and 4.3.0. In this case, NuGet would have resolved to 4.1.0 (nearest minimum version) - * Day 2: Version 4.0.0 gets published. NuGet will now find the exact match and start resolving to 4.0.0 + - Day 2: Version 4.0.0 gets published. NuGet will now find the exact match and start resolving to 4.0.0 -* A given package version is removed from the repository. Though nuget.org does not allow package deletions, not all package repositories have this constraint. This results in NuGet finding the best match when it cannot resolve to the deleted version. +- A given package version is removed from the repository. Though nuget.org does not allow package deletions, not all package repositories have this constraint. This results in NuGet finding the best match when it cannot resolve to the deleted version. ### Enabling the lock file @@ -329,12 +329,13 @@ In order to persist the full closure of package dependencies you can opt-in to t ``` -If this property is set, NuGet restore will generate a lock file - `packages.lock.json` file at the project root directory that lists all the package dependencies. +If this property is set, NuGet restore will generate a lock file - `packages.lock.json` file at the project root directory that lists all the package dependencies. > [!Note] > Once a project has `packages.lock.json` file in its root directory, the lock file is always used with restore even if the property `RestorePackagesWithLockFile` is not set. So another way to opt-in to this feature is to create a dummy blank `packages.lock.json` file in the project's root directory. ### `restore` behavior with lock file + If a lock file is present for project, NuGet uses this lock file to run `restore`. NuGet does a quick check to see if there were any changes in the package dependencies as mentioned in the project file (or dependent projects' files) and if there were no changes it just restores the packages mentioned in the lock file. There is no re-evaluation of package dependencies. If NuGet detects a change in the defined dependencies as mentioned in the project file(s), it re-evaluates the package graph and updates the lock file to reflect the new package closure for the project. @@ -366,6 +367,7 @@ You may also set this conditional MSBuild property in your project file: If locked mode is `true`, restore will either restore the exact packages as listed in the lock file or fail if you updated the defined package dependencies for the project after lock file was created. ### Make lock file part of your source repository + If you are building an application, an executable and the project in question is at the start of the dependency chain then do check in the lock file to the source code repository so that NuGet can make use of it during restore. However, if your project is a library project that you do not ship or a common code project on which other projects depend upon, you **should not** check in the lock file as part of your source code. There is no harm in keeping the lock file but the locked package dependencies for the common code project may not be used, as listed in the lock file, during the restore/build of a project that depends on this common-code project. @@ -388,7 +390,7 @@ You can control various behaviors of restore with lock file as described below: | NuGet.exe option | dotnet option | MSBuild equivalent option | Description | |:--- |:--- |:--- |:--- | | `-UseLockFile` |`--use-lock-file` | RestorePackagesWithLockFile | Opts into the usage of a lock file. | -| `-LockedMode` | `--locked-mode` | RestoreLockedMode | Enables locked mode for restore. This is useful in CI/CD scenarios where you want repeatable builds.| +| `-LockedMode` | `--locked-mode` | RestoreLockedMode | Enables locked mode for restore. This is useful in CI/CD scenarios where you want repeatable builds.| | `-ForceEvaluate` | `--force-evaluate` | RestoreForceEvaluate | This option is useful with packages with floating version defined in the project. By default, NuGet restore will not update the package version automatically upon each restore unless you run restore with this option. | | `-LockFilePath` | `--lock-file-path` | NuGetLockFilePath | Defines a custom lock file location for a project. By default, NuGet supports `packages.lock.json` at the root directory. If you have multiple projects in the same directory, NuGet supports project specific lock file `packages..lock.json` | @@ -458,3 +460,51 @@ You can leave off `$(AssetTargetFallback)` if you wish to overwrite, instead of > If you are using a [.NET SDK based project](/dotnet/core/sdk), appropriate `$(AssetTargetFallback)` values are configured and you do not need to set them manually. > > `$(PackageTargetFallback)` was an earlier feature that attempted to address this challenge, but it is fundamentally broken and *should* not be used. To migrate from `$(PackageTargetFallback)` to `$(AssetTargetFallback)`, simply change the property name. + +## PrunePackageReference + +The .NET Runtime is constantly evolving, with performance improvements and new APIs each release. +There is a lot of functionality that's available within the runtime, but also as packages, such as [System..Text.Json](https://www.nuget.org/packages/System.Text.Json). This can often lead to a `System.Text.Json 8.0.0` in a project targeting `.NET 9` or `.NET 8`. This dependency is unnecessary and the build conflict resolution would not use the assembly coming from the package since it's already available in the .NET Runtime. +Starting in in [NuGet version 6.13](..\release-notes\NuGet-6.13.md) and .NET SDK 9.0.200, `PrunePackageReference` enables the pruning of these packages at restore time for .NET SDK based projects. + +Package pruning is available as an opt-in feature with the .NET 9 SDK, and will be enabled by default for all `.NET` frameworks and `>= .NET Standard 2.0` starting with .NET 10 SDK. + +Package pruning is only available with the default dependency resolver as [released in 6.12](#nuget-dependency-resolver). + +### PrunePackageReference specification + +The list of packages to be pruned is defined with the `PrunePackageReference` item. + +| Attributes | Description | +|------------|-------------| +| Version | Specifies the maximum version to be pruned. `1.0.0` means that all packages up to and including 1.0.0 will be pruned. For `1.0.0`, `0.9.0` and `1.0.0` will be pruned, but `1.0.1` would not. | + +The following properties can be used to modify the pruning behavior. + +| PropertyName | Description | +|--------------|-------------| +| RestoreEnablePackagePruning | Enables package pruning for the packages specified with `PrunePackageReference`. This property is per target framework and the valid values are `true` and `false`. Defaults may differ based on the .NET SDK as defined above. | + +The .NET SDK predefines the list of packages to be pruned for you. + +### How PrunePackageReference works + +When a package is specified to be pruned during restore, it is removed from the dependency graph. This package is not downloaded and does not appear in any of the outputs of NuGet. When a package is pruned, there is a detailed verbosity message indicating that the package has been removed for the given target framework. + +Pruning is only supported for transitive packages, meaning packages that are referenced by other packages or projects. The following table illustrates various package pruning behaviors. + +| Dependency disposition | Behavior | +|-----------------|----------| +| Matches the ID of a transitive package coming through another package | Prune | +| Matches the ID of a transitive package coming through another project | Prune | +| Matches the ID of a direct `PackageReference` | Raise the [NU1510](../reference/errors-and-warnings/NU1510.md) warning and do not prune | +| Matches the ID of a `ProjectReference` | Raise the [NU1511](../reference/errors-and-warnings/NU1511.md) warning and do not prune | + +### PrunePackageReference applications + +The benefits of package pruning are two-fold: + +- Performance benefits, by virtue of reducing the number of packages within a dependency graph +- Reduction of false positives by component scanners such as `NuGetAudit` + +Pruning is particularly valuable when [auditing](./../concepts/Auditing-Packages.md) packages with `NuGetAuditMode` is set to `all`. If you are using the .NET 9, we recommend you try out pruning by setting `RestoreEnablePackagePruning` to `true`. diff --git a/docs/reference/Errors-and-Warnings.md b/docs/reference/Errors-and-Warnings.md index 11def614f..65977a512 100644 --- a/docs/reference/Errors-and-Warnings.md +++ b/docs/reference/Errors-and-Warnings.md @@ -43,7 +43,7 @@ NuGet supports the following configuration properties. | Group | Warning numbers | | --- | --- | -| Invalid input warnings | [NU1501](./errors-and-warnings/NU1501.md), [NU1502](./errors-and-warnings/NU1502.md), [NU1503](./errors-and-warnings/NU1503.md), [NU1504](./errors-and-warnings/NU1504.md), [NU1505](./errors-and-warnings/NU1505.md), [NU1506](./errors-and-warnings/NU1506.md), [NU1507](./errors-and-warnings/NU1507.md), [NU1508](./errors-and-warnings/NU1508.md) | +| Invalid input warnings | [NU1501](./errors-and-warnings/NU1501.md), [NU1502](./errors-and-warnings/NU1502.md), [NU1503](./errors-and-warnings/NU1503.md), [NU1504](./errors-and-warnings/NU1504.md), [NU1505](./errors-and-warnings/NU1505.md), [NU1506](./errors-and-warnings/NU1506.md), [NU1507](./errors-and-warnings/NU1507.md), [NU1508](./errors-and-warnings/NU1508.md), [NU1509](./errors-and-warnings/NU1509.md), [NU1510](./errors-and-warnings/NU1510.md), [NU1511](./errors-and-warnings/NU1511.md) | | Unexpected package version warnings | [NU1601](./errors-and-warnings/NU1601.md), [NU1602](./errors-and-warnings/NU1602.md), [NU1603](./errors-and-warnings/NU1603.md), [NU1604](./errors-and-warnings/NU1604.md), [NU1605](./errors-and-warnings/NU1605.md), [NU1606](./errors-and-warnings/NU1108.md), [NU1607](./errors-and-warnings/NU1107.md) | | Resolver conflict warnings | [NU1608](./errors-and-warnings/NU1608.md) | | Package fallback warnings | [NU1701](./errors-and-warnings/NU1701.md), [NU1702](./errors-and-warnings/NU1702.md), [NU1703](./errors-and-warnings/NU1703.md)| diff --git a/docs/reference/errors-and-warnings/NU1508.md b/docs/reference/errors-and-warnings/NU1508.md index 542939894..eb9f758aa 100644 --- a/docs/reference/errors-and-warnings/NU1508.md +++ b/docs/reference/errors-and-warnings/NU1508.md @@ -19,7 +19,7 @@ f1_keywords: Sometimes when adding `NuGetAuditSuppress` items, you may end up adding an item for a particular package multiple times. -MSBuild projects commonly import multiple `.props` and `.targets` files, so the duplicates might not be in the same file, but may be in included files, such as `Directory.Build.props`, `Directory.Packages.props`, or `Directory.Build.targets`. +MSBuild projects commonly import multiple `.props` and `.targets` files, so the duplicates might not be in the same file, but may be in imported files, such as `Directory.Build.props`, `Directory.Packages.props`, or `Directory.Build.targets`. ### Solution diff --git a/docs/reference/errors-and-warnings/NU1509.md b/docs/reference/errors-and-warnings/NU1509.md new file mode 100644 index 000000000..cae01fdd4 --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1509.md @@ -0,0 +1,28 @@ +--- +title: NuGet Warning NU1509 +description: NU1509 warning code +author: nkolev92 +ms.author: nikolev +ms.date: 02/04/2025 +ms.topic: reference +f1_keywords: + - "NU1509" +--- + +# NuGet Warning NU1509 + +## Scenario 1 + +> Duplicate 'PrunePackageReference' items found. Remove the duplicate items or use the Update functionality to ensure a consistent restore behavior. The duplicate 'PrunePackageReference' items are: X 1.0.0, X 2.0.0. + +### Issue + +Sometimes when adding `PrunePackageReference` items, you may end up adding an item for a particular package multiple times. + +MSBuild projects commonly import multiple `.props` and `.targets` files, so the duplicates might not be in the same file, but may be in imported files, such as `Directory.Build.props`, `Directory.Packages.props`, or `Directory.Build.targets`. + +The `.NET SDK` provides a of list `PrunePackageReference`, so the conflict may be happening because you have specified a `PrunePackageReference` or due to a bug with the `.NET SDK`. + +### Solution + +Remove the duplicate item, so that it's included exactly once. diff --git a/docs/reference/errors-and-warnings/NU1510.md b/docs/reference/errors-and-warnings/NU1510.md new file mode 100644 index 000000000..12666d58f --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1510.md @@ -0,0 +1,25 @@ +--- +title: NuGet Warning NU1510 +description: NU1510 warning code +author: nkolev92 +ms.author: nikolev +ms.date: 02/04/2025 +ms.topic: reference +f1_keywords: + - "NU1510" +--- + +# NuGet Warning NU1510 + +## Scenario 1 + +> PackageReference System.Text.Json 9.0.0 will not be pruned. Consider removing this package from your dependencies, as it is likely unnecessary. + +### Issue + +The package `System.Text.Json` has been specified for pruning through the [PrunePackageReference](../../consume-packages/Package-References-in-Project-Files.md#prunepackagereference) feature. +The `.NET SDK` generally specifies the list of packages to be pruned. The package is not needed as a direct PackageReference since the .NET runtime itself carries either the same or higher version of the assembly. + +### Solution + +Remove the PackageReference as it's unnecessary. diff --git a/docs/reference/errors-and-warnings/NU1511.md b/docs/reference/errors-and-warnings/NU1511.md new file mode 100644 index 000000000..c91ba031e --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1511.md @@ -0,0 +1,27 @@ +--- +title: NuGet Warning NU1511 +description: NU1511 warning code +author: nkolev92 +ms.author: nikolev +ms.date: 02/04/2025 +ms.topic: reference +f1_keywords: + - "NU1511" +--- + +# NuGet Warning NU1511 + +## Scenario 1 + +> A ProjectReference cannot be pruned, X. + +### Issue + +The project id `X` has been specified for pruning through the [PrunePackageReference](../../consume-packages/Package-References-in-Project-Files.md#prunepackagereference) feature. +Pruning of projects is not supported. + +### Solution + +- The `.NET SDK` generally specifies the list of packages to be pruned. It may mean that you have a project matching the id of a platform assembly. +In this scenario, change the name of the project. +- If the `PrunePackageReference` has been specified within your project, you may need to remove the `PrunePackageReference` From 75608993837e3f24052d847e769ea59845fef55d Mon Sep 17 00:00:00 2001 From: Jonatan Gonzalez Date: Fri, 7 Feb 2025 11:40:43 -0800 Subject: [PATCH 899/988] Add doc for ReadmeUriTemplate (#3382) * add new resource doc * Updated the implementation guide * remove extra line * Update URL placeholders to required --- docs/TOC.md | 1 + docs/api/implementation-guide.md | 5 +++ docs/api/overview.md | 1 + docs/api/readme-template-resource.md | 62 ++++++++++++++++++++++++++++ 4 files changed, 69 insertions(+) create mode 100644 docs/api/readme-template-resource.md diff --git a/docs/TOC.md b/docs/TOC.md index e2a9f438b..c604ec21e 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -128,6 +128,7 @@ #### [Package metadata](api/registration-base-url-resource.md) #### [Push and delete](api/package-publish-resource.md) #### [Push symbol packages](api/symbol-package-publish-resource.md) +#### [README URI](api/readme-template-resource.md) #### [Report abuse URL](api/report-abuse-resource.md) #### [Repository signatures](api/repository-signatures-resource.md) #### [Search](api/search-query-service-resource.md) diff --git a/docs/api/implementation-guide.md b/docs/api/implementation-guide.md index fdf9e7696..8168aa909 100644 --- a/docs/api/implementation-guide.md +++ b/docs/api/implementation-guide.md @@ -35,6 +35,7 @@ To assist authors of existing NuGet repositories keep up to date with NuGet's ne ||Added `packageTypes` query parameter to `SearchQueryService` requests| |2021|[Embedded readme](#embedded-files)| |2023|[PreAuthenticate authenticated requests](#url-structure-for-authenticated-feeds)
    [`VulnerabilityInfo` resource](#known-vulnerabilities-database-vulnerabilityinfo)| +|2025|[Enable embedded README downloads](#enable-embedded-readme-downloads)| ## Owner field @@ -140,3 +141,7 @@ In this case, every request to the service index will have additional latency, d While NuGet's V3 API was designed to work on a static file server, the search resource is the exception that always requires a dynamic web service to process requests. If you wish to host search, or indeed any other NuGet API resource, on different servers, in order to benefit from `HttpClientHandler`'s `PreAuthenticate`, you will need to use a reverse proxy to ensure all customer facing URLs in the service index meet the "same or subdirectory" rule. + +## Enable embedded README downloads + +A [new resource](./readme-template-resource.md) was documented for constructing a URL that can be used to download a README for a given package. This will allow client, like the Package Management UI in VS, to display the embedded README for packages which haven't been previously installed by the user. The client will construct this URL and attempt to download the README, using the response to the request to determine if a README is available. This means servers should expect multiple requests to the constructed endpoint as users navigate the PM UI. \ No newline at end of file diff --git a/docs/api/overview.md b/docs/api/overview.md index 2d15e8766..ecf2fd22c 100644 --- a/docs/api/overview.md +++ b/docs/api/overview.md @@ -61,6 +61,7 @@ Resource name | Required [PackageBaseAddress](package-base-address-resource.md) | yes | Get package content (.nupkg). [PackageDetailsUriTemplate](package-details-template-resource.md) | no | Construct a URL to access a package details web page. [PackagePublish](package-publish-resource.md) | yes | Push and delete (or unlist) packages. +[ReadmeUriTemplate](readme-template-resource.md) | no | Construct a URL to access a package's README. [RegistrationsBaseUrl](registration-base-url-resource.md) | yes | Get package metadata. [ReportAbuseUriTemplate](report-abuse-resource.md) | no | Construct a URL to access a report abuse web page. [RepositorySignatures](repository-signatures-resource.md) | no | Get certificates used for repository signing. diff --git a/docs/api/readme-template-resource.md b/docs/api/readme-template-resource.md new file mode 100644 index 000000000..565789ea7 --- /dev/null +++ b/docs/api/readme-template-resource.md @@ -0,0 +1,62 @@ +--- +title: README Uri Template, NuGet API +description: The README uri template allows clients to download the readme for a package, if available. +author: jgonz120 +ms.author: jongonza +ms.date: 1/6/2025 +ms.topic: reference +ms.reviewer: +--- + +# README Uri Template + +It is possible for a client to build a URL that can be used to download a README for a specific package. +This will enable the clients to render the package's README without downloading the entire package. + +The resource used for building this URL is the `ReadmeUriTemplate` resource found in the +[service index](service-index.md). + +## Versioning + +The following `@type` values are used: + +@type value | Notes +--------------------------------- | ----- +ReadmeUriTemplate/6.13.0 | The initial release + +## URL template + +The URL for the following API is the value of the `@id` property associated with one of the aforementioned +resource `@type` values. + +## HTTP methods + +The constructed URL must support the HTTP method `GET` + +## Construct the URL + +Given a known package ID and version, the client implementation can construct a URL to download the README. + +The value of the `@id` is a URL string containing any of the following placeholder tokens: + +### URL placeholders + +Name | Type | Required | Notes +----------- | ------- | -------- | ----- +`{lower_id}` | string | yes | The package ID, lowercased +`{lower_version}` | string | yes | The package version, lowercased + +Both `lower_id` and `lower_version` are lowercased using the rules implemented by .NET's +[`System.String.ToLowerInvariant()`](/dotnet/api/system.string.tolowerinvariant?view=netstandard-2.0#System_String_ToLowerInvariant&preserve-view=true) +method. + +The `lower_version` is the desired package version normalized using NuGet's version +[normalization rules](../concepts/package-versioning.md#normalized-version-numbers). This means that build metadata +that is allowed by the SemVer 2.0.0 specification must be excluded in this case. + +### Response body + +If the package has a readme, a 200 status code is returned. The response body will be the readme +content itself. + +If the package does not have a readme, a 404 status code is returned. From a72a2c2f8e807fe12c2a22406540536ae110d2c4 Mon Sep 17 00:00:00 2001 From: Nigusu Solomon Yenework <59111203+Nigusu-Allehu@users.noreply.github.com> Date: Fri, 7 Feb 2025 13:06:15 -0800 Subject: [PATCH 900/988] Document dotnet tools plugin usage (#3379) --- .../NuGet-Cross-Platform-Plugins.md | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/docs/reference/extensibility/NuGet-Cross-Platform-Plugins.md b/docs/reference/extensibility/NuGet-Cross-Platform-Plugins.md index 02428709d..061508024 100644 --- a/docs/reference/extensibility/NuGet-Cross-Platform-Plugins.md +++ b/docs/reference/extensibility/NuGet-Cross-Platform-Plugins.md @@ -47,11 +47,18 @@ Under this version, the requirements are as follows: - Adhere to the negotiated plugin protocol version. - Respond to all requests within a reasonable time period. - Honor cancellation requests for any in-progress operation. +- **Starting with NuGet 6.13, executable plugins (including global .NET tools) must follow these requirements:** + - Naming Convention: Must follow the pattern `nuget-plugin-*`. + - Windows: + - Must be either `.exe` or `.bat` files. + - Linux: + - Must have their executable permissions enabled. The technical specification is described in more detail in the following specs: - [NuGet Package Download Plugin](https://github.com/NuGet/Home/wiki/NuGet-Package-Download-Plugin) - [NuGet cross plat authentication plugin](https://github.com/NuGet/Home/wiki/NuGet-cross-plat-authentication-plugin) +- [Dotnet Tools Plugins](https://github.com/NuGet/Home/blob/dev/accepted/2024/support-nuget-authentication-plugins-dotnet-tools.md) ## Client - Plugin interaction @@ -70,7 +77,14 @@ CI/CD scenarios and power users can use environment variables to override the be - `NUGET_NETFX_PLUGIN_PATHS` - defines the plugins that will be used by the .NET Framework based tooling (NuGet.exe/MSBuild.exe/Visual Studio). Takes precedence over `NUGET_PLUGIN_PATHS`. (NuGet version 5.3+ only) - `NUGET_NETCORE_PLUGIN_PATHS` - defines the plugins that will be used by the .NET Core based tooling (dotnet.exe). Takes precedence over `NUGET_PLUGIN_PATHS`. (NuGet version 5.3+ only) -- `NUGET_PLUGIN_PATHS` - defines the plugins that will be used for that NuGet process, priority preserved. If this environment variable is set, it overrides the convention based discovery. Ignored if either of the framework specific variables is specified. +- `NUGET_PLUGIN_PATHS` + - defines the plugins that will be used for that NuGet process, priority preserved. If this environment variable is set, it overrides the convention based discovery. Ignored if either of the framework specific variables is specified. + + - **Starting with NuGet 6.13:** + - Can specify paths to executable plugin files, including .NET tools plugins. + - Supports both file paths and folders containing plugin files. + - **Windows:** Supports `.exe` and `.bat` files. + - **Linux:** Requires executable permissions (`chmod +x`). - User-location, the NuGet Home location in `%UserProfile%/.nuget/plugins`. This location cannot be overriden. A different root directory will be used for .NET Core and .NET Framework plugins. | Framework | Root discovery location | From 8d4504e4a6604ba8da39c4f705b9755c592e4b84 Mon Sep 17 00:00:00 2001 From: Olia Gavrysh <31997351+OliaG@users.noreply.github.com> Date: Fri, 7 Feb 2025 13:39:57 -0800 Subject: [PATCH 901/988] Add README feature description (#3391) * Add files via upload * Update install-use-packages-visual-studio.md * Update docs/consume-packages/install-use-packages-visual-studio.md Co-authored-by: Donnie Goodson <49205731+donnie-msft@users.noreply.github.com> * Update docs/consume-packages/install-use-packages-visual-studio.md Co-authored-by: Donnie Goodson <49205731+donnie-msft@users.noreply.github.com> --------- Co-authored-by: Donnie Goodson <49205731+donnie-msft@users.noreply.github.com> --- .../install-use-packages-visual-studio.md | 4 +++- .../media/package-manager-package-details.png | Bin 0 -> 239401 bytes .../media/package-manager-package-readme.png | Bin 0 -> 362899 bytes 3 files changed, 3 insertions(+), 1 deletion(-) create mode 100644 docs/consume-packages/media/package-manager-package-details.png create mode 100644 docs/consume-packages/media/package-manager-package-readme.png diff --git a/docs/consume-packages/install-use-packages-visual-studio.md b/docs/consume-packages/install-use-packages-visual-studio.md index 1084f44fc..361bd0a4a 100644 --- a/docs/consume-packages/install-use-packages-visual-studio.md +++ b/docs/consume-packages/install-use-packages-visual-studio.md @@ -53,7 +53,9 @@ To find and install a NuGet package with Visual Studio, follow these steps: - Select a package to see detailed package information. The details pane on the right appears and enables you to select a version to install. - ![Screenshot showing the NuGet Package Manager window with the Browse tab selected.](media/package-manager-browse-tab.png) + ![Screenshot showing the NuGet Package Manager window with the Browse tab, details pane, and "Package Details" tab selected.](media/package-manager-package-details.png) + You can see package metadata, information about the owner(s), author(s), license, etc., in the Package Details tab and the package README file (if it is provided by the package author) in the README tab. + ![Screenshot showing the NuGet Package Manager window with the README tab selected.](media/package-manager-package-readme.png) 1. In the right pane, select a **Version** from the dropdown list. If you want to include prerelease versions in the **Version** list, select **Include prerelease**. diff --git a/docs/consume-packages/media/package-manager-package-details.png b/docs/consume-packages/media/package-manager-package-details.png new file mode 100644 index 0000000000000000000000000000000000000000..4ec7cc9a718ff379d19e71c91b3d9cca3851faf5 GIT binary patch literal 239401 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

    2~`-UJ*+Z*&M7yANOheVYo*#Kl& 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�MC3yt6-TdN!R&^pTB_)J}3vyV9fkjdRHxS|arIm$@KyJS<2|)4& zg?kyc44=#`DgY}SZpi!fAe8CHEu{CX{ZCi~=m4#ecd4WMk9Fn|s8E5zGnQC-!&#*#7hkx5)kyDFi*XR3EMmv`9ADj{UBH8wI?mgH~r|$BHQQtMmux@lr~raYjf_gtU^lQH7#vN z!|<5SaP6(CNkIq-c0s)JEP26!Y}(hcZOYP0j1v*fryN7b zxed@2;$B4fTmZLLV)1xAgh`YfqH^X}d3(T|`;J+n;eR=AXRz*+{GXf6cPHibbydD5s zA$k9j5l#I-w3I`Qv9?;>q?S4BK+u~}@d3#I!87UkU_B`>NVwY)KA|hp|LJfYugsH4 zrLl9Orq>q8(kJA=0iheh3N$L;nr&9L%Rv&{pyY2B@&CGoq`ToL9f^uqhgQ${t&CHO z*3y!c@;OrB;XGX+pB3+XLh9rGAEy%xsRZiM*d+iL`>~%=sGQ@+Xt?w97?2V?xc~3h z2OpDd(E+P{Gn$*Lc2@K){V_Y$`}GMU737m|MPzu*$XL>nX5(WA^>%QV_hc3~k&{ov zrkyxD70`k%p&r>dJ;Y-=R$2a@01*4KxDWjo_A%(yvGbO{a;eDc@4{UByTy!upB|dW zf8X;DuM=FTu+SB1@_KpKo@)M}6PoPc%-^H-hrS5DDc$)=rgJW#D@pt(E1PlZ^}jGy zLH_evZ}Ru&uJb*6LMNt*oe`cI! za!HQ4nKT#vZ7qOP0BwKm)f?%zeCm82?%gm_OuMhxn&d;Oai5tP7WPY>X1nmd1`U<- z&f>j+5?ppj1>C*(+VI4s*FpUw=ZqS#7dAIaPd~E5TLk$vmM%XZ6BE1mApd#}y=tfT zvIAArZh(S`TOM(2A#Q;zMpQB;CQwlV&}!7}Q#f}w+3=J24dpGBsN)TN4w~%=L-WBO zI{9zV?eTm7e=u8T-j_tS&L>|IX_@h-+vx%o0*mbOQ}dEKHE#>6jChh#6nv||{Z!!% z#NE_=ztI$Zff?+I42^wA+&0Sbxq+wK9EC)H2d9D)Gr$B8icqqrQjAFm1T+~Guu)YMf@;40 zf_a+z@w;00>heg@tG>~9`p(1%K?HW~_RAwB$vn!I!j_9q(f9 z2d%MXj)4vqQUwo z_HWjvT=v*M;r+*8UFv)}c^Q)$+_dFTI@PGx4!IZX?9{X2nD!mYOX6bhT@6PqHrB{r zUz&F1@WxuYnwadHLic0 zM!uii$(+=!uBUE;-5b0Wd$+t~)%D0#`diO!*|$FQ|Gt&UeRycZLt?ZbNCD*hNVm#& z`tfw87h)d7!oPrIfh#hx#N!1#{PzWXFZF>wurJ_4Z)2l9e=c($CVxo_$yC=+$n8`V zcE_7-c;a9+=e*TT>DJ4)6a&D`mpa{OzMpVWYVM}VCIy9@G~z<)OR}K%36xk1DEh1O zaM6-7Mh09#b>DwwvVrDN0=ft?BbN*FD&!>9*7T>0I{lN_-Gl=*56v5+RS-=_<=<)v zq&tzD&t#VbG!O4Buj(DH+yoR@ZjE_C(et*peOx=$G8^7l21yI8Rm2&fc|uW#;tuAT z=461VIKb1g=|FmC%f;pM(|X$fFQ3sxgZ+sngNvFk>eO=j8(GZbsIDx(i4}ZEu5vA> z!DLTaQXxC9Ie9zf&MN(bgv4z&k}RRrv}=87`ztZO`cvc;?wbU%T~Qow@d)Z}&hL#$ z#hvGAZBh1A(m!IfR0Fp&!$0WXz3uVxKcFM|cdPm>xHt}cC%^LF9^^MA9n6*gx8SGk zIHv&r+#&mSqxpRWF#Y`fE3f{@n*I{(!cP60llU!YP^bRaCiUOv1VcFNJXgx=^xDym zj*gE=_x;|%vGnb0Cr^#v0E6Y5Vod+v_dUMOQbt)@jUYd{J`+<%2QomLhSx%KpRu!K zw_WPzi`PC(9gN3txk0n|`#Rm*KH}ceQ(lIG_bM_do%7DjOYZz&(^L|euS(vvGGj4F zrgBEQ9+4d^W6zrzYD$isV&$9&s8+k^9o{_50|_vQmK&p4Y12+20pGUKD0PlFq-;*yt*88`FkqesW@lTiaUYvKBa zTmPjxInLw5Gr%Y--9rtL*)AXX)&BbSE&+Y(y4gdCdx=d~t_l($za=x$U^^?WQk(zp zHXiSEJtz~|g6n|amrdR!{Jiu*;)yd_Kem?E#Ly_9S{e3x!#)1vqX!9;pR_{_&0(tg z!66LUIp#d|k%e$^)xR-U{lY8^Ur5qc^-<&DX|%XeemvlbWr$#W^9IgIUk_ccAHzH zd6avCHN1M|1n#QAuucP*y@6*4Jjo}!DjbYTu~MX!%^t0!4!2_sNaFFmDk)Hb{SG#q zwfAZh*4n%hF?%7AyrHO6X0_6lZ)J2^}^#kW{ znQkeKnl=i_)cs`r^#A`m2cd4b0UO%#b=~J6Lw*`sh92^d#heCp^$3Zyehk=_-U;hP zgv3v}c-v1cf!j4259fZyuCONgX#(keBk{4QhKH08!@Ef~FOJ5(@&(7hn#R$^pAEeZ ze;=T?$LL(wSpMa|XW;ml7!S^Zoli*U+>LPx##q5Hb5oc)mBH9gpQ#e{b9~G8AaF8i zV-YT>vD?>C7iXO7@5BP)!Jl#)7Ae!PdyF z_iM&5KDbTnoUCe`tMx_uIhtXqaa)a#`c-ZL8?3g{u|H#~E9ns(tvX8UUs3LgIo(xaB@0D67ONPh z=UGd3bpnmo#DNDVUW(#KcPa!nd+GO@P-cR?#e<{X}i?owt{#VTQR~q^MWU%_b z_bMXaT7jtTb7_?%n9%&*nsvtfmGQ8RX`bdiJBCbrBlvL$XKGAnf#0x8Isb3B`Cq}{ zZ%iliLXJKgiijhLe|q?hFNvvvlK!d>bIu0wMMc&H@eaISA1wT*(+(Dt9=C zyqQ-z$yEkHob-Q7@BA;rT%6J}YuRk*w=5>?DYbWOoAWOEwy$-?AOByrCNECa$X%-Z zmC*q7R!*Nw{yDZtn|8gEt38nR{})?k)&qr^l6UcjeJ*uZRQSOctQY$Z_!fSA?aJT0 zR?Q>S+SNsAzeGdT%}z83LfN^~eV(qQi#@739S^g4V7B(8A~_e*F2_xx@;l-2`I{I0 zsmF&to`p#IMOB@vVEqsjGCNx%>0a$@yEM+$ATYmPER%>5s$k8PQ?ROEqyD}6D=q($$Fmnbe4XlC)P%U-PSpKYhFO&|=Ev z9OkoC-?M=q?u}qFrfOD?M%L6w$ ztVg{sRw`}J9E=R7{}|{3xVjc~GA)PMg?YFYCf||N{Ms_r@_|Wk-8-POoLhOcF^sU7 z@?a1_xPIRZO_iI?iJzI!9cF5N*&3FaTW1C7dDg_7qi{eMt$ESn z?mz)tcJa&Iint+0gmtmqLj_5a?kl76{V$5IW0{=RQk&u(m`p53+DG4Sj}m%Ge5H8`!+4JFTM+- zOIxT^G)g+4?1}KcLZ50BGL}sq;mK?w9)$;$Z4kf?gYMSPrw?o>=sxjMEJX=uvT0hr&N6v= zaeaW0jQ4@<-Jw(|3yV%g&8-G`$X-O7!w5d-T_gY=<5v#rHLpp<`}-F9z!p=gzN-Qs znfa5WDHP#!!tA8_>Dcdmi->66BeBPi$k2_wJW*AvAS3c7KlvV3%z2%-`>!aLDHE(p zS0vLNOKQ~V+xC@j`{#ZNc+mKoUw6f4tj}P79EgQE5WB1#TsFCq2;Wv6xK`D~C5fbi zz-Vw>GOq90s9zO?=23~B^9XyA+m1%&-SX1;TVtw2l32K;@f);rjy-X)O?++TvjcpX z{pOOjjM>z5+0G5ix#ecmqR!0EXqoRn$$j5Ijw&zV8f%7Ya(aZs#;yuTlz+rQMzjDo8VZA-YJVBFy8XDL zo`x=4Ph1t#;pD5f*P_gwrpzNAkX3u@*sJ!JwRV)c{k$J8-q%b`hakVnZN~M?!uFvB zT5tPKQB%VOUX69V?fI>aFFl{WDx6EZJ$sYsla!<2SArcX4=fNG{;M+M_$}M!X$8>T z=1;d4m&G?$x$S?f-xl9S2aAj5ezf42+80+fS-Y%dv_Z!uQ_YIA#gXLxS|Y4ghqzCvbp#7tJLmmK zy^)=o0`5T3Xl?n==$E~ChFb^I56j|Avd#@4prEpHoumsgLl28%h}Z~np@xX~XYzd% zu8WjMZssibwSm)e>PvzpSGt9!_7z>v1h*E0IvW0|JFhS-@ zbM2z;j8^+Tfne-UQcl;h>r z#O|FtU);M?D*$n;*AGFJ#+!cYICj|mZG{=ikF`;v1$QB{%diH(#%k6Qdkuz^@FDu# z6sF(!!UhPGb1?r2%NcGUbp@O~(k28Hrc|?VY!F|~thxc08JL&5!|e(3z9Kyzt$mgw zO0%s(#mO}-;0hbt8@WCfVqEtK!aeLd=_{_Gy=AKz1V)8LqSB*XHsO zw}Z}%!qhrb5i!GLgxnMY-E4&*`Sgbev-6Vi-v*;)(&xTQ}pB8A=vBE4H zbJ8kCI;3M88+$d`iX~ftv}G6*to>P-|IJpg2b3ID2q-IaTdNT#v%0E`-C94HdcDxb zI4C2U%Du&=#7h~ceHt5IQ-W%v2p5>G_3?*)u8F|wCrcruDL z6JJ7V)4&#?k9b|RWqE!+u2WeOP|g+_2nV~`B7c#JHIN$zPFM&tNA7)8O>#T3b6B!@ zLuirfi#l31omuKkFj;+I`DJbNct$c0coU?xal5Q?Yu_{LJhfNIyF;`wwr^1qI4Wr_AL-q!h&B z1^|p+WfcRTNwmS zS6g2!(q3VbJi0J;+U~I&vzlbjvCs~4Q2r8BK9hNIf>NipZ#;HKc?E{`+iXI>(uYQ7 zm}S8oOg>Qh=G%RxL}Kb}`dyQuF9PK_=2jp@yK46l^_MR~NA6O8dGP3D&$XyLP@Epd zH8@(YuI>n8I>rNvztU&5bK&229)X$KVd6>egewjTTh8!)G&}p+R}W7`75VWOCfs2K zEjM_t>Z%RLV$%Mn?J}FsmJVQ=lDoTG-tLY9rF4Bhr4;GD1|!4J%{=3p^SCCxpw2ha zfl8XsWEcCGE5vHdt;5WR_@>^Jo7@qeOY2dpc)#jCA+A}z-FKLxuqh?-4^^=!b!JG| z>wwdCdbl$$Ennr>HNtbDrao`cgg%=_8)FeDOg3oW8@sO3i*J*9srP9-* z)sxm-P#7m=`+}V4s<*1BUd$>@)dM$2H#aKaR$k4?XDLZmQB`9jGBNB~$`Sy83>(7KmE=)} z7qLa~%&vm{pN3qJu^&)7S-81hKr5TY+3Ah~Q&-QTtwe!xkaY-j$;J_|ra32wQV+%L zhG6L2$MU%y{vS5)!`HS{Fzv5J{kb~VMh~{!W`4LyFlG3NV!Ac$+=p0?s=j zXZ>W9ln;o3UvcnQp$dKkN*O*3L%iN>ka}6Bp~+q-zP}`GVu3btMO{x>d1vrteqn}+ zZ0MH?4S6hXe@eTyh-tcE>8hca@6~Cf^i>!^CcZj^<~+pvdIrd73RDG|-SY@pDeO@w z-f;`fv7{C7)cIZ==4Ir)6q%p8RWTwhI;*Tw<8AmBWp^vRZf6{^_ZPN?Y2fo~S0R}V z@^_u01$Z~Sk+ZiKwxT|J4**K6LW-ISIJ5?XQSG8tI^^A39qG4Pfz8EL=-j5i$9R} zgT5TzG&Pe8bg+aG_MWd7>@nmg**NYoTTX_@OP1((z^6ATY;+33Y zuS=I3t4}#MNxw)6gdgNRB9Fj4AIAzan%n4j9Wa6CO@wcS6iI}F?*|e!6IZJG939{u$ntXc#dms!lQy=xw7FyX&C=EO%f5` z3v=*vD69-}TO?-Bt;&OjhKv`#-|;=kLj~b$kIW}~;{Y;|^YdEI6b(D(a7xpWv<4ojc_Fd*8oaZyHk$u{cJRKCaA6ELKdEmp^f{7g(@VZX zT*&zz9+ilPc&BGfViH@GC8e}J3+zs7k5@mYxFz4JSh+6rjj1s-2t0Ale4QKM2<9O6 zl5Zt*(j~)%1}Z!szrSdX1a%!}_r0VsRw=x-aXM#00~(3-zmoQfWk$A*RcqXS?Wv>? zZ)`$77kzZ)pr0u#abUHaHl-%Gb8e3(&k7(C_eQ4n+^6?@sS*zk+uVMb^j&Yx^-eWE zSDd(-PXno5ZBLA;EqrD0h2?%woJ;R~NcdFrfTsUKUQ$vB=$)rEg(LyteTFC3;boxK z6tAV+-C0Kb^=#5oXUx=PNlRJfg~aN`+W?QDQ}Pbb4T{(8yEnfHAeNUqzPJ=@0PaQG zXI!o9u(DNWd(Lsi7J!2I$#2%TuBd-D4j)I9y?yz{Oxg^OXQ-g(#Io$4J(oZ24w9aX zH+ptRD|YXaZPH&)B}gfaW{$XnZ8vXSwGj}dfAfQoWW9Q1Klu7W38ICh>suN`Lb5lB zAcx3$`tI2E5Sd`A&G{h=;)2jMW$Ny37vdB%#O`W>2WR&Sq=dkzcD!kUzRgg!cEf0O zRm>0t6~w%j3RQuUbDV?zZ?<4j}$t;hCVk*AvScSWvg8t5UJ61MkJ3#`(iXcsSM zBTgwT66xuNg(76}TCac0169zd%oyEiFJ?PYyioB}G9YU?^lv}#xQjmwEJ>?-{j9RHzMWe>VEQ+rC zn{tgL+rrO5TB}f7-LlJ8WP$gfSj|@DX~>eFy3glVIG6$U@vTekyS5iVGFnE$;5q)~ z#yax{dB3R7LQ;J{oUyCvrd(M%uNMC!lQ!I86szQLpGh~!eOr9nD?*Un_LH6J6Ej07 zTI@r`KEq7H?fPFAvC=Mjd7xz8-l6v$C1*))8_ApaA8ChH^>^2CERpV#*K-7IDfsGb zZu;wPt?QREL5` zdZgWym@ay>ns>pm&3s(|A)Gp^P5gd{J~L< zHF+SR>@jD1yc|Dw8W1D@NFpL;4jREbr9yLSh&WvQIf^YD_~cbxyrM66A6dJy%}UL% z5i4_^nPk!4vxmA64u9{X_8MDw;VFf1cj?1_=6yySYdAwuj^A)SGwMdZp4SaLZhR>Z z9Q6A&m}HUxDhs7uSsQJZ4=nLR*%e10 zt{orJJ$0#{3r^>}bP9=k!gDFcLgv(q{LyZxtxcE(#i6GhGra+ZwK30g0 zbIj8AJNM3H#rUqR6gV5k-pARD+Xb^dwUIs>UzqxZN%;dfZs}3Nj0s)@LHEgRZ)%5P z=@?TTjQpF4HA2z7!~SzNIQx~Z#ix5F+}-7O+Nz2>eRai}e9mc?SASdDz5I0Td(P8( zHyIFR$;^CmSbX^Nlk|_NvCrqe4T`9J2X-&pFBGX9LvktL{AxeJ%Yqz&VuA{SBlEs> z1IB~*RVXfKTZ&)41S5;ejJnwGaTlQWAs4wr?a>&|9Obd9jvE6N2}gBqO{Z5``{`l% zpjKzRLs2{a(QS0~8}$ZGZCiXxLq#wOdZ=+0A|EI#60Mo2sm~-t{^r)&)DcOv?sg1asI^LYm(J@#;qNWxNcW4)1 zj<~L?m!F<3dd%>4IBg(t%z_{C8=%mQPZ}nkvdjM@idm6J7$|9{n1MYW3bWkG&K;}Z zUaFG;ta*hCZY7(HpF&l%Egb}gK7FnW2lGV(!!LM3!u6a>uzdf_9WscQ6Bl2sqLMrl zgRvOn46Rut7rfSTfLbC4T4^j|q3cUHtsr(mWDa^n1JbIUQ%939&xa`0X(q+%ut`cV zKYR#kxHg8uTl)oezOhp|1eIro9DR5l^Z`LJ)hOQ9A1oWuW{2mmTfUc9Gyb+9dht%D z;YgT6s6{(lAgAV~j;bRR8zZcz^~0J(fqOx%lG%{$2fwBjJ6gLx#bC*+HL)AKCm@UEt zr)(qo@DbNT6YB&9K<|g`77SZUZWa+UJ2%Jxmdfo^-zD}n&e$tt zDJm~UD66F&$gy%hcJsl6*ubeE^?Im<^WDPDX?LRrf#nyP$yV=5ghrin3@H&hx2Yh3 zgeTn-sybIS2tf@>;NV2UzGA8Uhg<`Md}n{~%-h*<%VA21SzgE1-4?(=>KB!IX$=+D zUF>p+-bl7Uf8me89WfH=y!?Jjc5nY|ks`q;1AlmM)YUa@M~?!o$}9x;;dI`CGJ=%@ zh&inq%3o917I=hfFc~p9$JY(cQiv;qj%bv+gzT_(!L4F2FElA3u^@Tlf&^gA-Lf25 z9*coxhiR1ZT904kiJ*gx84l(fju?2E!xCh(`b=m;Mn@h#HxGG(FOHOr^n)C|RS@8l zWEn_$sx>fjIjZwbzqR%v)n$wzB;t3uCs{JV9Ld!Gz|SJq$m6sk4k7W)DNwC%CnVsoF-+AsHoMwUD2p^0m2Batot<+7 zv937Cf{i9o6+3wG5{9LiuoSfj*EdGOwO%2_-5%ZgblIGNBMmGH8lMhg+MT$Cd3Cn3 zSq;WgjWOGmtyl%MA9BUZ#mA19P&a>Bg7sl179O#!>}~co*?~h6=*{ z%UB)5=qP%eh!FO$sG{`FAUh0rMbgH*_e!-=>DVIyiB{(sx?VRwP?= z^H(rR$Jc7yV2c5<(SsI7`jv@+1ZP(1%?;Jt19E` zaOP+_Sdj>cMqdAbr#=nDIX3Ru97BceSGdkoMSA3;`=~cVyrHE}&%7R3Dg{bEfBF7G zkKRHNimsHl?j1#{l4jqFt^gVNzCQZn?Fm>Vp{nCq7%2KClZ+6b1+(BdCe1ZDM8OuQ zyGd9`j+ZvEyXMJ8d5&wGY@fiHD)T|+*A5kkdRdWh0-LsM+;-B7n4dB7s?JIV=huMi z!+*FNPOmH#;7W!&i0mc{e<<2;VS(yVvgap6R(|IfZjn^Ac11Xq5m|f#&+`KPWrp$q zcCaw;sE(<0FGe-bP7{sJv2|ZtZ_;IL|BNpDESBux>>a2FMSq|v>;rw?L-G6xYn|u# z>KK~(Id%Og-^9i%R~=fu+?6`;t4&@uaoWN690#!6)|=-)SVU#p(i(!lB$l#B7XOHJ z?uCj;&Rqltv9R_ShZ{8hlPjbhg@Ell3u%MEu{}=*BKM-b$8Kum({juQGPX+NBkUu= zM^^4M#|>}I)+1A?%5Qik&zP&BBkRH2y`hC(m50=*^bZ1Ub!>jzmo1tT{@ zQN%@p!{F0CYvM#XEy#0W8zh40X^Zkq!Juwm-s%sk^CYKL1XETKTNBC-=hCI^>Z$t& zIQ)YkM}AxnMJxt4H%McDB*}vU+Da}>nu|l`S#$~d*Hh0je16UA6kE$}Hg-7VuvB~3 zwLmueuCDRbZZDd4)}N(l_s07E-~sig_^9OmiPKZs=h*7ki&E~F@Q0vWD$x}~g?$R; zTh?i+p(vO8@U5N0>u)Fe*}!n!-!1}dddp0$a%q6lpjC|uKY_CI$tZYGq)v^6uM0T2 z&dSrMw5`ys(HIVo8ux_G>4|;Nl2e%RXmoD^M_^Rb5_$g8_nE3 z4NYFc-j#}gv!UEqo{N?IGG4t7((^a5E-DYvd|6H;`U_Kj_Hj`3l~#aHkpUKk3iWo$ zMJoChe1W2gfO5UQxw*$_CFlLoZ99Ax!-gW7eQJX-}TL2emvEK2#9M*c_Ps&|vY94z^3X~@r)^1=}99$tWJ6gmnm zG%)o{2h&+mAmTj~%?_T$$WEPdcF6oDQ7oC|0ec>PkTkv@9I2qFs&apU3WC9RrCw=| zYj>G;0l=fqQai*0vK_YW{NXmu$3tNX3gmYU#v=0pL^WOd`g^eN*Zt7Kt!(hC$MAkm zW%8|di^cng@3ZG1_bRDzcARn>aR|TNH(#To^uSRU*Ld0(z)c`^`_2nTGL6Luh|)mO zY3F@f6K#_oPe1f|>pqu7fM{@YYEpy1N(a83Y9R;SD4?l13YTf^W*{Nt4uz_^+TG_8 zbM4aib%t4JrVfE4HJ;aNSAV&l(qt-Fk%tiBcyEBr+kT&bJi2Idwon*%(Dies7DKg~ zZ#yt%-lDv!kDLPO$h@$d($xbegx!0fs%XF%{BQ|OXM9>rhocqn>jXLmuOY^mj~LLR z*~RAE`V!V!fjx9iTmY!)o%$4cA`LQsl-^No`uZXSYR+lf235BNinB^n^dtI zLfy?CcYq3RhT_B;H=%fM!z}#cRw$JI;s8?6sN8Ump|;J1m8Z|3F`;j zN5Y%dD&-3;%8L-J@WADh#CnGgWWs%D1{Lcpt-#cGFj)X+mQ-&Qf(R0U_?fr%2@a-% zygs8)80{E&_H2B@@z56H`YWc#%-3=3*sAhoVJLd7bmfDx=c2xI)YM)bSaxWHVQ2pt z)J2VUfn#6TKCJ$x^m@Ge8|ttE<=Je!p8OfMeLh-Vj!Zof`oVR<`@Ln5L#XLS&qgkY z(1QS>u-rgGK!e37q7NxA)uQ~KdG5B&+g4>?nQHgy8(Wd-A*k0u#g_&kafDrvW=Q7D z_aqVBS*hEqyus$x{BBN?g6hKT+es>WExODIFa}2);~#2<2ebLSJ3! zN5y0ufdJsoppbR(fEv5((c@(;Iq=*H)K6#f}C;AS$XK z-R)1cpTF{EPnAB)*=G(Ps3-7j%5k{16l`}r7KcB@v0Qqp_&o~;C_9j$=RWk6DHLyL zix5V~>pKk_HGDsVRMZM6noz3+U!Z_Aj01!Y?`()zgKQ=ru&E0p3yzabb>#)a5=6<{ zuWYEWUZl`CkCWn$hHu#nG(1Z1**tkTKTg!M4{Znq`w0x(a~()1W?~G{g?ZE(ekN2U zFIyc;0gp*k>UN;2?U<|=K)eiNNPeJTT%aE8{=J^X9v{ZxKuo-CA)yz%Eo{wSaLFvJ z6zf~gm{YV1>G3s}KA|ZDB9)9?#f_r;Urz%CU9cRiC5@c9$apRU(0;nAw9aar#>5JKm$jK|5F(IhWgPp?gwNF?PaSH*DIv4@3eK$O z3#PAemS`1!F?&D-X(fy|XM^K>PUSTDY7r4a&MN0FcQF`S+05cs%|%xk${l@e9>W)` zkqe*(%%>4N^EHejfH02xw34rhWQ}lZziO%(ryf00GlxA|q=zLbVZ2ARZLpB1+H?S6 z5@fyyz692~QLs=z6BH6GS&+s5sJCxXhAh$hXZtP*NpWqRKL=^s{Nz#$BF2|Mb}Bgg zhfoz-S(G;pbY9Pvo?;8Ou!L_UrE~6Vq#)qnEIe~qXLHtB=2^?$6|li%1LG)u&>$Tr zG8Kff>b>LpNV=0oKy7AU))1fsediQfH1^v?m!)Tx&|-pC)u0)N-MYT;HUrbX69+ug$cO)CmuF{SX2&qdwR27s__a*Y~*;T}(Ne6friCj3~95TW+sSq*Py9 zcv<7NZ`JOeOvBx2b{V$)#L}LT&S3i@VcBBnpLd{cOF|&FKpulvvgzP_yt7bnS02={ zg6{WrT7}%hBZdl>V`3~VbXp;`I99F$bSJ95BE5ybv9Jv(Zh+1Z&YNc+cx&G{CK@81 zG#H9nkw8wB^DWoD#(`2LR>yqo1zDUzs_T9nGt{(&nsL&W-8p>JZ;s}2EEjOcJ6Tb+ z2}~SPFtAx(STHy=LNev-!$}*bS<0tsNH}@4zNr`Ii;93|s({az>Qep16HFT(Q8;rIkP`%W|a#nCIK zpmDo#Oi4*R57*C3Wd?^(4R)pmmvIR+Rk_`qTBouy)L(p8yS$|8W#jnTuoR`Ghg{Gx z54)yrZNu$j(-g>j!$Tj6E)E+g`Wk};oJf?8Y6wKo=PV-xm3|G47^q(++yj%x2h#F? z`Va(Tq<;P8Kg?8W-Uw>dwUt61K~O9TbUSf=UEf`?U2j8 zHFM(lxGVpMz4r`?YFoR1H!3Pw1SE@sET(fb z%spATT+W>5Mg(bKIgc|a5K?$h%nI!OGkpB?G9~0=QK+gBX5{t(0*@MR-?h*Bs=T|P2Kr+35!?+Iq&<%2X^t>NSALUoy-@FGB@t-)rw{=FVcIw1Qg-+#)JO zTVe+?a^U@^H24g;W;AVmdLZ-l^0eTb3k~=2N8H30JM%6hq^-`|+$uNn{w^q_x_)t> zDia~_sk|lc)?F~HOvVNiY%8;_M@xs5&p=T%{uwt(E^Lb{Qpvd!FZ7qN7?XE+THqh@ zhu|OXpY?-*I0$d4f24XXIn}3L#=!Klo+$tOj4&MxS1;lHp>m!prM?L7&F%TJLN?aT z`}N>+@bbWv|GrbCx%)X8i*(_W1+%yxeWjWX7K>7#4|)r|X}Erc6^V-{d^IQ-J`j$y zF=->mNcD^aU;|Dtv>yOr9^12_JZ)ouZ@_{%8JNU2ltcOn{^*&S3&n=N6r z=Q@byKVPS>v>%r>cmGkT%sHz1Z4@4v8$CDsE#BdDQr3ZGDVl$0*)*$irLdK%MXx34 zh;f(@v=-Av&GSdz@%|LMRHcr?TV5fH(&kdOsYTcM~{HmzgfoNJebu1fy`CiJPXC(zs z!&%~Uq%kIj+$#ny4LcnA1@ zi3$Iun))q>Ch3Hf?76d33{#<3mBuZgHZ0;}|5o%EQ%dMOPLhAme>&ZE%eU0PT3p(g zvS)0HPF`46SXKCB{)TV3v7PojQWm-OZ9&%I93hUDQvzSra~aYoX$>$US<|n>Ne;We z8R@~2`h}LH7I3k*E+ylcz)pPmo8MaeFw+F>lb@n$ z-t!ho-l#d-SIj(w6rhW%t#>#Tju!F_h*md9C%O-{Y}CE#h!(R#K2DA|H|jRJycDz| zTjjT3?6(;VtuynmCspv>Jm5cf3->Wh>wQ8pFBDIy z+59`PfkO?t)=2%@OBXJoa?YQ(z&!*`u+f^G=Eo~8!NbNqW{Tr*YInD#{XjG-EcYU; z!_N=jtk59RiLYQe&UHUzkY5NEtNhkuJJm0A&d!IpjiVoFrR2|P#(9t!dXQBpiC$Zt z5dRsmgT507ClXnws3m*wqrZS$Xg?$vh(R;6PDh|w)n+&pDa_KHQ9Iz2QKYK_&K~A^ zUboRgVx*sNXw1c~5S3p>J=e}Rv5PygKp^Vk$Ddb!=kjJN-}@~#`pL$||2 z390Tjcw+r!?)NuNm9-W}2PW8ap zL*BGAYq~_fRGxr#SrG1ZRG8Nc|F)BLIA6jqvi&T{z0eEsIbrU#8+!}@}IOgI|*Z5?JDE^^jOIu1~u-*Ha)A->Z zt3TEG_Zp|?)TUA+luBUT9Hpzm(fb|OKW5`m+fc9cw3oR7VLjejd}6O_-W_lQf^eqC zUxq~sNA^oxM3hwA`Eh!{JJVDl6JcZ4lJsrj8)N|$QzfDD z#s4w>{+*i!#uRt+HwJDS!NB7Ns>fXulUYZ53P3sCdFav~PGYX(M}dcm%Q#*dw+APO ztkYpr{+**({)2_GtfMXkZj$6Dx{@NGW-$08(B-T5`XV$-zm|aXVo5TortIdDtrk#s z8Az_xilEgf@`Y;YTP^*I6L%+qf%p$n{*k2NPHd79?iT*#$a#|e+raYMb^&w}f`aIG zWodGr^mwmMX>yK)S7c4XdX~-O&h_vt{bHJ>hH`w8)aN0pbmsvj!}(H!dGh938n$|N zxp{m#Xk9r~WzZt^QX~V=(yED!q4+3b6Y`~Vdeyu;ZZbVQJ@8cXoz+gFJ`mujqffu!+p@QaauaMtK{TIOshX@plj+NSSA+!+9G(( z=gOC%i`QVx2ldy^==h` zJqm$qyn!3Mn(Btgl14%6S*JJNMqIl?wfysJqfi#;`tC$^a{KzZU-)Xjr1LlM2A6G0 z>!fpk?CQxiZL29(U$KY$RL2()dC4ikNTdZ5@dZ)DNj9)8FBx{9*n8bTuN-mvW{6US zI`Fnsw*2!|=}!n7dy;A5!#bugOu1yKFrlc1r z>|+y!ui1Ee^D|02!mmZ$2bNb7hRzb*uuOv+#)elPIvc`hGc>-lya1HNCwDIetZWT^~^C zXW}tM!PXaP1kkk?TnkFw*jvu`Khu4Qrlw+e^Yr$;l|bp_f~a-~^j0(S=jy!@0<{o^ z!PlTq$hBvf*}gtU!w1TOI|m;2OqbTt*{DCij=LcuJ#F(^cZ44XBlKbhhjY!9<%EFW z>&%k7KqPx=O7Um2oX=O%2YWLpD$V@&rR%7Nj^b*5GZr#F&-JOHdv4o6MZmacn_yw% zkejWw8j}uc$4Vb|&sN#ZyB_t%hCsl$z$cA>mIvUC*~Xziz6G5xc=_vJcmlLr3kc>~ zwc%*96b@%H1PUAvUb6Qo!fzM>E?bo6+Z=vb93(c2q8Xn%?&K6Nq zpZdQeVW>XaPFoCHM}2Buvulu5B3q^$u5F9ISYEH_Mj{`Uim{5<7iH#fr3_5e@3Z&E zmOMBcFQQ2Mse~%hZ0*3DKWy@ z(Yfzp@fP(PBS32Cx3*jue2#&{Q+6p~(P{D)N?ZEGtn zx=o6xjQ|SkVB`3sK)EgL7GNg}&My3D0qkV^zTz~nv9zQOr_`4xSC_@b1>AA5h2@WD zlt1ShuPnj?K)Y}3krq;${5z3~PT02O$UL59^1pFBBwNf9zbLsi048rq^HVye0dI~Q zzO%T`2<1qg61W{RZ;*hhQ4=~;fyvPLQCS)hghT6P5cT%*l_#P4kv|DwF<5?aS^LCd z4>wRsYA?fHbVF%azk;xfA-4tZW|$x0IrZDANqnlv^FFPyjR#p{TrWjJ2t~(eK&N*V z(n^zR8ofas{=Yut@{BTbci>2}<@nai$FX}o5xDUVKimOs3*g2>;O0wP4UC_>o`Lk? ze~Y-2&@G8~=8RGekfx)Arsj%j&JVT5Q3X97&%r1G!Gs*` z_j6!CKrh~vq@P7qcN;hsvC)o2Yj$0SE>(Ugj2`&5#DAr+IIFp##On^0n5HGDAGl7{o(V~1pkWnbN5_Uf)1!6yR1Tf`I@&lY?iz{mJP?&t^zAE+OAo}a%9 z82^rPY}>V-vjla_a@R5o7S=M|#<9u4EtelAWcn9?4cl!tBqWd;5)4mlXp_XjWkox( zmH*M7dH;N~zKj|eIeRKs$a4HjNl5F}txJJK@^SM{TaRO9$4}$kwRmtNL#QlQ%3sOf z{#NCT>c@<>h5RfmkmJ&n&}@r1ejW!1;Ewc}=X#39qC;_o)t#3tlr?keYKV%_^^7T{ z&$))Mp8euQuh(A`8`SeWQfmhDY=y?uz+1_0;d2KmLQ3?4>j83i6GcC0Hab4<>H9np z(yyA&%(-4sPdQiZ4MU6x+%ZH@@^*}Og@nNK&@=PDAQE6^T388bhayN7GmbUK9ky;z zfF372zLAULyd4#Mt!I&ySB^wR%O1B&GhNLJ-#&My+o1 z-;2R0jv+z<`%bcrQ8O!4y|+nj*(}F(!!d!pwl0skmP>U|2&9?;V4Z(fiXTTK3LERG zk6{LIJ2SrTGMo>Hynm$DVcKA0rFaxp z$69J_nqN1i#U;YX+8Fh(7KGV>*dGc=P6IwEJF+yO@68U65GCxo-9xLAW(9f3=eJXk zk{vUclxMwuB-!mmDIDmT&!jBCFG@56(bCFQ>6#ib!;+MhUNibNBbHzIz# zn_ePd3f#aF4DH9q*#l4Rq-J>F{4GGN7pyE5&tP}k;zE2Hj!yX!pEf5R9NKwrrE*L=N0Q0Q!v^ z+MNYXlmMP^Xgl#5FeN-LZ^|xJW zk~?!l;L#4IrcPdAF)cIx+4PjYmOJsLijW5kQBr69bSHw`Ia-B%j2h$`plLAqUQ$|L z6DV?XRD2XOJSuAB_t_Y!%0Ap=iGBruzI}aDFpbj)kqze159?pSW0AMDU-lF09bkuH z0#VVP%Mw#SM|UXPXl(ASX|3C%gly4%3v_Ad=q`FQdHK%DW=i29t{NTk>y&%`8iXL1 z$wsqYVgg|TPB|M_oi4W^6gNTL4#X{^FZ#Hq2MYBHqjF44bKK|(1~rZpz(h^?7i_-kz`cC;XR?8l9 z0u=y?#zRSzJNxWT=x15kYPOcYp9p3RS*)CkObOR_>ALxoI{lhkG*!sy!l3zPosvM@ zgzy!K)oGAr|?e`XbL{8={0+PHWc4l$c&1os5gHq#@v-%&hr+PEi!3Gn>x8}w zq(p&LIFi^r@v&*jo|h`65+KBOxfMK4c781E_3e#yL`q3NX=&U;lHuD4B_(&{hiacF zCB~?H)CQ>&coMd)PuL1AAq^YbnUxD+_rGggmESr_wo+pC(Wu|Oqi2Y;x?$NBsyk%7 zpY@})vNLDJaNY;@*AG@K}E?=SxB&3K!foKFBPTea*0 zDHt}vQLSyV4m+>zKSho%;}OZOw`Lg%NF6TYk=G%^ki9CmR`kAR8CE4!3RkZ5nP^(c zq-CnU6`*i(WtuBUjZ|)SinLT%M8n1gV!#j+1fUqS>s}djD8Yqf8GvmwPYT2dDZFZB z>2fg+7>bv6BPw$=$R_SE7`#sAWYm=Kp)5?Gac!By)odQ12%Sj^BH^(tGtU`>!^k|& zgiDJ13QFZfki&V486zL zS<8!N=8W?Fjh8`*7V00ziXrwC9$b&Wh5B>= z^EigtEaZ&&ZFhK5X%SPwJOdOgL#zq*@ z@i?8>xuY@Dz2Hy_530GaWVv`xT$4`=7YEwH;|F2pp*LsK6>jvYFN9+NDJOm0ToIP7 z66?VSVFCZfK#&TtOB1GN;J0%Ziezg|ZU)_pBX2H^As!2ffy0s}WHzhP2bJvvxoF;?~X0Nx4w!n)rD!7hGs%~+BwN9tX{ zUgbEcUWhsjv;v+xR%C*#1lko_08FB`%ANWT){{JoAwtIkAW<#9lMjFt4KocLPjOjh z>-V`2W36m&E^Fv|HX+|IXu5+ypdXE&-14NX*c?!Jm?y~wC#`Rr6qO&tI}W==T1p^n zc3<|YD*8$eyRo#KUwl-D#my8DO1#ZD7Y29&pPXlDdEQvI#og6%Yrd?N$T#Kh%ep&} z_&1?lo6z1!L)f7Qd=%pnK@Kr`O8WqbD*!F=X11*|x>*cuYLYvum9tCz3M6BM~vrD32jTC<%<=8;`sW z9FTK^!f9`niOV{%q#Nx>=?Mu^j#`>79@lVMx)*R4QfCd~afHUDteG+L&s}mQ(^Jsl z7DeSNc)yolG*WEXSr92q>$fOI)9)4SrH@b2)zMz2@RxvT2eFCS2a-goN6aaPm_d%Q znLw*rk*hAzX#(V9Npf9B3HOHwp^&;R?E8{0n5XTM-9Xzr{PMwDOj@PJK4Ty>$47NG zeIhB#PWH06IemAiv*0`Ot2wA)?sdpj_=V^N!$UgcV#+4-c1}=vS$a;Nv&L|9k=&^c z!3pvE-f~to+Fg|Z%6<8Dvu*$fx-%dO{RXjI5`}oOgWywZCiyRl)$mzc%D=G7V5aF+ zF$X7a#}(6B3s?4Fv$c@rI@I_?SC${UelFDY0Y9LE26B5O07g_Mlvm!-G?N;}Lh@k@ z0XB!~abo~>r)O(?*O67|hM-l=NZvET?mo6E98HktprO5@b@t7zU~T+HlU$>l;#iX$ zwH3~2(E5bzLtxjb%)_o1?w9_*e-U7ew_jI#E_kI-R<{vo%+#ax!u7ViGn%$<-Hk1e zbt!0HvI@BdfYIQc!K?u*h%NVzz4FumvI4$fEIegJ!GmqmCHM6XC#81!a!MxoeWaX4 zxHjW=++SwuHc{wh|J=qlc}eZY8buV3QIv)1MNxIPcX1i3Yc{?`(Tfq&8 z`Lt%7@g;|ckwaQt;$2YRmD0-dmlLF0U5W)06e3(mSG#1!E znpLa6*MOorxj9xO6r2WLLZNF`uBLOua&X%2PN#~uF3nF5baK$}T$_Z^*HEY|siJ*b z{FSG6o92J(BK$L#tmS+XEL0^>)eJrj81#;&Fl=35+QqY>UtQ9O&9O#Xk<1 zDRz?>ZbJOTXRuFRlYb4=p|Gw+GUVLl8Sl}N7k$|8<`>^2*K2^yC^0r4ySK<&VR^z zTpRk4DtRp7@f@a4$`c@E+qqk0lUJH-^Y?rfiz1W?L*=U6oi??>w7Qnop3B%}10!O- z_I|(eU%HLz_XG$#DEK{d7-B7DbLCU`2#)|T zQuxNnj&IgH$3&^Q*h;3e@-=w#b}l0%y9X?0m$Mf<`BWrkUYdc)hx$5v=W~_5M6&yESY1c>~QAibkQY3 zp~;j3e+|_7YULEjQGgeFCw@W)@?8z2iNCq;#0g$AP9sC{W7ge=jJ%dTuM3-YaAUIn z^x(te%o8s^u)jXH-zs?9TI*`rJzR+0oFQ&MYk-TfLFY> zgGWBYJisQ?{`(06%*a=lps+Ns`ce2&-^HJhDvy5;Hpk6{ZNh*pE}9NjIdT9}Z$~$Z z(fm~Kc?DMg30;nWau#}N)wEdKah0dl`QCL6w&onCi~yMcsY{baao{s94axw9@%xbZ z|BP7qpFPyy?V$gkXNI26U_t|=UyF;)@4oQ=YaG%4?>&`IDH@lFgJ$>8t*;o(^!h6K zwOJx}#Vt16PD*QU(Zw_ob88DtJ3O`X5mE>@UnhA<0rQb?pQNx?!p`cF(s&>$Dicg~ zM=g9Q)Fg-_9Pn!;e(`rqB*+^S_X+oW3r0PYz<*KDM|n)c?Vdc3B9XBe2h{xGpdtLd zZhuxt0&ZHvXR2s~S9#=}NRP7cyZaxm)R=n!B5iyqa)=bM^7@RG44O065I zGNbaLGN2M59_`Ztah4$~tuGriho%E_rRJ+pchByXtMfGt>qZD!Cb&)9aGtx{GG{;) zY`8DxmghPSB~>Cl^5LCH$t`>|WrLa#Pd+>tR~A0cWaTkVmA1jYI2Jno7H_}s<=S0$ z9|7BjZR~lA`UAB#5%7N<1~;#*PkUnF&9d?zU#s^Xw8xEGzc@Y9b!e~5D*Ex<+kO7l zfk$csjqXDp^UEI!W32Zk31OY?B1jbtr&y-uop8gG!aovTpLQhNTe$@esdWE#3HVv#F}sZ>m0!KIfae7~Gb3|+hWso^0~CkPv3mlX z(-Yryh?gF(Z+IGAuV~qrJHG`BVQ!nNi2By^EpX&{1{QG)XF$6i-A$JOiC-lVuTit< z?-=g-oQ9L}aQok=P;W*)7@kYXmAa>h2aN{qeD>rj^d{;9l#Vuc| zY!|+jWEi-0bfY}2gVgu>xIJpHa(3*-re`cqd`9$~tXrW}?0ZNeMkd*bi`vl@(NSgL z`vE=7s2Oi1af>g<^xvF#exx^I<1>myIvKIiB_Nw^6jPm=6~R{;&lBCAw7eCDS9#D( z$N2=0n{UGGT8fzWaT4WIomA7)O^c)$RT)Ch?&p!=eP+_Bhu8&oMafbd{BSq~r@NF- z_gOWK-DiERtF&k~eZj3w{>NK8&@9)Bc%d#K%XraKhCXKt4nDz!#!ScHHY3TFn++Gs zGNkE*geZyPHPh~|da)aX=@yU$1oisKT;M~8QLatj6(SpaMTRO$59?F+4)lTvt1b&0 z)Y5p8;`w8xEIcBEN&a)sBMCh+wq6Ps#OddIP^MG?0kyPMvq>YVyU$bB z#9R;D8I(JYZ|H9%s%oUA(eEnST!jG5xgr-X)c6x1v{Vr>8X4JgIL4@%C91=TI30{Q z9Gy;_Okt$Cpe(||3v6^7yux0}c%)ZBp~9Ku1ICk056P*et*_-d4;nwWYsQirHP_K_ zwfWYuKqjEaWOJD6y4cxjrisRpwHz;WwcrS&{+s-vr?(VSRRf1#uEz1f7=m+^zW$GZmOzV@C*Vncy?pQ0nD_tgSPDzuy~s_32TfSc32@dE3Z4H#@p{ zYU8tmgp!-bdQ5)S0hAhoHn?}kjHB{#py3--QTMyGZDO|c^keo3=0py3Y_^?TdQ9I< zad!FMxC83e0`pWmJ+|CWMtJ$MfohQ7*vb9*6(_eri7uQjEA52R^j1H+cKu2t^Qc{Y zxu&p0sjNw*zf zWY_P$HWbL4;Y%$9KX&3JX;hE*UZ{iM{wAj!6x6Me}ox;f_ zg>S{Od&vYkYeho3vE;2FgF5ydE&m{9T;t=w{M-%+e4Bzb)+f;U>|CcT^+Gc+e%osY9wRcUX@(eryy3dMe-= zM@p=-BKEM&m?(sHm=7UftCVo0cYaIpr#UZA4~XS4xJjXlcTaNKFtOek;^BBD@CN8| zVXaefUJG0>8|FQdXzX4Af!n9T<2xSh`kF7y|BiACb$zs4Wf1hCWay&;1!VR4R7uj##4O8d=SYfERE__a{=`|_Cow=T8&OTXzo6H6FXhVJ>AnX*gfb=xfk70 zI(b$7c|D-t_siiR3-12>$Qo2yrCL5ynF|^&CJ9u!e!m5!iffi*l|v>};>IU&7g5QY ziG^IN5SIznJ@is zbkq?ZQwt`-)PiyCt3q1Xz)L0TFqH`_fF;1aPqe%y<_#CGPq;-M2^(M{>IPR;CoJP$ zWqtm~10^UZ05!N{f`>$-uj2Qgr(ZORSL0kZj{FP^EA-0xfcAjljgiSP z<6Ir)z-U;-cuPK(7{*(g{%uUk)gx9gZlbVd)OJV{o?SAPSIeCP$?tYeVD^pvo~ldg z@QZ|2EjCaNPiS)>C~iU4uH`8qnJWxuY`ZNI!o4-)I`BYogO)3>b0XrkZDyv+bC~NR z5bBir8oUK=GD+WiIL9kYsbfQaR*TGt*8MRTT>Ze`kY&k~fj|h4S=}zINQ!o&{Bv^~ zS3+avp>GnqX?{+3BT$!YY3-h2Xmr*0nx&LZ2X@yn3F?qBQE0pV<24`^4E z|KaH5DzDij$6i%vR{I5=kep;?6t2Tp8za$eG6)CB+G5RKHpOL=)}ZRx&iX5J>HF}+ zJrzow>ppiu*b~TTon$B{bHk5kd63+raz3G3v`lb+*rSbX=aws9sn(!f^bee7$H@}4 zlkaf2a}4zQvNg6m{7RJBY1LJVMl3sYS{%j z*rM#Bux@)kN0gD|3At(=nji4x3OCo#kLGCHLa#s1Mwqn5+wr?Mlj7ml;bUOSB~(z( z;?(R@2?N`>nkqk5j+Gl+tz4)s?+$}9AR?QT`KO}KvL(o)2+mttMZSTkMu>f*7Rv%W z_t+BtI@FhnM0rq2PjY%)+y;5<5yhl{TP=O!ab%nTQNzZ`FIrtQwL$kHBu0!wBaQTq zl4OMdLHCoLo*%RcDG@E>pQ)SAET-!QgH^~_0jIb@*bdvTGmK23IP$yIx-Fg+Z(Onm zlU5csA^mw@cFzG&s>AY%f*+=tnoI(7xnrH_wGfj|kT+Gr3VHCumgEB)l6W|DDQ9CA zfU3Zq*RIe($&^dxfo8qnYv36f5=d^(5vMC*<$^+V@YrkA;1-%Duouo@_cN=g*It-> zs_e2hPsoN;yy0ov*OWz+yI5NeexQ9?%e7f68?XP?BII>SPqAz)+*J|*oA^sQ_12OR zzEp_qhsy?M-9MJhp3x(BQz9)=gPF@;cJ(KbFjo+x3rb{(R<=UqLm=GXydJjqS=%B3 z_<-u#+`GRBqnyARBBjOuxFI<2COc(Uj|#9hLb+7D8N`g2T3EVC_p{`L9OGx%dA^zIXMlux zBxtF{!N5_-byekPSYtmE#0bOT&5>Wb`7ioJ>7bvu`e|S~hUwnEus1+3(A>J3w|6j; zLs-?iL8>T;$S*NOs5xZkf5$bvkys%Tb6U@2h4> z+E=xXWDH`|eP+#dhnr7-oxEk`vPs5+@=b&i=#s>bg&}XbemrXaJXpesuE_7*0W$xn zGIhKE$Z=rs0NJYdlSNyglYgm*QueF1jKU%PHC@)ky{ynKuYiE|k3C#WFS%1=KxO%L zb!I+iJm~WjW!8lQ>;1>wO>6pJg-A74F=HSSP=kT29VN!v2ntx@k540ULvB-mIHFdO z$P?IO6)W0nj;6r(XMGcX+4e*op`LBA^c)zga;A_PSG%(eVH+ASgb%vx`o8=7E@v+9 zj+EFdo5Az1_GcoRhEJw!rcRRYK}X5q7!iM|Cq1jeQ-78tkP!lZyrhpPb+HaRTNPEj zvF8vVw;UlyQ)21#eQ9qnnR5LMB89Kq-Q*mAG%+)|jy`%hmW_RQf+{ zA%a5SjxQ{Dyu!6nKEN(L=?Vf^cGVPe#*r%l--WPyKV9=-*{DjOeM(I7X*Mj2)`b<) z;t9RV1LsggPQZk5a$V^jNgLqv5~o>Lsc ziKrgpgh%1MWX0k$h>Zf|Im#R3_*NntjlIj4v=e z@%n9ZfqHjOgbdhK8D^~J+$nyRsOO)JC3q%}54~ERSr#B`cPrb%@@w{6XWZQOMw8K5EV6e^ zCpSXjja`*(EM{uW-+Rzm1|UFiW`Z@Kz;`*c6^ zTkv%V)Vfvya;0OU*WJEmJx?|mlqo~U2W-rFQVScFEF->CM&1~(F{6W2z~yKBZPeS_ zM(ha+>SqDs#1q>mvQ{A|6)U45d3ag0Uj|gTi_UTd;?~(@0aEIu*3V0eIwQd8Rgr$) zl1JZ?Yh2Y2Q9^G7zb){Aje=T&W3Nza?=)~Y&wn0RGXoBent$9*p`lW5ER?{yHum0Q z2O=t6(Uo_^W?=s_==~x*ZpHoFx3P8{snGa-)%wC+MIGTn3d1WyRlWxsEG>9yd=m(# z;Plvhad8Iz>>>rMbb2H!HZetgV|UA;z)Lr)V&iCl(kPh{xGaJncO%&vlj-J*80V_S z5DID{*Pq^j38pQODY_uY1rwdNuSWtG<8c+avv1mqXd>Y$mmS*G_&^C|dI4dA(G(lg zwKcOkGn=>xo<5Iyu(%M)EtU z1dtUDM0BW-B^Vh-rc?Q%^$v7LUj?XpR*<+6zDoGqokh<3#{5cl!I_3Xj2WAd+nE(c zpZGsGdf`!AwG}w79AMm~kxWl_d=SEL_nT|iP>~?aWzl@uTF&Z38>O8H%Ut~O?dll2 zMctEWU8OJml%8WtroN)VIdaXtZId#xpD#ceh@P{YZ>AL0d0PAV$_`V?VP7m6FMZxv z-+SR*Vv-n5qmlWKMR{QzLB7AVs7nM@@tO12%v!V)6^hAB^?DC9h*vj5QuaOIsR!z& ziQ~i1q1%FV^CoEh0qP%HsqaGID?=q*sH23TJEhVAVCdSty(;g)sufdS%@ur4bu$_6 zVQ+Z2Ushh+(kBoPgP3cCBivz&{*v`4gKI`U2hI$@x5n07zzn))>iU+)N6m^md0ova zn6T7rBzL8H!oF7|yavY$hkSs%iMGjKIiCzW81*E^SxG(8tAT-=Uinq16op(qff( zgDGDfKwPfpwQX(zB4jL&v#RaN7toH_W~&Uu(zAlQ9hR)JFI4@d|JGXc%_ ze&yzs0iQWo?g!{&d^Rl3aMxic-_DLH#PqOmVy?4?^J2+ht=tkfMimc5-J0G2lE z$c6mG2&jfBSnhfMtMK{^1nCV-SAovflAF$DYa)L3P6=_a!}CQvg3K>1)?%i~$pVMv zX7*_XUgu}LJ=T>Q6g#yFDY4I<3|N8p`M)$*zdI(QK-SoBM+5vR`1SUmujf1q4*fZ7Z zFIyJL?~0(vj8*4%EVyG@#?EACF71(FPR(5II+vmsd)ys984a z?NoED_4h+B{WEIe*d<}Kx7UB)^`pHkxozbMv))#ur2BB?N#vuQ$vMB*2MUMGjvF4g zQ%CIYTvS&LQJRF^0^SLOk`Lr2z90bJdz++0eo8gEA<0t8J9i% z-SIJH)#(U8C2y9#Si3_yAqQ45|2VIBKVhRG05)uIe?N@%4z8oAh7ax14;D;nrTQntG zsA<-(>J8&z(EtUF#TmJ8nSa}8XeQ=ixJIO6y;`JVty<)_Rtj%FGwSEHJz+!mkRJ4; zq9HU26Wg>iw{F^!-5as5y{<@89VA9m88m1*IO2rB=h=&tN*x-~K!@V|zE!`QXoH2# z$Z(#>kuN*fV4~F+G_@`mQ!bNwdcJE^C6P5W8&qeiwHuTK#@{bQLJ35wqz!^Cg5r6k zND#eww|0mgYRnM8;+LRhmmU~CA#l(S2X_`VouI7!KV{HRu^P@L|4QZwr& z^`y>fErQL&)bqllbjDuj;&ZaXtsf@(5?5W-28{MwoyZ!txkdMo%-*}%s)z9nDc=}V zM1wE%d_m%-K;VLOj(s~ek9Ov>CoF$Vy&Qv3I3sFsws*x0SNn;Z@6_w{VA zCBlLig@_tjy&Cv$kjIc3&u0`?4aPf?EXwlOzGMzga6Oq1Vevj+uw>(~Yx+^`I?%?_ z^*&I_uJfVF35yKQo1TgIw{HoKGz|FTnf@vfNdA~Ac@P56#KgLQ?u3(R1hF*jBIPa) z7QOv~f6^RDpzT*r5KCu>v@as73td^*0Oj+ zyq{l${>$dHhSXWbptnY{qhUFor?%7d5e6<4&FAh{Xb#sLPIri=_Rkrkj5jwFXADvW zf=_spo9m%2=GK;6EP}6(-=i4|3gt_wgvK-iFXNal@Mb~o;-ztCBmqs&2;Kewb;Kb#0*nW!nm$Ys^FFJM;i`$-+W^)q; zTp7Kw>G#rnqg_ENyvCcPP5oCaKdX+IC~o>ukZHfWrFwjheIof1U?QP!IP-5c9;wQK zs-}r78$Z>y?Nv!|BZo2J=@v~$rs>JQ0Gs9wGYeOAQeoRr9oSG# zwo$Dd1mBr}T}veRv2EoS=@!{QP$j1AA5Ee$GxzJ^)BCX4Uhn&`*XHpN`$e;|hr7ot z-Wz*5Y%Dfk+e7C4UiG^L1;J&QmPv>Mme=QaOP(F&=%tIp z{UwtytzS!qAe01TB&aX7u!6)J{;85kOBsJXKQqjzb(AjA3(NYNqHJ%st4v7ZAI7@6 zlq|Wwie3z3(j}<@#Tom_0psS`J80`rX%{>D3f(KuwrUrx;VJyR2G`-qx8aT2#+fg< zUaAkml~@JxA8}g*f36gBgWM+AIG9Y0j|nbXSvtG*hb3(AA#lt`;V0!=e(i`fJ)GEW zn5C(Q&}`KHFsx`#TdXvgqrPx?SPT<=O(5oTi-tX~wESH@SEAUryr#DBhvf3t;552! zSgBfWSi=o^!CtPzvr0A}HVE903%)?0Cb`-I*JK~OeHo8DIpacF+uAhm)0u7c6jL95xAAKdvP+6~n>f5VWl=%- zq$Hrrisq|O>nYVn!x~nEySqq%w#MS5lxv;3zlFMC*k+#%=~hu0?4;tI?BVpV)t3cv zoE06O`_ieOg5XC-9ff;EpBU9tB_Lo1?a3r)2YFZZK^h)qmoEUQS=UgpkMKv?RB)@z zFC$ypAW-%vo9;jLsBOpXuah%dvs+c@;-FqQnbIi?l+VVGa~OW7QJiVeNNO!^RyVh` zeRg(=EQ3P$g^2n!Di|)Rlu+aKly-2n2rG@Dk1fY?`?vP)5mu(JUPY*cVchjMwePVYI#@EY7pKuGsG&pQ3VsM!-=O)ux&2pocdjovjF-D&wkpyzq4veq z5WfRA_qIr!O?hSzy4{1OM_sMx*fWxy^cF9Kmjq*55>503?Cz)?JmH*1F@ljnFd~fJI-U*28 zPrq?eCBEQpPsqe+^GHe6vcE=6yan=5n++QkA#X+`&HR~)-W6feLAm2ceYq;iY(!NvD{CLl4Yu&1L zgM(-~(6zgNh^&V2@O9Nncl`iL9gne$z34BiI}a|_uLO31B4`=3cn_6Oe%&VVd{*Dg z1R7ZZn7rOVTdPgI?7!lE^d2T~P}uXKKNmHk0p>x;l* zAKI8^H%r{iY=VA2o^(Khb-#O^yd&?Daowe6N#fJ zZ^LBAhMTg{#19D8YcH+X!@;I9{py@KJBn;y15S}&p;|uob99)qd8eU5e8ZxIFp6P` zMUE@d(>2$xrLOo`7N>>887~>1m%jX}Roj0mf$=zJYIIBrIqrZ#BUi+-6USrrWi5}~ z1e@`f&Q=CHX=I0-!&$Cm?1*Reok)54m5g0LQM5VZK$ePkM10ASIjBV<0VECg2~ndV z0-Skaj}n;IQPfGm;UNFprKS9@h$_H98tog4>X5~&+}Rq2Y~S$vc2d7fHnkNTtnzW0 zfTv}sB!1dmY-*=v`o)OE!#M+u)W)_jj;FB+uvZq`LSMPX<)GhBf3Dyh#t)Ki9?i-o zoO|NMrJ9RNu$>c2VnHQG5Z66q5|^_zh%en)NHy`VGm!q_q%V+I2bTjZ5JK|!Oz0x- z(}wY$qF+L`EvHp#H2GZ?%MCp1^}2INu@xvofy7bl$B0Q4Z2Gg<_itH+RI%3Q5kY?E zA33u8f|lfD7bY=X{EmOxMJ0e@dHjF{j%~L`U`cwFwxcyQ{ z7;{LVt7@|(4^nOnVHl~ZO`)bwzFXUkDmws?Q7bap9+$x>N6(L@J1>J#niI=kvM5Fp zspD1J^$U343x@10f(N3H#pPGLM;mh1j>{!kvwnn~$6hFTetJ`O{>+iRK--m=M&D^@QfjE6iMTOy z;K@siQc~nTyeYiWw3(imDvz(bYxM*W5+5eTG(WTRqgz@PPso1m)cT%yfe{NjNLhOJ z-sZWFQ(Q{!^Br}=JNL!7-$ZQYeH5)X8=DMh=wxbYRSuN!+sw)cc{_FTE;@TE75qFF zU8Jw$mmk?*L86J1)v!J2bk$N@-!jpbIN1T`p!d+Ah{SOe7m( z^?ylUx!O*=m}6^`yT2vUzaF;;g${yLryZXSK?x5{JF;wRX4Y2KCS{as5pdN_wQ4wt zbhwsCcMltGhnsEsvLcbklUQ@YNCUf?c`W9JFFG_P_+>0yYx^6WT~5$nloSKf%Ya%m z?s*UCeXw!xv1;7!&{Yz4y%mJr+|5JE;rw~*08dC7HDojxXI#17hMG&RU~8S8-pv|( z^3j5id89Ol=i>ZWz0jN_GE(_kmS_N@3F353B8bSe>_F#?5i@0yhyPQaUYh@u*2go@U{+^OJg9 z{YTEhTRn&ndkmBsYTIb)*$$LvPNp%&w`LT*Art-plhtyl zITqnJOdIeUE45e`62wTVP*DbvVUHB*3Z^zZ%H{CT5hiO$I;^X+I{Svy7r6Umo{|$MLM#_0n znUkR*e7Xq1(Pvyr}1n3(fW&> z1NFWzIY2Wl{oRiHpQD9-Le;{i_UYp2|3%kZN42?a>%+T9TM8`{cM8Rw1lJZR7NEF0 z1h?Y8p*R$`;FjRUtwoDNfa2~2iaUW|UwZbr_x{E>=lg>(GDvt?S!=F2=kq*su0?fy zK{b4W5a9C2B(iPqE}hbl9HF4;6LHLn4n%gD58Tfy`2DW3e0TwZ;!i#YXtOwM34xZ? zzATgIJD1KsKI8CLe3wpk(&7}Y`~KyI8tQ`aLj(7&qBP-DE<)ZS!LP!{d7iUZHKqQA z;%vS9%1wF4fZ(FB7r4a!QD=Pb3!9?JKcFttoYG)KmNO>_I8^^$rvcuG0WJd!@od5b z-!GPw(HebQX&W|$IXd>WcK-lv>Ae`idX;j_T(cH||B10W&pBwS|EpXwn?MSyjQN}e zs*&lY^l3tB^uLV+>osHObvQM;zqvu?|7~Q_}!} z^uS+qiObGeqAzpXOzbH|3`?{KVA48QmBvyrDc8JyGk&;4-x!&_ElIH4ws^rB{}+jK z_XQ``q|CF+zS~N%IxFy4j+pDH>U-gd+lmHl6L1q5*1-5CqR9!LgPGreV9eKyEVxf0-R?QW9JXA;n|#-s2zBlcmy-yX09P5gcz7J?{l%r^ij3bF%@=W5Q4VGr zs*7{r$cB1aLe~v`5~S-ixF^)eo~LwJRHdLdyuBC?LN=~K61IJLd0L~dH~?Ssuj#-V zP;$V8lq$-w-IP?Ibi|oCG)?-aGDV!fGT4EI$X;6DTSWe_Ok2y~kf0^FA^_S&n1) zUcMw2WkcE0pb`cDN=v6+AH?>`3{k^6H9cKA9P-u@c5cvamlbqcvq_ z6J$96o)=evTrmBKM_LW!!^5_bc})mWON?q>;{Zz4!e4oMm}M6hu;GXX(la;AFt=iFbj zTnB7Z2eKTR_EV{Q@9l<8`+}|>0wF&vVMgS90<#~@wDO{xVM8Fp6SC*o!?HLozw@e` z@FRS@b)fU&b)hp+?yHByW9PE@Y3X0;$P`ER&;TGn-`lsBEqapRu*mKn=7GsAeY*3$ zmST)V$mt+R3Np`_KdfK~CcpaHBnPoc=Ryngap5LD#$!m>TBxlkuNqtHoy%DrBXG3c z)sFnfQZP`k81~tSTFb^mXr452g4VX`bjkC3Logg?f5%rVfiWgNnRNsN=9dM}%+8u$ zwkI`%9|HV#2Mtqy9*7+Otz!M+N^@qj3lUc^T(?el9+h@wvhl63q^wj%N-9fY-YpT* zCzdvV|1GD89pXj=n5b<~t5f^*ZK5vnfUT?P8R7bnHxs(r7>qJbR3ijrfMOTJ`LpiF(sncj*o| zFHQyx6}Y#)ISzo5?7&~T`ZACh zj}=Yg4C-HHn?SlSQ7cYXyUQlE;L=&&G1?;ghVwMNT@8a(u}NWdf$LbA;U6fPZ@B~A zu)@XgS2HENvczVqN=BrRU;s`Pz1kc4S!+Eg@#)lW<3N{=HA6qT4RP9Wxdb6^+*g{O zU!C$c7>+k5KWnd7E$)A82?HeINk-7zyJ|-JHQJ)1Os=BL;obbH?cG)=;`C-Qr;jP{ zik`FCQkau)BqbwiiI<*V;(oI9x~n?PWw@E{BJ-X$p!)iGyU?TDn;;uL8KVIIRO@HU zSB042r{!C+Jm=ke9*F!Yl@R#Uaj6o=aanY;mnFFW9%^F}E2g=da)&lg_U!3(o74;ci$*gGV&2j>157<8tUI{32VH zOft{j?w9L}1FH$ewuLeBTT#WD{^l{by(wgVZZ4vbNYl&XoX0JtK#e5h7CHcr!GoBA zM$bMoiyOQSWL3{Y9l<(R>#Gb?x78}*15U(Ore-LW^i<^Dq*7kwe!jWHgV?Zg?RTU# z!>6Dncz(()`bm`a{oY$9(;>yX_DaVAI^GMUHe<|?-QfoUZi^djEMXdi* zFe@^4F<5wu0W-9OU7|c2x*JRLU5Hy8SXuRne_IV_KO?gKJ(WZXOCH>wk;f9YT-#@F zyIgNUK@X%7f&iOdJmIp*bGL-qBU_UpSi^9cv5HRbz}47kzAr(KUW|K2iywn(9#Pkd z6d!f*6q=NF&OJ&mGjWV;>=^Zj;yUz;XuhP{7}GmVM4SwEm7g?GU6xF=?_%c!Qjv(& zQ00~!~T03+IKMB7Ra9OWZ zSqs)b@W`JI`Kgg9RC9BaD-k3@Z5TZ6DnPe$30P{rV{YGyfD0MDm?VOv_9Q!OzyCfW z7;!u*9+C@}2r1QPQ#A@?jelh=Aw39co2raS>31 zs7M*%8UH2grO&ybLg7Ee(Y@}~uIVYXyAN8!aM_;1dKM{xq7Q|FHRyZx{M z(EM0+?22{~M`)IN6$u-b1nr>5bw9==WIKRZOO2-$WN(s1J7037OXHLZ=?W--gn&=x zr!Oz9CbrBY;Pu;=xi`Q0mF_YSWP}-XrjTMqsrx0k{mxiUty6Bq@Q21*8j28lR`+r1 z-z4!K$ob4~cax#T?P2dHpMa*jmQP!E0j0;0V(Qos7aFJL(?6=;YL;heH+d6 zs;h@;@3?nm>cRiB?|v?gfueqYD&)%V;W9LRa(i-g?E*{1|B-_osFE!l`VHxGAZQS~ z?nK>_mQ%Y`Bq#;+U3nt<{gR&A@0b~ogGB-Q5(I50=XQs!AdVB5?P~}~J`EG6A{v5&@r&VvgIzqCJ@b7? zj6pft4{pa%I5+l(3gA5~r6D+mB^a~s&R1xZ%mF`D6|oS}K;d$_MtAo~Q;bz1rkcO7ZCYV$R>|uWz*lSQd`vax7U)C!3;V@u))2CIdzZ^dWAM`%fyN$77z+>C zJY5nD22=O}uGmt3T@0VPW#M3F*&Bi8I+20&k%Rq3%#u7Lai>c_>r3C&A6Rl~z; z3*tQ1BP4dmWz{$^;M>f0Ber2sP<&iNgS$?{4n1gX#ITO33PZET+>EK19u^`yMfuf;j}S5=qnZ3(OK{R;tg4&~3w;qA zS0*RWDbR@~0Qe3*tC2sS0Z6KU#th7iQ~@IuhlpPt$8zqjbWm01jEXwcH^AXtOGA1p z)P%9`;=Yot_y+iW=8px`6%N6B$G&#np#0D+?XAmEhqgnziXQn8JXW&n+-YqiywTKB zrr(zz<#ISaKeUv|i0d~zq51&+y5NELxwzx=F-~qYb^tPYnZ2|$VnqK=O+7ikZ4Lb0 ze|txzV3x-CM{;jw&7}!u)Rory@xJng?>X+ef(&ZSd2>72>lW=Sugk2fQrF9?C_873 z#Qx4_iz{^Y^{_~~l6HB#g>w{rIai_6M( zkA{+L>i9Wrr z2l5uimx829b!d-5iYABQdIf691$a*Z6E@75+<2!Mv+Q0c?T`+&aLox?_CL=Ek zs(b{MDA7xTU+fCB`jQk4cOV=fx-l%X?wTRXj8p8?;IxPl^3O_px@ipR&e_b~2e+Qg z*yj9C335W;61oUG=eS!$DGVm>izYBHc6!s|t5qzHv>t7kE|2p`wSBG6Y6)`J)Kdb# zXj$k^Dn}szsJhcT1n1R552dE*V>&%S8Qj3(aiRQ8H8GdAz>k|iOf9T=%C@0*wC%#T zf=0e(-oM3Eg%s%Da3x|5luch%O}iVF**ed<%o|71{Nn5;+sjhF+Gu8fW|ti*R6U?C zwez>w!;tPe;*n{rJ+SsDnS*?6&6w*6+J%@Jq^pwT-WaDD1xszO<=5a26*rkzw zM!WL-9m~Tkxi1b=eGU4rxkA%$zpu*?DqF>hs8MPvK5^zM+SB$2ZKH#4~o7fOaTB?^-Wf3RvcOCRI>k=8bZiM;MH$F z?^%Z*JK@%21mk0RRt@~yK@MKgpHlE77hWQF%7}05r=QZdp`ydHQ}p?pa>N=_pkd5~ zL~HPQ;1w_Db?KyJ4=i=&ZpbO88xc0vci<`BGnnx-Ij5rk!Xf2)^(Oq}%ex$pmD`|R~xu6Hgg z?5s%(*h)jAq%$l@Lt;*q^wDiqMh-IHnI3^($KUvCvOlDqLJC_>Ht9{n(8!)0pA=XD z#9)=(A|tO>=_*}1{bpQEodohCAD_!FhV$6X#Y&Qdvy6dc-6B&T>iCY6a)JA5RZAwk^+SibjT()}2mf(|N0lR!uC8wyQxu6kMjnr3~{CmWHqJ22cUKF!qp5c}q1?5$7fQ zg!!KhUep3`U3+IyT)bF|a)mx+z@NOPsDUeTZwag5?I}qZPYT4%gxnbj*541pf4mk; z7UOGx+tYryI@o@pI_{}#y-F`R1g{croTWJaz;1nQyf!@*n`*aPg$kWDlEYJvk7IbD50X=P@S#}pQ@X|ARLF2T?xKM$H%W-hxyY*b);AKDcl8N3&)HUuB0(TS}4 z;Dk7$nu`>NJ%pgP8_xe=!bBtR3?J`?wG2m&fmX~4y48AJQ^()ufe$#NkB~_mv&odq zoVmM&HL~l&=Gjvu41IISi9q`E94($t1Gx$X|Nc(R*$3ux*^Q7j z*3~V(tB^3XQB=86F0g=gilt2wWLya)&XYDlM^9qVP`Sk`OE54p9`Y@o5K#T~{eTQA zW641ASL$D-v^ivKY|A2Wk|6EUFkeHWETf6ZbzKk9Hb?8Y{z#ThA_mjFDL0=2IDgdK-dvrw12XN6d1 zO-!WZnzH;H^mXo8XnpVv;$ZGIl5xl8Yp_uqZSczfF>elTwj-vCUa7gtA$W z6J7Gofov&a&BZotAw;^9%W@@m}Ubpa{wiC52yJUcQ{ceJC$0`^cgP zwN5E1Ev*T$LPd^)@U$Nq$4;mdT++q?lYP6J`oR1;UNM%k(bpi8j9Wdl^ZODYu)*6P-)2>x zw+I`6{L-EJt-1==5-b}IsDoTvfTdm4)80dD6qP+CjWZ^VeY6yHQJm2Sra_xzh@`Nv zE7tfPluXmbMsb`$Vbvtig>x$+c)^1M=(?@-6p`>Z{2*R%5I*0pn*UfxHwn>39?3i( zF7Z_cOr{qkpMCmU-LVnV0+y12avTx$#WrX=?Nvn;95iE8l`v)p`I}7L#na07!zXqE z-ld4?K(78*Uz`q_bmph`-@DAI#P*Qp9d z2%8iDfrs|dHBL)62IV}nSOwipIfe&~cBA^eEMNyflb1PF+zj|)LZvXEJ}P3^45wW0 z#|k@86Zwu}KdtC;-P#sY#zV-m?Sfbs(SJSw#1dwf0H`pmcc4;A31`J$|l55>x!LsnrBs;18Aii0IuER!lK{WDLdGO z%Tf|v!niB13aoEkda*sepF!`hPb&be)ol}HJH`}ONqi{05faZYI|P?omtTm5k}fcy z-}gDZr|J;TCjNtQ)8HBenHg}xjd37kK?tHtS|=|;GwGQFO)KLa0&UKxb%6)r4oP3m zGi<^Eze(u@y{^@Vdtg;Meke>`rl zx+vFI(~>vQn{cHvDiaQp4Ry}iqvvuMyy4hl2Z=b8(sNg;)$X5|K?P=%jTQ<3_7&=* zmq{(7b42YmbYwRiNktl}WALd}&v)RVdZ?UB8G{*vN8+TS!Get zNjYUrwXE)gHXkdqut7NB*FYT~x|O-YiyVS2<4|k+>fTHrFf8Xc_5g^hlBK=)L8~HK zHmEJ!6=Y?taDZQLchX9Sum1t8AYZB=_x4P5B;o?bAwx7@nguB>WW9oyy9b#r7hDltG9ICDttBkt5JABAUmaYJt-|mU-z!SbY&8N>- zmNkPop4nA4*8ifX_ASO~;z+f$sI22YJm;RqfN}8PHsep)jve=F8_&f(23Sf^>$~FH z;ZEm^?me#I|5^EZ1}(^Z0BJ`<&@}zRTZSYTC2(L2E(edIF!~>y69%sz8@!m8dqiD+ z>7NUq8e1bQu^A=>)S)y4*@KbA%?~KZ1G|`3gFMlD2aeLPX-E=u_w8W;W&?rPJO$xR zxP?E9;Pz>N$sa6AY-}&n)w7?znzOWPqc2(yFdDc=hhEbtUd$J`)XdGg>6_>koUc|mF4E8noTUupu0f}Bi^5FG4P2;RY`=V(b7WSL*gQf?ye zf58sF~{dasA34&%1OKR?@P zxLOh~_uucmAMm|r1`}zon+!bCqGAq;6tYXj8F}Z^aXM!!tddkOG~*4q@0U$ZXUKl? zXVbcXQRjbJfPqO6aR`~z$1u1Z%m$!-P%Jx((?TOFhZMg4Ra9kPp$gusoe4}w_ZIlC@{3!0v1h} zwvqk)3}6Hqv|ywSp?~|oUa}HyFY5jRrSX2OKm7|S(MoCDY!{YNOUMGMY721J3LKExTJ@1aAteV*VT&E;Ti`z(gg57;!*oQVtC}N;pU>Y58lKpQ`V&TqQ6l= zu)ZE{KL`X~0_u)*Gw@vk=gg)sMrUz`R9yPDt9$wSfWS%&%jTO4W=Qb<^!@b&7iT4QoAErv44M;(*vfeF4zWJc|j< z0Xan(1qI_MkYwUtD7&B708A2x8)kp1cdNbY(V}y7gHZk5 zcqjrlE3pQbJOtWGQXXUP<}=wRZs$rwjkjfcIU+*iS*<}zsKB0?@Klpa{M zAxg_DBdpHL!avq_sF~%uBbw!o_~d7Q@;wr3q!n?R@T6+9U|mMe-PZk z-qh#{Zlq}P?U3cW|M|TC^<}V>m%j>MY&0(Roo5!xm!Xz3@n7;Ikp(Qz*{fb>NmQi_L2J~!faPH}IC9vMveil^n}1eT^oEj#5pdH120{Sy8A`=ep-W!Z%rlEvJ? zrBvagNSpW3RJB_DsDDBU@3Ln#L3%;Op>_jCvAg5;n^Q`kNZs&~nu68}N;}ZI1uT$@ z$CftHICJ&r2oBkP!~okA57rQfi%gdkFT?DC1}<^57?;#Z=u5Q!Em-xcL+5BZxwihe zYGQPvzJ?(8irN6eEVB*q!CDBh0F!;9X6e$?%o`FnGis=)FjQ##$;AsDs7Kmn#wJ2G zR*G>D2m3NlTx^PghjpTD`zV#bkA+{u*Vhwy69OZIn8mf@*K^PT4?}+a(X2p^1wt68 zr#=-ddBr>LUd z0zlm+_GhdA)6ttsybQJz)RkMO46+C!r82hgh%{x zP$B^Dl4nMK?g6ENHjB;v8cBwk@pO=XsA+OOQV7DzW5M__s&v*&)kznkV9vHWo3l}@zr-7XElLl0UFg_yXb^tG69}2^(2Ts&0s_5M zj^^xO_zBx*tWi|9kt?d-URJ7z>t3O5riI_Hv%drqn%Rjd`dd^z%dYf`0~y3-6Ao=h z#F36oxc%B0%1ajgXgl2h>@HFXS0yXz#+_`Bo_AV|G}KZOFv&u@|Cj?{4uNjHLmFga`x;5Nc0O+OgdIA9P*D-*4&ga@Qytk`ej`f)3N2>j5p(F z?4Kr>?mKIZ;u~BSrzJe(;-XnvPXsF{auBV9v2-TGMt#Q^PtBoYunB^nW0RuV>Q|{uQfPt zDQJEoa{c=!pG!*i{oLPlS@*Zvrzzp9GRHR1=8ICXc8qPy)E>9Q^r#*}hXv}3oW^I5 ztFE`svjtLK0qR1m`zpGUssA_#$&FAz-P<)ThD<)Nxz|Ec{7hbh<@S^BIF)h<oz2Bj-F6VPiF6&NK>#ZW- z4TEt<5{EE4e$5sZg3OM9msYDnBv$vPSfc~}Bs3I_oNu_$Id)!Vo%Um1Z>+9J#<@`Z z^hGK&M3z2>GhO8&+~#42jf)!J4R3x?TeQ{FJO=CtDo^E{rQH3AP=Cx`=OdVr2llC& z*3ufwMpI88l|wEhGtjjOIls&i(~Tp)N7+EUa^yn`tFDAT0~Eeg+d(RwO~|-6e;Dw>5De$CNrCAde~9#V*c;CxA+a4#`stQzuuh#vd%Mw1a}1L4!55x z8QR)Lj+{H?1}VxCt{tC8^VmL68=U_3@Y{CEJgIq2aWek;DMaW3-H#XHU?AxAy4}m^ ziBHVxUTOjngT>*tikTjr>ltU25)!YC$v;AZLpWmknXOBDF8QCp@IQmIM)9$&tS2R) z3C53L{E05+?!4D*&PU6k*8|I;qHKTG`mcYFloi4<3b7Z(6z#CZMc!Kx0nSp_vP5<^ zvP43EY81if_zhcFhJWS+_JjORRa_J9#{{^Y9LQFfIr@Kj#%{o@JlE9&7enffmr0W$ z-81WjQd*k_-*-0ETU^I4PnF(#3uzXivhztMp2Hctg8Po9(YZLL+3cRM&z0x-x&K(} z1ka!B=%3e#&r#W`#l3xs2B5C}lyJyy?=&~G_cy;ii?}O7k_Bj47XsttbEvVw9?@++ z8J+(v*7{dRZXEtw*n0vES8c8vO04_$knnMnA^(0U ziU0oJJ46ATI?HRav(Ad+YXcO&DV7m@{E8`f+jQ<6Ywanll#m(Lvn}H}B9j}~8WcFX z7&al5Vr?yInXO*CW%AN!(HTuZ;yZ=0-%sL`#@S=^c~%8L>qx3SYEyRhzN|2^TX za}ip=j{YHKaf_sSQig)r`D9>L_^OKWXWeqd=2|4V=TX_W4+lc3;e*GN-D5ecpB*0; zVzD2b2*k?<;Bh#9*fcac5o2+BVKL#WvQ>B4;z7H-vPQ^-Yus_yrSN964bD46{W2-y z$c3`XM%qDY@$R}(P-0Q6ilJ6Wi(6IR8vn~kSADz9OLd8fcGND6l!V9^SQ9{6Fr+3X z<1-S2+c%qZA5Aq#6~io0vI{ryjKJA(EAjg%_GK{3J#Kwj1bw1Ai{o$UU z_7G?2-|qf7Z6pe~D$I;&$uj^2j>M@IHYi=@yuJ4wy zPvX26YuYN%QW{ol5F5{a6~s8`%AgZFvh|OQ9e&vB)^`chck~bwPeh21lHWZQ7qS*_ zKMQ30>FQU?{&rvG4~34OzUf)8BRJo;aF|#FytR-RBGMt zUyS383|`VGve+?~RlK`P&+>S2rk0Q)_CzFcm+iMg{A z<&RKwl8tCYTWrpzLOq~X#KF7t1&D>mH-t0yc7 z7!WsBqE1jLD*xq+J#Sq58ddp|42Qw#sVM&IqOUHw-~@Vs3BI;Iau}QxGYCG$MY}xE zOf^2=c{FmsKJ=JHE4O^bCOy-kZMu%E9iaIX`N<{4y|~(0A2Z;Xt19(JR) z86wih|E7^P6(h#Iqao7s-s?7j5fyWmK7t#4nSpPuivg}DboQA)SM?++me?)9!zkMq z7Wwa9in8p-xzlmKp^8(FWuP}f+TG2|i*LuMAMN_t@%pK zSzCW;U!SGsbf#UI;)V?^e)rsBf&f3?t_Ls;H9 z+8(q;Tpmt@KX_7J$EMwX!dAxYxBfA~%2hsQldWBr<;ybmV+uinms@LmWVVWS)S!;( z{ooC9eI9i_u42sP>4H{U{+D;@f-6Kiw>`Jo-9q9Vc)imw)CRLK{}HR+RTW*w<^R%u zG}(ZChF?{*CU@GZ`uj85TqYAqN81y!o>`T&&zOz87f75wGo?{4J6=6Io%`t>ww#Cn zq%T#gpyS{#__42NbT2|S0-ju;zFJq6d9behN>w zu>%f!6Ma5$*#aqs)_cHaEuc`B-4de>&))$=I^(!_+= zsV?jqZUL%Y+T#%c@Zd*_qT-v|m#Av$dr^gXr=LH3cnPh|k+A~UJ&E$o!rd(W`y*6> z`=3xBB)?kQx7vG~W3{BkJ~aH!Cu3c=-=X2*(SY|gU~(bwTjL{U&=9qbFd>8t`OuAe z=0~eGsnzuM&1z^n?e#0Hag<~J&%l1}r76}(UDA`}blAH*=Fq5?;VIUJZ$o{_aucgqK<;cvX`^s;RGXAV`^8O;uZgS!Jl=1swzk*3*ccd1moOJGOz+8yYR%2gJ|wY@&6D>N-MaPUGZHV0ZLuXzQ!(}ZMw?=PBemmlWnK$`-G{Fae8^2^{}Avs zkS5lx9s|0_ac4)rjnm2|i~p3~Oaq`EF=J3NyfBM%|JDLlN758HU=($JJ5Q%2Cvr@O zj6@L3Wj>L`L57&}Fm7)Z3cjJbbT6uy>@Cik^nL0*HnqBIm*`qXn36`>Rcr*rQq|^F zPXF6pwyb6U0~63cQO$^LKvBxp_RcPSyE;dLtGy~3&)#%jH!!vyv8AtKx^yHEf^=^a@%wH(gTK(dJ$n8WYeO@LxA@*bjS}gT z`O$KlMVm8fbstqu08RxZ`s(~{WEe=7utyYMfx9oiRHVn*@YUr-UViq+j$$C2mdcGy+2m<^XCvHpcZ;6mA;nGI0 z3(lc?-&I=0a4?N`x|wW3(-CuvvKWNF`t1?EN2Y;9nL-{~ATc3?k=Q zOaG|HrYL^uimIw>`<`g7z6y;3kz&5N^1IQ-xMezUY}_`h4``h|?`c|=fzk0Pq|$I2T)=e6kkm8%2b<$J z^%oU{$ul`yFPThj5 z|DA%Gyw-x6#$#J2aq@lbt)7~JlEXrxI_dx?aGAW~y$h9#P(XQ;1XEY3qH>qu^4|TR9x84m>&?HZV)*iS zm0pm_f^I_lLn90RI4`Pv{i2Eq3qBs=&s-AO=ZvE^?k2HP4+UA3AwYveCjs03zYzxG zf^+n?FMU&W&WoNZ4lN);r`E%y zRdUT}YDq2G2N7&{!yTch?@X>RlyOAX_Z{QP%n~kxSX3htI3+Y_ga}5$1hwXuk}c^S+(PY$VjQu+m5bzQL=Ec9EB^i46c-p_HQZ zVBUjXc{@Gh;gS)I>fA13N2FMa$)2h#No0b&^5-JnK^1+%vS1*4m(9^}iXqbIDAiRNr~bi09vwdRteYY3e_KqXb%@{=e3<2lhzcikN&Oz z(u-)K{n;%9^U_3RcMoenC3(D*5}tb0G3G44MI z12~ZY7N$@)OUwKBcLuiAgHgl%zhzULHW}^)jpAL5$ou9HO zSobd6!FnNYN5g{&eWx&#?!TD=iIQ_vg|N(~9VrZp5pn~!0XPb9uEI{=0KE1cn!~>sdj%It4HD3OdhLFt_H|}_a z6uK{>I=asJOi{CIR{+PUps7jopatHt`bN=`qx-%n47CKWiIs8WxB|OZLya8yHBhzC zdFit5a=RKN&R)O!zQxm2Vs#edaFv11R++o(YrCAo8DcH z(*`3gH+B|1frJd;i{-#E9OCL-**%{|~ z8|jYTp7aP+ygO3Q$5WMGOSE{#SgytkF;NDn+eO{W6xG+6^TV12qHCW9{<3cXXGYak zCC8jmj>&lMW}wWqe5%)6(D9q=BF2TvaX6MEQY|O9#hHRJ0EM{h2PkE(a; z6piJL@ubEruD1_ZVgNI!3HO0M^~EQ_s#G-slit<$*rvmA3_S5Oi>1JQY%G6i(2*_c17#i?Fz^R>OLv~chW zL{}4x3bA{)&{C?RQX-_rlhE?T|79(wpQ9{c89;s42|rmFYZxSwk^%PNGVQ?+N0LWg z#dRw9U)g0hWSJ)t^UL*iblYO7fC;zv9d5N??jJFpkyt2jx-z@7@w8lK$hgu%??f) z!vn!k3 z={G)G0b6mNnYhAZpmiAE>)0`{i-Kz)i08-t&K{i#1@oM_-j8iwoMS0$iQNW>E?_`( z*(W~JX_ie}yU%K3K%2L-ux4ukb$@x^pQ#?Krcd|NqbtpAsFP&$rl&J)Yv#PaIzLp5 z8tl|lN`&MjyRI0URM4GY+?v@-oErV=)d5Uu&&&k&8%m`muiO2u?R@xlEnRy4)hrc4 zBxq@Ke_N;6IduGX5>hyt<3D`WbajBmw?(Pa&{Ljl^L}tQve#>8=5}!OsqRkJU}=^+ zORl<{;;qojUHKXkB{gzHBC5E-vNVvZrdn|@>Yf?!ag-+Bw??|qRK+x+4OVPve#dV( z)T<+v1Thj;_kHSOHKF-Cw?m9M1Fa_&V$`C0>OQTWt_%P$yx|S~U605c-OsLLnaJ4_ zlZ|;g`|&s$LF^~t!7@+Sk(W#d)Z}`f84ouI&evAy@o<-@jZ4?&V6($ku6ZV7t?;@8 z(clz146pXRy3{y?D^k=1e0cXa=gawyxulMY3JyW_yI?>OO8KzCVg~-3dk&!w{)hfn z1>;jBk!nPKqe+8b;D50Nj#|-i8z0z}dDUl_*683*2!^kFn~#`pW)YCf;!lSp#~}mI zB+hs*fG>s_2S9udEEzt=DQQ5F&!`&Odez!g3>n~mH>o2~#=jGgK$oxEH~Y0UHaIu&KsA1*a? zvX#Uh0Z_iC?5G&eqfXxZ+EIe!6<0^uLN8_WM~o}f5=1INe-($OG4V~U;9tCKw~ceQUS)Qt83lQ(Vm?d}O= zS^djN@{%am7&DKO`2KrJ2e<-9iIK6U*lh){Ra!nh6)jS2^)9z zMG>w5766uw$iFPZ4e!4i$iEppeAJK@fT3@F^6bK{afQ_56M-Zt4KIC2@Ou|tUiakD z-R&LvXq-;Jo>*r#IujS?YkvNx*q>?t@_R`AQ_BIW2DF`J!-%-0wx=poRZgQG z=0UG@{_bf_Y!;d?!1J5X&TLbeX5jSu^yj!{3(D=`aH7+A-F6VcS>Y@BePw!Jf}X7 zANUt5w+o!2nc3=Pj_}L_)LMSs){oYS=x9+bIw>en9T%mBRc#7X&92Fl_nB{>Ps!I%Visz^VKpNkFEO4*k|n|^vMwU|6|zcpZuvE zgTa$gMHm{>q4)J~TbLoA#J*X=XssNH@I9kLNyiJ>0Di|z&s^E;Of#ZT)ib>B!JIx| z%+cFhkBYB0ArFOnCB6<)n0=_@)JC(vJ?pnsk}O0sewdH{?@aq9>YpzAg!>{5~lO0 zj_c5!x%JZJdGS?Tym#)HeyD^~rA*6JxaV%P)5avOQ};g8W`ft@C~4O#k|?`{m#tjHK*_4^H&=E4~W4%32CCzMo}>d>U`ZRTBJk= z?(OttwAN-v7~y)YcAQC|<`j}Bon88Ovf=elaxTm5d;J=ClOrZ$TwQ2sd{OwNXFLXB z`yH|PxYZ*;#K<8o&k<=0>RF1fG5?$bE_%VZn3ISCn5H?PsAN zAt8-4NXv}0fFhmJ4N`-oNH-z~lF~4A4&B{?NDkc~AnnlI;63=u@4M^%1(&sC&BB>? zy>rfapWJ&t@JVXCc(ATB_~F0@eWV@8un_-oX&f^7X|3)@&vo}55N0ugPmgUAp;L4K z$6bkQ!LzUc*aORXt}5}#9Ah3sXezJ2(}IQk3APh({h=;BJNwmZQz5(?1Q5F!26xX+ z$i+slR$@uAVmA_y3-)e^@vZ~nOMdG`<46^x{O0NB=1_&;EliL`cMVc#z>4OAIdHUL zUELWms682E&z63`=T!o@2?E#jg7n$Dr|sqUN%(E=6uGP7r;u^enoK~nCEKY*FL}-6 z+%5;6W@#9mK*U}Fh}7onyGuQ{Y`n;h#sGzoP*w8;_ zN(#svKzF;4-f`-xtC!C!0j=FhO8uIjMOWDiqDhryV|jUO2qbd?N$L|a>M$^O4UvBL}62Qo{l@+VP%z%KB@^v z+E)z2MIN=wnvytaT4VbE`-=udz#q5mZ0UwQqJhdFbo`6pW=*~eUtCmQ z5BbzISYucxeRN8jN02N2BPZFR@0)hqCX}u{@SwaJx(qEt z?z?t8p&eXXS8YvsY5q_jh@AjJZ%)_ciuGAj8mU83E_3CU)4Sy5U96lV>vS7q1t+0* z#nQFv{D)}v+Y7&3C-&8u_7l#Rk-5)9_Ao?K9+fGKEv|d4C#tEyYXMcvscKZKL1*UY z71aXWru|VD^8<2dlP)jx=jpnL$eaRv#w7@)sJ#%o8udfZR|XzLm!jd zJDnJx%Dz@|jitggyDyKtmJ4>ye?^+k32Qoa6DIJn_?ViSUq0)$=?_~zIf)WPJJGn(+hg&wdpHx&>E;RybRNoaz+r(fG@aL8II7yH!BEX?$_vJB<$KI&tW_*Xwbs zw(QZy?~Q~UDo<;K2?&=>ILL`Fgz5|t2J93T*2@LFgACg()SDEOrdk-a>VV)zR!EmM zaXcN!>u{FSe|VI4cw#&YvEXQrXuIpUAn`JGUi$E=PVS^2a^#u0 zlK=UyhL4A(N~!tP#AoC2$7bl_mu|0#q${;L)1Pg``VnaEQ)*cSNxs|qnZv}gliSj= zJuibrZ+w~c2FGyX7jQHCPHCdW^{k+dY<@mIdqMenYFlPJ^?v@#WBs#EsuDj1w@ zjr!?pS+Gk8^x{-7ZIS@48JNrCZ1llS00PZRVP?C}36OKkIs@d$+#JsC4{Cr109b2y zroprG^vuVx3+EzqLOI#28AGwS$C*g`vE7J>yEeyRCMPE|EW5AGZY8G73#1Q4r1S;h z+U}z~9)DJbX&v94Odp9#{T=zF&EhceSsb&J`NnXx% z_42;Glogd^PWd8$oaJ^L$2%t9MX=1d)1dQUmXytxGk_Phb)giMoONHC3ChvzMc+r- zI8(0<+tM$y=Msw5_DyM0^fBuDE@CZIjdS;*6jNU<$mI^n=8>pa)od2HS+TOO_MDA$ zopkN#g-{feS9sv17p%lXKC3t-EETj%Aj8ae1zhW$I0~9SurZG>Na@xv)3HOB;j#FK zP+o`hb3RnJ2C9z=GRil|cONP#HF)==nA(C1MNAF-ctKuylQN~|zCiTb2X2qFY4}ae zNbwVuU{m@TR*!A*BW!!?eF7BR9&IM}fd?RZqT^CKnvVc}x~Ast^oiiTb&7KYysF`% zh=z~t2A^>uJ;SYZ)o!HBwthgl#M_tioZBv}=&r}oDK)Yxu)J|>=6=uK`{yMRr?8#F zNH1K%#xgwpPThcTzshSo%P37s;naWru02WJ1YCWo22&V@%VXNuKiO`{CkOWjKOs7$ zIGb6pXyc>5RM3U%|0c&N6>?`FEdvyER*;1iK-eKWZKOZ}CeBrT+X~+pHZOT#-@khh z)X^Hw^LmI-8+L{V=d*idAjYZM0{_@C?&dMA4C2ijW@bHK?xU^IzoGRt84+ZHe&hF! zD3-rDET^mXx*(BpfX5oUCRZxb88UYq5i?tf5q#Ni>+Wo3Y&U)OKSTqY7z!2sa5TOq@8p00*NEx7TZ7K{(3P7rKAGo7$a z6a;EI_2}KVO%SriXQBvO1v(DZ8@UMfLVE{Zbj8J!~QBKY5R|ABq(UC-L6cjtp9e-wu|>k$7`v46eHd8XTb_ zF?G2;7_twTx(DY?bz$*Z~UgNp6Mhdnm{xF|?e zJrSn=P3`N}!i6YHY2~G>G_K0L<42d*wI%&#a)+VY;jl@_cxs3dQt1}k>^Krz^h^)} z?W?_Ms)4qxdo+a`#dq$6mxyMT8`$|phxb#1n-#o9K=ce92!jQr#4_DZlY#|0H1is( zetPllVpI1ZGl%uLLFM10$PsUPBPAU@`M$XroV~zaV zc^q{LO06-5V-i0>%g+?+sVs(l~rM5e8-V1LZ9EsKq}_tNJWFC0jl zaGYUl_^h&!exTP*I?rfa%3^`uqJJ}5i(J-s;9P4yu8JvBiGU+G4I3pk4}+Iss+lze z^p>ByU3_&KCFy9LoO8wTh2XVXfyhror8kVb##v1HX@&?xi7-oK+R%>J#Il*$*;@EI zb(F^BP5F<3L|Y7<$8_vQ1psCr$Cs*DZdhPnxm5)doF5uzvhjLBjmVlJ>&cq~Wewts zn8xkKewclIH1e(}_$j*lU3lL?_iQ^Y)P%Cse~|$Wn&$A|w4G$`Ed83(8c|6HQDq6M+PoS8f#NO<|Ft#11BiwA)se za1zI6Jmui=XyX+Yv_U45rEFWFFDjbWRa_ud`0_M1Dx{8x<1a$YD_8_~766rm>6y&x2%YhHy8DYs{~wpo1_@2G|-RVb-chocnqrM3Q-2e{y$VtzV#Qeu)5<^v;H zn>mj5bdc$0MwgXwE&3{>%D9vBAXGVNDT|G-IVZuT)3IE z;~Ajhxt0wB5^Vp62|G=c^sr7ENLr<+WgT9;kyc^m6@gH_m~rzYp&F|KDn1O)>TVJR zb4MkQ+L){$txk@9Eb~IK!_8vD4vRf%S)eAQ5Y|aR_$zBpQz?8NWp`=6#jGyL54vP2 zm#LX50eC5(HA2t+tv2wg4Z+NAGPMV?X6TdR$ReF(@ZfsAEiT3GPvi~l@Wo85BRh{G zSaotQEFzq2og&NK&*n=?5V8oFP{D>EXH zBPDd1&h24sSu*)_P%+f_s2WPW)UyO>d50lrY2}Te2h$TeXwqJpE3@*Zn@&mxyYP7y zb^bH-JRlV2?0+>>p;rcd%wScp&vv)Cv z^Y97%B6V|MBv88eUh>FgLmWd;ymD)PknG@XTGmmFK|)6PU#HlpOO^>D(EhbTa8nFM zs36)rqLP_;4QnDyu5VNf^MAUoc}RJL*}l+@eYpgVv82*-P=O0Jh2^1SU7l;ZS3s`L+4C@RN+O~~X@#Wa#PGlkVHn>xfZLoZt)WoB70RXCgrux|=44{VNx zG2yvcESKjl4)UiEb8$8{?)_z~tC0}e`V775**b3dOOWI_Eaam*hPOZ^rk`BFt5|6Dc zF79Ki@5P~9gO5yLR9TA(8x=)Joq*i|oVb|#srxwu zxi6AhdV$A*e#sd1htgFSqG})Eurn2(hSh$F&D;^hkN~mSN z)op7=1v_kaus|;%yY^kOL5B&u^d`TqL`{G!!K4?EfuP5WT~tSKk_L3kdec6o?Wl-A z67Y&BcM8s(iO7fQc!)p$hm?#KU0IxrwN)q4% zkO$EbAu}Q}UG34xk=t()AkA*l+fq1qg9vy`k_wEhI?Z|(HZBuKeqt8&y^tf(X`AVNk5 zotyHRTS8Yf$BQ>?3L7eAqldnXfDb;VQ4t^-jt=u1s#JswH!}A0_T7*CeaW(s4VBWd zYksD(mKtu{`u&4zI;LDKTuuRIPGR|uX|9}&19aA{B9RBQ-?F~{dbG~b2iTVT5pWs( zp_Nam;GD5hlWE!>QTcs8=I?9vVu`t{6!Cms=IwmBPexx;@N;Py#a1;oJ~Ba500)$k zkqDiFK=|P#RO}#~jt)_WRf$6Osr@OCzYp7^d8VTzkAQBzPCf z51+*QR}3^o&@CH5{H=34HZW?K;TrL(pBIg-o5(`9c6$TN)E>r#`w;mwMS$%zo3nR> zceVfPXY3*-_}b%rghbM{o5jG#63ZGaEs%371XLWAKGIs?2xQ(8`Jc~xzy6FP48vA1 z{IS<&r4I3>VXA&0eN5|R(lZH2rdJ%2wG-<|&fdz@T3??}qNz?-v-X zWeeAACnc7(XSO@bzlf4N>|Jd(h?XBc#($;N_XzZWeiCFprz826Y`?CN_}R0){E1a* zOho+z`*L2_%lw9dCjE869+#1;z45hVBAypxlk`>;gV~$?bHh!h6Dh-qt0moI{2x>j zzBR29A(|}u>`;50I}JXIu6m|hEpoUOhFNeaf@GL#9yy2?IxG4@n`WtLuaTZ z4QXujuOAC*8F3(I0}Y+%=^HbK(^5I`F%+$TP&nf1;+B{__0Wt6^nXhKX%lN!GvFVS?|`RZk#bsqMAO&-6cEBB?B>sl=C*H&_5XU z6j9Q$Kt(7?NWNm4S4rf%g_6!{c9@Lw4NgMZH>J#+$2@bm9nZ~xr~N8#)p*K~-IH_e z(=*lgfb#nr5qQD`8F<PlR~Sym03t9a-aecm4yhv^u_r0 z=`wCi4L{5KsmZ-Gi}Tsi{En~`iaiJQ@Bmrm50G&@dq09~oIwQ!k{OGt;0oUi22rc7 z+)u3x-LjDt6)V`tharmm(gxWWeXq!Cv$I4(_RqFJJ^PSr84oRQKQz7pueMTBPL!F^`8?gx{ERczUp| zIrl(6Gd;^vLR5scIY^6|2;SfWkvbeUyl6NsI`T0I>H$4fM!Q58@`qiQ9sf&X;}L#t zpel7o+EA(4G~>RsK8dE6f?HA8q0#m=e+cCcQ1NdcL#31kra(6r|4)s`wMXPdW@eG2 zG5>VCqCTZ<+Jm+W{v$UEBH5XcTLBG>BKHFB0^ccqZR7A_;C-6$@fY_qX*2Gm1!^gA z=@g*j=?Gk;AtBH*vCW>ZtOQ0I9XrW#dz^$Tm7{Kcr^Y0jt9;)Cc3mamB+f)rZs^2f zSTZ!OS>|HtP*n_B8GC-Ep@_sOcX2)!SCD@=kEEzupedT+D(Q{YQ?R3C7l!P6#k*xa z^ryx7Yr2+M>)3Io_DLePd%R@nT8n^F=* zWA{a?;nm=K{$=^05^H>+{R2Jnq2wMs_^q)Yr+cn+2gM2!(bughJB4jAxPpdsI3JK^ zxhB#rV*~c`y(oBQNGf=U+JHN4do5Z!^8S^j2&DW=cpw9HZ08i`l0h6Y*r>Sl$^CD{ z=jaWq_fCnu!ItWcxChqQ%S;1w@}h*?>+U~+PH15A`&Poz5-JQn7$Bi=Gv3(5*+sKj zLZ$~f;L+aBE@m+s1iyBmk-yng=pyjRCcyiWx&cJCGca#~^Ev56v_NZ~&>(@I*dY| zQ=E1lWpPl{*4{duRC3O;CiHM_*yyepORhWOph>B0*Q(^7vze<1` z3sEcJT~7Okk>xTO0<(B@?8`Bb!fP>8n5(8n#f5%c|g|E z%B~gK(9C=h)nn^*X7>@78T#^QyUEmQkfBTVnB>6ps88i!h2?n>yI*vpb3Q)``9sh5 zC&4y-69u4rpEsVHq|?e;-N^a=z_(M%EqK16FYJnNw_8?1Qk;&3V#AIr$u~<=H2&S$ z*)V*KF9{(2p4>2>fluIEww=ciWn^aQTB}{ad7|APF2A-@OwDB6R4R-2RZ&VdAAo3S zxSm&USu8Hh{C0Di|BwuZemjN70WVY!H07#Y@r;@WR8p(OUkA56hTiGsUDY$RaQiT1 zrk3)lEvKAFe>hA3HV6w_ci33{YWF3$)xaT)E~|MGjgGjII^j?aXGrwxwEfha#y|B;qx zM`M>ZcYTd})N~~OyL$F2@PM03h;4Hmmb`|i{QgED{si~=*X#eUE z+zU1G_mW*N)1=C^!hBJutjr5(X>v9TOzzQ<#V8>x>O%Ct7C-HOKJYg#hz|ZY$u^7* z2(aY-^G3*TMtH?`1fq!Rf)}tD$ zts##;t|GhH>l)?LQq?t{rVWd)7BA!}GY+)vw*oR)rD%uQ7suu8mZBjwlKk9zNaT(3 z9!1?^9gZYFGB-!D__IdHYi{{7{>eoSR5I#Ua^O#%*GEz+M1Y#~%+KLr<&S`*-#3!k z_|IYdeY?2y(2tTEqz^(o6;ZX{O7N;QiFu!pp-^>5g3Ef6vz}TuxaKF^nR=?3Ms_;$ zLdEn5Y~L5K82Nf!!8*k0o$Rm#TEaA?@F=ki_7}%U0uX#(`rht!#aw58_=3ptC3dj=30a$JYJA4M?L@uRjJCYuvBD6^4tNr}Kp4`wsg zA+Ww|M2_A&lW@^b`bx(;v*pMSJuh|08Q8}C<6HRsa}2Hzm~C4G9E^ENV(9Nvxnr7o zQLq!!O&*FIq0fe@fqB*ZoS>Wrie+=Op9}Lv2RH}~M(Ah4&He?2kNmS6TcP~V$wLPM z^?a=+unCg5Qe#8|q983M@URa#Qj~vvg!#MVhfbe#${yD3dqgbDr~qj6xici{&+E`p z|Ie9A18Q0|>S$_>)_AdUQZVL|ErImFRU=2eR%3(=uK3|vsO)az!nH6G!ykbLHC^rh z>=bAt(r`_x$|-lRUzL^1V<-zip|XK~owEKKLy`7)hM+j(DUP^uOWJ`#nf?G?N<#kk z&@n&(-g=@TqHNIA0&I2EM_QYiwnFJMrKrlymFUXo%MqmtSqn$Jg$Q`McCl|n439J) zDh3fUnDW;ON&L?WiI^ags{jZrj`L@V8879qy1AOwEl!xMm+_h@j4UNTT~7d z)@uExyK~Mcg_FME7eDoRNqL%2AA25+E!J3#@_yevx_yCa%q4DG;kz*1*LhaGkHyL| z{mF{)IHREnn5h$ewtw9Ook*rYJ)cw`Yw+Y_A?RAtJ;f4ZnAfwaCOk~BKi;;G{k2;* zJf^@pM@(~+(^9DJe$R2yx0A#2U4N6$^BqwC^y%U1`Bo|QMWaQ};LpLA;l)V;r{>1U zlUwZY6tXw^`cKIxd#*y~ngnritlfJf;@?tC!K8Y>Rx&CMzq;!wPXC7mu6PQV&S9e=gGQFtrKd@hP+DN?+vNC*@0W!CHJ+!ts0r zu|mh%?#lrw3&YAq9WJMrHtjVjKQhpPP%I&4sqcyx(RY7J!r9Lj`oD;*^|@~Rnu6TD ze_Y&hwYK=?we+8S@S#?aZoTwHK27pQRTOYeXejsp`VlRv42V>-65q9u*AM~n(7&&x1(aDGKP9)?lgac%Xb>2v6kB&j%|U<5SX`fS8~#M( zcYPOv;%(i}^?{FG9GiNED9ASvQc|XT{2YqK@Z_r&4Me$OcHi#Zx7M_iqXoC{O3SBL z4O?OjZpQxfPya+#XVU*W5<)$J>}$yJaZ_AA80KbcdmD2_rruyf#GYs$ttzb+8(pfE z4jDF!W$*kN9VGsvZv59rxACU;>W+o2W0B`J=|$3W?0*DUzI3<$^3A?seUd{xe?C0d z$3(%3>5Ieu)razqW2=ZZ%Oa$G{A0oM(K}ylj@^b?(`qv={*xhoSKoguUM4i6 z0-}8Jr5=%nJ^guG?8>jU#-K(2T}xa3PU&rYxQJ^qUlUGW@&M7Q{KjXyz4Q466i@nk zu<*i=OKpv%=Ogx{6jOBRLHlbb6qRPpS4u#LB2Knt>iHjc-`of`5|g zDA$BT0bY+|Qd|CX==?{vj*^n4+uTvAKa5Q(N3)xn^eE-8PsQIpkvb_VGa8PSOtbaX)1s3n8Z1_NmJaO_F@wy4Uxbnh!WmzSb+39DH#lFW@uSOmZezLQv6*Sxt6w zRBci5*o1_|WKeND%$+)(^`*Gz$I>FDW@O3B+iAJ7{a(HI;H-DX|Cgr~N7HGyp8Mjm z;7MP;+ir&DxsAFa32c)$bWzD1l64*Gp8VIIO2e6qe{|JJBbjsqyo*0e#AbV%NOgS< z4bs(8JHSQtD9F|lrg$zexX+_f=2`k@{Mb1z31b_M7!RBeKmR=H-VWbweOoZL{B4eA zF>8)yb9pX(+QO@qzTD0R^}R*S96Fnc2ul@acl}QWPv4iavXC6h95JK%0s1`FVDmzH zysu-`2G~VUq6N64ndI=An4`tM+{0vUcWVPq}_aU*T*zHu?LmFZ!4nh zjGTW50wAf7VuFgfOzJM*4KFu*Hk5pJr>}RLD7KSeGk90HWi`2mWJd3Tt%=|5K@)>? zXCFoI>^|Be-Xz5I;s%jykA4<=>4MBjF;(fubu%U!#c+$Ee*mvjk59Ul^`!$|!7# z^shQC65Y95;=GE^04!0auHuKTabp_6N{)7`+?PIwp$9Ld#6Z5165Xfa23}@4^8+L%1`y})HC<-9fbUDo2R6l>MVr`?EAgb ziGhLlw-}kh;1S#dXKSbDTJ7ej{*9{cz9PX_)>#6;P*>bCPPZNSpmp*g?zj3Xe_4ms zizF-JUf;vW{iD(1^-o|;!UP@dUb~MYpB{`BJ3aq9%JQ`rkC2B2B1h77x91gl9!d0@ zZr}SPqby*gLz!P;Ib~P9sBP!3mD~OJ27u2|i-?g-f9_%MybS0Xr@5@v&sYTyl8K$& zpmtP}?gN2bm(f7~-7kLXJMAsKZ=N~ih2TrnAxA!@Ngbg);y0 zFasQNMvtrv^I8%BSNWW{73S5UeWXnOa;!H^_8?kubM5r*&bf*Iz~SV~&%+Dri^a>Y zygG_jU5el-v66YBilQ2h=IrjBS~inI?*n3(hVHN_DkM+HHXRD|{{C9Js0Aejuv%rHaq1f4`@)JFs`h^tdI{Q1_ z>lUxPm@n=M6)Ld8&B8*%bHCjlShe~sPUCAL6+? zB$F_MT6+z3ZTm6bkZt0>^PGFAV7h4JGezwHtB&K>J7lLduNPE#?Q~M!e^Hr+FP7U3 zMp=ZPT@>$D*4EbONF#fQFk753w!T#s|H7|sI@L%$)ZF87pYPJ%oy_G)9k**P?Vh}9 z`pJpuW``l(!1b`1rX-URWGO36!k{e z^BQC4yLIx#)CRruRk^X}zHHdoNZQlBa=x5dYNGIE;bJ51GMETLr z)v)#;R7Isj-#P{o34G(rZX`W%JUsO2=63Ik`)dOaxYfJpbdtii&d+PNYYNBaGy{}B zNT~t=^6X9+;IN%t#j28Y8QR{Q_rm|Jz@}n)6x1_Lb z7s`5Oob}HxqyaBg2$#;h!U!KX=iPttQrTDkSw!KcF^nBUc42^r;SoHy-{Q?0?@q}5*Z*dbGqVD3M&>keZ2!sDKr}Tcek_J*EA>I!hWSLpHGi5oLl;mY% zh}Q~Yf>(QeiY#!ZtzYRs{xdtL9|~eX4<=|7oFe8_fneS!BdC<`C#NJ7{>vD*kGSzx z!jjjk0Rv440UQ-ir!t*-Cui8#per*!Jnd7f#w9JMl=P%wHdsnE=9Fj=Ub-DI+D)? zozHooeJ*ermHzOkxNxBQ!>wqE-Ls~{lfwwFAJ=(T5QBaYhw#44L81$eYd=M>%nBCv zC)vuGz4nZg@fAJ|FUwe=Lo=Y^jrpmO0prPFW@?Z`S!FKrX)l0qg1Uu}si@t`=v+B> zwj}GC(Z>?|o$c`}Qncijfd;3jFUexV%jp0^U!~)GLoWO_mQYIZ=~$4mah(yskvEyZ zH0p+$d5XOfX@+^nsKDD=G!mbmy*b`xzL?83qL_O$Jh2YOIoow+4{9ln74hM3$-3R&SX z0VNMS3+&A=+ZdFkV+11mAbd%k?s1wgfgpFO+le57pRKquD|sKOs=@ zplIR)DPG;MZx6C=FcBx}6GfG7b%@VpM7E9;=Vuv!5_wbh$*k0b!wbpD@$WZ}>xUQx zK*R^1t(RAzOmx&$?kT2{WEGH*dwn)HKW+PZ-O6<)zNt2pCJ%mp>4Nw_pXHEXP zB9ZQOW$J4BIXx~vSsjDKlz+5cf0dKGpb4-f#H3nTQ=xh%w;BsH>(&eJKwE-@+~TOa~&QPe#@}g z4D>R*njOt4_*`yp7=&Mp9FZx+u)ksYGb38zuyz29q`*42+ZO9WemW%=nGLvN-Ktj- zHLxy%jOmUyBd)LyTn^9AoZYOxD*VU6Ah&bmi=h6V(gRs#KY$Q$x99A~|7j7x?@&CY z8QBGz$jQAlaotakMn5jUUKad$EV?)JE8?aF9Szj!QDNIB9$+}vhU?#*5BW^!>U}oi z!g99Vmy&riTT+4vWcpKIT>bETD<-(*HO|78U$s$tUYfe(3`CA@a9U)`CYfqR#QKel zSjtXVyEf5x$^d-S(QV7mPzUm;R*1Er&Qe zj4RLX6Y<7o4ds*r9|zu-C=O4GNqv&VP1=cZ=5yD6<_o*xBl7dWUAc9*f@{BJDP=Ro zE8oxZ)2m&6IAdhviXXEYL&sLF&&eg6l0CkijJ+3eSJ})cTHI-IP0a1*veMsqCOO&f zX*xx0;pJDXdwZIw!K(M&xm)%C)e70`{>4atL%DY|Gt>M??n3;Zj4Oe7;pe;ci8SuW zfjJ<5){Jv%UFby9kEl5EkdDb{G<|qgx*C=CJy*wcN@ye(X#K9)^_uT&kGcxqQk$o& zS1_A{emVO1_WbB|+Gc)j&d^XK-17!X21pb~*2O&?NWAhvGkB#H|J`5DT#boy+UWtB zNj7yMNc$>EFo}}zx{-w5e^(YIP3g>xSCRu?64zTZ2njB`x?6r%xb}voazBH%iZ33` zX+Fh^|K? z^1e0N;nDAU_DLN^+BX#JRxl2n3h7GqF)_$GcI7LMaanT{LN0Dre%|L&j7(@Lj=Tb~ zT_&Tjoq;X<1}cZ)u>+h$Qhf@gSozt>8YT*6fIV|%Qlpl`N(iB6F`99zOOgkTe(pm- zVx{Yc+)zJXYEwn+DuSts$YIb z{uyLAJT2z=e(!wBILWWW!TcRX)hE&cKkFI73?W-rG4?wCwIO+;563H-lti`8RojDB zOK!u%JexdzUM4w=98-NXrSc|8MiS7lmf%qHq)co_k}l|yo_DR{?bpp@A?;`3EF8zt zk1xM289Y#j^|7?`vkM zoW!nEonmydInI9<=%h&Dr`D5d>*PH_jQSQy0lD{Ovy=F?7trw1Kthkw{!HuTc0-7_YFJl>j=q{=+6SDkd4H(?bp-#rWSI6=t{r5CX$5PjRqtU?>^~1fAWaQIN zO1}rG)9V#@TG2xf+j7_+IGpBGGc?`ZZe&6AfYiV)xw)*4u)K=0y1U17Ial|mfRk{{ z)~;ygiFfn9&z6Uhu_HPzJRQsZlIn=OIPllqeI=1IF+`>_%~^IgJyY8Sv$P0^nBmm zLwBwgzNVcx#Nn?ep^f4CcFF!a9B>)U%$n`OjWr({zMk@wrI_6QCEQiS^6u?KS*^3N z>WR;DSS696XiiHKee(%!`sht;ktI!;#_vJjB8NBH?t4Zi`^#^pPg*8pAmzqGqn#z) z6@ks$1ZE^~go<(k2)M$sAcF8AA|EspTDc3s%u7K^Fmoo%KgcgN=nRPNj^dRsR#}QQ z>13;dd5WQ;IKakXf1TJV~yef(-X#zfa+)o6wA zWX@abOcn2(LQGQnp)M~2K;uNgvHi-ql3=llA<7HiBBD#T1ZLu?_k%&(&fqfs;!%7o z(z0)Ve0+TI(u48cVZ&uiFoDSR{NI!Tf{pxwj$7LlVk^);N2w2;W#kkUf>G)|Z`~g& zn#m}NR5$aw^+iT~!#}5Gdu6UBEwAn>PQ8>QIYrXlf|2PQOb@j}nI+TOaHzQZML9cw z$?!)wv;*UWu`!bN9aA6nc_7|D(S?=g9vEvW6=X;cA$nvd84E1)&9EbX*oUEHe_f@& zGeNwN1rU+_+3#*znq&V_(g_sgTX<4OS0GITff~<-9rmj%BR;q)AP3bTb^)#oh~%(f zZ5U}pv=Bh(e%1OUS-E6#!w)0;=Rvu2Zyr7D|g%=C3j6OKFZNCV5-8wXj8U+r;ot|yqwv=V}`3oG<~SD4g$ ziUO-c<23z9*&Q$lq)Xhh>DcX!~mue&$I+;sS#yn;>L% zEM@DxcIr?Ck``>LXjKDnxVH;lCY1t9C7CidT7O|h$L(UWIiIFqU=W$M28^4V8;tsU zm^|Z-shgQI@^QtJ2?C`NMG!}pFHlK`s?Z(1JSAQ>xV38BU4c;WY>)fe@A*BKkx>*BnYW&qkckfsPyr`nWH!m{OJ~L0>mOod~?d@z2I))-& zwp!B|h46Km5T>QSY>CVw9^=9{^WpboR{mdGG34h`Q@$gthOVjmI&ZUF;d`(i2ar1} zN4ve0mJ2stDT*{9ZnowwN_L~{gNIRQ(5jsu9FV>H7JQ?|y)X5Pt9iZc;JxqFpxbmX zFFjYDEM%_<%8NdjL9AjHF-|n^h-+qVLZFXHupmR#p;zv8ozURe+e&%V=VQmLT0bTi z-5JMRyv~{`SGydKDI;=5#4^(KZTcrW)i;xqyGOtfadFVy0t3V+^c5KSFArUiZXwjq z4uz;8%5y%PAgB|D8MR`&6)pt0baEVxjebj=8c*tQ#hJP|a|;vUEIO??exl)lQ^*P} zwDVtIFI}|Z^J{!Jz%QWO*~KATdH-^S;!F9oycP}g5@i$4G&Q<^l=gb{-N?w8mR-9X zCNALd$ZIJxaakO4MkR9%e}E{5E44WCn;=*zS^6DD`X>$!M~gI-l&;Z`SGo+GY+Wc0 zfpux|+E5lId})}pv6)u+JphJh9@??*L4FyZ{#AJlM8tf@1e8S$s7OfEu*XCJ8*xDY zSL5?Z(>E5haFoEdQpE$3Nkc$hF@YTtn4&YV9Di3TM}spJK*;U0Hq}~lU$?YQ% zBG+4N*n>>nQNEKbB-HQ?`}q8`Y7osoMtDY{iNeA0&b30b_JqrSvs+mXL{&RK{% z#28i+)#fgt#<-toAg7-X($UP!ym1u+5?NDmZsm9|%gOA)2l@LllKe`qh`hZK+bo7` z#ks9RC5|e}%J2_rG4Pwzlol52CAR%i2MHFj2@bxnGiZG{=}TkJ%jL#SeJ29OeDehk zj`asXE-K|Cii67{HjXPcmunC#E|C6ARRueCm!*4Z%|!c_NAy+9mneEzk^_NvEticR zqArwSAf5)QOYnlgSTbKh8u$VU}oRz*MgNER`WJXo;yz&wl&t=#)kdb zXJsM7tZh2Duo_eI8}G6|-*AyE#t|eZuKYk{G0W^aQ+wS7OOK0s@)WFM53gqTnqA2oFsrE^Vszb<;QE z)cr_I+;GQ$37~LB=$5u>y;hNjjLJot$-8LWfqRbh&sNB^6@5)?G-RiLv6h%}dL?zy zgO?ntW4|@|fzvz*pw_=cdR9HQ0{GJvr?ChKbZk~7lj><=z1gNZ%O&ZtO9GhYllN@q znf|i`Pi{ma)Mf?=bQKqZk@k#=Zvv1xEi{Vo`9N`MtZJ=ggUWRuLf`v}QlO9*O=s9S z8K>4-HtYE)14z_Wie_?*f)U971rEH9xVLfiLP6os77U%o1O*i^py&uX{q0nJQ!&R|4JaWz{}x{CSfDD5?~iOjP?cc@?A1Uk%I! z=?$r-_I%AbrDI4lb5BXL<Hc#XP>k8 zT6?W;1l+4Jow#WzEn1%1-+;yX*!I8ys3c?c{C`>a8V>^tU+;fg_|BA>ZTx(AjFa;X z9xfPg^pRi~L?aV%rTS86SU~JF;`JB}$0(FT;4sh8TQx+;XSXgN0)$1r6uOugS!Zvj zT6fRy%E!jc0i@!*@7^9kcv4bnUvh{pX-f(?4p|$%O}3Go%}#GiMM%l0zh$iR%D!aq zIjUS;WhO_pDh9vC5K}816!#M1#yVf;|CxJoZ=dmZ6l&mIb@Vp*Q1156FDJQQ(6M;OqDZ^f<)wLK_{V6XYw>D z0NHUf1RWQx4m^gD`66ICJ)SPm^a2@zP;q2Pj!){hsKUt3Iw(uOzGiFAGl_Dk~YR04oy zo(Ms>`ePB_6Ap^vlnDOoET?yy>~7z_X&l+(XCzyergn|0+hGb1G~%H}uSHB;%Usv% zW)MKq4|=QR10fxwWtsDpjC1oK>T4Wsc9GZ(yLMG{Ah91aqqM5)ipMJdV)@ zuh*j|u~Sf!|2$JpKAR~!&+a%{@%U?Vs(dA&%gV%xY6Vh2Mr+NFZ|g@zgvp^}u(>Te z!~44?hVJ9BJS-%xyM}Vjx}8%ijUiFECoP%b##t>FdXu^Tba4756j|Wwnpf)+T;L8% zW7bEg)a*zVz(@Ml1aVpPchF>(2n0j9?!Gj z<+fDw*mm;DjeA}L>v*tXsmLJY6#L&U3nhhcOG$Xi977y$66Y%(_WwjxoUvNiR<*{+ zXlxo6aYhy$jje2{UhOq7P(|s}m_ANTR0SjfJCVV*6OIw-LO$0yr)|m~D87osLdf zC|4RzRmvituiuzk+5XdDs@i9Bf7Y)t8}8K`2?XF26uhUgCh0_Lw^33rky))| zk#F~;qs(K<9z^ilUq40W-bl~nyHuAQezRs*uaQJM+G!`_3(}-eyBbeXY4~d3dwnYj zw5d#njE{szNBOrX>{g-`bq<(f+BpNiwyn#<#h}$D)*&Ps3sY((_s?_+oDhe^0&pE9 zz#a!6tX16qaCm2oUFO3D9YbHny`RtGT6U&YeS!dC#QAz9vZ=Yp)LC$)_w$HhIz`@Vhh>XkYa$&q+2 z2yqtQ+|}(pZ(ac%mc3CvxvcCx}pf_5Y0IK3mjoQkw8WON&1X|Q0DPA_}%orJha zR6$2#A22UFw;*c<@GNjIv%z1*x! z3nknjk066hZ95WYCYXQCDh5=UllFfT`I z6v(#~zk5Z*AJVq`rYpGI`;MWQFk{%cEcgd6>F|jTa4lPGB(OPgX{+(6T9eM**h)yV zyEs@Y=IN46A$Ovvw?BuyWI(Nk^;bQ?RGRDFn6tjp#v(r zi_Wol+%Ve-Qu-t3;$iXdi+laV*?iyn$V+~^T~aw$(j{QFcgy1{M$T^ z@&m9JfJOJc%GWL(rC#i?n+mGIJrNj; zwLslDd*V2$6gVO z-M*(Q5|8%Y;H#4%A-_q5TiOtY5=pEHH84uF=lO}Cn z2PPjJn;z+9RN?vV7Y=aEj=xF|Rb-1q4$!o=0+i&LX}%qDDbzqHV)6_ym;wE#r~AAc z@Y=dDzKyg@pViVu?n_}1+O9bsH*8f3YIuieRjMxoh}0;-Yhr`@py0pPY7n_Jk}@SQ zo0^bmac6sx)u*Y$PCA&>Y5L{iFhL?4DpTTOvE$uN4_Naq2odbwub>e+!h; zfeW?Iw61`TD4Msgh{42;LiO*Bvy$9R-uFMwJ%3Whlh#Ln?S_XmM*img#D47P_V;SA zOZ^&nv@w%xhWdToT{vpbr3m#&`a&dHKJrbrs5#DG`GGCur05j&++*!8&Aq1OwQy>4%7$ z>4IiWjP?s-Z;p(1b}T-7k!2j-DYL5KIlgJ~`r8|yn+1Jh<<8#5_s`T&D0+;ipC>_n z@4fY*?`->nqy*q?)bh{xh|n&f2h+4Mfw-0MJ{^(Lqj`&XgoZ|j#fYE=!sMM{ z3JGW0jR?ZmcEp^x>H($sy7B=n#NlHGkJ45VjfUNnFK?J8FdaMCurmguV}QkB;UNpH zX8w&(&kU*6lL)~XFiS!H zitsBwLdsXhG^{IicWM=V4f^!^apoX8^kt2b0-md3jI>fu>gYV{{5Jdy_s9k4?HOoRksKE&0; zG@4^F5>nVTjV$%@lr=HDv3c2ZA}DETGs`D%-(xMl#S;M9Jm$lvmiigHR%5Fo0Q4@e zs3fOzIIM)$$1g<3`x&I;6K)G%Xkv9D|Ixi!A<&bcQUyTeTQpM7yRM*LX4@R$oUz6` zR{Rcx=cxFAo-zv%>p^s0=Ew2AR!<%o>J93$FuxE&(ZTV6&P6pAdr`kaPp!W+_o4*O z|Am5e4D6QWxwr>T{_V)1MNgGU>!lkan#5b4R%d{oemU$_4vy!eIUDt#P<#C}fFByfZ6Gm0&X-HVhUgS-1z979n#-re~Ad(@ujL47zNm=chyrDGa zT7CljE2lhWbB9SgN7qQR$ts=)Y)yJwq651_Lfm3+8II?M8(`Rf-%EttO9*)e)IQ?f z{@k1_6|<$q1gT?gWb$IZdEJy$o_6>!OvNcWTM{0&U8to5^zgkLRJ>)9;f0L6iLOT~ zp$!&~&MP*e?h~23oMxp%%kxfx$Md`?`4;s9&T^f7g)1Z|#kn$&)USvI6&!DQ$Mx$v z34Fa0?|c%g+{C1b9_RP0l~aoc?>!m#thsJoQx5k^ar`_oSl`v^y1290BOYf zC)=R0fAl!@;{Y=M47)W~;lw?GCVWy5W5?y-7)diEqa zHlj0!6Q^Eg-Mg<(z|+$0Bt1?$-OM<&_nYIf?9A}7V_ItNOhR!1*S=QU2~SS}1n z;6Yj5c&Wu#<<+NFvo81lI6IMP0}-B?yuQF9^KI{E9;QW(gV1?bNl9eH#raqTu14<1 zT+iFPw`{j#{MfL4hd2m}&oq}@zII(49tSP?;gi(NYoB@rd-P>6hh0m$ws@2e(9osB z6?<|(+C%xV_Q4RZQ~vL)#$(SkTeTJbXi-7--C%sjx5>_n*>eM(?|nAK4jd4IoSgiT z^g{keAaUPsySL^!(Y4Mj2%>h;+H(Cy0ldO{Yc>>+C?x^xdylmpMK*E(#XAH8h=j;T zUY(S_xb;Fy11#*0QT@|`T`B-%-ohUwnF=&9*w%k2$tB$McTwVVc{f5VFufy$`u&&f zfaNsON*oy-EvDj>NO}&<)m-c3Y;Tuh1k+`SrBs**@!J@CL zuh?2{VII*Nhh5v#Prtfg=`UD(0UWB`1YF0^EW*Ooe+>@7b4xbF5d(+Ps52DZL9ci^>}D-++_h{@M5_HhYs+?--3)M!q&@;tw&cM69V2Ku+R*M_rID;wUvd+zN=E2_T;fTozkW$z#+5}RA$#Xl7540!hsbKLjO zIU3oI@Xh(Z{2u3RxBwip;NI{XzpmN7;qP3kJ2YvDj`W0%&Zg!jY)|3?!Q%BD$u}`` zMA|dWe;H%5#{0D1%LF;e+DC^d+eJoht~z`US{7JkOn!%824&$|qauxBS6p}g19br* zEM0`#(}rkl>djM>iquOBgY)rx!@gT#AsE_4wc*<>Rl=d7M)2=*2-*;7MHsB*f+^eH zq+rK`)(%}k4XRj(2IFuv^973vN%98yC_K>ef+ltv%G)uXr(=faxzLME&Aw?tXkE)S z%X3b@#Z0~>pLJn=wPcgtH!D2S35`a#ud^%$thlY+&`pylc)uQocjC?S4lP{&POv^# zEs!dFwHR7i8=jgc4%Uh8Q@QLb)$LiX?Rh;_Z$oa=bFSBKk=Xh3{|Kf6*!>w04??pp z=b4)W0w7*SJ@}Z!aHE+u`uqBw@DU%>81sB^y}L_&!Gb+Tx0MPwt|Yu4 z`XY8j|2;%_rBrG^`WZpxWFI&ZAfg(N)U2BHF3n* z99Jr@d^zxSE7GCyI{Dx%aOY{be@!gA^Uc2T{dQ5rbITlMgZDYscTUtk**FD4M5l5d z`6Oj<`*Rm9bMY>cqUe@{_<@?}X8`=@I3G`4hM~}42hET;5?nwzKArS(N&K_>E1)v~ zE%HKSx1_#CSm`qafANO0WaWg`SZ!pu3C#|@PDc%`OrkK&{$lB^4FcB@`*DO%!#k5J z&)-nWkM@c(HuC9&H5TZEHm58i8>ALho1Y7J{)psR{y9Jpy{B1r{+r5zyt~(FK#-eh zXFK#@9C`Y1x1%cg2ResEa1cMKvl4(%?%Atf$f0N8DMwbS^>bTG}TXErw#qLmoO!7mbgjieK z%%v!-)nR^ZlVj24LPo{>ZB?iifv^wAhNt2q1ii37osQM% z)O-f%>gY#qc;jA%xn_RuSJsD8ebW-8Zhx>M%A=ky;j3omtE<*Qf);qWc$clkdEo|6 ziMe9&QkpCikwC?Yh+VFuYxJ>Wr&^GFc{y3~Qgc!nGiWnT@I|{t@SoDv5=@6jC(h-&tYQZY>;IyQ1DcL_03@X5lY591nqtmMSIORA+|sA)h{OIEw|JBujTI+(k})eDvAhTGh{oo{K$?q+zH~s9 zB?@~h!=|`53bbo$I1l%DoEdh)fH0&yxh{v-czpc9f46y>>9bHb8V_FF5GJ!N`MxUhzu4L*($bcypy;)H)} zZx`q2v{?Ag;*Ev7w++%MU7M8Ox?yAqD z%jCr!HTcA4&#`S>^`$L4{;?d@iu7eZou}d*bgAL(aqApy(CKZS?$+3^QQ5#^4^oaO zivJ{OOeyEvAeB&F?%f-|+9MqzqdISz3TjZcMARIG-SzhVdiQB(Y|9YKHu)NZVS5uo zOGFWMH!glvLGB(~x6ZW&6Z|SYB-rCEB42ro9?wvOZIcRn2~CKDp;DS&9j>ji(UeHNqcvbYo>P1j6@6G0OJIp!+EoVn8*e< zi;dT!SiG`lxRrdYQ|{r`sqcL`xI?Y$c(5ed`d}&D7?v-ur_WFd-FWD!DITfFPgf?9*{v`%QNe)TVN##3Vww>#{ zFnt6yYHr?q5%;Ygs&jIynjaq?m?^81x|G}WQcs~nG}UF_6MlYcv5ewr%5m(=>q z(71)|%L!tIOC7?+sks#7bnwe(C!cDOIIao>;o7^d?d_>y9G;^WgFvV+63LqS)BuNv zVm>GC*@l?OrXlu&{5GY?w*#nI;XLNDJ)(6?c_4OZ5a?Mi4{py$d~Qtqq7f%_I#^t% zh^|?WeoS}M<#Rx4Ow1OB5{iicW~0+3A8>`hnrdZTI72uu6RKAq5|)0$3&wL5SbS`Y zDk%8I#0YF3Xe}tpa=^dEwY4b?xPE&y)%E)LL`TxIKyp=fk+WKNDHV17_|xb>i>d^l zBf7I+bdFN~C5Cuv49a_IAAjg7cDhBm+e%0aMXC2#aUGe_5D{a#mul2whESzSvREJK zPBpUcghsP-o$?3KMu-YDTbPbG?MGOO_etLAxKMdwvj4nH{EympkMxrP2Ng~Qj=z=W zb0i_3GJ09_y`4#!cXFsVtq`8uJTsGtM^*{6qmhZ+a5aCmcxQQ38yO_6cY65~N$~_| zk;tzyITYK_#eMm5ODC>$c37r(QXW+g4;;DPlD8i?))-ex6%??s_0f z>aY7BjLv}qjz~81a?`dABX(Iam9K0Q@lWYX~K}zk8VhlGM(jP{aKeOi2F^te7N>v%K>91!Q1Xb3ta~ z!&!Z0l=hc}_c61TOz;jv+cK#(C@N=7FBw#L)C~9!OI4zDC!KAx^NRzJuc~njS0Yx+ z-G*mI&(*srf!5wYJ&6_7JCGhax=EJG#!(N zsa+Sje^F(M-a^JY?C>LGntWkd`sPT%)DWVJMM$gS)Vgs$wUHc!-n)FfFAy(<;f6ga zDlKHJXh_ePTh946#p^#CImur@mCu@(-$?H^@F3`*En2=gk+js4w)c6=J}9@NV&nFb z7F{jIQ*n_aRcz){p;DFCltT(unyLhsmzulktaUb1K`}47m&Wn!z%`hZIbC1L%Mj=G zPn3spTJH7GC8n<6?K88u;EWikznGOL6XMpsleIn9W8d@qPWE#q_=|=4PzEe)Z`RbN zz*gbi(M)Dr(17pBI@?{`{CHg{3$xqqXUfkMywI2_Rr#{>we`LHZ^#}xEV)wFa0sF@ zvpE9WZl6Z;y7^R!4Yu!icsbhg_k;r7!rxWl69+TO2pUi&El3@G-2Ly8bq{Si1vL~D zxKikbzT8%PP`OKw1@_CVq0_8FDF)M?+vxP z)vxP+`HX%!=%?5GCS!-Ez9xR{X1sK`X{c&Q+jWaAsRZ|GPG%k$t3~h>ZDcNYN>~!# zbl}Q4te*JpMZ<2Xq~Ao8hJU2UNb+M@&p0C8E6s5jo<=@i7GQnb`;|vi8%PVCcEWKy z?TN(-WMqYd-b!s1$M_5@KbReypamLP^9n?&@%#D4>e?~>vCB6`x>fFz_auJ6l$Fm# z<+1TU`hex?js^k|5nPI^wZGOa#Zm`W)PP4!+n!(wP+&debogmEJNyoXK9it@6`VKg zg1S|&iUDd<3F;>zVTA8eIw*3buOeEgV27GdJYHm|6nnXJU`-F4nE^t&>f1ClCr>1& zj-@c=7Umi^D}xnIkDTa?xs-$4_hdi4{HNRQ|4+t7Qox#}Mwq7pCkqR+c;}3xR7s$% z5*m#yR0r}?9=hYETCf@FcqM%eo^7kaBBc(JRDZvEhQt@DLR&XA?_Pvqza@gz*D_Pw zNg&JgBpZdEn1Z6i+Dzcyf>`36iDmc&0NMrkjudRpX#n2lo=l8;-crIJn|PXy=VKc| z{Od2lZ#=@YKtt&*n!R+IPkEN*8vKR5-6BJaP)aBaNXK&)!8u#|o(lG8TJ`eMC(%2` z;clj8VWUiW)!u-zDyc60U(zNA>SQiCxw-WzZbNi1LDe^q^LVC?t;nW1PLffh1ySm0 zBPUpV#~hb>eYKQZ)i`)bs^PJLx_)bip}~Fq^yQgCSE?QW5vWsl6*0!bdUIn&K<4Yb zw*J+FPmzw#SG~9>8E+z|1eiSRR?B1NF;GcXG10y$xVyA=#XQ;q#VA>+P1)T8R5AT6 z$~3IB_iF+r5gL+ikR0xhYv2Dh+`bAYcHWv5b?4dM(>0j&GmmOKR_m+XmsMUspW8bw zg6;)(fGlQ{|X(C;a}Ems7L}+4P*jsBqMj;>6XjI=a-i& zS%FP*4zlNQ&t?J-GrVS5SQ(80Ne;hkM?S0*s4fvaJua$|cSy-Tcc{BC3Wy&+y=#p%k$v6j}B zn+wT~`<{2wS8T`~8&;o~Ck0=z*z8wwGXdh1vxjZxx-MA4j__AWmN`2+D7Bxt^aMiI zG~h#x!bGHR0n-wi_VqGzE1<2(%AQr>*v+GJrLQi)0%xGV#xM{)c+7~LP`|`kr)%h1 z5E1FcOy~;vP_%8Y*U4Lso)GY{?0-9Z@B|v3{)awCGOZfRGH-K<+n|QECwj@$ueHZv#bwE>rkl!_YM7kAbzHQqex4HfaM{lrI*gPEk3={cef>N7yDJ?XY%BPi@lcRcxDy?6+0ZMIH$kdyOt(ak*Rm7{s9{`bI zdDyoQO}VVb^JYixOT8xtx8>8^EaMZEZ}pnZ-m?@*y{IDFv+muXml*sKU`SLH_4e2M zpY*XG-adOFQeAzkNqz-BWPJ=f9T$0FQlH#^TyTJkP^~$v_cG{Lu`5L%KNiN3;{Ae4 z`OfTe%jIO79P~BPBb$EmuRK&y0o^2xDE0wHrl2kj_AmK=cqQP8B4xz|My__G>X_L) z4AT3(*2H=Ll|WNBhMwP zfc~F>91IVv`Sbt3eR+2d$JL-zBY4E>2D#=J;TboHGvFZo2E$gwU=ZHc@4AwF=e0dJ z+pM_T&~x_p)c$@BS^vKMZbuqZx%K=O1;tyv38C5fGMR4nu&Z51jNp#^?}{#--sr*i(pzh+6X{YNVl69bgrbVK>mfMso4iOwIao`S@`mN2s0Q2~pM4ZxQOWmtrM zXqxdz@MN<Mb2bz&UGov{6?;x(T{p&@Eiu)Li)hdm9X#H73tnCp^ho_8=b6x{9~eUOTkoNB zD?lSr-Pr>}2Z|V9vWZ*Ii+PSi(m^waw}~@5vz*qUm_xz*Gf@jI&XX#)l+v2t=F6_> zOs?`w4KB~m`j_$Dnid-P{D!Ohi!eD+jHqI`78)m+Gi444FO*z1X>k;>H$FB`q3-7KW-qjY-fOD&dljvDTI2P%Srh) zIZ^8{PPa4iN+=5pCLRp8h^E*!tf3`!Fd{Mv*o$%Pjt|I+T%Oe4RsubOnjvfzu-lpH zI%WyZ20}%&l@`J7oIh@~cUy|4%j;|=gQEDt=>(&NwuW@Inom;jli_*G6ZQ@1#k4xc zaVj4}rK*@at_#uAi2&;uoW1gIh3bEWR0Pzg&Fii$}UTyD0=J;x&- zIy#5n!(Mu6>}0F=R6QE|Dii$z1ZFq$T&nK#(d3pe|A(rG=bW|i}x%LS#22n%1e%ARmkB}UTQ8>II7d8Jyi!O_OsHm9vOb)SNAeF z8>O-a@Xy>CRL40wuT@t?JmVe!AO8XMLUi`YJe%p9<}hfD{W4KQyq zr~wv9MNui(BXUI=i#8;39E{NOx&33MWxI{)-OCxTyY-?0Zqe0D6<|4F1TtUuak`|L zibP7+O}#?Cs?T^0ln86)Sq6jI*tFkBt_;|}1B-sxIp74RPyj}WY>J3jxT<&Qb+RAb z^(INsxMgh=H|rjVae^l?!;dUmI;8ojIZ4uy3^4+-wiU9xc#98x13)G81-PQ2N zVAkK>nR=pkLoL%ThLl12M?C!BuLD`MO@@}Oh&6N4YHffv*M5Gphg!2CC2_ z$%yR`<(`VTL(IT&3J(7k8UFz;#G2l=cL)_W-cxo->OR5LEzBrJs@jv%#|DBtR*ds#+vSvHeK4Bl^ zbB|En*h&tjY33Kn*HqkiGHY(@i>TfCenQdmUaa!edG%xZE?pZZl$nkm&Zx7xdX^#l zcnF1>(8h9P^-{Gv-1zb87tC3*mq#0ryo3mF46Q7p>p%(TZrb;Src7&>c=ew(wXI}G z<9XCH)QW*zGd?)lr`k^8wFL#>QnbY$vM-_OCP=AEiLg*Q5#G5yVVmr-5NV3~^~Dpt z(EENv$Pj$8nD&N&wS=Fqpxrfb6ioxoc87Ap%Z(S6x1ooAyEORa;pavq8QEQS z)L}BRm?sIXjdTof%(o7)Kg4w^Gj~ptZP1Ktj-6g6AisEczGk<_*0|mtL4oEX_b;r`qS%=XLcA!|K*5 z4O%V|lJW`2p*Q>Pic{6zKE)WeiM!lG8?ZgdR{ooD&=noF*Qg{tGBUy~=qMQ($032} z7fx{rbW5i0yttV!^$C4lMz8uP0tY+4bGAS5c*EZ#7WJfJeJp7Ji^WP*atRf8((C$S z`%r7dg6L%dxLL6SoZaXZHm!=!Gwdo{f_CVUXwq(q;(O1c2yhs6l6MP0?N^Nvs<=bK zjMy8XFc9aQ-u0SFq>RP5_gqNyT3<`a#M;7=DvWdFW+#1aHy-D}`^yw7C%^HeBU&cP3neeWjyBvZNx`JaD| zB_p%9B>f~~C4H8RKkV7uLs8E zaQ*Ma$jIK`p!#zqFq!wS2K~P-^TW}q0FpN=x|~;<@>K#d;VBGlEbq^5E@ku%*RdO# zC;&Hr{rf+?J&zwhzV!3Q$FBneA@A(?I0=%W0nm{lU8*_kSG;lQK#O3+mS? z+}l#Vx>_q$Tc^Ha$=ldF^kAn(l2&7N=KJc-JcVC~Mot<@X{@fn4$bN+- zTA`egeHGF$Ls9XppB?o#I4))Me7aS2WMPyTS<-$8EP_!sM#vrf{UkbTR*jAd7QKmP zv;O#+{bQ-l=)^l!(@7UTu`(Sy*O9SOOs6T@=W)sI{I;qYO1Atc*`Y|lqG6-W-@%h7Q@o=hmoIz&>Hh&StVD$X literal 0 HcmV?d00001 diff --git a/docs/consume-packages/media/package-manager-package-readme.png b/docs/consume-packages/media/package-manager-package-readme.png new file mode 100644 index 0000000000000000000000000000000000000000..855595145a57bc44e769ed94f462bab4ab34bcee GIT binary patch literal 362899 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 +# NuGet 6.13 Release Notes NuGet distribution vehicles: @@ -23,6 +17,110 @@ NuGet distribution vehicles: 1 Installed with Visual Studio 2022 with any .NET workload -## Not yet released +## Summary: What's New in 6.13.1 + +NuGet 6.13.1 is available in Visual Studio 17.13. + +* Support for new slnx solution format in dotnet nuget why and dotnet list package - [#14034](https://github.com/NuGet/Home/issues/14034) + +## Summary: What's New in 6.13.0 + +NuGet 6.13.0 is available in the .NET 9.0.200 SDK. + +* Support for credential providers deployed via .NET tools - [#12567](https://github.com/NuGet/Home/issues/12567) + +* Opt-in feature: "Supplied by Platform", which removes packages that are supplied by the .NET platform from the dependency graph. This results in better performance and eliminates false positives for vulnerabilities in transitive dependencies. + +* dotnet nuget why should check RID specific packages - [#13718](https://github.com/NuGet/Home/issues/13718) + +* Allow specifying the msbuild binlog path when invoking static graph restore to avoid modifying the environment - [#10789](https://github.com/NuGet/Home/issues/10789) + +* New Dependency Resolver Fixes + + * New dependency resolver downloads more packages than before - [#13943](https://github.com/NuGet/Home/issues/13943) + + * New dependency resolver does not handle floating versions correctly in some situations - [#13992](https://github.com/NuGet/Home/issues/13992) + + * New dependency resolver erroneously reports NU1605 (downgrade) when using transitive pinning a direct dependency and a downgrade exists in a package graph - [#13938](https://github.com/NuGet/Home/issues/13938) + + * NuGet Restore restoring old versions of transitive dependencies when direct dependency does not have guidelines for user's targeted .NET Framework - [#13934](https://github.com/NuGet/Home/issues/13934) + + * Project and package in the same graph with the same name but different dependencies may lead to incorrect versions of the dependencies of that id - [#13888](https://github.com/NuGet/Home/issues/13888) + +* Package Manager UI in Visual Studio now shows embedded READMEs for NuGet packages, if available - [#12583](https://github.com/NuGet/Home/issues/12583) + +### Issues fixed in this release + +* Detect if restore used NuGetAudit or not for PackageReference projects - [#13778](https://github.com/NuGet/Home/issues/13778) + +* Add indicator for deprecated and vulnerable packages to Package Details tab header. - [#13974](https://github.com/NuGet/Home/issues/13974) + +* Navigation telemetry for 'Clear All NuGet Storage' Command in VS Settings - [#13968](https://github.com/NuGet/Home/issues/13968) + +* Nuget Package Manager for Solution automatically selects transitive dependencies - [#13893](https://github.com/NuGet/Home/issues/13893) + +* Debugging large repos with static graph-based restore is slow - [#13876](https://github.com/NuGet/Home/issues/13876) + +* NuGet Client SDK packages updating to net8.0 - [#13842](https://github.com/NuGet/Home/issues/13842) + +* Promote NU3043 warning to error in .NET 10 - [#13814](https://github.com/NuGet/Home/issues/13814) + +* Setting "Allow format selection on first package install" meaning is unclear - [#14016](https://github.com/NuGet/Home/issues/14016) + +* `dotnet nuget why` reports missing argument, even though it ran - [#13908](https://github.com/NuGet/Home/issues/13908) + +* Spacing adjustments in Details Pane Tabs - [#13880](https://github.com/NuGet/Home/issues/13880) + +* The focus border on the Details Pane Tab content is being truncated - [#13879](https://github.com/NuGet/Home/issues/13879) + +* JAWS is reading the entire contents of the Package Details Tab when first visiting it - [#13878](https://github.com/NuGet/Home/issues/13878) + +* ContentItemCollection.PopulateItemGroups unnecessarily allocates - [#13851](https://github.com/NuGet/Home/issues/13851) + +* Read and write .nupkg.metadata files with System.Text.Json - [#13835](https://github.com/NuGet/Home/issues/13835) + +* NuGet Fails in Containers When HOME Is Not Set - [#13834](https://github.com/NuGet/Home/issues/13834) + +* Signing: key not disposed - [#13823](https://github.com/NuGet/Home/issues/13823) + +* Walk TFMs in parallel when collecting pack outputs - [#13776](https://github.com/NuGet/Home/issues/13776) + +* PERF: NuGet Cloning operations are showing heavily in allocations during VS solution load - [#13647](https://github.com/NuGet/Home/issues/13647) + +* Fetching Vulnerability Resources doesn't respect cancellation - [#13644](https://github.com/NuGet/Home/issues/13644) + +* Wrong order of arguments in logs for centralized package version (string `Info_AddPkgCPM`) - [#13155](https://github.com/NuGet/Home/issues/13155) + +* Satellite assemblies for three-letter languages are not copied from NuGet package - [#12253](https://github.com/NuGet/Home/issues/12253) + +* Nuget pack doesn't support blank <version> in .nuspec even though version is passed on the command line - [#7987](https://github.com/NuGet/Home/issues/7987) + +[List of commits in this release](https://github.com/NuGet/NuGet.Client/compare/6.13.1.3...6.12.3.1) + +### Community contributions + +Thank you to all the contributors who helped make this NuGet release awesome! -This version of NuGet is in preview and these release notes will be updated when it is released. +* [SimonCropp](https://github.com/NuGet/NuGet.Client/pull/6185) + * [6185](https://github.com/NuGet/NuGet.Client/pull/6185) reduce memory in ManifestMetadata + * [6168](https://github.com/NuGet/NuGet.Client/pull/6168) remove duplicate dictionary lookups + * [6166](https://github.com/NuGet/NuGet.Client/pull/6166) remove redundant Count() in GlobalPackageFolderRepositories + * [6165](https://github.com/NuGet/NuGet.Client/pull/6165) avoid Any call in GetCommandAttribute + * [6167](https://github.com/NuGet/NuGet.Client/pull/6167) remove redundant casts +* [baronfel](https://github.com/NuGet/NuGet.Client/pull/6124) + * [6124](https://github.com/NuGet/NuGet.Client/pull/6124) Expand Locale parser to support three-character language codes + * [6018](https://github.com/NuGet/NuGet.Client/pull/6018) Update _WalkEachTargetPerFramework to walk TFMs in parallel +* [ToddGrun](https://github.com/NuGet/NuGet.Client/pull/6098) + * [6098](https://github.com/NuGet/NuGet.Client/pull/6098) Modify ContentItemCollection.PopulateItemGroups to use pooling for highly allocated temporary data structures + * [5930](https://github.com/NuGet/NuGet.Client/pull/5930) Attempt to move several data structures to be immutable +* [mthalman](https://github.com/NuGet/NuGet.Client/pull/6212) + * [6212](https://github.com/NuGet/NuGet.Client/pull/6212) Fix formatting in GraphOperations +* [kasperk81](https://github.com/NuGet/NuGet.Client/pull/6072) + * [6072](https://github.com/NuGet/NuGet.Client/pull/6072) add SpecialFolder.UserProfile fallback +* [MichaelSimons](https://github.com/NuGet/NuGet.Client/pull/6102) + * [6102](https://github.com/NuGet/NuGet.Client/pull/6102) Update source-build team references +* [akoeplinger](https://github.com/NuGet/NuGet.Client/pull/6025) + * [6025](https://github.com/NuGet/NuGet.Client/pull/6025) Fix typo in EnhancedHttpRetryHelper.cs +* [jimmylewis](https://github.com/NuGet/NuGet.Client/pull/6027) + * [6027](https://github.com/NuGet/NuGet.Client/pull/6027) Refactor calls to EnsureVisualStudioHost() to a base [TestInitialize] method + \ No newline at end of file diff --git a/docs/release-notes/NuGet-6.14.md b/docs/release-notes/NuGet-6.14.md new file mode 100644 index 000000000..2b950855d --- /dev/null +++ b/docs/release-notes/NuGet-6.14.md @@ -0,0 +1,28 @@ +--- +title: NuGet 6.14 Release Notes +description: Release notes for NuGet 6.14 including new features, bug fixes, and DCRs. +author: zivkan +ms.topic: conceptual +--- +# NuGet 6.14 Release Notes + + + +NuGet distribution vehicles: + +| NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | +|:---|:---|:---| +| [**6.14**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.14](https://visualstudio.microsoft.com/downloads/) | [9.0.2xx](https://dotnet.microsoft.com/download/dotnet/9.0)1 | + +1 Installed with Visual Studio 2022 with any .NET workload + +## Not yet released + +This version of NuGet is in preview and these release notes will be updated when it is released. From 50b1412ca1c412313de0c01381ded4cf3db0a0d1 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Tue, 18 Feb 2025 15:38:45 -0800 Subject: [PATCH 903/988] Specify correct version in the nuspec (#3399) --- docs/consume-packages/Central-Package-Management.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/consume-packages/Central-Package-Management.md b/docs/consume-packages/Central-Package-Management.md index 029b2fad7..df9a08545 100644 --- a/docs/consume-packages/Central-Package-Management.md +++ b/docs/consume-packages/Central-Package-Management.md @@ -165,8 +165,8 @@ When you use the pack command to create a package, both packages will appear in ```xml - - + + ``` From b15c3c20d16165a784652c9cf4b3d447c4547c48 Mon Sep 17 00:00:00 2001 From: DAnikeyev <121971305+DAnikeyev@users.noreply.github.com> Date: Wed, 19 Feb 2025 04:39:10 +0500 Subject: [PATCH 904/988] Clarify version match constraint in Package-Versioning.md (#3398) --- docs/concepts/Package-Versioning.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/concepts/Package-Versioning.md b/docs/concepts/Package-Versioning.md index f4bde854e..65cf31c3f 100644 --- a/docs/concepts/Package-Versioning.md +++ b/docs/concepts/Package-Versioning.md @@ -132,6 +132,9 @@ Avoid specifying an upper bound to version ranges to packages you don't own unle Will resolve to the highest acceptable stable version.--> + + + From a590d43e8a154f58c481aa6e3ab0aa4986297e4a Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Wed, 19 Feb 2025 10:10:24 +1030 Subject: [PATCH 905/988] Clarify NU3043 being an error in .NET 10 (#3396) --- docs/reference/errors-and-warnings/NU3043.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/errors-and-warnings/NU3043.md b/docs/reference/errors-and-warnings/NU3043.md index b633581b0..a663e1344 100644 --- a/docs/reference/errors-and-warnings/NU3043.md +++ b/docs/reference/errors-and-warnings/NU3043.md @@ -13,7 +13,7 @@ f1_keywords: > Invalid value for `--certificate-fingerprint` option in the `dotnet nuget sign` command or the `CertificateFingerprint` option in the `NuGet.exe sign` command. The value must be a SHA-256, SHA-384, or SHA-512 certificate fingerprint (in hexadecimal). -> This warning will be promoted to an error around the .NET 10 timeframe. +This warning is promoted to an error in the .NET 10 SDK, and will be promoted to an error in NuGet.exe around .NET 10's release. ## Issue From 92358933d60430897544819dcae8eb6341fc72d9 Mon Sep 17 00:00:00 2001 From: Igor Velikorossov Date: Wed, 19 Feb 2025 10:43:28 +1100 Subject: [PATCH 906/988] Update NU1008.md (#3331) Explain how to override package version --- docs/reference/errors-and-warnings/NU1008.md | 34 ++++++++++++++------ 1 file changed, 25 insertions(+), 9 deletions(-) diff --git a/docs/reference/errors-and-warnings/NU1008.md b/docs/reference/errors-and-warnings/NU1008.md index c3cf75ba3..e8854d32a 100644 --- a/docs/reference/errors-and-warnings/NU1008.md +++ b/docs/reference/errors-and-warnings/NU1008.md @@ -29,17 +29,33 @@ In your project file, you may see: - Remove the version from the PackageId PackageReference. - You may need to add or update the PackageVersion item for PackageId in Directory.Packages.props -Example: + Example: -```xml - - -``` + ```xml + + + ``` + + ```xml + + + ``` + +- Alternatively, you may override an individual package version by using the `VersionOverride` property on a `` item. +This overrides any `` defined centrally. + + Example: + + ```xml + + + ``` + + ```xml + + + ``` -```xml - - -``` > [!NOTE] > Note that metadata such as [IncludeAssets, PrivateAssets etc.](../../consume-packages/Package-References-in-Project-Files.md#controlling-dependency-assets) should remain on the PackageReference item. From cd11a4486fdc8a8ffb44899e3a9ffef4bd6642fa Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Thu, 20 Feb 2025 16:41:27 +1030 Subject: [PATCH 907/988] Document how to enforce audit during restore (#3394) --- docs/concepts/Auditing-Packages.md | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/docs/concepts/Auditing-Packages.md b/docs/concepts/Auditing-Packages.md index 873c7b345..2e9b551e4 100644 --- a/docs/concepts/Auditing-Packages.md +++ b/docs/concepts/Auditing-Packages.md @@ -4,6 +4,7 @@ description: How to audit package dependencies for security vulnerabilities and author: JonDouglas ms.author: jodou ms.topic: conceptual +ms.date: 02/11/2025 --- # Auditing package dependencies for security vulnerabilities @@ -105,6 +106,34 @@ Alternatively, if you want to keep low and moderate vulnerabilities as warnings, > [!NOTE] > MSBuild properties for message severity such as `NoWarn` and `TreatWarningsAsErrors` are not supported for packages.config projects. +## Ensure restore audited projects + +NuGet in MSBuild 17.13 and .NET 9.0.200 added output properties `RestoreProjectCount`, `RestoreSkippedCount` and `RestoreProjectsAuditedCount` on the restore task. +This can be used to enforce that audit ran during a restore. +Note that these output properties are not available with [static graph restore](../reference/msbuild-targets.md#restoring-with-msbuild-static-graph-evaluation). + +Since MSBuild is a scripting language, this can be achieved a number of different ways, but also has the same restrictions as MSBuild has. +One example is to create a file *Directory.Solution.targets* in the same directory as your solution file, whose contents has a target similar to the following. +Note that *Directory.Build.props* is commonly used, but is imported by projects. +However, NuGet's restore target and task runs at the solution level, so needs to be in MSBuild's solution extensibility file, not the project/build file. + +```xml + + + + + +``` + +Depending on your use-case, you may wish to use condition `'$(RestoreProjectCount)' != '$([MSBuild::Add($(RestoreProjectsAuditedCount), $(RestoreSkippedCount))'` on the error message, to account for projects that restore skipped because they were already up to date. +Similarly, think about if you want this error to happen everywhere, or only in CI pipelines, and what environment variables are defined in your CI environment, and factor this into the target's condition. +Again, since MSBuild is a scripting language, you can use any of its capabilities to customize your repo however you want. +Viewing [MSBuild's metaproj](/visualstudio/msbuild/how-to-build-specific-targets-in-solutions-by-using-msbuild-exe#troubleshooting) and [binlogs](/visualstudio/msbuild/msbuild-command-line-reference#switches-for-loggers) are useful to develop and troubleshoot solution level targets. + ## `dotnet list package --vulnerable` Once a project is successfully restored, [`dotnet list package`](/dotnet/core/tools/dotnet-list-package) has a `--vulnerable` argument to filter the packages based on which packages have known vulnerabilities. From 635ad1148a9b5c1c9950b161e4a16fdc5a7879d9 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Thu, 20 Feb 2025 21:01:45 +1030 Subject: [PATCH 908/988] Update cross plat plugin docs (#3395) --- .../NuGet-Cross-Platform-Plugins.md | 73 +++++++++---------- 1 file changed, 33 insertions(+), 40 deletions(-) diff --git a/docs/reference/extensibility/NuGet-Cross-Platform-Plugins.md b/docs/reference/extensibility/NuGet-Cross-Platform-Plugins.md index 061508024..2c05f48cd 100644 --- a/docs/reference/extensibility/NuGet-Cross-Platform-Plugins.md +++ b/docs/reference/extensibility/NuGet-Cross-Platform-Plugins.md @@ -12,20 +12,11 @@ ms.topic: conceptual In NuGet 4.8+ support for cross platform plugins has been added. This was achieved with by building a new plugin extensibility model, that has to conform to a strict set of rules of operation. The plugins are self-contained executables (runnables in the .NET Core world), that the NuGet Clients launch in a separate process. -This is a true write once, run everywhere plugin. It will work with all NuGet client tools. -The plugins can be either .NET Framework (NuGet.exe, MSBuild.exe and Visual Studio), or .NET Core (dotnet.exe). -A versioned communication protocol between the NuGet Client and the plugin is defined. During the startup handshake, the 2 processes negotiate the protocol version. - -In order to cover all NuGet client tools scenarios, one would need both a .NET Framework and a .NET Core plugin. -The below describes the client/framework combinations of the plugins. - -| Client tool | Framework | -| ------------ | --------- | -| Visual Studio | .NET Framework | -| dotnet.exe | .NET Core | -| NuGet.exe | .NET Framework | -| MSBuild.exe | .NET Framework | -| NuGet.exe on Mono | .NET Framework | +This is a true write once, run everywhere plugin. +It will work with all NuGet client tools. +The plugins can be written in any programming language, but the easiest plugin development and installation experience will be with .NET. +A versioned communication protocol between the NuGet Client and the plugin is defined. +During the startup handshake, the 2 processes negotiate the protocol version. ## How does it work @@ -41,18 +32,15 @@ The high level workflow can be described as follows: The current protocol version is *2.0.0*. Under this version, the requirements are as follows: -- Have a valid, trusted Authenticode signature assemblies that will run on Windows and Mono. There is no special trust requirement for assemblies run on Linux and Mac yet. [Relevant issue](https://github.com/NuGet/Home/issues/6702) - Support stateless launching under the current security context of NuGet client tools. For example, NuGet client tools will not perform elevation or additional initialization outside of the plugin protocol described later. - Be non interactive, unless explicitly specified. - Adhere to the negotiated plugin protocol version. - Respond to all requests within a reasonable time period. - Honor cancellation requests for any in-progress operation. -- **Starting with NuGet 6.13, executable plugins (including global .NET tools) must follow these requirements:** - - Naming Convention: Must follow the pattern `nuget-plugin-*`. - - Windows: - - Must be either `.exe` or `.bat` files. - - Linux: - - Must have their executable permissions enabled. + +Plugins discovered from the PATH environment variable (for example, installed via `dotnet tool`) additionally must match the filename pattern `nuget-plugin-*`. + +NuGet 6.12 (MSBuild 17.12, and .NET SDK 9.0.100) and earlier also required plugins to be Authenticode signed on Windows. The technical specification is described in more detail in the following specs: @@ -72,30 +60,27 @@ After 1 minute of inactivity a plugin is considered idle and is shut down. ## Plugin installation and discovery -The plugins will be discovered via a convention based directory structure. -CI/CD scenarios and power users can use environment variables to override the behavior. When using environment variables, only absolute paths are allowed. Note that `NUGET_NETFX_PLUGIN_PATHS` and `NUGET_NETCORE_PLUGIN_PATHS` are only available with 5.3+ version of the NuGet tooling and later. +NuGet searches for plugins from a convention based directory structure, and scanning the PATH environment variable. + +### Convention based discovery + +CI/CD scenarios and power users can use environment variables to override the behavior. +When using environment variables, only absolute paths are allowed. Note that `NUGET_NETFX_PLUGIN_PATHS` and `NUGET_NETCORE_PLUGIN_PATHS` are only available with 5.3+ version of the NuGet tooling and later. - `NUGET_NETFX_PLUGIN_PATHS` - defines the plugins that will be used by the .NET Framework based tooling (NuGet.exe/MSBuild.exe/Visual Studio). Takes precedence over `NUGET_PLUGIN_PATHS`. (NuGet version 5.3+ only) - `NUGET_NETCORE_PLUGIN_PATHS` - defines the plugins that will be used by the .NET Core based tooling (dotnet.exe). Takes precedence over `NUGET_PLUGIN_PATHS`. (NuGet version 5.3+ only) -- `NUGET_PLUGIN_PATHS` - - defines the plugins that will be used for that NuGet process, priority preserved. If this environment variable is set, it overrides the convention based discovery. Ignored if either of the framework specific variables is specified. - - - **Starting with NuGet 6.13:** - - Can specify paths to executable plugin files, including .NET tools plugins. - - Supports both file paths and folders containing plugin files. - - **Windows:** Supports `.exe` and `.bat` files. - - **Linux:** Requires executable permissions (`chmod +x`). -- User-location, the NuGet Home location in `%UserProfile%/.nuget/plugins`. This location cannot be overriden. A different root directory will be used for .NET Core and .NET Framework plugins. - -| Framework | Root discovery location | -| ------- | ------------------------ | -| .NET Core | `%UserProfile%/.nuget/plugins/netcore` | -| .NET Framework | `%UserProfile%/.nuget/plugins/netfx` | +- `NUGET_PLUGIN_PATHS` - defines the plugins that will be used for that NuGet process, priority preserved. If this environment variable is set, it overrides the convention based discovery. Ignored if either of the framework specific variables is specified. +- User-location, the NuGet Home location in `%UserProfile%/.nuget/plugins`. This location cannot be overridden. A different root directory will be used for .NET Core and .NET Framework plugins. + +| Framework | Root discovery location | Used by | +| ------- | ------------------------ | ---- | +| .NET Core | `%UserProfile%/.nuget/plugins/netcore` | dotnet CLI | +| .NET Framework | `%UserProfile%/.nuget/plugins/netfx` | MSBuild, NuGet.exe, Visual Studio | Each plugin should be installed in its own folder. The plugin entry point will be the name of the installed folder, with the .dll extensions for .NET Core, and .exe extension for .NET Framework. -``` +```text .nuget plugins netfx @@ -110,8 +95,16 @@ The plugin entry point will be the name of the installed folder, with the .dll e ... ``` -> [!Note] -> There is currently no user story for the installation of the plugins. It's as simple as moving the required files into the predetermined location. +### PATH discovery + +Starting from [NuGet 6.13](../../release-notes/NuGet-6.13.md), NuGet will search each directory provided in the PATH environment variable for files matching the pattern `nuget-plugin-*`. +On Windows the file must have an `.exe` or `.bat` extension. +On Linux and Mac the file must have the executable bit set. + +This allows NuGet plugins to be installed via `dotnet tool` commands, WinGet, a Linux distribution's package manager, or any other method that can put executables on the user's PATH. +This also allows NuGet plugins to be written in any programming language (previously plugins for Linux and Mac must be written in .NET). + +We recommend plugins are developed in .NET, so that you can use the [NuGet.Protocol package](https://www.nuget.org/packages/NuGet.Protocol) to avoid needing to write the json RPC code, and to allow customers to discover your plugin via `dotnet package search nuget-plugin`. ## Supported operations From 500f5ceed1c3a515032320eee5e48819e25be1ff Mon Sep 17 00:00:00 2001 From: David Britch Date: Fri, 21 Feb 2025 16:44:37 +0000 Subject: [PATCH 909/988] Remove most Xamarin references (#3402) --- .openpublishing.redirection.json | 7 +- docs/TOC.md | 1 - docs/guides/create-packages-for-xamarin.md | 279 ------------------ .../guides/media/CrossPlatform-NewProject.png | Bin 21450 -> 0 bytes .../CrossPlatform-NewProject19-Part1.png | Bin 206025 -> 0 bytes .../CrossPlatform-NewProject19-Part2.png | Bin 201183 -> 0 bytes ...ckage-using-visual-studio-net-framework.md | 2 +- ...d-publish-a-package-using-visual-studio.md | 18 +- ...-and-use-a-package-in-visual-studio-mac.md | 4 +- docs/reference/target-frameworks.md | 2 +- 10 files changed, 19 insertions(+), 294 deletions(-) delete mode 100644 docs/guides/create-packages-for-xamarin.md delete mode 100644 docs/guides/media/CrossPlatform-NewProject.png delete mode 100644 docs/guides/media/CrossPlatform-NewProject19-Part1.png delete mode 100644 docs/guides/media/CrossPlatform-NewProject19-Part2.png diff --git a/.openpublishing.redirection.json b/.openpublishing.redirection.json index 4ae34efc7..be80d09e9 100644 --- a/.openpublishing.redirection.json +++ b/.openpublishing.redirection.json @@ -99,7 +99,7 @@ "source_path": "docs/Quickstart/Create-and-publish-a-package.md", "redirect_url": "/nuget/quickstart/create-and-publish-a-package-using-visual-studio", "redirect_document_id": false - }, + }, { "source_path": "docs/Quickstart/Use-a-Package.md", "redirect_url": "/nuget/quickstart/install-and-use-a-package-in-visual-studio", @@ -384,6 +384,11 @@ "source_path": "docs/reference/errors-and-warnings/NU1904.md", "redirect_url": "/nuget/reference/errors-and-warnings/NU1901-NU1904", "redirect_document_id": false + }, + { + "source_path": "docs/guides/create-packages-for-xamarin.md", + "redirect_url": "/nuget", + "redirect_document_id": false } ] } diff --git a/docs/TOC.md b/docs/TOC.md index 418c0c625..17d369051 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -55,7 +55,6 @@ ### [Create a native package](guides/native-packages.md) ### [Create UI controls as a NuGet package](guides/create-UI-controls.md) ### [Create an analyzer as a NuGet package](guides/analyzers-conventions.md) -### [Create a package for Xamarin with Visual Studio 2017 or 2019](guides/create-packages-for-xamarin.md) ### [Create a package with COM interop assemblies](create-packages/author-packages-with-COM-interop-assemblies.md) ## Sign packages ### [Sign a package](create-packages/sign-a-package.md) diff --git a/docs/guides/create-packages-for-xamarin.md b/docs/guides/create-packages-for-xamarin.md deleted file mode 100644 index 0ec741a5f..000000000 --- a/docs/guides/create-packages-for-xamarin.md +++ /dev/null @@ -1,279 +0,0 @@ ---- -title: Create NuGet Packages for Xamarin (for iOS, Android, and Windows) with Visual Studio 2017 or 2019 -description: An end-to-end walkthrough of creating NuGet packages for Xamarin that use native APIs on iOS, Android, and Windows. -author: JonDouglas -ms.author: jodou -ms.date: 11/05/2019 -ms.topic: tutorial ---- - -# Create packages for Xamarin with Visual Studio 2017 or 2019 - -A package for Xamarin contains code that uses native APIs on iOS, Android, and Windows, depending on the run-time operating system. Although this is straightforward to do, it's preferable to let developers consume the package from a PCL or .NET Standard libraries through a common API surface area. - -In this walkthrough you use Visual Studio 2017 or 2019 to create a cross-platform NuGet package that can be used in mobile projects on iOS, Android, and Windows. - -1. [Prerequisites](#prerequisites) -1. [Create the project structure and abstraction code](#create-the-project-structure-and-abstraction-code) -1. [Write your platform-specific code](#write-your-platform-specific-code) -1. [Create and update the .nuspec file](#create-and-update-the-nuspec-file) -1. [Package the component](#package-the-component) -1. [Related topics](#related-topics) - -## Prerequisites - -1. Visual Studio 2017 or 2019 with Universal Windows Platform (UWP) and Xamarin. Install the Community edition for free from [visualstudio.com](https://www.visualstudio.com/); you can use the Professional and Enterprise editions as well, of course. To include UWP and Xamarin tools, select a Custom install and check the appropriate options. -1. NuGet CLI. Download the latest version of nuget.exe from [nuget.org/downloads](https://nuget.org/downloads), saving it to a location of your choice. Then add that location to your PATH environment variable if it isn't already. - -> [!Note] -> nuget.exe is the CLI tool itself, not an installer, so be sure to save the downloaded file from your browser instead of running it. - -## Create the project structure and abstraction code - -1. Download and run the [Cross-Platform .NET Standard Plugin Templates extension](https://marketplace.visualstudio.com/items?itemName=vs-publisher-473885.PluginForXamarinTemplates) for Visual Studio. These templates will make it easy to create the necessary project structure for this walkthrough. -1. In Visual Studio 2017, **File > New > Project**, search for `Plugin`, select the **Cross-Platform .NET Standard Library Plugin** template, change the name to LoggingLibrary, and click OK. - - ![New Blank App (Xamarin.Forms Portable) project in VS 2017](media/CrossPlatform-NewProject.png) - - In Visual Studio 2019, **File > New > Project**, search for `Plugin`, select the **Cross-Platform .NET Standard Library Plugin** template, and click Next. - - ![New Blank App (Xamarin.Forms Portable) project in VS 2019](media/CrossPlatform-NewProject19-Part1.png) - - Change the name to LoggingLibrary, and click Create. - - ![New Blank App (Xamarin.Forms Portable) configuration in VS 2019](media/CrossPlatform-NewProject19-Part2.png) - -The resulting solution contains two Shared projects, along with a variety of platform-specific projects: - -- The `ILoggingLibrary` project, which is contained in the `ILoggingLibrary.shared.cs` file, defines the public interface (the API surface area) of the component. This is where you define the interface to your library. -- The other Shared project contains code in `CrossLoggingLibrary.shared.cs` that will locate a platform-specific implementation of the abstract interface at run time. You typically don't need to modify this file. -- The platform-specific projects, such as `LoggingLibrary.android.cs`, each contain a native implementation of the interface in their respective `LoggingLibraryImplementation.cs` (VS 2017) or `LoggingLibrary..cs` (VS 2019) files. This is where you build out your library's code. - -By default, the ILoggingLibrary.shared.cs file of the `ILoggingLibrary` project contains an interface definition, but no methods. For the purposes of this walkthrough, add a `Log` method as follows: - -```cs -using System; -using System.Collections.Generic; -using System.Text; - -namespace Plugin.LoggingLibrary -{ - ///

    - /// Interface for LoggingLibrary - /// - public interface ILoggingLibrary - { - /// - /// Log a message - /// - void Log(string text); - } -} -``` - -## Write your platform-specific code - -To implement a platform-specific implementation of the `ILoggingLibrary` interface and its methods, do the following: - -1. Open the `LoggingLibraryImplementation.cs` (VS 2017) or `LoggingLibrary..cs` (VS 2019) file of each platform project and add the necessary code. For example (using the `Android` platform project): - - ```cs - using System; - using System.Collections.Generic; - using System.Text; - - namespace Plugin.LoggingLibrary - { - /// - /// Implementation for Feature - /// - public class LoggingLibraryImplementation : ILoggingLibrary - { - /// - /// Log a message - /// - public void Log(string text) - { - throw new NotImplementedException("Called Log on Android"); - } - } - } - ``` - -1. Repeat this implementation in the projects for each platform you want to support. -1. Right-click the solution and select **Build Solution** to check your work and produce the artifacts that you package next. If you get errors about missing references, right-click the solution, select **Restore NuGet Packages** to install dependencies, and rebuild. - -> [!Note] -> If you are using Visual Studio 2019, before selecting **Restore NuGet Packages** and trying to rebuild, you need to change the version of `MSBuild.Sdk.Extras` to `2.0.54` in `LoggingLibrary.csproj`. This file can only be accessed by first right-clicking the project (below the solution) and selecting `Unload Project`, after which you right-click on the unloaded project and select `Edit LoggingLibrary.csproj`. - -> [!Note] -> To build for iOS you need a networked Mac connected to Visual Studio as described on [Introduction to Xamarin.iOS for Visual Studio](https://developer.xamarin.com/guides/ios/getting_started/installation/windows/introduction_to_xamarin_ios_for_visual_studio/). If you don't have a Mac available, clear the iOS project in the configuration manager (step 3 above). - -## Create and update the .nuspec file - -1. Open a command prompt, navigate to the `LoggingLibrary` folder that's one level below where the `.sln` file is, and run the NuGet `spec` command to create the initial `Package.nuspec` file: - - ```cli - nuget spec - ``` - -1. Rename this file to `LoggingLibrary.nuspec` and open it in an editor. -1. Update the file to match the following, replacing YOUR_NAME with an appropriate value. The `` value, specifically, must be unique across nuget.org (see the naming conventions described in [Creating a package](../create-packages/creating-a-package.md#choose-a-unique-package-identifier-and-setting-the-version-number)). Also note that you must also update the author and description tags or you get an error during the packing step. - - ```xml - - - - LoggingLibrary.YOUR_NAME - 1.0.0 - LoggingLibrary - YOUR_NAME - YOUR_NAME - false - Awesome application logging utility - First release - Copyright 2018 - logger logging logs - - - ``` - -> [!Tip] -> You can suffix your package version with `-alpha`, `-beta` or `-rc` to mark your package as pre-release, check [Pre-release versions](../create-packages/prerelease-packages.md) for more information about pre-release versions. - -### Add reference assemblies - -To include platform-specific reference assemblies, add the following to the `` element of `LoggingLibrary.nuspec` as appropriate for your supported platforms: - -```xml - - - - - - - - - - - - - - - - - - - - -``` - -> [!Note] -> To shorten the names of the DLL and XML files, right-click on any given project, select the **Library** tab, and change the assembly names. - -### Add dependencies - -If you have specific dependencies for native implementations, use the `` element with `` elements to specify them, for example: - -```xml - - - - - - - - - - - - -``` - -For example, the following would set iTextSharp as a dependency for the UAP target: - -```xml - - - - - -``` - -### Final .nuspec - -Your final `.nuspec` file should now look like the following, where again YOUR_NAME should be replaced with an appropriate value: - -```xml - - - - LoggingLibrary.YOUR_NAME - 1.0.0 - LoggingLibrary - YOUR_NAME - YOUR_NAME - false - Awesome application logging utility - First release - Copyright 2018 - logger logging logs - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -``` - -## Package the component - -With the completed `.nuspec` referencing all the files you need to include in the package, you're ready to run the `pack` command: - -```cli -nuget pack LoggingLibrary.nuspec -``` - -This will generate `LoggingLibrary.YOUR_NAME.1.0.0.nupkg`. Opening this file in a tool like the [NuGet Package Explorer](https://github.com/NuGetPackageExplorer/NuGetPackageExplorer) and expanding all the nodes, you see the following contents: - -![NuGet Package Explorer showing the LoggingLibrary package](media/Cross-Platform-PackageExplorer.png) - -> [!Tip] -> A `.nupkg` file is just a ZIP file with a different extension. You can also examine package contents, then, by changing `.nupkg` to `.zip`, but remember to restore the extension before uploading a package to nuget.org. - -To make your package available to other developers, follow the instructions on [Publish a package](../nuget-org/publish-a-package.md). - -## Related topics - -- [Nuspec Reference](../reference/nuspec.md) -- [Symbol packages](../create-packages/symbol-packages.md) -- [Package versioning](../concepts/package-versioning.md) -- [Supporting Multiple .NET Framework Versions](../create-packages/supporting-multiple-target-frameworks.md) -- [Include MSBuild props and targets in a package](../create-packages/creating-a-package.md#include-msbuild-props-and-targets-in-a-package) -- [Creating Localized Packages](../create-packages/creating-localized-packages.md) diff --git a/docs/guides/media/CrossPlatform-NewProject.png b/docs/guides/media/CrossPlatform-NewProject.png deleted file mode 100644 index 449fa4d0c88e66c23c53c8b32296fc196426fe2b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21450 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 FngCk%8_xg$ diff --git a/docs/guides/media/CrossPlatform-NewProject19-Part1.png b/docs/guides/media/CrossPlatform-NewProject19-Part1.png deleted file mode 100644 index 25418b39ad3aaff7630d475c379a24f03be61792..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 206025 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 z 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

  • jA3G=^Z)Sdx#&?OKJ|p`x(>4o%-cd?RZ`Nb*sMnY9$myyKX04^gUKs8@SN97$)> zJw4ta4HA#Vg5itUQ9QJi?sk6bJ~_B-aZ@B#phl)F8?G>6^nARH9MJ6!l(Ma<_&wt* zp^6v8e$7cym&5e4a2(P2HuSV5dR({=&B zoyXg9J9COgGsLoD?Zo|Y4b$`4Z|rOu&TmzlOTe6ZlU(Ga+NL(a3N46*1bwRB{W%*O zutqH~l0Y#RZ-4d|gE_RJu9i{?d}FPj4(FF-(6{HRbngh@6-Nz3iKz!-XvO6UHCylg!p zal#DoT(4~Vn_M1$fBTefF*8Z!#QZn_^{R;2jz|Pu+@8NXf%28=RUAgyk@NhQhd?NM zyD-lN&I8wdsU_IcSHTl_H7uVes?CoP6wf2aH_5%E?4pKC3;w3LZ4l5CF9CoMLdN+$;1L%SF|FxMTn;N0)3 zfgB>{aC>W&u#9Zcw3ctgmil`y)eI4-%1Ko5vavvs7l8<@o{_KvgGwP)JcqWnm|U~d z+YsUktd|4{5L@3TD66SUOrbjPBPy$0W3+^Xol2j)m(E@hsf#z((!m}`5i06o8~pIJbZjYhKO5{|gYU(&c7hFQ zm5x3~xNOViJ?XzO_1P>LT#~Py_9}*$m?S3EoSbh>E0Y9riuZ8%o!Af%eV5*nfd}eH zPEBni3(_u#tVmHvZn3_hLu7JnK(YqD%K8Q`X>y!uiV%2St!DzRI9g3iEz7^$j68nf zV8drvl&0bT`71DPR zXd=vlbVd}9mI^o`*x6$=cvmyX8vWC+3UHKEgxn`#G@yx6U^NglGA)cCdT!rUaheY* zGw-enJdFwzUMm`i$_`&Ew?yB`Ps4iyZz#1Lpe_8Jj;4wz07Sv1h$hE0y`cDK(9V>} z4z#d`b3(OylSd&{O7nKAN#xBc(R#Mag#(156#ff~i=Bhygtdim3*F2KMxHj!OC;sx zK;F^)B^y{d!y*99*=BVzd{_e>oDCgRcw}P zm+1_s40yB`Iy?yOZqU`y{G^w&wDGQHo`PWfY5tEV$`1^!W`UhWW{~0({K{js4MI_J zCR6D2IQou9ayUij@GD=B;uMR;@~>u`SC za}&b=TIhCZ3@{^0!$H10cEZ^+40mt`c4k6+2YSsxQcWT0JY%2j=%qJjPX{K~~Pm%9kZuu%CTQ(MV_REp~NoV&qegw;%kObU`CbSKv~sSOa;@dK`ORBjq~=HWEke0xp<9rCIYvPFhuWlQ!)dKCjw2=~ykX zV3yG5>L(Ocq;O|*Kh;^(B?Ofu&-X3-mJCk7dkWDBJ2Iueyx^-ORm%e#;|)J6VjzOc z0c3Nz&6n5duvP2T{7om*Goc6P3&5>iAF~RJAW~mXhV~{T_JRACqybET59saSl$dcZ z$Y+qUUvm{T@NI{Q^Mg~zF734I&BANtX&IWd-4uBZqS~I8mH;-+^6X9y)av?rn&8wC zWFzgs>twzJ=QEsCvhL`*-l|sXpw}*%+7~Dn zhs3!r7P#1Db4tc@UNl{~X7pwAm)XO|0E|Cl05hr;g1?-srjF~Vd3$`Kf=6$09^Y+O zdx#+*Iw{Az`Fe4aa9Awa`o&Q+-L#(>)wFk;b2?)kuaOP-&blFWT{=Wk2N^`M9PiD1?w-C&1z-F2e6Gy!^}k`!gr8LonI6?&ju( zZp1JVL3ka#R&M{LnWRd8X7-W(CqZYgIC73i3Ktu4^;m8`|4l~lx1{xurf>9+CsyHc z6y?OTnqM{m#(*z=Wj#IN`c6b}YLn7y^Y`cpU(!ne%$(1Q%Ooo$(;ol&l@zR1{2%Ro zzwdfW<7Ken;aypwzpK_?a`#`K{AoA-t`mN#g8%w7L-G^dmN0>}=6@PDjaPe4WWSt% zfAh)s7M|kVozDl9e~?h4=eAKvo&qMt0Rxh_L{A2B>S`fc+d*EtX_+7>7>K0XfM=4P4H73GciRrmiV zAxvKW+Y@=$PR6tO0EsU=ZzxsiXJoWFt|DC?D zKRaD{MttyCuZ<^$XKUJx8bBbBO8e+g)1ek8$Z1feW}V{6+}zjU>io;g`28e!d3t8_ zvxvz?_W*l3cfav_o_glOe(O;dH*$F5TWQ03Rlh_19*9$~@`H)B<>UXnJX6Z#3Vy7J zy!qUi9Bke{$$~e(;mmWg-?wr4q&rX)U$s`c@juY!$=9E47N2L_ZbFV_lCRNuNG*SH zji{-q;rH5oMGM82i7b6KuUn(XSK*o8|5FwIjX@sF;hEJ&>BsSP2%YD`Z9~^yftri+ zllpJTe0{>tT$g$VvgD(GUg_>Xbl2a`fnO1ZuQJM;$Bi+eoMVL@roXV4)@is;xy5G; zTX!|5!ySq2(iD5?8#Q-WB)?#=%$9}l)K?_cjuSx3ilZF%&h z5czsV(gj5=)La#fH}a@J_S^(Rp_I++ijv$z^PA#gXLn2mgoQ_QHPbOOKgNu zv;~E$A6>R%^|jLKnrhyQUbSUVf4EqJF4AE&9w!V0^xyP&+oD!8cG5m46YY_u{Ar(A z;2OIChh&;sQ{YD*IqwK#!@TG)RibMqjLwpc(n2>?wW9S$q9 z6l%Abx7Wa!I!`J|-#Sv^nLo~c1WE3ax^?W;4-!FS(m!JA_C;%!9R0=?BlSM=%m5Js z2$AC&>({eO668TX;PV;zdiVM2iJcAc-62KNvD>xE8a6!u+N)o70xw4CVC)k`CR4p4 zkbN9+kBG)K?+antCt@WimIrzLGCT+L>(ElImOgkj&ZxwscTePXeCozn zPZs@%q{Gh*wCBT#A#yQDXX8YIXv|EM0}N64!*|<4u>0g42^vaqW8_) z>6bL_m%OMGzZYf`DZc+*_P$}3Y3qAWauIx8!*ji6$Zc$Ab8U9kdbPa18ya^H?4uuQ z>?b36GD0$OGA6X%l-&L*Gh%snzgKb;3$oktKbXQt*gc`9=PY%m@o)Vu zKysf(pY`n#ndGcq_xWcva~Wh=y*aj#nvEICW4AV{)^eV^SBOyC?qbTb3Ir3=qAnMn zUPrlnSpQBhbZvwiQxZ>KEsG305A>~(OL!5#1Q>64*+q7d`E0+|P_yr-Y+rP)d!qU^ zZgb1+6D4@LMy+HqV0m|tK4OrYy=2gRe_G*0r5l)4tWJV4EYdj=j*TbRZPWX~m)GZ- zt}+a0j9VEX=^Lm;`|2k-RwP>~cQQ{>f`#bjfA50&Qz=WN|3uaya1HX)g3aU2_lnrw zu%_4PR)>J=k`k`|00Rbtx8sa!=R(-+@+(Pu69p9I=zS{p$E{P(7sswbn5IIKkws?9 z7@@+w$tAz<#d0?{t1U8gZ#qim_@%fNY)r4FiY%tl!u_`Ny>Rd8!Ta?UyU`?Mqv=L4 zb4Ai4yI@ZJ7VwYmIIapGkE@#u<|k@8gaPPh7C*WpDhgs#S_q&s4j1{=#VCQp*w;XA zdSJ~A-K%|UDBq!0Eo8D}>cnYMT*`gS7)~M%EqXk~GLT}jyztZ=P=%)9MvYs44%ZxY zci)OVE;oyOB+AUSd7Mm=I#7!|e-7;x1qvmXRWyiIS1#9ORjkoYq+LW|jxC{^MPTz2 zN?ngpA(t_~RMEb;m9_DX*0>q!hq2`io+tD-Jse{llizYSBNg;Py7!P^^2l$r^YD4l z#|pRmC!;It>&M`UEl*e5ohNC{Ys)2L7bRy2CAWQH08k3H`vgu2XMt0RALK!h< zVn0Lzdavn>`!WlD#!zTa%9WTgm_!S#P;IcH6>}TSIyca1vA{hV^LfY!2VG@-MGbVq zdy*<9Aa1C9{xT%Ifo>P_^(5-$^TpCeqiNAOw-@QIIg2*j?PivJ17$98dd`&|Pxm$sIkHS=q8s$`%i0*a z{F6~Z?kj2}5N5xNj){wvDgFwJnKr`{LCmG}!4RmU3AF!#?kLfgAnLqOQoK=IHmAzTL)o1nX6I+SpPhHJ#9&7KuhIN8BZi`}YcNh1m^cLMMe{`Mxtu^W| zzwQSmNtJadwrq!JK#~jPdAypt*Y9_(iJXEYA>I4%QehuUp!oW1Z)|-;+js<3X709> zV7)dIKn7A#={qKaU~~$sbIxA~(F0e-#Z+`hQ##C>J z;l}8(c3Dxckf*^f>JRoc1l-5z#OhU3?q=WR_k3PE>>6bR_v zDdNo&O4B`(fZJ9n#75+J_4@cFJhJ-2JFiuxGj5q#Ir8~3w8xI@buIPC04nXi&xVbA>N`1=k;4!%{kZQ- z&EjW}X0Llt=cME$4yyb?f12qYj};h8i>xUqmC7@OZ;q|?UYskciu=TG&^V{}p|ho;SyU@*S%A9kwWJdV zl8IiJgUX$fB%8tQqk^)a?R*OzCLp7LcT6>Uvxvlf(kJCLxh$kdU$M5hb>sX78+)!! zW{wKT=Ao7A2=(=*@gAyYtvk&)ZV9tuMzDfz%46XcW-i`W6n<02OU> zkTgxiui=i^$YW6T^Xnko9CKSY^Q)E>4fK51IlZl1MO*`)_8w6qp){gj7nCByWPYAn zU;9Vt+P8Cwb7hzLtB<9e+(T+>6=8E5Mp-(c_r^3Pr>4?hIlH@$eUzGX+%9pwn}tCp zAN4;e5>@@QfN|YF!upWzV2wvH7K-!l>v`xX33^|QSQo`!fv5z( zjOV0v7#-LyieV4E!EoH`!*%rSfor@(BrnX&?2SM*rsCnPAocpt_6)0!Yj8@IwRxhxAlAh)9r_Bn-fC`)49aqB)JbKK8GWt#FdpKzUcC% zFfr!v%}d`v@KVxPaw!ELb5g={?#gBq!z!wK&M7Mn(>ufv-DP%6-#>5;CxSU^%Cl{K zkGl5qj8$u>?qYNPNHLu33bCR+IyZgnYg(QZEN2u&vC)FK$=Sskz2R_2fk3Rfr;H(X z1ultFXE|Ek)EsSm?6VAvP_k|-~=-{)C0_0Qm{ebsEx%y{yk12AeCqd6HKZu@|?{m;q2;Hyn zbQDR3YDosutaU9JsKA~_ENDD|SgCN8X9<%zjU4 z(Xpzlz;A(*U5_h?paFY@0_7cp1Q25%JIW#EXjctpD|dqBvWGXIX4u z=JFG-V=lUo?C>u^gU0IhF9BC;OR^6?>kA8aiQlGGsTvRHd@Zh1(LkBa$J~786Pq~M zRjwMkx+U$fsiS}}N>>sVd4EiJ*UZ(6Pf_39Ty_1~um>OA^j%R(cQwG<505o-k9KW< zq5Fa23v_${FHC*d1AxNu0{>9`wKB71CazjV6I0TKa6eX0J=H8rG{tNA%B!0Ibmxwt z{g-Kp8H3a=yN|oAG|6$`sjGvgCi-9~CD7oGNhh3eN}{PP+b3UemFo6(8|nd(g{xN1 zCPJ29i6$T@c~X>~>h{rn?4Ud1u9b%@Kw6A$@%Hyn?LoJn$z)P1#Q+GdY znQ~~xz2A4G7_4!)9m33CaK+D)VbJ6#zW=e$`P>4p@0ZbdL?OnEn!P{Qo3l&%G5s{O z$LihuJv>CW2B-dGM+Z6!k64vMw?sLd2rxf&FtSPWZr&*ShtowvXQW@x+*a-Nt(3lD z27&yfv5=+;(FcZd?Z@Z`MqPY844y_&V-K3!%PhNAtRj;MqRPr{-_bCP6;H1zx9Im& zA?$J;ye>7gYj*g($KrZp%K@#mYd2q6Scgf=Gn%bVo%bb4pdmmkTr8T-#eNy!*{?R* zK(5Wk7gpB)ykOETq0W;(d&=ykh2yi%A;mfrDrv5;d!T0bO3_&#uhjtUHssaYo%gO5 zC75^R&!FEqVm-Pl(CwpP{cSj!RKA$asGfx&=BI2)<7e(IhgGxbjRpTs&Ej?M=`_(R z*p5)q1qUiPE?C2yKAA}|&g7j~UteEbs+zmId#=mkx81do(1ot(?#YZ(yZy~mg55@5 z6c2OaGvlfGcGMt03ASIGbM3ptjv|+0TVHK9iYlh(L&dZr9T#0wirrM#7p|LxVm?fH z!rghinLGlNvI#lx{Mcp`uf)67Ry5CMB4fV`zj=pt;Poh?`DG~SoVik!V7?rALXp8x zx+F_L`OJjNgL)EKGlXYz*%9B<*GuG%RDD+9Sb}o05G_`33zH~uE;?LNU!P&p1KNp% z|meBqd3#GU}TxYJdI67uOTLxOJ zh(u59v8z3;mMr5II(>vHiwa(@3)?MJN}TIW7~$_YF=3g(68ladlM#`6t~SqaYt$rq zcv?!vyQ^eQ%`+?6sJ|hu)-V_BT0riQx07$SWQyUsrmCrF8$S|xPN#mBFyZZ(&SCIb zclHLdhUrjW!+g>0nzgSzv@$kbqFGat=O&}spjq0kN$3CKtQdE&ri4BQt{OH6=$yEQ zvGGKmcv7ju4D}nh9I&g56-|vEl+rPqWy+IPzR8*6qC=0vl{{)E7Z#2=i>Q1)5AQ?{ zA>IhsoRPWMpv^*dr)B44aI2^?5o3_b+vw?=qm>&?Iau*L5Rxh+*6$cnXR+D0qxGhIV z9}Hi6hW;{mkrPjo%omPhF>-%S7 zjAcWq@asw|Tb4r3)ibZyHg*mWK#{A=eL?|I0uA&0p^>BY<8l7UGp-Gt-Xf6elipgD z_&Zz+P7U1^not{UD8rGpO0IXh(t^Uuv*%wa+v8}%eUjv3Y_ww6@&kf>pdZqE8|Oh$ z1qz@4y!Ml!)2-@$@4DJ^NxwD^ZmlweUs6!KJ8xZV4=1dG$D?^ToGNXZYbib z9V%9)@+H|IbaCv?TzoO3Vgq|n5D!*~>AJmE3Ka}|-!!W1nxS8IMV$*Rce+4!m*I5kMj=FaUk*Zb2`SMn+VByc^g zbm>K`hl0t%YcF19YvCE)>PJ4u+K*}pUbkzmw<^le5+UgvFXEWcrLZm}f3!9HarkaJ zI&}WaID3C6kG?#{Qs7zQy$pr8SErkF<}&rA9zzfSumG3^2@xVlO_i>2Sg%g4eAKo! znrqxjBmA{S!E#=a%U-8sHnG`gIlBhurM9!hY z?TMd4$DIZ59Yj1^(L|A3=l^lDp+24+3L11VzuMl5l^>DGmp@(-=|{>3E>-QI;;=8z zYA~<4nH3e7pH!4O+LAuE=%|@^m^1p4V>b2hM+`L-Qs#mOp6+nST)p4-vcz21efim%NHV20_f3Di$TaB?{&M>p!L@6yduzZPmE>>LuFKbN+<2^-BBqqc9~?%> zXJ*X;B%&vzYP4&YB!WN;pb%^0}q#1e99B5kM=&gRTk=fo&zmcm0SJj z_oqeT6Zz|Xx~H1=S>$Ezmc*%EgTXCLA-U`FO90Ll-IsC4p0E@nMwPoC5w}JX$I_** zCTvA(qe7Pn6lGO)c=Jt!`TQliAIZlU`WKauf1D%gX5a34guscZG+M*QdCF*P46qhv z$F01e7cf`rbynZWihw{$ZI?=@o_JnV|AjD9BXh|!fF#;b?0UIhvyv zrRdMhu*J8}w{J_Qn-XMydtr4_}8m?nSHw8_)cv~dhBcVd6{kNq^H%cYyl;LCKH`r_Y^o8!WMUYzpQAdQX+14X(0X& zdv6&O*S4*J?j(=|5+K3dCAe!NNeFJiT|##QfyUjMU?I4>ySsZxpm7Vfz7YxSztYm7PPkU7WrK1zRul&0Dyn(v$&G>(TNe5Hl~P6^Ow z8<(}ObxVdb;+WTL-0DN1>=kdvSNKTwl#B*Dcsk*nJwkW;=l~*@ngV?lMv<9pg-zwU zvba=yDHrazG*9B?Sup4_$aTMFWAP?Mf5a;#Wn!?V zePZgL`NG?WH+(0Iky=HCrQT9LD5aQdZy<^{Hd*|h_DP0$&Sr>h(a)uUN@49;*$5P6-;Y3QOJJSZ(kK_+bi4T0TrDB$f&iMi;)Vj%8OvQ zL@3yaoM>_UNU-b@#JvDTahpQhqc7<;sy`SLk0=%LHfU@803cqt1DVWc*z;!lS;|s1 zQjZXj!&Z-gdh1??)?tm5$pM96ko0a;+YnRoIF$BWEHtK2pEE_jhU{SWrW zqb;Rsqm?pRr2`X2cbU39+~k{>2TRbGfZoR*21Q&ErUb02OtrqGgN_&l1vWl|-i5SI zRP(s~k!&&`y9 zL}r;`%Wrc&Lx@!gJ$0i;POe@Bxlo$T8yL4(lPhJvYoKq4_O2Ai=3>vBHvYZ2e2spG z_mC8MgLNwL%q2{cv@1+EVP3@U=O4A^ql|ofai|FP1G4d0#&@K3<7O9i^3K^nEaqt!v>*~nuv4gdGIA3Dz`P>ipNkh0L2_tad2$c!1b!b*QZ6aev?lSz-)4UeHL-B z?Ayr}%DCLs9)2s7+3*aV0luX@Nw3gUpS6*Vi(jf2_%hrtN6X{ z<8xNot5V(r8@FhU;gs<_SEZ2t4mOzdp>$`PQ2S>*)}Uj_mQ$Z9e0_tSk(AHQx+!34 z{ydg^+h%-w?1ZmCoS^Cb!l{d=jPs-_?laf(27H-PbmvDN$Ty6Mj@0RebY}NKItx1T zh{r^)MCyo6_2cqhd+FzKCwWCUuKu(M@p+`+vn|!HQDYpA2AE*)8o~02bA|1#X*95> zbU|>6)mVQ86xN0tgeoF?^GqzVmCs=_K* z1q6k`t%H4%2CDTVRVUZH=@Kl zHhG3+srbG08sAc|;_Vdv58E2sh<;naL74T2i9?-|isUyt^b*y1*J{{C;f(IRjQCDb zmJB4BS`9DJuIHC0^A6EmB;JLxxEIC9wJlcmG7>gCX!G{UK*YBk*FZhh@Y&>ok;$*3 z<)*b_0YcJyK*ur->)=GJ$Y#3((nzBx{dd|lLTKsW0l0-cmbLWlbbcSl=ojF3OfI21 zEC!Y-b5MDh!?4a?vGsSes(TY+Idjee^A=)q5Dr}_k-59G6F*7Ex#_asM$MW&btN_= z*JnM@EgY#3p;6)1f5#<#npv(uOhl--ESKYuXCa!Px(<#^bVWjt|@ zZhMNw=#pPh>!k&2jt@J|3fgQIt)B>(LUMvqc9$(K1ut_*ZE6{V3r*rB7nn z;uy^8uSw)=gtBJW25>{0NycO|B(iJbveAItA1a^vI3*pD#ZK5bSq;!9u5-^Q7ka{} z6V3)$yK>2@6TlZ?Vng(pG21e%rCi@0?$=hYCmNJ-rR1!$s!6oI?0e_vq+?BZMcCaS ztFXa0$TDLgO1Dj-9N$q=QsG{hRT)r9llrj@(6v-IEP`sQe1 zA317=W_0>L&s1~sMCVmX5M8i#McCuhrEwdD5^=&77c)>>s?oH8kdfOb@gfO0eVjgm z@aB#yE3Hbs{*wup8t%3LiW=K@b;3_bo=uw%z_3BF7&?Gtv*&JhF|A~a=zvp;_dFDP zJnj@6g9;Sss)=CF3cH^j7yyLicXDK?cKb5l$7w&K%N)dEs6~Q*uxpmgBw*wM38MXR$J(po1*?UKdT%zqLVSYm5#IF)OO!0_x zNd^nh=Oudk5BZZbK46GhCT5i_kc?DNNR}JMC-GEMP8}=62Yz7Q_ikL2d4(!za#Z2G--#q?)z4b9Sj~9n~U7!xkqN83Ex+ zZbJwfKqa#B=dY6Sp`nY-u91?*&TwtW^K~nYLT?%juCV;Iu-6;A7|J%{LxTRsKUOz{ zODxi}^%o}VkhnK>F5*1_)HWTmU>eJAk*N{n@RQn!Af5Zllp10b1GwEmNG zx%Dn*4};X#mrf6A3})mDbp6uxPs*rMdj@O3tkOy!&Yls?gSJG!k2IZ^fzpUQYvFli zlI$2dv(v$*mN5}<6@*H73VKnJ-rHy#Nj)2B5^b~Ut3)(_7+l|#&f9W5<`xBlz@XML z7irzDS1p;qURNUUN!NMRzsmLe-OauaA#$>^IuP>cv18Me#ZCej)`# z*jjR!U;QINvu`mSVJ&FR-OG?1Y)qmn{@%oNJ=ugk_C}zlQ{l6~1lWtPzylkh&H%k3 zRjP`)d**W-S6XYy1sSyBXwt~Dt7k0RjmzXB6C}3|zjzB%sEX8hVf|q&Yl^(>DCrNx zY7dA&&g8Z3>>YKyJnj#$HxUv|u+ZYqZZj)1JXE%mpyWT}pur;Rz>)ejv4$<(Kb?Jg zRQV8jU|FNA(w~FQPT%A)0z~K+IA6P8xVOlC0e7q8ippA;qd73f63B&m%N0u-lIV-M z&tKFU1RREafjND|-F++(4gM+r!`uOgDK7*8=_FjAEPfnOvK{K~uI*Vyx%rQLzs^73 zl&6ekH3tM>J3PP*F)*Ial(IUn`l-l;kvH4-w2h6^T|h6Dyvl|3&Gm=jeoDvW>t_Wu z4fE0)0StG`z*9|wIs@_qvL0E%EZk;2nB!>QubiLUGm;i0* zjXw-0&NO+o7(XyhyP!a6P5wG?3VrKGCC4xrA%gQjknCLTLayPqDgp~t#pgWE(_(hE z{4I`~yyc}LXpZE0KkMKDN#oa`AeH&kUzIFb4}bf)=YD`fT7P_NjD?EoI-j{Nrf*aR zi0q3uLT^1NC7_D?i|ybaBS}X0tBK``9me{L{^=+bNR~~UGV2rrsD}}wHA5Be$n~BC zYw}kt=!JdNF$0!@$Oq^J-72rE$;Z>^lP!awjziB1@@oMc6jX3j1BmsCfUmYu#V8>^ z^OYw=qd*D@JUaJgqjUUu*fkP$^E}u>vUmWCM3vWneV$5>)0%r0bTfK%9kl-?DT%~! zOZqgDU=##AF`789<>nF;)(c;Axc6&YoQ{;+1PX64PI0y$0SUuVC;`5k+V*x!*m@EcU8oJ!yEfBa6nUjwm1FoNu8UaF z$s_mDnLKC#j)G+mI$)ClUQE+9V%jppAty`+*QFx>09X#bpPv@1QuAYoW4pM>eTi?w zJeJn1Rs41*3XjInogjdc^GCZMb2yH9ifVVV%GID@w+Xdo&?!7t(CpPKfF^6QxUBf6 z-;J}i34|Se#EV^7H8CF}gUD;;EEVyrUD{Ji5rJ|Xa*w<;IV0<27=7|RQJZI%{hGMQ zFp$SpCm|Ba%!8tCCv{@O?UWg7H8G!{>A2hwHr!XtgLw6f{20Hk&hSpSyEK($9~4I! z5)>ciP$EOOhjy-e^AN5_PyM=NRjsjKx>Y9`^4)H7KkQN;q3z16u*1L@UJXf(Hq|lW zISbpy-7&uq6CU__qTW|yCcZvkPFGnPKuh(xj+^*CziT9Nac4^(AV^RvOMR$XRm)1B z$^cJZPFL)>v#-IQS&_hT5s1lOYMivth){!xi*=G9%fLT=E*OOM1)PWZPO3nlyzyw^ryoOK=Th3E^W?oI&9IN(>*ggi73Omq#CRbqkG4?$y_ZAh2jJnl1va-+J zy<1(dDoPjRCP@$f$uDs(^>Wcz|)Q{6MR#zS9Z!#;`|D2gtD>B7io z);9N|jkWg)fQ%ll8=t9syFH#`i7m=L!$y;2jgNEAzCPJShh*nZ+-mkQ?Mcc_^GT1J z<@J0IW4pd1p=rTT!Aaghe@BXSrn z)BJK~7;Ds*~FU1?(*Iac4!a9e1r)-NG zKal3{DVZ%_d9ryXWU{BuMop5lU%%};B~hsEfxT$XCkV&cqz88l3_+5E;l}6yJ99Io zD+xA^!FqSzTzi3J{CIh)mQ7#6ke@VSrb2s0QEVvPPX> zv60p_D{i;&Ft%tER^_6haZjsh;`X;c3PtdHlUfZxs*u&O-**xT9!oPQ&Z|KZLegVa zi|Mj6Jm(XtKQ!NTGuK4sj3gMtD`0AvK*Pd4dBxbZ z&}emKty*xFHVtNPL>Ze8cTqL@5?p`XS;N+ICYxZIdN{5I!7ePQc1MuI@(f_Xi@Km- zK@3jzDLkI0un>yDB+u`2=7q_c*}|?OZ22zrKitf#6VFJQLP~GAQ0QIP`S1#$rbdD( znQGz45zSs!tiY@ zgxu#(M571I(3C_Xfr)E9tQOZ{nZ-W5v?S4Z??9r7VF2FckLI7ax1V)7mFkMzf+4ub z$*aPykv21pe#-7a|5Rd~527RjhJ_#PRUF*=cp1c_cr(UftXc^zye#&Mohy~2ClG?A zGr+gfJoF-oHatxb2|qB6j3#J*_dD{sfFjg^^Jl3DdhuDSLiH^VJUSmv-{#f6s&BRr z9Zu-m#+{%1rkNqv06Uh0#m0-m*+vDvxqCsdo+J)^h}qOJbM2S%jkD3|;p{P^Q^@Rb z9zbCmaA=aVDpYG`Wv~%gu=TijT_m!3r{c_g8&0NG=ty4I3kN^81|fRiFQp=P-lwL6 z&Gk^~OTVCr3=c_1O?RGw^=2XmMIuR72fzFH-p74<4DgY>yB9>2gA`T;yzyx@-5lUm1|^21Ga8{f7$QjzcT5Vov1+ey zt9&RfuPzR63zjuTGUM`ajk?7}y0XL#n^KAa`BnmjwsM|tEAC!LLbZeMa&jP73o#PV=_1xU&82xyh&pW?=yTQD_1gW(CV)m^50kjtNGleWCH^tAx8I;p-1j`vQxoq zStrnysi)2l-8}|_1Z{zG+I*$pM{cIJ4$!H`FsSnvziXeo{5e%+j-~Flbj|}(!NBoL zF*)Qbyln0+wJrO2cVny-ornhfQiDL{OGv(+$u4JtX($6kA7|FOj#kuKiqS_ubP^_d zFlU9-6-d{eQ*jWzrdP&dvA}S-0o$gflF7W^@lxM_>c`I-)AtOJzv9hFTsen-bPxMvL+WYb1Z2v&$Wlz zndKp|Y7xjhbgZmh;=}_cx-vGV^)eoCm^ZM4w^uYp6M~@%RmUjg3yC6>oiK{N16oFL zo;=O9#96oeoU&$#i1w8Vzg4F`LO@+A^}eOWZ$7nb&(J+pi@C)?Eh8n;s@aCe?(M1L z`MTUc^jelOuXhS+t(P7N6l{;gEH=xox`pP35>~COhNPq6VoN{%Kw#$|T;Afq4|F_| zADe84@F=W5LOTMT6lD7N_BF7U(}eG>&m zroYm?LRO*yl+-#lj>1sjZ|5Njy4T#!iZp6+vEh5c*ci)qdsM;k2VcMU1O{+Z1p=gt z@b)B&?s=ge83{GbxXatrK)}Vz?71gV*2>Bqqz3-D*qcJU_V`w;R3PQ{HPB(4=g>Ki zU?O(mX5G6u@>xGvxqS34PNL~`Y)E>uQc>JQ-~pLLb-fJEbbcIW`^fqMM;w0Rg|eId z75$qL4pgrD#!}a8SMouEy@dRjX~(PU*|5#8WSnU!IA&(yc?l{hw;cA+eR-I7W7G_m zHrLO=w;ID&o}S1X5mY^ZNw1eVo|X2#IilKvMJY*kXGqx%uE2+jM=QCF-CF61+ID|} z@pjY>Jfk){+K@9Uj6BlddhC;Sk)~wpjoaw!D+xY zb8z+bX+atE8`e%+9o1r>yc|6rPsQ7e2j`>6EbV(LW^OOO_>grPnQp8M8XgeZGR|uFCEvg3ZROD(%}fDdA5ZfCU4)VOw+I7%ul)ot*iws1 zdSitPZURlrs{$|yNCb`)I@myxYg=L`Hawwuw?V2xDjpqGQ0eXkZ!dlqjAe%Fi7Zw1 ztGI;VJGdugTP$E`M-b#rvafupdR5EWAztY-(G(xd+>HjimNfX^pKyVeR(27e0!@df3~BXU*g{P@rY^K z+#d~~U&VaQFy+ag>w%jb*4g2goh#_bA}S09oM)vZlC&~Cf!A3x4URru(e@%{dIHl# zqDcr3x3{ZX@ClNzx5Vc<1<%tb-pc*(FaR1#|=ykQd6dPRMOdw zp9H&O@t!-D@VwNZD;{`g+xB%J$oTYc6|BAPR-lA2@FI~fj7+Lml z@k?Oj#ENc-02Zk>W2FA`>9fQO`&sNgQI)qDs<9TyBcz_KJLE=9pWQ<^M>;Q!PnLp3c6`p*77m*iV5{Kodf;+683u_d|k$oe0M!7T#<$4l?eW! z5FD45I6Io49Xg|oh2ftYkDglAe>n=|Rin+iJ+hAA|91TE4}n z^~utt)T?d7*a5kGO!hPGUXE0Idj-kW6a<)j*BsJ_K94G^jo475iJuR|FUA|7R8uP^ zG{!P_Pt!r=MWXQ56h*`DNsI)5`bABoQ*=nW2uelPR+R}z%#qK|r@l9fY7m%%TcvX4 z+89jNsbeNiYS-~VDgxPr2wXmNpj(_0h^fE-xug?f4MT9Y73#oRD7p;iMjl4My^436EW^TLVDUH_>K zvNjBL;Kz(%cw3?cQpsQ?gLaEpG4f1R$}KJxmDSW^t*;!ZmI)vE0kQLwXRDuTp=Q$E z1sYK#(&Q|KPKaN>>!);JktynUj;F(hbFnU6erlVbIQ?7XPsfR(`%|lyFyV2dDJ7yhEor>lClxGqKTKX5fhzcrfa@?S%v(+}6{Uwhtw-da3Y}E!Aj|xG>)K`3{g%l=Fu5d4J zVIFe2-V?scwgvbsCeEGr5$->WwXM#S%Z5XAD(-$ycCWWB^KVbaDE@XbHg&&YvU&6k z8`69cu-a@^oe#!DJU4{CzactyknT|)yUm@~JRmK#kB&i^P~zTh@lXUaSrr*4Yh{Xt#Z+() zuwDYm$dlFxGYzP!KyCgtAbNqa+T<1%0GqA!vbNj{IyJ%?b3#GI@E@z$?o|UJs|Ea@fIC0 zExD<)rSyXB!-{IL+ZUg8h)~>_WY8F0D%&OzyJr=gxNF1`!^I3Jw#jIyAQa78j8&Zt zwR2|+Ol4miY8TuWk5DSGP39^kDIXkcN{mfrnCDtZ`hGEfOk8y{e|?@`1V|D{Z{cY( z#l1`+(B9-X8MxUUlGqJkRxsAGww7uhk^|poUgSRxS0U{hS(Th$s83@PlT3Dk;GbgB zf4v$aOsL--7`aL%(U6ePtR=fvm+Is1FavH%L$F4C>opYEAyEb$l&&i6wqFjP0CTUS zc0`365*|+lIZA)agDAnqDu7lVj0V#AYCC;ryRL46m5RbD7$kWe{U@e)jxyF}w-|WN z0;9S1rnLbk4HrfWT@Q3SDz}biaC3UvA+dQ(o31i&9ZuhX1eeZV`WTgpH7B#}R3r)c ztX9ArH!H6pZuT?uj`)1s)ab!+N>8t+P{*YG7(t-!JG4q!*`w!D#OD3d2?(4fYEO z6NDxR`3IQuB3v1*3{$yNK76pA0Sq{2qE&GFr#bb>jVX8SWJg_-(9E6b_c1+JS1 zF2Bds`z%A&l)7@+2Z&IZ0}F7fWE>+jK2_#LUo|t7rYPYZP>@>P?hzQ3KSzs zJ0Tg3rho)b);kHUw6xRBUCV*Obu zm1`6ehGO;R-r-&eM12+P3g|B&o91yR0j`GSviYoS(L4w}q;!1M<@@I1ItZ72Ke~2+ zP{;)?EE3Dr3^+?bTu06_`0!QGh@4>2_};Z)@SYuWi39!9W1m$}2HRDmqIkDVFiDwR zF|nJRNf@&Y08{u;bwiU}y>Dna0b}w>c)Sau4_B5m^9gW$EyVHR<)}1^%Ua=NuAkRa zOl(H3Zx)@3Ljd;`8zzE>S}#R|?dsVa!F0O`=#6Wym)pFN3Pq~P%Rl}6tscfSr@G%B z5R9Mg!JC=reZ91{)!1ezSbDvW8R_?0^0BG~BH$t|F?`jvUd9lxvm!pDoZfCn^8`Z_L>;vEUqvY=1;o1Y<>&!Qt{)~-wY6HWuVOt za5dX<)SvLKKrVL8o9)O}dlO;R%+fh-zEhYAX8w`M1T|$}Ww+^M-BKkxzp&@b_N~4T z4ttW?*Vu;feBIhEFAUHuK=aG!QCh9Tx`K$e#0r|=t^4`@=!c`9HB@nY69p0P6V z&r#QdEFx*YxO4}0!O!J>xUH;F??+=?nPh6CwdPSr*QRS+5l>mx9EXJUzQ{}r=$^%6 z6*uDe96k={^y;?<(s9cK9BhOC82_=v#!!W^vNb`C#AU=aW=dOo97Yz()3G$* z{i->|k*Aq6&$b+lOr{HOk1|>&V~JNawRFmh4-b$Qa|^+)tdC zzZ~{>;NpwhHQN0P_YJAuU1Q*uAW5YShjNoX%R?U*n!_RoMeYzxEZVhQ{hQn{@iE4;+k%jD+{_$Rp9NduD z(A+YNSHLd$gr1YrXN-JrJ*K8#&g2<2!TaC|?GfL=80~_UkJvZ4_tJD&0TAT6?&^9- z__{6~1tcQQyp>ADk6botj6}PcgA6#Y&)2P#k(kZN=?HXq_Bi?Tc!P^QDUm$wvhDn_ z0HuitO#}p{o9OIMD&H%kW@3;3Fp>kN8#O)r4DQ+YBh+0nCULMxS}e z5A@S#M20sT4W6`ksT4G>@ADvD;YCm}rh$3hlb3-X3hlMq?0;nXz=>%Q_Fqa zg1{@P5qNa5NQdqvFI3QzM1S`SDE%6B<%G&O=4FJ=?7{eT*sA`bxk2RmuOp>q4!SJv zS=+k(1#YM_2(Vjak;;|EzBj4_TR5bxi!1gujr1auaVTI<#`?N_=MD}N z8fiTzp@~=g3T@L4jj!*=wItcB@fvlzw{2(ZjS{crQ(QDL$gM;06m!-SOZ&9X)h#@2 zfz~sHaX$_ly+ew^;9QXPPS;H@Tc8*FU6cLS{Y9EivP|xW{$ypA?}Nmoq*bf6tY?Yj zPnN}C_RoV{)2XNJH)EhYs8jtUZ@0#EmCkLZ)zXBsK0x>(hfg@PC7gonjN7!D?z_wL z{3wkyRME6)!tfgSg=vh{C4%c^HZgZ&nCGDG8qpv;(dyzNywjp`oD-JR*e26qeiHt2 z=_j|oP72$o`)8ST^ zUVYNhqH}K!YwkTsy6(_t#bF)Sb_)(PhaHEv)Kp$GPxf0U9BwktC$7~8qJ5lkP(s`n zwAuO}ZWu?DXND_%%+vsMcxsWHkG3AZaHaeh>?N)TTeud`y$SO)6lVp}+sr?!A)kS7 zhE+Y82Q>IcFBF;x+EEM-fbu~su>slpkq67TCn~=^N=9A0w|@Y2AGP6PeE8_$ zL!Eld`1M%WJ4ELySTUzSAu(cms`P%{WOHd8TdV-{hTqq1s7HQu{eOMJ9C>3MwGT2_z-?u=fg_=QTx=0XTsJTqyFwj=L(zP z;s%YaKbdXfEW~P)>Tqr2xsgk<*ko2X+&9%tL zGnpm+v*05iy9hj>)tHYhvC6{`^#)Z(>0!t_f#MtP0g^j0`yHx!`Odemc+tcjo+FXUzBoDaZ@iqhf@XpZWKL? z=j#C%q8GMU^G;*lNalW9t4|J;U95w+rk588ii}^cDGLX$Bf*HT=YwsxrK82Y>c02v z53EXwX~DKsgFI!h7&{k-QA_%(&Z&M6{@)Jiee9oVQE@3Xio?8NLSH!};ywe{AjwW_ z^+%ZZMD0CeW&7wnbGx^XtnT|GW*mJS9!gWQoJSwtqlL8xvUxuDb|A{e()ztTqsp)S z(?=@?PyIB1TcQ6?7sWMEqKi*uOt}1Z^!~ZO)yoC-%3dyp6+~tKX0P%el@JHTn5e$2 z;@&71yghWGi_99yhICcJ`TU|16irpB>8@p2~CO|8Zy$f41Bq zoSTiR{-a!lEGW4OXB}s4{^QX8-;{m$e^VA+{Qsux|NpG)ebt~+Lxaxk9=B<5L9Il*!F`N}~gd4#)M57n0@D(e|Jb_h6>GFv2%7oy* zgJt+HgNs6MM%gc%7C7qcMSYcpYqN=}@Vmo%o^-nCaooK>yNNZe8Q{Xb3Hyw-?zg=2 z=6gW94q{x9Pr9WpcLl{z#sAgt|MZbVxhS8pR8%P?sxl5Mx~Ga+{L}b)8q}W8Fl3jA z+UH1{4&MCrjC%snaY$mL?!rUen2d%B1%gwd|GTgJ>G%@mP^eB$P}OLLvQSe@Xir`W ziXMRHe*236?jO4M+odp~p?9g}T!@=#SMa3(B9lpvMYF7|j5`?uJ$`C$9Jks%YvR$! zKiuj%@R;8Wk;Mr06&lp`X=LAcmBTHkzk-8n#W+wT&g1f;CYs^LqM+&`5xVq);UHko z3t&Wb+Tbi`uvN0nN_u`@RhmZKU_Cq@ON+6&AhVNZ&$c=dA#8@JFM;hsuB3C1%yQtc zzq@FG?!3R^{}0Ch!uZb!fa>IzF@{Un!T0@x=hK;jjx<~t#zaD0jgA#>_82vaHG`&` zcbjXn2pl6H+uef8(1dEz^xs+PMcjX`5srz0b+HY$N;v}G=xe=yMpXJ<{;~qpO=DFC z+Rxy$bjj8$PtmYL41CF8ZCYDZi83S=Z5x=d{Q%_Y>yQ}19qZOpIG}r=_A`1vx%QF| zzVg%~P_)sWpX}*+}Ox$dp!I z@Z^%veRX%S#M)G$0BH|&d1){D)9;<3iHUr_1p6o1&FjswKZvU1eiJejN5vH{{gK93 z>|M}>3DhI$gXBnTy)t2rq_Kn7l)X*9RX=qvJ8h6E%2JFqoh|xCN_ku zI4Qb@FvE6xFb_)`ej+4HkpgBy_Uq5r#51XMA>)*mzn?&t@P5Uh)yAdiA8MtZN03czPS|MWR0 zIp;u&GM#_tK_n}ug+oO9cJT$&RnSo@bLC@QfM|tHQ?KmsV7tP+f=-~QChL!?GQ4Ps z$-M7_5gMhs85IOSfOzaQBjxTVyMl?5AB35CEhzB@<;%mB__U|P&6ds#Z#33l9Phj{ z?XXY#9u#r38s3|CCLbAJk5M|d`3~*Up1+QISfnve=d3%g&O@=g{FJY#JuV41UoKXR zzqp*%JvHljxn8%O^%?G2xu@UGWcqUsT)DnL0tmwC3qug{)l?SuX}e=AKlm+qp1f@1 z;-y937S;bAeck;H0p`h{h3)2y8m3c&d~Hfg0dK%!PlMyCXkcOK3bgaF1vL4s{G1I~ zrUNU6Wgby}Jh@stk zuzPr|5B?Gx?%kD&m-j}sC!o4h&ZGU7Ycj9j2?$csGz_1d1UkrF9C!8g(iTB?ZTmN^ge1LfRH{(A0 z)MZ4ec(_h8NXK2|Q&D8hXN?}Raf>wvSYq{Z&)J<<=g*f4l3};Vb5y*kfpkQ){&v1r%dJde(PewfhYkPC`CB&(u8JmeH@a;R9&B8%-uD-<0Wbtp77*4BXW%HUfZt$Hq0q z9eI7s`N+pl<{J1eFn4gW0OIWNjVo9FsFwg$dlzdgmW$S#wj*Yx*q7E8bJc9ZsG9AU zUC#ZgEf}$6p!gSP7;i?ZtxrhLcArxZ4(ReJnZkOy2s1LjpZDR`jLP-K$>AbFSU*oy zb}Ww9HH-?+X!S-u*2Ltm&{I`61k?QLQBOOb&Xw(b$yP)*7S+L=oa&k*Rj?X1 zP>);rMi_$|Ui1TeO0gW8`Ec}%lFl;R3^%r?o_=# z%oAI(`%fQYzRD?rzt;$P<>&Y5*X)~jRh`=`E^Mq7?VrA=z1xzCX2E==^dhQ)I_ry5 z@pnbW=KXs!Vq)fyWDv-#^IUg`zIoGU|2Az%Jod(63?D*h|#JoSOZpL{0%Hlvs>pZAI@$C6!3X9)7y#-83~=PVUiJ$nMc zLlFTAPF2n57t2yh2HQsnu#;9M?~7N+bacu#O1Kp2309PZENTd+J}Fi|UT3+lG_#zl zuin1-Sj8(!j+~@CN}0tMJNlBIQ15CvmEd(dv&{{VQcxR2^-tP5ZQ(Tjs-BK_p54G8y*}GXLF|#G^Jb?D5S5mH?ZGMTy+p6~ z?oMyHA2gjcEDnCW=$cVZ5J!OQX0EgHUtwITtd+?uPOwh-m0>1@-wBsS){$FvjdVI+ z))Q^rrASejA~uZoX&Js=vS6B8dQ|- z4}GXQRwFaiT`DwG5T9{8-GBdUz1eaCiEpUUQ|;`*Mp>=>nrmVD)ZQ3_@a^R-^m3!U z!aT@&#+-HHbpKh$R2ixN)J7Ps$kusfoyE5ukI7~ub48M3%uRl+c(O|E+7*F~&AG%= zlToS@Lp4J&zM@)=s(QP&i15cp9`P;Udad)VB4y9k?Set}ZV^d&V-XGO2x4TD6|(Jv z6%vA3Sv}!CW$1A;%&wHhrhrq8FZ_c=iHgow!+1W_cDC)48#_8IQ*lp&|~K|v18Iz zs-*Zh%hyu9GQbio(P}k~rsb}{wXRK(tiHWAeXqSZdjJ$rHms+FytF;NcgXFqx=Kly zca=ADHV zdnA?L#71zcv42&~PjN88KaoS}-!e2D75%9Ukr6BxGjYd^$NS=v*|n6DWaaWy_ACv? zLCzD;R$VMwIs?Ub7o?@EMXJ$k(|)*e&QvbpOg=I+>tjx*Rq0xhm*XgU#(7k-6k9B^ zZ=??_yatQ#i)pG;mE`ui8kLKL+m5B~s$h&d5pHIdMn~dIcaORh@BMO}>Tr9Hj<*U5 zjuuezR?%E6Drq#fEiEP0Q0vYv`n6u4B-7FBOtFLm-%5a7k66e)*ZH zR5@3VB{ic!GgGV(W9wA2WtOC+prbV*QpWzSUQY;`t;I1{$Rk*<*}nFi0j^=0L9tV3 zb;>3N$Ze`<-sVeJD=vzGY*A${6=oK;mGmF`Oy?NycBo+LT4=O=0Hn|SbTZUoc;owA zMjWs?9Li)d?uVYzR2to4V62@Vix-!bKHIwbB;4l=Xf0gXzMXEQZmuc&ys_F+AXY!6 zq5M+$`1AAewPENp!?zA;ek=wppHt=$M$RkNm?D)FywYck9;KB16R z{|!+5e`D{X`Y}*a|%Agmh~d6G+2S^j1Y=G*dpeI}o6&j88i4$4VKsbxiKpE()}YbW-P9Yl)V+b zK!CUdMwmL`8qKfJ-q=?>4MiRcG48BDJiyS?XUYO8$u*gW3m0jIp+Vx4!+) z6bk?2c4{gV`1)Gz$eP;!cGLeo>HqZf`oHE=mQTBpEwjZL@GGRY+Mi^vSb(k(D${na%96l-PMgE z+hKaBmC4BqcV8ZkoGd}~uxRCREi0o%@cnB%L`z^NNl~ek^@7S);vMsH@bPuM-B#q) z)+W|A)QZe6T^11J^4Ej8QKTxtp9ERq?t7=c+t4{@7X6YW9>16PIT-(>1JwPmyC2$A z0eK6goKuBugUt|~o;J1$Rd|}ZA%F3)zf<`0CHs+G$}_2RrB3~L_|IdI?_SH{{foV# zHhpl8W$loI1rPr5g(7pbuyWI@QutZIOXRzGR=&U3d%o186p!`|4e&B+9PMAm=}Qgj zm$)~~L4S8O)KN?*rY727jDG1)$1MJ0j{7sPey59ise!CG$$!|4K0H*I_|gdv^>mB> zp}ZWn*Hw7n_XB^)w1$BqU3%IQj1r75c!p&qIC30 z`hTc%040s;<9zaejMwW76u(SxRw_y(uXF!(7+-)<(!BCl!~TapsZ~&3`rVk)|Ec-U zQTqR)W>Z|Gn|H{ug1tC%-0~|iy1XdIU;Xau$DV7Uv1xT#5F%m9$~N)H6%;m5cI({j z``4H)k#n&&ySdg8Q<%D4e1NlPfyyPO&h*UtG5@C4xd&(H^T%Qib97Uy+&h9h3Z19< zLmYI!$g?{mHT&rhJJcNGSG_INP4}nAh2_>hk%Gt0K+epe;aSStdRGhn$n?&3%3c2T z{--U8)Ghb#>GtUUkzaPBXagV=V|#qNW<{ulS-T0Gp!YYnF0@(^x`lS@mUg zjvol{YCP_KwD)4CkE3Mz?rhsOQMqoL5;~b-QAodHK~cIIbS+wravV{|~DiGEjT&f-jF zUP`_?G8Xzw<=f^j^|wc~-lrpWSRM`)B`S9sy91sY+`Ib2_g+yp&Bc)}nk*ma+#v5F z`R(TN_7^HbDUs{2^2K{(MGP}u|lOspCkEW)X2enFHSXOOE zl!U1*EE6Fbnn0Ny`<|_ju_;Sji3qh2ei?S&OvF)zZkmCl5*3FFWJM0aao^u&L%d}oy>~QRTmL_PBas9_5~OG;B7z`AA1wtT(Ff55(OWR169hq! zM2j+dn^6X%%P0{9(Ty2BqK`q8(aZPb`F!qm?~P}kXZ_Y^eb)N?*7Jw8_A%$|v-i92 z_xrW?Il8%>r@0>Bg%Pb&xh(b(UmNDV>*vqUY8G*SJ9B2qZI~b7a6+JR_8hUQFdsTE zu6kSOWRaBJpo7f^&_n0Z{ldQE-6fhAVn1QFDHdl>LtFkg~ZTrJBG;>tn5mmSH^x5U#%k}@3zG6srWgyX-zsg7(LqlBoe|z zxQW5;Hk!{ku0Xzj2**_B%1-u7S&dEbIhn;k@YOR~FrDhREv6=lHB(`UUnG1#dG^r7 zT;{p7oPE7rFPqPDt*aKA5oOIL?HhgM)zBH?zRT`RnmyFe=#SokjYwRIf60E%Jr?;2 zS2fdbCQbGRLbjkxBTyeUk%^Go`!U6DwQl(6q`P~?f^d&n8g$RAV7zdX*e%41wM(nY zCQ^lzRIKIUJC{V!BV&p?hw}~+%Wb?C}r4F0Ex|&$5+P44p@}r*L z1|IP-RWLjmhKr{S%nh8MwphRqBXsw#>MgC_81{@yOAR^(YTBYSl>CFBJ~KZ}eA7Fw z137m6>8XA9g5?TO1xX`}DDZx4k*rW8OMVciIN|74D`x3^i~JB>@r$#-$tO=#VnBTX zez1V&A=z*83f~K8)Klx;5pqrs$g49-TF|}&<NCF>5dV@RWIyQ&$w7#sc;ej%U5%;i1IX-$~kipQC1)oN%O-MrG zrp{OEpV#fYXQ$_#ZrGGB@;s(`aa66xY#+fc;6CF6RabAh4?6}@U*Cb*mplJBeZtED z=^Ubf7PKnPul6pC6UTysxNCYBsRVEI67Pz;h}N|q;r2RM9(@r2tdDNml+*!ho8Gk+i$6rc&iewdV)mqS@pb79r< zR^qZ%-m!0atXk(iEz@$}CFl7dBBx+$lPxc;7HO0cN-Yt=SC`|NV`g5L+7MT5okcEi z&Z)l;k>r`ED4r9oSS)3ViLtYE)%9fH^+vSkBxLhbz4@-HX|a?*uDz^=P%JO@Yv&rf zA<~sKT(g^OaLxJC=~)9e^|2HcG|p*;PC4V>EWhB2 zHA%C(87qe?``W(F;rf^XT-W_Vd$a$P4cCimUTa2Vt#8m)x|O$UJsZ@TtF*g{xSgpU zM_hQy!{ZvJXyp=&hv}N`Ls*L2cbcuP=miM2Zz$j8@XGP2DON+JI-9$ES2?h>S+!+LDAV>HoOUahsB2F#89E36UZZQfd|8svlAAd^j-|d|`%e_DK?Xg= zr`_AM3ZASFjr8qhmf58i9z?{K?Gq?&8FBd11gRISOyLCZsI`X*8{do+%)QYPN+30I zz8Y!dkoMztRwkBZ&ARqaX1zb&8cu(E4f{$3^oe>f3hQpowA&tk&9Z($f~m6Txjdie zohd4D@vKsPe1Vo)wRXmQ1Jmr+J{XZO`J8_Wo+AKlXXF`(zFI@A)4$zni>aJFqc>6+ zn~!*xTkaA*CFTtuc^aACuy@=ob?6vc2#epVlxbFHoJr4N#lqM*tiEyd6q~no48)#6 zjz%XYhq1XMFc&dkj@#`rt2ieIcR}+#vqf`4uU1^KLlR|!*6U)7ihtugq^<-DH?F^` zz1AD+W~KQ!N-QVMO<%3QkNN$3?~8C}cXZDBbz9BheXlf*4k$SDgMpP9HKrH4&@D@S zeHI=a<>c1osf{)dyH4#QWsu8lS{Ih*NH@S?XJ6K$yHqL457IMB0zV`#QEQGrJ{JwG zFHXBJt#18PtH$e&h85Rny5c%4yQrqEFPnFFve0n49p#CbNJ2{Y$iSyVj~35=2VwG8 z7%I2k$8lMv1=6qpABMcJOxRUSBDx!(&SfE5{LtzsZ%=e(T2Kqj6FnlXT3~FaN|n2i z!y!44WdPRNuday}%pbbQDnGHIMxW&1i_qZYP4WlX;v8|NO~nLx&IM%-o1Qlk9kU@p zR3)=eUs!#v%OAm`)Md?MVf2J@JBKps;rzToFKl%&e|*K|!CPM2j1gEF3A zQ3(kqX=}S<@Qh))>$v79+wsc>_DX~v2&sO%1qF7=5%=I>0kq~>_)&CbpgV6*x;SKY zxg6w#*AG{HA8pxq28)YD@H+3Mp3wN1O(ox$11`0aS88SUf5&j@AuC}hB}kIcx1NPg zshg*~BP64+qorzU@Uc zyh>7+r>RF(Ny+P;P@;jNwAbeSUG38D6@kPqKcQ0Pvd0K>Y~o8nuipDY;o@4)`HDE3 z7eHzax%sFG8}YqfGU`FF8d3qR6KeJ`Sx54exy~l4cW$W_-0cgC^k1B7a6XQgG|0lQ zx(8;jM`eIhdi8nYmkS#uHs5$HRLkh`j-=IYoX6}((XM*Il=#;-9Usp`6Z zk!+Q$B$8Ht|KV=Oh2+h1V(OfXS>o=rw2&bY;!d-^4Wkn(QTM65RjYm$r!%&%Saxo< zf=2`PE9a|-PM_Qn`=34ff8%ov7U-2zSnQkj8_0fS`6UyE zvg56scKzIz+55OZwck^}6FBltmj3&_gO~*fwfJ!_M!!`Wh`H|$@8NgrPV?xj`Q_PJ zII=B{-m!ksMaJ2T(5cF-92vSdo#YRu+Bk8<65=5AmPtoYj0$T z5fh=e)G!O(l74)3_ZutYZO`iK*x3wt87wuGJle{#ri*cF$O9%kWn5C)nSOu3S^Ji2 zb|n;_rNNA`uWXOARMGA*Le^?jol8RgqsAT z&4(b6J7iqill*!+olSU$Oi!wX!7_g9PGNDO*@xod=qz5&xb$v8S*-wAI5r+(Q_}>u zfA^3y-n>=PGSBGcJ^o{W-;1aCw8_g6 zcaw54@oE)pCPy~3LRdrx`zV4H>(4fqJqc;+oy7;s_utk;Ca!i z&ygA0w@ixk37cv8u~?lpq0r9q^{lzji*k6;SuH)&kZF2iKcjTMt6|nTbdL(3tyQWe zb$;*TbEib+^6YF~ROVXBxxs8QXa|uEn9WhJ zxU%6yim1X5K7l<^TANZA=I$XhBv;1S8xWqD93JSMX>qqky)KgeIqu8q_lA&})gDEa zCae6;*et9{%6)PII+*GB^F)z4McehuO$QmK*AHKw0iDU7lqpdAr23)rdrI8S>@D#- zpK@eJW{}sj^7@n>$XNbB0R_+HbA+1-%kTvP{{w1PJ9x0a8W;x)dm@pM6{Wd5l?9it zFyf*w7O*C0vjIZp(W!1+t)ERXk^^at^}p)}Q&tZ0mq&c+*Ua`3L9Ti1RtAK}<)5EU zLi&t@a-v6(z6&pG@JEpffzj_vpQy=tr*QT}TjnS@zrFA@&(4fqeX_9)vTcRMGYjEn zG576upK9w^j%2(TR>IiE`|?U`o@iqdyuZ7+3C;-c$XLUOBfwwC(pZ=x#TG?in@|yf zMVAWE5-zxJPGh!J1h$wsF~Fr;Q7pgZckX6?C1}ZFU}M+X<}r8beOP0*QqSbpDm;eY z&Rt8ra*=&lZT&oT<)o_(FD!Z0t%T^hehFjKXDlkoujeR{l(pR$)AQw-Q1+KMF}>>% zmsY!wW)__vbiiJAkL1>PJNqTke$LC{mCx_XvGejHSPd~O%CZNA8}uhG~MqF#h=7ADuqtlDsREH+zHjnR4;;4)Yt|a%g5o-el_u(!H4K~ypS>SNuu?QXF z>T89qLS?q$r5Qa-y({gRwGq($Tk2HTSJeWA-eXqKvXFZ)2QE50wn7@viS_dVhE3{* z2a>WeP5#q^noS<(udx}*4Knb^qdgwpo7%u_4O2q$T6t9GTUn*FTa>H^ijExZDR^FD z918QUHV`>_VBsXs+warRj2E9T{rxNe(=c4&3x)+sytOyyTc$e2B`{ohK$|CC@V=dR z*JCT~(4JlFiHZ2z()Ecu8tUueIL;(N11gR|u(h67-!8CT*vvQ!Zp^=&!*O(*`8ffw z{!}6SIISHoGli$KiVbU(61E2X))TDtEZJwD0B{R4t1*wwIGHy|c`+Kgna_?6<{ep7di558$U?UwPi#Bh3;($dS53R3woo050u zDHh_QR1<^DjZ|#_fAxiZwg2>qefzq;PZ0-vh#iL6?Y@>bvzvS!X$a%*H~xRyF(gb>hlIN_)IOOVh;am%>#*X44h3ocL{D8F6)GEp8P73 z>_p|M5n8U4=A4Ky!o<(!w=!nqT`}st_|Jh>&yRy@sH;`Nz4f#$IP~EXw1SZxVGJ~u zcf5MH7O&5&g^X&{KTGS)9SaggD}U*`N$E_yvVR39a_m*rLBzHH_Giey?lfd?wu@vE zu z+iY6d+-IAP1`bRnKOS^0I^E`JDsh~(E6NWKAM61Ru$jheZN*j~_(dJLO1~PK1y>Fg zY7Czf%X4gDP`{|d->_T0_edwq7dBZlR~6xIA+>#na=?mxJN~kPuaZtpk>T`;mYc=o zb4JkuKXRHET!zSk-n^XEl|U@wK@vTtVspQDa>TUqRzoHTC!yLgBB5CmEi64hf=>?c zW+c2p8JZywp)Bxd+kyxO^8#Zws5ZS?T|+%Yuk{&X42wIA@*{;g!FSTdYXtW{CRp@wft!Be4f|*V~eH@ zRyVVDUWGM-G_CL?E4E-lTe8joOQA8RX3JL&r+N+wN_CJyhq!$h7mz|JY!S}Mh#PTF z(@uQLgS!Yw`m|69yvu*fV#y8xm18QwL$d~8=5?KC&N3j;tk9dRSrzpL;H)}H?m9Bm zo0p)g&Eg*wx=gVXOHbcMsmMvUmUf~>cR*rjJ(anfxBYJ8)_RF4W%wZJD0)Qq{iCAT zLGL|@&2jI(MuwhMFnS-+_*%)St6yEcOzOtRJw?HaUCFZqX4_9}e-e*ZwMpclh0XGN z3NkVQBVLPa0;2oYu%{Wm?;|1zgQ2osO%DrJlvb}c9n@+zs>lFmmP`&BleFDk8}@b{ zb8;5tb6)9}bcUQ;Kf3I9>HVP8slkNZ9_jwTmN7x^(r=Yj-g`I)Rs!zCc(b5e<0%%V z`S+G{nb-Jca)g@lH5QZZU~!zbKKFd#Emb;op4`1i8<3~-J#K%&jO_2{xxv=BXR38c-M+SWN#&f|^;SlVF!Q zdU4gXko)VWy4mM>Rk-7~tTivMK&C_1n@tVgqB=gErjk2*p1QL(h?_V=pk#zLD2MX= zNL56-BjV`wE#~Hjl4H1u;7L0P&5U&6jM08IA@wyxt@9$j#`8QruYtp&Q)n2HN}VTH zdga~~Dvcq7Oj!LOyyv5udL@*KSW#V>U~qgkEX>&EbNg7G;uIsukABq5pLc)KOM$ga zhHi~teYCkOM#`T2Y`fm%TIk!zyCPl`^D>__0PY21DIW{wIPO!fF#W@X0zKfun@0gI>3`?Ci@|HX?kA8{WTZ1gJ zcme@bC3VL^NsL*NY$2&6R;`dl0Jk*QUzzl#%KNuVJ8T~e&9V~RJ(GbzT|eV-qJ6KO z2g?X%EybmqHg0XLN&BOqihq8U61I00(V1H9HeO)Zr0qV>5{!}s9UsjKyq=F)m7Yb! zJ(bh+SoP74B4!Wyz;RxMaGZW8xgdj%g;g}M`npN8RINlLEny!lQ6@{EFJ9UA+`a1A zg)SV)-%hlxsSL6e7Vp3BOTD#R7{5BI;vea;gu$;37$`KXoo53?qr@;PKX_o(`fgIC z2GZL*zeT_V> zRYeu%Yv@CKH$;>vpx+!*+ln@!SQqRgqJ+}I%4>SrAr zC(~IIhSCz~O-+&Ve!JXl)86=9YBS8>y&{UK>EpuW2n>5I%}) zr*64@TUY^Gj;e-wEF#=r-sluGK&TR@IkDG5nV*M#WFQ-jEaMFUOv^@pNJuTP=3*LN7`dAnA zcx`rj-L_}CwbW{l6KQTASTwea5_*wkG2p1g|Z9eW4P_+K1G5rpMGmrZxVVjKK1N*-F(o9<)y@6n}rYs;+8xB5Yup0s6_7V z2|%MQ7C4gde(u%E#23cBi1$hiLvS1v#|Uyv?6R=aR1RT^gRhhjKiRr#c%+u;Z$D}6 zIjg>v>gZ(TR@+zm4r)!oRbfJ|=OFu79cN|tTSS>ve>ttdM2cCjm5!SDz_v<>XiWgZ zy{x5Xk!sj;Z#PbbAdjgU6C~oD5P4a~Y=&poEPB?}_~%e6Zje#~p7uQWC-Mk}fwBiF zHdg$0o(uwb`>1yDxrge@3##9zl$_kRRRFcJ67c?JTEg{CfMJl*bG!LBB08sL2ki|m zqxuepHu1Ny4r?k&pi~7ab&*u@f?X9HN!h_cf({(+<#b-s%sWahpTpYf1=oW_@f8_C zT#4>!TO&_(-1FM(9#p}xW`q1~J@@M+th4UaiElv$lob+pN@VgLsfMg50p$e6JgpLq z8rwDen|5(brsaJ z6d}udBX!u~p6kudfl8D2)hwGI6SW`_ZekvA#=aXFk+q7O5z%nF9FF3N^gcxYGUG5N z`8CuZi(ca7<lKkdISkTbbw>XbKe_GT5q8|XRD%$JU=G7 z%shVHYmrN3Yn>4i;vadgn2|!#V(Haw#?7IuW$`um05(*!q}yU(FNEBd7NU`q@mw8c ztf_~|k7d+~XS-S9_#?`yropxxwK30)nO>&?PZdYIWj-g`7oeWEgfQ|O$4t$Mp*Ni9 z82XK`Jd=;>>)6+&OPozv@7u5zzeLqJP1WQK?QYSb!-RId_evDpCBCnju z({y@)@kM-?Akcmw?9i22j1@@4tq>_~tc=+TEd#+f#ySjSPbhsz`V%tbbr^scabkua zU{>Ci{R7H^OaKh)5l{I??}p?SK3NfPP8MN2_*iqfu&M<`gum#5YNFPW(7{i`L(13d z82f{{S{^wbCDR#f=$l^B0WrOH?By|Zbe%^jb67cI*ofEz9$=Ya(McYSO%*x5-|l8L4!v+xataUing$pu7Q}2bVrx7vhma?KPj&(yPIgSW#n3&P&BzWVVjjeH6H3 zUDNzRt~4=>|w5VXULkG~B0X6Boz(n68rDZ5fr0u6Pfn)`_B14T-a~_ynNc?T0mEK&*Ff0{{UM2I04k; zB<<}_{L#fX@1N)`->~cdf%*V|tp6aY{x^YZobClZ^U*Y1dWdr0dmO&2=q+(A2vO3{?Cye55XStEI90$$8%XiDi5#2*3mZ@S&4cU>}!y>IZUA%1N%j zLGz?8tNujysru6AA^RJeHi;$VAgY+1?1i$DE4ZLyWAg*Yds^)$a>ixY&}^lT#la7j z{&~ZmoI`u@+Ew98e?!`xoY1ZH^hlgMe(CD;QGjF@l2y=fLR{U{EyaWsc!%> z@nj}Q@s>&8kJj<>viHUvZesfVbYt87`{OR3+;Pk(} zdkr}fus}T46Q}*lp#OL$fJO}iDB$Vv~K?dy57DuNs4%jHa>!LjFHQCgzjSJHAIa=uc_u)rcuR3Ufc^-Z#F~@?xlI zzg&cMz1nyiKt;wU-?`+th$1PiCm-qnLmx=({j0$`81+9|M%U~w<0x>iSpv_1ZX0FZ zBt_M?jsR5?m{gCDqUsk0;3nN?Q-7-A|H^Zzc0l?ZY#))6ls?U$TI?U|cZkd#bSZNF zGOoGe3d7&#^_NQ@-7~;V45l=Hi^cw`;uE?6y`}@ehcNh{HwS6pCe05bC;!(7_0vfC zU2!F=dpUm0Pos-3obLU2Unz$;E0PdYA2#7K6v#Y?MMDOUMQwg?PogHp8>!0!fN|Fd1%I{w=7NuUB` zpRCTQi6S63)qs`bT2r3QfBA|)mgc2$T9Hzu`&=mn*UIg6iN9^M_?tnND*lO(=aCmD zIdT~?*2hp^LFJ~1XKc{>Zvf=(-9I6B4;`QhQz2c!MeGnK_CqkwbS`O8N#z5qf~OkS zK@s^7LB0)0W)KCpG)dz*L&f~mnB%kwSLw`(>KRfTew_%|wAGvNSAV0(UoJm`0U6Hx zNKe|PaR8$if6PVF#{6S{2q#|y>Cyi*{T=V+4|Mj|medpSFh)YTEJTdeRZL$*@kc>~ zz1W!e#ET)Fn&IO%`}NRqQq%sqgMxxt06-~P0F0k_a*-tCo5%#O%hn~cDaqV2JnCp| z5;k7;PAFy9p91P|^9jkoV9kHN zkA|f%;$nAsAr0VnyWj`0{$K6zKZx)Uh_&c~7;Q+-*86948R5w#=*kjr(l+%J^$f&H z%Ld)^@fv$eYWB6y$ohR@PCD`&CRURhle`IZG*D}QfNb?&{{&wRK z0KL-@0GuH-%Rm!+K-XVe%=a$e#ZdrNw7P&ml9L&i2T&nR>dy9eNDjS=yeJPaLIP0h znXtUVahLnsI=2`GyJlUEABe%PtuJ~$N7(@5N~jAnHX927*%pjPuuBBOqW;9jVyQ2? zvH!wy%spC^Nv-Oaqih)A*83=&5Z0;Rv)MSoi8jTB(eAUDmAkq`-R!JbamaGL^e>_f- z_Z$?A4>6V}p)S-1(>$c*`tX}!LBtvR1m#Y}!GA~G;HfOP&fT#(=`;@^J#%jN(2(#Gd#onioB z1B^mp7aae^5=Zx7`5m>hEPO@8Rw2A;Z#qi+1?~)U`1afX@zn%?TcE(zGCP~l0I{Qq z0_oUM_Gj$)J?%CrEqUt>*lLzOT(dYdjAT@^nWjqh+c1A~po+h?CVoa+3tEoXNQN8#<}85-*{to|UqtI~1N3300G#N5 zuMThjV|A$0H(t2!`u|bFfw;mX9i(`}gh&BR4Shm7T4n?w94tVI7Qps1X7(Ns>X4Sv zPv1?a5lk}h?E=DShm$U1s<&po&>3=-e)vu8Z~L+T>Y!i$o6C7P?%zmz z{LiHrtp1&}$Av;VW5X8GF74;u!su%dk^*u8*hc*M!iVJpVgI!yRSYbvQ`zNMND6Hu zpqjUjXOeVar+EMeU@oV6P|El#NB$uiuL}VkdE>(w{;T>NXz4$;hHJm?{p()!zfINX z=kDwOkm>)wWb#Qn4iq(+!(~~+mBJ!k;Fg$`TxeaH*Zb_s?hWo243mz{rGUj*;4#n@ z?zs~0v0~HxD?`QCw|Bn=qV6+?k4re4$L}gskd&{}uj8aj4LRyx_}UgYS`XG4PUF_h z_(*BVZ$1e>bFyE<`+ilk196wi|9KOmzzNcc+kbB{2)Hh*Ugnd3^9+Bv{1OXjT>FlB z=)n+vZB4`hH|481UM4la%Vs|v^h%llNe68O+*BdcMtWiTA3|Mz`+ts5J~+zqOKY3E zdpOot_)YEF7tGI1Om_0D-mLU5jMQLW!Om=?Nj;)Gw!d+DJ&YG9jyN$T9;#xOJ5H8g zS|ukt!lPC6a3OGIK~nJ8UcS`3tI}Y!8_}4?c}Ur;%dWd%l66z;EV8nOyM1qAUtIt> zHIuvi3fQk~c^N07!MS#5Ci|Q4xgT!mfhuQY!W3ZR#_hy1uW@lD8eU?jek#n_c$YvL+-o=Wy^8>w+qZv%-gTXzgwqci<5RM_jP53 z`cQ@(zkMwP7D~(^XSWX=)t_4S2~_2Eik6lLnQ+#;mG&xSjs)fVb%q%bv0O;^7uy^W(*)Yukf9sXHaG8ywc z2@Q)4W;rw_680i5Isr0E^0am7RlM=Az;R~{w*)cu@=iF%r*F=7z56O9R6pU0r&pW) z^QYPMj|#_g?82u}obSJ7Z~idR(~L2kURv@hRz#~Hc#v^+*=9OoBGN} z^H+>}S_Qn2K9aIjuR+|QG|kMaR9v53be~FclbB{6g#ddgoY`An)6fypHD!EZt3&4g zzuLjeFJEQ>@sOB0&3_*FzelAz;y4Q6Tgp%kDXkQq{_(C4E%Ng83XkACNduFk2~v;7 zh8SBEr5QqG)EQAi&7EljCqO>Q3HD*jj=q$~%WgX4rh}hrcssv&u~P~-v02x%g!Jiu zBI;u7Z=37FnD8C~lU!|XD-Y0X>i6N1Ok>yRl?0XN+IJzq3Gq2r8Y$!;PIm7!gs@Mf z5xW)t{z#Ww>C{QcjME220`9VLJq*uGICixnI5J;(qo-MPlh4i^)2LeEt@J+asVlrP zVbhFSjBpuZTg+6?()5n*t19#c9DFq;+dsGlgWC(;d*~Gra|I_C{?3p?TuA%S%-c6k zpC>fXs{+f!E*sgo!tlPi`r2oV-T4765l2LFqRl-m6!NUyiW@`4A1ch7dO*8FouNc~ zI|K&<&yFI}KtgK0_hO#J?uoe;uQv6ktfQFo>n7WHM#3>Rf#TVCq18;z=;mZ zbd#or2oGf|_gc2-ORmq}=bJDF3eqQ)#R3b|&!VK?Q zlaDDEiReYzJ`5$3V;^!~TzC_h6w_(CWlb#I(a47oAT1%$R%@?(D$CXy@R&t&y^%7l z=LIVfbKGXMyE~yf>+XyJAOISLD-pj@} zENMWut%}(9%CR!rR<43DzwfwX!mI(?SrR}fy6kY&DY}tg#mRMqY8*Om7x|y_zS~#Q z*|=s5!FC1=JY`f)Z#3fhuvyLu94{HQYf;@k7nifkc+DoLG?^@=;8V&=viQZMEY))x zpHqW5-WSPW52}@f1V&rIXPj0iO8Cx#yahJPpn8oNangAxB?fVUO}(Qkqr~cFIfZ{c z<-oUG=A<>Z=JNURi7@u6tMn?Dwekr<9Qe<(ZJ1muKD`%HSGaKC+&g7<3j%^5p3^(C z7s|YF?iKEen-*e#YOYT!7DOa6<^644_+OVlBBcP17Og~E)~!yjcA%0}(l|2B&F8G= zqd1~+br4Z%$j)+(nx5|%cIZ*DLEG;_eXn&cVG3<5%{$_5OV2lcq-$1Nz+ZGD_%uQG zCq%R_hJ6W&%8}_n@lTYeFk%JLr+Mf1lP-dGAh-2#z{mW;yS1*a^9lJ__3p0IxA7t zo@~C(Q0a)do^WVvSL;lMxq^$Wc*e&7VMbPk*`+T(l*$pf0{vYVz8W%OCn9$BxU_bhPn1Xsv@zaz~ z;lvphT8q6*QPmK?UU-lV*r57plI_4_9_=#hMfCFOPR1^mFKpy!pt<$*&AbG6Wd7#h zeUWXbYL?F~rfhuAl0HcD>)KMC=c-NEoFxMR_k^i|N}YQtxRE;XDv>2sA|@gGNIyH* zuv@}(FLL7#7#ey5})r!q`j2kw1|sWns-|K%tX=f*CR+j?Gwo0Dx2%}k#Lf zS(|E}PARzOaaiXDcV*54)Bu73)o(GFTP~D%87GIN0UTCE7v*1;e!nNESKXIMyU=qctyOl zTp>7mp!n1brq!lVariMNONS$L$T)VPYSOf=y%c*vM5>-<^f9@AhTwM7C<-#~j#`)u zGIF6-O^Ad+Vs9?rDn57@*qwNzqyqv56{#AuC#D3-j;2eSNo1_h*ui->xr?W^I|OXh zIao$Zs^fZFyBparnb)Pi6E&N^q33k}608>$m9VTj`O!5hKnW!dtz7GK(Fx8|d=_Nn zLyQyJWJU8k$Bv9_lPNGd7Q{^jFlY%FjDB^MX-eGBSM=P_AkLM?Xa`!m3WaBd9s>B4v@Pb5zQJXu-NYnn@$wXb63)(DmmF=t7OxZ>=tpa zaSz!h+Y(BsbvP3PQoU~58@w*dn6r{x%?L5#z;G9ee<(e&mSi|>1l#OQVH90h7u|fN zXjut=;=_2a4NU~2D@&!AD)r$tt9dEFfi*?q_VP9Rk3!7$ki1)Cx_aLCHK`@CgHlU1 zmBJ{A4^rmQ5k=M3y4TS{a(-EhNIIFdp4UfgA`Qw_e1woa@VoIA;qAkaev8s3ML2!e zoSXS~$GEcc=*nTid!9w}qJvalD9*v{H$B85eHGfyBmBhq7jL)tLvlQHE}1hWIXWj@ z$H^%rkPeDyp%O)*^JaUUx=b|8X`pbMY=!4xpR|&!Mo>z#K3x$}-s@ta1p2OO;scEs zhe?c!EOzZe7Uw1JG~|OT{(fgNuAZ=(fY7aOv&ADe5$By;7nyp$O=a;HjMm}%g*DEQ zsh`83RT9C)<`q-AcOS0jTBS#|&cXHWF;T~@O5!6lbG5Hf#oW2p`$E#O+xFIkwF*&ucvMjw>dlRD@`7nmmS+-+b~0hhr6j7I-*|-`}p7~_6tFl#GM%8n&e)p zWFK15o3-oS@Jcj3#5vPyXVjoOQM{waXPaL&M|6&1uvmFrZ^c{GoWRa_D?3O#*G)QR zH9j|NeJFoqcyOjxTSeOYzpM1A&!tw@%>G@Upjc^vdEcafji zLg6;46Hmm<9)n>mTBRD$6iHug@;%pVa%+RjR-21YIE_9gV#bOSEeBIm@Pn+%UH(dz zpL|C|=ieL=P1p@pX26A9VR0NJ`Lpw7!W&A4*FjYIGF-|U4m2d!O>1&5m2l*sN5 zSSsI5f7R3@>kH#)>JQtKDL|#E>K+P!co|5Jcu;V+o*Ft3j?sI-WNB=1-^V^*KBgUm z?HJ7+KNs4$dwx|lYgr_2_p78+|3_%0<@XHHotNhZP>u4^LSOrydnPIOgjjQy8fzmk z145Acw>3BR;|65b@YeTw(v|=l-KsYoF5~ zb_nFM-<1;Don$R0+Fo|!_RcGLmO1*L*KYO8oc=bJQiRD@&oOMW%r%L%{9MzO-bE)+ zqpwuL>=vCrr=r6oZ=}=yx#;wb8C>~EQ7-+8M+|lCVpLGY97<>^V+i=F6ZmODZuz~$j7zJHQL;1DTjLnyV{U4sh{5?puPVH* zNBD8#d^&5MB_~I@Yd_B-?YsH40ylCHuRqVE=3ONNNw@b4u6)VtCC6uxX6s-tnC|n6 zZGQD9K80G(3W?fkM$--`2Hu_fqhgkKp``%CmvUmtysQ5FOrfj)R(U&x+iFo7ed)Iw z=0~1!v8p3X^7@X)!@b(?d;XXRaofq49@y{lHh<*zfpO{@xY+2Oh9X)z>!bSzMTxxq zsf!>c`VXFH#n|pg3RSDUI8;^kJvsT5ANSkJXKm3-_uyn%qnU-f4v}UlYPCjbCZF`J zCK<_@dNr?Ex6*1CftPNV>TK>WL;!)yCXkf*=PPYx0E(mKpQr9N^Kkffx}v`)KG1n} ztKJ(s)0zkl42-b=hwBP#Or1ds5=TY%dwK+jdntI#$IQMCcMUaOCU{U1r0+*gqt)kc ztoYN~@Y)0lyu^#BwF^#_jf%|q66AsrY}Lv=X1tnmxtU=z>Pmci14`?C)lbnU_7r2B zOZ!hFL$Q13KW2&tjAlFXiRy9i^L1^V-46s|_;4=*l^>SiJrEX}d-t68XKmVM9YPc1 z-QsBSV)Eh^dY0~FRPV*-!!R1|rM5X&wrx7iX!U=D7;>CxQD19`jT4)_G7NfN;U>OU z$}8TfG9DLpmRkbTIK7u_<*=VlCwh*1XXJsKLwAjU-9$*G6)th0Y(!{_FzIde^$Zrj z@1~y>!po96TIEi#)<)JcVa;*#T9#tw1=n>2q~=@X)gyz=C#}k6W}EbTF-T`@M3R0E zYw1MX_IZ_Z%h*KGan>Z)v9~ zt|T{c?PdY`fi>6tA`ic19oE#{fZ=SaEdlU@sydcnUW_x9emBh64#S}Z0bgiU=|OAH z6g<;gZ7)BMdA4(b$kO*1W);PChNt`c`Gs!DBzMh@c7v?SekfaY?nB~sV%EI}VO_EF zX>qp^W!D+r^o_~V^r-JL=HyPCK)ZHa5Z`Dy>#2guIiBE|!8@;^Bl2uewqdS^t@N%@ zju~+Nw4U!ISHE&@#>$lWLJh}E5IY2Xu7tf~h!X_A8D(RgHs;Ne!RD@Ajxq)EG}AMy zwBbFRX4KuYegkl*))NY6cnP>dkk{khqJsCsX$kcGwq>$Xw|JhK=pL{LPk1i_HZhro z`sQ!iONrGkkfO$+<(`E-<#yH;{Et zK_uuJpuu;ic6aFO!jf`iM-R;k<8A_JDaBg}d6=XpSTh4}BpL0Ip^cY%H z>?fV263z^C5&ol_~V1sFsx(Mtk!RTn~g=m&5 z4XHf65c3ly*4nZn@qOm?(?~o9vu!?F%2T|UNPe!`nnua@8M%#8CZtuOE5b4626ItE zm$e61RsJXH!MQK`?g;3$ROL<4sN6kOz8YZzrYLYl&m#z40E~QKdZ48LL7oo% z4I}r7WAz!@JAF)BLyfy-&0^$hvnkI`^lIMI50mfX?OMMio>dmz@B7L&)qMYf$R?s^ z=?1ZQ=|d7r_DM-@iGaYG+r}K|@25%Gte@FIs`&s=%G-ISvqSI2V_$Q#@~C|sX3hG} zIVd&qDaO9kp9ktJVR)DCy`bY2))4N~6kHck7tcX^hG0wMtctf%3+83d7BVeG1?t&h zKYzbH=rLluCF?+6iuO2LnycQc-$YGDHg>a0!hAapH}^S}VS1MtU!GL8bsQ9>?o4)% z$yh`~)A=hnF^5@&Li%x9a23jcIi~_6!EI>V-uNJws~285LJ*D8j)|G5_0rQH_3f6*~eG&m6Z(#XA}diM;Mw-e=I+I6{JK7tb)enR!`x< z5L)P+?8xe^8-PEE0xaY|&u1R-Wl@T%cZOZTE$KDiNv;3+0LcXCe;)WhN+qA9!JBa-1%2<&rbcRXm%2QRB z`1Peyqb!bvtjZ3^zA-PY$vg@$l-i6q=svAGNvp)^p?{uH(BiTEjYU6mooC z?0R-}VRZH%^2R5>yA{}l5jmglH##ZIZtQ+2M5VD`#r3Oj<{w)AtQ{v?Xp;b@uWo2| z|DN+_b!t#6MEEq$;)swR)OZGw1llFT6db8j6u2pR>Ea=oiOY`UC!OzM%s8o^Q?SE+{QZAEdH_tUpIw5HB$lj7Dftdg?n_XUG2G-%$@WMr>6xC!1-y*! z7hYp1K$!B>G@mlCZ*Kpf{vgD^<$@@K%D8e)wO2jV~M}HQbjkc)71Pco?Z&h*f;%)g6UEU>V~`z=<{OPr%f96ySx!Vi5NXNWITz z9yOO)nl6j5ojU;v`{Zv-1HLg(+F~uqAQR4_Ixf9}DL@fWxB< zku)USz0?$?wInX6ut{+$I#KDLe;4#OGB4m5k0qUk|F;+VSkpG7L=TAuHfXY_vo(5efjeN9z_q#8{e{97g~O-u$k(k_V?RPylzvNP{^eD z+okV!D*q%={yWF}WUA+Q9C@OWBL{MCy2A$F*(kuAzIKp zXT_m|9zMIwr`XD`R7yAIs9hk zcpvyA@qPbOV@B?xAWrYZ9Cz8%r8(#Pg3h(^9-VeGNAgzA$Li3m&zrNiRqS4sz0KmJ zKAunpmf6WM>g6>H{t&qN7oy|{>Pr4sjYt4zp}47@ajg_9m(pl>M8f@ z_iTB!Y5t!(_loUz_O#P`}yXvhi+C!tZpB8Xo4q!DQsBG#OWO~NpxXv(>9T49l5E= ivtRG9^ic|2_n-ZfJ1>tYugX>iAn` where \ is specific to the package you're using. Once the reference is made, you can call the package through its API. @@ -66,7 +66,7 @@ With the Newtonsoft.Json package in the project, you can call its `JsonConvert.S public string Email { get; set; } public DateTime DOB { get; set; } } - + class Program { static void Main(string[] args) diff --git a/docs/reference/target-frameworks.md b/docs/reference/target-frameworks.md index 86b59a309..a2c1e0df5 100644 --- a/docs/reference/target-frameworks.md +++ b/docs/reference/target-frameworks.md @@ -288,7 +288,7 @@ Additional frameworks defined by third parties provide compatibility with other | | WindowsPhone 8.1 (UWP) | | | WindowsPhone 8.0 (SL) | -Additionally, NuGet packages targeting Xamarin can use additional Xamarin-defined frameworks. See [Creating NuGet packages for Xamarin](https://developer.xamarin.com/guides/cross-platform/advanced/nuget/). +Additionally, NuGet packages targeting Xamarin can use additional Xamarin-defined frameworks: | Name | Description | .NET Standard | | --- | --- | --- From 4c46659b27727b08c205ccc67912af03126b6bba Mon Sep 17 00:00:00 2001 From: Donnie Goodson <49205731+donnie-msft@users.noreply.github.com> Date: Mon, 24 Feb 2025 15:35:51 -0800 Subject: [PATCH 910/988] Remove non-SDK style project comment from Restore settings (#3403) --- docs/consume-packages/Package-Restore.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Package-Restore.md b/docs/consume-packages/Package-Restore.md index 765f6ea9b..d39c3620b 100644 --- a/docs/consume-packages/Package-Restore.md +++ b/docs/consume-packages/Package-Restore.md @@ -87,7 +87,7 @@ Select **Automatically check for missing packages during build in Visual Studio* ``` -For non-SDK-style projects, you must select **Allow NuGet to download missing packages** as well as **Automatically check for missing packages during build in Visual Studio** in **Options** to enable automatic restore. +You must select **Allow NuGet to download missing packages** as well as **Automatically check for missing packages during build in Visual Studio** in **Options** to enable package restore during build. #### Choose the default package management format From 4bc26f4f066acb1c4d56d85530ee8af7cf05e478 Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Tue, 25 Feb 2025 15:28:06 -0800 Subject: [PATCH 911/988] Remove references to VisualStudioAccountProvider in NuGet-Credential-Providers-for-Visual-Studio (#3401) --- .../NuGet-Credential-Providers-for-Visual-Studio.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/docs/reference/extensibility/NuGet-Credential-Providers-for-Visual-Studio.md b/docs/reference/extensibility/NuGet-Credential-Providers-for-Visual-Studio.md index 6b10f8121..04ea8de23 100644 --- a/docs/reference/extensibility/NuGet-Credential-Providers-for-Visual-Studio.md +++ b/docs/reference/extensibility/NuGet-Credential-Providers-for-Visual-Studio.md @@ -31,8 +31,7 @@ The NuGet Visual Studio Extension 3.6+ implements an internal CredentialService During credential acquisition, the credential service will try credential providers in the following order, stopping as soon as credentials are acquired: 1. Credentials will be fetched from NuGet configuration files (using the built-in `SettingsCredentialProvider`). -1. If the package source is on Visual Studio Team Services, the `VisualStudioAccountProvider` will be used. -1. All other plug-in Visual Studio credential providers will be tried sequentially. +1. Visual Studio credential providers will be tried sequentially. 1. Try to use all NuGet cross platform credential providers sequentially. 1. If no credentials have been acquired yet, the user will be prompted for credentials using a standard basic authentication dialog. From dc0dbb5966203a38dd9712489a76eb6d0cfdacdb Mon Sep 17 00:00:00 2001 From: Mike Jones Date: Mon, 3 Mar 2025 13:32:32 -0800 Subject: [PATCH 912/988] Update links, update freshness value for the quickstarts and main tutorials (#3405) * Remove orphaned image * SFI image updates * SFI image updates * SFI image updates * Update freshness for quickstarts and main tutorials * link fixes * link fixes --- docs/consume-packages/Finding-and-Choosing-Packages.md | 2 +- docs/consume-packages/install-use-packages-dotnet-cli.md | 2 +- docs/consume-packages/install-use-packages-nuget-cli.md | 2 +- docs/consume-packages/install-use-packages-powershell.md | 2 +- docs/consume-packages/install-use-packages-visual-studio.md | 5 ++--- docs/create-packages/Creating-a-Package.md | 2 +- docs/create-packages/creating-a-package-dotnet-cli.md | 2 +- docs/index.yml | 2 +- docs/install-nuget-client-tools.md | 2 +- .../create-and-publish-a-package-using-the-dotnet-cli.md | 2 +- ...d-publish-a-package-using-visual-studio-net-framework.md | 2 +- .../create-and-publish-a-package-using-visual-studio.md | 6 ++---- .../install-and-use-a-package-in-visual-studio.md | 5 ++--- .../install-and-use-a-package-using-the-dotnet-cli.md | 2 +- docs/what-is-nuget.md | 4 +--- 15 files changed, 18 insertions(+), 24 deletions(-) diff --git a/docs/consume-packages/Finding-and-Choosing-Packages.md b/docs/consume-packages/Finding-and-Choosing-Packages.md index 34990c486..7b00fcd89 100644 --- a/docs/consume-packages/Finding-and-Choosing-Packages.md +++ b/docs/consume-packages/Finding-and-Choosing-Packages.md @@ -3,7 +3,7 @@ title: Find and evaluate NuGet packages description: Find and evaluate publicly available NuGet packages for your project by using advanced nuget.org search filters and syntax. author: JonDouglas ms.author: jodou -ms.date: 02/08/2024 +ms.date: 03/03/2025 ms.topic: conceptual --- diff --git a/docs/consume-packages/install-use-packages-dotnet-cli.md b/docs/consume-packages/install-use-packages-dotnet-cli.md index 92712417d..39144ba75 100644 --- a/docs/consume-packages/install-use-packages-dotnet-cli.md +++ b/docs/consume-packages/install-use-packages-dotnet-cli.md @@ -3,7 +3,7 @@ title: Install and manage NuGet packages with the dotnet CLI description: See how to use the dotnet CLI to install, list, remove, and update NuGet packages. author: mikejo5000 ms.author: mikejo -ms.date: 08/21/2023 +ms.date: 03/03/2025 ms.topic: conceptual --- diff --git a/docs/consume-packages/install-use-packages-nuget-cli.md b/docs/consume-packages/install-use-packages-nuget-cli.md index 53daddfd0..fe0a5e8f4 100644 --- a/docs/consume-packages/install-use-packages-nuget-cli.md +++ b/docs/consume-packages/install-use-packages-nuget-cli.md @@ -3,7 +3,7 @@ title: Manage NuGet packages with the NuGet CLI description: Instructions for using the NuGet CLI, nuget.exe, to manage NuGet packages. author: mikejo5000 ms.author: mikejo -ms.date: 08/21/2023 +ms.date: 03/03/2025 ms.topic: conceptual --- diff --git a/docs/consume-packages/install-use-packages-powershell.md b/docs/consume-packages/install-use-packages-powershell.md index 262a8d3ac..d2a177423 100644 --- a/docs/consume-packages/install-use-packages-powershell.md +++ b/docs/consume-packages/install-use-packages-powershell.md @@ -3,7 +3,7 @@ title: Manage NuGet packages with the Visual Studio Package Manager Console description: See how to work with NuGet packages by using PowerShell commands in the Visual Studio Package Manager Console. author: JonDouglas ms.author: jodou -ms.date: 08/21/2023 +ms.date: 03/03/2025 ms.topic: conceptual f1_keywords: - "vs.nuget.packagemanager.console" diff --git a/docs/consume-packages/install-use-packages-visual-studio.md b/docs/consume-packages/install-use-packages-visual-studio.md index 361bd0a4a..302e9d3cd 100644 --- a/docs/consume-packages/install-use-packages-visual-studio.md +++ b/docs/consume-packages/install-use-packages-visual-studio.md @@ -3,7 +3,7 @@ title: Install and manage packages in Visual Studio using the NuGet Package Mana description: Learn how to use the NuGet Package Manager UI in Visual Studio for working with NuGet packages. author: JonDouglas ms.author: jodou -ms.date: 08/21/2023 +ms.date: 03/03/2025 ms.topic: conceptual f1_keywords: - "vs.toolsoptionspages.nuget_package_manager" @@ -197,8 +197,7 @@ These options are available only for certain project types: ## Related video -- [Install and Use a NuGet Package with Visual Studio](/shows/nuget-101/install-and-use-a-nuget-package-with-visual-studio-2-of-5/player) -- Find more NuGet videos on [Channel 9](/shows/nuget-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). +- Find NuGet videos on [Channel 9](/shows/nuget-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). ## See also diff --git a/docs/create-packages/Creating-a-Package.md b/docs/create-packages/Creating-a-Package.md index 45714c6c8..c894ade4a 100644 --- a/docs/create-packages/Creating-a-Package.md +++ b/docs/create-packages/Creating-a-Package.md @@ -3,7 +3,7 @@ title: Create a NuGet package using nuget.exe CLI description: A detailed guide on designing and creating a NuGet package, including files and versioning. author: JonDouglas ms.author: jodou -ms.date: 07/14/2022 +ms.date: 03/03/2025 ms.topic: conceptual --- diff --git a/docs/create-packages/creating-a-package-dotnet-cli.md b/docs/create-packages/creating-a-package-dotnet-cli.md index 15e2d1006..498587233 100644 --- a/docs/create-packages/creating-a-package-dotnet-cli.md +++ b/docs/create-packages/creating-a-package-dotnet-cli.md @@ -3,7 +3,7 @@ title: Create a NuGet package with the dotnet CLI description: Read a detailed guide about the process of designing and creating a NuGet package, including key decision points like files and versioning. author: JonDouglas ms.author: jodou -ms.date: 08/21/2023 +ms.date: 03/03/2025 ms.topic: conceptual --- diff --git a/docs/index.yml b/docs/index.yml index 0ca90f01a..602660403 100644 --- a/docs/index.yml +++ b/docs/index.yml @@ -9,7 +9,7 @@ metadata: ms.topic: hub-page author: JonDouglas ms.author: jodou - ms.date: 05/26/2023 + ms.date: 03/03/2025 highlightedContent: items: diff --git a/docs/install-nuget-client-tools.md b/docs/install-nuget-client-tools.md index 5911ce98c..1a2915b63 100644 --- a/docs/install-nuget-client-tools.md +++ b/docs/install-nuget-client-tools.md @@ -3,7 +3,7 @@ title: Install NuGet client tools description: Learn how to install and use the dotnet and NuGet client command-line interface (CLI) tools and the Package Manager tool for Visual Studio. author: JonDouglas ms.author: jodou -ms.date: 11/03/2023 +ms.date: 03/03/2025 ms.topic: quickstart --- diff --git a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md index b8aadf5ba..a28227cf8 100644 --- a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md +++ b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md @@ -3,7 +3,7 @@ title: Create and publish a NuGet package with the dotnet CLI description: Walk through quickly creating and publishing a NuGet package by using the dotnet CLI. author: JonDouglas ms.author: jodou -ms.date: 08/21/2023 +ms.date: 03/03/2025 ms.topic: quickstart --- diff --git a/docs/quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md b/docs/quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md index 0aeb9fc2b..694fbab75 100644 --- a/docs/quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md +++ b/docs/quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md @@ -3,7 +3,7 @@ title: "Quickstart: Create and publish a package using Visual Studio (.NET Frame description: A quickstart that shows how to create and publish a .NET Framework NuGet package using Visual Studio on Windows. author: JonDouglas ms.author: jodou -ms.date: 08/21/2023 +ms.date: 03/03/2025 ms.topic: quickstart --- diff --git a/docs/quickstart/create-and-publish-a-package-using-visual-studio.md b/docs/quickstart/create-and-publish-a-package-using-visual-studio.md index d2c94db9a..dd1169c71 100644 --- a/docs/quickstart/create-and-publish-a-package-using-visual-studio.md +++ b/docs/quickstart/create-and-publish-a-package-using-visual-studio.md @@ -3,7 +3,7 @@ title: "Quickstart: Create and publish a NuGet package using Visual Studio (Wind description: A quickstart that shows how to create and publish a .NET NuGet package using Visual Studio for Windows. author: JonDouglas ms.author: jodou -ms.date: 08/21/2023 +ms.date: 03/03/2025 ms.topic: quickstart --- @@ -233,9 +233,7 @@ In this example, the property specifies a file named *readme.txt* in the project ## Related video -> [!VIDEO https://learn.microsoft.com/shows/NuGet-101/Create-and-Publish-a-NuGet-Package-with-Visual-Studio-4-of-5/player] - -Find more NuGet videos on [Channel 9](/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). +Find NuGet videos on [Channel 9](/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). Congratulations on creating a NuGet package by using a Visual Studio .NET class library. Advance to the next article to learn how to create a NuGet package with the Visual Studio .NET Framework. diff --git a/docs/quickstart/install-and-use-a-package-in-visual-studio.md b/docs/quickstart/install-and-use-a-package-in-visual-studio.md index 3c41248df..5a73bf2cc 100644 --- a/docs/quickstart/install-and-use-a-package-in-visual-studio.md +++ b/docs/quickstart/install-and-use-a-package-in-visual-studio.md @@ -3,7 +3,7 @@ title: "Quickstart: Install and use a NuGet package in Visual Studio (Windows on description: In this quickstart, you learn how to install and use a NuGet package in a Visual Studio project for Windows. author: JonDouglas ms.author: jodou -ms.date: 08/21/2023 +ms.date: 03/03/2025 ms.topic: quickstart --- @@ -128,8 +128,7 @@ With the `Newtonsoft.Json` package in the project, call its `JsonConvert.Seriali ## Related video -- [Install and Use a NuGet Package with Visual Studio](/shows/nuget-101/install-and-use-a-nuget-package-with-visual-studio-2-of-5/player) -- Find more NuGet videos on [Channel 9](/shows/nuget-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). +- Find NuGet videos on [Channel 9](/shows/nuget-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). ## See also diff --git a/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md b/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md index 6e53cadac..d5259dfcd 100644 --- a/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md +++ b/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md @@ -3,7 +3,7 @@ title: Install and use a NuGet package with the dotnet CLI description: Get a quick tutorial on how to use the dotnet CLI to install and use a NuGet package in a .NET project. author: JonDouglas ms.author: jodou -ms.date: 08/21/2023 +ms.date: 03/03/2025 ms.topic: quickstart --- diff --git a/docs/what-is-nuget.md b/docs/what-is-nuget.md index b66de09cb..5c0537b68 100644 --- a/docs/what-is-nuget.md +++ b/docs/what-is-nuget.md @@ -106,9 +106,7 @@ Take a moment to browse the table of contents for this documentation, and you se ## Related video -> [!Video https://learn.microsoft.com/shows/NuGet-101/What-is-NuGet-1-of-5/player] - -Find more NuGet videos on [Channel 9](/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). +Find NuGet videos on [Channel 9](/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). ## Comments, contributions, and issues From 61526e7455916664a29c08f8fae778915cd346ec Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Thu, 6 Mar 2025 18:22:23 -0800 Subject: [PATCH 913/988] Update NuGet 6.13 release notes with new bug fixes (#3407) --- docs/release-notes/NuGet-6.13.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/docs/release-notes/NuGet-6.13.md b/docs/release-notes/NuGet-6.13.md index c52653ca5..2aa1fc52e 100644 --- a/docs/release-notes/NuGet-6.13.md +++ b/docs/release-notes/NuGet-6.13.md @@ -14,9 +14,15 @@ NuGet distribution vehicles: | NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | |:---|:---|:---| | [**6.13**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.13](https://visualstudio.microsoft.com/downloads/) | [9.0.2xx](https://dotnet.microsoft.com/download/dotnet/9.0)1 | +| [**6.13.1**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.13.1](https://visualstudio.microsoft.com/downloads/) | [9.0.2xx](https://dotnet.microsoft.com/download/dotnet/9.0)1 | +| [**6.13.2**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.13.2](https://visualstudio.microsoft.com/downloads/) | [9.0.2xx](https://dotnet.microsoft.com/download/dotnet/9.0)1 | 1 Installed with Visual Studio 2022 with any .NET workload +## Summary: What's New in 6.13.2 + +* New restore dependency resolver fails when resolving identical child dependencies - [#14025](https://github.com/NuGet/Home/issues/14025) + ## Summary: What's New in 6.13.1 NuGet 6.13.1 is available in Visual Studio 17.13. From 70011ac44a25a05e772d2ecce10dd120700fea6d Mon Sep 17 00:00:00 2001 From: Jeff Kluge Date: Mon, 24 Mar 2025 10:31:02 -0700 Subject: [PATCH 914/988] Update documentation for NUGET_UPDATEFILETIME_MAXRETRIES (#3413) --- docs/reference/cli-reference/cli-ref-environment-variables.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/cli-reference/cli-ref-environment-variables.md b/docs/reference/cli-reference/cli-ref-environment-variables.md index 1c4efb851..a55fb00cb 100644 --- a/docs/reference/cli-reference/cli-ref-environment-variables.md +++ b/docs/reference/cli-reference/cli-ref-environment-variables.md @@ -33,7 +33,7 @@ The list of properties documented in [NuGet pack and restore as MSBuild targets] | NUGET_RETRY_HTTP_429 | Change retry behavior on HTTP 429 responses | Prior to NuGet 6.5, NuGet would not retry requests that result in HTTP 429 on 408. The default value is `true`, and this environment variable can be set to `false` to opt-in to older NuGet behaviour (don't retry the request) | | NUGET_RESTORE_MSBUILD_VERBOSITY | Sets the MSBuild log verbosity. | Default is *quiet* ("/v:q"). Possible values *q[uiet]*, *m[inimal]*, *n[ormal]*, *d[etailed]*, and *diag[nostic]*. | | NUGET_SHOW_STACK | Determines whether the full exception (including stack trace) should be displayed to the user. | Specified as *true* or *false* (default). | -| NUGET_UPDATEFILETIME_MAXRETRIES | Sets the number of times NuGet will attempt to set the file timestamp when extracting packages. | On Windows anti-virus software might temporarily open files, preventing NuGet from changing the timestamp. NuGet uses an exponential back-off where the wait duration between attempts is `Math.Pow(2, retryNumber)`. The default max retries is 9, meaning the default total wait duration before failure will be approximately one second. | +| NUGET_UPDATEFILETIME_MAXRETRIES | Sets the number of times NuGet will attempt to retry seting the file timestamp when extracting packages when the first attempt failed. | On Windows anti-virus software might temporarily open files, preventing NuGet from changing the timestamp. NuGet uses an exponential back-off where the wait duration between attempts is `Math.Pow(2, retryNumber)`. The default max retries is 9, meaning the default total wait duration before failure will be approximately one second. | | NUGET_XMLDOC_MODE | Determines how assemblies XML documentation file extraction should be handled. | Supported modes are *skip* (do not extract XML documentation files), *compress* (store XML doc files as a zip archive) or *none* (default, treat XML doc files as regular files). | | NUGET_CERT_REVOCATION_MODE | Determines how the revocation status check of the certificate used to sign a package, is performed when a signed package is installed or restored. When not set, defaults to `online`.| Possible values *online* (default), *offline*. Related to [NU3028](../errors-and-warnings/NU3028.md) | | NUGET_ENABLE_ENHANCED_HTTP_RETRY | Enables or disables enhanced HTTP retry in NuGet. | Possible values are `true` (default) or `false`. | From 06bb4ee229dd0babf358783dc1b00735a1c00e6e Mon Sep 17 00:00:00 2001 From: Martin Ruiz Date: Mon, 24 Mar 2025 14:12:37 -0700 Subject: [PATCH 915/988] Fix release notes links (#3411) --- docs/release-notes/Index.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/docs/release-notes/Index.md b/docs/release-notes/Index.md index e535502b9..c7d4bc885 100644 --- a/docs/release-notes/Index.md +++ b/docs/release-notes/Index.md @@ -11,6 +11,12 @@ ms.topic: conceptual [Known Issues](../release-notes/known-issues.md) +[Nuget 6.13](../release-notes/NuGet-6.13.md) + +[NuGet 6.12](../release-notes/NuGet-6.12.md) + +[NuGet 6.11](../release-notes/NuGet-6.11.md) + [NuGet 6.10](../release-notes/NuGet-6.10.md) [NuGet 6.9](../release-notes/NuGet-6.9.md) From 28c090e7addccbfd639357844982a297aade5a32 Mon Sep 17 00:00:00 2001 From: Yaakov Date: Wed, 26 Mar 2025 05:56:17 +1100 Subject: [PATCH 916/988] Fix typo in package references docs (#3415) --- docs/consume-packages/Package-References-in-Project-Files.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Package-References-in-Project-Files.md b/docs/consume-packages/Package-References-in-Project-Files.md index 1476382ff..d8b354b89 100644 --- a/docs/consume-packages/Package-References-in-Project-Files.md +++ b/docs/consume-packages/Package-References-in-Project-Files.md @@ -464,7 +464,7 @@ You can leave off `$(AssetTargetFallback)` if you wish to overwrite, instead of ## PrunePackageReference The .NET Runtime is constantly evolving, with performance improvements and new APIs each release. -There is a lot of functionality that's available within the runtime, but also as packages, such as [System..Text.Json](https://www.nuget.org/packages/System.Text.Json). This can often lead to a `System.Text.Json 8.0.0` in a project targeting `.NET 9` or `.NET 8`. This dependency is unnecessary and the build conflict resolution would not use the assembly coming from the package since it's already available in the .NET Runtime. +There is a lot of functionality that's available within the runtime, but also as packages, such as [System.Text.Json](https://www.nuget.org/packages/System.Text.Json). This can often lead to a `System.Text.Json 8.0.0` in a project targeting `.NET 9` or `.NET 8`. This dependency is unnecessary and the build conflict resolution would not use the assembly coming from the package since it's already available in the .NET Runtime. Starting in in [NuGet version 6.13](..\release-notes\NuGet-6.13.md) and .NET SDK 9.0.200, `PrunePackageReference` enables the pruning of these packages at restore time for .NET SDK based projects. Package pruning is available as an opt-in feature with the .NET 9 SDK, and will be enabled by default for all `.NET` frameworks and `>= .NET Standard 2.0` starting with .NET 10 SDK. From 3f9ac84711f088683475c4f025a92b5d9d023d30 Mon Sep 17 00:00:00 2001 From: Donnie Goodson <49205731+donnie-msft@users.noreply.github.com> Date: Wed, 26 Mar 2025 17:39:38 -0700 Subject: [PATCH 917/988] Update NU3008 to point to NuGetGallery (#3409) --- docs/reference/errors-and-warnings/NU3008.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/errors-and-warnings/NU3008.md b/docs/reference/errors-and-warnings/NU3008.md index 9d825e4ca..fa8461f8d 100644 --- a/docs/reference/errors-and-warnings/NU3008.md +++ b/docs/reference/errors-and-warnings/NU3008.md @@ -22,4 +22,4 @@ NuGet package being verified has changed since it was signed. Please ensure that the package has not been tampered with since signing. If this was a temporary problem, then you can fix this by clearing your local http-cache(s) by running `nuget locals http-cache -clear` or `dotnet nuget locals http-cache --clear` command. However, if the problem persists then please inform the package source and the package author. -If this issue happened on a package which came from `nuget.org` then please file an issue at [NuGet/Home](https://github.com/NuGet/Home/issues) along with the package that caused this problem. +If this issue happened on a package which came from `nuget.org` then please file an issue at [NuGet/NuGetGallery](https://github.com/NuGet/NuGetGallery/issues) along with the package that caused this problem. From 8bb529b3f32fb8c73f8ba53e92c7b28018ffdcec Mon Sep 17 00:00:00 2001 From: Nigusu Solomon Yenework <59111203+Nigusu-Allehu@users.noreply.github.com> Date: Thu, 27 Mar 2025 09:53:01 -0700 Subject: [PATCH 918/988] add .NET 9.0.201 to 6.13.1 (#3412) --- docs/release-notes/NuGet-6.13.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/release-notes/NuGet-6.13.md b/docs/release-notes/NuGet-6.13.md index 2aa1fc52e..dbf8a69b2 100644 --- a/docs/release-notes/NuGet-6.13.md +++ b/docs/release-notes/NuGet-6.13.md @@ -13,9 +13,9 @@ NuGet distribution vehicles: | NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | |:---|:---|:---| -| [**6.13**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.13](https://visualstudio.microsoft.com/downloads/) | [9.0.2xx](https://dotnet.microsoft.com/download/dotnet/9.0)1 | -| [**6.13.1**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.13.1](https://visualstudio.microsoft.com/downloads/) | [9.0.2xx](https://dotnet.microsoft.com/download/dotnet/9.0)1 | -| [**6.13.2**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.13.2](https://visualstudio.microsoft.com/downloads/) | [9.0.2xx](https://dotnet.microsoft.com/download/dotnet/9.0)1 | +| [**6.13**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.13](https://visualstudio.microsoft.com/downloads/) | [9.0.200](https://dotnet.microsoft.com/download/dotnet/9.0)1 | +| [**6.13.1**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.13.1](https://visualstudio.microsoft.com/downloads/) | [9.0.201](https://dotnet.microsoft.com/download/dotnet/9.0)1 | +| [**6.13.2**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.13.2](https://visualstudio.microsoft.com/downloads/) | [9.0.203](https://dotnet.microsoft.com/download/dotnet/9.0)1 | 1 Installed with Visual Studio 2022 with any .NET workload @@ -25,7 +25,7 @@ NuGet distribution vehicles: ## Summary: What's New in 6.13.1 -NuGet 6.13.1 is available in Visual Studio 17.13. +NuGet 6.13.1 is available in Visual Studio 17.13 and .NET 9.0.201 SDK. * Support for new slnx solution format in dotnet nuget why and dotnet list package - [#14034](https://github.com/NuGet/Home/issues/14034) From 0540c98c44914d0cbfb29f483e707972e69d8ec0 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Thu, 27 Mar 2025 13:37:13 -0700 Subject: [PATCH 919/988] Remove unused workflow (#3417) --- .github/workflows/stale-issues.yml | 34 ------------------------------ 1 file changed, 34 deletions(-) delete mode 100644 .github/workflows/stale-issues.yml diff --git a/.github/workflows/stale-issues.yml b/.github/workflows/stale-issues.yml deleted file mode 100644 index c98a66b8a..000000000 --- a/.github/workflows/stale-issues.yml +++ /dev/null @@ -1,34 +0,0 @@ -# See https://github.com/marketplace/actions/close-stale-issues -# Mark issues as stale if they're open with no activity for 1 day -# Closed marked issues after 3 days. - -name: close-stale-issues - -on: - schedule: - - cron: "0 0 * * 4" - workflow_dispatch: - -permissions: - contents: read - -jobs: - stale: - permissions: - issues: write # for actions/stale to close stale issues - pull-requests: write # for actions/stale to close stale PRs - runs-on: ubuntu-latest - steps: - - uses: actions/stale@v9 - with: - repo-token: ${{ secrets.GITHUB_TOKEN }} - stale-issue-message: 'Thanks for sharing your feedback. We apologize for our delayed response. Throughout 2024 we are phasing out GitHub issues as the feedback mechanism on documentation content and replacing it with a new feedback system. If you believe your feedback needs to be reviewed prior to closing, then respond directly in this issue and we’ll take a look at it. If no activity occurs in the next 7 days, this issue will be closed.' - close-issue-message: 'This issue is closed. If you feel this issue has been closed in error, please submit a new comment on the issue, and we will review it.' - stale-issue-label: 'stale' - close-issue-label: 'auto-close' - exempt-issue-labels: 'exempt,P1' - remove-stale-when-updated: true - days-before-close: 7 - days-before-issue-stale: 20 - days-before-pr-stale: -1 - operations-per-run: 500 From 08b7f0fe2214a2f2b3db0ad875f14a3a75b9c296 Mon Sep 17 00:00:00 2001 From: lyndaidaii <64443925+lyndaidaii@users.noreply.github.com> Date: Tue, 1 Apr 2025 15:54:19 -0700 Subject: [PATCH 920/988] Add readme template (#3299) * add readme template --- docs/nuget-org/package-readme-on-nuget-org.md | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/docs/nuget-org/package-readme-on-nuget-org.md b/docs/nuget-org/package-readme-on-nuget-org.md index 2826cae28..936f7cf15 100644 --- a/docs/nuget-org/package-readme-on-nuget-org.md +++ b/docs/nuget-org/package-readme-on-nuget-org.md @@ -27,6 +27,39 @@ Consider including the following items in your readme: * Where and how to leave feedback such as link to the project issues, Twitter, bug tracker, or other platform. * How to contribute, if applicable. +For example, you can start with this package README template: + +```text +# Package readme title, e.g., display name or title of the package (optional) + +Start with a clear and concise description: A brief overview of what your package is and does, also what problem it solves. + +## Getting started + +Explain how to use your package, provide clear and concise getting started instructions, including any necessary steps. + +### Prerequisites + +What are specific minimum requirements to use your packages? Consider excluding this section if your package works without any additional setup beyond simple package installation. + +## Usage + +Examples about how to use your package by providing code snippets/example images, or samples links on GitHub if applicable. + +- Provide sample code using code snippets +- Include screenshots, diagrams, or other visual help users better understand how to use your package + +## Additional documentation + +Provide links to more resources: List links such as detailed documentation, tutorial videos, blog posts, or any other relevant documentation to help users get the most out of your package. + +## Feedback + +Where and how users can leave feedback? + +- Links to a GitHub repository where could open issues, Twitter, a Discord channel, bug tracker, or other platforms where a package consumer can connect with the package author. +``` + Keep in mind, high quality readmes can come in a wide variety of formats, shapes, and sizes! If you already have a package available on NuGet.org, chances are that you already have a `readme.md` or other documentation file in your repository that would be a great addition to your NuGet.org details page. > [!Note] From d57c0266792770d6495f6b3d311b318c17231320 Mon Sep 17 00:00:00 2001 From: Nigusu Solomon Yenework <59111203+Nigusu-Allehu@users.noreply.github.com> Date: Fri, 4 Apr 2025 09:13:29 -0700 Subject: [PATCH 921/988] Update NU1105.md to contain invalid tfm (#3418) --- docs/reference/errors-and-warnings/NU1105.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/docs/reference/errors-and-warnings/NU1105.md b/docs/reference/errors-and-warnings/NU1105.md index 9b24896e2..3d6d26856 100644 --- a/docs/reference/errors-and-warnings/NU1105.md +++ b/docs/reference/errors-and-warnings/NU1105.md @@ -12,6 +12,8 @@ f1_keywords: # NuGet Error NU1105 +## Scenario 1 + > Unable to read project information for 'ProjectFile'. The project file may be invalid or missing targets required for restore. ### Issue @@ -36,3 +38,16 @@ The error could also mean that the project is unloaded. * If you are using Visual Studio 2019 or later, NuGet has the ability to re-use artifacts from the previous restore for unloaded projects. In order for this scenario to work, you need to ensure that all projects currently in the solution have been restored from the command line prior to loading them in Visual Studio. * Alternatively, reload the project. + +## Scenario 2 + +> Invalid target framework 'net.6.0' + +### Issue +The project file exists but specifies an invalid target framework: `'net.6.0'`. +This can occur due to a typo or use of an unsupported format. + +### Solution + +Update the project file to use a valid target framework. In this case, replace `'net.6.0'` with `'net6.0'` (without the extra dot). +For a full list of supported frameworks and their correct formats, refer to the [.NET Target Frameworks](/dotnet/standard/frameworks) documentation. From 9905f5568bd3d9343b2618507701d17bc46cc615 Mon Sep 17 00:00:00 2001 From: Nigusu Solomon Yenework <59111203+Nigusu-Allehu@users.noreply.github.com> Date: Fri, 4 Apr 2025 09:13:40 -0700 Subject: [PATCH 922/988] Update NuGet-Cross-Platform-Plugins.md to mention nuget-plugin case sensetivity (#3419) --- docs/reference/extensibility/NuGet-Cross-Platform-Plugins.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/reference/extensibility/NuGet-Cross-Platform-Plugins.md b/docs/reference/extensibility/NuGet-Cross-Platform-Plugins.md index 2c05f48cd..b2a2504b0 100644 --- a/docs/reference/extensibility/NuGet-Cross-Platform-Plugins.md +++ b/docs/reference/extensibility/NuGet-Cross-Platform-Plugins.md @@ -38,7 +38,8 @@ Under this version, the requirements are as follows: - Respond to all requests within a reasonable time period. - Honor cancellation requests for any in-progress operation. -Plugins discovered from the PATH environment variable (for example, installed via `dotnet tool`) additionally must match the filename pattern `nuget-plugin-*`. +Plugins discovered from the PATH environment variable (for example, installed via `dotnet tool`) additionally must match the filename pattern `nuget-plugin-*`. +The `nuget-plugin-` part must be written entirely in lowercase letters. NuGet 6.12 (MSBuild 17.12, and .NET SDK 9.0.100) and earlier also required plugins to be Authenticode signed on Windows. @@ -98,6 +99,7 @@ The plugin entry point will be the name of the installed folder, with the .dll e ### PATH discovery Starting from [NuGet 6.13](../../release-notes/NuGet-6.13.md), NuGet will search each directory provided in the PATH environment variable for files matching the pattern `nuget-plugin-*`. +The pattern matching is case-sensitive, and `nuget-plugin-` must be written entirely in lowercase letters. On Windows the file must have an `.exe` or `.bat` extension. On Linux and Mac the file must have the executable bit set. From d9fdafa6f45a8e7ba21706228343f7e9e1a979e8 Mon Sep 17 00:00:00 2001 From: Pragmateek Date: Wed, 30 Apr 2025 04:19:18 +0200 Subject: [PATCH 923/988] Fix minor typo (#3410) --- docs/consume-packages/Central-Package-Management.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Central-Package-Management.md b/docs/consume-packages/Central-Package-Management.md index df9a08545..fe8dcac28 100644 --- a/docs/consume-packages/Central-Package-Management.md +++ b/docs/consume-packages/Central-Package-Management.md @@ -211,7 +211,7 @@ the feature is disabled. ## Disabling Central Package Management -If you'd like to disable central package management for any a particular project, you can disable it by setting the MSBuild property +If you would like to disable central package management for a particular project, you can disable it by setting the MSBuild property `ManagePackageVersionsCentrally` to `false`: ```xml From c4d84f2bcefe966c57e8d7c31d0b747e762a1090 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Wed, 7 May 2025 09:17:51 +0930 Subject: [PATCH 924/988] Update default info for NuGetAuditMode (#3426) --- docs/concepts/Auditing-Packages.md | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/docs/concepts/Auditing-Packages.md b/docs/concepts/Auditing-Packages.md index 2e9b551e4..94c2c120f 100644 --- a/docs/concepts/Auditing-Packages.md +++ b/docs/concepts/Auditing-Packages.md @@ -4,7 +4,7 @@ description: How to audit package dependencies for security vulnerabilities and author: JonDouglas ms.author: jodou ms.topic: conceptual -ms.date: 02/11/2025 +ms.date: 05/05/2025 --- # Auditing package dependencies for security vulnerabilities @@ -44,10 +44,14 @@ We recommend that audit is configured at a repository level. | MSBuild Property | Default | Possible values | Notes | |------------------|---------|-----------------|-------| -| NuGetAuditMode | direct | `direct` and `all` | If you'd like to audit top-level dependencies only, you can set the value to `direct`. NuGetAuditMode is not applicable for packages.config projects. | +| NuGetAuditMode | See 1 below | `direct` and `all` | If you'd like to audit top-level dependencies only, you can set the value to `direct`. NuGetAuditMode is not applicable for packages.config projects. | | NuGetAuditLevel | low | `low`, `moderate`, `high`, and `critical` | The minimum severity level to report. If you'd like to see `moderate`, `high`, and `critical` advisories (exclude `low`), set the value to `moderate` | | NuGetAudit | true | `true` and `false` | If you wish to not receive security audit reports, you can opt-out of the experience entirely by setting the value to `false` | +1. `NuGetAuditMode` defaults to `all` when a project targets `net10.0` or higher. + Otherwise `NuGetAuditMode` defaults to `direct`. + When a project multi-targets, if any one target framework selects `all`, then audit will use this value for all target frameworks. + #### Audit Sources Restore downloads a server's [`VulnerabilityInfo` resource](../api/vulnerability-info.md) to check against the list of packages each project is using. From bbd10cfdf6b300f8b7d4dd1ae3fb08accd7bd8bd Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Wed, 7 May 2025 15:42:01 +0930 Subject: [PATCH 925/988] Update NU5127 docs (#3425) --- docs/reference/errors-and-warnings/NU5127.md | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/docs/reference/errors-and-warnings/NU5127.md b/docs/reference/errors-and-warnings/NU5127.md index 9a3c2ac48..5e50a7523 100644 --- a/docs/reference/errors-and-warnings/NU5127.md +++ b/docs/reference/errors-and-warnings/NU5127.md @@ -2,9 +2,8 @@ title: NuGet Warning NU5127 description: NU5127 Warning code author: zivkan -ms.date: 09/20/2019 +ms.date: 05/05/2025 ms.topic: reference -ms.reviewer: karann f1_keywords: - NU5127 --- @@ -17,8 +16,17 @@ f1_keywords: ### Issue -Projects using packages with `PackageReference` only use `lib/` and `ref/` assemblies to determine package compatibility. Therefore, a package without any `lib/` or `ref/` files will be considered compatible with all projects. However, if that package contains build files specific to one or more [Target Framework Monikers (TFMs)](../target-frameworks.md), a package consumer may expect the package to fail if none of the build files are used. +Projects using packages with `PackageReference` only use `lib/` and `ref/` assemblies to determine package compatibility. +Therefore, a package without any `lib/` or `ref/` files will be considered compatible with all projects. +However, packages containing MSBuild props or targets that are specific to one or more target frameworks show intent in only being compatible with those target frameworks. + +For example, consider a package `PackageA` contains a single file, `build/net8.0/PackageA.targets`. +If this package is referenced by a project targeting `net48` (.NET Framework, Version 4.8), NuGet will not emit any warnings or errors, but also will not select any assets from the package. +Therefore, the package consumer will not be notified that the package does not work correctly with their project. ### Solution -As the warning message suggests, create an empty file named `_._` in the lib folder for the TFMs listed. This will allow NuGet to fail the restore for `PackageReference` projects when the project is incompatible with the package. +As the warning message suggests, create an empty file named `_._` in the lib folder for the TFMs listed. +This will allow NuGet to fail the restore for `PackageReference` projects when the project is incompatible with the package. + +If your package is intended to be compatible with all target frameworks, but only take effect for certain target frameworks, create a file `build/{PackageId}.props` whose contents are ``. From bf782c176f63bf66e9f043f82ce1e8385b4a2e6d Mon Sep 17 00:00:00 2001 From: Nigusu Solomon Yenework <59111203+Nigusu-Allehu@users.noreply.github.com> Date: Thu, 8 May 2025 14:50:16 -0700 Subject: [PATCH 926/988] Release 6.12.4 (#3428) --- docs/release-notes/NuGet-6.12.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/docs/release-notes/NuGet-6.12.md b/docs/release-notes/NuGet-6.12.md index 18572d668..8a2373eca 100644 --- a/docs/release-notes/NuGet-6.12.md +++ b/docs/release-notes/NuGet-6.12.md @@ -15,6 +15,7 @@ NuGet distribution vehicles: | NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | |:---|:---|:---| | [**6.12**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.12](https://visualstudio.microsoft.com/downloads/) | [9.0.1xx](https://dotnet.microsoft.com/download/dotnet/9.0)1 | +| [**6.12.4**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.12.8](https://visualstudio.microsoft.com/downloads/) | [9.0.106](https://dotnet.microsoft.com/download/dotnet/9.0)1 | 1 Installed with Visual Studio 2022 with any .NET workload @@ -24,6 +25,14 @@ NuGet distribution vehicles: * VS PM UI shows warning icon about package vulnerability even after upgrade [#13866](https://github.com/NuGet/Home/issues/13866) * dotnet nuget why reports missing argument, even though it ran [#13908](https://github.com/NuGet/Home/issues/13908) +## Summary: What's New in 6.12.4 + +NuGet 6.12.4 is available in Visual Studio 17.12.8. + +### Issues fixed in this release + +* Restore should fail more quickly when using http sources - [#14210](https://github.com/NuGet/Home/issues/14210) + ## Summary: What's New in 6.12.3 NuGet 6.12.3 is available in Visual Studio 17.12.4. From ebe6f76ce93c6a9ae08efbeae6370a7051f5b2e8 Mon Sep 17 00:00:00 2001 From: Nigusu Solomon Yenework <59111203+Nigusu-Allehu@users.noreply.github.com> Date: Thu, 8 May 2025 14:58:30 -0700 Subject: [PATCH 927/988] Update consuming-packages-authenticated-feeds.md (#3424) --- .../consume-packages/consuming-packages-authenticated-feeds.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/docs/consume-packages/consuming-packages-authenticated-feeds.md b/docs/consume-packages/consuming-packages-authenticated-feeds.md index 59ab8a14f..b728cf39c 100644 --- a/docs/consume-packages/consuming-packages-authenticated-feeds.md +++ b/docs/consume-packages/consuming-packages-authenticated-feeds.md @@ -141,8 +141,7 @@ However, the credential provider for the .NET SDK is not included by Visual Stud ### List of credential providers -There is a [feature request to make credential providers installable via .NET tools](https://github.com/NuGet/Home/issues/12567), and this will likely make it easier to discover other credential providers. -Until this is implemented, here is a list of credential providers we are aware of: +Here is a list of credential providers we are aware of: * [AWS CodeArtifact NuGet Credential Provider](https://docs.aws.amazon.com/codeartifact/latest/ug/nuget-cli.html#nuget-configure-cli) * [Azure Artifacts Credential Provider](https://github.com/microsoft/artifacts-credprovider). This link is just for the command line credential provider. From 0a5f55c1c6d4e0c9d9787ef14918b296abe47acf Mon Sep 17 00:00:00 2001 From: Jeff Kluge Date: Fri, 9 May 2025 09:50:01 -0700 Subject: [PATCH 928/988] Improve documentation for Central Package Management (#3414) --- .../Central-Package-Management.md | 42 ++++++------- docs/reference/errors-and-warnings/NU1008.md | 62 +++++++++---------- docs/reference/errors-and-warnings/NU1009.md | 27 ++++++-- docs/reference/errors-and-warnings/NU1010.md | 25 ++++++-- docs/reference/errors-and-warnings/NU1011.md | 37 +++++++---- docs/reference/errors-and-warnings/NU1013.md | 38 ++++++++++++ docs/reference/errors-and-warnings/NU1109.md | 38 +++++++++--- docs/reference/errors-and-warnings/NU1507.md | 17 +++-- 8 files changed, 193 insertions(+), 93 deletions(-) create mode 100644 docs/reference/errors-and-warnings/NU1013.md diff --git a/docs/consume-packages/Central-Package-Management.md b/docs/consume-packages/Central-Package-Management.md index fe8dcac28..b932cafd5 100644 --- a/docs/consume-packages/Central-Package-Management.md +++ b/docs/consume-packages/Central-Package-Management.md @@ -1,4 +1,4 @@ ---- +--- title: Central Package Management description: Manage your dependencies in a central location and how you can get started with central package management. author: jondouglas @@ -18,7 +18,7 @@ Historically, NuGet package dependencies have been managed in one of two locatio - `packages.config` - An XML file used in older project types to maintain the list of packages referenced by the project. - `` - An XML element used in MSBuild projects defines NuGet package dependencies. -Starting with [NuGet 6.2](..\release-notes\NuGet-6.2.md), you can centrally manage your dependencies in your projects with the addition of a +Starting with [NuGet 6.2](../release-notes/NuGet-6.2.md), you can centrally manage your dependencies in your projects with the addition of a `Directory.Packages.props` file and an MSBuild property. The feature is available across all NuGet integrated tooling, starting with the following versions. @@ -57,7 +57,7 @@ version. ``` -For each project, you then define a `` but omit the `Version` attribute since the version will be attained from a corresponding +For each project, you then define a `` but omit the `Version` attribute since the version will be obtained from a corresponding `` item. ```xml @@ -81,19 +81,24 @@ simplicity, only one `Directory.Packages.props` file is evaluated for a given pr What this means is that if you had multiple `Directory.Packages.props` files in your repository, the file that is closest to your project's directory will be evaluated for it. This allows you extra control at various levels of your repository. -Here's an example, consider the following repository structure: +Consider the following repository structure: ``` -Repository - |-- Directory.Packages.props - |-- Solution1 - |-- Directory.Packages.props - |-- Project1 - |-- Solution2 - |-- Project2 +📂 (root) + ├─📄 Directory.Packages.props + | + ├─📂Solution1 + | ├─ 📄Directory.Packages.props + | | + | └─ 📂 Project1 + | └─📄Project1.csproj + | + └─ 📂 Solution2 + └─ 📂 Project2 + └─ 📄 Project2.csproj ``` -- Project1 will evaluate the `Directory.Packages.props` file in the `Repository\Solution1\` directory and it must manually import the next one if so desired. +- `Project1.csproj` will load the `Directory.Packages.props` file in the `Repository\Solution1\` directory first and it must manually import any parent ones if desired. ```xml @@ -102,14 +107,14 @@ Repository ``` -- Project2 will evaluate the `Directory.Packages.props` file in the `Repository\` directory. +- `Project2.csproj` will evaluate the `Directory.Packages.props` file in the root directory. -**Note:** MSBuild will not automatically import each `Directory.Packages.props` for you, only the first one closest to the project. If you have multiple -`Directory.Packages.props`, you must import the parent one manually while the root `Directory.Packages.props` would not. +**Note:** MSBuild will not automatically import each `Directory.Packages.props` for you, only the first one found in the project directory or any parent directory. If you have multiple +`Directory.Packages.props` files, you must import any files in parent directories manually. ## Get started -To fully onboard your repository, consider taking these steps: +To fully onboard your repository, follow these steps: 1. Create a new file at the root of your repository named `Directory.Packages.props` that declares your centrally defined package versions and set the MSBuild property `ManagePackageVersionsCentrally` to `true`. @@ -251,8 +256,3 @@ this warning, map your package sources with [package source mapping](https://aka ``` There are 3 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. ``` - - - -> [!Note] -> Central package management is in active development. We appreciate you trying it out and providing any feedback you may have at [NuGet/Home](https://github.com/nuget/home/issues). diff --git a/docs/reference/errors-and-warnings/NU1008.md b/docs/reference/errors-and-warnings/NU1008.md index e8854d32a..3be37802d 100644 --- a/docs/reference/errors-and-warnings/NU1008.md +++ b/docs/reference/errors-and-warnings/NU1008.md @@ -11,51 +11,49 @@ f1_keywords: # NuGet Error NU1008 -> Projects that use central package version management should not define the version on the PackageReference items but on the PackageVersion items: PackageId. +> The following PackageReference items cannot define a value for Version: PackageName. Projects using Central Package Management must define a Version value on a PackageVersion item. -### Issue +## Issue -When using central package management, versions must be defined on the PackageVersion item. - -In your project file, you may see: +A project is configured to use NuGet [Central Package Management](../../consume-packages/Central-Package-Management.md) and a `` item is defined which specifies a value for the `Version` attribute: ```xml - - + + + ``` -### Solution - -- Remove the version from the PackageId PackageReference. -- You may need to add or update the PackageVersion item for PackageId in Directory.Packages.props - - Example: +Alternatively, a `` item is defined with a child `` element that has a value specified: +```xml + + + 5.1.0 + + +``` - ```xml - - - ``` +Projects configured to use [Central Package Management](../../consume-packages/Central-Package-Management.md) should not define a version on `` items. +The version should be defined in on a corresponding `` item with the same identifier in [Directory.Packages.props](../../consume-packages/Central-Package-Management.md#enabling-central-package-management) file instead. - ```xml - - - ``` +## Solution -- Alternatively, you may override an individual package version by using the `VersionOverride` property on a `` item. -This overrides any `` defined centrally. +- Remove the `Version` attribute or child `` element from the `` item: - Example: + ```xml + + + + ``` - ```xml - - - ``` +- Define a `` item that specifies the version in the [Directory.Packages.props](../../consume-packages/Central-Package-Management.md#enabling-central-package-management) file with the same identifier as the `` item: - ```xml - - - ``` + ```xml + + + + ``` +Alternatively, Central Package Management allows overriding centrally defined package versions. See [Overriding Package Versions](../../consume-packages/Central-Package-Management.md#overriding-package-versions) for more information. > [!NOTE] > Note that metadata such as [IncludeAssets, PrivateAssets etc.](../../consume-packages/Package-References-in-Project-Files.md#controlling-dependency-assets) should remain on the PackageReference item. diff --git a/docs/reference/errors-and-warnings/NU1009.md b/docs/reference/errors-and-warnings/NU1009.md index 691dc3fca..5c99ac709 100644 --- a/docs/reference/errors-and-warnings/NU1009.md +++ b/docs/reference/errors-and-warnings/NU1009.md @@ -11,12 +11,29 @@ f1_keywords: # NuGet Error NU1009 -> The packages PackageId are implicitly referenced. You do not typically need to reference them from your project or in your central package versions management file. For more information, see https://aka.ms/sdkimplicitrefs +> The following PackageReference items are implicitly defined and cannot define a PackageVersion item: PackageName. Projects using Central Package Management require that implicit package versions be specified by the PackageReference item. -### Issue +## Issue -Implicitly defined packages should not be managed centrally. +A project is configured to use NuGet [Central Package Management](../../consume-packages/Central-Package-Management.md) and a `` item is defined in the [Directory.Packages.props](../../consume-packages/Central-Package-Management.md#enabling-central-package-management) file for a package that is [implicitly defined](https://aka.ms/sdkimplicitrefs). +Implicitly defined packages are generally declared by an SDK to include packages on your behalf. +For these packages, the owner of the SDK controls the version being used and a user should not define a version with [Central Package Management](../../consume-packages/Central-Package-Management.md). -### Solution +```xml + + + +``` -Remove the PackageVersion for PackageId \ No newline at end of file +## Solution + +- Remove the `PackageVersion` item from the [Directory.Packages.props](../../consume-packages/Central-Package-Management.md#enabling-central-package-management) file that corresponds to the implicitly defined package: + + ```xml + + + + ``` + +> [!NOTE] +> Some SDKs allow you to override the implicitly defined package version by setting a specific MSBuild property for that package and the SDK may have documentation on how to do so. diff --git a/docs/reference/errors-and-warnings/NU1010.md b/docs/reference/errors-and-warnings/NU1010.md index 4ea823e5a..046d4bdfb 100644 --- a/docs/reference/errors-and-warnings/NU1010.md +++ b/docs/reference/errors-and-warnings/NU1010.md @@ -11,12 +11,27 @@ f1_keywords: # NuGet Error NU1010 -> The PackageReference items PackageId do not have corresponding PackageVersion. +> The following PackageReference items do not define a corresponding PackageVersion item: PackageName. Projects using Central Package Management must declare PackageReference and PackageVersion items with matching names -### Issue +## Issue -The PackageReference PackageId is missing a PackageVersion item. +A project is configured to use NuGet [Central Package Management](../../consume-packages/Central-Package-Management.md) and a `` item is defined but a corresponding `` item with the same name is not defined in the [Directory.Packages.props](../../consume-packages/Central-Package-Management.md#enabling-central-package-management) file: -### Solution +```xml + + + +``` -Add a PackageVersion item for PackageId in the [Directory.Packages.props](../../consume-packages/Central-Package-Management.md). +## Solution + +- Define a `` item that specifies the version in the [Directory.Packages.props](../../consume-packages/Central-Package-Management.md#enabling-central-package-management) file with the same identifier as the `` item: + + ```xml + + + + ``` +- If a `` item is properly defined and this error occurs in Visual Studio, check the Error List window for errors related to loading the project or failed [design time builds](https://github.com/dotnet/project-system/blob/main/docs/design-time-builds.md). +If Visual Studio is not able to successfully load the project or a design time build fails, NuGet may log this error because it does not have the required information to restore. +Resolving these underlying issues should fix this error. diff --git a/docs/reference/errors-and-warnings/NU1011.md b/docs/reference/errors-and-warnings/NU1011.md index 9e966a2e5..c093a2ef8 100644 --- a/docs/reference/errors-and-warnings/NU1011.md +++ b/docs/reference/errors-and-warnings/NU1011.md @@ -11,27 +11,38 @@ f1_keywords: # NuGet Error NU1011 -> Centrally defined floating package versions are not allowed. +> The following PackageVersion items cannot specify a floating version: PackageName. -### Issue +## Issue -By default, `` items cannot contain floating versions. NuGet's central package management (CPM) is considered an enterprise-level feature which provides easier version -management at scale as well as deterministic and secure restores. The use of floating versions introduces the possibility for a bad package to be introduced into your build -after it has been pushed to a feed. This can lead to a situation where you made no changes in your repository but suddenly something is broken and there is no way for you to -get back into a good state without removing the floating version or pushing a newer version of the package which is fixed. Using non-floating versions means that every upgrade -to a package is backed by a commit in your repository making it easy to determine what change caused the break and to revert a commit to get back into a good state. +A project is configured to use NuGet [Central Package Management](../../consume-packages/Central-Package-Management.md) and a `` item is defined which specifies a [floating version](../../concepts/Package-Versioning.md#version-ranges) value for the `Version` attribute: -The [Transitive Pinning](../../consume-packages/Central-Package-Management.md#transitive-pinning) feature is designed to allow you to explicitly override the transitive versions in your graph for more control. Using a floating version as an override could make restores of different projects end up with different versions for the package that is supposed to be pinned, thus going against the promise of using the central version. +```xml + + + +``` +By default, `` items cannot specify floating versions. +NuGet's [Central Package Management](../../consume-packages/Central-Package-Management.md) provides users the ability to manage package versions in a single location as well as deterministic and secure restores. +The use of floating versions introduces the possibility for a bad package to be introduced into your build after it has been pushed to a feed. +This can lead to a situation where you made no changes in your repository but suddenly something is broken due to a problem in a new package and there is no way for you to get back into a good state without removing the floating version or pushing a newer version of the package which is fixed. +Using non-floating versions means that every upgrade to a package is backed by a commit in your repository, making it easy to determine what change caused the break and allows you to revert a commit to get back into a good state. + +Also, when using the [transitive pinning](../../consume-packages/Central-Package-Management.md#transitive-pinning) feature of [Central Package Management](../../consume-packages/Central-Package-Management.md), using a floating version as an override could make restores of different projects end up with different versions for the package that what is supposed to be pinned, thus going against the promise of using the centrally defined version. NuGet recommends you use automation like [Dependabot](https://docs.github.com/code-security/dependabot/working-with-dependabot) to keep package versions up-to-date which provides -a streamlined way of keeping packages updated while integrating into your existing developer workflow of a pull request, automated build validation, and testing all backed by a -commit in your repository. +a streamlined way of updating package versions while integrating into your existing developer workflow of a pull request, automated build validation, and testing all backed by a commit in your repository. +## Solution -### Solution +- It is recommended to change the floating version to a [non floating version range](../../concepts/Package-Versioning.md#version-ranges): +```xml + + + +``` -It is recommended to change the floating version to a [non floating version range](../../concepts/Package-Versioning.md#version-ranges). If that is not possible, you can enable -floating versions with CPM by setting an MSBuild property: +- If that is not possible, or you wish to use floating versions with Central Package Management, you can do so by setting an MSBuild property: ```xml diff --git a/docs/reference/errors-and-warnings/NU1013.md b/docs/reference/errors-and-warnings/NU1013.md new file mode 100644 index 000000000..d86b15dd9 --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1013.md @@ -0,0 +1,38 @@ +--- +title: NuGet Error NU1013 +description: NU1013 error code +author: jeffkl +ms.author: jeffkl +ms.date: 03/24/2025 +ms.topic: reference +f1_keywords: + - "NU1013" +--- + +# NuGet Error NU1013 + +> The following PackageReference items cannot specify a value for VersionOverride: PackageName. Projects using Central Package Management are currently configured to disable this functionality. + +### Issue + +A project is configured to use NuGet [Central Package Management](../../consume-packages/Central-Package-Management.md) and a `` item is defined which specifies a value for the `VersionOverride` attribute but this functionality has been disabled: + +```xml + + false + + + + +``` + +### Solution +- Remove the `VersionOverride` attribute from the `` item: + +```xml + + + +``` + +- You can configure [Central Package Management](../../consume-packages/Central-Package-Management.md) to allow or disallow `VersionOverride` with the MSBuild property `CentralPackageVersionOverrideEnabled`. See [Overriding Package Versions](../../consume-packages/Central-Package-Management.md#overriding-package-versions) for more information. diff --git a/docs/reference/errors-and-warnings/NU1109.md b/docs/reference/errors-and-warnings/NU1109.md index afc35ee5b..c9efb8464 100644 --- a/docs/reference/errors-and-warnings/NU1109.md +++ b/docs/reference/errors-and-warnings/NU1109.md @@ -11,15 +11,37 @@ f1_keywords: # NuGet Error NU1109 -> NU1109: Detected package downgrade: B from 2.0.0 to centrally defined 1.0.0. Update the centrally managed package version to a higher version.
    ->   'Project' -> 'A' 1.0.0 -> 'B' (>= 2.0.0)
    ->   'Project' -> 'B' (>= 1.0.0) +> NU1109: Detected package downgrade: PackageB from 2.0.0 to centrally defined 1.0.0. Update the centrally managed package version to a higher version.
    +>   'Project' -> 'PackageA' 1.0.0 -> 'PackageB' (>= 2.0.0)
    +>   'Project' -> 'PackageB' (>= 1.0.0) -### Issue +## Issue -A dependency package specified a version constraint on a higher version of a package than restore ultimately resolved. That is because of the [direct-dependency-wins](../../concepts/dependency-resolution.md#direct-dependency-wins) rule - when resolving packages, the direct package version in the subgraph will override that of the distant packages with the same ID. +A project is configured to use NuGet [Central Package Management](../../consume-packages/Central-Package-Management.md) and a transitive package dependency is pinned to a version lower than is specified by the dependency package. +When resolving packages, NuGet respects the [direct-dependency-wins](../../concepts/dependency-resolution.md#direct-dependency-wins) rule and the pinned package version overrides the version specified by the dependency package which results in a lower version of the package being resolved which could result in issues at runtime. -### Solution +```xml + + true + + + + + +``` -Update the PackageVersion of B to to the higher version of the package. -In the example above, you would change the package reference to `B` 2.0.0. +## Solution +- Update the `PackageVersion` of `PackageB` to the higher version of the package. + +```xml + + + +``` + +- Disable Central Package Management transitive pinning to allow the package version specified by the dependency package to be used. +```xml + + false + +``` diff --git a/docs/reference/errors-and-warnings/NU1507.md b/docs/reference/errors-and-warnings/NU1507.md index 032ac4119..ba2ff2de0 100644 --- a/docs/reference/errors-and-warnings/NU1507.md +++ b/docs/reference/errors-and-warnings/NU1507.md @@ -11,22 +11,21 @@ f1_keywords: # NuGet Warning NU1507 -## Scenario 1 +> There are 2 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping or specify a single package source. The following sources are defined: https://api.nuget.org/v3/index.json, https://contoso.myget.org/F/development/. -> There are 2 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. The following sources are defined: https://api.nuget.org/v3/index.json, https://contoso.myget.org/F/development/. +## Issue -### Issue +A project is configured to use NuGet [Central Package Management](../../consume-packages/Central-Package-Management.md) and is not configured to use [Package Source Mapping](../../consume-packages/Package-Source-Mapping.md). +It is highly recommended to enable [Package Source Mapping](../../consume-packages/Package-Source-Mapping.md) because it safeguards your software supply chain when your project is consuming packages from multiple package sources by allowing you specify the source for each package. -When using NuGet's central package management (CPM), it is highly recommended that you also use Package Source Mapping. This can help safeguard your software supply chain is crucial if you use a mix of public and private package sources. Visit https://aka.ms/nuget-package-source-mapping to learn more about how package source mapping works. +## Solution -### Solution - -Onboard to Package Source Mapping if you have more than one NuGet feed configured when using central package management. You can visit https://aka.ms/nuget-package-source-mapping for more details. - -If you are unable to onboard to Package Source Mapping but want to use central package management, can suppress the warning: +- Onboard to [Package Source Mapping](../../consume-packages/Package-Source-Mapping.md) if you have more than one HTTP-based NuGet package source configured when using Central Package Management. +- If you are unable to onboard to [Package Source Mapping](../../consume-packages/Package-Source-Mapping.md) but want to use Central Package Management, you can suppress the warning: ```xml + $(NoWarn);NU1507 ``` From 8ed4caa985f62eecbb373ff90388b80507df0a18 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Tue, 13 May 2025 07:26:35 +0930 Subject: [PATCH 929/988] Add 6.14 release notes (#3427) --- docs/TOC.md | 1 + docs/release-notes/NuGet-6.13.md | 10 ++- docs/release-notes/NuGet-6.14.md | 127 ++++++++++++++++++++++++++++--- docs/release-notes/NuGet-6.15.md | 28 +++++++ 4 files changed, 151 insertions(+), 15 deletions(-) create mode 100644 docs/release-notes/NuGet-6.15.md diff --git a/docs/TOC.md b/docs/TOC.md index 17d369051..06e65abde 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -347,6 +347,7 @@ ### [Known Issues](release-notes/known-issues.md) ### NuGet 6.x +#### [NuGet 6.14](release-notes/NuGet-6.14.md) #### [NuGet 6.13](release-notes/NuGet-6.13.md) #### [NuGet 6.12](release-notes/NuGet-6.12.md) #### [NuGet 6.11](release-notes/NuGet-6.11.md) diff --git a/docs/release-notes/NuGet-6.13.md b/docs/release-notes/NuGet-6.13.md index dbf8a69b2..9cbe7007a 100644 --- a/docs/release-notes/NuGet-6.13.md +++ b/docs/release-notes/NuGet-6.13.md @@ -13,8 +13,8 @@ NuGet distribution vehicles: | NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | |:---|:---|:---| -| [**6.13**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.13](https://visualstudio.microsoft.com/downloads/) | [9.0.200](https://dotnet.microsoft.com/download/dotnet/9.0)1 | -| [**6.13.1**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.13.1](https://visualstudio.microsoft.com/downloads/) | [9.0.201](https://dotnet.microsoft.com/download/dotnet/9.0)1 | +| [**6.13.0**](https://nuget.org/downloads) | N/A | [9.0.200](https://dotnet.microsoft.com/download/dotnet/9.0)1 | +| [**6.13.1**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.13.0](https://visualstudio.microsoft.com/downloads/) | [9.0.201](https://dotnet.microsoft.com/download/dotnet/9.0)1 | | [**6.13.2**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.13.2](https://visualstudio.microsoft.com/downloads/) | [9.0.203](https://dotnet.microsoft.com/download/dotnet/9.0)1 | 1 Installed with Visual Studio 2022 with any .NET workload @@ -23,12 +23,16 @@ NuGet distribution vehicles: * New restore dependency resolver fails when resolving identical child dependencies - [#14025](https://github.com/NuGet/Home/issues/14025) +[List of commits in this release](https://github.com/NuGet/NuGet.Client/compare/6.13.1.3...6.13.2.1) + ## Summary: What's New in 6.13.1 NuGet 6.13.1 is available in Visual Studio 17.13 and .NET 9.0.201 SDK. * Support for new slnx solution format in dotnet nuget why and dotnet list package - [#14034](https://github.com/NuGet/Home/issues/14034) +[List of commits in this release](https://github.com/NuGet/NuGet.Client/compare/6.13.0.113...6.13.1.3) + ## Summary: What's New in 6.13.0 NuGet 6.13.0 is available in the .NET 9.0.200 SDK. @@ -101,7 +105,7 @@ NuGet 6.13.0 is available in the .NET 9.0.200 SDK. * Nuget pack doesn't support blank <version> in .nuspec even though version is passed on the command line - [#7987](https://github.com/NuGet/Home/issues/7987) -[List of commits in this release](https://github.com/NuGet/NuGet.Client/compare/6.13.1.3...6.12.3.1) +[List of commits in this release](https://github.com/NuGet/NuGet.Client/compare/6.12.3.1...6.13.1.3) ### Community contributions diff --git a/docs/release-notes/NuGet-6.14.md b/docs/release-notes/NuGet-6.14.md index 2b950855d..0a4d59dd6 100644 --- a/docs/release-notes/NuGet-6.14.md +++ b/docs/release-notes/NuGet-6.14.md @@ -2,27 +2,130 @@ title: NuGet 6.14 Release Notes description: Release notes for NuGet 6.14 including new features, bug fixes, and DCRs. author: zivkan +ms.date: 5/6/2025 ms.topic: conceptual --- -# NuGet 6.14 Release Notes - +# NuGet 6.14 Release Notes NuGet distribution vehicles: | NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | |:---|:---|:---| -| [**6.14**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.14](https://visualstudio.microsoft.com/downloads/) | [9.0.2xx](https://dotnet.microsoft.com/download/dotnet/9.0)1 | +| [**6.14.0**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.14.0](https://visualstudio.microsoft.com/downloads/) | [9.0.300](https://dotnet.microsoft.com/download/dotnet/9.0)1 | 1 Installed with Visual Studio 2022 with any .NET workload -## Not yet released +## Summary: What's New in 6.14.0 + +* (preview feature) NuGet onboards to Unified Settings and create General page - [#14040](https://github.com/NuGet/Home/issues/14040) + +* Support for new `slnx` solution format - [#14034](https://github.com/NuGet/Home/issues/14034) + +* dotnet-nuget-push now supports --config-file - [#4879](https://github.com/NuGet/Home/issues/4879) + +* `dotnet list package --vulnerable` should support auditSources - [#13767](https://github.com/NuGet/Home/issues/13767) + +* [DCR]: Focus shifts from Output window to Error List after every package operation, even with no error or warnings - [#11728](https://github.com/NuGet/Home/issues/11728) + +### Issues fixed in this release + +* Event tracing in new dependency resolver - [#14134](https://github.com/NuGet/Home/issues/14134) + +* Support for new slnx format in static graph-based restore - [#14086](https://github.com/NuGet/Home/issues/14086) + +* Add Net90 to FrameworkConstants.CommonFrameworks - [#14067](https://github.com/NuGet/Home/issues/14067) + +* Don't show usage help when dotnet cli command throws unhandled exception - [#14200](https://github.com/NuGet/Home/issues/14200) + +* Multiple callers check for NuGet entries before calling Error List `BringToFrontIfSettingsPermitAsync` - [#14163](https://github.com/NuGet/Home/issues/14163) + +* NuGetAudit should report transitive packages with vulnerabilities when targeting .NET 10 or higher - [#14161](https://github.com/NuGet/Home/issues/14161) + +* Update README preview to render with same font size as Visual Studio - [#14112](https://github.com/NuGet/Home/issues/14112) + +* NU5100 (AssemblyOutsideLibWarning): Why build is allowed but buildTransitive is not? - [#14080](https://github.com/NuGet/Home/issues/14080) + +* Can't copy the text from NuGet package manager gold bar - [#14074](https://github.com/NuGet/Home/issues/14074) + +* NuGet 6.13.2.1 does no longer support prerelease versions - [#14219](https://github.com/NuGet/Home/issues/14219) + +* Badly specified framework leads to an uninformative error - [#14216](https://github.com/NuGet/Home/issues/14216) + +* Restore should fail more quickly when using http sources - [#14210](https://github.com/NuGet/Home/issues/14210) + +* README spins indefinitely if the Readme URI does not result in a readme - [#14201](https://github.com/NuGet/Home/issues/14201) + +* Error in Visual Studio if Path contains directory you do not have permission to view - [#14192](https://github.com/NuGet/Home/issues/14192) + +* list package doesn't work with a solution argument in 9.0.201 - [#14177](https://github.com/NuGet/Home/issues/14177) + +* Focus shifts from Output window to Error List after Clear NuGet Locals command - [#14157](https://github.com/NuGet/Home/issues/14157) + +* NuGet adding a bunch of generally unuseful information to VS activity log - [#14153](https://github.com/NuGet/Home/issues/14153) + +* NuGet authentication plug-in discovery fails when environment variable has trailing semicolon - [#14144](https://github.com/NuGet/Home/issues/14144) + +* nuget.exe fails to find Microsoft.VisualStudio.SolutionPersistence.dll - [#14136](https://github.com/NuGet/Home/issues/14136) + +* NuGet restore writes dgspec too frequently - [#14135](https://github.com/NuGet/Home/issues/14135) + +* dotnet list package does not display resolved versions when AuditSources are used - [#14116](https://github.com/NuGet/Home/issues/14116) + +* The REAMDE tab always shows “Loading README” for the latest version of the package in the detail panel of PM UI - [#14098](https://github.com/NuGet/Home/issues/14098) + +* [Bug Bash] The second time clicking ‘Installed’ tab for a remote source which doesn’t allow for downloading a README shows the README tab - [#14097](https://github.com/NuGet/Home/issues/14097) + +* HttpFileSystemBasedFindPackageByIdResource.ConsumeFlatContainerIndexAsync allocates significantly more than necessary - [#14095](https://github.com/NuGet/Home/issues/14095) + +* UnresolvedMessages.GetMessageAsync is allocating more heavily than necessary - [#14094](https://github.com/NuGet/Home/issues/14094) + +* New dependency resolver does not properly detect a cycle with a transitive dependency with the same name as the root project - [#14052](https://github.com/NuGet/Home/issues/14052) + +* dotnet nuget why does not give an error if only a project path was specified - [#14030](https://github.com/NuGet/Home/issues/14030) + +* Cleanup ServiceProviderExtensions, remove GetFreeThreadedServiceAsync - [#14007](https://github.com/NuGet/Home/issues/14007) + +* Value cannot be null. Parameter name: versionRange when opening the PM UI - [#13933](https://github.com/NuGet/Home/issues/13933) + +* Reenable new algorithm resolution with lock files with .NET 10 SDK - [#13800](https://github.com/NuGet/Home/issues/13800) + +* Report the path when unable to read corrupted .nupkg.metadata - [#13763](https://github.com/NuGet/Home/issues/13763) + +* [Bug Bash] The vulnerability InfoBar disappears in the Solution Explorer window after restoring packages for .NET SDK based project - [#13318](https://github.com/NuGet/Home/issues/13318) + +* Use System.Text.Json to read the cache file in CacheFileFormat - [#13059](https://github.com/NuGet/Home/issues/13059) + +* [Bug]: dotnet nuget push symbols not working as expected - [#11871](https://github.com/NuGet/Home/issues/11871) + +* nuget.exe restore fails when MSBuildPath ends with a slash - [#8634](https://github.com/NuGet/Home/issues/8634) + +* nuget.exe -msbuildpath c:\foo\msbuild.exe gives bad error experience - [#4195](https://github.com/NuGet/Home/issues/4195) + +* Address comments in `Implement Support for NuGet Authentication Plugins as .NET Tools` PR - [#13975](https://github.com/NuGet/Home/issues/13975) + +[List of commits in this release](https://github.com/NuGet/NuGet.Client/compare/6.13.2.1...6.14.0.116) + +### Community contributions + +Thank you to all the contributors who helped make this NuGet release awesome! -This version of NuGet is in preview and these release notes will be updated when it is released. +* [ViktorHofer](https://github.com/NuGet/NuGet.Client/pull/6309) + * [6309](https://github.com/NuGet/NuGet.Client/pull/6309) Define MicrosoftVisualStudioSolutionPersistenceVersion property + * [6292](https://github.com/NuGet/NuGet.Client/pull/6292) Upgrade ProtectedData version when building source-only + * [6270](https://github.com/NuGet/NuGet.Client/pull/6270) Update dependencies and remove unused runtime dependencies + * [6261](https://github.com/NuGet/NuGet.Client/pull/6261) React to NuGet package pruning warnings +* [jkoritzinsky](https://github.com/NuGet/NuGet.Client/pull/6306) + * [6306](https://github.com/NuGet/NuGet.Client/pull/6306) Don't publish RID-agnostic nuget packages when we only want RID-specific artifacts + * [6233](https://github.com/NuGet/NuGet.Client/pull/6233) Use the documented Artifact extension point to add artifacts +* [ToddGrun](https://github.com/NuGet/NuGet.Client/pull/6294) + * [6294](https://github.com/NuGet/NuGet.Client/pull/6294) Reduce activity log output from VsSolutionRestoreService.NominateProjectAsync + * [6264](https://github.com/NuGet/NuGet.Client/pull/6264) Reduce allocations under UnresolvedMessages.GetMessageAsync +* [AlexDelepine](https://github.com/NuGet/NuGet.Client/pull/6338) + * [6338](https://github.com/NuGet/NuGet.Client/pull/6338) Update ngen Priorities for VS +* [mmitche](https://github.com/NuGet/NuGet.Client/pull/6305) + * [6305](https://github.com/NuGet/NuGet.Client/pull/6305) Set build number to arcade build revision for VMR builds +* [premun](https://github.com/NuGet/NuGet.Client/pull/6251) + * [6251](https://github.com/NuGet/NuGet.Client/pull/6251) Remove extra spaces in Publishing.props +* [baronfel](https://github.com/NuGet/NuGet.Client/pull/6219) + * [6219](https://github.com/NuGet/NuGet.Client/pull/6219) Use new serializer library to parse solution files diff --git a/docs/release-notes/NuGet-6.15.md b/docs/release-notes/NuGet-6.15.md new file mode 100644 index 000000000..3db3e6311 --- /dev/null +++ b/docs/release-notes/NuGet-6.15.md @@ -0,0 +1,28 @@ +--- +title: NuGet 6.15 Release Notes +description: Release notes for NuGet 6.15 including new features, bug fixes, and DCRs. +author: zivkan +ms.topic: conceptual +--- +# NuGet 6.15 Release Notes + + + +NuGet distribution vehicles: + +| NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | +|:---|:---|:---| +| [**6.15**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.15](https://visualstudio.microsoft.com/downloads/) | [9.0.4xx](https://dotnet.microsoft.com/download/dotnet/9.0)1 | + +1 Installed with Visual Studio 2022 with any .NET workload + +## Not yet released + +This version of NuGet is in preview and these release notes will be updated when it is released. From 99a9ba80dd8281b889af94b9ba24d040f571b3e1 Mon Sep 17 00:00:00 2001 From: Maria Ghiondea <11394867+mariaghiondea@users.noreply.github.com> Date: Tue, 13 May 2025 10:44:01 -0700 Subject: [PATCH 930/988] Update nuget-org-faq.yml (#3430) --- docs/nuget-org/nuget-org-faq.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/docs/nuget-org/nuget-org-faq.yml b/docs/nuget-org/nuget-org-faq.yml index 0afbbb29e..3d6b1eb18 100644 --- a/docs/nuget-org/nuget-org-faq.yml +++ b/docs/nuget-org/nuget-org-faq.yml @@ -90,12 +90,11 @@ sections: > NuGet.org recommends Alpine Linux users to upgrade to Alpine Linux 3.18.0 or newer. These versions support TCP fallback in the DNS resolver. If you use older versions of Alpine Linux that only support DNS over UDP, you may encounter DNS failures when accessing the [V3 API](https://learn.microsoft.com/nuget/nuget-org/overview-nuget-org#api-endpoint-for-nugetorg). If that version of NuGet client continues to fail, [contact support](https://www.nuget.org/policies/Contact) and provide additional connection troubleshooting information including: - + - !!! Your geographical area - The package sources you're using - The version of NuGet client you're using - A restore log with detailed verbosity - MTR or a Fiddler traces (see below) - - Your geographical area - Whether your machine is behind a proxy or firewall? - Is your machine located on a cloud providers' data center (Azure, AWS etc)? If yes, please provide the name of the provider and the region. From 5e37700e67e6c199c3daa814a7cd942895a2a50e Mon Sep 17 00:00:00 2001 From: Borislav Ivanov Date: Thu, 15 May 2025 20:16:05 +0300 Subject: [PATCH 931/988] Fix typo (#3431) Downgrades are actually *not* allowed when transitive pinning a package --- docs/consume-packages/Central-Package-Management.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Central-Package-Management.md b/docs/consume-packages/Central-Package-Management.md index b932cafd5..f01877c7c 100644 --- a/docs/consume-packages/Central-Package-Management.md +++ b/docs/consume-packages/Central-Package-Management.md @@ -127,7 +127,7 @@ For an idea of how central package management may look like, refer to our [sampl You can automatically override a transitive package version even without an explicit top-level `` by opting into a feature known as transitive pinning. This promotes a transitive dependency to a top-level dependency implicitly on your behalf when necessary. -Note that downgrades are allowed when transitive pinning a package. If you attempt to pin a package to a lower version than the one requested by your dependencies, restore will raise a [NU1109](../reference/errors-and-warnings/NU1109.md) error. +Note that downgrades are not allowed when transitive pinning a package. If you attempt to pin a package to a lower version than the one requested by your dependencies, restore will raise a [NU1109](../reference/errors-and-warnings/NU1109.md) error. You can enable this feature by setting the MSBuild property `CentralPackageTransitivePinningEnabled` to `true` in a project or in a `Directory.Packages.props` or `Directory.Build.props` import file: From b4cf6bfeeae473fbc6f66b35d561297ad0e24a75 Mon Sep 17 00:00:00 2001 From: Varorbc Date: Thu, 29 May 2025 09:18:40 +0800 Subject: [PATCH 932/988] Update NU1701.md (#3434) --- docs/reference/errors-and-warnings/NU1701.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/reference/errors-and-warnings/NU1701.md b/docs/reference/errors-and-warnings/NU1701.md index 077330f44..0fd319446 100644 --- a/docs/reference/errors-and-warnings/NU1701.md +++ b/docs/reference/errors-and-warnings/NU1701.md @@ -15,9 +15,9 @@ f1_keywords: > Package 'packageId' was restored using 'TargetFrameworkA' instead the project target framework 'TargetFrameworkB'. This package may not be fully compatible with your project. ### Issue -`PackageTargetFallback` / `AssetTargetFallback` was used to select assets from a package. The warning let users know that the assets may not be 100% compatible. +`AssetTargetFallback` was used to select assets from a package. The warning let users know that the assets may not be 100% compatible. ### Solution Change the project's target framework to one that the package supports. -[!INCLUDE [nugetsolver-tool](../../includes/nugetsolver-tool.md)] \ No newline at end of file +[!INCLUDE [nugetsolver-tool](../../includes/nugetsolver-tool.md)] From 53dfc21de9c3c70adfd54686fe00ff864ed00c18 Mon Sep 17 00:00:00 2001 From: Kelly Nielsen Date: Mon, 2 Jun 2025 17:14:02 -0600 Subject: [PATCH 933/988] Fixing hosting-packages description (#3436) Fixing the typo in the description for the hosting-packages page --- docs/hosting-packages/Overview.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/hosting-packages/Overview.md b/docs/hosting-packages/Overview.md index a19316165..a1082014c 100644 --- a/docs/hosting-packages/Overview.md +++ b/docs/hosting-packages/Overview.md @@ -1,6 +1,6 @@ --- title: Overview of Hosting Your Own NuGet Feeds -description: An overview of opens for hosting your own NuGet package feeds or galleries either locally or remotely. +description: An overview of options for hosting your own NuGet package feeds or galleries either locally or remotely. author: JonDouglas ms.author: jodou ms.date: 3/2/2022 From 99f440dfbffeb4088340b658a35189909e0de829 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Mon, 2 Jun 2025 16:14:14 -0700 Subject: [PATCH 934/988] Add a single nuget config call-out in the best practices doc (#3435) --- docs/concepts/Security-Best-Practices.md | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index b8e5377a1..771661ca9 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -154,6 +154,27 @@ Being able to have information about your dependencies such as their license, tr For more information about Dependabot alerts & security updates, [see the following documentation](https://docs.github.com/en/github/managing-security-vulnerabilities/about-alerts-for-vulnerable-dependencies). +## NuGet Configuration + +**📦 Package Consumer** + +Add a `nuget.config` file in the root of your project repository. This is considered a best practice as it promotes repeatability and ensures that different users have the same NuGet configuration. +We recommend adding `clear` elements to ensure no user or machine specific configuration is applied. [Read more about how settings are applied](../consume-packages/configuring-nuget-behavior.md#how-settings-are-applied). + +For example: + +```xml + + + + + + + + + +``` + ### NuGet feeds **📦 Package Consumer** From 763eb62a5f572c28432effd22efb0daee8238ed6 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Tue, 10 Jun 2025 08:42:19 +0930 Subject: [PATCH 935/988] Recommend against 3rd party servers using nuget.org resources directly (#3438) --- docs/api/implementation-guide.md | 12 +++++++++--- docs/api/service-index.md | 4 ++++ docs/api/vulnerability-info.md | 3 +++ docs/hosting-packages/Overview.md | 6 +++++- 4 files changed, 21 insertions(+), 4 deletions(-) diff --git a/docs/api/implementation-guide.md b/docs/api/implementation-guide.md index 8168aa909..136e545ee 100644 --- a/docs/api/implementation-guide.md +++ b/docs/api/implementation-guide.md @@ -106,9 +106,15 @@ Nuget.org provides vulnerability data for all GitHub reviewed advisories from th If your package repository is hosting first-party packages, and you would like to provide vulnerability information to customers using your own feed, but don't yet have any disclosed package vulnerabilities, you should provide a [vulnerability index](./vulnerability-info.md#vulnerability-index) with one or more [vulnerability pages](./vulnerability-info.md#vulnerability-page) whose contents are an empty JSON array (`[]`). -If your package repository is intended to be used by apps as the default repository (instead of nuget.org), you can use nuget.org's vulnerability data. -One option is to use nuget.org's vulnerability index URL in your service index. -Another option is to periodically check nuget.org's `VulnerabilityInfo` index, and download any changed pages to mirror locally. +#### Reusing nuget.org's vulnerability data + +NuGet does not require that resources in the [service index](./service-index.md), or [the vulnerability index](./vulnerability-info.md#vulnerability-index), must be on the same server as the service index itself. +However, there are several reasons why some companies choose to block nuget.org at the firewall, or have on-prem feeds on a disconnected network. +To avoid connectivity issues, we recommend serving vulnerability data from your own web app, so that NuGet clients only make HTTP connections to the host the feed is installed on. + +✔️ DO cache or proxy the vulnerability pages in your own web app + +❌ DO NOT advertise api.nuget.org in your service index or vulnerability index without a configuration to turn this off. ## `packageTypes` search query diff --git a/docs/api/service-index.md b/docs/api/service-index.md index faacd9351..369bdbc16 100644 --- a/docs/api/service-index.md +++ b/docs/api/service-index.md @@ -65,6 +65,10 @@ There is no requirement that each resource has a unique `@id` or `@type`. It is determine which resource to prefer over another. One possible implementation is that resources of the same or compatible `@type` can be used in a round-robin fashion in case of connection failure or server error. +A resource can use a different host or domain than the service index, but this may cause issues in environments with strict network rules. +In particular, if your service index adds resources that point directly to nuget.org (rather than proxying or caching through your own feed), your feed will not work where access to nuget.org is blocked. +If your feed is going to delegate particular resources to nuget.org, we recommend adding a configuration so that when your feed is deployed, the direct nuget.org reference can be removed from the service index. + ### Sample request ``` diff --git a/docs/api/vulnerability-info.md b/docs/api/vulnerability-info.md index c76ea9d43..abddc2eaf 100644 --- a/docs/api/vulnerability-info.md +++ b/docs/api/vulnerability-info.md @@ -33,6 +33,9 @@ The data file schema does not allow for modification or redaction of known vulne Therefore if a server's vulnerability data source (for example the [GitHub Advisories Database](https://github.com/advisories)) modifies an existing advisory, the NuGet server must modify the page that the vulnerability information was previously reported. One way to achieve this with the suggested partition scheme is to treat all vulnerability modifications and deletions as a trigger to regenerate the complete `base.json` file, and empty `updates.json`. +If you intend to use nuget.org's vulnerability data in your own NuGet server implementation, you should take into consideration developers who do not have direct access to nuget.org. +[See our implementation guide for more details](./implementation-guide.md#reusing-nugetorgs-vulnerability-data). + ## Versioning The following `@type` values are used: diff --git a/docs/hosting-packages/Overview.md b/docs/hosting-packages/Overview.md index a1082014c..a7d8f686b 100644 --- a/docs/hosting-packages/Overview.md +++ b/docs/hosting-packages/Overview.md @@ -33,7 +33,7 @@ There are also several other NuGet hosting products such as [Azure Artifacts](ht - [JetBrains Space](https://www.jetbrains.com/help/space/nuget-feed.html) - [LiGet](https://github.com/ai-traders/liget), an open-source implementation of NuGet V2 server that runs on kestrel in docker - [MyGet](https://myget.org) -- [Nexus Repository OSS](https://www.sonatype.com/nexus-repository-oss) from Sonatype. +- [Nexus Repository OSS](https://www.sonatype.com/products/sonatype-nexus-oss-download) from Sonatype. - [NuGet Server (Open Source)](https://github.com/svenkle/nuget-server), an open-source implementation similar to Inedo's NuGet Server - [NuGet Server](http://nugetserver.net/), a community project from Inedo - [ProGet](https://inedo.com/proget) from Inedo @@ -42,3 +42,7 @@ There are also several other NuGet hosting products such as [Azure Artifacts](ht - [RepoFlow](https://www.repoflow.io), a simple and easy-to-use package management platform. Regardless of how packages are hosted, you access them by adding them to the list of available sources in `NuGet.Config`. This can be done in Visual Studio as described in [Package Sources](../consume-packages/install-use-packages-visual-studio.md#package-sources), or from the command line using [`nuget sources`](../reference/cli-reference/cli-ref-sources.md). The path to a source can be a local folder pathname, a network name, or a URL. + +[NuGet's V3 protocol](../api/overview.md) uses a [service index](../api//service-index.md) that contains a list of URLs used by various NuGet operations. +All of the URLs in the service index must be accessible by developer and CI machines to avoid unexpected errors. +When installing any NuGet feed, it is important to validate that none of the service index resources are blocked by a company firewall, or if your network is disconnected from the Internet, that all service index resources are available on your private network. From 6d3ed8f075a4ae24b51d8e1b6cb2aec3f73f5783 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Tue, 10 Jun 2025 08:42:40 +0930 Subject: [PATCH 936/988] Add NU1015 docs (#3437) --- docs/TOC.md | 1 + docs/reference/Errors-and-Warnings.md | 2 +- docs/reference/errors-and-warnings/NU1015.md | 34 ++++++++++++++++++++ 3 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 docs/reference/errors-and-warnings/NU1015.md diff --git a/docs/TOC.md b/docs/TOC.md index 06e65abde..461d98e2f 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -153,6 +153,7 @@ ### [NU1011](reference/errors-and-warnings/NU1011.md) ### [NU1012](reference/errors-and-warnings/NU1012.md) ### [NU1014](reference/errors-and-warnings/NU1014.md) +### [NU1015](reference/errors-and-warnings/NU1015.md) ### [NU1100](reference/errors-and-warnings/NU1100.md) ### [NU1101](reference/errors-and-warnings/NU1101.md) ### [NU1102](reference/errors-and-warnings/NU1102.md) diff --git a/docs/reference/Errors-and-Warnings.md b/docs/reference/Errors-and-Warnings.md index 65977a512..a7a49a761 100644 --- a/docs/reference/Errors-and-Warnings.md +++ b/docs/reference/Errors-and-Warnings.md @@ -27,7 +27,7 @@ NuGet supports the following configuration properties. | Group | Error Numbers | | --- | --- | -| Invalid input errors | [NU1001](./errors-and-warnings/NU1001.md), [NU1002](./errors-and-warnings/NU1002.md), [NU1003](./errors-and-warnings/NU1003.md), [NU1004](./errors-and-warnings/NU1004.md), [NU1005](./errors-and-warnings/NU1005.md), [NU1006](./errors-and-warnings/NU1006.md), [NU1007](./errors-and-warnings/NU1007.md), [NU1008](./errors-and-warnings/NU1008.md), [NU1009](./errors-and-warnings/NU1009.md), [NU1010](./errors-and-warnings/NU1010.md), [NU1011](./errors-and-warnings/NU1011.md), [NU1012](./errors-and-warnings/NU1012.md), | +| Invalid input errors | [NU1001](./errors-and-warnings/NU1001.md), [NU1002](./errors-and-warnings/NU1002.md), [NU1003](./errors-and-warnings/NU1003.md), [NU1004](./errors-and-warnings/NU1004.md), [NU1005](./errors-and-warnings/NU1005.md), [NU1006](./errors-and-warnings/NU1006.md), [NU1007](./errors-and-warnings/NU1007.md), [NU1008](./errors-and-warnings/NU1008.md), [NU1009](./errors-and-warnings/NU1009.md), [NU1010](./errors-and-warnings/NU1010.md), [NU1011](./errors-and-warnings/NU1011.md), [NU1012](./errors-and-warnings/NU1012.md), [NU1013](./errors-and-warnings/NU1013.md), [NU1014](./errors-and-warnings/NU1014.md), [NU1015](./errors-and-warnings/NU1015.md) | | Missing package and project errors | [NU1100](./errors-and-warnings/NU1100.md), [NU1101](./errors-and-warnings/NU1101.md), [NU1102](./errors-and-warnings/NU1102.md), [NU1103](./errors-and-warnings/NU1103.md), [NU1104](./errors-and-warnings/NU1104.md), [NU1105](./errors-and-warnings/NU1105.md), [NU1106](./errors-and-warnings/NU1106.md), [NU1107](./errors-and-warnings/NU1107.md), [NU1108](./errors-and-warnings/NU1108.md), [NU1109](./errors-and-warnings/NU1109.md) | | Package source mapping errors | [NU1110](./errors-and-warnings/NU1110.md) | | Compatibility errors | [NU1201](./errors-and-warnings/NU1201.md), [NU1202](./errors-and-warnings/NU1202.md), [NU1203](./errors-and-warnings/NU1203.md), [NU1204](./errors-and-warnings/NU1204.md), [NU1401](./errors-and-warnings/NU1401.md), [NU1402](./errors-and-warnings/NU1402.md), [NU1403](./errors-and-warnings/NU1403.md) | diff --git a/docs/reference/errors-and-warnings/NU1015.md b/docs/reference/errors-and-warnings/NU1015.md new file mode 100644 index 000000000..e109d8636 --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1015.md @@ -0,0 +1,34 @@ +--- +title: NuGet Error NU1015 +description: NU1015 error code +author: zivkan +ms.author: zivkan +ms.date: 06/04/2025 +ms.topic: reference +f1_keywords: + - "NU1015" +--- + +# NuGet Error NU1015 + +## Scenario + +> The following PackageReference item(s) do not have a version specified: Contoso.Utilities + +### Issue + +Your project file, or a file it imports (for example `Directory.Build.props`) has defined a `PackageReference` without a version. + +Projects using [Central Package Management (CPM)](../../consume-packages/Central-Package-Management.md) do not define a version on the PackageReference item, so this error could happen if a project has CPM disabled by accident, or if a project or `PackageReference` using CPM is copied into another solution that is not using CPM. + +### Solution + +- Add a version to the package reference + +If you edit your project, a package reference will generally look similar to ``, although [MSBuild allows multiple syntaxes to define item metadata](/visualstudio/msbuild/msbuild-items). +Add the `Version="1.2.3"` item metadata as defined. + +- Check Central Package Management configuration + +This NU1015 error only happens when CPM is disabled. +If Central Package Management (CPM) is intended to be enabled, check your configuration files to investigate why it is disabled. From d3a92e3eb605f77d07976e5eaf444ca6031dc3e8 Mon Sep 17 00:00:00 2001 From: Stephan Nielsen Date: Thu, 19 Jun 2025 18:21:15 +0200 Subject: [PATCH 937/988] Minor grammar fix (#3441) --- docs/concepts/Package-Versioning.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Package-Versioning.md b/docs/concepts/Package-Versioning.md index 65cf31c3f..eb29a1da6 100644 --- a/docs/concepts/Package-Versioning.md +++ b/docs/concepts/Package-Versioning.md @@ -58,7 +58,7 @@ That said, package developers generally follow recognized naming conventions: When ordering versions by precedence, NuGet follows the SemVer standard and chooses a version without a suffix first, then applies precedence to pre-release versions in reverse alphabetical order and treats dot notation numbers with numerical order. > [!Note] -> Prerelease numbers with dot notation, as in *1.0.1-build.23*, are considered are part of the [SemVer 2.0.0](https://semver.org/spec/v2.0.0.html) standard, and as such are [only supported with NuGet 4.3.0+](#semantic-versioning-200). +> Prerelease numbers with dot notation, as in *1.0.1-build.23*, are considered part of the [SemVer 2.0.0](https://semver.org/spec/v2.0.0.html) standard, and as such are [only supported with NuGet 4.3.0+](#semantic-versioning-200). ### [SemVer 2.0 sorting](#tab/semver20sort) From 8858873031d714d16586207d356fd6ae4042afe4 Mon Sep 17 00:00:00 2001 From: who-dat-sew Date: Thu, 3 Jul 2025 13:07:48 +0200 Subject: [PATCH 938/988] Remove duplicate word (#3423) Remove duplicate word in native-files-in-net-packages.md --- docs/create-packages/native-files-in-net-packages.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/create-packages/native-files-in-net-packages.md b/docs/create-packages/native-files-in-net-packages.md index db39ba523..8a690cb55 100644 --- a/docs/create-packages/native-files-in-net-packages.md +++ b/docs/create-packages/native-files-in-net-packages.md @@ -162,7 +162,7 @@ Finally, the managed library, that uses P/Invoke to call into the native library ### SDK style projects targeting .NET Framework When the .NET SDK builds a project targeting the .NET Framework, if one of `RuntimeIdentifier` or `PlatformTarget` is set, the .NET SDK will set the other property to an appropriate value, and package `runtimes/` contents (that [follow NuGet's conventions](#understanding-nuget-package-asset-selection)) will be copied to the output directory. -If the the project does not set either `RuntimeIdentifier` or `PlatformTarget`, but any package contains RID specific contents, then the .NET SDK will set `PlatformTarget` to `x86`. +If the project does not set either `RuntimeIdentifier` or `PlatformTarget`, but any package contains RID specific contents, then the .NET SDK will set `PlatformTarget` to `x86`. Therefore, SDK style projects targeting .NET Framework will only use `AnyCPU` by default when none of the packages contain RID specific content. `dotnet build -r `, or the `publish` equivalent (for example, `dotnet publish -r win-arm64`) can be used to explicitly build or publish for a specific platform. From 55f1b2df2ae8c4412470be8bd80a4bcac384174b Mon Sep 17 00:00:00 2001 From: riQQ Date: Fri, 18 Jul 2025 18:56:30 +0200 Subject: [PATCH 939/988] Fix typo in Package-References-in-Project-Files.md (#3445) --- docs/consume-packages/Package-References-in-Project-Files.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Package-References-in-Project-Files.md b/docs/consume-packages/Package-References-in-Project-Files.md index d8b354b89..4f9122043 100644 --- a/docs/consume-packages/Package-References-in-Project-Files.md +++ b/docs/consume-packages/Package-References-in-Project-Files.md @@ -143,7 +143,7 @@ Note that because `build` is not included with `PrivateAssets`, targets and prop ## Adding a PackageReference condition -You can use a condition to control whether a package is included, where conditions can use any MSBuild variable or a variable defined in the targets or props file. However, at presently, only the `TargetFramework` variable is supported. +You can use a condition to control whether a package is included, where conditions can use any MSBuild variable or a variable defined in the targets or props file. However, at present, only the `TargetFramework` variable is supported. For example, say you're targeting `netstandard1.4` as well as `net452` but have a dependency that is applicable only for `net452`. In this case you don't want a `netstandard1.4` project that's consuming your package to add that unnecessary dependency. To prevent this, you specify a condition on the `PackageReference` as follows: From 7fe2c433399a16fa307f99b9891a6abf35effdc1 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Mon, 21 Jul 2025 11:37:09 -0700 Subject: [PATCH 940/988] Update NU1901-1904 (#3446) --- docs/reference/errors-and-warnings/NU1901-NU1904.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/reference/errors-and-warnings/NU1901-NU1904.md b/docs/reference/errors-and-warnings/NU1901-NU1904.md index 46f6c3e29..f55154558 100644 --- a/docs/reference/errors-and-warnings/NU1901-NU1904.md +++ b/docs/reference/errors-and-warnings/NU1901-NU1904.md @@ -52,5 +52,6 @@ For example ` + +``` + +will have a nuspec with the following dependencies: + +```xml + + + + + + + +``` + +When a direct PackageReference can be completely removed from your project, and one of the project frameworks are .NET 10 or newer, [NU1510](../reference/errors-and-warnings/NU1510.md) will be raised asking you to remove the package. +Following this suggestion will reduce the complexity of your project graph. + +The following table summarizes all the package pruning behaviors. | Dependency disposition | Behavior | |-----------------|----------| | Matches the ID of a transitive package coming through another package | Prune | | Matches the ID of a transitive package coming through another project | Prune | -| Matches the ID of a direct `PackageReference` | Raise the [NU1510](../reference/errors-and-warnings/NU1510.md) warning and do not prune | -| Matches the ID of a `ProjectReference` | Raise the [NU1511](../reference/errors-and-warnings/NU1511.md) warning and do not prune | +| Matches the ID of a direct `PackageReference` | Apply `PrivateAssets='all'` and `IncludeAssets='none'` and raise the [NU1510](../reference/errors-and-warnings/NU1510.md) warning when the package can be removed from all frameworks and the project targets .NET 10. | +| Matches the ID of a `ProjectReference` | Do not prune and raise the [NU1511](../reference/errors-and-warnings/NU1511.md) warning when the project targets .NET 10 | ### PrunePackageReference applications diff --git a/docs/reference/errors-and-warnings/NU1510.md b/docs/reference/errors-and-warnings/NU1510.md index 12666d58f..2b4dbf758 100644 --- a/docs/reference/errors-and-warnings/NU1510.md +++ b/docs/reference/errors-and-warnings/NU1510.md @@ -11,15 +11,74 @@ f1_keywords: # NuGet Warning NU1510 -## Scenario 1 +## Scenario -> PackageReference System.Text.Json 9.0.0 will not be pruned. Consider removing this package from your dependencies, as it is likely unnecessary. +> PackageReference System.Text.Json will not be pruned. Consider removing this package from your dependencies, as it is likely unnecessary. ### Issue The package `System.Text.Json` has been specified for pruning through the [PrunePackageReference](../../consume-packages/Package-References-in-Project-Files.md#prunepackagereference) feature. The `.NET SDK` generally specifies the list of packages to be pruned. The package is not needed as a direct PackageReference since the .NET runtime itself carries either the same or higher version of the assembly. +This warning is *only* raised when the PackageReference in question *can be completely removed from the project*. + +#### Example 1 + +```xml + + net10.0 + + + + + +``` + +#### Example 2 + +```xml + + net9.0;net10.0 + + + + + + +``` + +Each conditional `PackageReference` for the `System.Text.Json` package can be removed because the package is already included in the respective .NET runtime versions for the frameworks it is declared for. + +#### Example 3 + +```xml + + net9.0;net10.0 + + + + + +``` + +The `System.Text.Json` package is within the pruning range of the only framework it's declared for. + ### Solution Remove the PackageReference as it's unnecessary. + +> [!NOTE] +> In order to allow for easier adoption of the PrunePackageReference feature, this warning is raised by default when a project targets the .NET 10 framework or newer. + +> [!NOTE] +> The warning will not be raised in scenarios in which at least one of the frameworks still needs the package, such as `net48` in the below example. +> +> ```xml +> +> net10.0;net48 +> +> +> +> +> +> ``` diff --git a/docs/reference/errors-and-warnings/NU1511.md b/docs/reference/errors-and-warnings/NU1511.md index c91ba031e..310a69a07 100644 --- a/docs/reference/errors-and-warnings/NU1511.md +++ b/docs/reference/errors-and-warnings/NU1511.md @@ -25,3 +25,6 @@ Pruning of projects is not supported. - The `.NET SDK` generally specifies the list of packages to be pruned. It may mean that you have a project matching the id of a platform assembly. In this scenario, change the name of the project. - If the `PrunePackageReference` has been specified within your project, you may need to remove the `PrunePackageReference` + +> [!NOTE] +> In order to allow for easier adoption of the PrunePackageReference feature, this warning is raised by default when a project targets the .NET 10 framework or newer. From ad9529b2666f3ff8ad759c958e30b45956decae4 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Wed, 23 Jul 2025 16:50:50 -0700 Subject: [PATCH 942/988] Clarify that SdkAnalysisLevel impacts more than just this warning (#3447) --- docs/reference/errors-and-warnings/NU1302.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/reference/errors-and-warnings/NU1302.md b/docs/reference/errors-and-warnings/NU1302.md index 8e2d44615..8bbecf34e 100644 --- a/docs/reference/errors-and-warnings/NU1302.md +++ b/docs/reference/errors-and-warnings/NU1302.md @@ -51,4 +51,5 @@ Here's how it functions: - For SDK Analysis Level value **below 9.0.100**, using HTTP sources triggers a warning ([NU1803](NU1803.md)). - Starting with SDK Analysis Level **9.0.100 or higher**, HTTP sources result in an error (NU1302) unless `AllowInsecureConnections` is explicitly enabled. - +> [!WARNING] +> Changing SdkAnalysisLevel has other side-effects. Refer to the [`SdkAnalysisLevel`](/dotnet/core/project-sdk/msbuild-props#sdkanalysislevel) for a summary of the full scope of .NET SDK features affected. From d343ab2785f2bd17eaf2a119b1f177735ee64026 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Thu, 24 Jul 2025 17:03:58 +0930 Subject: [PATCH 943/988] nuget verify shows content hash (#3448) --- docs/reference/cli-reference/cli-ref-verify.md | 1 + docs/release-notes/{NuGet-6.15.md => NuGet-7.0.md} | 10 ++++------ 2 files changed, 5 insertions(+), 6 deletions(-) rename docs/release-notes/{NuGet-6.15.md => NuGet-7.0.md} (60%) diff --git a/docs/reference/cli-reference/cli-ref-verify.md b/docs/reference/cli-reference/cli-ref-verify.md index ab6dda990..def7a7c90 100644 --- a/docs/reference/cli-reference/cli-ref-verify.md +++ b/docs/reference/cli-reference/cli-ref-verify.md @@ -13,6 +13,7 @@ ms.reviewer: rmpablos **Applies to:** package consumption • **Supported versions:** 4.6+ Verifies a package. +Starting with [NuGet 7.0](../../release-notes/NuGet-7.0.md), the package's content hash will also be displayed. Verification of signed packages is not yet supported under Mono. diff --git a/docs/release-notes/NuGet-6.15.md b/docs/release-notes/NuGet-7.0.md similarity index 60% rename from docs/release-notes/NuGet-6.15.md rename to docs/release-notes/NuGet-7.0.md index 3db3e6311..abd05b123 100644 --- a/docs/release-notes/NuGet-6.15.md +++ b/docs/release-notes/NuGet-7.0.md @@ -1,10 +1,10 @@ --- -title: NuGet 6.15 Release Notes -description: Release notes for NuGet 6.15 including new features, bug fixes, and DCRs. +title: NuGet 7.0 Release Notes +description: Release notes for NuGet 7.0 including new features, bug fixes, and DCRs. author: zivkan ms.topic: conceptual --- -# NuGet 6.15 Release Notes +# NuGet 7.0 Release Notes $oV(}4k|f@U7LI?v&vk*_K^~oKi!w# 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�tWNAv;s_>dP5wtL8MWqT69+|wKL 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 literal 114229 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\^QP8nZ)BmdAmv6&F&N3 z7?|~1w;xy0g(5WPl*!I>kNLODhLNk!7CC~4X0NLtq>Pna{`FG*4dM9EKL8i5PfxL; zZ(1qyZ#%XSBYurZT3SW{6Rfjn4()aC-A1*Klt${#Vi|RZ9-6A|gQk&2P%_07aBRQZAk!9clqnt3&P{xsOZSfglgP5_r2SGOrtYlV(GJR^OPy3TA!it@Gku!2 zjC1^F%?yN8j^(IYu17HeJL{*dNc*#LZ_iIt)|}cUk_ycFd?Ri4rl0E0yqyqL?&UTC z(;^p68Q*zOIFBwsl2PsdGKcWI&AVB$%&^ucD>cfwlyOMkCb3Wv0Hm6ufW>#1UrgPq zt^~mf4N<(H+;_@Gb3dhZD_2f_9raeL29Z)#at=Mb4zGCk8RfGGCc50AGYdF%cPK(e zynFX<$aT|H`MQ+kIm^fG$lZL5;GCsMaByug8+zO8PO^xAXxni^#`CR{E@h{QQ?#4s zp?k0g7sfW+TjHe}p^(jAMX5o%sDRnlvlppxX`X(7*2R^O|U`MY=DL{%KvljK#7^Xx#dpln1;h-UVw-Nj1O4YiyyPBH0O4 zi9ot=13fPM`~l+;0p)qpiNg7y*qUBfl@3qcdaLBnPDRtfg(dRui#9$LJ^x2}n7^L7 zB^7REY4Q6(kdUJU$Q!q%iM6J0>cN-Q2yK;}!kpviR|m0~50L!o-jK`~Bva3Y!7{{8 z7s`YSI-j}`?*N7?c$q4_lY$u9fOm&tWNpXu}rECse4*7yQKnm^B}wir!9@4#E6iY zFc&LGQznJ8NoiP*lo$D-N*eZGcurtED^{PT?f5^MrN@pndK=aw{s6({Cv3EZr=sv> zN}2ak6KXOlSCyBg+Q`cG6U-6H9+igPEVYteje-h%p2Ln7u3dFiv=p8qvx-8}SJ!Hz z=u9kmJ~yWfKyKD$fa%=LC(3<5%Fkwd@h|e{iI&B%!oM;vRi8$P?_`(7htCL^YCXc@ z0)8urpmASIH7r%$)@NRekVBkXHLa`3Njx^Y7$?*UzS#fRCICbsV2>tSIB=CzIYHz>sA_w22p_`YcS& zd1p^O>mP-?(-J?V-aqI$Oi=U`@EuJm;#Dq7#khu7g;`Oy>o8@=qhm>B%)%>_WJrllWW>2|t=03yQR zm|fdeT3ihE6NSq@bD$o^0;Nee+$7A=H5y-w%;q@oqwgmzIeA~zWqn5J2a3N^rB?u8 z%{M$_i>%}BhD=F6u{g){HSQV*^T`F3(TXK~e`5K10qK&d z?K?`(vPlIiRdVBl`PYUI}ra}E^OSk;pj_rK4y;@{z- zrIxBv%A(BX(AU=Xusp-m1uGfocDpzytWS^;8x_h+H*U8=8tkHFQ+syaV4UL>BCQ>O z(9>dN)`ASbooG2VQU0!4=18;Sy;bjx7iB&#h?kR_+Up%HA6zS0eRig$^ke_Tog#7P z8k+K_(h-Y|PYHa+mOifD3f?EH*UD~>VKfu$I@1Ld4k`Ewm%;LlaG}{ZImI->(gptd z&{)3GqTA0r?(FxMZ)EE-r)@uioE#TUPN zpm_UwCLr_vW8Y`t z&M7IWnNVAI^+UyD#$5qdri_n>5ck(E0KouKk5i^>55MT)nA|_R$_x2mxzpG14`5>l zZGt!2@TPy;7ytr4jKL+6S-R0iW`pPt6#)H2Mjo_eJk2_(w~xu%*XWMD$drKjAtQtV z&=(E<=ISzILRpMNU&)Gl-xpz%VO(Bpq%j`S#qzYR#mw0Kp+2+8mAvz1+`0Xi3>uf2 zbN*B}%X7XNgLBc!oo*eC-`}MTn9Y(w^-VkFLe$9xGP`#-_C)vT)2jZd5+zi1YKl(5 z96{s0NTFc^N8s-YJOBB{BfoMy5~K2wb)6o#$70Bgcsh1tC7|4{I~3j|0`Z7}G4#moco#g5`_bKyL(RjoNz4r%x?}e`jo^aWgv0l zTC#(`zYe~d;;`1caKAoVeQ)FMo4-}g4;`>x_=Mweb=v%Vvj-Z=8;0nx;tll&^#RVv}N zNW=U;gqme3uFt?AZs30FjR3p7&x#dERZG`8#yxo- z(8Vlsq56^U%U67jin#iIV=s=Mi_=*HTp4{c{Rb%kn#k{UA<{pU&WEu+rSCgv@}XPV z#3h-3Y)s9qQ+-tp(F<5|e4+9ObT;`<&vu$c`3qWt_M-r{WAB5earZCk+owwz#1vg< z-8hz-jF=-C%4DmoQ1I>=k?XOltFcY)>irwC;qpj#XWz}f`rYpR8n4cEI|eN?-0@%+ zy;||Va}qeGZ(rA==C<8&_0QwYyvZ`>N|lnU{VbPrM}MM+GnE8~8jE~yxsJc)Pq2&i ztk1h4p)lv^=B@BYkby|H5yD<@_|724mc`peC*+nbFKv%ek#V(+zAKH;!>4(q8cp$b zR+^6dC-tza`HI|qpbxnhMM5g^MxUOFeKzfhirKU&Cxpt9*P}kk)ljl@)s~vk1y%6A zpFju6S%rB?X5Lad*3Ns(o?LVvGhu>x@Nxlh ze=f$s({wBy(j8?3?us4jkY{6r==}XRdD0naEAW#kx#B-SN+lNuU(Nl5TH2b&KRr-XRcZ>hUJJV5UFUgnZP

    lyC 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 VB0&b$LZ?bRU;YS(ONTNISk7dVC1q7xOULyrQ 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 This corresponds to your workflow at `.github/workflows/build.yml`. Enter the **file name only** (`build.yml`)—do not include the `.github/workflows/` path. + - **Environment (optional):** `release` + > Enter environment if your workflow uses e.g. `environment: release` and you want to restrict this policy to that environment. Leave this empty if you do not use GitHub Actions environments. +4. In your **GitHub repo**, update your workflow to request a short‑lived API key and push your package. Here’s a basic example: ```yaml @@ -60,7 +73,7 @@ jobs: uses: NuGet/login@v1 id: login with: - user: ${{secrets.NUGET_USER}} + user: contoso-bot # Recommended: use a secret like ${{ secrets.NUGET_USER }} for your nuget.org username (profile name), NOT your email address # Push the package - name: NuGet push From 8534c2f75a8c4e00adbc479228ef3e7903d4d965 Mon Sep 17 00:00:00 2001 From: "Meaghan Osagie (Lewis)" Date: Tue, 23 Sep 2025 15:31:05 -0700 Subject: [PATCH 958/988] Fix broken video link for installing NuGet package (#3465) --- .../install-and-use-a-package-using-the-dotnet-cli.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md b/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md index d5259dfcd..b4ccfb956 100644 --- a/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md +++ b/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md @@ -103,7 +103,7 @@ Congratulations on installing and using your first NuGet package! ## Related video -> [!VIDEO https://learn.microsoft.com/shows/NuGet-101/Install-and-Use-a-NuGet-Package-with-the-NET-CLI-3-of-5/player] +> [!VIDEO https://learn-video.azurefd.net/vod/player?show=dotnet-package-management-with-nuget-for-beginners&ep=installing-a-nuget-package-using-the-dotnet-cli-nuget-for-beginners] Find more NuGet videos on [Channel 9](/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). From 232c449f75289f76d1e29cfd7ee51eb3eaf17a65 Mon Sep 17 00:00:00 2001 From: "Meaghan Osagie (Lewis)" Date: Tue, 23 Sep 2025 15:33:18 -0700 Subject: [PATCH 959/988] Update broken video link for NuGet package tutorial (#3466) --- .../create-and-publish-a-package-using-the-dotnet-cli.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md index a28227cf8..1c662c94d 100644 --- a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md +++ b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md @@ -100,7 +100,7 @@ Congratulations on creating and publishing your first NuGet package! ## Related video -> [!Video https://learn.microsoft.com/shows/NuGet-101/Create-and-Publish-a-NuGet-Package-with-the-NET-CLI-5-of-5/player] +> [!VIDEO https://learn-video.azurefd.net/vod/player?show=dotnet-package-management-with-nuget-for-beginners&ep=creating-and-publishing-a-nuget-package-nuget-for-beginners] Find more NuGet videos on [Channel 9](/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). From fe78922c039f23096d08cc2873c07923cc862d9d Mon Sep 17 00:00:00 2001 From: Copilot <198982749+Copilot@users.noreply.github.com> Date: Tue, 23 Sep 2025 15:38:09 -0700 Subject: [PATCH 960/988] Remove documentation for deprecated NUGET_EXPERIMENTAL_USE_NJ_FOR_FILE_PARSING environment variable (#3468) --- docs/reference/cli-reference/cli-ref-environment-variables.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/cli-reference/cli-ref-environment-variables.md b/docs/reference/cli-reference/cli-ref-environment-variables.md index a55fb00cb..d74f1d788 100644 --- a/docs/reference/cli-reference/cli-ref-environment-variables.md +++ b/docs/reference/cli-reference/cli-ref-environment-variables.md @@ -39,4 +39,4 @@ The list of properties documented in [NuGet pack and restore as MSBuild targets] | NUGET_ENABLE_ENHANCED_HTTP_RETRY | Enables or disables enhanced HTTP retry in NuGet. | Possible values are `true` (default) or `false`. | | NUGET_ENHANCED_MAX_NETWORK_TRY_COUNT | Configures the maximum number of times an HTTP connection should be retried when enhanced retries are enabled. | A number representing how many retries to perform, the default value is `6`. | | NUGET_ENHANCED_NETWORK_RETRY_DELAY_MILLISECONDS | Configures the amount of time to wait in milliseconds before retrying an HTTP connection when enhanced retries are enabled. | Number of millseconds to wait, the default value is `1000`. | -| NUGET_EXPERIMENTAL_USE_NJ_FOR_FILE_PARSING | Determines whether or not `Netwonsoft.Json` is used for parsing the assets file during restore | Possible values are `true` or `false` (default). | + From c64f8d3cee61da647262249f5a1acbf4d91d7eec Mon Sep 17 00:00:00 2001 From: Copilot <198982749+Copilot@users.noreply.github.com> Date: Tue, 23 Sep 2025 15:50:10 -0700 Subject: [PATCH 961/988] Add documentation for NU1016 error code (project.json deprecation) (#3469) --- docs/reference/Errors-and-Warnings.md | 2 +- docs/reference/errors-and-warnings/NU1016.md | 34 ++++++++++++++++++++ 2 files changed, 35 insertions(+), 1 deletion(-) create mode 100644 docs/reference/errors-and-warnings/NU1016.md diff --git a/docs/reference/Errors-and-Warnings.md b/docs/reference/Errors-and-Warnings.md index a7a49a761..5a3b8ae89 100644 --- a/docs/reference/Errors-and-Warnings.md +++ b/docs/reference/Errors-and-Warnings.md @@ -27,7 +27,7 @@ NuGet supports the following configuration properties. | Group | Error Numbers | | --- | --- | -| Invalid input errors | [NU1001](./errors-and-warnings/NU1001.md), [NU1002](./errors-and-warnings/NU1002.md), [NU1003](./errors-and-warnings/NU1003.md), [NU1004](./errors-and-warnings/NU1004.md), [NU1005](./errors-and-warnings/NU1005.md), [NU1006](./errors-and-warnings/NU1006.md), [NU1007](./errors-and-warnings/NU1007.md), [NU1008](./errors-and-warnings/NU1008.md), [NU1009](./errors-and-warnings/NU1009.md), [NU1010](./errors-and-warnings/NU1010.md), [NU1011](./errors-and-warnings/NU1011.md), [NU1012](./errors-and-warnings/NU1012.md), [NU1013](./errors-and-warnings/NU1013.md), [NU1014](./errors-and-warnings/NU1014.md), [NU1015](./errors-and-warnings/NU1015.md) | +| Invalid input errors | [NU1001](./errors-and-warnings/NU1001.md), [NU1002](./errors-and-warnings/NU1002.md), [NU1003](./errors-and-warnings/NU1003.md), [NU1004](./errors-and-warnings/NU1004.md), [NU1005](./errors-and-warnings/NU1005.md), [NU1006](./errors-and-warnings/NU1006.md), [NU1007](./errors-and-warnings/NU1007.md), [NU1008](./errors-and-warnings/NU1008.md), [NU1009](./errors-and-warnings/NU1009.md), [NU1010](./errors-and-warnings/NU1010.md), [NU1011](./errors-and-warnings/NU1011.md), [NU1012](./errors-and-warnings/NU1012.md), [NU1013](./errors-and-warnings/NU1013.md), [NU1014](./errors-and-warnings/NU1014.md), [NU1015](./errors-and-warnings/NU1015.md), [NU1016](./errors-and-warnings/NU1016.md) | | Missing package and project errors | [NU1100](./errors-and-warnings/NU1100.md), [NU1101](./errors-and-warnings/NU1101.md), [NU1102](./errors-and-warnings/NU1102.md), [NU1103](./errors-and-warnings/NU1103.md), [NU1104](./errors-and-warnings/NU1104.md), [NU1105](./errors-and-warnings/NU1105.md), [NU1106](./errors-and-warnings/NU1106.md), [NU1107](./errors-and-warnings/NU1107.md), [NU1108](./errors-and-warnings/NU1108.md), [NU1109](./errors-and-warnings/NU1109.md) | | Package source mapping errors | [NU1110](./errors-and-warnings/NU1110.md) | | Compatibility errors | [NU1201](./errors-and-warnings/NU1201.md), [NU1202](./errors-and-warnings/NU1202.md), [NU1203](./errors-and-warnings/NU1203.md), [NU1204](./errors-and-warnings/NU1204.md), [NU1401](./errors-and-warnings/NU1401.md), [NU1402](./errors-and-warnings/NU1402.md), [NU1403](./errors-and-warnings/NU1403.md) | diff --git a/docs/reference/errors-and-warnings/NU1016.md b/docs/reference/errors-and-warnings/NU1016.md new file mode 100644 index 000000000..3462092b8 --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1016.md @@ -0,0 +1,34 @@ +--- +title: NuGet Error NU1016 +description: NU1016 error code +author: donnie-msft +ms.author: eagoodso +ms.date: 01/28/2025 +ms.topic: reference +f1_keywords: + - "NU1016" +--- + +# NuGet Error NU1016 + +> Managing packages with project.json is deprecated. Migrate to PackageReference. + +### Issue + +Managing packages with project.json is deprecated. Migrate to PackageReference. + +### Solution + +[Migrate your project from project.json to PackageReference](../../archive/project-json.md#migrate-projectjson-to-packagereference). + +In Visual Studio 2026 or newer, your project.json project will be automatically migrated. + +In Visual Studio 2022, you need to use the [built-in migrator](../../archive/project-json.md#migrate-projectjson-to-packagereference). + +1. Open your project.json project in Visual Studio +1. In Solution Explorer, find the project's Dependencies node +1. Right-click and select **Migrate project.json to PackageReference...** + +For detailed migration guidance, see the [project.json reference documentation](../../archive/project-json.md). + +For more information about package management formats, see [Package references in project files](../../consume-packages/Package-References-in-Project-Files.md). From 21950f01961cbb6464d605aab82be9df12e97383 Mon Sep 17 00:00:00 2001 From: Nigusu Solomon Yenework <59111203+Nigusu-Allehu@users.noreply.github.com> Date: Thu, 25 Sep 2025 13:54:46 -0700 Subject: [PATCH 962/988] Add NU1017 (#3472) --- docs/reference/Errors-and-Warnings.md | 2 +- docs/reference/errors-and-warnings/NU1017.md | 51 ++++++++++++++++++++ 2 files changed, 52 insertions(+), 1 deletion(-) create mode 100644 docs/reference/errors-and-warnings/NU1017.md diff --git a/docs/reference/Errors-and-Warnings.md b/docs/reference/Errors-and-Warnings.md index 5a3b8ae89..3abf97dd5 100644 --- a/docs/reference/Errors-and-Warnings.md +++ b/docs/reference/Errors-and-Warnings.md @@ -27,7 +27,7 @@ NuGet supports the following configuration properties. | Group | Error Numbers | | --- | --- | -| Invalid input errors | [NU1001](./errors-and-warnings/NU1001.md), [NU1002](./errors-and-warnings/NU1002.md), [NU1003](./errors-and-warnings/NU1003.md), [NU1004](./errors-and-warnings/NU1004.md), [NU1005](./errors-and-warnings/NU1005.md), [NU1006](./errors-and-warnings/NU1006.md), [NU1007](./errors-and-warnings/NU1007.md), [NU1008](./errors-and-warnings/NU1008.md), [NU1009](./errors-and-warnings/NU1009.md), [NU1010](./errors-and-warnings/NU1010.md), [NU1011](./errors-and-warnings/NU1011.md), [NU1012](./errors-and-warnings/NU1012.md), [NU1013](./errors-and-warnings/NU1013.md), [NU1014](./errors-and-warnings/NU1014.md), [NU1015](./errors-and-warnings/NU1015.md), [NU1016](./errors-and-warnings/NU1016.md) | +| Invalid input errors | [NU1001](./errors-and-warnings/NU1001.md), [NU1002](./errors-and-warnings/NU1002.md), [NU1003](./errors-and-warnings/NU1003.md), [NU1004](./errors-and-warnings/NU1004.md), [NU1005](./errors-and-warnings/NU1005.md), [NU1006](./errors-and-warnings/NU1006.md), [NU1007](./errors-and-warnings/NU1007.md), [NU1008](./errors-and-warnings/NU1008.md), [NU1009](./errors-and-warnings/NU1009.md), [NU1010](./errors-and-warnings/NU1010.md), [NU1011](./errors-and-warnings/NU1011.md), [NU1012](./errors-and-warnings/NU1012.md), [NU1013](./errors-and-warnings/NU1013.md), [NU1014](./errors-and-warnings/NU1014.md), [NU1015](./errors-and-warnings/NU1015.md), [NU1016](./errors-and-warnings/NU1016.md), [NU1017](./errors-and-warnings/NU1017.md) | | Missing package and project errors | [NU1100](./errors-and-warnings/NU1100.md), [NU1101](./errors-and-warnings/NU1101.md), [NU1102](./errors-and-warnings/NU1102.md), [NU1103](./errors-and-warnings/NU1103.md), [NU1104](./errors-and-warnings/NU1104.md), [NU1105](./errors-and-warnings/NU1105.md), [NU1106](./errors-and-warnings/NU1106.md), [NU1107](./errors-and-warnings/NU1107.md), [NU1108](./errors-and-warnings/NU1108.md), [NU1109](./errors-and-warnings/NU1109.md) | | Package source mapping errors | [NU1110](./errors-and-warnings/NU1110.md) | | Compatibility errors | [NU1201](./errors-and-warnings/NU1201.md), [NU1202](./errors-and-warnings/NU1202.md), [NU1203](./errors-and-warnings/NU1203.md), [NU1204](./errors-and-warnings/NU1204.md), [NU1401](./errors-and-warnings/NU1401.md), [NU1402](./errors-and-warnings/NU1402.md), [NU1403](./errors-and-warnings/NU1403.md) | diff --git a/docs/reference/errors-and-warnings/NU1017.md b/docs/reference/errors-and-warnings/NU1017.md new file mode 100644 index 000000000..2e68f8e0b --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1017.md @@ -0,0 +1,51 @@ +--- +title: NuGet Error NU1017 +description: NU1017 error code +author: Nigusu-Allehu +ms.author: Nigusu-Allehu +ms.date: 09/23/2025 +ms.topic: reference +f1_keywords: + - "NU1017" +--- + +# NuGet Error NU1017 + +## Scenario + +> Invalid package id : `contoso../id`. + +### Issue + +The package ID is invalid because it does not match the required format. +NuGet validates package IDs using this regex: + +```regex +^\w+([.-]\w+)*$ +``` + +* The ID must **start with a letter or number**. +* It can only contain **letters, numbers, dots (`.`), and dashes (`-`)**. +* Dots or dashes must be followed by more letters or numbers. +* You can have multiple parts separated by `.` or `-`, like `Contoso.App.Service`. + +### Solution + +To fix this error: + +* Replace or remove any invalid characters from the package ID. Only letters, numbers, dots (`.`), and dashes (`-`) are allowed. +* Ensure the package ID starts with a letter or number. +* Dots (`.`) or dashes (`-`) must always be followed by another letter or number (no consecutive dots/dashes, and none at the end). +* For example, change `contoso../id` to `Contoso.Id`. + +Valid: + +```xml + +``` + +Invalid: + +```xml + +``` From 25297de1e619c65fe37c896f44c87d06e4869a72 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Mon, 29 Sep 2025 18:53:30 -0700 Subject: [PATCH 963/988] Remove NUGET_ENABLE_ENHANCED_HTTP_RETRY from the nuget docs (#3473) Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- docs/nuget-org/nuget-org-faq.yml | 3 +-- docs/reference/cli-reference/cli-ref-environment-variables.md | 1 - 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/docs/nuget-org/nuget-org-faq.yml b/docs/nuget-org/nuget-org-faq.yml index f4e4e2f33..748ec0eea 100644 --- a/docs/nuget-org/nuget-org-faq.yml +++ b/docs/nuget-org/nuget-org-faq.yml @@ -80,9 +80,8 @@ sections: | Environment Variable | Description | Remarks | | --- | --- | --- | - | NUGET_ENABLE_ENHANCED_HTTP_RETRY | Enables or disables enhanced HTTP retry in NuGet. | Possible values are `true` (default since .NET CLI 6.0.300, NuGet CLI 6.2, Visual Studio 2022 version 17.2) or `false`. | | NUGET_ENHANCED_MAX_NETWORK_TRY_COUNT | Configures the maximum number of times an HTTP connection should be retried when enhanced retries are enabled. | A number representing how many retries to perform, the default value is `6`. | - | NUGET_ENHANCED_NETWORK_RETRY_DELAY_MILLISECONDS | Configures the amount of time to wait in milliseconds before retrying an HTTP connection when enhanced retries are enabled. | Number of millseconds to wait, the default value is `1000`. | + | NUGET_ENHANCED_NETWORK_RETRY_DELAY_MILLISECONDS | Configures the amount of time to wait in milliseconds before retrying an HTTP connection when enhanced retries are enabled. | Number of milliseconds to wait, the default value is `1000`. | > [!Note] > These environment variables are available since [.NET CLI](https://learn.microsoft.com/nuget/reference/dotnet-commands) (.NET SDK) 6.0.100, [NuGet CLI](https://learn.microsoft.com/nuget/reference/nuget-exe-cli-reference) 6.0, Visual Studio 2022 version 17.0 and corresponding MSBuild version. See [NuGet Release Notes](https://learn.microsoft.com/nuget/release-notes/). diff --git a/docs/reference/cli-reference/cli-ref-environment-variables.md b/docs/reference/cli-reference/cli-ref-environment-variables.md index d74f1d788..e0c993671 100644 --- a/docs/reference/cli-reference/cli-ref-environment-variables.md +++ b/docs/reference/cli-reference/cli-ref-environment-variables.md @@ -36,7 +36,6 @@ The list of properties documented in [NuGet pack and restore as MSBuild targets] | NUGET_UPDATEFILETIME_MAXRETRIES | Sets the number of times NuGet will attempt to retry seting the file timestamp when extracting packages when the first attempt failed. | On Windows anti-virus software might temporarily open files, preventing NuGet from changing the timestamp. NuGet uses an exponential back-off where the wait duration between attempts is `Math.Pow(2, retryNumber)`. The default max retries is 9, meaning the default total wait duration before failure will be approximately one second. | | NUGET_XMLDOC_MODE | Determines how assemblies XML documentation file extraction should be handled. | Supported modes are *skip* (do not extract XML documentation files), *compress* (store XML doc files as a zip archive) or *none* (default, treat XML doc files as regular files). | | NUGET_CERT_REVOCATION_MODE | Determines how the revocation status check of the certificate used to sign a package, is performed when a signed package is installed or restored. When not set, defaults to `online`.| Possible values *online* (default), *offline*. Related to [NU3028](../errors-and-warnings/NU3028.md) | -| NUGET_ENABLE_ENHANCED_HTTP_RETRY | Enables or disables enhanced HTTP retry in NuGet. | Possible values are `true` (default) or `false`. | | NUGET_ENHANCED_MAX_NETWORK_TRY_COUNT | Configures the maximum number of times an HTTP connection should be retried when enhanced retries are enabled. | A number representing how many retries to perform, the default value is `6`. | | NUGET_ENHANCED_NETWORK_RETRY_DELAY_MILLISECONDS | Configures the amount of time to wait in milliseconds before retrying an HTTP connection when enhanced retries are enabled. | Number of millseconds to wait, the default value is `1000`. | From 134229b22f6c0fccf15646831a57b259095c4d3e Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Tue, 30 Sep 2025 10:37:27 -0700 Subject: [PATCH 964/988] Improve the note for project.json (#3474) --- docs/archive/project-json-and-uwp.md | 2 ++ docs/archive/project-json-impact.md | 2 ++ docs/archive/project-json.md | 2 ++ 3 files changed, 6 insertions(+) diff --git a/docs/archive/project-json-and-uwp.md b/docs/archive/project-json-and-uwp.md index 0d88aa35a..1fc741034 100644 --- a/docs/archive/project-json-and-uwp.md +++ b/docs/archive/project-json-and-uwp.md @@ -12,6 +12,8 @@ ms.topic: conceptual > [!Important] > This content is deprecated. Projects should use the PackageReference formats. > Learn how to [migrate your project.json project to PackageReference](./project-json.md#migrate-projectjson-to-packagereference). +> Visual Studio 2026 automatically migrates project.json at solution load time. +> [.NET 10 SDK & NuGet.exe 7.0](../release-notes/NuGet-7.0.md) do not support project.json projects. This document describes the package structure that employs features in NuGet 3+ (Visual Studio 2015 and later). The `minClientVersion` property of your `.nuspec` can be used to state that you require the features described here by setting it to 3.1. diff --git a/docs/archive/project-json-impact.md b/docs/archive/project-json-impact.md index 23aae4fc2..c8985f3ce 100644 --- a/docs/archive/project-json-impact.md +++ b/docs/archive/project-json-impact.md @@ -12,6 +12,8 @@ ms.topic: conceptual > [!Important] > This content is deprecated. Projects should use the PackageReference formats. > Learn how to [migrate your project.json project to PackageReference](./project-json.md#migrate-projectjson-to-packagereference). +> Visual Studio 2026 automatically migrates project.json at solution load time. +> [.NET 10 SDK & NuGet.exe 7.0](../release-notes/NuGet-7.0.md) do not support project.json projects. The `project.json` system used in NuGet 3+ affects package authors in several ways as described in the following sections. diff --git a/docs/archive/project-json.md b/docs/archive/project-json.md index 4b6243821..2f542d0bd 100644 --- a/docs/archive/project-json.md +++ b/docs/archive/project-json.md @@ -12,6 +12,8 @@ ms.topic: reference > [!Important] > This content is deprecated. Projects should use the PackageReference formats. > Learn how to [migrate your project.json project to PackageReference](#migrate-projectjson-to-packagereference). +> Visual Studio 2026 automatically migrates project.json at solution load time. +> [.NET 10 SDK & NuGet.exe 7.0](../release-notes/NuGet-7.0.md) do not support project.json projects. *NuGet 3.x* From 418118c956129e47c4336f1126518c205dbea881 Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Wed, 1 Oct 2025 14:14:41 -0700 Subject: [PATCH 965/988] Update CLI reference for certificate fingerprint options (NU3043 promoted to error) (#3475) --- docs/reference/cli-reference/cli-ref-sign.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/reference/cli-reference/cli-ref-sign.md b/docs/reference/cli-reference/cli-ref-sign.md index 68b4dc650..e2fda227a 100644 --- a/docs/reference/cli-reference/cli-ref-sign.md +++ b/docs/reference/cli-reference/cli-ref-sign.md @@ -33,6 +33,8 @@ where `` is one or more `.nupkg` files. Starting with NuGet.exe 6.12, this option can be used to specify the SHA-1, SHA-256, SHA-384, or SHA-512 fingerprint of the certificate. However, a `NU3043` warning is raised when a SHA-1 certificate fingerprint is used because it is no longer considered secure. + In NuGet.exe 7.0 and later versions, the warning is elevated to an error. + Only SHA-2 family fingerprints (SHA-256, SHA-384, and SHA-512) are supported. All the previous versions of the NuGet.exe continue to accept only SHA-1 certificate fingerprint. From 9a2282c167e6efb64264497199a0b7134a8fc356 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Fri, 3 Oct 2025 12:59:51 +0930 Subject: [PATCH 966/988] Update plugin CanShowDialog info (#3477) --- .../NuGet-Cross-Platform-Authentication-Plugin.md | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/docs/reference/extensibility/NuGet-Cross-Platform-Authentication-Plugin.md b/docs/reference/extensibility/NuGet-Cross-Platform-Authentication-Plugin.md index a0e8d027b..7e9636d35 100644 --- a/docs/reference/extensibility/NuGet-Cross-Platform-Authentication-Plugin.md +++ b/docs/reference/extensibility/NuGet-Cross-Platform-Authentication-Plugin.md @@ -58,10 +58,14 @@ The following table summarizes how the plugin should behave for all combinations | IsNonInteractive | CanShowDialog | Plugin behavior | | ---------------- | ------------- | --------------- | -| true | true | The IsNonInteractive switch takes precedence over the dialog switch. The plugin is not allowed to pop a dialog. This combination is only valid for .NET Framework plugins | -| true | false | The IsNonInteractive switch takes precedence over the dialog switch. The plugin is not allowed to block. This combination is only valid for .NET Core plugins | -| false | true | The plugin should show a dialog. This combination is only valid for .NET Framework plugins | -| false | false | The plugin should/can not show a dialog. The plugin should use device flow to authenticate by logging an instruction message via the logger. This combination is only valid for .NET Core plugins | +| true | true | The IsNonInteractive switch takes precedence over the dialog switch. The plugin is not allowed to block. | +| true | false | The IsNonInteractive switch takes precedence over the dialog switch. The plugin is not allowed to block. | +| false | true | The plugin can show a dialog if required. For example, interactive login, or account selection. | +| false | false | The plugin should/can not show a dialog. The plugin should use device flow to authenticate by logging an instruction message via the logger. | + +Prior to [NuGet 7.0](../../release-notes/NuGet-7.0.md), NuGet would always set `CanShowDialog` to false on the dotnet CLI, and true for MSBuild restore. +From 7.0, NuGet will always set `CanShowDialog` to true, but plugins should still detect when graphical interfaces are not available. +For example when running on Linux over an SSH connection without X forwarding, or a PowerShell remote session. Please refer to the following specs before writing a plugin. From 29ebe47b883955b95b46ee63302347176e845f66 Mon Sep 17 00:00:00 2001 From: Copilot <198982749+Copilot@users.noreply.github.com> Date: Fri, 3 Oct 2025 12:23:22 -0700 Subject: [PATCH 967/988] Document automatic migration for project.json in Visual Studio 2026 (#3478) --- docs/archive/project-json.md | 26 +++++++++++++++++--- docs/reference/errors-and-warnings/NU1016.md | 8 ++++-- 2 files changed, 29 insertions(+), 5 deletions(-) diff --git a/docs/archive/project-json.md b/docs/archive/project-json.md index 2f542d0bd..6e039d251 100644 --- a/docs/archive/project-json.md +++ b/docs/archive/project-json.md @@ -42,15 +42,35 @@ The [`project.lock.json`](#projectlockjson) file (described below) is also used ## Migrate project.json to PackageReference -The migration between project.json and PackageReference is straightforward. The easiest way to do it to use the built-in migrator in the latest Visual Studio 2022, Update 14. +The migration between project.json and PackageReference is straightforward. + +### Automatic migration in Visual Studio 2026 + +Visual Studio 2026 and later automatically migrates project.json projects to PackageReference when you open a solution containing project.json projects. +The migration happens at solution load time: + +1. Open a solution containing project.json projects in Visual Studio 2026 or later. +1. Visual Studio automatically detects project.json files and migrates them to PackageReference format. +1. To check migration status, open the [Output Window](/visualstudio/ide/output-window) and select Show output from "Package Manager". +You should see messages like "Migrating project.json project..." followed by "Migration Succeeded" for each project. +Any errors will appear in the Error List. +1. A backup of the original project file and project.json file is created in a `Backup` folder in the root of the project directory. +1. The migration converts all package dependencies to PackageReference format in the project file. + + +### Manual migration in Visual Studio 2022 + +For Visual Studio 2022 and earlier, you can use the built-in migrator: 1. Load the project.json project in Visual Studio. 1. Go to the solution explorer of the project.json project and find the dependencies node. -1. Click `Migrate project.json to PackageReference...`! +1. Right-click and select `Migrate project.json to PackageReference...` ![Migrating from project.json to PackageReference](media/project-json-migrator.png) -Alternatively, you may use the [dotnet migrate](/dotnet/core/tools/dotnet-migrate), or do the migration manually by taking all of the content from the project.json file and replacing it with the equivalent [PackageReference syntax](../consume-packages/Package-References-in-Project-Files.md). +### Alternative migration methods + +Alternatively, you may use the [dotnet migrate](/dotnet/core/tools/dotnet-migrate) command-line tool, or do the migration manually by taking all of the content from the project.json file and replacing it with the equivalent [PackageReference syntax](../consume-packages/Package-References-in-Project-Files.md). ## Dependencies diff --git a/docs/reference/errors-and-warnings/NU1016.md b/docs/reference/errors-and-warnings/NU1016.md index 3462092b8..f8f297de7 100644 --- a/docs/reference/errors-and-warnings/NU1016.md +++ b/docs/reference/errors-and-warnings/NU1016.md @@ -21,9 +21,13 @@ Managing packages with project.json is deprecated. Migrate to PackageReference. [Migrate your project from project.json to PackageReference](../../archive/project-json.md#migrate-projectjson-to-packagereference). -In Visual Studio 2026 or newer, your project.json project will be automatically migrated. +**Visual Studio 2026 or later:** -In Visual Studio 2022, you need to use the [built-in migrator](../../archive/project-json.md#migrate-projectjson-to-packagereference). +Your project.json project will be automatically migrated to PackageReference when you open the solution. Visual Studio will create a backup of the original files in a `Backup` folder in the project directory. + +**Visual Studio 2022:** + +You need to use the built-in migrator: 1. Open your project.json project in Visual Studio 1. In Solution Explorer, find the project's Dependencies node From f86c052eb4777192d0f9ccbfa23a721652463e2d Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Wed, 8 Oct 2025 09:50:44 +1030 Subject: [PATCH 968/988] Update audit docs for .net 10 (#3476) --- docs/concepts/Auditing-Packages.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/docs/concepts/Auditing-Packages.md b/docs/concepts/Auditing-Packages.md index 410783efa..fff6752b3 100644 --- a/docs/concepts/Auditing-Packages.md +++ b/docs/concepts/Auditing-Packages.md @@ -4,7 +4,7 @@ description: How to audit package dependencies for security vulnerabilities and author: JonDouglas ms.author: jodou ms.topic: conceptual -ms.date: 05/05/2025 +ms.date: 10/01/2025 --- # Auditing package dependencies for security vulnerabilities @@ -27,6 +27,7 @@ We also have a [blog post](https://devblogs.microsoft.com/nuget/nugetaudit-2-0-e | [6.10](../release-notes/NuGet-6.10.md) | N/A | Visual Studio 2022 17.10 | [NuGetAudit](#running-a-security-audit-with-restore) for packages.config| | [6.11](../release-notes/NuGet-6.11.md) | .NET 8 SDK (8.0.400) | Visual Studio 2022 17.11 | [NuGetAuditSuppress](#excluding-advisories) for PackageReference | | [6.12](../release-notes/NuGet-6.12.md) | .NET 9 SDK (9.0.100) | Visual Studio 2022 17.12 | [Audit sources](#audit-sources). [NuGetAuditSuppress](#excluding-advisories) for packages.config. | +| [7.0](../release-notes/NuGet-7.0.md) | .NET 10 SDK (10.0.100) | Visual Studio 2026 | [NuGetAuditMode default changes for .NET 10](#configuring-nuget-audit). [`dotnet package update --vulnerable`](#security-vulnerabilities-found-with-updates) | ## Running a security audit with `restore` @@ -157,7 +158,8 @@ If security vulnerabilities are found and updates are available for the package, - Edit the `.csproj` or other package version location (`Directory.Packages.props`) with a newer version containing a security fix. - Use the NuGet package manager user interface in Visual Studio to update the individual package. -- Run the `dotnet add package` command with the respective package ID to update to the latest version. +- Run the `dotnet package update --vulnerable` command to update all vulnerable packages in a project to the first version without known vulnerabilities. +- Run the `dotnet package update` or `dotnet package add` commands with the respective package ID to update to the latest version. Use [`dotnet add package` when using .NET 9 or earlier](/dotnet/core/whats-new/dotnet-10/sdk#more-consistent-command-order). #### Transitive Packages From bbe7bd7a5efd0dda419fcf658131bf6766460a31 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Wed, 8 Oct 2025 11:16:21 -0700 Subject: [PATCH 969/988] Add copilot instructions (#3470) --- .github/copilot-instructions.md | 56 +++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 .github/copilot-instructions.md diff --git a/.github/copilot-instructions.md b/.github/copilot-instructions.md new file mode 100644 index 000000000..344d2e2ad --- /dev/null +++ b/.github/copilot-instructions.md @@ -0,0 +1,56 @@ +# .NET Documentation Guidelines + +## Disclosure + +For any Markdown files generated by AI, always disclose that they were created with the assistance of AI. Add the following frontmatter key/value pair: + +```markdown +ai-usage: ai-generated +``` + +## Terminology + +Unless otherwise specified, all .NET content refers to modern .NET (not .NET Framework). + +## Writing Style + +Follow [Microsoft Writing Style Guide](https://learn.microsoft.com/en-us/style-guide/welcome/) with these specifics: + +### Voice and Tone + +- Active voice, second person addressing reader directly. +- Conversational tone with contractions. +- Present tense for instructions/descriptions. +- Imperative mood for instructions ("Call the method" not "You should call the method"). +- Use "might" instead of "may" for possibility. +- Use "can" instead of "may" for permissible actions. +- Avoid "we"/"our" referring to documentation authors or product teams. + +### Structure and Format + +- Sentence case headings (no gerunds in titles). +- Be concise, break up long sentences. +- Oxford comma in lists. +- Use bullets for unordered lists. +- Number all ordered list items as "1." (not sequential numbering like "1.", "2.", "3.", etc.) +- Ordered and unordered lists should use complete sentences with proper punctuation, ending with a period if it's more than three words. +- Avoid "etc." or "and so on" - provide complete lists or use "for example". +- Use "for example" instead of "e.g.". +- Use "that is" instead of "i.e.". +- No consecutive headings without content between them. + +### Formatting Conventions + +- **Bold** for UI elements. +- `Code style` for file names, folders, custom types, non-localizable text. +- Raw URLs in angle brackets. +- Use relative links for files in this repo. +- Remove `https://learn.microsoft.com/en-us` from learn.microsoft.com links. + +## File Naming + +New Markdown files: lowercase with hyphens, omit filler words (the, a, etc.). + +## Special Cases + +- When you (Copilot) are assigned an issue in GitHub, after you've completed your work and the workflows (status checks) have run, check to make sure there are no build warnings under the OpenPublishing.Build status check. If there are, open the build report (under View Details) and resolve any build warnings you introduced. From 0e96e39c519c5cce4afbdcc52fa65b0c51ed4a12 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Thu, 9 Oct 2025 11:07:06 +1030 Subject: [PATCH 970/988] Update info on packing legacy csproj (#3481) --- ...te-packages-config-to-package-reference.md | 4 ++- .../creating-a-package-msbuild.md | 34 +++++++++++++++---- docs/reference/msbuild-targets.md | 6 +++- 3 files changed, 35 insertions(+), 9 deletions(-) diff --git a/docs/consume-packages/migrate-packages-config-to-package-reference.md b/docs/consume-packages/migrate-packages-config-to-package-reference.md index 59fb31f35..5dcf4c9a1 100644 --- a/docs/consume-packages/migrate-packages-config-to-package-reference.md +++ b/docs/consume-packages/migrate-packages-config-to-package-reference.md @@ -87,7 +87,9 @@ You should now be able to see the migration option. Note that this option is not ## Create a package after migration -Once the migration is complete, we recommend that you add a reference to the [nuget.build.tasks.pack](https://www.nuget.org/packages/nuget.build.tasks.pack) nuget package, and then use [msbuild -t:pack](../reference/msbuild-targets.md#pack-target) to create the package. Although in some scenarios you could use `dotnet.exe pack` instead of `msbuild -t:pack`, it is not recommended. +Once the migration is complete, we recommend that you copy your package metadata from a `.nuspec` file to [MSBuild properties](../reference/msbuild-targets.md#pack-target), and then you can use `msbuild -t:pack` to create the package. +If you are using Visual Studio 2022 or earlier, you will also need to install the NuGet.Build.Tasks.Pack package. +From Visual Studio 2026, pack is built into MSBuild. ## Package compatibility issues diff --git a/docs/create-packages/creating-a-package-msbuild.md b/docs/create-packages/creating-a-package-msbuild.md index 6aa91b1f5..a07d92d5f 100644 --- a/docs/create-packages/creating-a-package-msbuild.md +++ b/docs/create-packages/creating-a-package-msbuild.md @@ -13,9 +13,12 @@ When you create a NuGet package from your code, you package that functionality i For .NET Core and .NET Standard projects that use the [SDK-style format](../resources/check-project-format.md), and any other SDK-style projects, NuGet uses information in the project file directly to create a package. For a non-SDK-style project that uses ``, NuGet also uses the project file to create a package. -SDK-style projects have the pack functionality available by default. For non SDK-style PackageReference projects, you need to add the NuGet.Build.Tasks.Pack package to the project dependencies. For detailed information about MSBuild pack targets, see [NuGet pack and restore as MSBuild targets](../reference/msbuild-targets.md). +SDK-style projects have the pack functionality available by default. +For non-SDK-style PackageReference projects, it is also available by default starting from Visual Studio 2026. +In earlier versions of Visual Studio you need to add the NuGet.Build.Tasks.Pack package to the project dependencies and we recommend removing this package reference when upgrading to Visual Studio 2026. +For detailed information about MSBuild pack targets, see [NuGet pack and restore as MSBuild targets](../reference/msbuild-targets.md). -The command that creates a package, `msbuild -t:pack`, is functionally equivalent to `dotnet pack`. +For SDK-style projects, `msbuild -t:pack` is functionally equivalent to `dotnet pack`. > [!IMPORTANT] > This topic applies to [SDK-style](../resources/check-project-format.md) projects, typically .NET Core and .NET Standard projects, and to non-SDK-style projects that use PackageReference. @@ -77,16 +80,33 @@ For details on declaring dependencies and specifying version numbers, see [Packa [!INCLUDE [choose-package-id](includes/choose-package-id.md)] -## Add the NuGet.Build.Tasks.Pack package +## Configure project for pack -If you are using MSBuild with a non-SDK-style project and PackageReference, add the NuGet.Build.Tasks.Pack package to your project. +SDK-style projects do not require any additional configuration. -1. Open the project file and add the following after the `` element: +Non-SDK-style projects either need at least one package installed (via PackageReference, not packages.config), or the project explicitly needs to instruct NuGet to treat the project as a PackageReference project via the `RestoreProjectStyle` property. + +Visual Studio 2022 and earlier does not have pack built-in, so you also need to install the NuGet.Build.Tasks.Pack package. +When upgrading to Visual Studio 2026 or later, we recommend uninstalling the package, so that you benefit from new features and bug fixes. + +1. Edit the project file. + + If you want to explicitly instruct NuGet to treat the project as PackageReference (the project does not have any packages installed), find or add a `` that does not have any `Condition` statement, and add: + + ```xml + + + PackageReference + + + ``` + + If you are using Visual Studio 2022 or earlier, add the following after the `` element: ```xml - + ``` @@ -98,7 +118,7 @@ If you are using MSBuild with a non-SDK-style project and PackageReference, add You typically want to start the Developer Command Prompt for Visual Studio from the **Start** menu, as it will be configured with all the necessary paths for MSBuild. -3. Switch to the folder containing the project file and type the following command to install the NuGet.Build.Tasks.Pack package. +3. Switch to the folder containing the project file and type the following command to restore the NuGet.Build.Tasks.Pack package. ```cmd # Uses the project file in the current folder by default diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index aa4406876..5f68a795d 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -38,6 +38,9 @@ Similarly, you can write an MSBuild task, write your own target and consume NuGe For .NET projects that use the `PackageReference` format, using `msbuild -t:pack` draws inputs from the project file to use in creating a NuGet package. +Non-SDK-style projects will need to install the NuGet.Build.Tasks.Pack package when using Visual Studio 2022 or earlier. +We recommend uninstalling this package when upgrading to Visual Studio 2026 to ensure your project can use the latest pack features and bug fixes. + The following table describes the MSBuild properties that can be added to a project file within the first `` node. You can make these edits easily in Visual Studio 2017 and later by right-clicking the project and selecting **Edit {project_name}** on the context menu. For convenience, the table is organized by the equivalent property in a [`.nuspec` file](../reference/nuspec.md). > [!NOTE] @@ -307,7 +310,8 @@ When using `MSBuild -t:pack -p:IsTool=true`, all output files, as specified in t ### Packing using a `.nuspec` file -Although it is recommended that you [include all the properties](../reference/msbuild-targets.md#pack-target) that are usually in the `.nuspec` file in the project file instead, you can choose to use a `.nuspec` file to pack your project. For a non-SDK-style project that uses `PackageReference`, you must import `NuGet.Build.Tasks.Pack.targets` so that the pack task can be executed. You still need to restore the project before you can pack a nuspec file. (An SDK-style project includes the pack targets by default.) +Although it is recommended that you [include all the properties](../reference/msbuild-targets.md#pack-target) that are usually in the `.nuspec` file in the project file instead, you can choose to use a `.nuspec` file to pack your project. +You still need to restore the project before you can pack a nuspec file. (An SDK-style project includes the pack targets by default.) The target framework of the project file is irrelevant and not used when packing a nuspec. The following three MSBuild properties are relevant to packing using a `.nuspec`: From e1caa83b6f4b75fd60d7ab29bf3e8b42e3c2d5ea Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Sat, 11 Oct 2025 12:08:45 +1030 Subject: [PATCH 971/988] Update VS extensibility API doc (#3484) --- .../nuget-api-in-visual-studio.md | 107 ++++++------------ 1 file changed, 33 insertions(+), 74 deletions(-) diff --git a/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md b/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md index 3ba582ab3..e49186605 100644 --- a/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md +++ b/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md @@ -49,13 +49,11 @@ From NuGet 6.0, all of these APIs are available in the package [NuGet.VisualStud - [`IVsFrameworkCompatibility3`](#ivsframeworkcompatibility3-interface) Contains methods to discover frameworks and compatibility between frameworks. (5.8+) - [`IVsFrameworkParser`](#ivsframeworkparser-interface) An interface for dealing with the conversion between strings and [FrameworkName](/dotnet/api/system.runtime.versioning.frameworkname) (4.0+) - [`IVsFrameworkParser2`](#ivsframeworkparser2-interface) An interface to parse .NET Framework strings. See [NuGet-IVsFrameworkParser](https://aka.ms/NuGet-IVsFrameworkParser). (5.8+) -- [`IVsGlobalPackagesInitScriptExecutor`](#ivsglobalpackagesinitscriptexecutor-interface) Execute powershell scripts from package(s) in a solution (4.0+) - [`IVsPackageInstaller`](#ivspackageinstaller-interface): Methods to install NuGet packages into projects. (3.3+) - [`IVsPackageInstaller2](#ivspackageinstaller2-interface) Contains method to install latest version of a single package into a project within the current solution. - [`IVsPackageInstallerEvents`](#ivspackageinstallerevents-interface): Events for package install/uninstall. (3.3+) - [`IVsPackageInstallerProjectEvents`](#ivspackageinstallerprojectevents-interface): Batch events for package install/uninstall. (3.3+) - [`IVsPackageInstallerServices`](#ivspackageinstallerservices-interface): Methods to retrieve installed packages in the current solution and to check whether a given package is installed in a project. (3.3+) -- [`IVsPackageManagerProvider`](#ivspackagemanagerprovider-interface): Methods to provide alternative Package Manager suggestions for a NuGet package. (3.3 - 5.11) - [`IVsPackageRestorer`](#ivspackagerestorer-interface): Methods to restore packages installed in a project. (3.3+) - [`IVsPackageSourceProvider`](#ivspackagesourceprovider-interface): Methods to retrieve a list of NuGet package sources. (3.3+) - [`IVsPackageUninstaller`](#ivspackageuninstaller-interface): Methods to uninstall NuGet packages from projects. (3.3+) @@ -75,6 +73,7 @@ These interfaces are designed for project systems to interact with NuGet, allowi - [`IVsSolutionRestoreService2`](#ivssolutionrestoreservice2-interface) (4.3+) - [`IVsSolutionRestoreService3`](#ivssolutionrestoreservice3-interface) (5.1+) - [`IVsSolutionRestoreService4`](#ivssolutionrestoreservice4-interface) (6.0+) +- [`IVsSolutionRestoreService5`](#ivssolutionrestoreservice5-interface) (6.11+) - [`IVsSolutionRestoreStatusProvider`](#ivssolutionrestorestatusprovider-interface) (6.0+) ## Using NuGet Services @@ -414,31 +413,6 @@ public interface IRegistryKey } ``` -## IVsGlobalPackagesInitScriptExecutor interface - -```cs - ///

    - /// Execute powershell scripts from package(s) in a solution - /// - /// Intended for internal use only. - public interface IVsGlobalPackagesInitScriptExecutor - { - /// - /// Executes the init script of the given package if available. - /// 1) If the init.ps1 script has already been executed by the powershell host, it will not be executed again. - /// True is returned. - /// 2) If the package is found in the global packages folder it will be used. - /// If not, it will return false and do nothing. - /// 3) Also, note if other scripts are executing while this call was made, it will wait for them to complete. - /// - /// Id of the package whose init.ps1 will be executed. - /// Version of the package whose init.ps1 will be executed. - /// Returns true if the script was executed or has been executed already. - /// This method throws if the init.ps1 being executed throws. - Task ExecuteInitScriptAsync(string packageId, string packageVersion); - } -``` - ## IVsPackageInstaller interface ```cs @@ -810,53 +784,6 @@ public interface IRegistryKey } ``` -## IVsPackageManagerProvider interface - -This interface was primarily used by the ASP.NET team, to suggest that Javascript and CSS packages like `jQuery` and `bootstrap` are installed with Bower instead of NuGet. Since they removed that functionality From Visual Studio, NuGet has obsolete this interface, and it will no longer be used by the Package Manager UI in Visual Studio 2022 (version 17.0) and later. - -```cs - /// - /// Interface allowing integration of alternate package manager suggestion for a NuGet package. - /// For example jQuery may appear on Bower and npm, - /// it might be more appropriate to install a package from them for certain projects. - /// - [Obsolete] - public interface IVsPackageManagerProvider - { - /// - /// Localized display package manager name. - /// - string PackageManagerName { get; } - - /// - /// Package manager unique id. - /// - string PackageManagerId { get; } - - /// - /// The tool tip description for the package - /// - string Description { get; } - - /// - /// Check if a recommendation should be surfaced for an alternate package manager. - /// This code should not rely on slow network calls, and should return rapidly. - /// - /// Current package id - /// Unique project name for finding the project through VS dte - /// Cancellation Token - /// return true if need to direct to integrated package manager for this package - Task CheckForPackageAsync(string packageId, string projectName, CancellationToken token); - - /// - /// This Action should take the user to the other package manager. - /// - /// Current package id - /// Unique project name for finding the project through VS dte - void GoToPackage(string packageId, string projectName); - } -``` - ## IVsPackageRestorer interface ```cs @@ -1249,6 +1176,7 @@ This interface was primarily used by the ASP.NET team, to suggest that Javascrip /// Thrown if is not the path of a project file. /// Thrown if is null. /// Thrown if is cancelled. + [Obsolete("Use IVsSolutionRestoreService5 instead")] Task NominateProjectAsync(string projectUniqueName, IVsProjectRestoreInfo projectRestoreInfo, CancellationToken token); } ``` @@ -1315,6 +1243,7 @@ This interface was primarily used by the ASP.NET team, to suggest that Javascrip /// Thrown if is not the path of a project file. /// Thrown if is null. /// Thrown if is cancelled. + [Obsolete("Use IVsSolutionRestoreService5 instead")] Task NominateProjectAsync(string projectUniqueName, IVsProjectRestoreInfo2 projectRestoreInfo, CancellationToken token); } ``` @@ -1342,6 +1271,36 @@ This interface was primarily used by the ASP.NET team, to suggest that Javascrip } ``` +## IVsSolutionRestoreService5 interface + +```cs + /// + /// Represents a package restore service API for integration with a project system. + /// Implemented by NuGet. + /// + public interface IVsSolutionRestoreService5 : IVsSolutionRestoreService4 + { + /// + /// An entry point used by CPS to indicate given project needs to be restored. + /// + /// + /// The full path to the project file. In the VS SDK's IVsSolution, this is also known as the unique name. + /// + /// Metadata needed for restoring the project. + /// Cancellation token. + /// + /// Returns a restore task corresponding to the nominated project request. + /// NuGet will batch restore requests so it's possible the same restore task will be returned for multiple projects. + /// When the requested restore operation for the given project completes the task will indicate operation success or failure. + /// + /// Thrown if is not the path of a project file, + /// or if has some basic validation errors. + /// Thrown if is . + /// Thrown if is cancelled. + Task NominateProjectAsync(string projectUniqueName, IVsProjectRestoreInfo3 projectRestoreInfo, CancellationToken token); + } +``` + ## IVsProjectRestoreInfoSource interface ```cs From 521e5096f28ef76e59e022032d7a10b0369dc21c Mon Sep 17 00:00:00 2001 From: Donnie Goodson <49205731+donnie-msft@users.noreply.github.com> Date: Mon, 13 Oct 2025 10:49:13 -0700 Subject: [PATCH 972/988] Create Visual Studio Options Documentation (#3482) --- docs/TOC.md | 1 + .../Package-Source-Mapping.md | 37 ++-- .../install-use-packages-visual-studio.md | 23 +-- ...g-the-global-packages-and-cache-folders.md | 21 ++- .../media/options-clear-caches.png | Bin 21118 -> 0 bytes .../media/package-sources.png | Bin 25257 -> 0 bytes ...eMapping_VSOptions_AddMappingCompleted.png | Bin 48524 -> 0 bytes ...urceMapping_VSOptions_AddMappingFilled.png | Bin 18744 -> 0 bytes ...urceMapping_VSOptions_AddMappingOpened.png | Bin 56709 -> 0 bytes ...kageSourceMapping_VSOptions_NoMappings.png | Bin 45233 -> 0 bytes .../media/vsoptions/configuration-files.png | Bin 0 -> 49645 bytes .../media/vsoptions/general.png | Bin 0 -> 58803 bytes .../media/vsoptions/package-source-add.png | Bin 0 -> 14490 bytes .../vsoptions/package-source-http-error.png | Bin 0 -> 23027 bytes .../vsoptions/package-source-http-warn.png | Bin 0 -> 21520 bytes .../vsoptions/package-source-machine-wide.png | Bin 0 -> 61416 bytes .../vsoptions/package-source-mapping-add.png | Bin 0 -> 13604 bytes .../package-source-mapping-missing-source.png | Bin 0 -> 19573 bytes .../vsoptions/package-source-mapping.png | Bin 0 -> 51085 bytes .../media/vsoptions/package-sources-page.png | Bin 0 -> 61023 bytes .../nuget-visual-studio-options.md | 161 ++++++++++++++++++ 21 files changed, 196 insertions(+), 47 deletions(-) delete mode 100644 docs/consume-packages/media/options-clear-caches.png delete mode 100644 docs/consume-packages/media/package-sources.png delete mode 100644 docs/consume-packages/media/packageSourceMapping_VSOptions_AddMappingCompleted.png delete mode 100644 docs/consume-packages/media/packageSourceMapping_VSOptions_AddMappingFilled.png delete mode 100644 docs/consume-packages/media/packageSourceMapping_VSOptions_AddMappingOpened.png delete mode 100644 docs/consume-packages/media/packageSourceMapping_VSOptions_NoMappings.png create mode 100644 docs/consume-packages/media/vsoptions/configuration-files.png create mode 100644 docs/consume-packages/media/vsoptions/general.png create mode 100644 docs/consume-packages/media/vsoptions/package-source-add.png create mode 100644 docs/consume-packages/media/vsoptions/package-source-http-error.png create mode 100644 docs/consume-packages/media/vsoptions/package-source-http-warn.png create mode 100644 docs/consume-packages/media/vsoptions/package-source-machine-wide.png create mode 100644 docs/consume-packages/media/vsoptions/package-source-mapping-add.png create mode 100644 docs/consume-packages/media/vsoptions/package-source-mapping-missing-source.png create mode 100644 docs/consume-packages/media/vsoptions/package-source-mapping.png create mode 100644 docs/consume-packages/media/vsoptions/package-sources-page.png create mode 100644 docs/consume-packages/nuget-visual-studio-options.md diff --git a/docs/TOC.md b/docs/TOC.md index e8c978940..19874212c 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -17,6 +17,7 @@ ### [nuget.exe CLI](consume-packages/install-use-packages-nuget-cli.md) ### [Package Manager Console (PowerShell)](consume-packages/install-use-packages-powershell.md) ## Configure NuGet +### [Visual Studio options](consume-packages/nuget-visual-studio-options.md) ### Package restore options #### [Restore packages](consume-packages/package-restore.md) #### [Troubleshooting](consume-packages/package-restore-troubleshooting.md) diff --git a/docs/consume-packages/Package-Source-Mapping.md b/docs/consume-packages/Package-Source-Mapping.md index ca6707525..c9b4cba54 100644 --- a/docs/consume-packages/Package-Source-Mapping.md +++ b/docs/consume-packages/Package-Source-Mapping.md @@ -5,8 +5,6 @@ author: nkolev92 ms.author: nikolev ms.date: 10/18/2023 ms.topic: conceptual -f1_keywords: - - "vs.toolsoptionspages.nuget_package_manager.package_source_mapping" --- # Package Source Mapping @@ -21,6 +19,7 @@ We also have suggestions for other [best practices](..\concepts\Security-Best-Pr Package Source Mapping was added in [NuGet 6.0](..\release-notes\NuGet-6.0.md). Starting with Visual Studio 17.5, you can add and remove Package Source Mappings with the Visual Studio Options Dialog. +For detailed information on all Visual Studio NuGet options, see [NuGet Options in Visual Studio](nuget-visual-studio-options.md). ### Visual Studio support @@ -55,34 +54,23 @@ To opt into this feature, you must have a `nuget.config` file. Having a single ` _From the Package Manager UI_ -- Select a package from the list to show it in the Details Pane. -- Press the `Configure` button to open the Package Source Mappings options page. +* Select a package from the list to show it in the Details Pane. +* Press the `Configure` button to open the Package Source Mappings options page. ![The NuGet Package Manager window in Visual Studio showing a selected package, and a highlight around the "Package source mapping is off" status with a `Configure` button.](media/packageSourceMapping_PMUI_Status_Off_Annotated.png) _From the Visual Studio Options Dialog_ - - Go to the `Tools` menu in the main Visual Studio toolbar, and choose `NuGet Package Manager` -> `Package Manager Settings`. - - Navigate to the `Package Source Mappings` page. +* Go to the `Tools` menu in the main Visual Studio toolbar, and choose `NuGet Package Manager` -> `Package Manager Settings`. +* Navigate to the `Package Source Mappings` page. -![The Visual Studio `Package Source Mappings` Options Dialog showing no package source mappings, with an `Add` button to create a new mapping.](media/packageSourceMapping_VSOptions_NoMappings.png) +For details about managing NuGet package source mappings, see [NuGet Options in Visual Studio](nuget-visual-studio-options.md#package-source-mapping). -3. Press the `Add` button in the `Package Source Mappings` page to open the `Add Package Source Mappings` dialog. - -![The `Add Package Source Mappings` dialog](media/packageSourceMapping_VSOptions_AddMappingOpened.png) -4. Enter a Package ID or Package Pattern, and select one or more package source(s) by toggling the checkbox for your desired source(s). - -![The `Add Package Source Mappings` dialog with a filled package pattern and selected package source.](media/packageSourceMapping_VSOptions_AddMappingFilled.png) - -5. The `Package Source Mapping` options page will show the newly created source mapping. - -![The `Package Source Mapping` options page showing the newly created source mapping](media/packageSourceMapping_VSOptions_AddMappingCompleted.png) - -6. Press `OK` on the Options Dialog to save changes to the applicable `nuget.config`. -7. The NuGet Package Manager window will refresh and reflect the new status of the selected package's source mappings. +The NuGet Package Manager window will refresh and reflect the new status of the selected package's source mappings. ![The NuGet Package Manager window in Visual Studio showing a selected package with the "Package source mapping found" status with a `Configure` button.](media/packageSourceMapping_PMUI_Status_Mapped.png) ### Enable by manually editing `nuget.config` + * Declare your desired package sources in your `nuget.config` file. * Following your source declarations, add a `` element that specifies the desired mappings for each source. * Declare exactly one `packageSource` element for each source in use. @@ -124,9 +112,9 @@ For maximum flexibility and control, NuGet requires that all packages match a pa ### Package Pattern requirements -All requested packages must map to one or more sources by matching a defined package pattern. In other words, once you have defined a `packageSourceMapping` element you must explicitly define which sources *every* package - *including transitive packages* - will be restored from. +All requested packages must map to one or more sources by matching a defined package pattern. In other words, once you have defined a `packageSourceMapping` element you must explicitly define which sources _every_ package - _including transitive packages_ - will be restored from. -* Both top-level *and transitive* packages must match defined patterns. There is no requirement that a top level package and its dependencies come from the same source. +* Both top-level _and transitive_ packages must match defined patterns. There is no requirement that a top level package and its dependencies come from the same source. * The same ID pattern can be defined on multiple sources, allowing matching package IDs to be restored from any of the feeds that define the pattern. However, this isn't recommended due to the impact on restore predictability (a given package could come from multiple sources). This may be a valid configuration if you trust all respective sources. ### Package Pattern Syntax @@ -165,7 +153,7 @@ For manual onboarding you may take the following steps: 1. Run [dotnet restore](/dotnet/core/tools/dotnet-restore) to restore dependencies. 1. Run [`dotnet list package --include-transitive`](/dotnet/core/tools/dotnet-list-package#synopsis) to view all top-level and transitive packages in your solution. * For .NET framework projects using [`packages.config`](../reference/packages-config.md), the `packages.config` file will have a flat list of all direct and transitive packages. -1. Define mappings such that every package ID in your solution - *including transitive packages* - matches a pattern for the target source. +1. Define mappings such that every package ID in your solution - _including transitive packages_ - matches a pattern for the target source. 1. Run [dotnet nuget locals global-packages -c](/dotnet/core/tools/dotnet-nuget-locals) to clear global-packages directory. 1. Run restore to validate that you have configured your mappings correctly. If your mappings don't fully cover every package ID in your solution, the error messages will help you identify the issue. 1. When restore succeeds, you are done! Optionally consider: @@ -174,7 +162,7 @@ For manual onboarding you may take the following steps: #### Automated onboarding using tool -Many repositories have a large number of packages and doing the work manually can be time consuming. The [NuGet.PackageSourceMapper tool](https://www.nuget.org/packages/NuGet.PackageSourceMapper) can automatically generate a NuGet.config for you, based on your project's known packages and sources. +Many repositories have a large number of packages and doing the work manually can be time consuming. The [NuGet.PackageSourceMapper tool](https://www.nuget.org/packages/NuGet.PackageSourceMapper) can automatically generate a NuGet.config for you, based on your project's known packages and sources. The package source mapper tool requires you to have completed a successful package restore in which it will read each respective `.nupkg.metadata` file generated as part of your build to best understand how you map your respective packages and sources. Tool not only covers top dependencies it also considers all the transitive dependencies when generating mapping. @@ -183,6 +171,7 @@ Tool has several option how to generate mapping pattern depending on your need, For an idea of how your source mappings may look like, refer to our [samples repo](https://github.com/NuGet/Samples/tree/main/PackageSourceMappingExample). > [!Note] +> > * There are no nuget.exe or dotnet.exe commands for managing the package source mapping configuration, see [NuGet/Home#10735](https://github.com/NuGet/Home/issues/10735). > * There are no means of mapping packages at package installation time, see [NuGet/Home#10730](https://github.com/NuGet/Home/issues/10730). > * There is a limitation when using the `DotNetCoreCLI@2` Azure Pipelines task which can be worked around by using `feed-` prefixes in your source mapping configuration. It is recommended however to use `NuGetAuthenticate` for your authentication needs and call the dotnet cli directly from a script task. See [microsoft/azure-pipelines-tasks#15542](https://github.com/microsoft/azure-pipelines-tasks/issues/15542). diff --git a/docs/consume-packages/install-use-packages-visual-studio.md b/docs/consume-packages/install-use-packages-visual-studio.md index 302e9d3cd..66f6cbfbb 100644 --- a/docs/consume-packages/install-use-packages-visual-studio.md +++ b/docs/consume-packages/install-use-packages-visual-studio.md @@ -6,9 +6,6 @@ ms.author: jodou ms.date: 03/03/2025 ms.topic: conceptual f1_keywords: - - "vs.toolsoptionspages.nuget_package_manager" - - "vs.toolsoptionspages.nuget_package_manager.general" - - "vs.toolsoptionspages.nuget_package_manager.package_sources" - "vs.nuget.packagemanager.ui" --- @@ -48,7 +45,7 @@ To find and install a NuGet package with Visual Studio, follow these steps: > In Visual Studio 17.11 and higher, package owners are shown as profile hyperlinks when supported by the selected package source. > Package ownership is defined by the package source. For example, see [Manage package owners on nuget.org](../nuget-org/publish-a-package.md#manage-package-owners-on-nugetorg). > - > In Visual Studio 17.10 and earlier, the package _author_ metadata is shown, which appears as plain-text. + > In Visual Studio 17.10 and earlier, the package *author* metadata is shown, which appears as plain-text. > For more information, see [Authors package metadata](../create-packages/package-authoring-best-practices.md#authors). - Select a package to see detailed package information. @@ -129,8 +126,6 @@ In this example, the ClassLibrary1 project is using EntityFramework 6.2.0, where Visual Studio ignores the order of package sources, and uses the package from whichever source is the first to respond to a request. For more information, see [Restore packages](package-restore.md). For information about how to load a package from a specific source, see [Package source mapping](package-source-mapping.md). -To manage NuGet package sources, follow these steps: - 1. To change the source from which Visual Studio loads package metadata, select a source from the **Package source** selector. ![Screenshot showing the Package source selector highlighted.](media/package-source-selector.png) @@ -139,21 +134,7 @@ To manage NuGet package sources, follow these steps: ![Screenshot showing the Package source settings icon highlighted.](media/package-source-settings.png) -1. In the **Options** window, expand the **NuGet Package Manager** node and select **Package Sources**. - - ![Screenshot showing the Options window with Package Sources selected.](media/package-sources.png) - -1. To add a source, select **+**, edit the **Name**, enter the URL or path in **Source**, and then select **Update**. - - The source now appears in the **Package source** dropdown list. - -1. To change a package source, select it, make edits in the **Name** and **Source** boxes, and select **Update**. - -1. To disable a package source, clear the box to the left of the name in the list. - -1. To remove a package source, select it, and then select the **X** button. - - If a package source reappears after you delete it, it might be listed in a computer-level or user-level *NuGet.config* file. For the location of these files, see [Common NuGet configurations](../consume-packages/configuring-nuget-behavior.md). Remove the package source in the files by editing them manually or using the [nuget sources command](../reference/nuget-exe-CLI-reference.md). +1. To manage NuGet package sources, see [NuGet Options in Visual Studio](nuget-visual-studio-options.md#package-sources). ## NuGet Package Manager Options control diff --git a/docs/consume-packages/managing-the-global-packages-and-cache-folders.md b/docs/consume-packages/managing-the-global-packages-and-cache-folders.md index aedb1a967..192a2af59 100644 --- a/docs/consume-packages/managing-the-global-packages-and-cache-folders.md +++ b/docs/consume-packages/managing-the-global-packages-and-cache-folders.md @@ -70,10 +70,13 @@ info : global-packages: /home/user1/.nuget/packages/ info : temp: /tmp/NuGetScratchuser1 info : plugins-cache: /home/user1/.local/share/NuGet/plugins-cache ``` + To display the location of a single folder, use `http-cache`, `global-packages`, `temp`, or `plugins-cache` instead of `all`. ## Clearing local folders +### Command-line + If you encounter package installation problems or otherwise want to ensure that you're installing packages from a remote gallery, use the `locals --clear` option (dotnet.exe) or `locals -clear` (nuget.exe), specifying the folder to clear, or `all` to clear all folders: ```cli @@ -103,9 +106,23 @@ nuget locals all -clear Any packages used by projects that are currently open in Visual Studio are not cleared from the *global-packages* folder. -Starting in Visual Studio 2017, use the **Tools > NuGet Package Manager > Package Manager Settings** menu command, then select **Clear All NuGet Cache(s)**. Managing the cache isn't presently available through the Package Manager Console. In Visual Studio 2015, use the CLI commands instead. +### Visual Studio + +Visual Studio supports clearing all local folders in the "NuGet Package Manager" options found under the **Tools > NuGet Package Manager > Package Manager Settings** menu command. + +On the General page, select **Clear NuGet local resources**. +Once started, this action cannot be cancelled. +A progress bar will be shown and will contain the final status of the command. + +The [Output Window](/visualstudio/ide/output-window) when selecting Show output from "Package Manager" will show additional details about the clear command, including any error messages. + +### Clear NuGet Local Resources + +![Clear NuGet local resources button highlighted in the General page of NuGet options](media/vsoptions/general.png) + +Managing the cache isn't presently available through the Package Manager Console. -![NuGet option command for clearing caches](media/options-clear-caches.png) +For more information, see [NuGet Options in Visual Studio](nuget-visual-studio-options.md#clear-nuget-local-resources). ## Troubleshooting errors diff --git a/docs/consume-packages/media/options-clear-caches.png b/docs/consume-packages/media/options-clear-caches.png deleted file mode 100644 index 0a99c9b3817ce71f23c067a7a164c7e15feaa3ca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21118 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 SXGjp<3Npi58kHEjME)1CDQ0T` diff --git a/docs/consume-packages/media/package-sources.png b/docs/consume-packages/media/package-sources.png deleted file mode 100644 index 507114bb888348f871affd0eb25264da5a3163cc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 25257 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%0DK7xNZC@XmXTl8RCrR|<e=mlnJSq*9gk+2fT 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 L7O-5wGWfp%t}JQ= diff --git a/docs/consume-packages/media/packageSourceMapping_VSOptions_AddMappingCompleted.png b/docs/consume-packages/media/packageSourceMapping_VSOptions_AddMappingCompleted.png deleted file mode 100644 index 15324be78a74c00b1a66964e85f9743bb159d557..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 48524 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 WU{pcPo$<4?@?1_uw&2;D5B~vX9b|t1 diff --git a/docs/consume-packages/media/packageSourceMapping_VSOptions_AddMappingFilled.png b/docs/consume-packages/media/packageSourceMapping_VSOptions_AddMappingFilled.png deleted file mode 100644 index 6e0e9390f6c916c0444e8854ff79e9cd7f9cd22b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18744 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

    | -| plugins-cache **4.8+** | A folder where NuGet stores the results from the operation claims request.
    • Windows: `%localappdata%\NuGet\plugins-cache`
    • Mac/Linux: `~/.local/share/NuGet/plugins-cache`
    • Override using the NUGET_PLUGINS_CACHE_PATH environment variable.
    | +| [global-packages](#global-packages) |
    • Windows: `%userprofile%\.nuget\packages`
    • Mac/Linux: `~/.nuget/packages`
    • Override using the NUGET_PACKAGES environment variable, the `globalPackagesFolder` or `repositoryPath` [configuration settings](../reference/nuget-config-file.md#config-section) (when using PackageReference and `packages.config`, respectively), or the `RestorePackagesPath` MSBuild property (MSBuild only). The environment variable takes precedence over the configuration setting.
    | +| [http-cache](#http-cache) |
    • Windows: `%localappdata%\NuGet\v3-cache`
    • Mac/Linux: `~/.local/share/NuGet/v3-cache`
    • Override using the NUGET_HTTP_CACHE_PATH environment variable.
    | +| [temp](#temp) |
  • Windows: `%temp%\NuGetScratch`
  • Mac: `/tmp/NuGetScratch`
  • Linux: `/tmp/NuGetScratch`
  • Override using the NUGET_SCRATCH environment variable.
  • | +| [plugins-cache](#plugin-cache) **4.8+** |
    • Windows: `%localappdata%\NuGet\plugins-cache`
    • Mac/Linux: `~/.local/share/NuGet/plugins-cache`
    • Override using the NUGET_PLUGINS_CACHE_PATH environment variable.
    | > [!Note] > NuGet 3.5 and earlier uses *packages-cache* instead of the *http-cache*, which is located in `%localappdata%\NuGet\Cache`. @@ -27,6 +27,54 @@ When asked to retrieve a package, NuGet first looks in the *global-packages* fol For more information, see [What happens when a package is installed?](../concepts/package-installation-process.md). +## global-packages + +The *global-packages* folder is where NuGet installs any downloaded package. +Each package is fully expanded into a subfolder that matches the package identifier and version number. +Projects using the [PackageReference](package-references-in-project-files.md) format always use packages directly from this folder. +When using the [packages.config](../reference/packages-config.md), packages are installed to the *global-packages* folder, then copied into the project's `packages` folder. + +### Cleaning the global-packages directory + +The global-packages directory needs to be manually cleaned to remove packages that are no longer used. +You can do this with the `dotnet nuget locals global-packages --clean` command, or the "clear NuGet local resources" button in Visual Studio's options (equivalent to `dotnet nuget locals all --clear`). +After clearing the global-packages directory, you will need to restore your projects again to redownload all required packages. +In Visual Studio, you may need to reload your solution to clear NuGet's "up to date restores" cache, or alternatively do a command line restore (for example, within Visual Studio's terminal window) with `msbuild -t:restore your.sln`. + +To clean only unused packages, it's a two step process. +First, there is a [nuget.config setting `updatePackageLastAccessTime`](../reference/nuget-config-file.md) that should be enabled. +This setting will cause NuGet to update each package's `.nupkg.metadata` file when it is used in a restore. +When restore runs, but a project is considered already up to date, the package timestamps are *not* updated. +The `.nupkg.metadata` file is the last file that NuGet will create when downloading and extracting packages during a restore or install, and is the file that restore uses to check if a package has been extracted successfully. + +Second, run a tool to perform the cleanup. +After the `updatePackageLastAccessTime` setting is enabled, we recommend waiting a few days to make sure that all the packages you use regularly have had their timestamps updated. + +At this time, NuGet does not provide a tool or command to do this. +You can [add a 👍 reaction to this GitHub issue](https://github.com/NuGet/Home/issues/4980) to signal your interest. +Some community members have created their own open source NuGet cleaner tools that you can search for. + +If you are going to write your own cleanup tool, it is important that the `.nupkg.metadata` file is deleted if any of the other package files are deleted, so we recommend that this file is deleted first. +Otherwise projects referencing the package may have unexpected behavior. +If writing a cleanup tool in .NET, consider using `ConcurrencyUtilities.ExecuteWithFileLocked[Async](..)` from the [NuGet.Common package](https://www.nuget.org/packages/NuGet.Common), passing the full nupkg path of the package directory you're going to delete as the key, to avoid deleting a package that restore is trying to extract at the same time. +The global packages directory can be programatically found with the [NuGet.Configuration package](https://www.nuget.org/packages/NuGet.Configuration). +Use `Settings.LoadDefaultSettings(path)` to get an `ISettings` instance (you can pass `null` as the path, or pass a directory if you want to handle solutions with a nuget.config that redirects the global-packages directory), and then use `SettingsUtility.GetGlobalPackagesFolder(settings)`. +Alternatively, you can run `dotnet nuget locals global-packages --list` as a child process and parse the output. + +## http-cache + +NuGet will cache copies of most NuGet feed communications (excluding search), organized into subfolders for each package source. +Packages are not expanded, and files with a last modified date older than 30 minutes are typically considered expired. + +## temp + +A folder where NuGet may store temporary files during its various operations. + +## plugin-cache + +A folder where NuGet stores the results from the operation claims request. +See the [cross platform plugins reference](../reference/extensibility/NuGet-Cross-Platform-Plugins.md) for more information. + ## Viewing folder locations You can view locations using the [nuget locals command](../reference/cli-reference/cli-ref-locals.md): diff --git a/docs/reference/errors-and-warnings/NU1802.md b/docs/reference/errors-and-warnings/NU1802.md index da9738ae8..7e194460e 100644 --- a/docs/reference/errors-and-warnings/NU1802.md +++ b/docs/reference/errors-and-warnings/NU1802.md @@ -17,6 +17,7 @@ Updating last access time on file "C:\packages\contoso.library\1.0.0\.nupkg.meta ### Solution -You have enabled an experimental feature that updates the last access of the .nupkg.metadata file in the NuGet global packages folder. +You have enabled a feature that updates the last access of the .nupkg.metadata file in the NuGet global packages folder. Failures are likely to be issues with permissions. -The details of the failure reason will be contained in the error message. Consult that information for the exact action. \ No newline at end of file +The details of the failure reason will be contained in the error message. +Consult that information for the exact action. diff --git a/docs/reference/nuget-config-file.md b/docs/reference/nuget-config-file.md index 355d1b37a..83aa92383 100644 --- a/docs/reference/nuget-config-file.md +++ b/docs/reference/nuget-config-file.md @@ -30,13 +30,14 @@ Contains miscellaneous configuration settings, which can be set using the [`nuge | Key | Value | | --- | --- | +| defaultPushSource | Identifies the URL or path of the package source that should be used as the default if no other package sources are found for an operation. | | dependencyVersion (`packages.config` only) | The default `DependencyVersion` value for package install, restore, and update, when the `-DependencyVersion` switch is not specified directly. This value is also used by the NuGet Package Manager UI. Values are `Lowest`, `HighestPatch`, `HighestMinor`, `Highest`. | | globalPackagesFolder | The location of the default global packages folder. The default is `%userprofile%\.nuget\packages` (Windows) or `~/.nuget/packages` (Mac/Linux). A relative path can be used in project-specific `nuget.config` files. This setting is overridden by the `NUGET_PACKAGES` environment variable, which takes precedence. | -| repositoryPath (`packages.config` only) | The location in which to install NuGet packages instead of the default `$(Solutiondir)/packages` folder. A relative path can be used in project-specific `nuget.config` files. | -| defaultPushSource | Identifies the URL or path of the package source that should be used as the default if no other package sources are found for an operation. | | http_proxy http_proxy.user http_proxy.password no_proxy | Proxy settings to use when connecting to package sources; `http_proxy` should be in the format `http://:@`. Passwords are encrypted and cannot be added manually. For `no_proxy`, the value is a comma-separated list of domains the bypass the proxy server. You can alternately use the http_proxy and no_proxy environment variables for those values. For additional details, see [NuGet proxy settings](http://skolima.blogspot.com/2012/07/nuget-proxy-settings.html) (skolima.blogspot.com). | | maxHttpRequestsPerSource | Controls the maximum number of parallel requests sent from NuGet to every package source for package dependency resolution and downloads. The default value on `dotnet.exe` is `Int32.MaxValue` which is derived from `HttpClientHandler.MaxConnectionsPerServer` property. This setting has no impact on `dotnet.exe` for `Mac OS` because the throttling limit is set to `16` to avoid too many open files error. The default value for `NuGet client tools` that runs on `.NET Framework` such as `Visual Studio` and `nuget.exe` is `64` on `Windows` and `1` on `Mono`. The default value for `Packages.config` style projects is set to `Environment.ProcessorCount`. Configuring `maxHttpRequestsPerSource` property to a value less than the default could impact NuGet performance. | -| signatureValidationMode | Specifies the validation mode used to verify package signatures for package install, and restore. Values are `accept`, `require`. Defaults to `accept`. +| repositoryPath (`packages.config` only) | The location in which to install NuGet packages instead of the default `$(Solutiondir)/packages` folder. A relative path can be used in project-specific `nuget.config` files. | +| signatureValidationMode | Specifies the validation mode used to verify package signatures for package install, and restore. Values are `accept`, `require`. Defaults to `accept`. | +| updatePackageLastAccessTime | When set to `true`, restore will update the last access time of the `.nupkg.metadata` file in the global packages folder during restore. See [the documentation on the global packages folder for more information](../consume-packages/managing-the-global-packages-and-cache-folders.md#global-packages) | **Example**: @@ -48,6 +49,7 @@ Contains miscellaneous configuration settings, which can be set using the [`nuge + ``` From 456eba1a4e079e603f60f9441abc87e2f4896932 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Thu, 16 Oct 2025 16:14:31 +1030 Subject: [PATCH 975/988] Add workflow to create main to live PR twice a month (#3488) --- .github/workflows/merge-main-to-live.yml | 92 ++++++++++++++++++++++++ 1 file changed, 92 insertions(+) create mode 100644 .github/workflows/merge-main-to-live.yml diff --git a/.github/workflows/merge-main-to-live.yml b/.github/workflows/merge-main-to-live.yml new file mode 100644 index 000000000..8d2b7e750 --- /dev/null +++ b/.github/workflows/merge-main-to-live.yml @@ -0,0 +1,92 @@ +name: Merge main to live + +on: + schedule: + # Runs on the 1st and 15th of each month at 00:00 UTC + - cron: '0 0 1,15 * *' + workflow_dispatch: # Allow manual trigger + +permissions: + contents: read + pull-requests: write + +jobs: + check-and-create-pr: + runs-on: ubuntu-latest + # don't run in forks + if: github.repository == 'NuGet/docs.microsoft.com-nuget' + steps: + - name: Check if live is behind main + id: check + env: + GH_TOKEN: ${{ github.token }} + run: | + # Use GitHub API to compare branches + COMPARISON=$(gh api repos/${{ github.repository }}/compare/live...main --template '{"status": "{{.status}}", "ahead_by": {{.ahead_by}}, "behind_by": {{.behind_by}}}') + + echo "Comparison result: $COMPARISON" + + STATUS=$(echo $COMPARISON | jq -r '.status') + AHEAD_BY=$(echo $COMPARISON | jq -r '.ahead_by') + BEHIND_BY=$(echo $COMPARISON | jq -r '.behind_by') + + echo "Status: $STATUS" + echo "Main is ahead by: $AHEAD_BY commits" + echo "Main is behind by: $BEHIND_BY commits" + + echo "ahead_by=$AHEAD_BY" >> $GITHUB_OUTPUT + + # If status is not 'identical', live is behind main + if [ "$STATUS" != "identical" ] && [ "$AHEAD_BY" -gt 0 ]; then + echo "Live branch is behind main by $AHEAD_BY commits" + echo "needs_pr=true" >> $GITHUB_OUTPUT + else + echo "Live branch is up to date with main" + echo "needs_pr=false" >> $GITHUB_OUTPUT + fi + + - name: Check if PR already exists + if: steps.check.outputs.needs_pr == 'true' + id: check_pr + env: + GH_TOKEN: ${{ github.token }} + run: | + # Check for existing open PR from main to live + EXISTING_PR=$(gh pr list --base live --head main --state open --json number --template '{{range .}}{{.number}}{{end}}') + + if [ -n "$EXISTING_PR" ] && [ "$EXISTING_PR" != "null" ]; then + echo "PR already exists: #$EXISTING_PR" + echo "pr_exists=true" >> $GITHUB_OUTPUT + echo "pr_number=$EXISTING_PR" >> $GITHUB_OUTPUT + else + echo "No existing PR found" + echo "pr_exists=false" >> $GITHUB_OUTPUT + fi + + - name: Create pull request + if: steps.check.outputs.needs_pr == 'true' && steps.check_pr.outputs.pr_exists == 'false' + env: + GH_TOKEN: ${{ github.token }} + run: | + # Create PR to merge main into live + gh pr create \ + --base live \ + --head main \ + --title "Merge main to live - $(date +%Y-%m-%d)" \ + --body "This is an automated pull request to merge the latest changes from main into live. + + **Scheduled merge**: This PR was automatically created on $(date +%Y-%m-%d) as part of the bi-monthly sync process. + + Please review the changes and merge when ready." + + - name: Summary + run: | + if [ "${{ steps.check.outputs.needs_pr }}" == "true" ]; then + if [ "${{ steps.check_pr.outputs.pr_exists }}" == "true" ]; then + echo "✅ Live branch is behind main, but PR #${{ steps.check_pr.outputs.pr_number }} already exists" + else + echo "✅ Live branch is behind main by ${{ steps.check.outputs.ahead_by }} commits. Pull request created successfully" + fi + else + echo "✅ Live branch is up to date with main. No action needed" + fi From 515396e899c8e821c8bd8d3863f6f2474a7c3318 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Tue, 21 Oct 2025 09:23:39 +1030 Subject: [PATCH 976/988] Remove auto PR workflow (#3490) --- .github/workflows/merge-main-to-live.yml | 92 ------------------------ 1 file changed, 92 deletions(-) delete mode 100644 .github/workflows/merge-main-to-live.yml diff --git a/.github/workflows/merge-main-to-live.yml b/.github/workflows/merge-main-to-live.yml deleted file mode 100644 index 8d2b7e750..000000000 --- a/.github/workflows/merge-main-to-live.yml +++ /dev/null @@ -1,92 +0,0 @@ -name: Merge main to live - -on: - schedule: - # Runs on the 1st and 15th of each month at 00:00 UTC - - cron: '0 0 1,15 * *' - workflow_dispatch: # Allow manual trigger - -permissions: - contents: read - pull-requests: write - -jobs: - check-and-create-pr: - runs-on: ubuntu-latest - # don't run in forks - if: github.repository == 'NuGet/docs.microsoft.com-nuget' - steps: - - name: Check if live is behind main - id: check - env: - GH_TOKEN: ${{ github.token }} - run: | - # Use GitHub API to compare branches - COMPARISON=$(gh api repos/${{ github.repository }}/compare/live...main --template '{"status": "{{.status}}", "ahead_by": {{.ahead_by}}, "behind_by": {{.behind_by}}}') - - echo "Comparison result: $COMPARISON" - - STATUS=$(echo $COMPARISON | jq -r '.status') - AHEAD_BY=$(echo $COMPARISON | jq -r '.ahead_by') - BEHIND_BY=$(echo $COMPARISON | jq -r '.behind_by') - - echo "Status: $STATUS" - echo "Main is ahead by: $AHEAD_BY commits" - echo "Main is behind by: $BEHIND_BY commits" - - echo "ahead_by=$AHEAD_BY" >> $GITHUB_OUTPUT - - # If status is not 'identical', live is behind main - if [ "$STATUS" != "identical" ] && [ "$AHEAD_BY" -gt 0 ]; then - echo "Live branch is behind main by $AHEAD_BY commits" - echo "needs_pr=true" >> $GITHUB_OUTPUT - else - echo "Live branch is up to date with main" - echo "needs_pr=false" >> $GITHUB_OUTPUT - fi - - - name: Check if PR already exists - if: steps.check.outputs.needs_pr == 'true' - id: check_pr - env: - GH_TOKEN: ${{ github.token }} - run: | - # Check for existing open PR from main to live - EXISTING_PR=$(gh pr list --base live --head main --state open --json number --template '{{range .}}{{.number}}{{end}}') - - if [ -n "$EXISTING_PR" ] && [ "$EXISTING_PR" != "null" ]; then - echo "PR already exists: #$EXISTING_PR" - echo "pr_exists=true" >> $GITHUB_OUTPUT - echo "pr_number=$EXISTING_PR" >> $GITHUB_OUTPUT - else - echo "No existing PR found" - echo "pr_exists=false" >> $GITHUB_OUTPUT - fi - - - name: Create pull request - if: steps.check.outputs.needs_pr == 'true' && steps.check_pr.outputs.pr_exists == 'false' - env: - GH_TOKEN: ${{ github.token }} - run: | - # Create PR to merge main into live - gh pr create \ - --base live \ - --head main \ - --title "Merge main to live - $(date +%Y-%m-%d)" \ - --body "This is an automated pull request to merge the latest changes from main into live. - - **Scheduled merge**: This PR was automatically created on $(date +%Y-%m-%d) as part of the bi-monthly sync process. - - Please review the changes and merge when ready." - - - name: Summary - run: | - if [ "${{ steps.check.outputs.needs_pr }}" == "true" ]; then - if [ "${{ steps.check_pr.outputs.pr_exists }}" == "true" ]; then - echo "✅ Live branch is behind main, but PR #${{ steps.check_pr.outputs.pr_number }} already exists" - else - echo "✅ Live branch is behind main by ${{ steps.check.outputs.ahead_by }} commits. Pull request created successfully" - fi - else - echo "✅ Live branch is up to date with main. No action needed" - fi From 49e5e25c4c43d7a66b74a60a022d13b4f918425a Mon Sep 17 00:00:00 2001 From: Pranathi Bora <56752791+pranathibora14@users.noreply.github.com> Date: Thu, 23 Oct 2025 16:51:24 -0700 Subject: [PATCH 977/988] Added sponsorship feature to nuget.org documentation (#3489) * Added sponsorship feature to nuget.org documentation along with photos --- docs/nuget-org/TOC.md | 1 + docs/nuget-org/media/sponsorship-add-link.png | Bin 0 -> 61553 bytes ...ponsorship-button-package-details-page.png | Bin 0 -> 161149 bytes .../media/sponsorship-display-links.png | Bin 0 -> 130177 bytes .../sponsorship-link-error-manage-package.png | Bin 0 -> 75623 bytes ...ponsorship-section-manage-package-page.png | Bin 0 -> 89337 bytes .../package-sponsorship-on-nuget-org.md | 118 ++++++++++++++++++ 7 files changed, 119 insertions(+) create mode 100644 docs/nuget-org/media/sponsorship-add-link.png create mode 100644 docs/nuget-org/media/sponsorship-button-package-details-page.png create mode 100644 docs/nuget-org/media/sponsorship-display-links.png create mode 100644 docs/nuget-org/media/sponsorship-link-error-manage-package.png create mode 100644 docs/nuget-org/media/sponsorship-section-manage-package-page.png create mode 100644 docs/nuget-org/package-sponsorship-on-nuget-org.md diff --git a/docs/nuget-org/TOC.md b/docs/nuget-org/TOC.md index b102dd1e7..4c01db05f 100644 --- a/docs/nuget-org/TOC.md +++ b/docs/nuget-org/TOC.md @@ -8,6 +8,7 @@ ## [Package ID prefix reservation](id-prefix-reservation.md) ## [Package deprecation](deprecate-packages.md) ## [Package readme](package-readme-on-nuget-org.md) +## [Package sponsorship](package-sponsorship-on-nuget-org.md) # Policies ## [Data Requests](policies/Data-requests.md) ## [Dispute resolution](policies/dispute-resolution.md) diff --git a/docs/nuget-org/media/sponsorship-add-link.png b/docs/nuget-org/media/sponsorship-add-link.png new file mode 100644 index 0000000000000000000000000000000000000000..3274427db1bfc25cb2abeb84ffc791fb4c2dda69 GIT binary patch literal 61553 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 literal 0 HcmV?d00001 diff --git a/docs/nuget-org/media/sponsorship-button-package-details-page.png b/docs/nuget-org/media/sponsorship-button-package-details-page.png new file mode 100644 index 0000000000000000000000000000000000000000..a01f0644f996063e1662b08ae3980102d0dfd1e1 GIT binary patch literal 161149 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%0A1}I&rY%`ecS#<)7*{5-^r-S zqyA@RyQU?4jjADL@%NwbxWDgb{4|hu`p$S~_BqlPq}#%hRm`kS^6R3gz;G*YXeO zK3}~1JKUoh<$g$jG?Ob;ec5Sg+G#==U^bRXKBRjlIJpIuyQz@_CQai#HFHcC+(7-f zA5fbcT2U*miE;~k2f8vx)6%N5mgg{E)lK=|Kd?mo zw0d)nB00Pzi2KI}cKt>_Z7%6!FJqOjnv%IRabmLf$PleC z(c@%k(DT}xK}2t5f!*mNGJP%C22j=k7m8xJDU@Qxk@*K*@NF5#3D@+`LxPpHS-UOrXl7&&E9?AS^1k9o2awB&=UxmF}Z|7`b4V~HzulY6LX-y z=nv*b<0C8}Fokmv@An~>UvR7r@lk~s)_8HQ9n}`M%oZmE<}5?S7@bKlu!bg@c>D)qtLC? z43|})-`^#3%ywa&t5yxC#9s+doKIatTMxUr3yZ?Oh0tcaH^F`5=$WlSJenY{9aNbo{Gx_Qyrz>xa!pjrwCSEA~DBKHs@QKWqZ$v2tQ3tckfzg3S1@R;#Pi9Gpbr;eS?6 z!Kw{d`S)LSCTP|0Wc9(#gtz{AD((KRSqUo>@SMI(Y+hHlYrdNsAxhND6reNfEdI3a zk(W`6J?hRCI0u~xzpg!GpeygL=4fshwR&EdLBaFb);(K3*JaPQ2D3vN-O@!8>wo%v z0IU7JXn~3Uf0{R9Dl+Y;1;;BQ&Ypp#aTu;2;lqBh&?jYeMNvIZXJb`MBAt{jj`LUR zDHKaY{M6~C*xG5%9ynJog$MaFP1PF{+g0?mPBdvC!$jgmMyxEWESemC$hkte5rN+n z>9ty>+LQQ$&-(+Lb$CceGjl}MT}tNd6V$yjF(}QgHg_&-&~&!(Qb;1pvLQ%0uF2PTll;vE*A3V7 za~ZbVwM)bFoa0L`8G5=$hRg^9J?Wa$xQ6=LOE;q-(y8zhwIdsw@9Q$hBa4r@_DoXlV<^&{YPJ+9y7y65$EmrLsDWlg5Kw=Zyn z&Jy4Dd@4~pV*p#{ao!#{eu+=a957DQQf}86eZxA6YFua(B52ZNNtn#Y1 z08yzf*2%-vgeHIk(QY;eBHx~KFV@}+%7rMr=Kci>?ejKoJ5)pg8E9|P(mVfRqcj)W=UGl=Rd!n z4#If(5F<%c967`3rtsCKsTm@5p!_oImj~ZDg)+Lk4dMy|y_@69xrHd=a8utel2yCQ z0q`;WZ56~DqLhXrg1YaNfI^V~EF3KBGw(_j0V}dJJ5s9kWFlZmAFWf+t%so(AQBD0 zInozn*pso}fANf4^w*LI>*F5*3A>*3QDaXQDpOK`Z{nQ@qQ0PyX4i|Exwiz$Vq<}J zd3$s@H)ls{il<8Urm_@ArRvN-7lzf?9Xf{OJ*M6wJ%l|yNicI-A=1K_i@Vm!(RjqKkzHjkEf! zKZE!UQMi?~W{1h`MjDFfp!-w4u?bZs1E`Rb2#rSBP6$?zp;>4NFuPfKNSn=#E*(N! zy~92S9~j>dXcPG)lJY+BaN#q+7t5B_s_?9I$dCJQ?Ks2wg){;ZUP}Cj)4c;A>;>Z0 zwmCc5i7+zchU(GyUS{)RONT^{0+%wXGhRrqrN;}yr4w#d#k4x3h*>Kh zX}3rN<27Z$eD<&sT%MAA=f^x-8VT21jb!qF8*1~h%-?c7_D6kj}1n?Pr^%YI>bqDu@}~(tBgRMm6f_VmerLu#bEez@-`{ z2$hN7zB_Br2QkFieS{$jtDJAIff7?MfDdmof(n|J@->*8vcvcb5NJ0DZ)O%fU9G1! z@ymzao+rB}P_Xj=3OcJ&eKKT0uavdb+Km95G)p_a(a0hxb*L|Pu+rPtko$vb-J5LG zT39Ac>!^Yhb$@r9<1~mx4-p_)k?N*(1^M^9C*9mE5Pd(c<3Tqn9c|c?$em89{AYZP z2;gkAPxn2Zwq4MBUirZgB@cC=`+JnuwD13T;i&xQ-1EnIfENSfQyke^4f}{A?R*@EVRRE+0IIjM#nWFP>6Q( zD>JL7raJEc?^(Yi{oO!qPgj9dlwyZ3MMm`SLR2%pa==`c1@l>IdR)h^`hg4=I|;w)e1e*Ijpm%bE+nT&AF*BzM3+t z17uqdT#?1~H1Rl;D;{w`rU6FLbtjgnh98P$$KrK1oQ=HB7!K4rT*+|nardu(^|2R; z?AO2fpAm{21Op$9g%h{H17Ek5R3~$p<>`Y-(ZlOy$b>&5)w+Mlt_1j z2ntAvK}a)%baxwoq;!KwiNw$~z=+_`9YYQ=)G)wM!_b`Z`M=Ne_?~k(GFLe)*tSvpG`&EoQacifbQddHTg5WKvQfrnk9-MaS#-j@=KiJ2Cu@bclNN zEb3`RTP6iuMPECs2#FN0<=>A_H%LmAekg4|A6xriJDl&}sx@+g`X>7hD5@tXPyLOh zoLhBuSCC}b?;z3X2sRSXSF(hSf#{tMmlHd37jZRe)CY&eoVv*vX{RO0@<%@gj0{pL zPigSCPFB)IrI?d_8^iE+rD(*dUbm z-Gv>}aC@t&6d)Wpea|kzFvTqIV4D|U&g9*Nm`{U9=%STgQbjmD;0>rY=><5HV5Cfz zKj;1AH$B-56_o6$5JH**cwt9136(xrVk$R)iW&Y<)pu(>Wi%pKKtDa=ky zA0L_30<=gQk|1@WR@Ib#K{6hTe8rpbh?s3_zNKMP-JVvXl}L>t*7LQ;&yHs@x6`Q0 z6n-cH=*dSFmndX-B?h%5{hY06dx<^f#9rRre$_4;pX{)rmXV<4Y(bO~G5qX~Zu4)i zChEk}A>;bnjr8I!T>uLqKe1U#a;=JL9Gudhov>ZdDFjc~FAy#gh z?@tA$PAWzTE12$OGf=803s(@l5idjBCl_tfYMc1Jq&Yn(UGB#p{bAkaO#fce`E$zs z#({#W*NvHur{%9)Iu_orM44ytF_xh@&gg1xES@%-iiIR zG2K2jZ&ROe>FGfc7p<|D=CsARU96P#qnv%r@KsYr{ctgr;y1*jFPDdMB2+JXXU4|P z9hn{Hob+@UsAkR0Z^vKw3wV%fOifr(c5{=9jy!X92!2)PAdJZ18aCuek3=SA?5mLV zU%gNnRg`@B=FPMH0Hopd8?yL$UmM(C?`?29Yag6;@L9%OEXPr;=8PwnjPHcy!#a;fm{`e;|Q)0N9V;c=7g@UdEygn)iD= z-FT*LaMr-BGqiYdkjeMn5RvZdQ|u1MpE1LOp7pg?hvt;>wk%Jc&g89qvL%-t#{_)bx`9;^FJNO1^$+v>h%fyk(-D4mL+Wy^iAB^ISahrmXs0CR zYox2(+xJ3x07;Gwsj6=VhmmT*t%34L;<qfrc}f!l~(TSX8x?B?&!C@o6p`r_-esa9J`SNmtLg&8z$u71TZellz=4tII_3 zTtx^|G}(MO^>_{@v*x_ZFkY!?e>Ic!V`%t|e`UAG*ftxCWxclj_3(}(F)xwMTB7(s zI@x5IsG8Y&h#p;v^C6PW62fIpxqh@ZtzOz&@AUn;hzm~SIKKqm3DtI7UBJYA(u$;0 zZxxPx79~+H_wA3J<;ULaNV2MvCm5XQe!+i4S>%hRR7eZ1CB&Y>a00 z*6MxbN{yQ%f2KO$VdcxkLLsQ~x7UoHy?Gh`@2INr*1SznKv=J1}i1pkd;mX3lEg)u{ zw9kJl9p-)erW5-a9vC?qv22ucYY9XK^=unI1FXJ$cFlK7U=waoMqKfc^P82jn9 zTp}9?t0cqN$-4uNmwa1&ZDzDdfzo}xSB6P&rby1*eVdZ>g3pVW#RN)oCe2m~b7OR6 z%oH&i!p-l#AD$QzyV&yn&wba}jT0SOp=aF_Cu(LXsikSE$%{BZa z#vCH}LhA)r!T<7Xa!NfK$1etC21$+B*S!9&5j>&Rq&#+1pD-?8A3pQgK_nNIP zIMP_va~b9d(fNx*=|<k?dk>o&Hmc|$H-DOI`|jE%09dmzr^ieUK9${ z*1DGI+X`9e1^>9J4$4-Zb(%>gXo<@tce8yO`p9j3?#KdI>}ySJ$os}m`(L^0k$e$> zA(K%<(I>IZT@=-xq_Zq>==5vgjmFi48o>R1pLHn*ztGLi8;!%?oRD)oJu&S4 zjz9H%o8E|IDq$-au{Ry&)#%a-Nc)&e$DdbK=E`{t}XpO z*p~K<`W1j;MlyZi&3uZ+R@bAjyx)N|HYdv)Y5sch#(kiV4i7H$ix4J?om>KzgX1=h zb?9##ml8y&a}@e$e!=zu_A04toZe8VEWYyN;v)bXW#=9vz|=wJJ<>vLS(Q&oIZ?Wx*@Y>#Y1B$JvVG_`{@Xo<%2IFLgI{y475W8%?0 zrUs9iH$t=>p7CJ zj^a3?=cn!u)emFaHmDhuF1o~CxM-WdDs&LUl{zqM2yFf2Lkz9n$0mm3ijV(ZcVq2i z;pi`l&-hZtU9CKHs|1-H6ZTq!+kI(8i7Pa#4sGjrubfC9NZ2FKCd-Nw_xddXHJ@l} zV7=T6zFAZ2?{xX8pB}J4KL;s?n%*YQwl7_eQ%b_!oVrDRaex-b=Lkz&G@gXk=hsH=Tl$x0zeP%~g`{?5%e-+C|qp*NtQaC6vbbVQHwV!08b zdzwWlll+`*O;#rYqo_HkrmS2`c{*YSdJgY=Fn;vYx!*EexM!L^Rc*|S_x`y}(p-7N zt35TF)+rUC1Co!i85+AUwOH_wq%-AyPB+7<9gDF`()R=82|Fx&oT!D4mIP?%4CQ_hx2IeMibV4jAX= zN!Os^I=&C1VFUK)(|ZyMS(3SL&*n)7u;3Aw?3wyME!|@pokx_=ox4Q->C_P3- zY92%#q{~-(;i8t5K3TQB2n_E)dVDduQG1=(9aEOInDrZ1)Y=|7AxiY%_?h|fmgRvB zC*|k`7XyK6q8wLW`m97+Ns_GMX!`9(Gw(cWV3@WdhrRTfa>LQYN1j3nKI?lBmN(u4 z87*=-tzg0XL29)O9t#rQddv>F@|_-ilur-dd6kDq#HQN_2rE+a3i}LM!zwbF{^*@S zkgxNMJ;b@7)r$QI3fzB&wtmH2RyeyyEA8NmFJGP}a&R^}@2Y&G02tLZJJ_hHFl+=NM!G7V;mMawm}^IrQ;m`x4teaBI*mY7ubxiXb^B78#bqtAB)nchJld-6L z((W#cl8b`Csmg~|Ch9yXu-~}M@-y8J!6@(T>s>xal4wU?`(EQlM%O0!#=k>8Su(#hy z!0O)(;@DDib*_C7MCETB5f+1dsEVtO{rB5Jg`>M-16@*<1$Kj7Pxl6f@eUcD6#VFa z(T6H3s~5W1YTngA8Dq_3ll`tm;rI)u$?4eBo5xZ2Yf#Tv0bcdO#C*aRCoo^Y_dnlp zGQYBN$WHSvMFLRucfg)HS)9v&{nIr}iZaO(vGIDhY#3IwmlJyzbz3e=#AfQvLCMxB zw%q9N=5F!VgXIp0)f#lCyPlN$$>5d=EC0JxS(O{-H+rHnTW|iCdvH!dE5NI?y-lJ&7nRZ%p3c=xZM5oEi>U{YO~mM zo5Ig@yPtY}XFmN^JP)wF{S_;Oe>b(-dEDL}#Z)XXMR@!J=pw92=zE#&^D)4p^HX_8 zK)06#7F_%z9qYQ%@W?Cw+b64xbmAMNHQma~<#WA(pxN|=r{@_G*1Y*I8z|4rrDbDg zw5IpZN-ELCfqg%N+Wi7x?rX9BNHyiz7R9E<@x-;!h3);)>NR`GkfD1RM@~=eIV3qn z0&&{!8Sr=8c-AeHNRu7?rEo5cs&(&EXS)56?l0mH2Mfc-C1#}$m}8R`17pAZ@S{D` zvlc@Yl>r3RKcO9!RpXlMf-hDm)}N&tAHB?8I1GsD9u9Z5y2?cgutBnaQ0_8AY^7oS zoCC}_BPm4+h|ZJk1SJv)y^+TzE8%-H{hg&50ft%sm)BD3(6Rg!8_Rk89lr)vaq~M* zwwLUTQ4HtY{dD2cAM5O`=1rI1!SDG3YsntBxI&);a*Z+3}1hJ}GdDjfrT2&e?=kk#(tkX$M0-;`u%#l|+IL3jV4RI*Dje=N%| ze&d#gIpjASxk)bh@rUYdx?63P+*okmPB?q{ZQsQys&fAg{CZDI8%y3@=$Y4SW0vmk z0gAYUFyh#k9oGt##PAk7ae78M&>ii0+k{w&CVM`A*^*`F(IB2oJoo@GYgYDcKOk^D zxL9lE*=7M~rjzG5uqx>j*cIq8tQS7K(3^=D%-hUZxRXAI5Iy$?K>Td}!k7K9u$GJ zhdScC=9*V%CI?`iQJEt{n)Kr->Z8=#uf6y#_L}r(sP4Aa&K=NRt2B6&S*+&hL)HjuG>@EUxFo4014clW#3JxxB(ALhJSsU!fv6gjnaybb&? zp}a}pmiJ70^AN{d&>|$+i^*{RJYNCH$B3IPt==^#v3^h4M_X_LsIP+lt>MJ6hI!Z=|JOE@bc|5@(L^En3|-HA`zr6XtBlWwv?6rX&~dVON{QySu?Je=8pBdKc&j z?gsgGDdKEmq3f<3RQ~?x_##=KMOcpOm#rkYsVJ|`!J1NNT;PVga)1olYGQ4H0p|S1 zsh|fJzRRGQsx!y`A?~)V_T4HtK8kt2kCLKUjpxr{x~objog~^LPpPBlOp&Fb!Lwl8 zRb#l%807a5q0txX5ID%k!Ql-Msw#E`>-=z1UB>RiDa7W6lRIJpszyC1yMv?4HXq_A z+A(3$Z5YHzd#{h9w%h8Mj4fZXs&j}MV5%krAJ}5KJ3t$XSJHM?M+h~g!=Dg7j|cI{ zc=iR53jPJ%HfV9b_5sm};yNhHGkDVQvK!y|isX<~hjzgq&=-Rm;)@WMoqfpk3K#zIQOgThUAzz}q>Z$WYUDGehZ zpXcC4+1Z?hsTA3$?Ij3UhgQG`hv*# zI;<8Z#tmwMHmAY_e#9M6h0jEA&09MN*4Mb6edbD4B9W||#&b5&oj~h>{vY zpfpLub=CeeC;-apAC6Pc)I0|yZSP-rAL|tzX&m@piuUmZ`qQ4DfAA*Hp#gRLittwI7fE$YP{(( z9@Es07|s-x`7|XPZu9p5;cCf>bXv-+-oAkc{QIIo*$J^_? z0jl5A8@<8EMU%56X^C5Lc}tZW$2A+tF1n1}(??U@HZBr{jk8KqL9UT+05R25>ZFg% zh%1TWJ2YEL8S*C%f3o=0wDtj&CX#n;#>#e&v0bzJUtJT$89wkaLq(4!At(2du_Ir# z8)K zeX7L!U4ggF)z_Fkv!+=EQCryp5e4fJ7sqnhEh7+Cj-UN0N9*{6R3sb&#wtVOGggYA z$N^z2T-Ds?0`-_8hxX?Ktj31mexMhf%W;m$q8OYatk7)v9}6LoZ8gb^WjZi4^a@yn zd`*Q71d1f06>r=4-kGlL9CG)Wxk^|tkdjRN=mzs@d~(aDsAX$$`StZbSRA#4^_ z75dNj)5~@kUF(BRvGq@g(Tohtljm;NIKTs}GyuuGyu7plU;p;fA|riEdpOY$$NSd? zec4yPUWIobPF@&@DD+!iW+7B)`w3TG>l~9pu+_8)(MdLc=#{$X%gSzDixMdlD9HX2 z2x5$#$-)J6e>ho#Zo`gz#PQshqlm5)K8xKb%kL3QHfpnagKREYZk$vNFQ&jokhgCr~SrHWG*r$nd zI2aOj)2s>lDyzdFXU7ZpmOH;F(BGF5_{V6 z{G9$fwVd<7KargT?>-T1F`*e9m7o<6d?j;zg#pL*($qI8==n32if~06lWVgmgw`H& zm;hAiYnK@O2ODVUjaDCfpY?Qbb^o3Drl7D>oLwO4b+I&8u1#Nk>~o=bEy5*!!ev^! z^ASSbJR&aM@Q*yHosaI?s8t#_Q{t42qc{6qej*#s!ztZ2HNc*2Tj$%J!|Aw@#% zvp>#61~Sc>JQ_oI2E(cMbjH7~JvO=_oI38l%tvojR~PZ`(rXs%P4k)KhttB*cm1~9 zMd+iLwcmej)z<@mOT}Mpti2u-S~zZX-1Vz{0(xGOv&fm$Z)U9VYN~?E?@gwe@g>cU zslY@qNnT^>=0}~;evV;BqAr8V`hKl=ev4mGr<$U@vWxw7ixpBjPFawPd%Ok*(^_19 z{AOYe#*Y1x4vv2tJBozkf&~H&L260Gs~f=fvm5aXRs;Lc{P)671V|Lw-3@W|70{x9 zr&QQI25a0rVc@u(mq{}U;u*ssnBwZsJ%Y=UA%TF4O+}hW zdS~pp@NT1Vh6H7w=@O2e!d$&e>!%zI(jAX9m-%C1Z5EWa>PE=73j~}|c!mXzyr%&b zE8p4K1)(JPU9PrTc3Xkj@a}jDO83a0z428OWvz=|o+~f)G;=hlBQr)W@Jf*Cq-Jbe$uk@9FKmlG}d7ow`UQ`{aZyv`ISpU!6@LP3o3g zGJ1;y7d6wIhHE`K@-C4s4``Oo=B@>bu2Ic4jT=&KBpQ-H_s~GoF73RbG-R>bgjBDwNn^kxD}F|zlY$>J>&AQy>bQ!7b_mp^SW#z zUON9Ok*7PKjUH&GyS={9eNfRI3UKu6H5tzNJqG|<0{of3#LVTYb&CT1hhvjr0aSVG zDUSxkDg(tPv5CWN0{wQ-e3~`6$SJ7+1M2l=J10qypBz(vs>GDfa4ci#r>_w{(t<(E zLGSm{$@MQ4{gU64O5bDLpM{lRTBC!0_=YQ7K8N?g^VXmFJf92*P<4pukfl92lI@Dy z9o%n)xWBe;L!b{BNXSMc%od0;`i?jO*R#{RB&Z;am+RF|;MtY)(gQ+$->sY>g-|<<$Q-$M;|y&W z;>TmKWg`rogT1uIz~#}JI1nBbvoy-pE$hT_!ia)Ot-oG%a65D~HAaw;_*VjDQLCMu zkVnK9Cn5SG)|(bEhX;-Cbm;n$Q-*~WOl*2>Qy%G@Eo|4r?o~dw?YgJvtl8SkA|KW_ zoGMm~yAZCutOv7y+a0B&L+;iYJ#hSe*z9(#Szv5+eqPPbHrQ$}N>|#I4|p0Y%YEYM z2M^ZH-G&h=OCP#zfK55+`Ex#%?ai!N6Gt5Knbi(}wXy!5KL zfWVp*J5fllXoFn$Pyoz3p5H~XVb0bV?X`!PH67( z7(k2P_EW}FTA&{j3XUHyAq`7X4ISQBxbuhU&Gy+5U`2@ewI|QKK)JTy1!MNqoHpTD^-AVaWyC6@3CBK&xh(kBblPIx-CsbO(F*LwPLu?C2p z8`db_SruiFT&;)wwL;(P>nnJ+r;MA-M(x?T;_7Rl4D5X6dVh2ZAjDdnZ-VDc8@ASE z)1c`$U>lGZ;&u01$y6;69vtn3Grg#D-=`F+aB+mn{vyjJDff0vF}9yawGBHplqFiX z4MQjdou)|_zHTZEnH;xoAjEO(uXDF1kDs)9I^fomeBE$i=|a>UB51sgzU(G#@c0F)19I-%wLFxDH42|>X;>`2Nj+yoaRz#Q^MV?)Lfper5sI|W zdiE>$nh(=rq59UGc}%Vmf^ya&t)bO;`89h2xo;m}@4;wpfI*F!}MT?XWO?p@o-=Mfo49A`%yKJ==V;Aw-OGE!hFg!PWUp8X~ZQpCt;w zAaAfvt_QC&h{+boD{3${(qQJku~NZ^l1Mh%@SVC8jW3+EZVqyg)4mD6`&Wx(dl|Q<_6ao4h@-Dyc&%dQLf{16Q1+XymTXy>HLv*eo!Y$+0 zR`6*`asST_j>0j@zXy44(M{r}T27@zK=9`C^F~zDmP=E6t_}K544@xC3WzQ-!RwCm zjOAB63sIQ!h~+nh_Mem>gmJb}ocoEG>4P5u*{mNvR}aSUm*kKF`XOm@NWuF)oz9!b z{QfaMX>Be<@`R6e76ZFe=Z&B*`iqYIXT=+mgLOBUjkf6L7KAF#1Yv-FqR#1qiqT4> zEJ`1CzD8%1Di+gOPxhr97UJl(XxeJQ=-s5ifNYQ-Uhi&&q~=w2uY0t*z-!7(;IsV- z-RIk}e{CQCKdxzT9VnDzS5VmK;P#S~Ke;UsmxNL3GcMkl#m*A`<4x(F#%zqg4T4AC zO#4>%iM{O6t-}e)(6Bby%;dSwb+eoU9vbHyonGcIwu)TgA4WUdGK(TWxnXz+I>&Yv zGlkH67|kZZ3FYy_EFK^7I(OG2*i+_~5R1fOAy zHpwPHcsTRZd2v6M`D>-^cP0%MIW3GQ5gd~x`$Y6dmm#N>=BtbConw9_2M5-Q(FXS`6nfa&SUt=cvPCb>B`rz#!eyVTzMi`+W<6<4uq zmGug}ySG`zvfH^X$4|Dt?-uUdI@&K^%<5s~9%1U|+}%0aA>IBOnEP>=bO)iuk>|FQ zZY!Jf>C@(R3#rBP4TyJy5BszWs1mxg+t$Q3UH{UgBG#)LOa}*i?&fY%l z3nFn5V{}P6i$&mQcM~;8F`SDl)Zvl+pp@weYE>OAVweV>F_sMPll}65s>8i+wB5Ai zv%NY4=s((dL;&>_ZWYyR^|R+mbh+V52Ek;INo_GZN`N6xKj=H9q5(& z9_@!C&p}y_p{94Yj`w=w6)f&h7z=m4UOZw;`%(S=mABghN3Dg6Hp?1o5dG{ZP?a#- zchYtYMIo=eG)*RP)%#2lkpn7syL$}i`949=3@ zS5BEKKxu}C=C8hEjuo64jc`g1J0R6XM&E{y&-{mYFjvRu7=8~ODms{ffWm}m!%<1R z+4V{LjqJL~rERz&m}U`MG&Mg*J^FL>n=)HR zx4cd`7|v{@fR_h%a-uado}_QIy?Xec^&U1MY6K!ylhLx#Nf+2XNZqygU?7K3`rzpv zWQQ!r6pFvv){l_IE8!mbf%|L-QTT$J43b&QqZ6W`}>WO_{)_BmHY zDo5%)@d?JZn|0-O@V4gxoQK5Bs!HJwxS z8KOXR8?o9l#Q=$ez!Cm=j}3I7=S!w+_~LaHqVk>Xo&+QT;R!3AE1p*$I8klgL7nDv z{XVYUOuI!@H(Uqzyc;a%-DDP*Xe6&#SXkbF&i85V&XIiJi(Sl_S7%nrC5y#&qThFilHrSMYl^Hr)bH@u3GHxbww}kFz&@y+*18pWaMXmD z;V`0q#DY6z$Qkpl!qS)xR7PR;823Iehez@9gr#_VOtJwbH=iq^?_B@15a2#;1Am_Q zC5cI_X0LwUk=EO|XWx1Jz0`HFk~-Aqp)~FY+pW&6;5a6^+uQ3JK%5V@JkR3b*Up!8 z0kORG?*i^W>?UI(kQtc-D*0IMkTS~pdgp~rspNs;mUXpvh1aurFa%W_I9`t;Sfi_d zK+DX*Na{i*YW?R0L}rXKH}OYDQ77||9}1Q5LjoM8Q;kX7FEp2lw&YB>pvKEwXL->6 zxf6)(ekNV7n=$hZ!tYm)MbjG69=-3TZaB&ylHEwUrExXK>c`ij@|0flINGfUgOdg{T#k>5bl~{^4Q< zj{gqGxUH)!6_Y84=;{jZhq3#=Y3DSP`vuD*_A!p83q`U-=fEmJVq7e-_JIMPN&d8+|$NDvaYTyr`WsO zlAE|ISWB`Q2cOrgRAo60dll8zikjrjL7eYLYHzFG0-cJLXuxA2knpU=PKUf!N>>@3 z+U|O)K-rlpXZMgZoNlu1WzWumZu{fb?UsAUP~2V4X;F>v%D)fH-ni0=`Yj0ena&~KraNlcJQ03xRT6c zdcV7PCP76{DeCL|n(}>Xlvm&`FfforfC;Subf-F5(}1{RYP|0lr(WE-5`*%N2$|#H ztzUf#Y0X?aOAN*+#f|2CbD(#S&HBk45DlYneG9m`h7&U1NAU&o8oVsKAaC(5kE-oH zT^S~dDWuydWPyM}QuwHPj$yn6+_NXF3*!unGrmXh4E%cB;HW!ZYQc#EFV%|b<`0Hf zmzW2h@fMqP%tzipisNY`l9ulg`uEDPW|rnd*Jyx0KxEwPh@a5&yp!V@?-z^~r{=X6 z)_F4R2kMI+u61YS5KU6%?szgBQYT3Iy>Q`n@73}I&=g@Vhb~F#6x}Y!U3-ND_A9^C z-#GH?6uv-m^v#E*GFgK{`!{zd^@D?E>9KD-G^omESqE)z*I$Z=XTS?=|oglh6C_;JgfD8k4v^yPDHM%#Z8wejier!H0 z5sV7fwsK8dtaZAhqGEg_pkd#*yH+^5|L0bO*$N!MX6!ZWVI@{*yEiYdPvO1|F!lEp zr(U{NSim!eM4Cm6E{sp-$#s8ML5&u!!O0#0EieaA{X9oTm!G?9XS^+))x$G&Q_oLG z-a6XJ#`14i{1NdaevGxXQ&3Runsp$Wj}*1AmIJwfWX`WGF6Hk#%utEMfb=UYC%?Zg zf8#|k_Y$hR{2dz%RDa$bh^>HN$=Vl4i}FY*$#&3FBaHsISR9nba(9>0vb-cafNm~H zXX?7+wX+vBocNgBeR6^Hboi<(1bk!13|gdw_^D>7pZ>+GOLN;k1bGl$dWBMFex1 z1O>@!Yml=Yx^Qj~EGn>&6Gx=QnEwhSUYH*)D!X1}Ifx%rMQqhyU;5VP1LZbAwz3dI zHPVgfjiBd*eJu2YiVgm#GNjaw&jMz`7Lwuy9yo*c_?(ALHID52D6X6}@&*F4cpDDK zQo~CvC!kQOiE4ImMxgw#%SQ{0Zy#(>sG;WMOe}b=nw?1w?L$_4@WtVBVJ?@w$pdia zG3Slvx^2#BGCvGGlxAs#FhDI+ceP#9h-zB3*H7?a3k)3?hRRD6RW-(h5@LJM@(az^ z)^eJ3>a0YNcJ;%@>?QF+K^*9cELAd-&PUEEAQhYATlVe3FdzdQ=ob}?fB1A?$Gk4d zM26G`V%jre`8A$atz?*=;ZG7W8pU1rphEBFCeM+tua6#5@4a&UU-&ya8n9MUZky-N0UGECB zx6hWpg@Wd=mL!oeZArDFSnHW&%n=k%!MjX&$z>bUq_uwV5`7QXg*&Ie662(Dw72Zr zSC@#m7tTmH>T2~tTlUjFUy1PoygK~0XbH&}f6Y7xp9W)pS8O63i3@5tD*~CaaEJ&J zAZZ+C4mLeV5!~_2mPr-4Rj{DQomuP*9y$(EE!~=Z&)`o8>d*P==|Vcmg!NHolXT_h zcdA(6mw5FbjWvW>e zAMaCeFK#VnY4El0xXZ|jUQqJ3wKmYeBx88rFPwXgJuTUg5U#_hZeQ#dFnXY%9m;b67O!2JBC%b!_W|VvZ#T^u5;&rpjvm@QsE@$7H8mtb(L3!5I;W`~{wDEE zE$IA^w;ML&vQpZ6lltPGw@6D|Br&Huo)U4yrfViUn@@pP`JM>!Z%n&rnU9oHjSNg} z$7ODe_Vd?dOq$32QoDh#f9XbGPF`sYrbS4P7Nt1^?h8OW96;g0dH%mRRkml=({}wY zrPIKfG3e+U&zMga!#%GL$K>NaeDF63**zRUh|#GA4tqe+K7Bz~%~P^lIjC>e<7wSe zGo`WxXI}XZou@M$8!{qoWSW&}WXAx{z++|Tw8$kz90-HlOL*@nzkAdMliQIUopG2K zJN~zS@%>C((1E&Mkq6`L@W`@klrLcZKV2Kt?QuO!c<46b+3L*_PX_CrvO`?#!>Qu+p<=O_0lgW+jYNwe1ZNKd$rqj_zDl zO6Aek;>TIRJ1;lx2?d%jXOYaf%lix+CL?>OfG$grT$aO#3GP#nkNIdDlNnRc+)Mq= zD`jp5chE8O62lKqumscRz(|+2)OYnOTEQVuUeoJUTvt|B&)q4@ zxYo%|U3n1Lk#j+!zu=!4vLF|G?c0DUu$B|Lw0Cp~iAcN`F1X6j0H29}bdEf?R}B7e zXCX{7&wcld9y1KOKtOgpcZa?S!D%*2O3M{~h9Kv6Hm749vTiRC+*XrmyCFz=zQ#mO zI$!B5A0Rql*vVy7LQTj4#?C%`AWrm*Ta--D2c50V85SVaqJI%BJtx20dZ;~qPz;11 zi!}t#ycGKM8{&?zJ@K|&(Jd6{Si;cnU6*+iCbxD`DTqNsM`wp6_coy<<8c<&z_U0XD*KPCjP=-*q(2KE^nFyjD!1$+T{Xgg`6in%FlS?B)08U z{Xd|WJnK;>t9FeA)lUz1{M#gGKF17bbiCQ82In1U0Fi^+t)6-Mq)>ouWlJIPYa957 zML$?raN9XK9NkF--tS?WK5QQ{@?@H?3teuMK7nezJdL*vcxk#4hFF9gLvLE^-%eo$yr2yBf3D0%4CN%hUq{$k(1o~59N>GKf-;U&c5aDQxCV0^#j zQ>Ybo2-^>cG_$bSnige8*@b~C-?p1))$jjFabwfbBCK?g8^i;ThQzMJKDr#dzoona z^PvsuPVzjs?Rs;}_%iGO72Td322v#YeC?tC=ped2S?-`*J(&Fv&5+Z0k(Fn0V&Yb5 z>mVToS>}Y+Ug)sJY(Y~5v?@@=7l&Ca4_Fb+Hd#hyr)DATwvNKXE{sMJit|#+BA8O@WJo6e@F3Q#6*KSi}M{g7u z-T#qiWcr_|$^9MG&%#QXdI2XI?H4s}(wc&2d7b8~k`M%y@qv=sl5A^soe z0TKv?rE}chFdTNEicu%^9E?&k`ft>MMTV&D5HRKwO$`P6(<{*ly+dqQR?^i^OxO2O*EdlB37!T<(gOMFgFPDVN35znAD#SoP0@vc%lyBWa% zG@wl}52gIok}g}ioBQ8-=h+f(NoC5V(vn=upC5>h5aT6mgC|dlVaPUE-W(>!KVlTM zt{#Zg2V;6g53?38ARC$DWjZLdDGJT}1psXSu;3}H3m)26r}@{omo5AWfc^~ynT_|B z{sR;J*CE0`5i+aq8aFC*h;nLD>{#eL1n&L^BCTMXBU~mw^9LB0B0=KiABgiplYRVl z%~ZR&Cd(l*8*qIdQ#~0x>i!r#mS3vvVd{kS8YKHEmVLm6<8w>-SUMc(O5_(`Ou<5< z;fO_H?GqKsXXrE!8dTBQ7UbU9pkQIZ9;bc+X)SKeTbo@kz@4hOmyoh#pQe-NHzg|I zwqK~(UtINb*F*y#@3T6l34A8|Cq}%7u4b-}C%EzRyGeq(?M5nwDa*vi9vpQ(N>x*u6TWk84Wzxf+-5+bEdNR-~nN^d{=U)7j-UGKPC|d&(%QGH_lK07~_k8z02`Z4treiE+S9RG*CIeDtlQ4QhPN(ei;yRVd2 zldV@X(S}tikzo|OoFqs)hPCTHPEqNU?f5o`ro)Yy>#V2K4UQsadTIxj`F{Yd)r^<~ z?sNZ#Ix<;(s=&}nAz5i_T583)_x|;v2VMGh-&nRq;ClV5RWfWHgNA{4wdnFhtw4yP z{-p)@UE=+UR}EIor<1}~Lpt0)Kigut8@>H+?E6^1d}ZAuR&!4TW9yep)foegdJxPX z(F`79L*+eL)rt?p)_2>`h_SHBX`rWJxjM(*fUS%g-6LO_nK@R+mHP+G(cSiZH-v%} zki<|>+WjbvC=(~2t@Y}A zX)6<=y8`UspS=BDhNazlJ@eee)v#>Mcfu%=WI+vXfR{K)|9wm;{-JpxU35yqoguct z+m3?PB|0`jM3`cVgokp=-+6?>sPrn_ZthgVKemB3Z57<(@+zcd}Y`kTc)9 zpN_h$zi^eyEib>@!caTca~w>KAnr4tCOJqgrm_=GeXA`rwHsO#EsR&0JrLuN?{2N| z%b&v;RPv{cC2c1I2U!1NJQeK?6pJp8sNs>jt335i^Xbh@GOJG<=#V^)dLOzO>5tj* z(oy*Z{-U*#RTz%4OJ{z>7aORl&G2Qi62gcmXXVXrROAebsSv`AV{SVsiak~nYghzB zI2Xwh<<+E&G~YXMD)tskDt6>N(g!X0{f|nC-?h1e<$dhX=DPaXb{Wth61b~9#rW3g zC|~@1#VzW4PNi36`g;9PHdE_!{{e$0C8yU#DDUE+zOJ>DR~gO)cF3!$lo6i18dnzA z!YCT|zKg8|kG>{qCuiA`xT@U>rkE=`xJ*7>o`~CN@HKpW10Q?AVEqsrG_za}u8;U` z*d8cb5V*zvyI|nPQ4st}qE0c0p&;#5&Bg=;wZhh<;8X04Y)-wy1EvnMMPC;)P2Nl? zH!`}3H?Gz;n@%_{l(hn_Q3pv3a2VLVim15Bn%JWRkxRpJkKo*O5d~Gr4Ye}QoqPCM zdWj3yt|!tv4>&Q*r817$Qa@)(9r#+L74uPRrXg4S{6}WCTB~rp5M-Y5PJ`TmB>iDw z+n=R69IOmaz>KPWNl%1iurv=&-V3Sdq`|xQ))SdorADwdfTFvf!hA$OMMrb*jLJPD zV<67au!xBwz*6H1wvOvOKN|DCIVk{0S zxR*k4cMC;|yL++Vq`12T2p&AhN%ua_^X~H0B#$1% zKRDau&gpxG`Re*)c*Xo1(JJQEA%AyLd3L#=0|V)2+w10_nm`0OsgZT5IYX;MOS z^h2<16?AwdUyzFsLkjweQyAttO9an*X%BEjd&|X?mgESqtqA$9dVG}S^11$)P(NzN zFUw?VSVZwImmFPx;i7CL%pnc42?(@02JE&9UZJ+#Z6B*pY#Sny;-2C z=OwghQoS{0CBk9;#VMS88%vvp?%7*OriA@jEpMr@(c{08dQ_8u0M^*@QaVJ7TEt_T zvTrk-$yI^fbb|$sE=uM6VLwq#?%^Zz%*i;lz2Xa)=>1&|6A{^Q1gW1}vGcCMOzR6e z0zt}llCnof27K52zYP^wb!NpnxZU68Dd#Pz_me?hu7;r=)X2pj1RRw@;}ntGkhy8l+exI zUr?rj(z|oML~r4rKbs{_n9cdty`uXxZz<_<&NA`zfeHHLXe|L`9&Jwmr(l~{85iHm zysV-)`*2unHmm;EydjPKf%A(n{7}@WPGIOmU3z@X2dkEAQ#Gps$0spMOMZki!#P@J zR1jqL1Jh5!FbV?OQJY`{YP{yzPI*ApWE!UUS!jylgHW(H>CU$DNM4-hE~_G>{5y4Q zIW2V6ZaC~cY)tqGVuxNU7(73(Gl%<5Ma`Sn*cZThi{^@g!Hpq>Ya2AoQdn;%8Hbhp zU%l`z1dyc$X=$cTR~UiYU2q9b7`nSO*k#oL-Q@{e^(7_p+4G_q8!O@lvc&@3pUNT* z?*((;Vv)z18L0G1tO;IjJOZ!HzM*|t73%o_zG%$pXb~Zv*H?)52((#K)uIT*EYZRZ z><74OoX{=^O97vQy@hq}=feCLhaRDrbsuA$p`cwUqGtrlHu zx!r>JpGI#xJdqsbt42hxo~XyH!_2T47DF+*w+!yqZM?Jss(v^j;Y77g@Xz}rfdYTN zki(Z&M;KvLF3(S;XjiEt>&5;%Y12wp#Wx0Ci*bY#gwTC(kwbLZLH*1_-$7+L-;LAe ze9G~;g|?uXR=}@Pd#SyfA8VleWw9vK-cH(%z`W?z3&^o*VDETnsFgdtX&PFw`PeK7 z{^|JklwW9XlqI|){WV&{lfbx^%5EpZ!~xZ?ldR`7lxO+VHzJP~xow-z?B+;1L$ePZeH5bL{oZuF;I*f zbW9P%^#dx=NsH!d*3uRx8!1dz0!YQ_tzv8^(wB30^IbaY`jnNxmF3=?5vW}z7Ws=3 zh~^*@J{W?5TOhF1yji4A)G_OMqKT2&IEVak^xi*kPe;}Rgw0O3xKLe)a3Oditn;gO zI*N-CM|2T+%8ck&9b3PAEpbS6kKR3yoGvWJgidP7+{u*Fd_otWlqUJfmsBp+(R8}} zB4vfR@#W?JP1QK+T!uQ||MprU7;@F+=D;q+8ca)3@KOL2#sI;0J(n*P&UV!zjEAVY z^^}jJG+Y{qw2{KrCuL36-uYUNCb&!er^kobF1oFKu6Cz#vvw?E^v zE*P)-EKQHs*FIusir*A=?|x)QVwS}Dn*4NbZGP%}+VEZy1uA+b*EtjCH+tT zaPu1i{;vsC*DQQxjWe~ul*g^DjuK=qz1=Q+e$gNiT+hu8WOI|~2?qO_I-(`|>w)kQ zi_CD@fKKN=o~EH7r;AyamDKF^-u^q_7%)j;XYmB1(f=aow1aP$ z&OT50jeq#q4~Z=N3QLf8hsKy372!a;QSn{*%(y3Ynn=6VL{fRI=q7oACbqg~L;l0H zrrAlN>@1V*Ah~G~ZdeP|aB~K5cG?`l=)6F)WM_`d;!5AJFJ=1&AcQ@iqI9<Pp~Nk>>``e~NYGu-wO#f=jFfaC+@s$3Y*Ok@^Fs8v`XuRxzCF zZvK`T@`o4AorNX}ks&BCC$hG&=WEZFO%3{2{A;?CqGk{$aW|t?Ix;Os~%9CCl6kgQ9ufSGo@ySdObo`kKmg%6Ndhi?{}V8g!jQl z(M@lU{%RM2m#9)-ciq8U53D$*X3z2L z1wOIJ+&Iy*x09Ib5wO{HG#)D~a3F#;t2w;Z$&PR%yM1J7!F3+qp`eXb4IT#sIjHQj zujbSjW=(r4Enm2OCo@L+x)~94T%gq?5|;D+cc)$>`Y}zwN?YB1;a!;!KUtKU3F;dZ_?zVv z{z{&p!_?Za8u8nRk^(j+z7*^9tp-xAUp&PH_gue;<%>BK7V-bP*P$2^?`_OE8w=sc zuQ0C9tnO$C>xY-qtPwhn3PzG1>Rbyj+LHarCs9y`b6ZJWuUEb{8BsODkuzSSrqbQ8d>m#UFE`!WPiNcav;1b%dMZkW|B-(aY}mwCAwa+`?>jrc`a}i} zzzip6o3v} z>>Yf67UW0ds|!GK_x1cvwpvD7VzGDXX%a@ z&oz8(N^`0rFGKBI0R2b^#+M@C48lS|Z%+Y;IPJ1tUdU?z~nX%`4 zXV~wdLJ3m2_9-ff?0%+VxQ-Nl%qlN6A5+F?c=i0ri0~`T?_SdCNyzGrv1j())Dv(w(>#n3TkCTDj+fy0a>YOQ$oDoR+pX<@ z$gL>3o5|k)$YHou%+7KWgTU&SyOr0Y+~G!c`fK~3x>fh$+dbFLx>Fj>SGhkzzNd|2 zgSy)?p~Zqbn*RR}Z36I6mLnwh@}r_RdqUydSJ$yVKPZ><4)7TkcFYU9_tSC{vw~M& z4~E;J2WcJSo}-B10w>DXYW>z~xC}SgIvzMZ(QPqriVpF409Sx`kwgSJSSzU?N{TGX zvMXc)yR{lcE!~wHr2pZDTcO{Eq;tR9EHg-vpZvyYW>rBSP^vpv9wu<6@|pCJMLH%b zcjQc-H=sKGyw@FpTR2vTl)d!owEYJd-a*#v%_~(^&;mejY|QzE7muI$5qXID!x)GL z+xqx{*(^W}=^t8_GmFrU!lbNMB{nmMMa4M%$`m=+yIYIu?!sCp|5%51hBuHM*FSqC zPp%Sy6gYGQ;PRDKJGUphD{%b>R+53IxSbuza95nx&?2xcoGo=%ps@)@nP<3{cohj) zQQpnmnGZ6j*ohOR%{&y_Rkgxsl}+)UHtr@G=fnlS>;vBzG{sEN_uUc|V`gsKQqYi&lzKRnpU7fH3XqJPATNC$bD zXWW_M=ZX?xseAO!B`y%{+RJMNwgLwW>VoLl>GJl$Qum(5<`Mykp?QXiisV zo3(|;LH;m|&k(Ss1?hxV%3XXdT7 z^V43xy39yQe50Bs-B0@q{y#(tG6(C?W>I=?Yhqq?71GBZfMMZ7+uWxRXoR zfFmlBEl!&1jhvY!eB*6lC_?W_-FdC-!0(|^!JoTzFr;6bHeS4N$KRg?vw;uBYePxq zpg)8Z#)+db|2a!GZi=L&v;k}hg@`}HG!HyNm=N%#ys?RXK54X|xKA%NNeatZJ1#6eb;c>0&(~#n*rFnZYSOoiR##3JC!d$SRBF6U1&BUsBB=BhS=WQ ze^IpFc}n~zQ!9{K3=psV0JJ=LrX5RXYnBI1VXJyaqVV_r59+Gf5>LNh!d;c(6Q@Z0Y#`M(iD0Bg}tytbASh)d~jh8xePNHg)Qu?dUOf$eD@|DU(S!@$V# z*OrN1w4c-Z51a54{tYey`ioxTwNdwTBY~1?iM_e{R3$@!EV1pM+G?C47nmXj{kWsQ z-yjD5-%&~Zm{MZVWo*y<;>XA!P%Js=1k^GD!o6O>`!x7l_*#)F6E3IkJ1b-$ zc|~?s>2^E}^IKitz&$5dq86>Z74)0OhV~c5wUndk=bF^i9BKC_a(i{3EHcoDnBIRbZw;@nj zN>l?*BPL4&UKUC*^pzX;PEBl|#nMg>9S=BRkcFEapYb}9I!2WF9Hj&wcufj4y{w~V?yzoFt9QOnEgzDLhImARwNGsAF$3DmYPv>~ z<6X@Wy9qYiJU&qNwNCaNpR*zLA^#@aCxS*3;ELT6Y$zvXvUx4%?5u)w&9(JIZ2i2B z*%k!tF=+4yEG!m*0sHyMBQrxZvoL@L|d4xZ4%|H7qp^z-U=}Xkg-O6C`TfkT5%$87LH+mKZlw7-yYP}ri4nNN7)_!y( zqqG|Jjxjfu+vzv!_X1O$*A#E- z2A6Q1qIVniPCk-^)Mea|nCr(tPjZ$B)Q_z<+oQ+MecZFo>gr0mmfFGTpMg z-)qq#Nn*e z$P${+J_G8<7sGWm+p> z!u-=d9`jxY1jX=OW!X|p{jcoeL%4*~%wstcM$hDW6r zXC7nuCPIBQtub;1y)&KPeKPMRud&^tX>1T?30vmX&vZl}fDa{d@n3mU9P|AVa@Qz| zZEp(a4j+<4weS<1GmqxG3cDjgn4d^Z{7gtCgr?BQc2rpZ)#r;5XPU8LNEveFRt`TE zAw1>T?h0ZS)w*oGc-g6w{83)wH%M72o2lb`hg;3cLcRKdAwJ&_o=J%Eue^k1J(cls zPLJLpBjLGtw-BgGa;32fpoGTm|Dj|9G%9|W)R86KW4K^vfybER+L4#G{3C(z+B*LB z9l6q>YwxY^5~<6R<^nr;0UfCMz)v{&yN@g5wXZ2j&TuR)vOf7O2}$X-S&@?^Id6Hv zO1iA83U+OW*pGkBAxY6&2f|E0w^AiK*PRPk8T^z&{6mOPv77p5NARS^o!rJ_=d;!Q z`2wPCXxno#hdFoqd6c3et=ptE6@u5TsJzuOiL|AmZr4AWNvLwL)qaBw%?4@2eP^G;&aLHi2KXC+fcQjysB3VMA8B$E69e`bj@OIx7?V>A8z?=D|B6+>WK!iwB1olNc6BEKu z%!@4Cc!`F#(qR6%Okm}OTJ8j^9d%d*O_lBY)KLwL;V7%90&U5oQQ_{OS z|H$jWKi{tbiB1EgE@HysI38p}bJuP_F(rekiX$HxftG8!w5afq(aZ$UeFD;wjeO)2 zd40l7A1N-&=c_~C7ru8j3CjrIAUW)G@F?ZvWS^H1V-AR`=_sISL2QJUMIg~vpGMBe z+}dH6pL30ebi2+e3j8i$)@MvN5 zac8ygA55==uBJeo_Uz1whm58sOeV)%6=c2ORC$-8g1DO8z}m$4D2KfPmk8r=nv(D* znMK59kKi^Ij^9<^8Ujt@b1p%asurYW!hgde0oN0p(wT6+5ihQ(ty2bCVPfL@PmTh%FeUzO3syii(JE8P{>0X7Wpfg*(a!SC-%hXP~uG2Qmb|02UCTXjMr`|YD+8?0D+bwb6}08Y-+f2&tG=dSGF zBI<0I#P#7o5CUGkIvU9b?()-1!mrH}mu|1s$G;ad05qntA^I}JQ%(1*-3?uAhvy5@ zD?^CuKV2#5Kf(U~9Tfr-60yKXgq6aHv{zOkW;& zRdt-PO6zXMveEO(qsL5QDRbmH%aIW*cw~0j*WZK(-X8x*Ad5Zr#X+Qqw%FG5{R$G z7%LD~hIpDSwhQ1am9zqin<;F7hDH)>scUgtzq7>lXmDwq2=Nq(_lU-uI>xoZwfovu zTL!uPD_4%jkoMy?x~=(ljsgHrP<%8Ul&1##5>h8;JWIB6>}yjB&FUPtU5l-BzLc2; z&yg(dH>|B0uP>X~{W#O{j+VlDv?p{dn-v1ex?~5as*1T*UN0yI-nD}^euAK|JvxZ` zn#T;^7P#}FX^PXqk7;5DGPsmj&p zonJN#0Bw(%8#;Okx3x3ZAFpcV^(WwN;r4Q{^Vls&YwFsVzrVL%+w%O{#s&HDcf>)l zfh%KKnH6MB)w`c=c&O$`As7dSa0#ohBW%kmF!k{m?_a zQ6f>_HtfD?(uTE2@ME<3vOovxO z)E3|xn;*rRU|R@6K4x`r^aI3hrIzUZfmpRIZNILa||cu?jmnT(@q`*_~L92 zi*g7D1hPgR}UK_-vXdx zPeGzUc>C@#{K~aF*pHk<(NHMvq$-2kX0kvokxnUtI~!-}cInf(25mpB7JFe_%Jym_ zT}(Yt5~%^N<9KUs*`Mch$v9u=SO%mh;gcP?IjEQQ2L?DgIWK9HSf-ZR9`(52 z>`YA`)X$;4_Rj4{OZ9c9$do+J509C(RgP~0#G5@^TuT3HjGUg@MyrRbdz&cxd$>}h zGhk`a|BUSZYD1El?z)9w^LWg>pL@N7>d|CR885eyHWZQrra7kS^@Rw~iD>q{knq<@ zAYU)iMiv^LKQ7}dZMK_bi@mVEw8%*xnxqN*QYyBWz4j=L+<)}C##iK4F2~Czr{&w> zSFCzRbNvdLgkCo)+cGHmGdIxCzh@4>#=$GoPnit7;!s&~E2Y%^FZ_%y_ezIg1L2 z?&?=|<l(4#+;V`l}q%_*Y*V?Q4jKwUEkrHz|B(+sLt0-al>7 z{FXnn71fJ}ivR##bTL_}?J!(d8ltC7>ypXGAF0J(8_BuoE#pj)hvj{CTjp0+KNXT~ z9ycdHR{A^owdIsEy}Ue<3f~sq+0(LLPZ;D{MJxcdwWJkVOdcB7w+#S>UZDK zCkj{P3nbuQ15AEq+dJOfy@r_wUe10-z+q+;j0=$sMvzw|g15b;YnIRPpblrktVkpG zr01zJfgKr_ouUedZ^}JIfi&0mJi4;_$IZt2Pew;qUe4cDaGv$OerG?QDDbUWz%&PT zpAPJAEp!gOM}j4nFlRkGEWYwn!J#~XSG;xfioihEp?|gO#m@Y|IBS4%lsU_G(cSYq}bahi-JM1j|O;kT)77Dko^9)xL|gGPzcghzN{n=9V+j#kX-RAHwXogrRH z&I=p3A3;?vvKdy*I&@eiVot(OM~g>L%$bOzMS9O!oq_ZoS+B{nTU!>!tJ_7 zoRZ~kcM4ZF+VdPz*V=$91hTQrXf*J*EoYf4a(^*_ua%4Ais^2jWHzT4kdU$&F+Ck$ z^{?)Xz_3=O&1I z6WeRvHRc!IWaafGnpjkewv;E@J40Lo+O2FZt2_w5@vFRneYf|j18!pv^|Qxw)%-^N8fML!4DW#b6f>PG#D$a@95EE$yw)KoOjsWt z5LqHKBq=P2-}DQ7Et>kh)98hN^mi6L`Gg^v&IZluqmCeVDZ%HiYP#!(YO@T2Jkheb zZjOl_PUAeh6=LorN1dDV$0`M|h*qwf1n zdYcYQrq{nL)VdsfB{ofz^|qgLb{NNc6vg_FFKFf@`fonzwSZ0=wAFUJ}ltK-fR@hC3S=$8UCFY5wK+=+?mf(Wit*I3^$w~xbbsHn2t&aW%! zC!k!62~Rw4t38Nuvwkttv=l{tNqtTQ5P0NcW1N5%QX+Op1 zs22umE|Q|zS`lHTQt4vMMiSo2t368VpUd_ML&Ndq5p2=8<3f{Yuz_??gqyz-ko26> z;ow0vL-pb%kt9mRNi)W~Z07LM>q`S7vaRAKJ-wA@25&|?1hI>MQ8tAgxSy!}`n_Pi zrY^N(i?%JAA|Wy?uQ{c zOq%jzC?bwu^^C93(C)V`HbgTORxEuWQB_$fNnBKDG~iKGmts z0-Z*A{NM>A&@dDBEi`M==+ygYc59P;tz}Oz<`=(Kd^gXr{y)O;axatOt^!pk;#6ScDO6OE_I^3PNopZ}Z2JJ2VM{|%$4g!pcZ(prw zxT0VNirp~*IDVr=AnpLjAv5?*{Axw;@>tpq|9A}8$5wdmri{FMHpk>EdP%3FDIWz) z%m<~|5rf({;pA>rlU1<1`Agg^!GM1Ao-T@w^Hi!oOWZ^E~2r?TTJH4GJuh(DpO%|jA_W*Or+59 z_?O>uVV^Nj@+$?O{koSJuG{A89E>8%1Oz1VaF7}rqLp_t1_<%7Jr&2^Z(;fNd`(y8 zlmUr}jNTja^5~x_@OZ%21Qu0vw!kl^9A8$RSuCV6$`)UgkkV-Iw0DaO-SFMavY`fj z+U#v9(8=9cu$#s4QtXSjD7-7t*fq)?o`ly91$dF1kXFATNK`!Vxc4tbnvgWI%9;Bd$^I$?>?asXSc?$;}s7fUn@AZNJJX$i44~~yL4HYQ!sz0z%93LQ*g;aYhY$z z!%ii8T4R6B=moOgl1DLrL2YS|-}cxVb0{^DreDVBO%we+Ku^v_obBBxO(6|(h22A0 zT?McsViLD3-?Bnm;eGX}+_@kQm@&waNc)ahzMTUFs{+r_`Lb?STuPToM@_DEvHDcI zdroAX$?4f2HObvtsto4va-FVd!;`r>s2Ef6jRdl-zq8L8%cbuTM&NTb#~73kj4ZB? zAMU1w>`G88>{*z|JlO^R+_`^8%fJZY zGAI8{CvrZ^#+5%n1j&X!8(aE)zJ3^a6I0{Qr#KXkeWpH|SR+bw2x)K@f@B9FQku8x zqM`XYwSDoI!>pxiIug4cRMkg})B#eQuIlH-R}t=aPNfmcLM|nOxN?h$g&IetMV+k? z5n>&Zk8I>LZfW{fFP|Rxn<3qDQ&c_ylyCm@pC6SAHz7hLS70qK_S#2gZ7bFGx{OJB zF1fJkiE3J4vRInJ0b5xI%4sl9671|YIK$LRj_P`XCO7CCMr6DGCm^++@wmnQh?353 zm5Jd3>jBh5)lm1Nb2srU^DzvQhw^=}pX)jl4nacI0Augm`o4Z9_-n(HoaFpk`|kl% zyz7WbmzHlKDN7lpnN9pZLxW_YZzG@`i)~Ay21&_>xIMrNN}Kc9XZ7q3js^;8m=uTdR-GG7$1lih)qL0WlJyqJ8a&m5+P`+lG7 zAVL)Y3cEAls`jyVdba$d%qW`>1SH(U0peDVbKKm_av!L^9aPTar%P~{0w-P#0-A_~d6m#LB zpqm#tOXwcaU3n*zbXXI7RTMWt9FF1E@N4{RFr|)v5`>V+TSc^m z_Nc=!2gs$z$YzU#JE)f^wYignTz7TVne(|K>lD7e=iL}aH#rczb?X0gfj3_l+bb&q zBtdgm?0pjEO*;7(x(!Kyu~X_Q?3Y!Dqhck(J!#hujHZl+QkotDR1ef4 zMTJW{$2d7D$c8tJA+@(a>|b&spEztH%Uj*ZRq_r z>J|!e_Yq<+?Yo!wp5MRh9^fVLY1EWvIa6g;F}EYbFsQv9F^~W&pvG%EjTB8m(2+dn zy*#gAkmuXeT_FuPRvxx^ANPPlY-sEiQDUHb>FNPg;jD!+qdqgA?6$F2+HIk+8)3Oi z=-44wctR3f%QuW9dl&Om(;aoi!+*Z0?V+FrY32;xJXmy>VZ^sT(y%K*S3oBM)#8Uq z}4gCVEIS?~{ znm8viaU%WI3$OPzoh@hs$)o~rTz3V(SvlIlM0jgDg6th{0ys`sqP}}gh%@y&UKoGr z*`*f%Rr^&;2V_sGjW^;1l_juuR*4n8tnu}m>8T8(er8=rU_ zUYT_YM}IRINQ==Fx)WV|^t*(-<;P--Eq~vQI-^ql^N`E@PTQX1(g%svDq-%((Jf}; zK!r)4>0x@zN1pNVby~_Eq0EelXIFsti#DqqbKlj@9KS5-!`tO`rT}u1(f1NKhlK!J?$KH4%U4cjbZ`NKD~usXdLMwJJ*TpKY!T>Ec} z^jt$r4)?@X`TGq%USA{eckh!%k@S&Y>h4r|oi@;cweTD1X4yu5O}={LQAtx$b*3wv zCa0J6kx(mwVlZ!dK!;=YIzs2x&M^mD>tc*ami^;VA`^orI4#x0wuI*7=Vnlc&iSOW zy(P~PXsTLYz!{fa%E=~BtW~*LAozK?9n%QpNWQwDDBjv`hmSYBuqiaCAq_)2b@ITx ztAVYez@*KzQ%svK4yn2@@X}|65Aj7q@V7f4yd&AR24x*>caJ-_uUkOwWqxbm5o}5- z+GzfAJNWgQ+AV;I=HYvN{9eTLpwUnj1;ei)7$|o?M6s4B$c9NrATW0=%6g!svu+HA z7G;0p%}H^_)u|asYPdA3c6&!r?2AL?KxBtCsWmIMXBex?RHu9Pi773i`TFX2Ptf}F zK0xJRzJEQB>iv_5d^&!fwv{)9t0%ES6^47#*%IHd4Q)()l6db=s{{x6?q?dJmz4eF zI{}{OB9z*e=Ti&fBi^+Ex;p~yu`BXB)J!^JzvVw{rZ7+T{JvWZF6W+InYUgs5HEpB zse2NODS6B?dXS88o$BIyF~Mvoqw3qxCrYo%xTnuAH8cH~m@1K1N6h={8dkRi7xYSe zsWLZ%+PO(Tceq`NR-tgtgUdb={t@|Zo~0HTdJT7ohO*jCsKDnjbebS%QvhO0=4c=* z@j>>S_)MnKe3a#$1qKjBv8{gX_!G5NAJU&{`!Yb;Irzg+r;kWQuiMk8bBy0|ZO&m) zXpu7MD9i*p!Zf&o{AL73x+Oh6L>1sncsN84wcJ7;rL^J|XK7mjJ^S&-(*b6?H+NI+ zk8xWaG5i1;MS_Ndk;B6FPORY`THt{aH+6JZbKIdj*RHkKA|XXJR&Lz$OuDdXA<%Ty zJhs^`QhP6NtZ_ZRsF2I5OXiLQ^rW@}wx;QbB&X|f^Z0(D+W(0=E#;#Y1z5B(MePNz z&@rrA1bD4Vf8(l!sC!NyE;aDI=K5bJs;$Fi{$)Hs!eGplHu>ibX653`Vlaf~VWF@FuHx=rFL1i$M@|;(CSTCUs{ahU2W97SZ?l z5j57RKi4m!BY8z?9l({kUG`SiFh%Luyv2e|fp+5nm2>u0E{~E9v2J89srlS;ocMVy zLQ6ejwU2`<>&NpAzv-r}5z`=`V{6BKR;)1oQioTeE|hrrlHiO?Mj?FGjVQ)^M4lRa zGdWI_RO_IpQiGqMhR*K4{`sCEQYdC8J|j+CI;GCQk1uE%K=PYZ=BkxB599P3?JkVKGTnC0gP2CuRSHU}ni;dnZ-lgFt8#wodbN-{_H1LQQTH_wcZFVWY zXyW2DrP~;z>U)IMm_f;RyP9HxC)6@t%CwF?LZce=kcM@~*&K5(j-D zweE0hM9fo;y?^H^YM-%60;VTdWM5|8pkYT+xzd9#mG@Dv*NIq)6vzXTP@R|dOV!!p z$^T_|kf_YfCF9buf@S4d`bJxe#vAEj3IAu$jyp5uu1ME=pQ&YEYFyQ7;O+ucUF~_( zxuTh{Q-FfbmuhNVLW6?Nx!_=UgLia67bj1U{w+kfPE%znrXRaxVUwdJQM0_wivW__{6@>SHiFhB^B1(E$utTF(K) zE8qIUM1RHmkdyqrp3AVuYZ5r4F`#8thVT_h~)17UJ zZ3GPrX9iC!q7b|C3{><;Jx+rQgfwL6n>5LzgXlm8 z;-_)7`i9PMt2wsRKR&FBr43}<@9=&rB?vt~8}3h+_fZBbNnF~R`X$_C+14K>Uw!CjyO}yWDuG%EeIRwcdNA7G*Uf0#>nsXwp~f-a+wA&p-@3Haec|EdhUc`$6J-6p z(9oLbUkl9cw#O8+9p__hhwGJDE0!$x;k3!z(J^#3mdN-somE4>`{Nn~Lz*LfPEKk?=)>9_(9i-{ z=*8k%mk@^#=wR>C+U}lqnTUnEGBnhAB1se9neeAG#bXsbi?qb>(plcf1=k29IAvfiGT0nsjmcP(^-7&vx9IbmbL7GaKC z>0&JXP$DbS!Um>5B$s0_WXf-SB%AE!bZ5V|Kh~Q>Qo>5gA5jM8tI59<&Ok0ov~8gq zCb#~gPg?6&`YJ+zKl8P3UCY=MCAmQ7%yxTq-Et#oxw{F?zeiL`X^A#S3_Bi_RGs*gBD7qlKIgYKrj#NL;e%m9UjuLY-M)(k%%@RN zmwUl5zOz;$%>B$Gd=vjdU;r}ujBFj42FcO~Nd7?&(Y5(Wn*@Jz>0)EG9OFfKuLfN9 zF>|9V4%L5jyON!l%xhr4!})VP<3Y+9fkt0r^=?~D?n^#yXYp2>C6Bl)9tw6_U9z8% z*$9Tk=!m1))+0EY$(QBp@#0AN67>0)hJpy63d#sC#jo2k;r1#+J>L?aLxkkq8t2T(Y4M?N>|(AZKhPiYli4u({YQ?6o$WC`U5i zrHiJ8a#u2|qwI{Lb0>3PcI?cHj}91*)^TN)!kb);x@2U?3G6MV4dZbvo zMoTx?bBS=I+Qf073h&fTo)bk8;7Coi!c#A9)=WT~d172qGPkFOJ&S~Au;jXe``k7M zOFNWUiv^K^2TxzA%(K<DMA{Y!$fpYgvM-4ECX zHkcc2;~o8gXV30$#d+5lyHh1YU8vnPL5EX{k9U<@?)pwkLk4~%Td+1_B?rYUt>DFh zZ&>OX0%h0K&mzX0itO;6SBXx>DAT(PuYGBQSnp=!|C;G*mh>wE=Gi$HTt(!YNzU>2 zMTv!$ZLCB*tb2;eCn+wniXvN;c+isvlQO%{_9d->Lp9+FLkcvu{J$R6j{C7g@C=L62-~*kf;)fg)V&Y6=N?RthN=Z5!nn`Y#H=O;mao68b3dLnI5vUB z+B`wu5+Il-fbReos4;>77+){Ncxl zFO*41e~*TO`}@^RHITi{j#g#rQVzx&Kk!)JV8oVhz?;rHJj zGklG2aL^t873Mg0of~GK%S`w$C##3(VPJ2^t2m#dS|6$>X)Z-$y77}B(lRGKT6Tdp zoWk@uTwwWl9@Y-^T4&pB+Ve+zA&Sf@zk>O4=v;i^zidGiHKNAnisF{SZuL|eMIe)x z{L`mAyo~AVhXb=VlaNrNN#*-lPFjM5{Ykd`ogtVk4SdVJ+;K7v)CYS`nAwXfLYNW7 zt7}Qa$&8g21P-~4D1+AZw@!Q2rPm1x{j+=Ev;Zc?UJCI!Dj@t$wW$} zm!Bk6_fIg~VC+^{`|fRt3R0N$TPwlRQS7Z@HnO@x@+Z6dkQ^l2>~qH}CvIxQRv9AK zW``-$BcmzKRKo%i(P9$eY}F!?!$Yd`P3ywq?ciU7yF@<0b%YE(7v3FTiuI?}Ikr!` zey{E5i^4z<%kA#*zx9)~$NI7gY@mll)X@q64jFg?ru%{|gt zvm@NQYy{lgJ&Wsx%|BsuAxm@4el%F97?5KcbE^!z)NFLHb5SIx>^F|UAv@hu0$P4et2Mz{(Y@>TdtXkwil7v-%CbM9r-ug% zXc#rAM1M*Z2y~w+3B!?z6iSMykCQ)qTS!ni7t=5@&SmE@r|I;xPGl)VGi;C{iU{$u z&q@^XTObgF2xKx_OEt67wx+MnmGcC~ZZ;|C*x&~BnZ7SG!CoB#Gv=OFVu|-`iJ{~?Mlj`|(VISL`eIeW;uL1isa7}Kf_)m2mjpt!aaIvkt1a}g3j z`Fk7vQT0(4*FlaX_2^fMeR8Ej#w8b;X$GrR+(WOT(n2)W89l>Orlh zbX0f4T6oT_Dr}xJNZQf1o-k6%oE!^WO@CzWdJwV$uR>S}`4rYcMib|^sGSghh`Y~7W)X<=HN*{FLDlVL`1v&)d>6x8d znRCNsGMD0;zEw(ygP60d+w_fDmA*F)L3CB5^Q`kc8xS}1;;rTIgQzrYlbR9Pq^a&K z%*c5af0gu?*7K6F)kr0h>4{hlB-Hc^77ubb75_f6F|tx>-^a$y-?#9M%tKdC9`A+k zsWElk(5^wA^$jRiuAah+QHwN^dV%4HJE;MQg=)c$42u{t@ceD0LwSj7)h-CRmN{JE z6n*mbrC}LadN&*ylU9h+!x;^A=usFb_xQlz`+}dxN5CU9t>s6QM%93#^sR&-$)OPQ zo77hBO+(#_UR%^{SG^8V948y$1>figHwO2wk<6ib?!yB3{egB9CVX|`#n-3UQq`@b zdt-@=9|}WTvR-5UO1)XkMH7DN`Vp)H-^}teFx%_1Z;W{MsZjIP3H8J+MF#a7_w#iM z@lMc9o2eyP^Guz0!;)(Y<$J&kdJP%&lr> z+!*I8_67PUnmJ2%f+RPL_YEe>+SfddckO#0W-$=TEk2c$ZR&Lm(%v5<5|Q9Q-ko%y zy=e50Y2=TpRJlKZJ<*+#^EedyuBUszc2RNUmT zDATK4{nU@VsOYfsD)zhXfiij)eT^v5G(UrWEa)3pOxmmOTZops6jp;hw;>b?ar`r? z;rjUv`EA|12OTV>jBXv3PgLB!-XH8xU$lGQVu8)p=PtO7sh{>kW}n0Os4@;m|K z9K`q8b-2eG#kX~2{3pv|^42tEKTSt%hLYm-)_WH$NgrXbhFzCLc2odlAf!i__jZ7~ zoyA4m8YJj4lZYS!v_xuwesE~;2Y56~`1-;M*ZT{T^iHKEBC|)xNy9|1BR;d2zX96L zFG_k=QwvUsUJIf3do-kVmiP=pl5J*0CE0`*1#nDoS_m-CxHHdx?f+aQt#$aU7O`alrHa{T!A-j_3gI|*3z}X9*=ZWKP9i3HJN?+Xe)~x&fN|5?MkV-b z**}gZMl}jDDPP7aj6Lc;tZMRU+A#!onnjv#Sa%2ZxheLgcwU&1B% zibI#Q}d1r#6po~7Iwb(>e&lArK(}TafsG{mLPMRE_@093J)*Y zx8GCBzdJ9-H#CGxw0W~bfHPWG?^jrfjz!uU##073$Cmcb#WTt((Zrrgg6O@`b0+eh z7kco9p8=tpjey$i3Czc?I`lp#==nYD=%FP|34v${I=KC|G}t(GPiO974wg`edqe?j z&e7)rAIH4*$`dUhZaL81%I~<}**ci-wH? z`lPVS>Bw(!G!GMdNkcZU;0#0NJW3|~z4@5bBH%kvV$5CN4i#5K@DUB0AGDn{_`%V7v?i&vg%9sk{#Nk9^>j zJ!jTi$4h=V`Ssw4@M_NKc@v?YXCiOX-XUUZkILM6d}$MGB#=~@GejVit_Aljd@^W$ zrZKo)SpU7Cpl@nI{htjJW_RID)m>$5Fck!sj9G@#(wK5%9?^(dS4r#)Or1qT=-%4lIcCea(=&9lAkx37eK!i&1nd_xeh55oCeoKk;43Dm+gu@pO%+MaVA zoDRdTko_LTx1}fi*S)NBy#Lv^j_IP#HP4CmN!6Hy$FSTq4U$n33HUO78I{r{t?DB$f&Z|ZCN7OC;)*Td2Ey<<%A);75O|l10?$9TT_DK1l zV&VH@D^RBabnmzLvVf8VZnGwFeP}Y~zBufoInaK|gD~Zk*xXS&Pf;MymnHl`lP&38 z_1#q?=6=^}uUm4y8VpX$fZG2k~AcrtMEz!Cay$38xfyKrtJ@XHlr-%cCrBqP|Qj0&E3rWSvx6uz5X_E zW@y-@pN(xne8mfuMoCJgyhDn0G_9vUzbmhFTN7vCPu_IRyrhmRR_XDpH|fV1l5l~# zLUB>)O^F|sX+;I<=@$>wOZZ+Vo>j2!kYX|>p8R3^^pSz-UMnoAO{3n0-EuYHd8gvX z0dww&>7=`MyM<;~Lt*!q@?)5$rz4KoxXkQ00&Jm!K#g{Wc&BC}g|s=GJ4&D0FYG6g z>B!0NtZ=*RFR}Z1)0etHxBcO^Lw--)%%-B$eiAPbqWM!@AWmX6LaVh@(ZY7YrHb#w z<>r@iVVx(TGs86~#Gu)i-?J~!-U8(QOp$cselab#9anxK&8Ah_?^i+@#rRtF?!=KL zrTc>cY7g&VY4%7YpI61Hpin@JH@kw-_-agpFuyfnd(UoU^4(N#Wi@FB=N zWyYtcq$)UdtRh2zAUY1XuC*gUN}peaN3)LA z^+D^K9X&PH_iHJutb9r&-*?oj4Saa41ukN4HF@+YH-l{nMkSh(o@TGu*aY8|7OKl$ z7koPMB$W0wU@1TWQTrIfm!}I!lnaFh^|8=+=J(Vjck{$PHKwGbgl7+u1iDM<5t{xp@gD~W4e9CKKN3K(v!0mKKmM0+ z{HHetY|};^PqT+d{DJC!8x|3;JsmLMOS(g!x~MfuL;L^y zsAvz5kN?TB&wZRqf4>ll3ktqO3E$)U$+0xXk7P*^J@!etg1moPSf}81J0d@9ydcf+ zI(h#1>+#P>n53M{w3JlepTL3P6(^fOJ^dCoC?uSoa$!vL{p0NV>t%!$Nh&1k=*W?$ zl)+64%WBe(pR1HH*omiSB~K^`B=DA5N0=lH3s!kWP(DvDtkM{8?QTYMXKWt}XQAW$ z?p$TUl&KPwdq8wPxi8U1TYrk!WO~I#HoSaZhe)z(J}$x$sbp3buxU0JSX3-sT_WJG zOFI?wN6sMbk3E!Ms>-&@MIxFIu)N)r*@_=wyfVO_K4qaDGmTs0K+-O z4A4LbnUA!X7(AeBtz~oHQml$O6@f1&6_zx}O5^s#TE-z!>Hftrwtt`cu~wnq7r0SG+ebPd0${%IBl)%y2OuJ z^5NjC^U5yWyfWYF3G2IKl zg9953Qo-&YVgb7ucD?cR@@f2EmzE67W?W8K`&6q{9N-e!gB30m!OOVivv7}3X#L)_ z$Vv!9+vdl{abGCET+u`mNV^EO>s^^SEoyjAJ4A7{Dk{{sh)ACH+uSjeLld54jg)dJ z)O`)VPPI!;^Q3hRF*Npm&6VcTGRx++)AIY-KFRIm) zanX}Gi-@1EV%f1!lD_=Ud<{j=-<>F`sH!3~MJlYU{OY_rL12p6Mlb8LiYytd>&eFS zV4F*U{~SyHGQ4l&q5GXTy@@-g7oLCN8lUhEcb)b>X_3ubAHyCQ)y~cx-;ju zL-4DN{TUcj^=8D{U_#5EH0IRuW5zSnhMe>pQd z8_^T+UIi+H^m{26*$_TVN8ulgi;2>G3+DLCF0%JM>#)LU{f)YlFMyrG2TpbGlM{$=+7hyWGq&ryH2aI@(=jX)VXxx{PM}nz@dRUmu|)0TO`R zwqn2680;+!?~rH=e6>!)q*9;A;&$30>1O9&nS5E^Gl#c#rBG#GKjT_YkK!Mzsk2*l z^?SvFpP8Kdtr)GhH9$V6b`_ZEd^7DhD!E$yxf zBoMV}-gwQ=>bMY%s?pNHhJmiR7yrWwaI>k-I9ZsUkR43M^oa7EMq*r;lMDfX(tQKQ zkR;DUH9NoLRjRXHzkor{)jUu7Lr&WCOzP&y;Z9F=RmXf&o2ygjK<0bDHZf47EAZ)= zDcSOezBR22`(7R%_QUiAK@6P@-V29}$+@H`Op@R*KdKhXUpc)??r>G6HfrKEZ(737_qpZ_M^_ul<{ZyGF5>JR=fo&hUa&N?xrP#|pb z>VDM>1~A&f?5_cAW*4RRu2qN=^-X$i*%)gCLnH6FRUgWFu=?%!r`j?LU%g6j9eKr{ ze0Bwv&M?TVJ;wb)W@a?bEZjPS6QXhMJF7nL1dCcsBIXhQT+vD8WXB*@k1XAfDYf$s zEnwf%N(8G~$1;2cy@NjA=Yaz1W1h1{-l5AEOmjNW;o_=tVnGBY6&5LX?1}D!lp5XR zzfyD!L=w#vD87mXeqys#e3vTHCVu?|Y+{X3CRp+Gn|FusE^pN~TckHrVt9GOo+Cn= z;FLMzL$t<4b({)RA*3K&BI$RfvvSR9wmqT}-E7ZIPL|f{6cN?Wnh|$$7y(Sy-D5EB zLHR|hr$>B`#scOgV?B`PvG3kz;d0NEDman$IsLo@6R8zG%-KfQuiklg+&4swbIr4k zyW0k3{3wRVo_LcTXHL3f2K*JEBG4(7Uq_`IH#({@TpR{RUw(1p_bHSj6xn=a3QR&C zA+H%W#xSx0r@aqf$!NGOS=R52JTXo0qIE5@ilO3$4OxP;!Tf_lcaJ#Y9(pJt$?FHQ z6}`&k&symRVS3MW2P1B6RR&)@4Zfaj18Z~1*7t@;DvESJNli_ytNFIC`RIJs){{{{ z&??e~wJXB#908o{OR-AAbT|{~V<7J@)KzP0i%c`*ol-aV8YN*U+h~AT(}9J00>L@Q zx?zhnt^&x*dsaWBAyW!5#8%~*mK$8jbFcZNRM9bYI0Q$qc*#e&rhbcEtcE7yzMU<% z*^1L!+T=J9pf} zTkcqe$!D!TK*^4z2&H{fS919zNznZdB8+@9e`?#`7}s7c9$}TB9SK+0Yr$vzBtvaj zoBh$sjJ2MG))K|w6q%lqCWXGVtkwkuUH6nOZhlv;n1<3Xk;hpYH%1kv1fI;Pd)**W zqH{3r{Ru0uv#0PUS)1dn@}t4X)4s|Mf}Xs$QgT0JA~T(;DMF9R;+tr*4$9kRMT|=m zXt!g;E7u<~Uu2?+sBer**T*LlE~oL*g&3{kWeY} zq7Bk0|8=u(Y?VlaK&R+9YY9tSq;(g48HYT>?Ull$5qVOxzHJM2Xy(X3)$)iMm`{SP zSyu`4_T@gpUS-P`QllchwIQG?dQ&Ab*P{O(QK4sDHr1zk4}bJ-Cw=emns4S0ryATj z^t_g-j(Ad;2|N8}pg~AD#;KbQD{!jw!U2fErKnXDZg9DI z!Q~VS9DXm^@7|wmAhiNYbK5g%heVDM1`*sB&h)iva89L-txN{5fvq`D<^mgGXM4k; zTM~Qy)W5C{o=cuoXS^y#Zw4`U#LDfGJ=1?aRvxeHXaY41Dc^;dO#jGIpI?bI>-G=k zRoAAqQ?h^0jc~%*+QS){q_W#S!cYr2t!PPOG@{66NZ!0=6^S##AZyHBi~K?IfsbfQ zpq+!y7DsuDP0rf1*cxa1S+-r({EH0|x0Jt-GF@=V{{Usdp0?>+T7@5`Dek`^J7l62 zq0ou{UjBrdbiju=~N~(*!m9u$Je6kAV!OT4I1&R>j2{|7wT|*d*_Ka?aM1q zH{7tUauS6QpPdM>Xf&%ma=L!lK<35&$Dl)|E*QNy1QGB#^=#p7SDu zpmReCWyK-d4#nWAz9DP3C6_c5{sHnAS;kQaL^Gc1B6R^B4>FU7%FSJD7JS^hkF(-? z-VqXez%a~dPaFnGxslLwFDByvUP0KcD&@5=qMcuqYII{D^Va z@Jy`SW4+P^*w6LSx;|;0iCcD8_$v{oW_h>GLw@FHuHKXNmLGoG4eXIi*?DEK6|n&D zMtZvx;)2S;*I)@SvvK={|CZOqYd$U{jXSCO#bQkzoBKhdMcDc$=$AE@-8kmk!fQI= zw_x%e&p{94i|1rIg^?RoSD+IQ>GioG?)Ac_LC;zP+vh%7IJ)NVwHe=J5BQaMuazQ_ z*&&GtD*YfWw@Y2@dg$=05LbGg{yo|d;qQb0-2B?MQq_(EV1sOozpHdaA+#kh*v-@((!6in}o>Lh_<$Uke`U&iJ z$GKfiR1yMCuHFx~&oMADX|=|S1Kp#sydusL?9fvyVx~2@8nF8t>bf)=o9g>098PIb z#x^j3%TWqLH|Q4C%tsTbuIDZk?{Hw7;-LC;9y=@~N_*jo;Q7v&bI@KJnBLq(s>+>a zd2yAZ`l*R=;e-KPmh33{yE0|S*N!hqmjtv+XeAG788PWTLGnDFI`Bh1{WOrT!5u&+ z4#jhMhhhMy8E$_Qf)QPJjvGOd)zjqq#`=+lTr!? z#fdw0NeRgtO&?|0J@KOwY2IyM7>%pqM%E)`pno|_Z^)$m#LlLvyT%_n^&JG~?v0Pv zFIuv@#CK(7Ca5jiFJ6lw__~|m1937Nto16KX!v?dLNs|l#Qp81P0lvwPlp9y{_H)C z#MT-N{(-Val;%3yOQU*x@$kvo26P8@{Zw2`T?;|HS_SsM3SO?i7VUyXi1BKdM@hKJ zDBHZY$$6cgOBYE+YIc7?WhG=TkKQtciVVxoQt1W^hIw+<#~F=@+r_+J4k;I z2m%n+`6Gn2`dM;iIRl{89YPyGOq?)>c{P}{mFh|{DW2qKQ*~QC z4mM}Q;X?f0H!_enazi(5k&486{61YC#XpYw)x(L1{#z5*7_c-qY`x-pu3_gPf5?W- z5j4U^YMwqnoFfZTI*hOfYGt^uTRQ6zAM;Q8kd4^>oT$$sWy)iYLo6ASw+<(rbZ49y z^Be%Pc0u?pB!3`_X$mG+ajSejH+I2y|Cl1{Efrr=C0|JVp$Q^n@6h}7h zLyyBHPy!#j@A>AJm*aO8cpn@3zu3@!{nq^0s@dmum5jsZ)(!l=nYroG@Sy$>G*PT$ zDNh*qe}GfOZ!>h~D;j{NQ;-2 z$EK9`RrG5LNXbPV54U0{i`5=1v);*&YsEt^^xD9}UH_#udK=Gk^1(|zmYdBntNZ9w z9RQfp<0tfk($w!=k zn6~2G!KOdY!@7#o*IF+8F8knRvV9we=HPJ~xaMM%m>t7-+42D?lA;XWCzywThND=qESk zZ}-OMh2l@PDF-04##A>Cua2HHq1k+gRmx_vB0BW0zE5)gIXQ1)16R2^*SO<40Myj3 zOhY4KpqKiu`bj!zQh!tp0zKaJ>w@a&SR7qWQT|nN0;`a2|3#K%^HU_&>GHA0CvjCe zND|t+S!V5fRjty7FUvh(^oebHOC9ygfxv-T>&qAY{+G(yqsNFPhugG*>!K^wUI)Hf z^HT1|dKl%`-lllpX^}CVtLXV1gSjW2pSAho4@wE!TWXmIOD<<2^_aU9@^}X)bsUi^ zRy!*%80BRVeVZebTb^6^xMgL0tQ1u?jzOU^FekV!2TE~&p5im5*M!EZq)2Kqy#tVz z&%V6`RVg<;pp}}x%9JgNm#=(xQLu0Vm-kw4QT*DM_k_}^*X&h4>su{6ng|!W`h%vD zEBf9HTgtn64&c$zSelmUr&45y%2PukH?&A}tmaL-h;0pex>Qjx35WXZ7!y)zm)`>j zhVuBc<7)N9`{Z#cpQ-=AYuy_ES9q=Z_S*HYvK=2X1&+VnOH`$-ZXY9V*Px4Z&z0D| zsj`-rXXQ}!Yl`EP{Xid<@F-RJ0|K?u+bjOjMXu5})|^CgN?=D)2J6U%?Fs-MYr6!F zbRoznV6y!e0NBVd8Gs}`Sot10pE3j$yDm^mUGFVmtRb-D!_-f4n7CxD+Dxg*LBtir z*{X=gUw!tUx+m}k$7wP4IyN@8ySLYHFqIELA5S-jOxuIejZ921d|6-UkAC15!jl+i zd^O5~Njc^dTm_B{JEncHsrA~OKRKBO6wH7ch22aBt5s{&|a0dKv~f+`QW?ofG=jVYfA93tn|0sss-ddh^D9 z{@}Z*Pq_ops1V%aMT+DdG+6c2Atn<}{^%+>?4U;8Dy@{(<$35h)Pv2tH#OZ`<~r2k zgc>B&DoxyVx@sFE)Z;r@v|JYro-|MdEmAraCVa!7s*Irli7>wUUI4f)`Hv zW-4ZgsCxFY8@JzI0#D^av|`93NAD5n8obo3h?c)n5V~6A$@S5h{t4(1xpp;Wyc^^D z%^^UwmR=}c}pLYsOl-6dAaZOK=P#jYS^gf3Fqu<*6 zk{@EIUW@qNM@8xWBH~woDPS7l>x|LqSqPy>yuG?ud#Fm> zc_nO6btGOk36j|O_zH|t#F7)!P}RyiTP?Bs^Wmf6P)4ycQmWM7I;3}0I zEj>de@u4~?OedI&*=!de{{;o$+y1_u7d$z(U&YUF!)$WGX zn^}tMRuoy=C|2f?teqeDs^5ZQ+!j>?kK+*9ZmmW&lLp!f*=H1F)*eh@=@-yx(lqJo z=#y?S=QU~1m-i~7wWHQc#T`;&yL}t|;_X&r(}M*vEPVkgL9R>NtCzq3^kk>|710qD z*}j6>Nzlrugq#0QT=4kL{@$xX=O%bYPy8I`V?{{L?*pZ)`v4=DWqRCOP>LB2XQB7! zvZmxiomf#HP+Rh>$KI%uLp}0mA}rwreB|yimhv-BpatP!_Y#ZoZ#jp57kRnC zg*p~fw<36{4}k!GoPw_t->457Ic5@PnWl+95 zuY|6h7UE~Zx*TlW?rf<(9h#J7OYCU*>yIx#e*7daVI+<}X_M&@@=}`onCu3BXgJTz za0Mp$vSuKWTU-y{G_{^`Qyl6$81W9IBtx_RW@*^NLDzzv`YF2Jt+o$*C8t&!GAgQ3 znLamxY8B71u;-^z?7&e)&zlz76q4^@59Zuf)k@rj`}>^xKeHX=u&<(w%g=(1Uf{&` zJPgWlsmp_7Ko5Rb;#iV^ve^37)J}?5q6$Agvo$nUAyC=2QIQ zSloj**uw8G;njU~{mtGXzSTaum8UgHj_ugHSrabWfF4oxOE)VitmB zYV4e=XB=Xa{7D}k*r{Q}qC|B~xf=U)!ao+hwo&3WGG*#O!SBExek(RQVl!5&+AW%L zBVxjI5Bn}%i{Dr&H#<07P0*g($B64FSQ zW59SI*J5TLnB=xS6uw{K;-3C6J)pUy&Zn~J=?@JtVUt*KVg^N&p3AbmGXvtxy_7e3 z1k}0<7nfmoNLPcWerwWe0tXrb^1OH8IAg&c+>o;^MZb#fS6%fl{ou_$&S$Va?B0n7YQ5XMRlJO zROw!r*yioU7>%aqOSH>9ohGR|DALK4HBKn{ckvS{kPeE=qYFVTK-t;}KdBY|%V+9$ z#Ji3?vm2OpKVagajYzLM>H#)Kj5<u(SPks9{&0xDe!V+-oEy}(yN z>KbP+{SyaMFDvv>qP0$wl>jH4GBliXa97L;?wEF|h{v6-rTD$IZL_%j7yEP|wrvKAX4TX!v0OPnX-6MSe`p4B&#h8nEDdSHgdp-uirs&j5dvTZvrrDoWL@MZe zz+`fZAMNH^%f`p?W`*Y*c4|pnYM*jvlm+(0!dU>W|6@`_xmn6iX(C0W5^RHT!uJmS zP@v92q2>)Fk^1SlQ%S?hF2 zbUeCQ--(ok1a;5>_8h`!Griq+Z{d3SPUwBglXK5q0C?AYQA+`^`ZStPZJF!HS!=eY zIr;WA`#PL5IOcqg|9#tcZ@E`t^cuKU+w-cs>2E$~Xv#W>zHt|z?Dok@1cFWLOA|#+ zSxJ2Lht$rtjF<1uO}NGZZ&v1h%0FRm0M|>VxLYZl=UHiGg$OS=goX;tr3fT2b7EM1 zX*%;p)vGDux?#gr_*mQ1hDgSmDq@UQ0?-7yAqn45s}^M>-f zAGQN<_m3;tIIv|j)*dM1YQ7LV5^v%voa@QmV7xnEF~MlVswxtysZ+g z?C&8jVGYT)13!H-q2U#${N#LPR_d5srMq{kn!@>+&f0K}RQ=lc1VeMus3vjtS54D} z3VR;aVYHJ~CgKk3<0FCSzdF;=cNcWVIK45nrPnGQ!zwPH&;7A0a*U6%EZ}1kibke@Ru=fpW*`@Q5zd3{s94DVPOUn zg&Ghe;8V|A{!b>I?U3+;pf6CkiztV$ayvG(X})t=wZi7x{F^X@FV>Tr#K=nfMY`oF z$L;yB_r-kI>5#B(s*wH==!Q}FW_l>R9O*|&72uqF|07^BWxv9i-!ux7lG}mN_3pG< z-Qg-I*m=-5t^WMQ&7S#8uEtL-M*?UBDjJcR2uh;GkBy$bPk$afd^4qln*4dk0(*q(`#U5;DMoVl2H;b5I=j*2 zZC(5izB}@^-4=_a5UgG@P}pp)*~uOq4v|dwc}L?we3wCSa&mw!^ugkJCIyd z=vfr%a;HB5Ab{gH1;7Y)?SGAL%P*C@L{g4 z`ceh^%f|QPQ(7asDiHv=(yV>ZV9<(!PXIvdhQkT(l`kCRTq7N47y<*~ zxkpLUjK?@qq%nSL0NB5&`D;6PdoiUuH>Eu+&CCpO+C1lAUa9tBnD>njdxziJ6WuxD ztLU?wzso;=QM@fav;Fb<;g{WQcYLYi|4-_2X;MB77y&5h2B9D8 zHJ6G=tfh!OU3f4~&d#v<+ya_Zw6wHku7|pB-n>DRJ4bo`oPwGc@@CT?(67b%s@>Q>}05)ql^u~z-q3E9Nxr)pXY3@kCM2U#IBoSQ|Pl^>%1PC zuU`9g!>h&PBfZDI$zMH*U2j6BHCq=UHwr8bQM}1gt30q^2OcV6;@oX&Y7px^qFkD^U@gYcsoN&YyFLoJGe*lD@X=_I@;|4`OOumaa%PA%DuKf@9 zUbdtzRh5rI`!-wGLOh>`khL-Oh=Maarp59MW3u07UkmsxV)b+vKa!Su{CL~S3G9@1d%+ZX52Ewm|UNYn;@r+_mv`>gEL-ZI2^K3*iJMQ?d70 zsTKAY3?bW`xtMvuDpr+Z-Ic2{Xw*l0Qe8JUp?B^?1(tON`KQ;x|FCKpkohO%uK_Aj zEq@}GpM5K1sxZJ60+jD${gLkN`|?Bu54J=>NNK+Hon`PKn}9)}D(bWJnkAjMb6}CA z-T&9{^n`>#E9|R>5ZAs5pb{SDz4SUL!o>?<{G50* zy^$hb@WOh>A?r1u%#P)9H0x=MR>v9pT6LW1DL=XZ*`bS4ac*NPHkgH$PyhC!C30w1 zn2md7$Op*7K)Dd9-Ln51nWi0gnW*+I5wLs;uZM_r`4ZFQEp*9X#BIPwzN#&!Mbuqr zAhukts?0N^O-!ZBGS^sbX!;j7#SA`?HE9pv(lofEL1CE*+v5Nsc@4lh;ZdTUtJyag zzTE^j`1}g`?0d&el47`hIc^;3jk#7MG}YsI@0fWInZ2)Ovpctq+->W9hqE(>C;S&f z#+)i~Z;l|{_^Q_KfZr%<&f7h&u1JcW5B9iPd!jr8y>>CzSd99mj985>r5^Yx@f(3W z+HWnH%QBJIo)U)+5SKV1Qilk!x{v()gc#Zu5XL^}$Y&2*aFEgJ|2%!*Nc6va6u}ve z=KV$C)lM8%A+9+~?e^&HgjgP7WJRYFk1U{fNNSjsT>Vs5rH=Gi&YJG?;m-4C)qy|o zd+rk3dbEJ_5`cnG2gV|_J8|yPu&|-Z!Uo!3>>Rosj>3NMAu|6uk<%}06gw1P`)ywpGdq(M&342XE z!dVL`5o>V9lUV1B(A(h*4Xfj8Ot2-mF8cB(?CpDzH6rnU?{hBv$>R}(T)l~F%fNAO z3LK-uN+RskM#yRUKIcJE69(R9yDs6VTYYEtjLC+n+gN|n?8RXR2J+J8<7TFs>QPzk zCvRC-SNy^(O(Nk2e>aW@XvVv(BZx+DumO}0WNEJI3pSH=nD8?n(GAJp%QNJ>CwzVP zTUm0m24~xBi(M9^Wa5_{3-lcYT9Yol4>xFu5TIiddMh^!qc(>?H}>~=Q+WY_HXN}q zvWZm;!?%Sc4ty~TrZ7|H2Vq4QF1`)7{EKh(n90N%>`Cp``$t*`bZ_T%t4L3vLZzW@ zPa$z?7=U!Nb#QjJ-O?3GbnmzJnmGkI_11p_)=6N-y=^3%#o}|+MA{?2;?om;1&Ti1 zCM4vMPMbX>3Pl^x5z`VST>8Uz!Q7aS+Fmp%0uCyPf6*PvEqt=GXiD>b5MLn5 zUrdXP1WqH^1+NOVOY_$Yr}HNNgkAW&{NRZ~RE*(Y1!eU49y9DIOubo@<%H(ThIKXb z^d601=HO%NT@Pv5*<-uArR(bJg}&`ZOUE70h^Rgt{jDxy!Q?dmK{WX@FS=yL>_vf)s=W5@FPQ%yYhN7|^}2?OQX-`yARr(D zBHdjoAl)Dh(%qedG)Q-&ba!`m*U$qDFu>3?^xScuv(Me<##;A}J8Kb(HT>qwH=p-? zK5W%6JqG}XYdwXGz|T+$#M*KGY5x!*A=()-Awct6>s|h2=TBK1eRD%m&j(&TwOVya z?*C*!{{OY|c4ns37Rm45-~w{sfVbvmL+F9p#sMkp4W8X#zxd-3WlKk5G7iN?oJIn^ z>~he^LM$=XU&sX?i*U>^gwOszbsI8kG?SK&m-8ZDqc4?RAC*HsGCG1noU5bD3-Zp_5i>%^@Ay&0Aj1$-I^N5pQxV5nk`X@G!=ac)?E- zZRS_3hO6k%os7ehIg*dGu;@J~z6D*dufGmA)oO(9R3RES#6r?&-`b6|U}&>rRxW=8 z0DeJz62|B4<&7TSB9V~5XIwiQ{)Ga0ixE;dBbE2f zc@`Y2Q}6MN&`>FADhGWz)#hml84jhlfK%)8IDUt~r#V(b*Q)= zevOiKno(aGtzPZS#dKd^T3a_)nRa_6t8lJK?|zxpQi1Y+Eion0!8@%X1vYPiQU%W! z8NVMWk8UGC5dLjx>Egr^pp~y_r%E%j;x!3}SwxUDN%(KdUpId;=u?(r{G^xY5`fD} z$N{a1!4sV2!o7~dDBsUyFy9mnx79aae9weyPYh}xK747o(VAP90<#lEMW^(MYo;})8AZ!qyBth;Na{;@*nNqknG;TCjgI*4U9Zk&4E;% zjYC%I>@k6OzjD@wvrEywBpvF1OEi4m(e^__UV~N`M-j8z9nfd=C1Tkwv?1DiTI&7` z(XS0OQcOskg6NNQJ+}Jdt<2i~UTW$1jhHDDNM0 ztgIZh9!b7?>>Hisi$EknI$lBWidOh?e4qVlhq8O~SpneZm*C4f3>je}_g(5i%SCU%o2bTzPLA6QH}KC};ynK#$Qa%{!0Z^wdn5Z-ZR0g@HXf2Pk0nsf#M+DH z_d-!I?^r({e+>d5a0in+psDZ+z1=``o?-Iq7BexRL7Q@Kg=waVkODnsz)4eA6*0Y@ zrI!EBvwoy}yO(WrXU^3Q>^nsuf1OQH7+qzr)R9MXE0Sf_5>)EyyEg)`eUC}PWySIV^#B3x*-0_YWE~f}`y;qxYW~Y^ zcyf!tkMMZka%5y=2*yE=XA0y=2w^PAi3yZn{@541(*Kn9Hy{3rT#U!Q10y;z{^J$1 zk^SHKQbb9g^WtAr#Qzbul!!dvKci{?Z$*Cp3=oYonhI_Bv1h%3gn5Czh@3D`bPUoN z-#e`RQ!0+r5<01}4yRhBGoD49=iP{Vu|7uqfy_Wi|MwC7!-V=XoBx-Z!qNXNG~=bp zv|DTt&$-A$;>WZx@=H40QEc3kF#QH)+{+++ENO@QwC`G&*z{*ey6fxccppR`#`h7P zdX{}Ap&!nh-d9&3y79%HOU#T&52YD|sg^xc(8>HNWbH;$Z@lXEb5;UkKYVU5 zC47j|2MK@UBNhhIhG_*bnGGc;F{MXzz0@PwufA;6&+(S0Mb#jp0=P1Uj2COafsCdE|_JMxzlFJIw;cazuE>CsrzgF%mMP+H71IBUuDJc?p}# zJFgtY-n%bb_lxo#r$d3~X)b_&^83qiJIL~Wpsc5`Hc(p#E8jGj}c)RiSH z4PRPWo+M+}yAZE2ym!^0lh&L6S)yNXFDRc}B@_Ct8|W0X*jSm)y=3mjn3X3yct?yr zx2^qsSx<6G#Jm`?&7io-^>zvNIIkeoA}4JP@ER~A4ob0eKif@256O3m76iO744QKj$L-!$BP7sU&onWVX!~hd8U*( zya@&Is=ty~{id*C>A}+VXDIvbd!g@(wfMp@exxLRJ}vjy2Mtr$m$E9NO~`EKsLle9 zv)xXC;F--qE$ARK!;iXSPF6Y~1UibK~BXNqeGwzrF(Wz^Sy)y{&iw`{uQs z{qHc37w79}0bpJHnNr>|C|_babMfmX;v=BYB9N-=T$b*8$Q25cb4RLP;{!l~fl8n; zLg(^wR;@#HJ^?aw9W!MFpG%P^Q+}NEx9dslFx4}<{G6d1#HS=j~&-bBN>Q)4*?Jb|vGhdNloKu8=sx}&W1L!f+5G%L`UlhPQfj%?3fA;PyPgX zMrzJ3US^7fJbBgWqnZ+aGq~r=#fA?oz@~_Rv>Mt~%bd$Rj-Dza;9I`sEA3aSQNpZI znlP{xz40Et%^o-5RITvIy>sPMdrtC!7M`S?wWZC|B1DE`)zVq-MdAD92R9qKY<&8< z3gfub)h0oxiGYesnZ0V~ypq_I2oY6FVnnF^k!#%0AlCEPtGc3BWkXb> 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¬`lEsOV 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 z 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 literal 0 HcmV?d00001 diff --git a/docs/nuget-org/media/sponsorship-link-error-manage-package.png b/docs/nuget-org/media/sponsorship-link-error-manage-package.png new file mode 100644 index 0000000000000000000000000000000000000000..8862f267a9095450ef24cf576d774d25f39cfd67 GIT binary patch literal 75623 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 R-!z)hHS?<#SML1&{{cX1N_qeQ literal 0 HcmV?d00001 diff --git a/docs/nuget-org/media/sponsorship-section-manage-package-page.png b/docs/nuget-org/media/sponsorship-section-manage-package-page.png new file mode 100644 index 0000000000000000000000000000000000000000..7f9acd289388ead7667ad1e2daa7f668ef3e1bb1 GIT binary patch literal 89337 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 [!IMPORTANT] +> These links take you to third-party platforms. Microsoft isn't affiliated with or responsible for the content or practices of third-party platforms, and we don't endorse them. Microsoft reserves the right to remove any allowed third-party platforms. + +## Frequently asked questions + +**Can I add sponsorship information to older versions of my package?** + +Yes! Sponsorship information is managed at the package ID level, so it automatically applies to all versions of your package, including previously published versions. + +**What happens if my sponsorship platform URL changes?** + +You can update your sponsorship URLs anytime through the package management page. Changes take effect immediately across all versions. + +**Can I see analytics on how many people selected my sponsorship links?** + +No, NuGet.org doesn't track sponsorship link selections. You'll need to check analytics on your sponsorship platform directly. + +**Can I add custom sponsorship platforms not on the approved list?** + +Currently, only the approved list of platforms is supported. This helps ensure security and legitimacy of sponsorship links. If you'd like to request a new platform to be added to the approved list, you can open an issue on the [NuGet Gallery repository](https://github.com/NuGet/NuGetGallery/issues). + +**Does NuGet.org store my financial information?** + +No personal or financial data is stored by NuGet.org. All transactions occur on secure external platforms that a maintainer chooses for sponsoring their packages. + From 4a9e01f864ac1c5cb99824c3e18803e8617b5c93 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Fri, 24 Oct 2025 14:58:25 +1030 Subject: [PATCH 978/988] Add section on audit errors on CI only (#3491) --- docs/concepts/Auditing-Packages.md | 34 +++++++++++++++++++++++++++++- 1 file changed, 33 insertions(+), 1 deletion(-) diff --git a/docs/concepts/Auditing-Packages.md b/docs/concepts/Auditing-Packages.md index fff6752b3..03dbaf9b0 100644 --- a/docs/concepts/Auditing-Packages.md +++ b/docs/concepts/Auditing-Packages.md @@ -115,7 +115,39 @@ Alternatively, if you want to keep low and moderate vulnerabilities as warnings, > [!NOTE] > MSBuild properties for message severity such as `NoWarn` and `TreatWarningsAsErrors` are not supported for packages.config projects. -## Ensure restore audited projects +## Running NuGet Audit in CI + +### Separating Errors from Warnings with a Dedicated Auditing Pipeline + +You can use MSBuild's conditional statements to configure a dedicated CI pipeline for running audits, without audit warnings being treated as errors in other pipelines or on local builds. +Depending on your CI system and team processes, you can have failed runs of the audit pipeline email the team, or you may have a dashboard where you can show a badge of the most recent run of the pipeline. + +Like many things in programming, there are multiple ways to achieve the outcome. +One option is to treat NuGet Audit warnings as errors only in an audit pipeline. + +```xml + + NU1900;NU1901;NU1902;NU1903;NU1904;NU1905 + $(WarningsAsErrors);$(NuGetAuditCodes) + $(WarningsNotAsErrors);$(NuGetAuditCodes) + +``` + +Then in your pipeline, you run restore specifying the property used by the condition. +For example, using GitHub Actions syntax: + +```yml +- name: Restore with NuGet Auditing + run: dotnet restore -p:AuditPipeline=true +``` + +The property name `AuditPipeline` is only an example, and you can customize it as you wish, as long as the name is the same in both the MSBuild condition and the command line. +MSBuild also uses environment variables when reading a property that has not yet been defined, so an environment variable is an alternative to the command line parameter. + +By using conditions to selectively cause NuGet Audit warnings to fail a restore, you can have a dedicated pipeline to check packages for known vulnerabilities, while preventing new security advisories from blocking your bug fixes at inconvenient times. +Keeping NuGet Audit warnings enabled for local builds allows developers to get a non-blocking notification about new security advisories and can encourage upgrading package versions to fix the vulnerabilities more quickly than waiting for someone to check the audit pipeline status. + +### Ensure restore audited projects NuGet in MSBuild 17.13 and .NET 9.0.200 added output properties `RestoreProjectCount`, `RestoreSkippedCount` and `RestoreProjectsAuditedCount` on the restore task. This can be used to enforce that audit ran during a restore. From 349136fe0229d875bb52cf595a9b72a82a13aced Mon Sep 17 00:00:00 2001 From: Jeff Kluge Date: Mon, 27 Oct 2025 09:51:37 -0700 Subject: [PATCH 979/988] Add docs for NuGet MCP server (#3495) --- docs/TOC.md | 1 + docs/concepts/Auditing-Packages.md | 4 + docs/concepts/NuGet-MCP-Server.md | 104 ++++++++++++++++++ .../media/copilot-tools-menu-2022.png | Bin 0 -> 6186 bytes .../media/copilot-tools-menu-vs-code.png | Bin 0 -> 43964 bytes docs/concepts/media/copilot-tools-menu.png | Bin 0 -> 7421 bytes 6 files changed, 109 insertions(+) create mode 100644 docs/concepts/NuGet-MCP-Server.md create mode 100644 docs/concepts/media/copilot-tools-menu-2022.png create mode 100644 docs/concepts/media/copilot-tools-menu-vs-code.png create mode 100644 docs/concepts/media/copilot-tools-menu.png diff --git a/docs/TOC.md b/docs/TOC.md index 19874212c..0cf22d01f 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -79,6 +79,7 @@ ## [MSBuild .props and .targets](concepts/MSBuild-props-and-targets.md) ## [Troubleshooting Installed Packages](concepts/troubleshooting-installed-packages.md) ## [MCP servers in NuGet packages](concepts/nuget-mcp.md) +## [Configuring the NuGet MCP Server](concepts/NuGet-MCP-Server.md) # Reference ## [.nuspec](reference/nuspec.md) ## [nuget.config file](reference/nuget-config-file.md) diff --git a/docs/concepts/Auditing-Packages.md b/docs/concepts/Auditing-Packages.md index 03dbaf9b0..74a0977e8 100644 --- a/docs/concepts/Auditing-Packages.md +++ b/docs/concepts/Auditing-Packages.md @@ -202,6 +202,10 @@ If a known vulnerability exists in a top-level package's transitive dependencies - [Suppress the advisory](#excluding-advisories) until it can be addressed. - File an issue in the top-level package's tracker to request an update. +### Use Copilot to update packages +NuGet has released a Model Context Protocol (MCP) server that has the ability to update packages in your project to versions that resolve known vulnerabilities. +See [Fixing package vulnerabilities](NuGet-MCP-Server.md#fixing-package-vulnerabilities) for more information. + ### Security vulnerabilities found with no updates In the case that a known vulnerability exists in a package without a security fix, you can do the following. diff --git a/docs/concepts/NuGet-MCP-Server.md b/docs/concepts/NuGet-MCP-Server.md new file mode 100644 index 000000000..9a51f1d89 --- /dev/null +++ b/docs/concepts/NuGet-MCP-Server.md @@ -0,0 +1,104 @@ +--- +title: Using the NuGet Model Context Protocol (MCP) Server +description: How to configure and use the NuGet Model Context Protocol (MCP) server. +author: jeffkl +ms.author: jeffkl +ms.topic: conceptual +ms.date: 10/01/2025 +--- + +# Using the NuGet Model Context Protocol (MCP) Server + +## Requirements + +To run the MCP server, you must have **[.NET 10 SDK or later](https://dotnet.microsoft.com/en-us/download/dotnet/10.0)** installed. +This version of .NET adds a command, `dnx`, which is used to download, install, and run the MCP server from [nuget.org](https://nuget.org). + +To verify your .NET version, run the following command in your terminal: +```bash +dotnet --info +``` + +## Getting started in Visual Studio 2026 + +In Visual Studio 2026, the NuGet MCP server is built-in but must be enabled once in order to use its functionality. + +To enable the NuGet MCP server, follow these steps: +1. Open Visual Studio 2026. +1. Open the GitHub Copilot Chat window and make sure you are signed in. +1. Click the tools icon in the bottom toolbar to bring up the Tools menu. +1. Find the MCP server named "nuget" and check the box to enable it. + +![GitHub Copilot Chat Tools window in Visual Studio 2026](./media/copilot-tools-menu.png) + +## Getting started in Visual Studio 2022 + +> [!NOTE] +> You must have Visual Studio 2022 17.14 or later in order to configure an MCP server. + +In Visual Studio 2022, you must manually add the NuGet MCP server to your configuration. +There are several configuration files that Visual Studio 2022 uses to define MCP servers. +See [Use MCP Servers](/visualstudio/ide/mcp-servers) for more information on which file to configure. + +Once you have identified the correct configuration file, add the following JSON snippet to your `mcp.json`: +```json +{ + "servers": { + "nuget": { + "type": "stdio", + "command": "dnx", + "args": [ "NuGet.Mcp.Server", "--source", "https://api.nuget.org/v3/index.json", "--yes" ] + } + } +} +``` + +This will configure Visual Studio 2022 to use the latest version of the NuGet MCP server from nuget.org. +To verify that the MCP server is working correctly, open the GitHub Copilot Chat window and make sure you are signed in. +Then click the Tools icon in the bottom toolbar to bring up the Tools menu. +You should see the MCP server named "nuget" in the list of available servers. + +![GitHub Copilot Chat Tools window in Visual Studio 2022](./media/copilot-tools-menu-2022.png) + +## Getting started in VS Code + +To configure the NuGet MCP server in VS Code click the appropriate button below and it will be set up. + +[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install_Server-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)]( +https://vscode.dev/redirect/mcp/install?name=NuGet&config=%7B%22name%22%3A%22NuGet.Mcp.Server%22%2C%22command%22%3A%22dnx%22%2C%22args%22%3A%5B%22NuGet.Mcp.Server%22%2C%22https%3A%2F%2Fapi.nuget.org%2Fv3%2Findex.json%22%2Cnull%2Cnull%5D%7D) [![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install_Server-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://vscode.dev/redirect/mcp/install?name=NuGet&config=%7B%22name%22%3A%22NuGet.Mcp.Server%22%2C%22command%22%3A%22dnx%22%2C%22args%22%3A%5B%22NuGet.Mcp.Server%22%2C%22https%3A%2F%2Fapi.nuget.org%2Fv3%2Findex.json%22%2Cnull%2Cnull%5D%7D&quality=insiders) + +> ![GitHub Copilot Chat Tools window in VS Code](./media/copilot-tools-menu-vs-code.png) + +To verify that the MCP server is working correctly, open the GitHub Copilot Chat window and make sure you are signed in. +Then click the Tools icon in the bottom toolbar to bring up the Tools menu. +You should see the MCP server named "nuget" in the list of available servers. + +## Fixing package vulnerabilities + +The NuGet MCP server can help you identify and fix package vulnerabilities in your project. +To use the MCP server to fix vulnerabilities, enter the following prompt in the GitHub Copilot Chat window: + +> Fix my package vulnerabilities + +The MCP server will analyze your project's dependencies and suggest updates to packages that have known vulnerabilities. + +## Updating all packages + +The NuGet MCP server can also update your packages to the latest compatible versions. +To use the MCP server to update all packages, enter the following prompt in the GitHub Copilot Chat window: + +> Update all my packages to the latest compatible versions + +The MCP server will analyze your project's target framework(s) and suggest updates to the latest version of packages that are compatible with your project. + +## Update a package to a specific version + +The NuGet MCP server can update a specific package to a version you specify. +To do so, enter the following prompt in the GitHub Copilot Chat window: + +> Update the package [PackageName] to version [VersionNumber] + +## Support + +If you experience an issue with the NuGet MCP server or have any other feedback, please open an issue on the [NuGet GitHub repository](https://github.com/NuGet/Home/issues/new?template=MCPSERVER.yml). +Please provide the requested information in the issue template so that we can better understand and address your issue or suggestion. \ No newline at end of file diff --git a/docs/concepts/media/copilot-tools-menu-2022.png b/docs/concepts/media/copilot-tools-menu-2022.png new file mode 100644 index 0000000000000000000000000000000000000000..3fe2bdfb5b92f4f963da6e368554347f9ac008e6 GIT binary patch literal 6186 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

    h@cU? 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 V>bB8O1Q#B79k#TwDBOQG{Qm=vqG134 literal 0 HcmV?d00001 diff --git a/docs/concepts/media/copilot-tools-menu.png b/docs/concepts/media/copilot-tools-menu.png new file mode 100644 index 0000000000000000000000000000000000000000..ec50337512b2b55f38211d504356f6c5d283a873 GIT binary patch literal 7421 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 s*PTU3Y-qqNg~#zL_No`(y3Q_bno~Q3 Date: Fri, 31 Oct 2025 06:47:20 +0800 Subject: [PATCH 980/988] Bulk update ms.topic, folder: api,archive,concepts,consume-packages,create-packages,guides,hosting-packages,nuget-org,policies,reference,release-notes,resources,visual-studio-extensibility (#3500) --- docs/api/NuGet-Protocols.md | 2 +- docs/api/implementation-guide.md | 4 ++-- docs/api/tools-json.md | 2 +- docs/archive/project-json-and-uwp.md | 2 +- docs/archive/project-json-impact.md | 2 +- docs/concepts/Auditing-Packages.md | 2 +- docs/concepts/Dependency-Resolution.md | 2 +- docs/concepts/MSBuild-props-and-targets.md | 2 +- docs/concepts/Security-Best-Practices.md | 2 +- docs/concepts/nuget-mcp.md | 2 +- docs/concepts/package-installation-process.md | 2 +- docs/concepts/troubleshooting-installed-packages.md | 2 +- docs/consume-packages/Central-Package-Management.md | 4 ++-- docs/consume-packages/Finding-and-Choosing-Packages.md | 2 +- docs/consume-packages/Overview-and-Workflow.md | 2 +- docs/consume-packages/Package-References-in-Project-Files.md | 2 +- docs/consume-packages/Package-Restore.md | 2 +- docs/consume-packages/Package-Source-Mapping.md | 2 +- docs/consume-packages/Package-restore-troubleshooting.md | 2 +- docs/consume-packages/PackageDownload-Functionality.md | 2 +- docs/consume-packages/Packages-and-Source-Control.md | 2 +- docs/consume-packages/Reinstalling-and-Updating-Packages.md | 2 +- docs/consume-packages/Team-Foundation-Build.md | 2 +- docs/consume-packages/configuring-nuget-behavior.md | 2 +- .../consuming-packages-authenticated-feeds.md | 2 +- docs/consume-packages/install-use-packages-dotnet-cli.md | 2 +- docs/consume-packages/install-use-packages-nuget-cli.md | 2 +- docs/consume-packages/install-use-packages-powershell.md | 2 +- docs/consume-packages/install-use-packages-visual-studio.md | 2 +- docs/consume-packages/installing-signed-packages.md | 2 +- .../managing-the-global-packages-and-cache-folders.md | 2 +- .../migrate-packages-config-to-package-reference.md | 2 +- docs/create-packages/Creating-Localized-Packages.md | 2 +- docs/create-packages/Creating-a-Package.md | 2 +- docs/create-packages/Overview-and-Workflow.md | 2 +- docs/create-packages/Package-authoring-best-practices.md | 2 +- docs/create-packages/Prerelease-Packages.md | 2 +- .../Select-assemblies-referenced-by-projects.md | 2 +- docs/create-packages/Sign-a-Package.md | 2 +- .../create-packages/Source-and-Config-File-Transformations.md | 4 ++-- docs/create-packages/Supporting-Multiple-Target-Frameworks.md | 4 ++-- docs/create-packages/Symbol-Packages.md | 2 +- .../author-packages-with-COM-interop-assemblies.md | 4 ++-- docs/create-packages/creating-a-package-dotnet-cli.md | 2 +- docs/create-packages/creating-a-package-msbuild.md | 2 +- .../multiple-target-frameworks-project-file.md | 2 +- docs/create-packages/native-files-in-net-packages.md | 2 +- docs/create-packages/set-package-type.md | 2 +- docs/guides/Native-Packages.md | 2 +- docs/guides/analyzers-conventions.md | 2 +- docs/hosting-packages/Local-Feeds.md | 2 +- docs/hosting-packages/NuGet-Server.md | 2 +- docs/hosting-packages/Overview.md | 2 +- docs/nuget-org/Deprecate-packages.md | 2 +- docs/nuget-org/Publish-a-package.md | 2 +- docs/nuget-org/individual-accounts.md | 2 +- docs/nuget-org/licenses.nuget.org.md | 3 ++- docs/nuget-org/nuget-org-faq.yml | 2 +- docs/nuget-org/organizations-on-nuget-org.md | 2 +- docs/nuget-org/overview-nuget-org.md | 2 +- docs/nuget-org/package-readme-on-nuget-org.md | 2 +- docs/nuget-org/package-sponsorship-on-nuget-org.md | 2 +- docs/nuget-org/policies/data-requests.md | 2 +- docs/nuget-org/policies/deleting-packages.md | 2 +- docs/nuget-org/policies/dispute-resolution.md | 2 +- docs/nuget-org/policies/export-control.md | 2 +- docs/nuget-org/scoped-api-keys.md | 4 ++-- docs/nuget-org/trusted-publishing.md | 2 +- docs/policies/Ecosystem.md | 2 +- docs/policies/Governance.md | 2 +- docs/reference/NuGet-Client-SDK.md | 2 +- docs/reference/dotnet-Commands.md | 2 +- .../NuGet-Credential-Providers-for-Visual-Studio.md | 2 +- .../NuGet-Cross-Platform-Authentication-Plugin.md | 2 +- docs/reference/extensibility/NuGet-Cross-Platform-Plugins.md | 2 +- .../reference/extensibility/nuget-exe-Credential-Providers.md | 2 +- docs/reference/msbuild-targets.md | 2 +- docs/release-notes/Index.md | 2 +- docs/release-notes/Known-Issues.md | 2 +- docs/release-notes/NuGet-1.1.md | 4 ++-- docs/release-notes/NuGet-1.2.md | 4 ++-- docs/release-notes/NuGet-1.3.md | 2 +- docs/release-notes/NuGet-1.4.md | 2 +- docs/release-notes/NuGet-1.5.md | 2 +- docs/release-notes/NuGet-1.6.md | 2 +- docs/release-notes/NuGet-1.7.md | 2 +- docs/release-notes/NuGet-1.8.md | 4 ++-- docs/release-notes/NuGet-2.0.md | 2 +- docs/release-notes/NuGet-2.1.md | 2 +- docs/release-notes/NuGet-2.12-RC.md | 2 +- docs/release-notes/NuGet-2.12.md | 2 +- docs/release-notes/NuGet-2.2.1.md | 2 +- docs/release-notes/NuGet-2.2.md | 2 +- docs/release-notes/NuGet-2.5.md | 2 +- docs/release-notes/NuGet-2.6.1-for-WebMatrix.md | 2 +- docs/release-notes/NuGet-2.6.md | 4 ++-- docs/release-notes/NuGet-2.7.1.md | 2 +- docs/release-notes/NuGet-2.7.2.md | 2 +- docs/release-notes/NuGet-2.7.md | 2 +- docs/release-notes/NuGet-2.8.1.md | 2 +- docs/release-notes/NuGet-2.8.2.md | 2 +- docs/release-notes/NuGet-2.8.3.md | 2 +- docs/release-notes/NuGet-2.8.5.md | 4 ++-- docs/release-notes/NuGet-2.8.6.md | 4 ++-- docs/release-notes/NuGet-2.8.7.md | 4 ++-- docs/release-notes/NuGet-2.8.md | 2 +- docs/release-notes/NuGet-2.9-RC.md | 2 +- docs/release-notes/NuGet-3.0-Beta.md | 2 +- docs/release-notes/NuGet-3.0-Preview.md | 4 ++-- docs/release-notes/NuGet-3.0-RC.md | 4 ++-- docs/release-notes/NuGet-3.0-RC2.md | 4 ++-- docs/release-notes/NuGet-3.0.0.md | 4 ++-- docs/release-notes/NuGet-3.1.1.md | 4 ++-- docs/release-notes/NuGet-3.1.md | 2 +- docs/release-notes/NuGet-3.2-RC.md | 4 ++-- docs/release-notes/NuGet-3.2.1.md | 4 ++-- docs/release-notes/NuGet-3.2.md | 4 ++-- docs/release-notes/NuGet-3.3.md | 4 ++-- docs/release-notes/NuGet-3.4-RC.md | 4 ++-- docs/release-notes/NuGet-3.4.1.md | 4 ++-- docs/release-notes/NuGet-3.4.2.md | 4 ++-- docs/release-notes/NuGet-3.4.3.md | 4 ++-- docs/release-notes/NuGet-3.4.4.md | 4 ++-- docs/release-notes/NuGet-3.4.md | 4 ++-- docs/release-notes/NuGet-3.5-Beta.md | 4 ++-- docs/release-notes/NuGet-3.5-Beta2.md | 4 ++-- docs/release-notes/NuGet-3.5-RC.md | 2 +- docs/release-notes/NuGet-3.5-RTM.md | 2 +- docs/release-notes/NuGet-4.0-RC.md | 2 +- docs/release-notes/NuGet-4.0-RTM.md | 2 +- docs/release-notes/NuGet-4.3-RTM.md | 2 +- docs/release-notes/NuGet-4.4-RTM.md | 2 +- docs/release-notes/NuGet-4.5-RTM.md | 2 +- docs/release-notes/NuGet-4.6-rtm.md | 2 +- docs/release-notes/NuGet-4.7-RTM.md | 2 +- docs/release-notes/NuGet-4.8-RTM.md | 2 +- docs/release-notes/NuGet-4.9-RTM.md | 2 +- docs/release-notes/NuGet-5.0-RTM.md | 4 ++-- docs/release-notes/NuGet-5.1-RTM.md | 2 +- docs/release-notes/NuGet-5.10.md | 2 +- docs/release-notes/NuGet-5.11.md | 2 +- docs/release-notes/NuGet-5.2-RTM.md | 2 +- docs/release-notes/NuGet-5.3.md | 2 +- docs/release-notes/NuGet-5.4.md | 2 +- docs/release-notes/NuGet-5.5.md | 2 +- docs/release-notes/NuGet-5.6.md | 2 +- docs/release-notes/NuGet-5.7.md | 2 +- docs/release-notes/NuGet-5.8.md | 2 +- docs/release-notes/NuGet-5.9.md | 2 +- docs/release-notes/NuGet-6.0.md | 2 +- docs/release-notes/NuGet-6.1.md | 2 +- docs/release-notes/NuGet-6.10.md | 2 +- docs/release-notes/NuGet-6.11.md | 2 +- docs/release-notes/NuGet-6.12.md | 2 +- docs/release-notes/NuGet-6.13.md | 4 ++-- docs/release-notes/NuGet-6.14.md | 2 +- docs/release-notes/NuGet-6.2.md | 2 +- docs/release-notes/NuGet-6.3.md | 4 ++-- docs/release-notes/NuGet-6.4.md | 2 +- docs/release-notes/NuGet-6.5.md | 4 ++-- docs/release-notes/NuGet-6.6.md | 4 ++-- docs/release-notes/NuGet-6.7.md | 2 +- docs/release-notes/NuGet-6.8.md | 2 +- docs/release-notes/NuGet-6.9.md | 4 ++-- docs/release-notes/NuGet-7.0.md | 2 +- docs/resources/NuGet-FAQ.yml | 2 +- docs/resources/check-project-format.md | 2 +- docs/visual-studio-extensibility/Visual-Studio-Templates.md | 2 +- 168 files changed, 205 insertions(+), 204 deletions(-) diff --git a/docs/api/NuGet-Protocols.md b/docs/api/NuGet-Protocols.md index 0a027b5c2..ab00ae0cd 100644 --- a/docs/api/NuGet-Protocols.md +++ b/docs/api/NuGet-Protocols.md @@ -4,7 +4,7 @@ description: The evolving nuget.org protocols to interact with NuGet clients. author: anangaur ms.author: anangaur ms.date: 01/21/2021 -ms.topic: conceptual +ms.topic: article ms.reviewer: kraigb --- diff --git a/docs/api/implementation-guide.md b/docs/api/implementation-guide.md index 136e545ee..6bc08aa28 100644 --- a/docs/api/implementation-guide.md +++ b/docs/api/implementation-guide.md @@ -4,7 +4,7 @@ description: Guidelines and recommendations to anyone implementing the NuGet Ser author: zivkan ms.author: zivkan ms.date: 07/29/2023 -ms.topic: conceptual +ms.topic: article --- # NuGet Server Implementation Guide @@ -150,4 +150,4 @@ If you wish to host search, or indeed any other NuGet API resource, on different ## Enable embedded README downloads -A [new resource](./readme-template-resource.md) was documented for constructing a URL that can be used to download a README for a given package. This will allow client, like the Package Management UI in VS, to display the embedded README for packages which haven't been previously installed by the user. The client will construct this URL and attempt to download the README, using the response to the request to determine if a README is available. This means servers should expect multiple requests to the constructed endpoint as users navigate the PM UI. \ No newline at end of file +A [new resource](./readme-template-resource.md) was documented for constructing a URL that can be used to download a README for a given package. This will allow client, like the Package Management UI in VS, to display the embedded README for packages which haven't been previously installed by the user. The client will construct this URL and attempt to download the README, using the response to the request to determine if a README is available. This means servers should expect multiple requests to the constructed endpoint as users navigate the PM UI. diff --git a/docs/api/tools-json.md b/docs/api/tools-json.md index 692e45b0e..f42b5c70c 100644 --- a/docs/api/tools-json.md +++ b/docs/api/tools-json.md @@ -4,7 +4,7 @@ description: The endpoint for author: jver ms.author: jver ms.date: 08/16/2018 -ms.topic: conceptual +ms.topic: article ms.reviewer: kraigb --- diff --git a/docs/archive/project-json-and-uwp.md b/docs/archive/project-json-and-uwp.md index 1fc741034..898f98a53 100644 --- a/docs/archive/project-json-and-uwp.md +++ b/docs/archive/project-json-and-uwp.md @@ -4,7 +4,7 @@ description: Description of how the project.json file is used to track NuGet dep author: JonDouglas ms.author: jodou ms.date: 07/17/2017 -ms.topic: conceptual +ms.topic: article --- # project.json and UWP diff --git a/docs/archive/project-json-impact.md b/docs/archive/project-json-impact.md index c8985f3ce..98569678f 100644 --- a/docs/archive/project-json-impact.md +++ b/docs/archive/project-json-impact.md @@ -4,7 +4,7 @@ description: Details on how the implementation of project.json in NuGet 3.x affe author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: conceptual +ms.topic: concept-article --- # Impact of project.json when creating packages diff --git a/docs/concepts/Auditing-Packages.md b/docs/concepts/Auditing-Packages.md index 74a0977e8..9ba52e166 100644 --- a/docs/concepts/Auditing-Packages.md +++ b/docs/concepts/Auditing-Packages.md @@ -3,7 +3,7 @@ title: Auditing package dependencies for security vulnerabilities description: How to audit package dependencies for security vulnerabilities and acting on security audit reports. author: JonDouglas ms.author: jodou -ms.topic: conceptual +ms.topic: how-to ms.date: 10/01/2025 --- diff --git a/docs/concepts/Dependency-Resolution.md b/docs/concepts/Dependency-Resolution.md index 81cb86f50..97f63ebae 100644 --- a/docs/concepts/Dependency-Resolution.md +++ b/docs/concepts/Dependency-Resolution.md @@ -4,7 +4,7 @@ description: Details on the process through which a NuGet package's dependencies author: JonDouglas ms.author: jodou ms.date: 08/14/2017 -ms.topic: conceptual +ms.topic: article --- # How NuGet resolves package dependencies diff --git a/docs/concepts/MSBuild-props-and-targets.md b/docs/concepts/MSBuild-props-and-targets.md index 10e630270..1f40da97a 100644 --- a/docs/concepts/MSBuild-props-and-targets.md +++ b/docs/concepts/MSBuild-props-and-targets.md @@ -4,7 +4,7 @@ description: Describes MSBuild props and targets in NuGet packages author: nkolev92 ms.author: nikolev ms.date: 07/13/2022 -ms.topic: conceptual +ms.topic: article --- # MSBuild .props and .targets in a package diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 771661ca9..d28f60fb0 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -3,7 +3,7 @@ title: Best practices for a secure software supply chain description: Best practices for securing your software supply chain using NuGet & GitHub. author: JonDouglas ms.author: jodou -ms.topic: conceptual +ms.topic: best-practice --- # Best practices for a secure software supply chain diff --git a/docs/concepts/nuget-mcp.md b/docs/concepts/nuget-mcp.md index d3c2f5658..42eeaa5af 100644 --- a/docs/concepts/nuget-mcp.md +++ b/docs/concepts/nuget-mcp.md @@ -3,7 +3,7 @@ title: MCP servers in NuGet packages description: How can MCP servers be distributed using NuGet? author: joelverhagen ms.author: jver -ms.topic: conceptual +ms.topic: article ms.date: 07/23/2025 --- diff --git a/docs/concepts/package-installation-process.md b/docs/concepts/package-installation-process.md index 7ca6863e8..76074a1c4 100644 --- a/docs/concepts/package-installation-process.md +++ b/docs/concepts/package-installation-process.md @@ -4,7 +4,7 @@ description: Detailed information about the package installation process author: JonDouglas ms.author: jodou ms.date: 06/20/2019 -ms.topic: conceptual +ms.topic: article --- # What happens when a NuGet package is installed? diff --git a/docs/concepts/troubleshooting-installed-packages.md b/docs/concepts/troubleshooting-installed-packages.md index 1b6c361b9..d06dfcebc 100644 --- a/docs/concepts/troubleshooting-installed-packages.md +++ b/docs/concepts/troubleshooting-installed-packages.md @@ -4,7 +4,7 @@ description: How to find which package source was used for individual packages author: JonDouglas ms.author: jodou ms.date: 03/26/2021 -ms.topic: conceptual +ms.topic: troubleshooting-general --- # Troubleshooting Installed Packages diff --git a/docs/consume-packages/Central-Package-Management.md b/docs/consume-packages/Central-Package-Management.md index dbbf6b145..66f7e9744 100644 --- a/docs/consume-packages/Central-Package-Management.md +++ b/docs/consume-packages/Central-Package-Management.md @@ -1,10 +1,10 @@ ---- +--- title: Central Package Management description: Manage your dependencies in a central location and learn how to get started with Central Package Management. author: jondouglas ms.author: jodou ms.date: 05/09/2022 -ms.topic: conceptual +ms.topic: article --- # Central Package Management (CPM) diff --git a/docs/consume-packages/Finding-and-Choosing-Packages.md b/docs/consume-packages/Finding-and-Choosing-Packages.md index 7b00fcd89..fef94e0cd 100644 --- a/docs/consume-packages/Finding-and-Choosing-Packages.md +++ b/docs/consume-packages/Finding-and-Choosing-Packages.md @@ -4,7 +4,7 @@ description: Find and evaluate publicly available NuGet packages for your projec author: JonDouglas ms.author: jodou ms.date: 03/03/2025 -ms.topic: conceptual +ms.topic: how-to --- # Find and evaluate NuGet packages for your project diff --git a/docs/consume-packages/Overview-and-Workflow.md b/docs/consume-packages/Overview-and-Workflow.md index 4c47052ab..b9bc8f527 100644 --- a/docs/consume-packages/Overview-and-Workflow.md +++ b/docs/consume-packages/Overview-and-Workflow.md @@ -4,7 +4,7 @@ description: An overview of the process of consuming NuGet packages in a project author: JonDouglas ms.author: jodou ms.date: 03/22/2018 -ms.topic: conceptual +ms.topic: concept-article --- # Package consumption workflow diff --git a/docs/consume-packages/Package-References-in-Project-Files.md b/docs/consume-packages/Package-References-in-Project-Files.md index c005f5e97..d9290e3cd 100644 --- a/docs/consume-packages/Package-References-in-Project-Files.md +++ b/docs/consume-packages/Package-References-in-Project-Files.md @@ -4,7 +4,7 @@ description: Details on NuGet PackageReference in project files as supported by author: nkolev92 ms.author: nikolev ms.date: 4/6/2022 -ms.topic: conceptual +ms.topic: article --- # `PackageReference` in project files diff --git a/docs/consume-packages/Package-Restore.md b/docs/consume-packages/Package-Restore.md index 531bb806f..62f1f673f 100644 --- a/docs/consume-packages/Package-Restore.md +++ b/docs/consume-packages/Package-Restore.md @@ -4,7 +4,7 @@ description: See an overview of how NuGet restores packages a project depends on author: JonDouglas ms.author: jodou ms.date: 10/20/2023 -ms.topic: conceptual +ms.topic: how-to --- # Restore packages with NuGet Package Restore diff --git a/docs/consume-packages/Package-Source-Mapping.md b/docs/consume-packages/Package-Source-Mapping.md index c9b4cba54..5386bb61d 100644 --- a/docs/consume-packages/Package-Source-Mapping.md +++ b/docs/consume-packages/Package-Source-Mapping.md @@ -4,7 +4,7 @@ description: Describes package source mapping functionality and how to onboard author: nkolev92 ms.author: nikolev ms.date: 10/18/2023 -ms.topic: conceptual +ms.topic: how-to --- # Package Source Mapping diff --git a/docs/consume-packages/Package-restore-troubleshooting.md b/docs/consume-packages/Package-restore-troubleshooting.md index 00c9957c0..1bac3ac4f 100644 --- a/docs/consume-packages/Package-restore-troubleshooting.md +++ b/docs/consume-packages/Package-restore-troubleshooting.md @@ -4,7 +4,7 @@ description: A description of common NuGet restore errors in Visual Studio and h author: JonDouglas ms.author: jodou ms.date: 05/25/2018 -ms.topic: conceptual +ms.topic: troubleshooting-general --- # Troubleshooting package restore errors diff --git a/docs/consume-packages/PackageDownload-Functionality.md b/docs/consume-packages/PackageDownload-Functionality.md index 2d926ad2e..8b5bb01b3 100644 --- a/docs/consume-packages/PackageDownload-Functionality.md +++ b/docs/consume-packages/PackageDownload-Functionality.md @@ -4,7 +4,7 @@ description: Describes the PackageDownload feature, which is a complement to Pac author: nkolev92 ms.author: nikolev ms.date: 12/22/2021 -ms.topic: conceptual +ms.topic: article --- # PackageDownload diff --git a/docs/consume-packages/Packages-and-Source-Control.md b/docs/consume-packages/Packages-and-Source-Control.md index dd01f03a7..2d7cb5516 100644 --- a/docs/consume-packages/Packages-and-Source-Control.md +++ b/docs/consume-packages/Packages-and-Source-Control.md @@ -4,7 +4,7 @@ description: Considerations for how to treat NuGet packages within version contr author: JonDouglas ms.author: jodou ms.date: 03/16/2018 -ms.topic: conceptual +ms.topic: how-to --- # Omitting NuGet packages in source control systems diff --git a/docs/consume-packages/Reinstalling-and-Updating-Packages.md b/docs/consume-packages/Reinstalling-and-Updating-Packages.md index 574b5257c..f4465e821 100644 --- a/docs/consume-packages/Reinstalling-and-Updating-Packages.md +++ b/docs/consume-packages/Reinstalling-and-Updating-Packages.md @@ -4,7 +4,7 @@ description: Learn how to reinstall and update NuGet packages to address broken author: JonDouglas ms.author: jodou ms.date: 11/03/2023 -ms.topic: conceptual +ms.topic: how-to --- # Reinstall and update NuGet packages in Visual Studio diff --git a/docs/consume-packages/Team-Foundation-Build.md b/docs/consume-packages/Team-Foundation-Build.md index 8d8fb405a..7b631ef7e 100644 --- a/docs/consume-packages/Team-Foundation-Build.md +++ b/docs/consume-packages/Team-Foundation-Build.md @@ -4,7 +4,7 @@ description: A walkthrough of how NuGet package restore with with Team Foundatio author: JonDouglas ms.author: jodou ms.date: 01/09/2017 -ms.topic: conceptual +ms.topic: concept-article --- # Setting up package restore with Team Foundation Build diff --git a/docs/consume-packages/configuring-nuget-behavior.md b/docs/consume-packages/configuring-nuget-behavior.md index ac178fc79..388cafd94 100644 --- a/docs/consume-packages/configuring-nuget-behavior.md +++ b/docs/consume-packages/configuring-nuget-behavior.md @@ -4,7 +4,7 @@ description: NuGet.Config files control NuGet's behavior, and can be modified wi author: JonDouglas ms.author: jodou ms.date: 01/10/2022 -ms.topic: conceptual +ms.topic: article --- # Common NuGet configurations diff --git a/docs/consume-packages/consuming-packages-authenticated-feeds.md b/docs/consume-packages/consuming-packages-authenticated-feeds.md index cf030bb2d..126662636 100644 --- a/docs/consume-packages/consuming-packages-authenticated-feeds.md +++ b/docs/consume-packages/consuming-packages-authenticated-feeds.md @@ -4,7 +4,7 @@ description: Consuming packages from authenticated feeds in all NuGet client sce author: nkolev92 ms.author: nikolev ms.date: 12/22/2023 -ms.topic: conceptual +ms.topic: how-to ms.custom: sfi-ropc-nochange --- diff --git a/docs/consume-packages/install-use-packages-dotnet-cli.md b/docs/consume-packages/install-use-packages-dotnet-cli.md index 39144ba75..44e878149 100644 --- a/docs/consume-packages/install-use-packages-dotnet-cli.md +++ b/docs/consume-packages/install-use-packages-dotnet-cli.md @@ -4,7 +4,7 @@ description: See how to use the dotnet CLI to install, list, remove, and update author: mikejo5000 ms.author: mikejo ms.date: 03/03/2025 -ms.topic: conceptual +ms.topic: install-set-up-deploy --- # Install and manage NuGet packages with the dotnet CLI diff --git a/docs/consume-packages/install-use-packages-nuget-cli.md b/docs/consume-packages/install-use-packages-nuget-cli.md index fe0a5e8f4..3b6639dc4 100644 --- a/docs/consume-packages/install-use-packages-nuget-cli.md +++ b/docs/consume-packages/install-use-packages-nuget-cli.md @@ -4,7 +4,7 @@ description: Instructions for using the NuGet CLI, nuget.exe, to manage NuGet pa author: mikejo5000 ms.author: mikejo ms.date: 03/03/2025 -ms.topic: conceptual +ms.topic: how-to --- # Manage NuGet packages with the NuGet CLI diff --git a/docs/consume-packages/install-use-packages-powershell.md b/docs/consume-packages/install-use-packages-powershell.md index d2a177423..0e7881326 100644 --- a/docs/consume-packages/install-use-packages-powershell.md +++ b/docs/consume-packages/install-use-packages-powershell.md @@ -4,7 +4,7 @@ description: See how to work with NuGet packages by using PowerShell commands in author: JonDouglas ms.author: jodou ms.date: 03/03/2025 -ms.topic: conceptual +ms.topic: how-to f1_keywords: - "vs.nuget.packagemanager.console" --- diff --git a/docs/consume-packages/install-use-packages-visual-studio.md b/docs/consume-packages/install-use-packages-visual-studio.md index 66f6cbfbb..db1eb5d54 100644 --- a/docs/consume-packages/install-use-packages-visual-studio.md +++ b/docs/consume-packages/install-use-packages-visual-studio.md @@ -4,7 +4,7 @@ description: Learn how to use the NuGet Package Manager UI in Visual Studio for author: JonDouglas ms.author: jodou ms.date: 03/03/2025 -ms.topic: conceptual +ms.topic: install-set-up-deploy f1_keywords: - "vs.nuget.packagemanager.ui" --- diff --git a/docs/consume-packages/installing-signed-packages.md b/docs/consume-packages/installing-signed-packages.md index 0814218f4..ad5e83f29 100644 --- a/docs/consume-packages/installing-signed-packages.md +++ b/docs/consume-packages/installing-signed-packages.md @@ -4,7 +4,7 @@ description: Describes the process of installing signed NuGet packages and confi author: JonDouglas ms.author: jodou ms.date: 11/29/2018 -ms.topic: conceptual +ms.topic: install-set-up-deploy --- # Manage package trust boundaries diff --git a/docs/consume-packages/managing-the-global-packages-and-cache-folders.md b/docs/consume-packages/managing-the-global-packages-and-cache-folders.md index 43a0e01c5..faac424cd 100644 --- a/docs/consume-packages/managing-the-global-packages-and-cache-folders.md +++ b/docs/consume-packages/managing-the-global-packages-and-cache-folders.md @@ -4,7 +4,7 @@ description: How to manage the global package installation folder, the package c author: JonDouglas ms.author: jodou ms.date: 03/19/2018 -ms.topic: conceptual +ms.topic: how-to --- # Managing the global packages, cache, and temp folders diff --git a/docs/consume-packages/migrate-packages-config-to-package-reference.md b/docs/consume-packages/migrate-packages-config-to-package-reference.md index 5dcf4c9a1..1bb9a436f 100644 --- a/docs/consume-packages/migrate-packages-config-to-package-reference.md +++ b/docs/consume-packages/migrate-packages-config-to-package-reference.md @@ -4,7 +4,7 @@ description: Details on how to migrate a project from the packages.config manage author: JonDouglas ms.author: jodou ms.date: 08/23/2021 -ms.topic: conceptual +ms.topic: upgrade-and-migration-article --- # Migrate from packages.config to PackageReference diff --git a/docs/create-packages/Creating-Localized-Packages.md b/docs/create-packages/Creating-Localized-Packages.md index e232765ba..92f7e6d15 100644 --- a/docs/create-packages/Creating-Localized-Packages.md +++ b/docs/create-packages/Creating-Localized-Packages.md @@ -4,7 +4,7 @@ description: Details on the two ways to create localized NuGet packages, either author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: conceptual +ms.topic: how-to --- # Creating localized NuGet packages diff --git a/docs/create-packages/Creating-a-Package.md b/docs/create-packages/Creating-a-Package.md index c894ade4a..d853b0e8b 100644 --- a/docs/create-packages/Creating-a-Package.md +++ b/docs/create-packages/Creating-a-Package.md @@ -4,7 +4,7 @@ description: A detailed guide on designing and creating a NuGet package, includi author: JonDouglas ms.author: jodou ms.date: 03/03/2025 -ms.topic: conceptual +ms.topic: how-to --- # Create a package using the nuget.exe CLI diff --git a/docs/create-packages/Overview-and-Workflow.md b/docs/create-packages/Overview-and-Workflow.md index 96984557b..ddda6fd80 100644 --- a/docs/create-packages/Overview-and-Workflow.md +++ b/docs/create-packages/Overview-and-Workflow.md @@ -4,7 +4,7 @@ description: An overview of the process of creating and publishing a NuGet packa author: JonDouglas ms.author: jodou ms.date: 07/26/2017 -ms.topic: conceptual +ms.topic: concept-article --- # Package creation workflow diff --git a/docs/create-packages/Package-authoring-best-practices.md b/docs/create-packages/Package-authoring-best-practices.md index 9d45b8bc1..f4451cbe0 100644 --- a/docs/create-packages/Package-authoring-best-practices.md +++ b/docs/create-packages/Package-authoring-best-practices.md @@ -4,7 +4,7 @@ description: A general guide of best practices for creating high quality NuGet p author: nkolev92 ms.author: nikolev ms.date: 11/15/2021 -ms.topic: conceptual +ms.topic: best-practice --- # Package authoring best practices diff --git a/docs/create-packages/Prerelease-Packages.md b/docs/create-packages/Prerelease-Packages.md index b8a08be74..89ffc0d19 100644 --- a/docs/create-packages/Prerelease-Packages.md +++ b/docs/create-packages/Prerelease-Packages.md @@ -4,7 +4,7 @@ description: Guidance for building pre-release packages author: JonDouglas ms.author: jodou ms.date: 08/14/2017 -ms.topic: conceptual +ms.topic: concept-article --- # Building pre-release packages diff --git a/docs/create-packages/Select-assemblies-referenced-by-projects.md b/docs/create-packages/Select-assemblies-referenced-by-projects.md index c984846e1..6eebd9a66 100644 --- a/docs/create-packages/Select-assemblies-referenced-by-projects.md +++ b/docs/create-packages/Select-assemblies-referenced-by-projects.md @@ -4,7 +4,7 @@ description: Make a subset of assemblies in the package available to the compile author: zivkan ms.author: zivkan ms.date: 05/24/2019 -ms.topic: conceptual +ms.topic: how-to --- # Select Assemblies Referenced By Projects diff --git a/docs/create-packages/Sign-a-Package.md b/docs/create-packages/Sign-a-Package.md index bcfb5fa83..098353fe7 100644 --- a/docs/create-packages/Sign-a-Package.md +++ b/docs/create-packages/Sign-a-Package.md @@ -4,7 +4,7 @@ description: Explains how signed packages can be used to enable content integrit author: rido-min ms.author: rmpablos ms.date: 03/06/2018 -ms.topic: conceptual +ms.topic: how-to ms.reviewer: anangaur ms.custom: sfi-image-nochange --- diff --git a/docs/create-packages/Source-and-Config-File-Transformations.md b/docs/create-packages/Source-and-Config-File-Transformations.md index 79402e54c..65f9f7659 100644 --- a/docs/create-packages/Source-and-Config-File-Transformations.md +++ b/docs/create-packages/Source-and-Config-File-Transformations.md @@ -4,7 +4,7 @@ description: Details on the ability for NuGet packages to transform source code author: JonDouglas ms.author: jodou ms.date: 04/24/2017 -ms.topic: conceptual +ms.topic: how-to ms.reviewer: anangaur --- @@ -174,4 +174,4 @@ To remove only the `MyNuModule` element during package uninstall, the `web.confi -``` \ No newline at end of file +``` diff --git a/docs/create-packages/Supporting-Multiple-Target-Frameworks.md b/docs/create-packages/Supporting-Multiple-Target-Frameworks.md index 91576a3c8..14fc9ffe4 100644 --- a/docs/create-packages/Supporting-Multiple-Target-Frameworks.md +++ b/docs/create-packages/Supporting-Multiple-Target-Frameworks.md @@ -4,7 +4,7 @@ description: Description of the various methods to target multiple .NET Framewor author: JonDouglas ms.author: jodou ms.date: 07/15/2019 -ms.topic: conceptual +ms.topic: concept-article --- # Support multiple .NET versions @@ -189,4 +189,4 @@ With `packages.config`, content files and PowerShell scripts can be grouped by t If a framework folder is left empty, NuGet doesn't add assembly references or content files or run the PowerShell scripts for that framework. > [!Note] -> Because `init.ps1` is executed at the solution level and not dependent on project, it must be placed directly under the `tools` folder. It's ignored if placed under a framework folder. \ No newline at end of file +> Because `init.ps1` is executed at the solution level and not dependent on project, it must be placed directly under the `tools` folder. It's ignored if placed under a framework folder. diff --git a/docs/create-packages/Symbol-Packages.md b/docs/create-packages/Symbol-Packages.md index 3226ec766..ae6f7387b 100644 --- a/docs/create-packages/Symbol-Packages.md +++ b/docs/create-packages/Symbol-Packages.md @@ -4,7 +4,7 @@ description: How to create NuGet packages that contain only symbols to support d author: JonDouglas ms.author: jodou ms.date: 09/12/2017 -ms.topic: conceptual +ms.topic: how-to ms.reviewer: anangaur --- diff --git a/docs/create-packages/author-packages-with-COM-interop-assemblies.md b/docs/create-packages/author-packages-with-COM-interop-assemblies.md index e37c68ce4..6c4a61385 100644 --- a/docs/create-packages/author-packages-with-COM-interop-assemblies.md +++ b/docs/create-packages/author-packages-with-COM-interop-assemblies.md @@ -4,7 +4,7 @@ description: Describes how to create packages that contain COM interop assemblie author: JonDouglas ms.author: jodou ms.date: 07/09/2019 -ms.topic: conceptual +ms.topic: article --- # Create NuGet packages that contain COM interop assemblies @@ -25,4 +25,4 @@ Note that when using the `packages.config` management format, adding references Additionally, by default the [build assets do not flow transitively](../consume-packages/package-references-in-project-files.md#controlling-dependency-assets). Packages authored as described here work differently when they are pulled as a transitive dependency from a project to project reference. The package consumer can allow them to flow by modifying the PrivateAssets default value to not include build. - \ No newline at end of file + diff --git a/docs/create-packages/creating-a-package-dotnet-cli.md b/docs/create-packages/creating-a-package-dotnet-cli.md index 498587233..2917a2ec0 100644 --- a/docs/create-packages/creating-a-package-dotnet-cli.md +++ b/docs/create-packages/creating-a-package-dotnet-cli.md @@ -4,7 +4,7 @@ description: Read a detailed guide about the process of designing and creating a author: JonDouglas ms.author: jodou ms.date: 03/03/2025 -ms.topic: conceptual +ms.topic: how-to --- # Create a NuGet package with the dotnet CLI diff --git a/docs/create-packages/creating-a-package-msbuild.md b/docs/create-packages/creating-a-package-msbuild.md index a07d92d5f..48f58e902 100644 --- a/docs/create-packages/creating-a-package-msbuild.md +++ b/docs/create-packages/creating-a-package-msbuild.md @@ -4,7 +4,7 @@ description: A detailed guide to the process of designing and creating a NuGet p author: JonDouglas ms.author: jodou ms.date: 08/17/2023 -ms.topic: conceptual +ms.topic: how-to --- # Create a NuGet package using MSBuild diff --git a/docs/create-packages/multiple-target-frameworks-project-file.md b/docs/create-packages/multiple-target-frameworks-project-file.md index 326dc1e6f..bd321d0d1 100644 --- a/docs/create-packages/multiple-target-frameworks-project-file.md +++ b/docs/create-packages/multiple-target-frameworks-project-file.md @@ -4,7 +4,7 @@ description: Description of the various methods to target multiple .NET Framewor author: JonDouglas ms.author: jodou ms.date: 07/15/2019 -ms.topic: conceptual +ms.topic: how-to --- # Support multiple .NET Framework versions in your project file diff --git a/docs/create-packages/native-files-in-net-packages.md b/docs/create-packages/native-files-in-net-packages.md index 8a690cb55..2b4d6ef95 100644 --- a/docs/create-packages/native-files-in-net-packages.md +++ b/docs/create-packages/native-files-in-net-packages.md @@ -4,7 +4,7 @@ description: How to pack native libraries in .NET packages author: zivkan ms.author: zivkan ms.date: 09/26/2023 -ms.topic: conceptual +ms.topic: concept-article --- # Including native libraries in .NET packages diff --git a/docs/create-packages/set-package-type.md b/docs/create-packages/set-package-type.md index 048bd1eff..ee8847234 100644 --- a/docs/create-packages/set-package-type.md +++ b/docs/create-packages/set-package-type.md @@ -4,7 +4,7 @@ description: Describes packages types to indicate intended use of a package. author: JonDouglas ms.author: jodou ms.date: 07/09/2019 -ms.topic: conceptual +ms.topic: how-to --- # Set a NuGet package type diff --git a/docs/guides/Native-Packages.md b/docs/guides/Native-Packages.md index 14f5c5353..68f42f4a7 100644 --- a/docs/guides/Native-Packages.md +++ b/docs/guides/Native-Packages.md @@ -4,7 +4,7 @@ description: Details on creating native NuGet packages that contains C++ code in author: JonDouglas ms.author: jodou ms.date: 01/09/2017 -ms.topic: conceptual +ms.topic: concept-article --- # Creating native packages diff --git a/docs/guides/analyzers-conventions.md b/docs/guides/analyzers-conventions.md index 8122c81dc..78156098d 100644 --- a/docs/guides/analyzers-conventions.md +++ b/docs/guides/analyzers-conventions.md @@ -4,7 +4,7 @@ description: Conventions for .NET analyzers that are packaged and distributed wi author: JonDouglas ms.author: jodou ms.date: 01/09/2017 -ms.topic: conceptual +ms.topic: article --- # Analyzer NuGet formats diff --git a/docs/hosting-packages/Local-Feeds.md b/docs/hosting-packages/Local-Feeds.md index de95954d3..6b422460f 100644 --- a/docs/hosting-packages/Local-Feeds.md +++ b/docs/hosting-packages/Local-Feeds.md @@ -4,7 +4,7 @@ description: How to create a local feed for NuGet packages using folders on your author: JonDouglas ms.author: jodou ms.date: 12/06/2017 -ms.topic: conceptual +ms.topic: how-to --- # Local feeds diff --git a/docs/hosting-packages/NuGet-Server.md b/docs/hosting-packages/NuGet-Server.md index 3c237ab33..b79f0a22e 100644 --- a/docs/hosting-packages/NuGet-Server.md +++ b/docs/hosting-packages/NuGet-Server.md @@ -4,7 +4,7 @@ description: How to create and host a NuGet package feed on any server running I author: JonDouglas ms.author: jodou ms.date: 07/11/2023 -ms.topic: conceptual +ms.topic: how-to --- # NuGet.Server diff --git a/docs/hosting-packages/Overview.md b/docs/hosting-packages/Overview.md index a7d8f686b..9d98050e0 100644 --- a/docs/hosting-packages/Overview.md +++ b/docs/hosting-packages/Overview.md @@ -4,7 +4,7 @@ description: An overview of options for hosting your own NuGet package feeds or author: JonDouglas ms.author: jodou ms.date: 3/2/2022 -ms.topic: conceptual +ms.topic: concept-article ms.reviewer: anangaur --- diff --git a/docs/nuget-org/Deprecate-packages.md b/docs/nuget-org/Deprecate-packages.md index c9189ce99..e3a365978 100644 --- a/docs/nuget-org/Deprecate-packages.md +++ b/docs/nuget-org/Deprecate-packages.md @@ -4,7 +4,7 @@ description: Detailed description on the process of deprecating packages and how author: anangaur ms.author: anangaur ms.date: 09/23/2019 -ms.topic: conceptual +ms.topic: how-to ms.reviewer: karann-msft --- diff --git a/docs/nuget-org/Publish-a-package.md b/docs/nuget-org/Publish-a-package.md index 36ce9f614..3dfe32091 100644 --- a/docs/nuget-org/Publish-a-package.md +++ b/docs/nuget-org/Publish-a-package.md @@ -4,7 +4,7 @@ description: See detailed instructions about how to publish a NuGet package and author: JonDouglas ms.author: jodou ms.date: 8/29/2022 -ms.topic: conceptual +ms.topic: how-to ms.reviewer: anangaur --- diff --git a/docs/nuget-org/individual-accounts.md b/docs/nuget-org/individual-accounts.md index 50b94940e..f45e1b841 100644 --- a/docs/nuget-org/individual-accounts.md +++ b/docs/nuget-org/individual-accounts.md @@ -4,7 +4,7 @@ description: Individual acccounts on NuGet.org are required to publish packages author: mikejo5000 ms.author: mikejo ms.date: 06/05/2019 -ms.topic: conceptual +ms.topic: article ms.custom: sfi-image-nochange --- diff --git a/docs/nuget-org/licenses.nuget.org.md b/docs/nuget-org/licenses.nuget.org.md index 9f82c2b95..f1c85a295 100644 --- a/docs/nuget-org/licenses.nuget.org.md +++ b/docs/nuget-org/licenses.nuget.org.md @@ -4,6 +4,7 @@ description: Protocol and display information for licenses.nuget.org. Describes author: agr ms.author: angrigor ms.date: 03/02/2023 +ms.topic: article --- # licenses.nuget.org @@ -88,4 +89,4 @@ license exception identifier may present in the path portion of the URL. Licenses.nuget.org responds to a request with a known license exception identifier with a HTTP 200 response and a web page containing the reference text for the specified license exception. -Any request containing an unsupported license exception identifier results in an HTTP 404 response. \ No newline at end of file +Any request containing an unsupported license exception identifier results in an HTTP 404 response. diff --git a/docs/nuget-org/nuget-org-faq.yml b/docs/nuget-org/nuget-org-faq.yml index 748ec0eea..0a8f1bf36 100644 --- a/docs/nuget-org/nuget-org-faq.yml +++ b/docs/nuget-org/nuget-org-faq.yml @@ -5,7 +5,7 @@ metadata: author: shishirx34 ms.author: shishirh ms.date: 06/05/2019 - ms.topic: conceptual + ms.topic: faq ms.custom: sfi-image-nochange title: NuGet.org frequently-asked questions diff --git a/docs/nuget-org/organizations-on-nuget-org.md b/docs/nuget-org/organizations-on-nuget-org.md index 4c6b52990..36a65d2d3 100644 --- a/docs/nuget-org/organizations-on-nuget-org.md +++ b/docs/nuget-org/organizations-on-nuget-org.md @@ -4,7 +4,7 @@ description: Organizations on NuGet.org helps you to manage packages published b author: anangaur ms.author: anangaur ms.date: 04/10/2018 -ms.topic: conceptual +ms.topic: article ms.reviewer: - kraigb - camsoper diff --git a/docs/nuget-org/overview-nuget-org.md b/docs/nuget-org/overview-nuget-org.md index 7dd9d8b6c..aa160a850 100644 --- a/docs/nuget-org/overview-nuget-org.md +++ b/docs/nuget-org/overview-nuget-org.md @@ -4,7 +4,7 @@ description: Overview of NuGet.org author: mikejo5000 ms.author: mikejo ms.date: 06/05/2019 -ms.topic: conceptual +ms.topic: concept-article --- # Overview of NuGet.org diff --git a/docs/nuget-org/package-readme-on-nuget-org.md b/docs/nuget-org/package-readme-on-nuget-org.md index b647d4dcf..f4ecd173c 100644 --- a/docs/nuget-org/package-readme-on-nuget-org.md +++ b/docs/nuget-org/package-readme-on-nuget-org.md @@ -4,7 +4,7 @@ description: Detailed explanation of how readme files on NuGet.org are rendered author: nkolev92 ms.author: nikolev ms.date: 08/31/2022 -ms.topic: conceptual +ms.topic: article ms.reviewer: anangaur --- diff --git a/docs/nuget-org/package-sponsorship-on-nuget-org.md b/docs/nuget-org/package-sponsorship-on-nuget-org.md index 632c94a93..af1f6e111 100644 --- a/docs/nuget-org/package-sponsorship-on-nuget-org.md +++ b/docs/nuget-org/package-sponsorship-on-nuget-org.md @@ -4,7 +4,7 @@ description: Learn how to add sponsorship links to your NuGet packages and suppo author: pranathibora14 ms.author: prabora ms.date: 10/15/2025 -ms.topic: conceptual +ms.topic: how-to ai-usage: ai-generated --- diff --git a/docs/nuget-org/policies/data-requests.md b/docs/nuget-org/policies/data-requests.md index 57cab4356..9c29231ef 100644 --- a/docs/nuget-org/policies/data-requests.md +++ b/docs/nuget-org/policies/data-requests.md @@ -4,7 +4,7 @@ description: Policies for requesting user data export and delete author: JonDouglas ms.author: jodou ms.date: 05/01/2018 -ms.topic: conceptual +ms.topic: article --- # User Data Requests diff --git a/docs/nuget-org/policies/deleting-packages.md b/docs/nuget-org/policies/deleting-packages.md index 89fbd5a3b..9e99d39ab 100644 --- a/docs/nuget-org/policies/deleting-packages.md +++ b/docs/nuget-org/policies/deleting-packages.md @@ -4,7 +4,7 @@ description: Policies for unlisting packages from nuget.org; permanent deletion author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: conceptual +ms.topic: how-to --- # Deleting packages diff --git a/docs/nuget-org/policies/dispute-resolution.md b/docs/nuget-org/policies/dispute-resolution.md index 94a1aea40..c9342a827 100644 --- a/docs/nuget-org/policies/dispute-resolution.md +++ b/docs/nuget-org/policies/dispute-resolution.md @@ -4,7 +4,7 @@ description: The process for resolving disputes between NuGet package publishers author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: conceptual +ms.topic: how-to --- # Resolving disputes over NuGet package names diff --git a/docs/nuget-org/policies/export-control.md b/docs/nuget-org/policies/export-control.md index a0ce51d75..bc786531e 100644 --- a/docs/nuget-org/policies/export-control.md +++ b/docs/nuget-org/policies/export-control.md @@ -4,7 +4,7 @@ description: Policies governing export control laws author: JonDouglas ms.author: jodou ms.date: 06/27/2019 -ms.topic: conceptual +ms.topic: article --- # Export Control Policy diff --git a/docs/nuget-org/scoped-api-keys.md b/docs/nuget-org/scoped-api-keys.md index 6730218cf..f5b22ad84 100644 --- a/docs/nuget-org/scoped-api-keys.md +++ b/docs/nuget-org/scoped-api-keys.md @@ -4,7 +4,7 @@ description: Take control of API keys that you use to push packages author: mikejo5000 ms.author: mikejo ms.date: 06/04/2019 -ms.topic: conceptual +ms.topic: article --- # Scoped API keys @@ -99,4 +99,4 @@ You cannot modify the scope, but you can edit the package list it is applicable ### How do I know if any of my keys expired or are getting expired? -If any key expires, we will let you know through a warning message at the top of the page. We also send a warning e-mail to the account holder ten days before the expiration of the key so that you can act on it well in advance. \ No newline at end of file +If any key expires, we will let you know through a warning message at the top of the page. We also send a warning e-mail to the account holder ten days before the expiration of the key so that you can act on it well in advance. diff --git a/docs/nuget-org/trusted-publishing.md b/docs/nuget-org/trusted-publishing.md index f5c5ed529..ca9faff1c 100644 --- a/docs/nuget-org/trusted-publishing.md +++ b/docs/nuget-org/trusted-publishing.md @@ -4,7 +4,7 @@ description: Trusted Publishing on nuget.org author: etvorun ms.author: evgenyt ms.date: 07/01/2025 -ms.topic: conceptual +ms.topic: article --- # Trusted Publishing on nuget.org diff --git a/docs/policies/Ecosystem.md b/docs/policies/Ecosystem.md index 4a4c52c4c..1431b870f 100644 --- a/docs/policies/Ecosystem.md +++ b/docs/policies/Ecosystem.md @@ -4,7 +4,7 @@ description: Comprehensive resources in the NuGet ecosystem including NuGet sour author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: conceptual +ms.topic: concept-article --- # An overview of the NuGet ecosystem diff --git a/docs/policies/Governance.md b/docs/policies/Governance.md index fce9b9a5e..d1e4e1dc8 100644 --- a/docs/policies/Governance.md +++ b/docs/policies/Governance.md @@ -4,7 +4,7 @@ description: The governance model for NuGet, including roles and responsibilitie author: JonDouglas ms.author: jodou ms.date: 01/18/2018 -ms.topic: conceptual +ms.topic: article --- # NuGet governance diff --git a/docs/reference/NuGet-Client-SDK.md b/docs/reference/NuGet-Client-SDK.md index fd0e3eee4..e58bee9bf 100644 --- a/docs/reference/NuGet-Client-SDK.md +++ b/docs/reference/NuGet-Client-SDK.md @@ -4,7 +4,7 @@ description: The API is evolving and not yet documented, but examples are availa author: JonDouglas ms.author: jodou ms.date: 01/09/2018 -ms.topic: conceptual +ms.topic: article --- # NuGet Client SDK diff --git a/docs/reference/dotnet-Commands.md b/docs/reference/dotnet-Commands.md index 5b7f59b9f..945538842 100644 --- a/docs/reference/dotnet-Commands.md +++ b/docs/reference/dotnet-Commands.md @@ -4,7 +4,7 @@ description: A short reference for NuGet-related commands using the dotnet comma author: JonDouglas ms.author: jodou ms.date: 06/24/2019 -ms.topic: conceptual +ms.topic: article --- # dotnet CLI commands diff --git a/docs/reference/extensibility/NuGet-Credential-Providers-for-Visual-Studio.md b/docs/reference/extensibility/NuGet-Credential-Providers-for-Visual-Studio.md index 04ea8de23..e567da4aa 100644 --- a/docs/reference/extensibility/NuGet-Credential-Providers-for-Visual-Studio.md +++ b/docs/reference/extensibility/NuGet-Credential-Providers-for-Visual-Studio.md @@ -4,7 +4,7 @@ description: NuGet credential providers authenticate with feeds by implementing author: JonDouglas ms.author: jodou ms.date: 01/09/2017 -ms.topic: conceptual +ms.topic: how-to --- # Authenticating feeds in Visual Studio with NuGet credential providers diff --git a/docs/reference/extensibility/NuGet-Cross-Platform-Authentication-Plugin.md b/docs/reference/extensibility/NuGet-Cross-Platform-Authentication-Plugin.md index 7e9636d35..624db0a23 100644 --- a/docs/reference/extensibility/NuGet-Cross-Platform-Authentication-Plugin.md +++ b/docs/reference/extensibility/NuGet-Cross-Platform-Authentication-Plugin.md @@ -4,7 +4,7 @@ description: NuGet cross platform authentication plugins for NuGet.exe, dotnet.e author: nkolev92 ms.author: nikolev ms.date: 07/01/2018 -ms.topic: conceptual +ms.topic: article --- # NuGet cross platform authentication plugin diff --git a/docs/reference/extensibility/NuGet-Cross-Platform-Plugins.md b/docs/reference/extensibility/NuGet-Cross-Platform-Plugins.md index b2a2504b0..3fd832a9e 100644 --- a/docs/reference/extensibility/NuGet-Cross-Platform-Plugins.md +++ b/docs/reference/extensibility/NuGet-Cross-Platform-Plugins.md @@ -4,7 +4,7 @@ description: NuGet cross platform plugins for NuGet.exe, dotnet.exe, msbuild.exe author: nkolev92 ms.author: nikolev ms.date: 07/01/2018 -ms.topic: conceptual +ms.topic: article --- # NuGet cross platform plugins diff --git a/docs/reference/extensibility/nuget-exe-Credential-Providers.md b/docs/reference/extensibility/nuget-exe-Credential-Providers.md index 624c8c787..b0242a3b1 100644 --- a/docs/reference/extensibility/nuget-exe-Credential-Providers.md +++ b/docs/reference/extensibility/nuget-exe-Credential-Providers.md @@ -4,7 +4,7 @@ description: nuget.exe credential providers authenticate with a feed, and are im author: JonDouglas ms.author: jodou ms.date: 12/12/2017 -ms.topic: conceptual +ms.topic: concept-article --- # Authenticating feeds with nuget.exe credential providers diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index 5f68a795d..b4601c9c3 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -4,7 +4,7 @@ description: NuGet pack and restore can work directly as MSBuild targets with Nu author: nkolev92 ms.author: nikolev ms.date: 2/4/2022 -ms.topic: conceptual +ms.topic: article no-loc: [NuGet, MSBuild, .nuspec, nuspec] --- diff --git a/docs/release-notes/Index.md b/docs/release-notes/Index.md index c7d4bc885..638732d93 100644 --- a/docs/release-notes/Index.md +++ b/docs/release-notes/Index.md @@ -4,7 +4,7 @@ description: Index of NuGet release notes and known issues for all versions. author: anangaur ms.author: anangaur ms.date: 05/25/2022 -ms.topic: conceptual +ms.topic: release-notes --- # Release Notes diff --git a/docs/release-notes/Known-Issues.md b/docs/release-notes/Known-Issues.md index a02dc0f60..051862356 100644 --- a/docs/release-notes/Known-Issues.md +++ b/docs/release-notes/Known-Issues.md @@ -4,7 +4,7 @@ description: Known issues with NuGet including authentication, package installat author: JonDouglas ms.author: jodou ms.date: 06/06/2024 -ms.topic: conceptual +ms.topic: troubleshooting-known-issue --- # Known Issues with NuGet diff --git a/docs/release-notes/NuGet-1.1.md b/docs/release-notes/NuGet-1.1.md index 6ccec09fa..63b2c1586 100644 --- a/docs/release-notes/NuGet-1.1.md +++ b/docs/release-notes/NuGet-1.1.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 1.1 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 1.0 and 1.1 Release Notes @@ -268,4 +268,4 @@ The following is a list of features and bugs that were fixed for NuGet CTP 1. * ```[Add Disclaimer Text to the Add Package Dialog](http://nuget.codeplex.com/workitem/140)``` * ```[Add Disclaimer When the Package Console is run the first time](http://nuget.codeplex.com/workitem/143)``` * ```[Display Disclaimer After Installing Package In The Console](http://nuget.codeplex.com/workitem/144)``` -* ```[Rename the .nupack extension to .nupkg](http://nuget.codeplex.com/workitem/146)``` \ No newline at end of file +* ```[Rename the .nupack extension to .nupkg](http://nuget.codeplex.com/workitem/146)``` diff --git a/docs/release-notes/NuGet-1.2.md b/docs/release-notes/NuGet-1.2.md index fe8f2022f..f43a1121a 100644 --- a/docs/release-notes/NuGet-1.2.md +++ b/docs/release-notes/NuGet-1.2.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 1.2 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 1.2 Release Notes @@ -87,4 +87,4 @@ need to update that project with the latest version of NuGet.Server. you need to uninstall NuGet first and then install it. This is listed in our [Known Issues page](../release-notes/known-issues.md) which provides more details. The issue only affects those running Visual Studio 2010 SP1 and have a version of NuGet 1.0 installed that was incorrectly signed. This version was only made available from the CodePlex website for a brief -period so this issue shouldn't affect too many people. \ No newline at end of file +period so this issue shouldn't affect too many people. diff --git a/docs/release-notes/NuGet-1.3.md b/docs/release-notes/NuGet-1.3.md index 8db5d57bb..74115f60a 100644 --- a/docs/release-notes/NuGet-1.3.md +++ b/docs/release-notes/NuGet-1.3.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 1.3 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 1.3 Release Notes diff --git a/docs/release-notes/NuGet-1.4.md b/docs/release-notes/NuGet-1.4.md index a1b4e3870..71514285b 100644 --- a/docs/release-notes/NuGet-1.4.md +++ b/docs/release-notes/NuGet-1.4.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 1.4 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 1.4 Release Notes diff --git a/docs/release-notes/NuGet-1.5.md b/docs/release-notes/NuGet-1.5.md index e3c1bb675..3bb052e73 100644 --- a/docs/release-notes/NuGet-1.5.md +++ b/docs/release-notes/NuGet-1.5.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 1.5 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes ms.custom: sfi-image-nochange --- diff --git a/docs/release-notes/NuGet-1.6.md b/docs/release-notes/NuGet-1.6.md index 0f8bc5d2f..4dd8dd1ca 100644 --- a/docs/release-notes/NuGet-1.6.md +++ b/docs/release-notes/NuGet-1.6.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 1.6 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 1.6 Release Notes diff --git a/docs/release-notes/NuGet-1.7.md b/docs/release-notes/NuGet-1.7.md index 9395f1783..5a2f1b933 100644 --- a/docs/release-notes/NuGet-1.7.md +++ b/docs/release-notes/NuGet-1.7.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 1.7 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 1.7 Release Notes diff --git a/docs/release-notes/NuGet-1.8.md b/docs/release-notes/NuGet-1.8.md index c8fe0e9c9..6179df1c7 100644 --- a/docs/release-notes/NuGet-1.8.md +++ b/docs/release-notes/NuGet-1.8.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 1.8 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 1.8 Release Notes @@ -72,4 +72,4 @@ By modifying the install command to download and install packages in parallel, N ## Bug Fixes NuGet 1.8 includes quite a few bug fixes with an emphasis on the package manager console and package restore workflow, particularly as it relates to package restore consent and Windows 8 Express integration. -For a full list of work items fixed in NuGet 1.8, please view the ```[NuGet Issue Tracker for this release](http://nuget.codeplex.com/workitem/list/advanced?keyword=&status=Closed&type=All&priority=All&release=NuGet%201.8&assignedTo=All&component=All&sortField=Votes&sortDirection=Descending&page=0)```. \ No newline at end of file +For a full list of work items fixed in NuGet 1.8, please view the ```[NuGet Issue Tracker for this release](http://nuget.codeplex.com/workitem/list/advanced?keyword=&status=Closed&type=All&priority=All&release=NuGet%201.8&assignedTo=All&component=All&sortField=Votes&sortDirection=Descending&page=0)```. diff --git a/docs/release-notes/NuGet-2.0.md b/docs/release-notes/NuGet-2.0.md index de1064776..d37a46008 100644 --- a/docs/release-notes/NuGet-2.0.md +++ b/docs/release-notes/NuGet-2.0.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.0 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 2.0 Release Notes diff --git a/docs/release-notes/NuGet-2.1.md b/docs/release-notes/NuGet-2.1.md index 1623a185e..e2ed72aba 100644 --- a/docs/release-notes/NuGet-2.1.md +++ b/docs/release-notes/NuGet-2.1.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.1 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes ms.custom: sfi-image-nochange --- diff --git a/docs/release-notes/NuGet-2.12-RC.md b/docs/release-notes/NuGet-2.12-RC.md index ffd6d73ac..57b3f680e 100644 --- a/docs/release-notes/NuGet-2.12-RC.md +++ b/docs/release-notes/NuGet-2.12-RC.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.12 RC including known issues, bug fixes, author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 2.12-RC Release Notes diff --git a/docs/release-notes/NuGet-2.12.md b/docs/release-notes/NuGet-2.12.md index eef3d737a..db1e010bb 100644 --- a/docs/release-notes/NuGet-2.12.md +++ b/docs/release-notes/NuGet-2.12.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.12 including known issues, bug fixes, add author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 2.12 Release Notes diff --git a/docs/release-notes/NuGet-2.2.1.md b/docs/release-notes/NuGet-2.2.1.md index 2ad2f92c7..84de48489 100644 --- a/docs/release-notes/NuGet-2.2.1.md +++ b/docs/release-notes/NuGet-2.2.1.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.2.1 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 2.2.1 Release Notes diff --git a/docs/release-notes/NuGet-2.2.md b/docs/release-notes/NuGet-2.2.md index ec4030efc..ea2296b2c 100644 --- a/docs/release-notes/NuGet-2.2.md +++ b/docs/release-notes/NuGet-2.2.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.2 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 2.2 Release Notes diff --git a/docs/release-notes/NuGet-2.5.md b/docs/release-notes/NuGet-2.5.md index 09079a7a6..afaa2e90b 100644 --- a/docs/release-notes/NuGet-2.5.md +++ b/docs/release-notes/NuGet-2.5.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.5 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 2.5 Release Notes diff --git a/docs/release-notes/NuGet-2.6.1-for-WebMatrix.md b/docs/release-notes/NuGet-2.6.1-for-WebMatrix.md index 1f46b40a9..e5abd798f 100644 --- a/docs/release-notes/NuGet-2.6.1-for-WebMatrix.md +++ b/docs/release-notes/NuGet-2.6.1-for-WebMatrix.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.6.1 for WebMatrix including known issues, author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 2.6.1 for WebMatrix Release Notes diff --git a/docs/release-notes/NuGet-2.6.md b/docs/release-notes/NuGet-2.6.md index 222b8fd9a..b9a4db16c 100644 --- a/docs/release-notes/NuGet-2.6.md +++ b/docs/release-notes/NuGet-2.6.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.6 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 2.6 Release Notes @@ -158,4 +158,4 @@ package authors to fully understand how developers are installing their packages ## Bug Fixes NuGet 2.6 also includes several bug fixes. For a full list of work items fixed in NuGet 2.6, please view -the ```[NuGet Issue Tracker for this release](https://nuget.codeplex.com/workitem/list/advanced?keyword=&status=Closed&type=All&priority=All&release=NuGet%202.6&assignedTo=All&component=All&sortField=LastUpdatedDate&sortDirection=Descending&page=0&reasonClosed=All)```. \ No newline at end of file +the ```[NuGet Issue Tracker for this release](https://nuget.codeplex.com/workitem/list/advanced?keyword=&status=Closed&type=All&priority=All&release=NuGet%202.6&assignedTo=All&component=All&sortField=LastUpdatedDate&sortDirection=Descending&page=0&reasonClosed=All)```. diff --git a/docs/release-notes/NuGet-2.7.1.md b/docs/release-notes/NuGet-2.7.1.md index 867978a56..b9b3ed7de 100644 --- a/docs/release-notes/NuGet-2.7.1.md +++ b/docs/release-notes/NuGet-2.7.1.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.7.1 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 2.7.1 Release Notes diff --git a/docs/release-notes/NuGet-2.7.2.md b/docs/release-notes/NuGet-2.7.2.md index 8b5778746..bc7b2a718 100644 --- a/docs/release-notes/NuGet-2.7.2.md +++ b/docs/release-notes/NuGet-2.7.2.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.7.2 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 2.7.2 Release Notes diff --git a/docs/release-notes/NuGet-2.7.md b/docs/release-notes/NuGet-2.7.md index a8224e923..6154bfff3 100644 --- a/docs/release-notes/NuGet-2.7.md +++ b/docs/release-notes/NuGet-2.7.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.7 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 2.7 Release Notes diff --git a/docs/release-notes/NuGet-2.8.1.md b/docs/release-notes/NuGet-2.8.1.md index 5efbb0905..1b9cea406 100644 --- a/docs/release-notes/NuGet-2.8.1.md +++ b/docs/release-notes/NuGet-2.8.1.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.8.1 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 2.8.1 Release Notes diff --git a/docs/release-notes/NuGet-2.8.2.md b/docs/release-notes/NuGet-2.8.2.md index d6d38ce0f..30fc16840 100644 --- a/docs/release-notes/NuGet-2.8.2.md +++ b/docs/release-notes/NuGet-2.8.2.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.8.2 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 2.8.2 Release Notes diff --git a/docs/release-notes/NuGet-2.8.3.md b/docs/release-notes/NuGet-2.8.3.md index 3e0b2a079..85476d164 100644 --- a/docs/release-notes/NuGet-2.8.3.md +++ b/docs/release-notes/NuGet-2.8.3.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.8.3 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 2.8.3 Release Notes diff --git a/docs/release-notes/NuGet-2.8.5.md b/docs/release-notes/NuGet-2.8.5.md index a9ffa31c7..8952af0db 100644 --- a/docs/release-notes/NuGet-2.8.5.md +++ b/docs/release-notes/NuGet-2.8.5.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.8.5 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 2.8.5 Release Notes @@ -22,4 +22,4 @@ In this release, the support for NuGet Package Manager dialog was added for [DNX One bug was fixed that prevented packages from installing into FSharp projects properly: -```https://nuget.codeplex.com/workitem/4400``` \ No newline at end of file +```https://nuget.codeplex.com/workitem/4400``` diff --git a/docs/release-notes/NuGet-2.8.6.md b/docs/release-notes/NuGet-2.8.6.md index dbe2f5ee2..2d009fd6d 100644 --- a/docs/release-notes/NuGet-2.8.6.md +++ b/docs/release-notes/NuGet-2.8.6.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.8.6 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 2.8.6 Release Notes @@ -20,4 +20,4 @@ In this release, the NuGet Package Manager dialog had support added for: * Introduced the UAP Target Framework Moniker to support Windows 10 Application Development. * NuGet protocol version 3 endpoints * Support for [Nuget.Config](../consume-packages/configuring-nuget-behavior.md) protocolVersion attribute on repository sources. Default value is "2" -* Falling back to remote repository if a required package version is not available in the local cache \ No newline at end of file +* Falling back to remote repository if a required package version is not available in the local cache diff --git a/docs/release-notes/NuGet-2.8.7.md b/docs/release-notes/NuGet-2.8.7.md index cb3dde359..7eba6482a 100644 --- a/docs/release-notes/NuGet-2.8.7.md +++ b/docs/release-notes/NuGet-2.8.7.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.8.7 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 2.8.7 Release Notes @@ -12,4 +12,4 @@ ms.topic: conceptual [NuGet 2.8.6 Release Notes](../release-notes/nuget-2.8.6.md) | [NuGet 2.9-RC Release Notes](../release-notes/nuget-2.9-RC.md) NuGet 2.8.7 was released July 27, 2015 as a patch update to the 2.8.6 VSIX with fix specific to a bug that effected Powershell policy implementation. -[https://github.com/NuGet/Home/issues/974](https://github.com/NuGet/Home/issues/974) \ No newline at end of file +[https://github.com/NuGet/Home/issues/974](https://github.com/NuGet/Home/issues/974) diff --git a/docs/release-notes/NuGet-2.8.md b/docs/release-notes/NuGet-2.8.md index 76ea22e1b..950ad8ac6 100644 --- a/docs/release-notes/NuGet-2.8.md +++ b/docs/release-notes/NuGet-2.8.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.8 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 2.8 Release Notes diff --git a/docs/release-notes/NuGet-2.9-RC.md b/docs/release-notes/NuGet-2.9-RC.md index 8ba73ad39..a4c2a3ebb 100644 --- a/docs/release-notes/NuGet-2.9-RC.md +++ b/docs/release-notes/NuGet-2.9-RC.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 2.9 RC including known issues, bug fixes, a author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 2.9-RC Release Notes diff --git a/docs/release-notes/NuGet-3.0-Beta.md b/docs/release-notes/NuGet-3.0-Beta.md index 4cd4e693c..0cd6ff14a 100644 --- a/docs/release-notes/NuGet-3.0-Beta.md +++ b/docs/release-notes/NuGet-3.0-Beta.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.0 Beta including known issues, bug fixes, author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 3.0 Beta Release Notes diff --git a/docs/release-notes/NuGet-3.0-Preview.md b/docs/release-notes/NuGet-3.0-Preview.md index 9f1365d4f..00f990e0f 100644 --- a/docs/release-notes/NuGet-3.0-Preview.md +++ b/docs/release-notes/NuGet-3.0-Preview.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.0 Preview including known issues, bug fix author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 3.0 Preview Release Notes @@ -120,4 +120,4 @@ Between now and 3.0 RTM, we are also working on some fundamental new NuGet featu ## Stay Tuned -Please keep an eye on [our blog](https://blog.nuget.org) for more progress and announcements for NuGet 3.0! \ No newline at end of file +Please keep an eye on [our blog](https://blog.nuget.org) for more progress and announcements for NuGet 3.0! diff --git a/docs/release-notes/NuGet-3.0-RC.md b/docs/release-notes/NuGet-3.0-RC.md index eb1dc61eb..867f4269b 100644 --- a/docs/release-notes/NuGet-3.0-RC.md +++ b/docs/release-notes/NuGet-3.0-RC.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.0 RC including known issues, bug fixes, a author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 3.0 RC Release Notes @@ -37,4 +37,4 @@ We've made some changes to our [source code repositories on GitHub](https://gith ## Stay Tuned -Please keep an eye on [our blog](https://blog.nuget.org) for more progress and announcements for NuGet 3.0! \ No newline at end of file +Please keep an eye on [our blog](https://blog.nuget.org) for more progress and announcements for NuGet 3.0! diff --git a/docs/release-notes/NuGet-3.0-RC2.md b/docs/release-notes/NuGet-3.0-RC2.md index dad222238..193ae5190 100644 --- a/docs/release-notes/NuGet-3.0-RC2.md +++ b/docs/release-notes/NuGet-3.0-RC2.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.0 RC2 including known issues, bug fixes, author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 3.0 RC2 Release Notes @@ -31,4 +31,4 @@ In total, we closed 158 issues in this release, and you can review the [complete * [Improved error logging](https://github.com/NuGet/Home/issues/407) * [Improved powershell error messages when calling Update-Package](https://github.com/NuGet/Home/issues/5) -Download this ```[update to the NuGet extension](https://nuget.codeplex.com/releases/view/615507)``` from Codeplex and please keep an eye on [our blog](https://blog.nuget.org) for more progress and announcements for NuGet 3.0! \ No newline at end of file +Download this ```[update to the NuGet extension](https://nuget.codeplex.com/releases/view/615507)``` from Codeplex and please keep an eye on [our blog](https://blog.nuget.org) for more progress and announcements for NuGet 3.0! diff --git a/docs/release-notes/NuGet-3.0.0.md b/docs/release-notes/NuGet-3.0.0.md index 71c46bb49..a404510af 100644 --- a/docs/release-notes/NuGet-3.0.0.md +++ b/docs/release-notes/NuGet-3.0.0.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.0.0 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 3.0 Release Notes @@ -49,4 +49,4 @@ There were a number of known issues delivered with this release, and all of thes * [Multiple Packages can be gathered in parallel](https://github.com/NuGet/Home/issues/713) * [Removed install-package -force command](https://github.com/NuGet/Home/issues/697) -Please keep an eye on [our blog](https://blog.nuget.org) for more progress and announcements as we get ready to deliver support for Windows 10 development. \ No newline at end of file +Please keep an eye on [our blog](https://blog.nuget.org) for more progress and announcements as we get ready to deliver support for Windows 10 development. diff --git a/docs/release-notes/NuGet-3.1.1.md b/docs/release-notes/NuGet-3.1.1.md index 3331410e0..d755e1cd1 100644 --- a/docs/release-notes/NuGet-3.1.1.md +++ b/docs/release-notes/NuGet-3.1.1.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.1.1 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 3.1.1 Release Notes @@ -12,4 +12,4 @@ ms.topic: conceptual [NuGet 3.1 Release Notes](../release-notes/nuget-3.1.md) | [NuGet 3.2-RC Release Notes](../release-notes/nuget-3.2-RC.md) NuGet 3.1.1 was released July 27, 2015 as a patch update to the 3.1 VSIX with fix specific to a bug that effected Powershell policy implementation. -[https://github.com/NuGet/Home/issues/974](https://github.com/NuGet/Home/issues/974) \ No newline at end of file +[https://github.com/NuGet/Home/issues/974](https://github.com/NuGet/Home/issues/974) diff --git a/docs/release-notes/NuGet-3.1.md b/docs/release-notes/NuGet-3.1.md index aa7c025b9..db0f53466 100644 --- a/docs/release-notes/NuGet-3.1.md +++ b/docs/release-notes/NuGet-3.1.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.1 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 3.1 Release Notes diff --git a/docs/release-notes/NuGet-3.2-RC.md b/docs/release-notes/NuGet-3.2-RC.md index 0a398294f..28f9dd082 100644 --- a/docs/release-notes/NuGet-3.2-RC.md +++ b/docs/release-notes/NuGet-3.2-RC.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.2 RC including known issues, bug fixes, a author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 3.2 RC Release Notes @@ -111,4 +111,4 @@ A complete list of issues addressed for the Visual Studio extension can be found ## Known Issues -We continue to track issues on our GitHub issues list which can be found at: [https://github.com/nuget/home/issues](https://github.com/nuget/home/issues) \ No newline at end of file +We continue to track issues on our GitHub issues list which can be found at: [https://github.com/nuget/home/issues](https://github.com/nuget/home/issues) diff --git a/docs/release-notes/NuGet-3.2.1.md b/docs/release-notes/NuGet-3.2.1.md index 6e571888f..543ed8742 100644 --- a/docs/release-notes/NuGet-3.2.1.md +++ b/docs/release-notes/NuGet-3.2.1.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.2.1 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 3.2.1 Release Notes @@ -30,4 +30,4 @@ A complete list of issues addressed for the command-line and Visual Studio exten ## Known Issues -We continue to track issues on our GitHub issues list which can be found at: [https://github.com/nuget/home/issues](https://github.com/nuget/home/issues) \ No newline at end of file +We continue to track issues on our GitHub issues list which can be found at: [https://github.com/nuget/home/issues](https://github.com/nuget/home/issues) diff --git a/docs/release-notes/NuGet-3.2.md b/docs/release-notes/NuGet-3.2.md index 22ce6ecf1..48afecf3f 100644 --- a/docs/release-notes/NuGet-3.2.md +++ b/docs/release-notes/NuGet-3.2.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.2 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 3.2 Release Notes @@ -109,4 +109,4 @@ A complete list of issues addressed for the Visual Studio extension can be found ## Known Issues -We continue to track issues on our GitHub issues list which can be found at: [https://github.com/nuget/home/issues](https://github.com/nuget/home/issues) \ No newline at end of file +We continue to track issues on our GitHub issues list which can be found at: [https://github.com/nuget/home/issues](https://github.com/nuget/home/issues) diff --git a/docs/release-notes/NuGet-3.3.md b/docs/release-notes/NuGet-3.3.md index 4fd3580cc..f9e990a61 100644 --- a/docs/release-notes/NuGet-3.3.md +++ b/docs/release-notes/NuGet-3.3.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.3 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 3.3 Release Notes @@ -54,4 +54,4 @@ The list of issues fixed in the 3.3 command-line release are recorded in the [3. ## Known Issues -We continue to track issues on our GitHub issues list which can be found at: [https://github.com/nuget/home/issues](https://github.com/nuget/home/issues) \ No newline at end of file +We continue to track issues on our GitHub issues list which can be found at: [https://github.com/nuget/home/issues](https://github.com/nuget/home/issues) diff --git a/docs/release-notes/NuGet-3.4-RC.md b/docs/release-notes/NuGet-3.4-RC.md index 355733ecc..8e7e10089 100644 --- a/docs/release-notes/NuGet-3.4-RC.md +++ b/docs/release-notes/NuGet-3.4-RC.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.4 RC including known issues, bug fixes, a author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 3.4-RC Release Notes @@ -43,4 +43,4 @@ The following features are available in this RC, with more planned for the 3.4 f ## Known Issues -We continue to track issues on our GitHub issues list which can be found at: [https://github.com/nuget/home/issues](https://github.com/nuget/home/issues) \ No newline at end of file +We continue to track issues on our GitHub issues list which can be found at: [https://github.com/nuget/home/issues](https://github.com/nuget/home/issues) diff --git a/docs/release-notes/NuGet-3.4.1.md b/docs/release-notes/NuGet-3.4.1.md index 95b157b65..2d9ddc85f 100644 --- a/docs/release-notes/NuGet-3.4.1.md +++ b/docs/release-notes/NuGet-3.4.1.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.4.1 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 3.4.1 Release Notes @@ -19,4 +19,4 @@ NuGet 3.4.1 was released March 30, 2016 at the same time as the Visual Studio 20 * Corrected an issue with Visual Studio locating `lucene.net.dll` * All sources should not be the default repository source after a NuGet extension install or update. You can opt-in to this feature from the configuration settings. -We continue to track issues on our GitHub issues list which can be found at: [https://github.com/nuget/home/issues](https://github.com/nuget/home/issues) \ No newline at end of file +We continue to track issues on our GitHub issues list which can be found at: [https://github.com/nuget/home/issues](https://github.com/nuget/home/issues) diff --git a/docs/release-notes/NuGet-3.4.2.md b/docs/release-notes/NuGet-3.4.2.md index f1914888f..ace3e38a3 100644 --- a/docs/release-notes/NuGet-3.4.2.md +++ b/docs/release-notes/NuGet-3.4.2.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.4.2 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 3.4.2 Release Notes @@ -40,4 +40,4 @@ These issues will be fixed early next week before we hit RTM. * Running nuget delete command on a package using the V2 feed will fail. Use V3 feed instead. -For the complete list of fixes and improvements in this release, check out the list of issues [here](https://github.com/NuGet/Home/issues?utf8=%E2%9C%93&q=is%3Aissue+milestone%3A3.4.2++is%3Aclosed+). \ No newline at end of file +For the complete list of fixes and improvements in this release, check out the list of issues [here](https://github.com/NuGet/Home/issues?utf8=%E2%9C%93&q=is%3Aissue+milestone%3A3.4.2++is%3Aclosed+). diff --git a/docs/release-notes/NuGet-3.4.3.md b/docs/release-notes/NuGet-3.4.3.md index b190f78b9..0e1471ab6 100644 --- a/docs/release-notes/NuGet-3.4.3.md +++ b/docs/release-notes/NuGet-3.4.3.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.4.3 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 3.4.3 Release Notes @@ -27,4 +27,4 @@ You can download both the VSIX and nuget.exe [here](https://dist.nuget.org/index * Fixed an issue that caused restore failures in C++/CLI projects with `project.json`. * Some packages (E.g ModernHttpClient) where not being unzipped correctly when you use nuget in mono. This has now been fixed in this release. -For the complete list of fixes and improvements in this release, check out the list of issues [here](https://github.com/NuGet/Home/issues?q=is%3Aissue+milestone%3A3.4.3+is%3Aclosed). \ No newline at end of file +For the complete list of fixes and improvements in this release, check out the list of issues [here](https://github.com/NuGet/Home/issues?q=is%3Aissue+milestone%3A3.4.3+is%3Aclosed). diff --git a/docs/release-notes/NuGet-3.4.4.md b/docs/release-notes/NuGet-3.4.4.md index cd1396dd8..ac831086e 100644 --- a/docs/release-notes/NuGet-3.4.4.md +++ b/docs/release-notes/NuGet-3.4.4.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.4.4 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 3.4.4 Release Notes @@ -32,4 +32,4 @@ You can download both the VSIX and nuget.exe [here](https://dist.nuget.org/index - Updating `NuGet.Core.dll` version to 2.12.0 to fix XML issue [\#594](https://github.com/NuGet/NuGet.Client/pull/594) - Support ./NuGet.CommandLine.XPlat -v \ \ [\#593](https://github.com/NuGet/NuGet.Client/pull/593) - Display error restoring without `project.json` or `packages.config` [\#590](https://github.com/NuGet/NuGet.Client/pull/590) -- Fixing dependency versions when required versions differ [\#559](https://github.com/NuGet/NuGet.Client/pull/559) \ No newline at end of file +- Fixing dependency versions when required versions differ [\#559](https://github.com/NuGet/NuGet.Client/pull/559) diff --git a/docs/release-notes/NuGet-3.4.md b/docs/release-notes/NuGet-3.4.md index 3d94ced51..a9e55c5df 100644 --- a/docs/release-notes/NuGet-3.4.md +++ b/docs/release-notes/NuGet-3.4.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.4 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 3.4 Release Notes @@ -61,4 +61,4 @@ Custom NuGet repositories that redirect requests to an alternative host do not h * **Workaround:** To work around this issue, configure the package repository URI in settings to point to the redirected server location. For more information, see [GitHub pull request #387](https://github.com/NuGet/NuGet.Client/pull/387). -We continue to track issues on our GitHub issues list which can be found at: [https://github.com/nuget/home/issues](https://github.com/nuget/home/issues) \ No newline at end of file +We continue to track issues on our GitHub issues list which can be found at: [https://github.com/nuget/home/issues](https://github.com/nuget/home/issues) diff --git a/docs/release-notes/NuGet-3.5-Beta.md b/docs/release-notes/NuGet-3.5-Beta.md index 01d3d6877..5d69352d7 100644 --- a/docs/release-notes/NuGet-3.5-Beta.md +++ b/docs/release-notes/NuGet-3.5-Beta.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.5 Beta including known issues, bug fixes, author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 3.5 Beta Release Notes @@ -23,4 +23,4 @@ NuGet 3.5 Beta is a superset of the changes introduced in the 3.4.3 release. For ## Fixes -* The list of fixes and improvements in this release, is given [here](https://github.com/NuGet/Home/issues?q=is%3Aissue+milestone%3A%223.5+Beta%22+is%3Aclosed). \ No newline at end of file +* The list of fixes and improvements in this release, is given [here](https://github.com/NuGet/Home/issues?q=is%3Aissue+milestone%3A%223.5+Beta%22+is%3Aclosed). diff --git a/docs/release-notes/NuGet-3.5-Beta2.md b/docs/release-notes/NuGet-3.5-Beta2.md index 23b01454d..7cf76b2cb 100644 --- a/docs/release-notes/NuGet-3.5-Beta2.md +++ b/docs/release-notes/NuGet-3.5-Beta2.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.5 Beta 2 including known issues, bug fixe author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 3.5 Beta2 Release Notes @@ -85,4 +85,4 @@ NuGet 3.5 Beta 2 RTM was released June 27, 2016 for Visual Studio 2013 and nuget * Print out nuget.exe version header in detailed output - [#1887](https://github.com/NuGet/Home/issues/1887) -* NuGet should add support for /runtimes/{rid}/nativeassets/{txm}/ - [#2782](https://github.com/NuGet/Home/issues/2782) \ No newline at end of file +* NuGet should add support for /runtimes/{rid}/nativeassets/{txm}/ - [#2782](https://github.com/NuGet/Home/issues/2782) diff --git a/docs/release-notes/NuGet-3.5-RC.md b/docs/release-notes/NuGet-3.5-RC.md index e7b46f94e..b3bd58ed8 100644 --- a/docs/release-notes/NuGet-3.5-RC.md +++ b/docs/release-notes/NuGet-3.5-RC.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.5 RC including known issues, bug fixes, a author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 3.5 RC Release Notes diff --git a/docs/release-notes/NuGet-3.5-RTM.md b/docs/release-notes/NuGet-3.5-RTM.md index e9a8ca006..3301d1b2a 100644 --- a/docs/release-notes/NuGet-3.5-RTM.md +++ b/docs/release-notes/NuGet-3.5-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 3.5 including known issues, bug fixes, adde author: JonDouglas ms.author: jodou ms.date: 11/11/2016 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 3.5 Release Notes diff --git a/docs/release-notes/NuGet-4.0-RC.md b/docs/release-notes/NuGet-4.0-RC.md index 759cbd418..cfeb207ad 100644 --- a/docs/release-notes/NuGet-4.0-RC.md +++ b/docs/release-notes/NuGet-4.0-RC.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 4.0 RC including known issues, bug fixes, a author: JonDouglas ms.author: jodou ms.date: 02/03/2017 -ms.topic: conceptual +ms.topic: release-notes ms.reviewer: ananguar --- diff --git a/docs/release-notes/NuGet-4.0-RTM.md b/docs/release-notes/NuGet-4.0-RTM.md index cea4530b9..7fd345079 100644 --- a/docs/release-notes/NuGet-4.0-RTM.md +++ b/docs/release-notes/NuGet-4.0-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 4.0 RTM including known issues, bug fixes, author: anangaur ms.author: anangaur ms.date: 03/03/2017 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 4.0 RTM Release Notes diff --git a/docs/release-notes/NuGet-4.3-RTM.md b/docs/release-notes/NuGet-4.3-RTM.md index aa9e7702b..9700bea1a 100644 --- a/docs/release-notes/NuGet-4.3-RTM.md +++ b/docs/release-notes/NuGet-4.3-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 4.3 RTM including known issues, bug fixes, author: JonDouglas ms.author: jodou ms.date: 08/14/2017 -ms.topic: conceptual +ms.topic: release-notes ms.reviewer: anangaur --- diff --git a/docs/release-notes/NuGet-4.4-RTM.md b/docs/release-notes/NuGet-4.4-RTM.md index da36710c4..a06c05f27 100644 --- a/docs/release-notes/NuGet-4.4-RTM.md +++ b/docs/release-notes/NuGet-4.4-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 4.4 RTM including known issues, bug fixes, author: JonDouglas ms.author: jodou ms.date: 08/14/2017 -ms.topic: conceptual +ms.topic: release-notes ms.reviewer: anangaur --- diff --git a/docs/release-notes/NuGet-4.5-RTM.md b/docs/release-notes/NuGet-4.5-RTM.md index 507e183f7..7acc5f0b1 100644 --- a/docs/release-notes/NuGet-4.5-RTM.md +++ b/docs/release-notes/NuGet-4.5-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 4.5 RTM including known issues, bug fixes, author: anangaur ms.author: anangaur ms.date: 12/4/2017 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 4.5 Release Notes diff --git a/docs/release-notes/NuGet-4.6-rtm.md b/docs/release-notes/NuGet-4.6-rtm.md index b1e089539..ce8438c4c 100644 --- a/docs/release-notes/NuGet-4.6-rtm.md +++ b/docs/release-notes/NuGet-4.6-rtm.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 4.6.0 including known issues, bug fixes, ad author: anangaur ms.author: anangaur ms.date: 3/7/2018 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 4.6 Release Notes diff --git a/docs/release-notes/NuGet-4.7-RTM.md b/docs/release-notes/NuGet-4.7-RTM.md index 4a189d084..a43b5ab53 100644 --- a/docs/release-notes/NuGet-4.7-RTM.md +++ b/docs/release-notes/NuGet-4.7-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 4.7.0 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 5/14/2018 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 4.7 Release Notes diff --git a/docs/release-notes/NuGet-4.8-RTM.md b/docs/release-notes/NuGet-4.8-RTM.md index 56896037f..1fef31ac9 100644 --- a/docs/release-notes/NuGet-4.8-RTM.md +++ b/docs/release-notes/NuGet-4.8-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 4.8.1 including known issues, bug fixes, ad author: JonDouglas ms.author: jodou ms.date: 5/14/2018 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 4.8 Release Notes diff --git a/docs/release-notes/NuGet-4.9-RTM.md b/docs/release-notes/NuGet-4.9-RTM.md index 04951f3ef..fd729e748 100644 --- a/docs/release-notes/NuGet-4.9-RTM.md +++ b/docs/release-notes/NuGet-4.9-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 4.9 including known issues, bug fixes, new author: JonDouglas ms.author: jodou ms.date: 11/20/2018 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 4.9 Release Notes diff --git a/docs/release-notes/NuGet-5.0-RTM.md b/docs/release-notes/NuGet-5.0-RTM.md index 6c49464ad..bd75b0597 100644 --- a/docs/release-notes/NuGet-5.0-RTM.md +++ b/docs/release-notes/NuGet-5.0-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.0 including known issues, bug fixes, new author: JonDouglas ms.author: jodou ms.date: 04/02/2019 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 5.0 Release Notes @@ -167,4 +167,4 @@ Disable the usage of the fallback folder by setting the `RestoreAdditionalProjec `` -Use this with caution as packages that would be restored from the fallback folder will now be downloaded from NuGet.org. \ No newline at end of file +Use this with caution as packages that would be restored from the fallback folder will now be downloaded from NuGet.org. diff --git a/docs/release-notes/NuGet-5.1-RTM.md b/docs/release-notes/NuGet-5.1-RTM.md index b661d0365..1f04bff82 100644 --- a/docs/release-notes/NuGet-5.1-RTM.md +++ b/docs/release-notes/NuGet-5.1-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.1 including new features, bug fixes, and author: JonDouglas ms.author: jodou ms.date: 05/21/2019 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 5.1 Release Notes diff --git a/docs/release-notes/NuGet-5.10.md b/docs/release-notes/NuGet-5.10.md index d8018de5b..e83d28fa6 100644 --- a/docs/release-notes/NuGet-5.10.md +++ b/docs/release-notes/NuGet-5.10.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.10 including new features, bug fixes, and author: zkat ms.author: kmarchan ms.date: 6/11/2021 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 5.10 Release Notes diff --git a/docs/release-notes/NuGet-5.11.md b/docs/release-notes/NuGet-5.11.md index 615c7c535..dd8f31249 100644 --- a/docs/release-notes/NuGet-5.11.md +++ b/docs/release-notes/NuGet-5.11.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.11 including new features, bug fixes, and author: erdembayar ms.author: eryondon ms.date: 8/10/2021 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 5.11 Release Notes diff --git a/docs/release-notes/NuGet-5.2-RTM.md b/docs/release-notes/NuGet-5.2-RTM.md index f02714365..a57435a9c 100644 --- a/docs/release-notes/NuGet-5.2-RTM.md +++ b/docs/release-notes/NuGet-5.2-RTM.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.2 including new features, bug fixes, and author: JonDouglas ms.author: jodou ms.date: 07/23/2019 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 5.2 Release Notes diff --git a/docs/release-notes/NuGet-5.3.md b/docs/release-notes/NuGet-5.3.md index 6bbf19858..6559e3454 100644 --- a/docs/release-notes/NuGet-5.3.md +++ b/docs/release-notes/NuGet-5.3.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.3 including new features, bug fixes, and author: JonDouglas ms.author: jodou ms.date: 09/06/2019 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 5.3 Release Notes diff --git a/docs/release-notes/NuGet-5.4.md b/docs/release-notes/NuGet-5.4.md index 7e49fe0e6..9c8251328 100644 --- a/docs/release-notes/NuGet-5.4.md +++ b/docs/release-notes/NuGet-5.4.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.4 including new features, bug fixes, and author: JonDouglas ms.author: jodou ms.date: 09/06/2019 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 5.4 Release Notes diff --git a/docs/release-notes/NuGet-5.5.md b/docs/release-notes/NuGet-5.5.md index 67fdbc22f..8c51128bc 100644 --- a/docs/release-notes/NuGet-5.5.md +++ b/docs/release-notes/NuGet-5.5.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.5 including new features, bug fixes, and author: JonDouglas ms.author: jodou ms.date: 03/19/2020 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 5.5 Release Notes diff --git a/docs/release-notes/NuGet-5.6.md b/docs/release-notes/NuGet-5.6.md index be2dc0ce2..696fb3493 100644 --- a/docs/release-notes/NuGet-5.6.md +++ b/docs/release-notes/NuGet-5.6.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.6 including new features, bug fixes, and author: nkolev92 ms.author: nikolev ms.date: 05/19/2020 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 5.6 Release Notes diff --git a/docs/release-notes/NuGet-5.7.md b/docs/release-notes/NuGet-5.7.md index af334fa98..ee702a83b 100644 --- a/docs/release-notes/NuGet-5.7.md +++ b/docs/release-notes/NuGet-5.7.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.7 including new features, bug fixes, and author: nkolev92 ms.author: nikolev ms.date: 8/14/2020 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 5.7 Release Notes diff --git a/docs/release-notes/NuGet-5.8.md b/docs/release-notes/NuGet-5.8.md index 5ed41c6d0..837149983 100644 --- a/docs/release-notes/NuGet-5.8.md +++ b/docs/release-notes/NuGet-5.8.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.8 including new features, bug fixes, and author: JonDouglas ms.author: jodou ms.date: 11/9/2020 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 5.8 Release Notes diff --git a/docs/release-notes/NuGet-5.9.md b/docs/release-notes/NuGet-5.9.md index 57582f302..f10019cf8 100644 --- a/docs/release-notes/NuGet-5.9.md +++ b/docs/release-notes/NuGet-5.9.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 5.9 including new features, bug fixes, and author: erdembayar ms.author: eryondon ms.date: 3/11/2021 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 5.9 Release Notes diff --git a/docs/release-notes/NuGet-6.0.md b/docs/release-notes/NuGet-6.0.md index d45a359f9..5de5d1544 100644 --- a/docs/release-notes/NuGet-6.0.md +++ b/docs/release-notes/NuGet-6.0.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 6.0 including new features, bug fixes, and author: zkat ms.author: kmarchan ms.date: 10/7/2021 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 6.0 Release Notes diff --git a/docs/release-notes/NuGet-6.1.md b/docs/release-notes/NuGet-6.1.md index 242741db9..9ae87e416 100644 --- a/docs/release-notes/NuGet-6.1.md +++ b/docs/release-notes/NuGet-6.1.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 6.1 including new features, bug fixes, and author: zivkan ms.author: zivkan ms.date: 2/15/2022 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 6.1 Release Notes diff --git a/docs/release-notes/NuGet-6.10.md b/docs/release-notes/NuGet-6.10.md index a8eca0db0..cdc222c9d 100644 --- a/docs/release-notes/NuGet-6.10.md +++ b/docs/release-notes/NuGet-6.10.md @@ -3,7 +3,7 @@ title: NuGet 6.10 Release Notes description: Release notes for NuGet 6.10 including new features, bug fixes, and DCRs. author: kartheekp-ms ms.date: 5/13/2024 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 6.10 Release Notes diff --git a/docs/release-notes/NuGet-6.11.md b/docs/release-notes/NuGet-6.11.md index bb12d50d8..0e74cce77 100644 --- a/docs/release-notes/NuGet-6.11.md +++ b/docs/release-notes/NuGet-6.11.md @@ -3,7 +3,7 @@ title: NuGet 6.11 Release Notes description: Release notes for NuGet 6.11 including new features, bug fixes, and DCRs. author: martinrrm ms.date: 8/13/2024 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 6.11 Release Notes diff --git a/docs/release-notes/NuGet-6.12.md b/docs/release-notes/NuGet-6.12.md index 8a2373eca..51c3c9702 100644 --- a/docs/release-notes/NuGet-6.12.md +++ b/docs/release-notes/NuGet-6.12.md @@ -2,7 +2,7 @@ title: NuGet 6.12 Release Notes description: Release notes for NuGet 6.12 including new features, bug fixes, and DCRs. author: zivkan -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 6.12 Release Notes diff --git a/docs/release-notes/NuGet-6.13.md b/docs/release-notes/NuGet-6.13.md index 9cbe7007a..1c09115b4 100644 --- a/docs/release-notes/NuGet-6.13.md +++ b/docs/release-notes/NuGet-6.13.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 6.13 including new features, bug fixes, and author: Nigusu-Allehu ms.author: nyenework ms.date: 2/4/2025 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 6.13 Release Notes @@ -133,4 +133,4 @@ Thank you to all the contributors who helped make this NuGet release awesome! * [6025](https://github.com/NuGet/NuGet.Client/pull/6025) Fix typo in EnhancedHttpRetryHelper.cs * [jimmylewis](https://github.com/NuGet/NuGet.Client/pull/6027) * [6027](https://github.com/NuGet/NuGet.Client/pull/6027) Refactor calls to EnsureVisualStudioHost() to a base [TestInitialize] method - \ No newline at end of file + diff --git a/docs/release-notes/NuGet-6.14.md b/docs/release-notes/NuGet-6.14.md index 0a4d59dd6..d14104ce5 100644 --- a/docs/release-notes/NuGet-6.14.md +++ b/docs/release-notes/NuGet-6.14.md @@ -3,7 +3,7 @@ title: NuGet 6.14 Release Notes description: Release notes for NuGet 6.14 including new features, bug fixes, and DCRs. author: zivkan ms.date: 5/6/2025 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 6.14 Release Notes diff --git a/docs/release-notes/NuGet-6.2.md b/docs/release-notes/NuGet-6.2.md index 1789b57db..dc09706ea 100644 --- a/docs/release-notes/NuGet-6.2.md +++ b/docs/release-notes/NuGet-6.2.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 6.2 including new features, bug fixes, and author: martinrrm ms.author: mruizmares ms.date: 5/9/2022 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 6.2 Release Notes diff --git a/docs/release-notes/NuGet-6.3.md b/docs/release-notes/NuGet-6.3.md index fef6084e8..8e9b5fb30 100644 --- a/docs/release-notes/NuGet-6.3.md +++ b/docs/release-notes/NuGet-6.3.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 6.3 including new features, bug fixes, and author: martinrrm ms.author: mruizmares ms.date: 8/2/2022 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 6.3 Release Notes @@ -127,4 +127,4 @@ NuGet distribution vehicles: * Transitive lock files (with wildcard) result in NU1004 - [#8465](https://github.com/NuGet/Home/issues/8465) -* Enhance the experimentation infrastructure in NuGet code to support transitive dependencies - [#10758](https://github.com/NuGet/Home/issues/10758) \ No newline at end of file +* Enhance the experimentation infrastructure in NuGet code to support transitive dependencies - [#10758](https://github.com/NuGet/Home/issues/10758) diff --git a/docs/release-notes/NuGet-6.4.md b/docs/release-notes/NuGet-6.4.md index 0693d8d2e..ffbcdc7d9 100644 --- a/docs/release-notes/NuGet-6.4.md +++ b/docs/release-notes/NuGet-6.4.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 6.4 including new features, bug fixes, and author: jebriede ms.author: jebriede ms.date: 10/27/2022 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 6.4 Release Notes diff --git a/docs/release-notes/NuGet-6.5.md b/docs/release-notes/NuGet-6.5.md index 503095188..8ee257234 100644 --- a/docs/release-notes/NuGet-6.5.md +++ b/docs/release-notes/NuGet-6.5.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 6.5 including new features, bug fixes, and author: martinrrm ms.author: mruizmares ms.date: 2/21/2023 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 6.5 Release Notes @@ -124,4 +124,4 @@ Thank you to all the contributors who helped make this NuGet release awesome! * [davidegiacometti](https://github.com/davidegiacometti) * [4840](https://github.com/NuGet/NuGet.Client/pull/4840) Refactor PackageDependencyGroup Equals and GetHashCode * [danjagnow](https://github.com/danjagnow) - * [4843](https://github.com/NuGet/NuGet.Client/pull/4843) Updated NU1012 error message to display item paths \ No newline at end of file + * [4843](https://github.com/NuGet/NuGet.Client/pull/4843) Updated NU1012 error message to display item paths diff --git a/docs/release-notes/NuGet-6.6.md b/docs/release-notes/NuGet-6.6.md index f6e1d1f37..29eb769cf 100644 --- a/docs/release-notes/NuGet-6.6.md +++ b/docs/release-notes/NuGet-6.6.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 6.6 including new features, bug fixes, and author: donnie-msft ms.author: eagoodso ms.date: 5/1/2023 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 6.6 Release Notes @@ -84,4 +84,4 @@ Thank you to all the contributors who helped make this NuGet release awesome! * [5046](https://github.com/NuGet/NuGet.Client/pull/5046) Limit concurrent connections via NUGET_CONCURRENCY_LIMIT * [marcin-krystianc](https://github.com/marcin-krystianc) * [4954](https://github.com/NuGet/NuGet.Client/pull/4954) Improved performance of calculation of PrivateAssets for transitively pinned centrally managed dependencies - * [4953](https://github.com/NuGet/NuGet.Client/pull/4953) Effective PrivateAssets of centrally managed transitive dependencies should be an intersection of parent dependencies \ No newline at end of file + * [4953](https://github.com/NuGet/NuGet.Client/pull/4953) Effective PrivateAssets of centrally managed transitive dependencies should be an intersection of parent dependencies diff --git a/docs/release-notes/NuGet-6.7.md b/docs/release-notes/NuGet-6.7.md index 29a3e4cb0..ac9bbe4db 100644 --- a/docs/release-notes/NuGet-6.7.md +++ b/docs/release-notes/NuGet-6.7.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 6.7 including new features, bug fixes, and author: jeffkl ms.author: jeffkl ms.date: 7/31/2023 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 6.7 Release Notes diff --git a/docs/release-notes/NuGet-6.8.md b/docs/release-notes/NuGet-6.8.md index d650e9fa9..bd351673e 100644 --- a/docs/release-notes/NuGet-6.8.md +++ b/docs/release-notes/NuGet-6.8.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 6.8 including new features, bug fixes, and author: nkolev92 ms.author: nikolev ms.date: 10/30/2023 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 6.8 Release Notes diff --git a/docs/release-notes/NuGet-6.9.md b/docs/release-notes/NuGet-6.9.md index 84bb7e35e..4870ba3d2 100644 --- a/docs/release-notes/NuGet-6.9.md +++ b/docs/release-notes/NuGet-6.9.md @@ -4,7 +4,7 @@ description: Release notes for NuGet 6.9 including new features, bug fixes, and author: jgonz120 ms.author: jongonza ms.date: 2/1/2024 -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 6.9 Release Notes @@ -109,4 +109,4 @@ Thank you to all the contributors who helped make this NuGet release awesome! * [NikolaMilosavljevic](https://github.com/NikolaMilosavljevic) * Eliminate obsolete API warnings/errors in product source-build - [5496](https://github.com/NuGet/NuGet.Client/pull/5496) * [amis92](https://github.com/amis92) - * Add MemberNotNullWhen to SemanticVersion.HasMetadata - [5465](https://github.com/NuGet/NuGet.Client/pull/5465) \ No newline at end of file + * Add MemberNotNullWhen to SemanticVersion.HasMetadata - [5465](https://github.com/NuGet/NuGet.Client/pull/5465) diff --git a/docs/release-notes/NuGet-7.0.md b/docs/release-notes/NuGet-7.0.md index abd05b123..0582d19aa 100644 --- a/docs/release-notes/NuGet-7.0.md +++ b/docs/release-notes/NuGet-7.0.md @@ -2,7 +2,7 @@ title: NuGet 7.0 Release Notes description: Release notes for NuGet 7.0 including new features, bug fixes, and DCRs. author: zivkan -ms.topic: conceptual +ms.topic: release-notes --- # NuGet 7.0 Release Notes diff --git a/docs/resources/NuGet-FAQ.yml b/docs/resources/NuGet-FAQ.yml index 264903b2c..07bb046b1 100644 --- a/docs/resources/NuGet-FAQ.yml +++ b/docs/resources/NuGet-FAQ.yml @@ -5,7 +5,7 @@ metadata: author: shishirx34 ms.author: shishirh ms.date: 01/31/2022 - ms.topic: conceptual + ms.topic: faq title: NuGet frequently-asked questions summary: | diff --git a/docs/resources/check-project-format.md b/docs/resources/check-project-format.md index b59c1e3aa..b7ed7d665 100644 --- a/docs/resources/check-project-format.md +++ b/docs/resources/check-project-format.md @@ -4,7 +4,7 @@ description: Describes how to identity your project format author: mikejo5000 ms.author: mikejo ms.date: 07/09/2019 -ms.topic: conceptual +ms.topic: article --- # Identify the project format diff --git a/docs/visual-studio-extensibility/Visual-Studio-Templates.md b/docs/visual-studio-extensibility/Visual-Studio-Templates.md index 6e12d412e..aa1cf0484 100644 --- a/docs/visual-studio-extensibility/Visual-Studio-Templates.md +++ b/docs/visual-studio-extensibility/Visual-Studio-Templates.md @@ -4,7 +4,7 @@ description: Instructions for including NuGet packages as part of Visual Studio author: JonDouglas ms.author: jodou ms.date: 01/03/2018 -ms.topic: conceptual +ms.topic: article --- # Packages in Visual Studio templates From 920c2a2cdba664e63eb905f3c904d36f4a3c7d61 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Mon, 3 Nov 2025 14:42:51 -0800 Subject: [PATCH 981/988] Add updating vulnerable packages guidance to the docs (#3493) --- docs/concepts/Auditing-Packages.md | 60 ++++++++++++++++-- docs/concepts/media/dotnet-nuget-why-1.png | Bin 0 -> 39056 bytes .../media/pm-ui-transitive-tooltip-1.png | Bin 0 -> 20133 bytes .../vs-solution-explorer-search-options-1.png | Bin 0 -> 7508 bytes .../vs-solution-explorer-search-results-1.png | Bin 0 -> 25210 bytes .../errors-and-warnings/NU1901-NU1904.md | 2 +- 6 files changed, 57 insertions(+), 5 deletions(-) create mode 100644 docs/concepts/media/dotnet-nuget-why-1.png create mode 100644 docs/concepts/media/pm-ui-transitive-tooltip-1.png create mode 100644 docs/concepts/media/vs-solution-explorer-search-options-1.png create mode 100644 docs/concepts/media/vs-solution-explorer-search-results-1.png diff --git a/docs/concepts/Auditing-Packages.md b/docs/concepts/Auditing-Packages.md index 9ba52e166..72821f43c 100644 --- a/docs/concepts/Auditing-Packages.md +++ b/docs/concepts/Auditing-Packages.md @@ -16,8 +16,6 @@ This involves identifying vulnerabilities, evaluating risks, and making recommen The audit can include a review of the packages themselves, as well as any dependencies and their associated risks. The goal of the audit is to identify and mitigate any security vulnerabilities that could be exploited by attackers, such as code injection or cross-site scripting attacks. -We also have a [blog post](https://devblogs.microsoft.com/nuget/nugetaudit-2-0-elevating-security-and-trust-in-package-management/) which discusses our recommended method for taking action when a package with a known vulnerability is found to be used by your project, and tools to help get more information. - ### Feature availability | NuGet | .NET SDK | Visual Studio | Feature | @@ -182,7 +180,14 @@ Note that `--include-transitive` is not default, so should be included. ## Actions when packages with known vulnerabilities are reported -We also have a [blog post](https://devblogs.microsoft.com/nuget/nugetaudit-2-0-elevating-security-and-trust-in-package-management/) which discusses our recommended method for taking action when a package with a known vulnerability is found to be used by your project, and tools to help get more information. +Getting a warning about packages with known vulnerabilities is only part of the process. +Once discovered, action needs to be taken to remove the potential vulnerability from your solution. + +The easiest case is when a package you reference directly has the known vulnerability. +In this situation, update the package version to one that fixes the vulnerability. + +Package vulnerabilities may be reported in both direct and transitive package references. +The action you take to resolve may be different because of that. ### Security vulnerabilities found with updates @@ -195,13 +200,60 @@ If security vulnerabilities are found and updates are available for the package, #### Transitive Packages -If a known vulnerability exists in a top-level package's transitive dependencies, you have these options: +Often a vulnerability will be in a transitive dependency. +Our recommendation is to prefer updates to packages “closest” to your direct references. +Though, there's nothing wrong with just upgrading the package with known vulnerability either. + +For example, say your project references package A. +Package A has a dependency on package B, which in turn has a dependency on package C. +In this example, we'll consider that package C version 1.0.0 has a known vulnerability, fixed in version 2.0.0. +Our recommendation is to first try upgrading package A. +If that doesn't resolve the audit warning, then try upgrading package B. +If that doesn't resolve the audit warning, then upgrade C directly. +To aid with this, you'll [need to find the transitive package path](#finding-the-transitive-package-path). + +In summary, if a known vulnerability exists in a top-level package's transitive dependencies, you have these options: +- Check if the top-level package contains an update that does not have a transitive vulnerability and update that instead. +- Update the closest package to your direct references that does not reference a vulnerability. - Add the fixed package version as a direct package reference. **Note:** Be sure to remove this reference when a new package version update becomes available and be sure to maintain the defined attributes for the expected behavior. - Use [Central Package Management with the transitive pinning functionality](../consume-packages/Central-Package-Management.md#transitive-pinning). + Note that if you pack your project into your own package to share with others, [CPM with transitive pinning will cause packages to become dependencies](../consume-packages/Central-Package-Management.md#transitive-pinning-and-pack), even if your project doesn't directly call APIs on that package. - [Suppress the advisory](#excluding-advisories) until it can be addressed. - File an issue in the top-level package's tracker to request an update. +##### Finding the transitive package path + +There are several ways to find the package path. +Which method you prefer depends on what tools you normally use during your development. + +###### dotnet nuget why + +On the command line, you can use the [`dotnet nuget why` command](/dotnet/core/tools/dotnet-nuget-why) to understand why transitive packages are being included in your project's package graph. + +![dotnet nuget why example](media/dotnet-nuget-why-1.png) + +###### Visual Studio Solution Explorer + +SDK style projects also provide the full package graph under the project's Dependency node. +It's also searchable! +Expand search options and enable “search external files”. + +![Visual Studio Solution Explorer Search Options](media/vs-solution-explorer-search-options-1.png) + +Search the package name, and it will show you all instances under each project's Dependencies node. + +![Visual Studio Solution Explorer Search Results](media/vs-solution-explorer-search-results-1.png) + +###### Visual Studio NuGet Package Manager UI + +When you look at the Installed tab in Visual Studio's package manager UI, when the project uses PackageReference for package management, it will show both direct and transitive packages. +Currently, this only happens when you manage packages for a project, not for the solution. + +If you mouse hover over a package in the package list, the tooltip will include the name of one direct package that has caused that transitive package to be included in the project. + +![Visual Studio Package Manager UI tooltip](media/pm-ui-transitive-tooltip-1.png) + ### Use Copilot to update packages NuGet has released a Model Context Protocol (MCP) server that has the ability to update packages in your project to versions that resolve known vulnerabilities. See [Fixing package vulnerabilities](NuGet-MCP-Server.md#fixing-package-vulnerabilities) for more information. diff --git a/docs/concepts/media/dotnet-nuget-why-1.png b/docs/concepts/media/dotnet-nuget-why-1.png new file mode 100644 index 0000000000000000000000000000000000000000..b8422c44ef4d3a7cf8a7f9c44bcdb570b451245f GIT binary patch literal 39056 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 literal 0 HcmV?d00001 diff --git a/docs/concepts/media/vs-solution-explorer-search-options-1.png b/docs/concepts/media/vs-solution-explorer-search-options-1.png new file mode 100644 index 0000000000000000000000000000000000000000..870c39a8a3ac3f95e45fe13ddff010a5cf04f5a1 GIT binary patch literal 7508 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 literal 0 HcmV?d00001 diff --git a/docs/concepts/media/vs-solution-explorer-search-results-1.png b/docs/concepts/media/vs-solution-explorer-search-results-1.png new file mode 100644 index 0000000000000000000000000000000000000000..00e30fedd7b5e3d2c945b37fa663183714d48c3d GIT binary patch literal 25210 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

    I&wSK{;AfL6%_p_=n+@6&N=t)ODo62= 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 Date: Tue, 4 Nov 2025 15:07:12 -0800 Subject: [PATCH 982/988] Remove smart quotes in Auditing-Packages.md (#3503) --- docs/concepts/Auditing-Packages.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Auditing-Packages.md b/docs/concepts/Auditing-Packages.md index 72821f43c..46483aa83 100644 --- a/docs/concepts/Auditing-Packages.md +++ b/docs/concepts/Auditing-Packages.md @@ -201,7 +201,7 @@ If security vulnerabilities are found and updates are available for the package, #### Transitive Packages Often a vulnerability will be in a transitive dependency. -Our recommendation is to prefer updates to packages “closest” to your direct references. +Our recommendation is to prefer updates to packages "closest" to your direct references. Though, there's nothing wrong with just upgrading the package with known vulnerability either. For example, say your project references package A. From 39695e53b305617f40fdb98d5eb1aceff751484c Mon Sep 17 00:00:00 2001 From: Jeff Kluge Date: Tue, 4 Nov 2025 18:27:52 -0800 Subject: [PATCH 983/988] Add instructions on configuring the NuGet MCP server for GitHub Copilot agent (#3497) --- docs/concepts/NuGet-MCP-Server.md | 78 ++++++++++++++++++ .../media/github-copilot-agent-settings.png | Bin 0 -> 3768 bytes 2 files changed, 78 insertions(+) create mode 100644 docs/concepts/media/github-copilot-agent-settings.png diff --git a/docs/concepts/NuGet-MCP-Server.md b/docs/concepts/NuGet-MCP-Server.md index 9a51f1d89..ccbd97e63 100644 --- a/docs/concepts/NuGet-MCP-Server.md +++ b/docs/concepts/NuGet-MCP-Server.md @@ -73,6 +73,84 @@ To verify that the MCP server is working correctly, open the GitHub Copilot Chat Then click the Tools icon in the bottom toolbar to bring up the Tools menu. You should see the MCP server named "nuget" in the list of available servers. +## Getting started in GitHub Copilot Agent + +You can also configure the MCP Server to work with GitHub Copilot as a Coding Agent in your repositories. +Ensure that you configured your repository to use [GitHub Copilot Coding Agents](https://github.com/settings/copilot/coding_agent). + +Browse to your repository and click the Settings tab. +Expand the Copilot section and click on Coding Agents. + +![GitHub Copilot coding agent settings](./media/github-copilot-agent-settings.png) + +Scroll down to the **Model Context Protocol (MCP)** section and add the following JSON snippet to your `mcpServers` configuration: + +```json +{ + "mcpServers": { + "NuGet": { + "type": "local", + "command": "dnx", + "args": ["NuGet.Mcp.Server", "--yes"], + "tools": ["*"], + "env": {} + } + } +} +``` + +This will make all of NuGet's MCP server tools available. If you want specific tools, you can list them in the `"tools"` parameter array. + +Finally, click the **Save MCP configuration** button to save your changes. + +Now that the NuGet MCP is configured, you will also need to create a GitHub Actions workflow to install .NET 10 Preview 6 or higher so that the `dnx` command is available to run the MCP server. +You can do this by creating the following workflow file in your repository at + +`.github/workflows/copilot-setup-steps.yml` + +The contents of this workflow file should be as follows: + +```yml +name: "Copilot Setup Steps" + +# Automatically run the setup steps when they are changed to allow for easy validation, and +# allow manual testing through the repository's "Actions" tab +on: + workflow_dispatch: + push: + paths: + - .github/workflows/copilot-setup-steps.yml + pull_request: + paths: + - .github/workflows/copilot-setup-steps.yml + +jobs: + # The job MUST be called `copilot-setup-steps` or it will not be picked up by Copilot. + copilot-setup-steps: + runs-on: ubuntu-latest + + # Set the permissions to the lowest permissions possible needed for your steps. + # Copilot will be given its own token for its operations. + permissions: + # If you want to clone the repository as part of your setup steps, for example to install dependencies, you'll need the `contents: read` permission. If you don't clone the repository in your setup steps, Copilot will do this for you automatically after the steps complete. + contents: read + + # You can define any steps you want, and they will run before the agent starts. + # If you do not check out your code, Copilot will do this for you. + steps: + - name: Install .NET 10.x + uses: actions/setup-dotnet@v5 + with: + dotnet-version: | + 10.x + dotnet-quality: preview + + - name: dotnet --info + run: dotnet --info +``` + +This will ensure that the `dnx` command is available to run the NuGet MCP server when GitHub Copilot runs as a coding agent in your repository. + ## Fixing package vulnerabilities The NuGet MCP server can help you identify and fix package vulnerabilities in your project. diff --git a/docs/concepts/media/github-copilot-agent-settings.png b/docs/concepts/media/github-copilot-agent-settings.png new file mode 100644 index 0000000000000000000000000000000000000000..2b998ee3584c66843623a2e443d9a7bc891b206e GIT binary patch literal 3768 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 literal 0 HcmV?d00001 From 55251011cf977762b9c62d97bd2e337d7a6565cf Mon Sep 17 00:00:00 2001 From: Nigusu Solomon Yenework <59111203+Nigusu-Allehu@users.noreply.github.com> Date: Wed, 5 Nov 2025 14:56:26 -0800 Subject: [PATCH 984/988] Add a general HTTPS everywhere doc (#3498) --- docs/TOC.md | 1 + .../nuget-https-everywhere.md | 97 +++++++++++++++++++ 2 files changed, 98 insertions(+) create mode 100644 docs/consume-packages/nuget-https-everywhere.md diff --git a/docs/TOC.md b/docs/TOC.md index 0cf22d01f..a49bb6178 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -18,6 +18,7 @@ ### [Package Manager Console (PowerShell)](consume-packages/install-use-packages-powershell.md) ## Configure NuGet ### [Visual Studio options](consume-packages/nuget-visual-studio-options.md) +### [NuGet HTTPS Everywhere](consume-packages/nuget-https-everywhere.md) ### Package restore options #### [Restore packages](consume-packages/package-restore.md) #### [Troubleshooting](consume-packages/package-restore-troubleshooting.md) diff --git a/docs/consume-packages/nuget-https-everywhere.md b/docs/consume-packages/nuget-https-everywhere.md new file mode 100644 index 000000000..47c97e01d --- /dev/null +++ b/docs/consume-packages/nuget-https-everywhere.md @@ -0,0 +1,97 @@ +--- +title: NuGet HTTPS Everywhere +description: Learn why NuGet enforces HTTPS connections for package sources, what errors like NU1302 mean, and how to safely allow HTTP feeds when necessary. +author: Nigusu-Allehu +ms.author: nyenework +ms.date: 10/28/2025 +ms.topic: conceptual +ai-usage: ai-generated +--- + +# NuGet HTTPS Everywhere + +NuGet requires all package sources to use **HTTPS** instead of **HTTP**. +This enforcement protects the software supply chain by preventing tampering and interception during package restore and related operations. +NuGet enforces this requirement by producing an error and stopping the operation when an HTTP source is used. + +## Understanding the HTTP Error + +This error occurs when one or more package sources in your configuration use an **HTTP** URL instead of **HTTPS**. + +In earlier NuGet versions, this scenario produced a **warning** ([`NU1803`](../reference/errors-and-warnings/nu1803.md)). +Beginning with [**NuGet 6.12**](../release-notes/NuGet-6.12.md) and later, it now results in an **error** unless the use of HTTP sources is explicitly permitted. + +### Recommended Resolution + +Before allowing HTTP connections, confirm whether your package source supports HTTPS. +If it does, update the feed URL to use the secure protocol: + +```xml + +``` + +Switching to HTTPS ensures end-to-end encryption and is the recommended and more secure approach. + +### Allowing Insecure HTTP Feeds (Opt-Out) + +If HTTPS is not available and you operate in a trusted or isolated environment, you can explicitly allow HTTP sources. + +#### Option 1: Set allowInsecureConnections in your `NuGet.Config` + +* **Use Visual Studio** + + Enable or disable allowing insecure HTTP connections with the [Package Sources settings](/nuget/consume-packages/nuget-visual-studio-options#allow-insecure-connections) under the Visual Studio options > **NuGet Package Manager**. + +* **Edit `NuGet.Config` manually** + + Add the `allowInsecureConnections="true"` attribute to the affected source: + + ```xml + + + + + + + ``` + +#### Option 2: Use the Command-Line Parameter + +For commands that support it, include the following flag to temporarily permit HTTP connections: + +For **dotnet** commands: + +```bash +--allow-insecure-connections +``` + +For **NuGet.exe** commands, use: + +```powershell +-AllowInsecureConnections +``` + +#### Commands that support opt-out options + +| Tool | Commands | Support for Allow Insecure Connection | +| -------------- | ------------------------- | ------------------------------------- | +| **nuget.exe** | `push` | NuGet **7.0** | +| **dotnet CLI** | `dotnet nuget push` | .NET **10.0.1xx** and newer | +| **dotnet CLI** | `dotnet nuget add source` | .NET **9.0.1xx** and newer | + +## HTTPS Enforcement Rollout Across Tools + +NuGet’s HTTPS enforcement was introduced gradually across releases. +The following table summarizes the progression from [**warnings (NU1803)**](../reference/errors-and-warnings/nu1803.md) to [**errors (NU1302)**](../reference/errors-and-warnings/nu1302.md). + +| Versions Affected | Behavior | +| ----------------------------------------------------- | --------------------------------------------------------------------- | +| [NuGet.exe 6.3](../release-notes/NuGet-6.3.md)+, Visual Studio 17.3+, .NET 6.0.100+ | ⚠️ **Warning (NU1803)** – HTTP sources allowed but discouraged | +| [NuGet.exe 6.12](../release-notes/NuGet-6.12.md)+, Visual Studio 17.12+, .NET 9.0.100+ | ❌ **Error (NU1302)** – HTTP sources blocked unless explicitly allowed| + +## See Also + +* [NU1302](../reference/errors-and-warnings/nu1302.md) +* [NU1803](../reference/errors-and-warnings/nu1803.md) +* [NuGet.Config Reference](../reference/nuget-config-file.md#packagesources) +* [NuGet Visual Studio Options](../consume-packages/nuget-visual-studio-options.md) From a85345c64595dcaaf01f695884548b290f2ed667 Mon Sep 17 00:00:00 2001 From: Nigusu Solomon Yenework <59111203+Nigusu-Allehu@users.noreply.github.com> Date: Wed, 5 Nov 2025 15:36:29 -0800 Subject: [PATCH 985/988] Revise NU1302 documentation with new scenarios (#3471) --- docs/reference/errors-and-warnings/NU1302.md | 33 ++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/docs/reference/errors-and-warnings/NU1302.md b/docs/reference/errors-and-warnings/NU1302.md index 8bbecf34e..2dd3803d8 100644 --- a/docs/reference/errors-and-warnings/NU1302.md +++ b/docs/reference/errors-and-warnings/NU1302.md @@ -10,6 +10,8 @@ f1_keywords: # NuGet Error NU1302 +## Scenario 1 + > You are running the 'restore' operation with an 'HTTP' source: myHttpSource. NuGet requires HTTPS sources. To use an HTTP source, you must explicitly set 'allowInsecureConnections' to true in your NuGet.Config file. Please refer to https://aka.ms/nuget-https-everywhere for more information. ### Issue @@ -53,3 +55,34 @@ Here's how it functions: > [!WARNING] > Changing SdkAnalysisLevel has other side-effects. Refer to the [`SdkAnalysisLevel`](/dotnet/core/project-sdk/msbuild-props#sdkanalysislevel) for a summary of the full scope of .NET SDK features affected. + +## Scenario 2 + +> You are using a NuGet source 'https://contoso/v3/index.json' that contains an 'HTTP' service index resource endpoint: 'http://contoso/v3-flatcontainer/contoso/index.json'. This is insecure and not recommended. To allow HTTP resources, you must explicitly set 'allowInsecureConnections' to true in your NuGet.Config file. For more information, visit https://aka.ms/nuget-https-everywhere. + +### Issue + +A configured package source uses **HTTPS**, but one of its resources (indicated in the error message) uses **HTTP**. + +NuGet requires that all sources and their resources use HTTPS. +If you want to continue using this source despite its HTTP resource, you must set the `allowInsecureConnections` flag to true in your NuGet.config file. + +To learn more about package sources and resource endpoints, take a look at the [NuGet Server API](../../api/overview). + +#### Option 1: Update the Source to Use HTTPS + +Whenever possible, switch to a package source that provides only HTTPS resources. This is the recommended and most secure option. + +#### Option 2: Allow Insecure Connections (If Necessary) + +If you must use the source, explicitly allow insecure connections by adding the `allowInsecureConnections` flag in the `NuGet.Config`: + +For information about managing the setting in Visual Studio, see [NuGet Options in Visual Studio](../../consume-packages/nuget-visual-studio-options.md#allow-insecure-connections) + +```xml + + + + + +``` From 8936bc99c49c78547dc8032170fb2d28e35ff7ed Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 7 Nov 2025 12:44:33 -0800 Subject: [PATCH 986/988] Improve the auditing documentation by making it more prescriptive (#3504) --- docs/concepts/Auditing-Packages.md | 165 ++++++++++++++--------------- 1 file changed, 82 insertions(+), 83 deletions(-) diff --git a/docs/concepts/Auditing-Packages.md b/docs/concepts/Auditing-Packages.md index 46483aa83..72d185b5a 100644 --- a/docs/concepts/Auditing-Packages.md +++ b/docs/concepts/Auditing-Packages.md @@ -77,23 +77,7 @@ Note that the [V2 protocol is deprecated](../nuget-org/overview-nuget-org.md#api | -------------------------------------------------------------------------------------------- | ------------------------------------------------------------------ | | [NuGet 6.12, .NET 9.0.100 SDK, and Visual Studio 2022 17.12](../release-notes/NuGet-6.12.md) | Restore | | [NuGet 6.14, .NET 9.0.300 SDK](../release-notes/NuGet-6.14.md) | `dotnet package list --vulnerable` | -| Not yet supported | NuGet AuditSources support in the Visual Studio Package Manager UI | - -#### Excluding advisories - -You can choose to exclude specific advisories from the audit report by adding a new `NuGetAuditSuppress` MSBuild item for each advisory. -Define a `NuGetAuditSuppress` item with the `Include=` metadata set to the advisory URL you wish to suppress. - -```xml - - - -``` - -Similar to the other NuGet audit configuration properties, `NuGetAuditSuppress` items can be defined at the project or repository level. - -`NuGetAuditSuppress` is available for PackageReference projects starting from [NuGet 6.11, Visual Studio 17.11, and the .NET 8.0.400 SDK](../release-notes/NuGet-6.11.md). -It is available for packages.config from [Visual Studio 17.12 and NuGet 6.12](../release-notes/NuGet-6.12.md). +| [NuGet 7.0 and Visual Studio 2026](../release-notes/NuGet-7.0.md) | NuGet AuditSources support in the Visual Studio Package Manager UI | ### Warning codes @@ -113,90 +97,49 @@ Alternatively, if you want to keep low and moderate vulnerabilities as warnings, > [!NOTE] > MSBuild properties for message severity such as `NoWarn` and `TreatWarningsAsErrors` are not supported for packages.config projects. -## Running NuGet Audit in CI - -### Separating Errors from Warnings with a Dedicated Auditing Pipeline - -You can use MSBuild's conditional statements to configure a dedicated CI pipeline for running audits, without audit warnings being treated as errors in other pipelines or on local builds. -Depending on your CI system and team processes, you can have failed runs of the audit pipeline email the team, or you may have a dashboard where you can show a badge of the most recent run of the pipeline. +#### Excluding advisories -Like many things in programming, there are multiple ways to achieve the outcome. -One option is to treat NuGet Audit warnings as errors only in an audit pipeline. +You can exclude advisories by adding a new `NuGetAuditSuppress` MSBuild item for each advisory. +Define a `NuGetAuditSuppress` item with the `Include=` metadata set to the advisory URL you wish to suppress. ```xml - - NU1900;NU1901;NU1902;NU1903;NU1904;NU1905 - $(WarningsAsErrors);$(NuGetAuditCodes) - $(WarningsNotAsErrors);$(NuGetAuditCodes) - -``` - -Then in your pipeline, you run restore specifying the property used by the condition. -For example, using GitHub Actions syntax: - -```yml -- name: Restore with NuGet Auditing - run: dotnet restore -p:AuditPipeline=true + + + ``` -The property name `AuditPipeline` is only an example, and you can customize it as you wish, as long as the name is the same in both the MSBuild condition and the command line. -MSBuild also uses environment variables when reading a property that has not yet been defined, so an environment variable is an alternative to the command line parameter. - -By using conditions to selectively cause NuGet Audit warnings to fail a restore, you can have a dedicated pipeline to check packages for known vulnerabilities, while preventing new security advisories from blocking your bug fixes at inconvenient times. -Keeping NuGet Audit warnings enabled for local builds allows developers to get a non-blocking notification about new security advisories and can encourage upgrading package versions to fix the vulnerabilities more quickly than waiting for someone to check the audit pipeline status. - -### Ensure restore audited projects - -NuGet in MSBuild 17.13 and .NET 9.0.200 added output properties `RestoreProjectCount`, `RestoreSkippedCount` and `RestoreProjectsAuditedCount` on the restore task. -This can be used to enforce that audit ran during a restore. -Note that these output properties are not available with [static graph restore](../reference/msbuild-targets.md#restoring-with-msbuild-static-graph-evaluation). - -Since MSBuild is a scripting language, this can be achieved a number of different ways, but also has the same restrictions as MSBuild has. -One example is to create a file *Directory.Solution.targets* in the same directory as your solution file, whose contents has a target similar to the following. -Note that *Directory.Build.props* is commonly used, but is imported by projects. -However, NuGet's restore target and task runs at the solution level, so needs to be in MSBuild's solution extensibility file, not the project/build file. - -```xml - - - - - -``` +Similar to the other NuGet audit configuration properties, `NuGetAuditSuppress` items can be defined at the project or repository level. -Depending on your use-case, you may wish to use condition `'$(RestoreProjectCount)' != '$([MSBuild::Add($(RestoreProjectsAuditedCount), $(RestoreSkippedCount))'` on the error message, to account for projects that restore skipped because they were already up to date. -Similarly, think about if you want this error to happen everywhere, or only in CI pipelines, and what environment variables are defined in your CI environment, and factor this into the target's condition. -Again, since MSBuild is a scripting language, you can use any of its capabilities to customize your repo however you want. -Viewing [MSBuild's metaproj](/visualstudio/msbuild/how-to-build-specific-targets-in-solutions-by-using-msbuild-exe#troubleshooting) and [binlogs](/visualstudio/msbuild/msbuild-command-line-reference#switches-for-loggers) are useful to develop and troubleshoot solution level targets. +`NuGetAuditSuppress` is available for PackageReference projects starting from [NuGet 6.11, Visual Studio 17.11, and the .NET 8.0.400 SDK](../release-notes/NuGet-6.11.md). +It is available for packages.config from [Visual Studio 17.12 and NuGet 6.12](../release-notes/NuGet-6.12.md). -## `dotnet list package --vulnerable` +##### When to exclude advisories -Once a project is successfully restored, [`dotnet list package`](/dotnet/core/tools/dotnet-list-package) has a `--vulnerable` argument to filter the packages based on which packages have known vulnerabilities. -Note that `--include-transitive` is not default, so should be included. +In scenarios where you have analyzed a specific advisory and have determined that it either does not apply to your scenario, or you are comfortable with the risks it imposes, you can choose to exclude specific advisories from the audit report. +Note that this would completely suppress the advisories, even for packages that share the advisory that may not be part of your project. +`NuGetAuditSuppress` should be considered a last resort for managing advisories. ## Actions when packages with known vulnerabilities are reported Getting a warning about packages with known vulnerabilities is only part of the process. Once discovered, action needs to be taken to remove the potential vulnerability from your solution. -The easiest case is when a package you reference directly has the known vulnerability. -In this situation, update the package version to one that fixes the vulnerability. +The easiest case is when a package you reference directly has the known vulnerability. +In this situation, update the package version to one that fixes the vulnerability. Package vulnerabilities may be reported in both direct and transitive package references. The action you take to resolve may be different because of that. ### Security vulnerabilities found with updates -If security vulnerabilities are found and updates are available for the package, you can either: +If security vulnerabilities are found and updates are available for the package, you can do one of the following: - Edit the `.csproj` or other package version location (`Directory.Packages.props`) with a newer version containing a security fix. - Use the NuGet package manager user interface in Visual Studio to update the individual package. - Run the `dotnet package update --vulnerable` command to update all vulnerable packages in a project to the first version without known vulnerabilities. - Run the `dotnet package update` or `dotnet package add` commands with the respective package ID to update to the latest version. Use [`dotnet add package` when using .NET 9 or earlier](/dotnet/core/whats-new/dotnet-10/sdk#more-consistent-command-order). +- Use the NuGet Model Context Protocol (MCP) server that has the ability to update packages in your project to versions that resolve known vulnerabilities. +See [Fixing package vulnerabilities](NuGet-MCP-Server.md#fixing-package-vulnerabilities) for more information. #### Transitive Packages @@ -254,10 +197,6 @@ If you mouse hover over a package in the package list, the tooltip will include ![Visual Studio Package Manager UI tooltip](media/pm-ui-transitive-tooltip-1.png) -### Use Copilot to update packages -NuGet has released a Model Context Protocol (MCP) server that has the ability to update packages in your project to versions that resolve known vulnerabilities. -See [Fixing package vulnerabilities](NuGet-MCP-Server.md#fixing-package-vulnerabilities) for more information. - ### Security vulnerabilities found with no updates In the case that a known vulnerability exists in a package without a security fix, you can do the following. @@ -290,7 +229,67 @@ On NuGet.org, you can navigate to the package details page and click `Report pac If no security vulnerabilities are found, this means that packages with known vulnerabilities were not found in your package graph at the present moment of time you checked. Since the advisory database can be updated at any time, we recommend regularly checking your `dotnet restore` output and ensuring the same in your continuous integration process. -## Summary +## Running NuGet Audit in CI + +### Separating Errors from Warnings with a Dedicated Auditing Pipeline + +You can use MSBuild's conditional statements to configure a dedicated CI pipeline for running audits, without audit warnings being treated as errors in other pipelines or on local builds. +Depending on your CI system and team processes, you can have failed runs of the audit pipeline email the team, or you may have a dashboard where you can show a badge of the most recent run of the pipeline. + +Like many things in programming, there are multiple ways to achieve the outcome. +One option is to treat NuGet Audit warnings as errors only in an audit pipeline. + +```xml + + NU1900;NU1901;NU1902;NU1903;NU1904;NU1905 + $(WarningsAsErrors);$(NuGetAuditCodes) + $(WarningsNotAsErrors);$(NuGetAuditCodes) + +``` + +Then in your pipeline, you run restore specifying the property used by the condition. +For example, using GitHub Actions syntax: -Security auditing features are crucial for maintaining the security and integrity of software projects. -These features provide you with an additional layer of protection against security vulnerabilities and ensures that you can use open source packages with confidence. +```yml +- name: Restore with NuGet Auditing + run: dotnet restore -p:AuditPipeline=true +``` + +The property name `AuditPipeline` is only an example, and you can customize it as you wish, as long as the name is the same in both the MSBuild condition and the command line. +MSBuild also uses environment variables when reading a property that has not yet been defined, so an environment variable is an alternative to the command line parameter. + +By using conditions to selectively cause NuGet Audit warnings to fail a restore, you can have a dedicated pipeline to check packages for known vulnerabilities, while preventing new security advisories from blocking your bug fixes at inconvenient times. +Keeping NuGet Audit warnings enabled for local builds allows developers to get a non-blocking notification about new security advisories and can encourage upgrading package versions to fix the vulnerabilities more quickly than waiting for someone to check the audit pipeline status. + +### Ensure restore audited projects + +NuGet in MSBuild 17.13 and .NET 9.0.200 added output properties `RestoreProjectCount`, `RestoreSkippedCount` and `RestoreProjectsAuditedCount` on the restore task. +This can be used to enforce that audit ran during a restore. +Note that these output properties are not available with [static graph restore](../reference/msbuild-targets.md#restoring-with-msbuild-static-graph-evaluation). + +Since MSBuild is a scripting language, this can be achieved a number of different ways, but also has the same restrictions as MSBuild has. +One example is to create a file *Directory.Solution.targets* in the same directory as your solution file, whose contents has a target similar to the following. +Note that *Directory.Build.props* is commonly used, but is imported by projects. +However, NuGet's restore target and task runs at the solution level, so needs to be in MSBuild's solution extensibility file, not the project/build file. + +```xml + + + + + +``` + +Depending on your use-case, you may wish to use condition `'$(RestoreProjectCount)' != '$([MSBuild::Add($(RestoreProjectsAuditedCount), $(RestoreSkippedCount))'` on the error message, to account for projects that restore skipped because they were already up to date. +Similarly, think about if you want this error to happen everywhere, or only in CI pipelines, and what environment variables are defined in your CI environment, and factor this into the target's condition. +Again, since MSBuild is a scripting language, you can use any of its capabilities to customize your repo however you want. +Viewing [MSBuild's metaproj](/visualstudio/msbuild/how-to-build-specific-targets-in-solutions-by-using-msbuild-exe#troubleshooting) and [binlogs](/visualstudio/msbuild/msbuild-command-line-reference#switches-for-loggers) are useful to develop and troubleshoot solution level targets. + +## `dotnet list package --vulnerable` + +[`dotnet list package`](/dotnet/core/tools/dotnet-list-package) has a `--vulnerable` argument to filter the packages based on which packages have known vulnerabilities. +Note that `--include-transitive` is not default, so should be included. From 50cc2cd0424782ca31a3349ca81b58db75a5c2fe Mon Sep 17 00:00:00 2001 From: Jeff Kluge Date: Mon, 10 Nov 2025 11:33:35 -0800 Subject: [PATCH 987/988] Add solution file and project to make it easier to load docs in Visual Studio (#3496) --- docs.sln | 38 ++++++++++++++++++++++++++++++++++++++ docs/docs.csproj | 5 +++++ global.json | 5 +++++ 3 files changed, 48 insertions(+) create mode 100644 docs.sln create mode 100644 docs/docs.csproj create mode 100644 global.json diff --git a/docs.sln b/docs.sln new file mode 100644 index 000000000..a90cea1da --- /dev/null +++ b/docs.sln @@ -0,0 +1,38 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 18 +VisualStudioVersion = 18.3.11122.13 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "docs", "docs\docs.csproj", "{718966AB-D840-C99F-BC8C-757012BE68AA}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{C2962E4E-20FC-4C00-858E-D0C62611CBFB}" + ProjectSection(SolutionItems) = preProject + .gitignore = .gitignore + .openpublishing.publish.config.json = .openpublishing.publish.config.json + .openpublishing.redirection.json = .openpublishing.redirection.json + CONTRIBUTING.md = CONTRIBUTING.md + global.json = global.json + LICENSE = LICENSE + LICENSE-CODE = LICENSE-CODE + README.md = README.md + ThirdPartyNotices = ThirdPartyNotices + EndProjectSection +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {718966AB-D840-C99F-BC8C-757012BE68AA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {718966AB-D840-C99F-BC8C-757012BE68AA}.Debug|Any CPU.Build.0 = Debug|Any CPU + {718966AB-D840-C99F-BC8C-757012BE68AA}.Release|Any CPU.ActiveCfg = Release|Any CPU + {718966AB-D840-C99F-BC8C-757012BE68AA}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {C4A337AF-69A4-496C-97FF-300C3489A718} + EndGlobalSection +EndGlobal diff --git a/docs/docs.csproj b/docs/docs.csproj new file mode 100644 index 000000000..e63c1c5b9 --- /dev/null +++ b/docs/docs.csproj @@ -0,0 +1,5 @@ + + + net472 + + \ No newline at end of file diff --git a/global.json b/global.json new file mode 100644 index 000000000..d894f924e --- /dev/null +++ b/global.json @@ -0,0 +1,5 @@ +{ + "msbuild-sdks": { + "Microsoft.Build.NoTargets" : "3.7.134" + } +} \ No newline at end of file From 7546033ced0c43deaee1df554020d45d0d26db52 Mon Sep 17 00:00:00 2001 From: Donnie Goodson <49205731+donnie-msft@users.noreply.github.com> Date: Mon, 10 Nov 2025 12:36:40 -0800 Subject: [PATCH 988/988] Create NuGet 7.0 Release Notes (#3499) --- docs/release-notes/Index.md | 10 +- docs/release-notes/NuGet-7.0.md | 314 ++++++++++++++++++++++++++++++-- 2 files changed, 307 insertions(+), 17 deletions(-) diff --git a/docs/release-notes/Index.md b/docs/release-notes/Index.md index 638732d93..745e8f4db 100644 --- a/docs/release-notes/Index.md +++ b/docs/release-notes/Index.md @@ -1,8 +1,8 @@ --- title: Release Notes description: Index of NuGet release notes and known issues for all versions. -author: anangaur -ms.author: anangaur +author: donnie-msft +ms.author: eagoodso ms.date: 05/25/2022 ms.topic: release-notes --- @@ -11,7 +11,11 @@ ms.topic: release-notes [Known Issues](../release-notes/known-issues.md) -[Nuget 6.13](../release-notes/NuGet-6.13.md) +[NuGet 7.0](../release-notes/NuGet-7.0.md) + +[NuGet 6.14](../release-notes/NuGet-6.14.md) + +[NuGet 6.13](../release-notes/NuGet-6.13.md) [NuGet 6.12](../release-notes/NuGet-6.12.md) diff --git a/docs/release-notes/NuGet-7.0.md b/docs/release-notes/NuGet-7.0.md index 0582d19aa..0de1486cc 100644 --- a/docs/release-notes/NuGet-7.0.md +++ b/docs/release-notes/NuGet-7.0.md @@ -1,26 +1,312 @@ --- title: NuGet 7.0 Release Notes description: Release notes for NuGet 7.0 including new features, bug fixes, and DCRs. -author: zivkan +author: donnie-msft +ms.author: eagoodso +ms.date: 10/29/2025 ms.topic: release-notes --- -# NuGet 7.0 Release Notes - +# NuGet 7.0 Release Notes NuGet distribution vehicles: | NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | -|:---|:---|:---| -| [**7.0**](https://nuget.org/downloads) | TBD | TBD | +| :---|:---|:---| +| [**7.0.0**](https://nuget.org/downloads) | [Visual Studio 2026 version 18.0.0](https://visualstudio.microsoft.com/downloads/) | [10.0.100](https://dotnet.microsoft.com/download/dotnet/10.0)1 | + +1 Installed with Visual Studio 2026 with any .NET workload + +## Summary: What's New in 7.0.0 + +* Projects that target .NET 10 warn for vulnerabilities in transitive packages by defaulting to NuGetAuditMode=all [#14161](https://github.com/nuget/home/issues/14161) + +* [Package pruning](../consume-packages/Package-References-in-Project-Files.md#prunepackagereference) is enabled for all projects targeting .NET 10 [#14345](https://github.com/NuGet/Home/issues/14345) + +* Created the [NuGet Model Context Protocol (MCP) Server](../concepts/NuGet-MCP-Server.md), supported by .NET 10 SDK or later. +NuGet's MCP is pre-installed in Visual Studio 2026, and installable in VS 17.14 and VS Code. +The server is published on nuget.org as the [NuGet.Mcp.Server](https://www.nuget.org/packages/NuGet.Mcp.Server#readme-body-tab) package. + +* Enable packing legacy PackageReference projects without the need for a package - [#14046](https://github.com/NuGet/Home/issues/14046) + +* Deprecate SHA-1 usage in .NET 10 - [#13814](https://github.com/NuGet/Home/issues/13814) + +* Details pane reflects Vulnerability Data from Audit Sources - [#14554](https://github.com/NuGet/Home/issues/14554) + +* NuGet AuditSources support in the Package Manager UI - [#13954](https://github.com/NuGet/Home/issues/13954) + +* Migrate NuGet's settings to the new Visual Studio Options window + + * Migrate "Package sources" settings in Visual Studio Options - [#14233](https://github.com/NuGet/Home/issues/14233) + + * Migrate "Package Source Mapping" settings in Visual Studio Options - [#14234](https://github.com/NuGet/Home/issues/14234) + +* dotnet update package --vulnerable (Audit fix) - [#13372](https://github.com/NuGet/Home/issues/13372) + +### Breaking changes + +* Add package ID validation during restore - [#14407](https://github.com/NuGet/Home/issues/14407) + +* Project.json is no longer supported in 7.0. Visual Studio 2026 automatically migrated project.json projects to PackageReference + +* Package pruning will lead to a one-time diff in packages lock file - [#14272](https://github.com/NuGet/Home/issues/14272) + +* Pruning privatizes a direct references by apply PrivateAssets=all and IncludeAssets=none - [#14196](https://github.com/NuGet/Home/issues/14196) + +* Raise an error for SHA-1 fingerprints usage in NuGet.exe sign, mssign commands - [#13962](https://github.com/NuGet/Home/issues/13962) + +* Show an error when a non https source is used in a resource in a service index - [#13364](https://github.com/NuGet/Home/issues/13364) + +#### SDK Breaking changes + +* Project.json deprecation + * Remove project.json pack - [#7931](https://github.com/NuGet/Home/issues/7931) + + * Remove project.json support - [#7199](https://github.com/NuGet/Home/issues/7199) + + * Remove PackageSpec.Dependencies - [#14446](https://github.com/NuGet/Home/issues/14446) + + * Clean up Package Spec redudant APIs - [#6231](https://github.com/NuGet/Home/issues/6231) + +* Unused NuGet VS Extensibility APIs removed - [#14403](https://github.com/NuGet/Home/issues/14403) + +* Remove all unused APIs marked as obsolete in NuGet.Frameworks, NuGet.Protocol, NuGet.Commands & NuGet.PackageManagement - [#14395](https://github.com/NuGet/Home/issues/14395) + +* Remove obsolete APIs from NuGet.Common, NuGet.Configuration, NuGet.LibraryModel, NuGet.Packaging and NuGet.ProjectModel - [#14393](https://github.com/NuGet/Home/issues/14393) + +* Block and remove code for unused restore implementations such as `Standalone`. - [#14184](https://github.com/NuGet/Home/issues/14184) + +* Remove `DotnetToolReference` restore - [#14183](https://github.com/NuGet/Home/issues/14183) + +### Issues fixed in this release + +#### NuGet SDK fixes + +* Don't use reflection based deserialization in NuGet.Protocol - [#14470](https://github.com/NuGet/Home/issues/14470) + +* JsonSerializerIsReflectionDisabled on update to Nuget.Protocols 6.13.1 in apps with JsonSerializerIsReflectionEnabledByDefault set to false - [#14111](https://github.com/NuGet/Home/issues/14111) + +#### .NET CLI + +* Enable CanShowDialog for .NET core Authentication Plugins - [#14010](https://github.com/NuGet/Home/issues/14010) + +* "dotnet package update" modifies wrong project file (csproj) - [#14585](https://github.com/NuGet/Home/issues/14585) + +* dotnet nuget verify should output package content hash - [#14384](https://github.com/NuGet/Home/issues/14384) + +* dotnet package update should support --verbosity - [#14319](https://github.com/NuGet/Home/issues/14319) + +* dotnet package update should support CPM and VersionOverride - [#14318](https://github.com/NuGet/Home/issues/14318) + +* dotnet package update should support multiple packages - [#14308](https://github.com/NuGet/Home/issues/14308) + +* dotnet package update should support package source mapping - [#14307](https://github.com/NuGet/Home/issues/14307) + +* dotnet package update to a specific version - [#14306](https://github.com/NuGet/Home/issues/14306) + +* dotnet package update initial version - [#14305](https://github.com/NuGet/Home/issues/14305) + +* [Bug Bash][Unstable] An error “Attempted to divide by zero.” occurs when executing command “dotnet list [ProjectPath] package --vulnerable” - [#14122](https://github.com/NuGet/Home/issues/14122) + +* [Feature]: dotnet list [project | solution] package does not work with solution filters - [#11789](https://github.com/NuGet/Home/issues/11789) + +#### Package Manager UI in Visual Studio + +* Convert Search Control to Fluent UI - [#14469](https://github.com/NuGet/Home/issues/14469) + +* Use Fluent TextBox for Project PM UI Installed Version - [#14466](https://github.com/NuGet/Home/issues/14466) + +* [Bug Bash] There is a tiny gap in the version drop-down list of PM UI - [#11990](https://github.com/NuGet/Home/issues/11990) + +* [Bug Bash] The dropdown list of PM UI doesn’t distinguish the background color between selected-item and hover-on item - [#10977](https://github.com/NuGet/Home/issues/10977) + +* [Bug Bash] Pressing the page-down button on the keyboard when focusing on ‘Version’ drop-down box with Tab key makes the box empty - [#13605](https://github.com/NuGet/Home/issues/13605) + +* Dead Code: ActionsAndVersions View - [#14464](https://github.com/NuGet/Home/issues/14464) + +#### Visual Studio options + +* Decommission Legacy VS Options NuGet Settings - [#14398](https://github.com/NuGet/Home/issues/14398) + +* When adding an http source in the options dialog, have the user click on a checkbox to more explicitly agree to AllowInsecureConnections being added - [#14377](https://github.com/NuGet/Home/issues/14377) + +* Error needed in Package Sources settings for HTTP source without AllowInsecureConnections - [#14367](https://github.com/NuGet/Home/issues/14367) + +* Improve validation of NuGet's settings in Visual Studio Options - [#14359](https://github.com/NuGet/Home/issues/14359) + +* Show validation errors on NuGet options pages while typing - [#14358](https://github.com/NuGet/Home/issues/14358) + +* [Bug Bash] [Unstable] The first removing of a source mapping from the ‘Package Source Mappings’ list in ‘Package Source Mapping’ dialog doesn’t work - [#13520](https://github.com/NuGet/Home/issues/13520) + +* [Localization] The table title ‘Package Source Mapping’ in the ‘Options->NuGet Package Manager->Package Source Mapping’ page was not localized - [#14550](https://github.com/NuGet/Home/issues/14550) + +* [Bug Bash] The offline package source cannot be enabled after disabling it from the ‘Machine-wide package sources’ source list previously in the ‘Options->NuGet Package Manager->Package Sources’ window - [#13434](https://github.com/NuGet/Home/issues/13434) + +* [Bug Bash] The “source” column of the “Add New Package Source Mapping” dialog doesn’t have the minimum width set which makes it can be dragged out of sight - [#13355](https://github.com/NuGet/Home/issues/13355) + +* [Bug Bash] The first reopening of Options dialog should bring back the default package source "Microsoft Visual Studio Offline Packages" in "package sources" list when all the sources were deleted previously - [#13278](https://github.com/NuGet/Home/issues/13278) + +* [Bug Bash] Newly added package source mapping shouldn’t be case-sensitive in “Option->NuGet Package Manager->Package Source Mapping” window - [#13210](https://github.com/NuGet/Home/issues/13210) + +* [Bug Bash] New added package source mapping will lost after switching back to the "Package Source Mapping" tab from other tab in “Option->NuGet Package Manager” window - [#13150](https://github.com/NuGet/Home/issues/13150) + +* [Bug Bash] The “Remove” button should be disable when no package source mapping is selected in the “Package Source Mappings” list - [#13115](https://github.com/NuGet/Home/issues/13115) + +* [CSY] Duplicated hotkeys show in “Options->NuGet Package Manager->Package Sources” dialog - [#7822](https://github.com/NuGet/Home/issues/7822) + +* VS NuGet PMUI - Machine-wide package sources area should be vertically resize-able as well - [#7560](https://github.com/NuGet/Home/issues/7560) + +* [Bug Bash] There will be a duplicated package source when modifying the name of source “Microsoft Visual Studio Offline Packages” - [#13057](https://github.com/NuGet/Home/issues/13057) + +* [Bug Bash] The “Options->NuGet Package Manager->Package Sources” page is disabled after checking or unchecking the checkbox “Enabled” of any one of the package sources having duplicated sources - [#14499](https://github.com/NuGet/Home/issues/14499) + +* Have to manually select pre-populated text on Add Package Source dialog - [#14450](https://github.com/NuGet/Home/issues/14450) + +* VS should not delete Package Source attributes when Name is updated - [#14370](https://github.com/NuGet/Home/issues/14370) + +#### Package Pruning + +* Warning rollout for PrunePackageReference - [#14126](https://github.com/NuGet/Home/issues/14126) + +* Missing audit warnings from "nuget install" when nuget.org is not a package source - [#14096](https://github.com/NuGet/Home/issues/14096) + +* It's not possible to push to HTTP sources specified via command line - [#14047](https://github.com/NuGet/Home/issues/14047) + +* Package pruning is enabled for all projects targeting .NET 10 including multi-targeted ones - [#14345](https://github.com/NuGet/Home/issues/14345) + +* Move pruning enabled frameworks to the NuGet.targets - [#14424](https://github.com/NuGet/Home/issues/14424) + +* Change _RestorePackagePruningDefault to RestorePackagePruningDefault - [#14511](https://github.com/NuGet/Home/issues/14511) + +#### Restore + +* dotnet restore/Visual Studio conflicting with .esproj + Nx project.json - [#13512](https://github.com/NuGet/Home/issues/13512) + +* Improve NU1004 when pruning is used with locked mode - [#14075](https://github.com/NuGet/Home/issues/14075) + +* Consider not writing NuGetToolVersion to generated MSBuild props files on Restore - [#14355](https://github.com/NuGet/Home/issues/14355) + +* NuGet Restore fails if SQL Server Management Studio 21 is installed - [#14349](https://github.com/NuGet/Home/issues/14349) + +* Remove NUGET_EXPERIMENTAL_USE_NJ_FOR_FILE_PARSING - [#14257](https://github.com/NuGet/Home/issues/14257) + +* Remove RestoreTargetGraph.Name as it's redundant with restoreTargetGraph.TargetGraphName being the widely used version - [#14529](https://github.com/NuGet/Home/issues/14529) + +* Remove RestoreArgs.LockFileVersion as it's functionality unused - [#14524](https://github.com/NuGet/Home/issues/14524) + +* Remove NUGET_BULK_RESTORE_COORDINATION and NUGET_SOLUTION_CACHE_INITIALIZATION fallbacks - [#14502](https://github.com/NuGet/Home/issues/14502) + +#### Dependency resolver + +* New dependency resolver does not properly handle floating prerelease versions - [#13833](https://github.com/NuGet/Home/issues/13833) + +* Reenable new algorithm resolution with lock files - [#13800](https://github.com/NuGet/Home/issues/13800) + +#### Other + +* Stop ilmerging pack - [#13079](https://github.com/NuGet/Home/issues/13079) + +* Make NuGet.Client's Build.ps1 more friendly to GitHub Copilot in VSCode - [#14453](https://github.com/NuGet/Home/issues/14453) + +* Generate identical [Content_Types].xml on repeated builds - [#14357](https://github.com/NuGet/Home/issues/14357) + +* pack legacy csproj: include pack targets and tasks in VS build tools - [#14520](https://github.com/NuGet/Home/issues/14520) + +* VS crashes when the only project in the solution is a project.json project - [#14553](https://github.com/NuGet/Home/issues/14553) + +* review exception handling - [#14440](https://github.com/NuGet/Home/issues/14440) + +* Improve perf by avoiding redundant dictionary lookups - [#14432](https://github.com/NuGet/Home/issues/14432) + +* LockFileLibrary does not need to be mutable - [#14385](https://github.com/NuGet/Home/issues/14385) + +[List of commits in this release](https://github.com/NuGet/NuGet.Client/compare/6.14.1.1...7.0.0.289) + +### Community contributions -## Not yet released +Thank you to all the contributors who helped make this NuGet release awesome! -This version of NuGet is in preview and these release notes will be updated when it is released. +* [SimonCropp](https://github.com/NuGet/NuGet.Client/pull/6720) + * [6720](https://github.com/NuGet/NuGet.Client/pull/6720) remove redundant default constructors + * [6610](https://github.com/NuGet/NuGet.Client/pull/6610) add "does not have a min version" to messages in GetNupkgInfo + * [6581](https://github.com/NuGet/NuGet.Client/pull/6581) remove redundant dictionary lookups in MarkTransitiveOrigin + * [6596](https://github.com/NuGet/NuGet.Client/pull/6596) enable nullability in PackageItemViewModelTests + * [6634](https://github.com/NuGet/NuGet.Client/pull/6634) remove IFrameworkTargetable + * [6616](https://github.com/NuGet/NuGet.Client/pull/6616) avoid redundant version parsing in PluginFindPackageByIdResource + * [6595](https://github.com/NuGet/NuGet.Client/pull/6595) enable nullability in ReadmePreviewViewModelTests + * [6587](https://github.com/NuGet/NuGet.Client/pull/6587) remove redundant dictionary lookup in ProcessUnrankedEntries + * [6598](https://github.com/NuGet/NuGet.Client/pull/6598) enable nullability in EmbeddedResourcesCapabilityTests + * [6577](https://github.com/NuGet/NuGet.Client/pull/6577) use fields instead of private properties + * [6622](https://github.com/NuGet/NuGet.Client/pull/6622) remove un-used list in GetPackagesToBeReinstalled + * [6589](https://github.com/NuGet/NuGet.Client/pull/6589) redundant null check for projectManagerService.GetMetadataAsync return value + * [6605](https://github.com/NuGet/NuGet.Client/pull/6605) enable nullable in VSRestoreSettingsUtilityTests + * [6575](https://github.com/NuGet/NuGet.Client/pull/6575) remove redundant dictionary lookup in CredentialServiceAdapter.GetCredentials + * [6601](https://github.com/NuGet/NuGet.Client/pull/6601) enable nullabe in NuGetInstallCommandTest + * [6593](https://github.com/NuGet/NuGet.Client/pull/6593) enable nullable in IProjectContextInfoExtensionsTests + * [6614](https://github.com/NuGet/NuGet.Client/pull/6614) remove redundant lists in DependencyGraphFileRequestProvider + * [6625](https://github.com/NuGet/NuGet.Client/pull/6625) remove un-used variables in PackageExtractor + * [6609](https://github.com/NuGet/NuGet.Client/pull/6609) fix nullability in UnresolvedMessages + * [6608](https://github.com/NuGet/NuGet.Client/pull/6608) remove un-used contextForGather + * [6628](https://github.com/NuGet/NuGet.Client/pull/6628) remove redundant enumeration in CredentialsItem + * [6617](https://github.com/NuGet/NuGet.Client/pull/6617) remove toolItems list instance in MSBuildRestoreUtility + * [6599](https://github.com/NuGet/NuGet.Client/pull/6599) fix parameter nullability in Constructor_SetReportAbuseUrl_Initialize… + * [6604](https://github.com/NuGet/NuGet.Client/pull/6604) enable nullable in LegacyPackageReferenceProjectTests + * [6631](https://github.com/NuGet/NuGet.Client/pull/6631) remove DependencyGraphSpecRequestProvider.CollectReferences + * [6635](https://github.com/NuGet/NuGet.Client/pull/6635) remove EnvDteProjectExtensions.PathComparer + * [6623](https://github.com/NuGet/NuGet.Client/pull/6623) remove redundant GetManifestResourceNames in ManifestSchemaUtility + * [6619](https://github.com/NuGet/NuGet.Client/pull/6619) remove unused packageID variable + * [6620](https://github.com/NuGet/NuGet.Client/pull/6620) remove un-used variables in PackageManagerControl + * [6640](https://github.com/NuGet/NuGet.Client/pull/6640) remove redundant exception handling + * [6637](https://github.com/NuGet/NuGet.Client/pull/6637) remove PackageManagerControl.AddMigratorBar + * [6629](https://github.com/NuGet/NuGet.Client/pull/6629) remove un-used HashSet instance in ResolverMetadataClient + * [6602](https://github.com/NuGet/NuGet.Client/pull/6602) enable nullable in MSBuildUtilityTest + * [6641](https://github.com/NuGet/NuGet.Client/pull/6641) remove redundant null condition in UpdateCommand.ExecuteCommandAsync + * [6683](https://github.com/NuGet/NuGet.Client/pull/6683) remove redundant string alloc in GetTempFilePath + * [6626](https://github.com/NuGet/NuGet.Client/pull/6626) remove un-used variables in SignedPackageArchiveIOUtility + * [6574](https://github.com/NuGet/NuGet.Client/pull/6574) remove redundant dictionary lookup in CreatePackageSourceMappingDictionary + * [6594](https://github.com/NuGet/NuGet.Client/pull/6594) enable nullability in InfiniteScrollListTests + * [6682](https://github.com/NuGet/NuGet.Client/pull/6682) Use async delay in SafeReadAsync + * [6600](https://github.com/NuGet/NuGet.Client/pull/6600) enable nullable in NuGetUpdateCommandTests + * [6606](https://github.com/NuGet/NuGet.Client/pull/6606) enable nullable in VSNominationUtilitiesTests + * [6613](https://github.com/NuGet/NuGet.Client/pull/6613) remove redundant type variable in GetExternalProject + * [6611](https://github.com/NuGet/NuGet.Client/pull/6611) remove un-used solutionService instances + * [6643](https://github.com/NuGet/NuGet.Client/pull/6643) remove MsBuildUtility.GetMsBuildPathInPathVar + * [6632](https://github.com/NuGet/NuGet.Client/pull/6632) remove PackageSpecFactory.GetTargetFrameworkStrings + * [6573](https://github.com/NuGet/NuGet.Client/pull/6573) avoid some allocation in ProjectFactory.ProcessDependencies + * [6588](https://github.com/NuGet/NuGet.Client/pull/6588) remove dictionary lookups from GetPreviewResultsAsync + * [6597](https://github.com/NuGet/NuGet.Client/pull/6597) fix nullability in PackageModelCreationTestHelper + * [6612](https://github.com/NuGet/NuGet.Client/pull/6612) remove un-used list instances in NuGetPackageManager + * [6591](https://github.com/NuGet/NuGet.Client/pull/6591) enable nullable in PackageSourceValidatorTests + * [6603](https://github.com/NuGet/NuGet.Client/pull/6603) fix nullability in IVsProjectBuildProperties + * [6636](https://github.com/NuGet/NuGet.Client/pull/6636) remove _project* fields from PackageReferenceProject + * [6630](https://github.com/NuGet/NuGet.Client/pull/6630) remove un-used identity instance in LocalV3FindPackageByIdResource + * [6618](https://github.com/NuGet/NuGet.Client/pull/6618) remove LoggerAdapter instance in NuGetPackageManager + * [6621](https://github.com/NuGet/NuGet.Client/pull/6621) remove un-used projectsByUniqueName in SolutionUpToDateChecker + * [6624](https://github.com/NuGet/NuGet.Client/pull/6624) remove un-used variables in PackageBuilder + * [6633](https://github.com/NuGet/NuGet.Client/pull/6633) remove JsonPackageSpecReader DelimitedStringSeparators and VersionSeparators + * [6642](https://github.com/NuGet/NuGet.Client/pull/6642) use cast instead of as and null check in CommandLineParser.AssignValue + * [6615](https://github.com/NuGet/NuGet.Client/pull/6615) remove redundant list in GetPluginAsync + * [6627](https://github.com/NuGet/NuGet.Client/pull/6627) remove un-used GetDirectoryName in MisplacedAssemblyOutsideLibRule + * [6578](https://github.com/NuGet/NuGet.Client/pull/6578) remove redundant dictionary lookup in PrunePackageTree.PruneDowngrades + * [6576](https://github.com/NuGet/NuGet.Client/pull/6576) remove redundant dictionary lookup in RecommenderPackageFeed +* [baronfel](https://github.com/NuGet/NuGet.Client/pull/6554) + * [6554](https://github.com/NuGet/NuGet.Client/pull/6554) Fix NuGet->SDK Codeflow + * [6514](https://github.com/NuGet/NuGet.Client/pull/6514) Pin and stabilize the `NuGetToolVersion` property in the generated NuGet props files during restore. +* [omajid](https://github.com/NuGet/NuGet.Client/pull/6500) + * [6500](https://github.com/NuGet/NuGet.Client/pull/6500) Ensure stable order of entries in Content_Types.xml + * [6507](https://github.com/NuGet/NuGet.Client/pull/6507) Support building on Linux when full signing is not available +* [AlexDelepine](https://github.com/NuGet/NuGet.Client/pull/6793) + * [6793](https://github.com/NuGet/NuGet.Client/pull/6793) Update Ngen Priorities for VS +* [hickford](https://github.com/NuGet/NuGet.Client/pull/6475) + * [6475](https://github.com/NuGet/NuGet.Client/pull/6475) Populate audit sources consistently +* [nohwnd](https://github.com/NuGet/NuGet.Client/pull/6735) + * [6735](https://github.com/NuGet/NuGet.Client/pull/6735) Disable loading profile in utility powershell.exe calls +* [mmitche](https://github.com/NuGet/NuGet.Client/pull/6539) + * [6539](https://github.com/NuGet/NuGet.Client/pull/6539) Move NuGet to xliff-tasks +* [dkurepa](https://github.com/NuGet/NuGet.Client/pull/6644) + * [6644](https://github.com/NuGet/NuGet.Client/pull/6644) Add Version.Details.props +* [bdukes](https://github.com/NuGet/NuGet.Client/pull/6530) + * [6530](https://github.com/NuGet/NuGet.Client/pull/6530) Fix `nuget.exe` restore finding MSBuild from SSMS instead of Visual Studio +* [ToddGrun](https://github.com/NuGet/NuGet.Client/pull/6519) + * [6519](https://github.com/NuGet/NuGet.Client/pull/6519) Make LockFileLibrary immutable for performance and sanity reasons + \ No newline at end of file

    6PyaWz89AqA%B$5#I!&>!x- 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 diff --git a/docs/guides/media/CrossPlatform-NewProject19-Part2.png b/docs/guides/media/CrossPlatform-NewProject19-Part2.png deleted file mode 100644 index 373e8ff4df25cbc3d82843873eb452ec295f33fd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 201183 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≫8LwSTC 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

    
    ---
     docs/reference/errors-and-warnings/NU5123.md | 2 +-
     1 file changed, 1 insertion(+), 1 deletion(-)
    
    diff --git a/docs/reference/errors-and-warnings/NU5123.md b/docs/reference/errors-and-warnings/NU5123.md
    index 12e75c5fd..a8080e4bb 100644
    --- a/docs/reference/errors-and-warnings/NU5123.md
    +++ b/docs/reference/errors-and-warnings/NU5123.md
    @@ -11,7 +11,7 @@ f1_keywords:
     ---
     
     # NuGet Warning NU5123
    -
    The file 'content//readme.txt' path, name, or both are too long. Your package might not work without long file path support. Please shorten the file path or file name.
    +
    The file 'content/<LongPath>/readme.txt' path, name, or both are too long. Your package might not work without long file path support. Please shorten the file path or file name.
    ### Issue From d99d96f95d95be3ea7069942303de33de9d94ab8 Mon Sep 17 00:00:00 2001 From: rpanday Date: Mon, 26 Apr 2021 22:51:58 +0530 Subject: [PATCH 402/988] Update NU1105.md Added sample code to restore projects in solution using dotnet CLI --- docs/reference/errors-and-warnings/NU1105.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docs/reference/errors-and-warnings/NU1105.md b/docs/reference/errors-and-warnings/NU1105.md index f6c4f9f93..67db4d0df 100644 --- a/docs/reference/errors-and-warnings/NU1105.md +++ b/docs/reference/errors-and-warnings/NU1105.md @@ -31,4 +31,9 @@ In Visual Studio the error could mean that targets are not import similar to the The error could also mean that the project is unloaded. * If you are using Visual Studio 2019 or later, NuGet has the ability to re-use artifacts from the previous restore for unloaded projects. In order for this scenario to work, you need to ensure that all projects currently in the solution have been restored from the command line prior to loading them in Visual Studio. +To restore projects in solution using [.NET Core CLI](https://docs.microsoft.com/nuget/consume-packages/install-use-packages-dotnet-cli) use: +```dotnetcli +dotnet restore MySolution.sln +``` + * Alternatively, reload the project. From edbd5dc0979f9e6acf9bd5974c9b75dfc2e0087a Mon Sep 17 00:00:00 2001 From: atikmapari <31974726+atikmapari@users.noreply.github.com> Date: Mon, 26 Apr 2021 23:00:23 +0530 Subject: [PATCH 403/988] Warning issues fixed --- docs/nuget-org/nuget-org-faq.yml | 147 +++++++++++++++---------------- 1 file changed, 71 insertions(+), 76 deletions(-) diff --git a/docs/nuget-org/nuget-org-faq.yml b/docs/nuget-org/nuget-org-faq.yml index 123bb6d73..462436f50 100644 --- a/docs/nuget-org/nuget-org-faq.yml +++ b/docs/nuget-org/nuget-org-faq.yml @@ -11,52 +11,48 @@ title: NuGet.org frequently-asked questions summary: | sections: - - name: Ignored + - name: License terms questions: - - question: | - License terms + - question: What are the default license terms if a package doesn't provide specific license information? answer: | - ### What are the default license terms if a package doesn't provide specific license information? - Each package is governed by the terms that are included with the package. You should review the applicable terms before accessing, downloading, or acquiring any packages. On NuGet.org, use the **License Info** link on the package page. If a package does not specify the licensing terms, contact the package owner directly using the **Contact owners** link on the NuGet.org package page. Microsoft does not license any intellectual property to you from third party package providers and is not responsible for information provided by third parties. - - question: | - Managing packages on NuGet.org + - name: Managing packages on NuGet.org + questions: + - question: Can I edit package metadata after it's been uploaded? answer: | - ### Can I edit package metadata after it's been uploaded? - NuGet recommends all packages to be signed. A design principle of package signing is that signed package content must be immutable, which includes the nuspec. Editing the package metadata results in changes to the nuspec, invalidating existing signatures. We recommend modifying existing workflows to not require editing the package metadata after the package has been created. Note that dependencies listed for your package are generated automatically from the package itself and cannot be edited. In addition, uploading packages to [int.nugettest.org](https://int.nugettest.org) is a great way to test and validate your package without making a package available in the public gallery. API Endpoint: https://apiint.nugettest.org/v3/index.json - ### Can I delete a package published to NuGet.org? - + - question: Can I delete a package published to NuGet.org? + answer: | In general, we do not support deleting a package published to NuGet.org. Read more about our [policy on deleting packages](policies/deleting-packages.md). - ### Is it possible to reserve names for packages that will be published in future? - + - question: Is it possible to reserve names for packages that will be published in future? + answer: | Yes. You can reserve IDs for packages on [NuGet.org](https://www.nuget.org/) by requesting a package ID prefix for your account. In order to request a package ID prefix, follow the instructions in the [documentation](id-prefix-reservation.md). - ### How do I claim ownership for packages ? - + - question: How do I claim ownership for packages ? + answer: | See [Managing package owners on NuGet.org](../nuget-org/publish-a-package.md#managing-package-owners-on-nugetorg). - ### How do I deal with a package owner who is violating my software license? - + - question: How do I deal with a package owner who is violating my software license? + answer: | We encourage the NuGet community to work together to resolve any disputes that may arise between package owners and the owners of other software. We have crafted a [dispute resolution process](policies/dispute-resolution.md) to follow before asking NuGet.org administrators to intercede. - ### Is it recommended to upload my test packages to NuGet.org? - + - question: Is it recommended to upload my test packages to NuGet.org? + answer: | For test purposes, you can use [int.nugettest.org](https://int.nugettest.org), or alternative public NuGet servers like [myget.org](https://myget.org) or [Azure DevOps](https://blogs.msdn.microsoft.com/visualstudioalm/2015/08/27/announcing-package-management-support-for-vsotfs/). Note that packages uploaded to int.nugettest.org may not be preserved. - ### What is the maximum size of packages I can upload to NuGet.org? - + - question: What is the maximum size of packages I can upload to NuGet.org? + answer: | NuGet.org allows packages up to 250MB, but we recommend keeping packages under 1MB if possible and using dependencies to link packages together. As a rule of thumb, packages contain only one assembly to avoid collisions. NuGet uses HTTP to download packages, so larger packages have a higher likelihood of failed installs than smaller ones. @@ -65,11 +61,10 @@ sections: Dependencies are mostly static and never change. When fixing a bug in code, the dependencies may not need to be updated. If you bundle dependencies, you end up reshipping larger packages every time. By splitting NuGet packages into related dependencies, upgrades are much more fine-grained for consumers of your package. - - question: | - NuGet.org not accessible + - name: NuGet.org not accessible + questions: + - question: Why can't I download packages from or upload packages to NuGet.org? answer: | - ### Why can't I download packages from or upload packages to NuGet.org? - First, make sure you're using the latest versions of NuGet. If that version continues to fail, [contact support](https://www.nuget.org/policies/Contact) and provide additional connection troubleshooting information including: - The version of NuGet you're using @@ -105,10 +100,10 @@ sections: If that fails, try the [tips mentioned in this StackOverflow post](https://stackoverflow.com/questions/21049908/using-fiddler-to-sniff-visual-studio-2013-requests-proxy-firewall). - - question: | - NuGet.org account management + - name: NuGet.org account management + questions: + - question: How to recover NuGet.org password login? answer: | - ### How to recover NuGet.org password login? Please note that the [NuGet.org Password login has been discontinued](https://blog.nuget.org/20180515/NuGet.org-will-only-support-MSA-AAD-starting-June.html) and the only way to log in to NuGet.org is with a personal Microsoft account (MSA) or Azure Active Directory (AAD) account. However, in case you are unable to access your associated MSA/AAD accounts you might need to use password login for recovering your NuGet.org account. In this situation follow the steps below. - **Requirement:** You will need to have access to the email that is associated with the account for which you need to recover the password. - Go to the [Forgot password page](https://www.nuget.org/account/ForgotPassword) @@ -118,81 +113,81 @@ sections: - Once done, you can now login with username/password on NuGet. - To login with username/password, use the **Sign in using Nuget.org account** link on the [NuGet.org login page](https://www.nuget.org/users/account/LogOn). - ### Which Microsoft account is linked to my NuGet.org account? - + - question: Which Microsoft account is linked to my NuGet.org account? + answer: | If you have forgotten which Microsoft account is associated with your NuGet.org account, please follow the steps below to get assistance. 1. Go to [NuGet.org login page](https://www.nuget.org/users/account/LogOn) and click on **Need assistance signing in?** link. 1. This will show you the pop-up dialog box for assistance. Follow the steps in this dialog box to understand the associated Microsoft account(s) for your NuGet.org account. - ### How to change the Microsoft account I use for NuGet.org login? - + - question: How to change the Microsoft account I use for NuGet.org login? + answer: | If you wish to change the Microsoft account for NuGet.org user, follow the steps below. Lets say your Microsoft account with email `account1@outlook.com` is associated with your NuGet.org account with username `MyNuGetAccount`. You wish to change the login to another Microsoft account with email `account2@outlook.com` 1. Please sign in using **currently associated Microsoft account** i.e. `account1@outlook.com` on the [login page](https://www.nuget.org/users/account/LogOn) after clicking **Sign in with Microsoft**. 1. Once logged in, go to your [account settings](https://www.nuget.org/account) page. 1. Expand the section for **Login Account**. Click on the **Change Account** button. 1. You will now be redirected to the microsoft login page. Please sign in with the account that you wish to change the association to i.e. `account2@outlook.com`. **Note**: you might need to click on **Sign out and sign in with different account** during the sign in flow to be able to login with a different Microsoft account. - 1. If you see an error like below, see [Microsoft account is linked with another NuGet.org account](#microsoft-account-is-linked-with-another-nuget-org-account-) for more details. + 1. If you see an error like below, see [Microsoft account is linked with another NuGet.org account](#microsoft-account-is-linked-with-another-nugetorg-account) for more details. >_Failed to update the Microsoft account with 'account2 '. This could happen if it is already linked to another NuGet account. Contact support for more information._ 1. Once you have successfully signed in with your second account, you will be redirected back to your NuGet.org account settings page and you should now see the new Microsoft account associated as the login account. Going forward you should use this account when signing into NuGet.org. - ### Microsoft account is linked with another NuGet.org account. - + - question: Microsoft account is linked with another NuGet.org account. + answer: | If you tried changing your Microsoft login and saw the error below: > _Failed to update the Microsoft account with 'account2 '. This could happen if it is already linked to another NuGet account. Contact support for more information._ Lets say you were trying to change Microsoft account login from `account1@outlook.com` for NuGet.org user with username `MyNuGetAccount1` to another Microsoft account with email `account2@outlook.com`. And you see the error above. - ### What does the error above mean? + **What does the error above mean? It means that there is another NuGet.org account which is associated with the Microsoft account that you are trying to change it to i.e. in above example the Microsoft account with email `` is associated with another NuGet.org account with, say, username `MyNuGetAccount2`. You cannot change the associated login with a Microsoft account that is linked to a different NuGet.org account. - ### I forgot I had another NuGet.org account, how do I find out which NuGet.org account it is? - + - question: I forgot I had another NuGet.org account, how do I find out which NuGet.org account it is? + answer: | Login with the second Microsoft account on the [login page](https://www.nuget.org/users/account/LogOn?returnUrl=%2F# "login page"). This will log you into the NuGet.org account that is currently associated with the second Microsoft account. You can then view the uploaded packages and perform account management on this account. - ### I do not care about this second NuGet.org account, I want to change my login for first NuGet.org account with the second Microsoft account. What do I do? - + - question: I do not care about this second NuGet.org account, I want to change my login for first NuGet.org account with the second Microsoft account. What do I do? + answer: | If you wish to not care about the second NuGet.org account and still want to re-use the associated Microsoft account with email `account2@outlook.com`. You can release the association between the Microsoft account and NuGet.org account by deleting the NuGet.org account. - 1. Follow the steps to [delete user](#how-to-delete-my-nuget-org-account-) for the second NuGet.org account `MyNuGetAccount2`. - 1. Once this account is deleted, you can retry the steps to [change Microsoft account login](#how-to-change-the-microsoft-account-i-use-for-nuget-org-login). - - ### Wait, I care about this second account too. I do not want to lose this account but change my associated account logins for first account. + 1. Follow the steps to [delete user](#how-to-delete-my-nugetorg-account) for the second NuGet.org account `MyNuGetAccount2`. + 1. Once this account is deleted, you can retry the steps to [change Microsoft account login](#how-to-change-the-microsoft-account-i-use-for-nugetorg-login). + - question: Wait, I care about this second account too. I do not want to lose this account but change my associated account logins for first account. + answer: | You will need to create/use a third Microsoft account, say, with email `account3@outlook.com`. 1. First you should login with your second Microsoft account, `account2@outlook.com` on NuGet.org. Follow the steps above to change associated logins and associate the third Microsoft account with this NuGet.org account. 1. Once done, your second Microsoft account with email `account2@outlook.com` is free to be associated to your first NuGet.org account, `MyNuGetAccount1`. Follow the same steps above to change microsoft logins to the second Microsoft account. - ### Signing in with Microsoft account shows me my email is linked to another Microsoft account - + - question: Signing in with Microsoft account shows me my email is linked to another Microsoft account + answer: | If you tried to sign in with your Microsoft account, say, with email `account1@outlook.com` and you see an error like below: > _The account with email 'account1@outlook.com' is linked with another microsoft account._ > > _If you would like to update the linked Microsoft account you can do so from the account settings page._ - ### What does the error above mean? - + - question: What does the error above mean? + answer: | When an account is created on NuGet.org, there is a communication email address associated with that account. This is usually same as the email address that is used for associated Microsoft account. However, you could choose to specify a different email address for communication. So, technically, you could have a different Microsoft account, say with `account2@outlook.com` that is linked to NuGet.org account with communication email address as `account1@outlook.com`. So the error above means that there already exists NuGet.org account with communication email address `account1@outlook.com` but is associated with another Microsoft account with email **that is not** `account1@outlook.com`. - ### How do I find which Microsoft account is linked to this NuGet.org account? - - You should use the [sign in assistance](#which-microsoft-account-is-linked-to-my-nuget-org-account) flow to figure out which Microsoft account is linked to the NuGet.org account with the email address `account1@outlook.com`. - - ### I want to override that account with my Microsoft account + - question: How do I find which Microsoft account is linked to this NuGet.org account? + answer: | + You should use the [sign in assistance](#which-microsoft-account-is-linked-to-my-nugetorg-account) flow to figure out which Microsoft account is linked to the NuGet.org account with the email address `account1@outlook.com`. - Follow the steps in [Unable to use microsoft login, how do I recover my NuGet.org account](#unable-to-use-microsoft-login--how-do-i-recover-my-nuget-org-account-) section to associate your Microsoft account with the existing NuGet.org account. + - question: I want to override that account with my Microsoft account + answer: | + Follow the steps in [Unable to use microsoft login, how do I recover my NuGet.org account](#unable-to-use-microsoft-login-how-do-i-recover-my-nugetorg-account) section to associate your Microsoft account with the existing NuGet.org account. - ### Unable to use microsoft login, how do I recover my NuGet.org account? - - If you tried using the [sign in assistance](#which-microsoft-account-is-linked-to-my-nuget-org-account) and you do not have access to the Microsoft account that is associated with your NuGet.org account, please follow the steps below to link a new Microsoft account to your NuGet.org account. + - question: Unable to use microsoft login, how do I recover my NuGet.org account? + answer: | + If you tried using the [sign in assistance](#which-microsoft-account-is-linked-to-my-nugetorg-account) and you do not have access to the Microsoft account that is associated with your NuGet.org account, please follow the steps below to link a new Microsoft account to your NuGet.org account. 1. **Requirement**: You will need access to a Microsoft account which is not associated with any existing NuGet.org accounts. If you do not have one, you can [create](https://signup.live.com) one. - 2. If you've forgotten your username and password for your NuGet.org account, follow the [steps to recover your password login](#how-to-recover-nuget-org-password-login). + 2. If you've forgotten your username and password for your NuGet.org account, follow the [steps to recover your password login](#how-to-recover-nugetorg-password-login). 3. [Login to NuGet.org](https://www.nuget.org/users/account/LogOnNuGetAccount) using the username/password login. 4. Once logged in, you will see the popup dialog show up like below. This is the password discontinuation dialog box. 5. **NOTE**: Please ignore the instruction to login with the specified Microsoft account. You can now link your NuGet.org account to any other Microsoft login. @@ -201,13 +196,13 @@ sections: ![Link MSA Dialog](media/link-msa-dialog.png) - ### How to transform my NuGet.org account to an organization? - + - question: How to transform my NuGet.org account to an organization? + answer: | If you want to transform your account to an organization, and this account is already associated with a Microsoft account login, please follow the steps given in the documentation for [organizations on nuget org](organizations-on-nuget-org.md). If, however, your NuGet.org account is not associated/linked with a Microsoft account, you can follow the steps below to transform this account to an organization. 1. **Requirement**: You need to have an individual account first created on NuGet.org to be used as an admin on the org account. If you do not have one, please [create a new NuGet.org account](individual-accounts.md) - 2. Follow the [steps to recover your password login](#how-to-recover-nuget-org-password-login) for your NuGet.org account if you do not have password login for it, if you do, skip this step. + 2. Follow the [steps to recover your password login](#how-to-recover-nugetorg-password-login) for your NuGet.org account if you do not have password login for it, if you do, skip this step. 3. [Login to NuGet.org](https://www.nuget.org/users/account/LogOnNuGetAccount) using the username/password login. 4. Once logged in, you will see the popup dialog show up like below. This is the password discontinuation dialog box. > [!Important] @@ -219,41 +214,41 @@ sections: ![Link MSA Dialog](media/link-msa-dialog.png) - ### NuGet.org login issues for AAD accounts with unmanaged tenant? - + - question: NuGet.org login issues for AAD accounts with unmanaged tenant? + answer: | If you see an error like below during your login flow with your email account domain(@yourdomain.com), see the steps below to recover your NuGet.org account. ![Error during login for AAD accounts](media/unmanaged-aad-tenant.png) - ### What is this unmanaged state thing during login? And why is this happening now? - + - question: What is this unmanaged state thing during login? And why is this happening now? + answer: | Your account seems to be previously registered as a personal Microsoft account and it worked fine, however, now it seems like your account has been registered as an "Unmanaged" tenant in the Azure Active Directory (the identity service which we use to authenticate Microsoft accounts). This could have happened if you or someone from your organization(with @yourdomain.com email address) registered with one of the AAD integrated services or did a [self-service signup for Azure Active Directory](/azure/active-directory/users-groups-roles/directory-self-service-signup), which creates such an "Unmanaged" tenant for the used Microsoft account domain(@yourdomain.com in your case). - ### What can I do to recover my account? - + - question: What can I do to recover my account? + answer: | At this moment there is not a way for us (NuGet.org) to authenticate accounts with such "Unmanaged" tenant accounts in Azure Active directory. We are looking in to a better way to authenticate such accounts. If you want to login to NuGet.org with your Microsoft account(@yourdomain.com), you(or an administrator at your company) will need to claim the ownership of the AAD by doing a DNS validation to authenticate users with email address "@yourdomain.com". Please follow the steps for [domains admin takeover](/azure/active-directory/users-groups-roles/domains-admin-takeover) documented by the Azure Active directory. Once this is done, your normal login should start working. - ### I don’t want to do all that, what is the other way to recover my account? - - You can [create](https://www.microsoft.com/account) a new Microsoft account (with an email **not** associated with @yourdomain.com). Follow steps given in [recover your NuGet.org account](#unable-to-use-microsoft-login--how-do-i-recover-my-nuget-org-account-) section. + - question: I don’t want to do all that, what is the other way to recover my account? + answer: | + You can [create](https://www.microsoft.com/account) a new Microsoft account (with an email **not** associated with @yourdomain.com). Follow steps given in [recover your NuGet.org account](#unable-to-use-microsoft-login-how-do-i-recover-my-nugetorg-account) section. - ### How do I change my NuGet.org account username? - + - question: How do I change my NuGet.org account username? + answer: | You cannot. As a matter of policy we do not allow the change of usernames. Also, doing so is a breaking change for users that may have defined [package trust policies based on the package owner](../consume-packages/installing-signed-packages.md#trust-package-owners). The only way to change your username is to create a new account with the desired username. We recommend you delete your existing account before you create a new one, otherwise you will not be able to reuse your registered Microsoft account. > [!Important] > Deleting the user will still **reserve** the `username`. You will not be able to reuse the same username again and **this includes the change of casings**. As an example if you created a user with username `mycoolname` and you want to change this to `MyCoolName`(casing changes), it will not be possible after deleting the user. - Follow the steps given in [delete your NuGet.org account](#how-to-delete-my-nuget-org-account-) section and to [register a new account](individual-accounts.md) with correct username. + Follow the steps given in [delete your NuGet.org account](#how-to-delete-my-nugetorg-account) section and to [register a new account](individual-accounts.md) with correct username. - ### How to delete my NuGet.org account? - + - question: How to delete my NuGet.org account? + answer: | To delete your account, please note that we recommend that you transfer the ownership of any packages where you are the sole owner. You can read more about [managing package owners](../nuget-org/publish-a-package.md#managing-package-owners-on-nugetorg) on how to do it. This will also help us expedite your request. - If you are looking to transform your account to an organization, follow the steps given in [transform my NuGet.org account to an organization](#how-to-transform-my-nuget-org-account-to-an-organization-). + If you are looking to transform your account to an organization, follow the steps given in [transform my NuGet.org account to an organization](#how-to-transform-my-nugetorg-account-to-an-organization). > [!Important] > Deleting the user will result in following: From 4f341e3e7d974b860687f947befc1e1064842a24 Mon Sep 17 00:00:00 2001 From: atikmapari <31974726+atikmapari@users.noreply.github.com> Date: Mon, 26 Apr 2021 23:13:33 +0530 Subject: [PATCH 404/988] Warning issues fixed --- docs/nuget-org/nuget-org-faq.yml | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/docs/nuget-org/nuget-org-faq.yml b/docs/nuget-org/nuget-org-faq.yml index 462436f50..90575fe8c 100644 --- a/docs/nuget-org/nuget-org-faq.yml +++ b/docs/nuget-org/nuget-org-faq.yml @@ -126,7 +126,7 @@ sections: 1. Once logged in, go to your [account settings](https://www.nuget.org/account) page. 1. Expand the section for **Login Account**. Click on the **Change Account** button. 1. You will now be redirected to the microsoft login page. Please sign in with the account that you wish to change the association to i.e. `account2@outlook.com`. **Note**: you might need to click on **Sign out and sign in with different account** during the sign in flow to be able to login with a different Microsoft account. - 1. If you see an error like below, see [Microsoft account is linked with another NuGet.org account](#microsoft-account-is-linked-with-another-nugetorg-account) for more details. + 1. If you see an error like below, see [Microsoft account is linked with another NuGet.org account](#microsoft-account-is-linked-with-another-nuget-org-account) for more details. >_Failed to update the Microsoft account with 'account2 '. This could happen if it is already linked to another NuGet account. Contact support for more information._ 1. Once you have successfully signed in with your second account, you will be redirected back to your NuGet.org account settings page and you should now see the new Microsoft account associated as the login account. Going forward you should use this account when signing into NuGet.org. @@ -153,8 +153,8 @@ sections: If you wish to not care about the second NuGet.org account and still want to re-use the associated Microsoft account with email `account2@outlook.com`. You can release the association between the Microsoft account and NuGet.org account by deleting the NuGet.org account. - 1. Follow the steps to [delete user](#how-to-delete-my-nugetorg-account) for the second NuGet.org account `MyNuGetAccount2`. - 1. Once this account is deleted, you can retry the steps to [change Microsoft account login](#how-to-change-the-microsoft-account-i-use-for-nugetorg-login). + 1. Follow the steps to [delete user](#how-to-delete-my-nuget-org-account) for the second NuGet.org account `MyNuGetAccount2`. + 1. Once this account is deleted, you can retry the steps to [change Microsoft account login](#how-to-change-the-microsoft-account-i-use-for-nuget-org-login). - question: Wait, I care about this second account too. I do not want to lose this account but change my associated account logins for first account. answer: | @@ -177,17 +177,17 @@ sections: - question: How do I find which Microsoft account is linked to this NuGet.org account? answer: | - You should use the [sign in assistance](#which-microsoft-account-is-linked-to-my-nugetorg-account) flow to figure out which Microsoft account is linked to the NuGet.org account with the email address `account1@outlook.com`. + You should use the [sign in assistance](#which-microsoft-account-is-linked-to-my-nuget-org-account) flow to figure out which Microsoft account is linked to the NuGet.org account with the email address `account1@outlook.com`. - question: I want to override that account with my Microsoft account answer: | - Follow the steps in [Unable to use microsoft login, how do I recover my NuGet.org account](#unable-to-use-microsoft-login-how-do-i-recover-my-nugetorg-account) section to associate your Microsoft account with the existing NuGet.org account. + Follow the steps in [Unable to use microsoft login, how do I recover my NuGet.org account](#unable-to-use-microsoft-login--how-do-i-recover-my-nuget-org-account) section to associate your Microsoft account with the existing NuGet.org account. - question: Unable to use microsoft login, how do I recover my NuGet.org account? answer: | - If you tried using the [sign in assistance](#which-microsoft-account-is-linked-to-my-nugetorg-account) and you do not have access to the Microsoft account that is associated with your NuGet.org account, please follow the steps below to link a new Microsoft account to your NuGet.org account. + If you tried using the [sign in assistance](#which-microsoft-account-is-linked-to-my-nuget-org-account) and you do not have access to the Microsoft account that is associated with your NuGet.org account, please follow the steps below to link a new Microsoft account to your NuGet.org account. 1. **Requirement**: You will need access to a Microsoft account which is not associated with any existing NuGet.org accounts. If you do not have one, you can [create](https://signup.live.com) one. - 2. If you've forgotten your username and password for your NuGet.org account, follow the [steps to recover your password login](#how-to-recover-nugetorg-password-login). + 2. If you've forgotten your username and password for your NuGet.org account, follow the [steps to recover your password login](#how-to-recover-nuget-org-password-login). 3. [Login to NuGet.org](https://www.nuget.org/users/account/LogOnNuGetAccount) using the username/password login. 4. Once logged in, you will see the popup dialog show up like below. This is the password discontinuation dialog box. 5. **NOTE**: Please ignore the instruction to login with the specified Microsoft account. You can now link your NuGet.org account to any other Microsoft login. @@ -202,7 +202,7 @@ sections: If, however, your NuGet.org account is not associated/linked with a Microsoft account, you can follow the steps below to transform this account to an organization. 1. **Requirement**: You need to have an individual account first created on NuGet.org to be used as an admin on the org account. If you do not have one, please [create a new NuGet.org account](individual-accounts.md) - 2. Follow the [steps to recover your password login](#how-to-recover-nugetorg-password-login) for your NuGet.org account if you do not have password login for it, if you do, skip this step. + 2. Follow the [steps to recover your password login](#how-to-recover-nuget-org-password-login) for your NuGet.org account if you do not have password login for it, if you do, skip this step. 3. [Login to NuGet.org](https://www.nuget.org/users/account/LogOnNuGetAccount) using the username/password login. 4. Once logged in, you will see the popup dialog show up like below. This is the password discontinuation dialog box. > [!Important] @@ -234,7 +234,7 @@ sections: - question: I don’t want to do all that, what is the other way to recover my account? answer: | - You can [create](https://www.microsoft.com/account) a new Microsoft account (with an email **not** associated with @yourdomain.com). Follow steps given in [recover your NuGet.org account](#unable-to-use-microsoft-login-how-do-i-recover-my-nugetorg-account) section. + You can [create](https://www.microsoft.com/account) a new Microsoft account (with an email **not** associated with @yourdomain.com). Follow steps given in [recover your NuGet.org account](#unable-to-use-microsoft-login--how-do-i-recover-my-nuget-org-account) section. - question: How do I change my NuGet.org account username? answer: | @@ -242,13 +242,13 @@ sections: > [!Important] > Deleting the user will still **reserve** the `username`. You will not be able to reuse the same username again and **this includes the change of casings**. As an example if you created a user with username `mycoolname` and you want to change this to `MyCoolName`(casing changes), it will not be possible after deleting the user. - Follow the steps given in [delete your NuGet.org account](#how-to-delete-my-nugetorg-account) section and to [register a new account](individual-accounts.md) with correct username. + Follow the steps given in [delete your NuGet.org account](#how-to-delete-my-nuget-org-account) section and to [register a new account](individual-accounts.md) with correct username. - question: How to delete my NuGet.org account? answer: | To delete your account, please note that we recommend that you transfer the ownership of any packages where you are the sole owner. You can read more about [managing package owners](../nuget-org/publish-a-package.md#managing-package-owners-on-nugetorg) on how to do it. This will also help us expedite your request. - If you are looking to transform your account to an organization, follow the steps given in [transform my NuGet.org account to an organization](#how-to-transform-my-nugetorg-account-to-an-organization). + If you are looking to transform your account to an organization, follow the steps given in [transform my NuGet.org account to an organization](#how-to-transform-my-nuget-org-account-to-an-organization). > [!Important] > Deleting the user will result in following: From 804c09b8927153f60b68ac06d7ff3e03192e2b2e Mon Sep 17 00:00:00 2001 From: atikmapari <31974726+atikmapari@users.noreply.github.com> Date: Mon, 26 Apr 2021 23:28:43 +0530 Subject: [PATCH 405/988] Warning issues fixed --- docs/nuget-org/individual-accounts.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/nuget-org/individual-accounts.md b/docs/nuget-org/individual-accounts.md index 71dda88f0..c4c097e4b 100644 --- a/docs/nuget-org/individual-accounts.md +++ b/docs/nuget-org/individual-accounts.md @@ -70,4 +70,4 @@ Two-factor authentication, or 2FA, is an extra layer of security used when loggi ## Delete a NuGet.org account -For help with additional account-related tasks, such as deleting a NuGet.org account, see [NuGet.org account management](nuget-org-faq.yml#nuget-org-account-management). +For help with additional account-related tasks, such as deleting a NuGet.org account, see [NuGet.org account management](/nuget/nuget-org/nuget-org-faq#nugetorg-account-management). From 03b66a0c3efe66f1e05eb1edff59c05037d84aac Mon Sep 17 00:00:00 2001 From: atikmapari <31974726+atikmapari@users.noreply.github.com> Date: Mon, 26 Apr 2021 23:52:44 +0530 Subject: [PATCH 406/988] changes fixed --- docs/nuget-org/individual-accounts.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/nuget-org/individual-accounts.md b/docs/nuget-org/individual-accounts.md index c4c097e4b..736513a81 100644 --- a/docs/nuget-org/individual-accounts.md +++ b/docs/nuget-org/individual-accounts.md @@ -70,4 +70,4 @@ Two-factor authentication, or 2FA, is an extra layer of security used when loggi ## Delete a NuGet.org account -For help with additional account-related tasks, such as deleting a NuGet.org account, see [NuGet.org account management](/nuget/nuget-org/nuget-org-faq#nugetorg-account-management). +For help with additional account-related tasks, such as deleting a NuGet.org account, see [NuGet.org account management](/nuget/nuget-org/nuget-org-faq#nuget.org-account-management). From 5555bb89d0d22de2e5f26ae771f17ffb390b0ecb Mon Sep 17 00:00:00 2001 From: atikmapari <31974726+atikmapari@users.noreply.github.com> Date: Tue, 27 Apr 2021 00:58:10 +0530 Subject: [PATCH 407/988] changes fixed --- docs/resources/NuGet-FAQ.yml | 165 ++++++++++++++++++++--------------- 1 file changed, 93 insertions(+), 72 deletions(-) diff --git a/docs/resources/NuGet-FAQ.yml b/docs/resources/NuGet-FAQ.yml index f0781bd7e..612313e4a 100644 --- a/docs/resources/NuGet-FAQ.yml +++ b/docs/resources/NuGet-FAQ.yml @@ -9,90 +9,101 @@ metadata: title: NuGet frequently-asked questions summary: | - For frequently-asked questions pertaining to NuGet.org, such as NuGet.org account questions, see [NuGet.org frequently-asked questions](../nuget-org/nuget-org-faq.yml). - - ### What is required to run NuGet? - - All the information around both UI and command-line tools is available in the [Install guide](../install-nuget-client-tools.md). - - ### Does NuGet support Mono? - - The command-line tool, `nuget.exe`, builds and runs under Mono 3.2+ and can create packages in Mono. - - Although `nuget.exe` works fully on Windows, there are known issues on Linux and OS X. Refer to [Mono issues](https://github.com/NuGet/Home/issues?utf8=%E2%9C%93&q=is%3Aissue+is%3Aopen+mono) on GitHub. - - A [graphical client](https://github.com/mrward/monodevelop-nuget-addin) is available as an add-in for MonoDevelop. - - ### How can I determine what a package contains and whether it's stable and useful for my application? - - The primary source for learning about a package is its listing page on nuget.org (or another private feed). Each package page on nuget.org includes a description of the package, its version history, and usage statistics. The **Info** section on the package page also contains a link to the project's web site where you typically find many examples and other documentation to help you learn how the package is used. - - For more information, see [Finding and choosing packages](../consume-packages/finding-and-choosing-packages.md). + For frequently-asked questions pertaining to NuGet.org, such as NuGet.org account questions, see [NuGet.org frequently-asked questions](../nuget-org/nuget-org-faq.md). sections: - name: Ignored questions: - question: | - NuGet in Visual Studio + What is required to run NuGet? + answer: | + All the information around both UI and command-line tools is available in the [Install guide](../install-nuget-client-tools.md). + + - question: | + Does NuGet support Mono? answer: | - ### How is NuGet supported in different Visual Studio products? + The command-line tool, `nuget.exe`, builds and runs under Mono 3.2+ and can create packages in Mono. + Although `nuget.exe` works fully on Windows, there are known issues on Linux and OS X. Refer to [Mono issues](https://github.com/NuGet/Home/issues?utf8=%E2%9C%93&q=is%3Aissue+is%3Aopen+mono) on GitHub. + + A [graphical client](https://github.com/mrward/monodevelop-nuget-addin) is available as an add-in for MonoDevelop. + + - question: | + How can I determine what a package contains and whether it's stable and useful for my application? + answer: | + The primary source for learning about a package is its listing page on nuget.org (or another private feed). Each package page on nuget.org includes a description of the package, its version history, and usage statistics. The **Info** section on the package page also contains a link to the project's web site where you typically find many examples and other documentation to help you learn how the package is used. + + For more information, see [Finding and choosing packages](../consume-packages/finding-and-choosing-packages.md). + + - name: NuGet in Visual Studio + questions: + - question: | + How is NuGet supported in different Visual Studio products? + answer: | - Visual Studio on Windows supports the [Package Manager UI](../consume-packages/install-use-packages-visual-studio.md) and the [Package Manager Console](../consume-packages/install-use-packages-powershell.md). - Visual Studio for Mac has built-in NuGet capabilities as described on [Including a NuGet package in your project](/visualstudio/mac/nuget-walkthrough). - Visual Studio Code (all platforms) does not have any direct NuGet integration. Use the [NuGet CLI](../reference/nuget-exe-cli-reference.md) or the [dotnet CLI](../reference/dotnet-commands.md). - Azure DevOps provides [a build step to restore NuGet packages](/vsts/build-release/tasks/package/nuget). You can also [host private NuGet package feeds on Azure DevOps](/azure/devops/artifacts/nuget/publish). - ### How do I check the exact version of the NuGet tools that are installed? - + - question: | + How do I check the exact version of the NuGet tools that are installed? + answer: | In Visual Studio, use the **Help > About Microsoft Visual Studio** command and look at the version displayed next to **NuGet Package Manager**. Alternatively, launch the Package Manager Console (**Tools > NuGet Package Manager > Package Manager Console**) and enter `$host` to see information about NuGet including the version. - ### What programming languages are supported by NuGet? - + - question: | + What programming languages are supported by NuGet? + answer: | NuGet generally works for .NET languages and is designed to bring .NET libraries into a project. Because it also supports MSBuild and Visual Studio automation in some project types, it also supports other projects and languages to various degrees. The most recent version of NuGet supports C#, Visual Basic, F#, WiX, and C++. - ### What project templates are supported by NuGet? - + - question: | + What project templates are supported by NuGet? + answer: | NuGet has full support for a variety of project templates like Windows, Web, Cloud, SharePoint, Wix, and so on. - - ### How do I update packages that are part of Visual Studio templates? - + + - question: | + How do I update packages that are part of Visual Studio templates? + answer: | Go to the **Updates** tab in the Package Manager UI and select **Update All**, or use the [`Update-Package` command](../reference/ps-reference/ps-ref-update-package.md) from the Package Manager Console. To update the template itself, you need to manually update the template repository. See [Xavier Decoster's blog](http://www.xavierdecoster.com/update-project-template-to-latest-nuget-packages) on this subject. Note that this is done at your own risk, because manual updates might corrupt the template if the latest version of all dependencies are not compatible with each other. - ### Can I use NuGet outside of Visual Studio? - + - question: | + Can I use NuGet outside of Visual Studio? + answer: | Yes, NuGet works directly from the command line. See the [Install guide](../install-nuget-client-tools.md) and the [CLI reference](../reference/nuget-exe-cli-reference.md). + - name: NuGet command line + questions: - question: | - NuGet command line + How do I get the latest version of NuGet command line tool? answer: | - ### How do I get the latest version of NuGet command line tool? - See the [Install guide](../install-nuget-client-tools.md). To check the current installed version of the tool, use `nuget help`. - ### What is the license for nuget.exe? - + - question: | + What is the license for nuget.exe? + answer: | You are allowed to redistribute nuget.exe under the terms of the MIT license. You are responsible for updating and servicing any copies of nuget.exe that you choose to redistribute. - - ### Is it possible to extend the NuGet command line tool? - + + - question: | + Is it possible to extend the NuGet command line tool? + answer: | Yes, it's possible to add custom commands to `nuget.exe`, as described in [Rob Reynold's post](http://geekswithblogs.net/robz/archive/2011/07/15/extend-nuget-command-line.aspx). + - name: NuGet Package Manager Console (Visual Studio on Windows) + questions: - question: | - NuGet Package Manager Console (Visual Studio on Windows) + How do I get access to the DTE object in the Package Manager console? answer: | - ### How do I get access to the DTE object in the Package Manager console? - The top-level object in the Visual Studio automation object model is called the DTE (Development Tools Environment) object. The console provides this through a variable named `$DTE`. For more information, see [Automation Model Overview](/visualstudio/extensibility/internals/automation-model-overview) in the Visual Studio Extensibility documentation. - ### I try to cast the $DTE variable to the type DTE2, but I get an error: Cannot convert the "EnvDTE.DTEClass" value of type "EnvDTE.DTEClass" to type "EnvDTE80.DTE2". What's wrong? - + - question: | + I try to cast the $DTE variable to the type DTE2, but I get an error: Cannot convert the "EnvDTE.DTEClass" value of type "EnvDTE.DTEClass" to type "EnvDTE80.DTE2". What's wrong? + answer: | This is a known issue with how PowerShell interacts with a COM object. Try the following: ```ps @@ -101,61 +112,71 @@ sections: `Get-Interface` is a helper function added by the NuGet PowerShell host. + - name: Creating and publishing packages + questions: - question: | - Creating and publishing packages + How do I list my package in a feed? answer: | - ### How do I list my package in a feed? - See [Creating and publishing a package](../quickstart/create-and-publish-a-package-using-visual-studio.md). - ### I have multiple versions of my library that target different versions of the .NET Framework. How do I build a single package that supports this? - + - question: | + I have multiple versions of my library that target different versions of the .NET Framework. How do I build a single package that supports this? + answer: | See [Supporting Multiple .NET Framework Versions and Profiles](../create-packages/supporting-multiple-target-frameworks.md). - ### How do I set up my own repository or feed? - + - question: | + How do I set up my own repository or feed? + answer: | See the [Hosting packages overview](../hosting-packages/overview.md). - ### How can I upload packages to my NuGet feed in bulk? - + - question: | + How can I upload packages to my NuGet feed in bulk? + answer: | See [Bulk publishing NuGet packages](http://jeffhandley.com/archive/2012/12/13/Bulk-Publishing-NuGet-Packages.aspx) (jeffhandly.com). + - name: Working with packages + questions: - question: | - Working with packages + Is it possible to install NuGet packages without Internet connectivity? answer: | - ### Is it possible to install NuGet packages without Internet connectivity? - Yes, see Scott Hanselman's Blog post [How to access NuGet when nuget.org is down (or you're on a plane)](http://www.hanselman.com/blog/HowToAccessNuGetWhenNuGetorgIsDownOrYoureOnAPlane.aspx) (hanselman.com). - ### How do I install packages in a different location from the default packages folder? - + - question: | + How do I install packages in a different location from the default packages folder? + answer: | Set the [`repositoryPath`](../reference/nuget-config-file.md#config-section) setting in `Nuget.Config` using `nuget config -set repositoryPath=`. - ### How do I avoid adding the NuGet packages folder into to source control? - + - question: | + How do I avoid adding the NuGet packages folder into to source control? + answer: | Set the [`disableSourceControlIntegration`](../reference/nuget-config-file.md#solution-section) in `Nuget.Config` to `true`. This key works at the solution level and hence need to be added to the `$(Solutiondir)\.nuget\Nuget.Config` file. Enabling package restore from Visual Studio creates this file automatically. - ### How do I turn off package restore? - + - question: | + How do I turn off package restore? + answer: | See [Enabling and disabling package restore](../consume-packages/package-restore.md#enable-and-disable-package-restore-in-visual-studio). - ### Why do I get an "Unable to resolve dependency error" when installing a local package with remote dependencies? - + - question: | + Why do I get an "Unable to resolve dependency error" when installing a local package with remote dependencies? + answer: | You need to select the **All** source when installing a local package into the project. This aggregates all the feeds instead of using just one. The reason this error appears is that users of a local repository often want to avoid accidentally installing a remote package due to corporate polices. - - ### I have multiple projects in the same folder, how can I use separate packages.config files for each project? - + + - question: | + I have multiple projects in the same folder, how can I use separate packages.config files for each project? + answer: | In most projects where separate projects live in separate folders, this is not a problem as NuGet identifies the `packages.config` files in each project. With NuGet 3.3+ and multiple projects in the same folder, you can insert the name of the project into the `packages.config` filenames use the pattern `packages.{project-name}.config`, and NuGet uses that file. This is not an issue when using PackageReference, as each project file contains its own list of dependencies. - ### I don't see nuget.org in my list of repositories, how do I get it back? - + - question: | + I don't see nuget.org in my list of repositories, how do I get it back? + answer: | - Add `https://api.nuget.org/v3/index.json` to your list of sources, or - Delete `%appdata%\.nuget\NuGet.Config` (Windows) or `~/.nuget/NuGet/NuGet.Config` (Mac/Linux) and let NuGet re-create it. - ### I migrated to PackageReference, why is my build failing `This project references NuGet package(s) that are missing on this computer.`? - + - question: | + I migrated to PackageReference, why is my build failing `This project references NuGet package(s) that are missing on this computer.`? + answer: | In packages.config projects, when a package with `build` props or targets was installed, NuGet would add an `EnsureNuGetPackageBuildImports` target to verify that the packages msbuild content has been imported before building. If the `target` has been modified manually, NuGet might not be able to detect that it needs removed when migrating. From 4e6471453f90b17794730013ca470a535781d414 Mon Sep 17 00:00:00 2001 From: atikmapari <31974726+atikmapari@users.noreply.github.com> Date: Mon, 26 Apr 2021 12:44:25 -0700 Subject: [PATCH 408/988] Changes fixed --- docs/consume-packages/Package-restore-troubleshooting.md | 2 +- docs/resources/NuGet-FAQ.yml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/consume-packages/Package-restore-troubleshooting.md b/docs/consume-packages/Package-restore-troubleshooting.md index 1ba7f6d0c..bcfd92017 100644 --- a/docs/consume-packages/Package-restore-troubleshooting.md +++ b/docs/consume-packages/Package-restore-troubleshooting.md @@ -41,7 +41,7 @@ Use NuGet Package Restore to download them. The missing file is {name}. This error occurs when you attempt to build a project that contains references to one or more NuGet packages, but those packages are not presently installed on the computer or in the project. -- When using the [PackageReference](package-references-in-project-files.md) management format, this error might be a leftover from a packages.config to PackageReference migration and needs to be [manually removed](../resources/NuGet-FAQ.yml#working-with-packages) from the project file. +- When using the [PackageReference](package-references-in-project-files.md) management format, this error might be a leftover from a packages.config to PackageReference migration and needs to be [manually removed](/nuget/resources/nuget-faq#working-with-packages) from the project file. - When using [packages.config](../reference/packages-config.md), the error means that the package is not installed in the `packages` folder at the solution root. This situation commonly occurs when you obtain the project's source code from source control or another download. Packages are typically omitted from source control or downloads because they can be restored from package feeds like nuget.org (see [Packages and source control](Packages-and-Source-Control.md)). Including them would otherwise bloat the repository or create unnecessarily large .zip files. diff --git a/docs/resources/NuGet-FAQ.yml b/docs/resources/NuGet-FAQ.yml index 612313e4a..e693f4d18 100644 --- a/docs/resources/NuGet-FAQ.yml +++ b/docs/resources/NuGet-FAQ.yml @@ -9,11 +9,11 @@ metadata: title: NuGet frequently-asked questions summary: | - For frequently-asked questions pertaining to NuGet.org, such as NuGet.org account questions, see [NuGet.org frequently-asked questions](../nuget-org/nuget-org-faq.md). + For frequently-asked questions pertaining to NuGet.org, such as NuGet.org account questions, see [NuGet.org frequently-asked questions](../nuget-org/nuget-org-faq.yml). sections: - - name: Ignored + - name: General questions: - question: | What is required to run NuGet? From 29385f8cb97b6e5844027c6b340a820f905789a7 Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Tue, 27 Apr 2021 09:30:42 -0700 Subject: [PATCH 409/988] added known issue to 5.9 release notes (#2411) --- docs/release-notes/NuGet-5.9.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/docs/release-notes/NuGet-5.9.md b/docs/release-notes/NuGet-5.9.md index d723778d8..f3b3dfa36 100644 --- a/docs/release-notes/NuGet-5.9.md +++ b/docs/release-notes/NuGet-5.9.md @@ -216,6 +216,16 @@ Thank you to all the contributors who helped make this NuGet release awesome! **[List of commits in this release - 5.9.1](https://github.com/NuGet/NuGet.Client/compare/5.9.0.7134...5.9.1.8)** +## Known issues + +### nuget 5.9 pack raises `Null Reference` exception. - [#10685](https://github.com/NuGet/Home/issues/10685) + +#### Issue +When tring to `pack` using a `.nuspec` file, `NuGet 5.9` version raises a `null reference` exception if [explicit assembly references](../reference/nuspec.md#explicit-assembly-references) are specified without adding any `reference groups` for projects that target `multiple frameworks`. + +#### Workaround +Use `nuget.exe` [5.8.1](https://dist.nuget.org/win-x86-commandline/v5.8.1/nuget.exe) or latest version other than `5.9.1`. + ## Feedback welcome Your feedback is important to us. If there are any problems with this release, check our From df8bfe875ccb30df6a702a30f19350495e2ef3f9 Mon Sep 17 00:00:00 2001 From: rpanday Date: Wed, 28 Apr 2021 19:27:05 +0530 Subject: [PATCH 410/988] Update NU1105.md Moved under Command line section --- docs/reference/errors-and-warnings/NU1105.md | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/docs/reference/errors-and-warnings/NU1105.md b/docs/reference/errors-and-warnings/NU1105.md index 67db4d0df..c7ff8201e 100644 --- a/docs/reference/errors-and-warnings/NU1105.md +++ b/docs/reference/errors-and-warnings/NU1105.md @@ -23,7 +23,10 @@ The project file exists but no restore information was provided for it. From the command line this could mean that the file is corrupt or that the `NuGet.targets` are not imported. To import the `NuGet.targets`, usually it's recommended to import the `Microsoft.Common.targets`. - +To restore projects in solution using [.NET Core CLI](https://docs.microsoft.com/nuget/consume-packages/install-use-packages-dotnet-cli) use: +```dotnetcli +dotnet restore MySolution.sln +``` #### Visual Studio In Visual Studio the error could mean that targets are not import similar to the command line scenario. @@ -31,9 +34,5 @@ In Visual Studio the error could mean that targets are not import similar to the The error could also mean that the project is unloaded. * If you are using Visual Studio 2019 or later, NuGet has the ability to re-use artifacts from the previous restore for unloaded projects. In order for this scenario to work, you need to ensure that all projects currently in the solution have been restored from the command line prior to loading them in Visual Studio. -To restore projects in solution using [.NET Core CLI](https://docs.microsoft.com/nuget/consume-packages/install-use-packages-dotnet-cli) use: -```dotnetcli -dotnet restore MySolution.sln -``` * Alternatively, reload the project. From 2ff6da13929845e56f1177c4280763869d91eff4 Mon Sep 17 00:00:00 2001 From: Rexyislive <77639335+Rexyislive@users.noreply.github.com> Date: Thu, 6 May 2021 21:23:21 +0200 Subject: [PATCH 411/988] Update NU5115.md fixed typo in line 23 --- docs/reference/errors-and-warnings/NU5115.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/errors-and-warnings/NU5115.md b/docs/reference/errors-and-warnings/NU5115.md index 6003c84a0..941c84d85 100644 --- a/docs/reference/errors-and-warnings/NU5115.md +++ b/docs/reference/errors-and-warnings/NU5115.md @@ -20,5 +20,5 @@ A property was not specified to the pack command, hence a default value was chos ### Solution -Please scpecify the mentioned property in the csproj as an msbuild property if using project file or in the nuspec file. +Please specify the mentioned property in the csproj as an msbuild property if using project file or in the nuspec file. From d3109524389e9c93969d4f47c7725471c178b71b Mon Sep 17 00:00:00 2001 From: Hiroshi Yoshioka <40815708+hyoshioka0128@users.noreply.github.com> Date: Sat, 8 May 2021 22:51:36 +0900 Subject: [PATCH 412/988] =?UTF-8?q?Typo=20"Nuget"=E2=86=92"NuGet"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://docs.microsoft.com/en-us/nuget/consume-packages/install-use-packages-dotnet-cli #pingMSFTDocs --- docs/consume-packages/install-use-packages-dotnet-cli.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/consume-packages/install-use-packages-dotnet-cli.md b/docs/consume-packages/install-use-packages-dotnet-cli.md index 4da4baf17..d0442604f 100644 --- a/docs/consume-packages/install-use-packages-dotnet-cli.md +++ b/docs/consume-packages/install-use-packages-dotnet-cli.md @@ -25,7 +25,7 @@ This article shows you basic usage for a few of the most common dotnet CLI comma 1. Open a command line and switch to the directory that contains your project file. -2. Use the following command to install a Nuget package: +2. Use the following command to install a NuGet package: ```dotnetcli dotnet add package @@ -49,7 +49,7 @@ This article shows you basic usage for a few of the most common dotnet CLI comma ## Install a specific version of a package -If the version is not specified, NuGet installs the latest version of the package. You can also use the [dotnet add package](/dotnet/core/tools/dotnet-add-package?tabs=netcore2x) command to install a specific version of a Nuget package: +If the version is not specified, NuGet installs the latest version of the package. You can also use the [dotnet add package](/dotnet/core/tools/dotnet-add-package?tabs=netcore2x) command to install a specific version of a NuGet package: ```dotnetcli dotnet add package --version From 90f2ee65da99e1fbc84ffd68ed3c1147d81034be Mon Sep 17 00:00:00 2001 From: Hiroshi Yoshioka <40815708+hyoshioka0128@users.noreply.github.com> Date: Sun, 9 May 2021 13:03:45 +0900 Subject: [PATCH 413/988] =?UTF-8?q?Typo=20"Nuget.Config"=E2=86=92"NuGet.Co?= =?UTF-8?q?nfig"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://docs.microsoft.com/en-us/nuget/consume-packages/overview-and-workflow #PingMSFTDocs --- docs/consume-packages/Overview-and-Workflow.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Overview-and-Workflow.md b/docs/consume-packages/Overview-and-Workflow.md index 956c13519..4c47052ab 100644 --- a/docs/consume-packages/Overview-and-Workflow.md +++ b/docs/consume-packages/Overview-and-Workflow.md @@ -34,7 +34,7 @@ When adding project code to a source repository, you typically don't include NuG Occasionally it's necessary to reinstall packages that are already included in a project, which may also reinstall dependencies. This is easy to do using the `nuget reinstall` command or the NuGet Package Manager Console. For details, see [Reinstalling and Updating Packages](../consume-packages/reinstalling-and-updating-packages.md). -Finally, NuGet's behavior is driven by `Nuget.Config` files. Multiple files can be used to centralize certain settings at different levels, as explained in [Configuring NuGet Behavior](../consume-packages/configuring-nuget-behavior.md). +Finally, NuGet's behavior is driven by `NuGet.Config` files. Multiple files can be used to centralize certain settings at different levels, as explained in [Configuring NuGet Behavior](../consume-packages/configuring-nuget-behavior.md). ## Ways to install a NuGet Package From 255e81360451119e86bb62eebf0e639c798193fc Mon Sep 17 00:00:00 2001 From: Hiroshi Yoshioka <40815708+hyoshioka0128@users.noreply.github.com> Date: Sun, 9 May 2021 13:12:10 +0900 Subject: [PATCH 414/988] =?UTF-8?q?Typo=20"Nuget.Config"=E2=86=92"NuGet.Co?= =?UTF-8?q?nfig"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://docs.microsoft.com/en-us/nuget/reference/extensibility/nuget-exe-credential-providers #PingMSFTDocs --- docs/reference/extensibility/nuget-exe-Credential-Providers.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/extensibility/nuget-exe-Credential-Providers.md b/docs/reference/extensibility/nuget-exe-Credential-Providers.md index 520083e37..391c48f03 100644 --- a/docs/reference/extensibility/nuget-exe-Credential-Providers.md +++ b/docs/reference/extensibility/nuget-exe-Credential-Providers.md @@ -32,7 +32,7 @@ A credential provider is a command-line executable, named in the form `Credentia A provider must do the following: - Determine whether it can provide credentials for the targeted URI before initiating credential acquisition. If not, it should return status code 1 with no credentials. -- Not modify `Nuget.Config` (such as setting credentials there). +- Not modify `NuGet.Config` (such as setting credentials there). - Handle HTTP proxy configuration on its own, as NuGet does not provide proxy information to the plugin. - Return credentials or error details to `nuget.exe` by writing a JSON response object (see below) to stdout, using UTF-8 encoding. - Optionally emit additional trace logging to stderr. No secrets should ever be written to stderr, since at verbosity levels "normal" or "detailed" such traces are echoed by NuGet to the console. From 7c206df1db45c7c9b631b018d1925ed04f87d99a Mon Sep 17 00:00:00 2001 From: Hiroshi Yoshioka <40815708+hyoshioka0128@users.noreply.github.com> Date: Sun, 9 May 2021 13:14:14 +0900 Subject: [PATCH 415/988] =?UTF-8?q?Typo=20"Nuget.Config"=E2=86=92"NuGet.Co?= =?UTF-8?q?nfig"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://docs.microsoft.com/en-us/nuget/concepts/dependency-resolution #PingMSFTDocs --- docs/concepts/Dependency-Resolution.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Dependency-Resolution.md b/docs/concepts/Dependency-Resolution.md index 3e7507a84..97869c755 100644 --- a/docs/concepts/Dependency-Resolution.md +++ b/docs/concepts/Dependency-Resolution.md @@ -98,7 +98,7 @@ With `packages.config`, a project's dependencies are written to `packages.config With `packages.config`, NuGet attempts to resolve dependency conflicts during the installation of each individual package. That is, if Package A is being installed and depends on Package B, and Package B is already listed in `packages.config` as a dependency of something else, NuGet compares the versions of Package B being requested and attempts to find a version that satisfies all version constraints. Specifically, NuGet selects the lower *major.minor* version that satisfies dependencies. -By default, NuGet 2.8 looks for the lowest patch version (see [NuGet 2.8 release notes](../release-notes/nuget-2.8.md#patch-resolution-for-dependencies)). You can control this setting through the `DependencyVersion` attribute in `Nuget.Config` and the `-DependencyVersion` switch on the command line. +By default, NuGet 2.8 looks for the lowest patch version (see [NuGet 2.8 release notes](../release-notes/nuget-2.8.md#patch-resolution-for-dependencies)). You can control this setting through the `DependencyVersion` attribute in `NuGet.Config` and the `-DependencyVersion` switch on the command line. The `packages.config` process for resolving dependencies gets complicated for larger dependency graphs. Each new package installation requires a traversal of the whole graph and raises the chance for version conflicts. When a conflict occurs, installation is stopped, leaving the project in an indeterminate state, especially with potential modifications to the project file itself. This is not an issue when using other package management formats. From cf1a84677118797e949aad4ec82ba707aa4da2f5 Mon Sep 17 00:00:00 2001 From: Ben Bodenmiller Date: Sun, 9 May 2021 05:51:21 -0700 Subject: [PATCH 416/988] Clarify how self update works --- docs/reference/cli-reference/cli-ref-update.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/cli-reference/cli-ref-update.md b/docs/reference/cli-reference/cli-ref-update.md index 0b28f30b8..69238df55 100644 --- a/docs/reference/cli-reference/cli-ref-update.md +++ b/docs/reference/cli-reference/cli-ref-update.md @@ -81,7 +81,7 @@ where `` identifies either a `packages.config` or solution file that - **`-Self`** - Updates nuget.exe to the latest version; all other arguments are ignored. + Updates `nuget.exe` to the latest version. `-Source` can be used however all other arguments are ignored. If no source is provided, checks `nuget.org` for updates regardless of `NuGet.Config` settings. - **`-Source`** From 2ccf4c78f8031ed1f44aa117e9e1e7aac4daa036 Mon Sep 17 00:00:00 2001 From: Hiroshi Yoshioka <40815708+hyoshioka0128@users.noreply.github.com> Date: Sat, 29 May 2021 15:14:25 +0900 Subject: [PATCH 417/988] =?UTF-8?q?Typo=20"NuGet.config"=E2=86=92"NuGet.Co?= =?UTF-8?q?nfig"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://docs.microsoft.com/en-us/nuget/reference/cli-reference/cli-ref-search #pingMSFTDocs --- docs/reference/cli-reference/cli-ref-search.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/cli-reference/cli-ref-search.md b/docs/reference/cli-reference/cli-ref-search.md index a95ea8b35..840a7600f 100644 --- a/docs/reference/cli-reference/cli-ref-search.md +++ b/docs/reference/cli-reference/cli-ref-search.md @@ -11,7 +11,7 @@ ms.topic: reference **Applies to:** package consumption • **Supported versions:** 5.8+ -Searches a given source using the query string provided. If no sources are specified, all sources defined in %AppData%\NuGet\NuGet.config are used. +Searches a given source using the query string provided. If no sources are specified, all sources defined in %AppData%\NuGet\NuGet.Config are used. ## Usage From 86f649b9ce896616206a46dffbfb69ba800daf7a Mon Sep 17 00:00:00 2001 From: Hiroshi Yoshioka <40815708+hyoshioka0128@users.noreply.github.com> Date: Sat, 29 May 2021 15:24:05 +0900 Subject: [PATCH 418/988] =?UTF-8?q?Typo=20"NuGet.config"=E2=86=92"NuGet.Co?= =?UTF-8?q?nfig"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://docs.microsoft.com/en-us/nuget/consume-packages/package-restore-troubleshooting #PingMSFTDocs --- docs/consume-packages/Package-restore-troubleshooting.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Package-restore-troubleshooting.md b/docs/consume-packages/Package-restore-troubleshooting.md index fb120c9bc..93f392395 100644 --- a/docs/consume-packages/Package-restore-troubleshooting.md +++ b/docs/consume-packages/Package-restore-troubleshooting.md @@ -26,7 +26,7 @@ If you're using Visual Studio, first enable package restore as follows. Otherwis ![Enable NuGet package restore in Tool/Options](../consume-packages/media/restore-01-autorestoreoptions.png) -These settings can also be changed in your `NuGet.config` file; see the [consent](#consent) section. If your project is an older project that uses the MSBuild-integrated package restore, you may need to [migrate](package-restore.md#migrate-to-automatic-package-restore-visual-studio) to automatic package restore. +These settings can also be changed in your `NuGet.Config` file; see the [consent](#consent) section. If your project is an older project that uses the MSBuild-integrated package restore, you may need to [migrate](package-restore.md#migrate-to-automatic-package-restore-visual-studio) to automatic package restore.
    From fd3f28de017c864244b36ce8b3eae909a513cefd Mon Sep 17 00:00:00 2001 From: Hiroshi Yoshioka <40815708+hyoshioka0128@users.noreply.github.com> Date: Sun, 30 May 2021 13:47:48 +0900 Subject: [PATCH 419/988] =?UTF-8?q?Typo=20"NuGet.config=20files"=E2=86=92"?= =?UTF-8?q?NuGet.Config=20files"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://docs.microsoft.com/en-us/nuget/consume-packages/package-references-in-project-files #PingMSFTDocs --- docs/consume-packages/Package-References-in-Project-Files.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Package-References-in-Project-Files.md b/docs/consume-packages/Package-References-in-Project-Files.md index da42298e8..fc8c2ecf0 100644 --- a/docs/consume-packages/Package-References-in-Project-Files.md +++ b/docs/consume-packages/Package-References-in-Project-Files.md @@ -9,7 +9,7 @@ ms.topic: conceptual # Package references (`PackageReference`) in project files -Package references, using the `PackageReference` node, manage NuGet dependencies directly within project files (as opposed to a separate `packages.config` file). Using PackageReference, as it's called, doesn't affect other aspects of NuGet; for example, settings in `NuGet.config` files (including package sources) are still applied as explained in [Common NuGet configurations](configuring-nuget-behavior.md). +Package references, using the `PackageReference` node, manage NuGet dependencies directly within project files (as opposed to a separate `packages.config` file). Using PackageReference, as it's called, doesn't affect other aspects of NuGet; for example, settings in `NuGet.Config` files (including package sources) are still applied as explained in [Common NuGet configurations](configuring-nuget-behavior.md). With PackageReference, you can also use MSBuild conditions to choose package references per target framework, or other groupings. It also allows for fine-grained control over dependencies and content flow. (See For more details [NuGet pack and restore as MSBuild targets](../reference/msbuild-targets.md).) From 0a8400e69bd4dce307961625461437b83c62f502 Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Wed, 2 Jun 2021 17:18:51 -0700 Subject: [PATCH 420/988] Fix where only 1 signed package is can be passed. --- docs/reference/cli-reference/cli-ref-trusted-signers.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/reference/cli-reference/cli-ref-trusted-signers.md b/docs/reference/cli-reference/cli-ref-trusted-signers.md index 2b3b11c7f..1aa7da34f 100644 --- a/docs/reference/cli-reference/cli-ref-trusted-signers.md +++ b/docs/reference/cli-reference/cli-ref-trusted-signers.md @@ -57,14 +57,14 @@ Adds a trusted signer with the given name to the config. This option has differe ## Options for add based on a package ```cli -nuget trusted-signers add -Name [options] +nuget trusted-signers add -Name [options] ``` -where `` is one or more `.nupkg` files. +where `` is one signed `.nupkg` file. - **`-Author`** - Specifies that the author signature of the package(s) should be trusted. + Specifies that the author signature of the signed package should be trusted. - **`-AllowUntrustedRoot`** @@ -76,7 +76,7 @@ where `` is one or more `.nupkg` files. - **`-Repository`** - Specifies that the repository signature or countersignature of the package(s) should be trusted. + Specifies that the repository signature or countersignature of the signed package should be trusted. Providing both `-Author` and `-Repository` at the same time is not supported. From 16fcd84dfc375af71cca327f53cde29b99f789ff Mon Sep 17 00:00:00 2001 From: Eriawan Kusumawardhono Date: Fri, 4 Jun 2021 15:50:23 +0700 Subject: [PATCH 421/988] Fix #2418 Fix #2418 Typo in description for NU5115 --- docs/reference/errors-and-warnings/NU5115.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/errors-and-warnings/NU5115.md b/docs/reference/errors-and-warnings/NU5115.md index 6003c84a0..941c84d85 100644 --- a/docs/reference/errors-and-warnings/NU5115.md +++ b/docs/reference/errors-and-warnings/NU5115.md @@ -20,5 +20,5 @@ A property was not specified to the pack command, hence a default value was chos ### Solution -Please scpecify the mentioned property in the csproj as an msbuild property if using project file or in the nuspec file. +Please specify the mentioned property in the csproj as an msbuild property if using project file or in the nuspec file. From b7479fc7e16f62ae0f052abdb6aa8283f17489ba Mon Sep 17 00:00:00 2001 From: Avestura Date: Thu, 10 Jun 2021 01:42:46 +0430 Subject: [PATCH 422/988] Added project file extension for other languages as well --- .../create-and-publish-a-package-using-the-dotnet-cli.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md index a56ae04ab..c7f0a925b 100644 --- a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md +++ b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md @@ -33,7 +33,7 @@ You can use an existing .NET Class Library project for the code you want to pack Every NuGet package needs a manifest that describes the package's contents and dependencies. In a final package, the manifest is a `.nuspec` file that is generated from the NuGet metadata properties that you include in the project file. -1. Open your project file (`.csproj`) and add the following minimal properties inside the existing `` tag, changing the values as appropriate: +1. Open your project file (`.csproj`, `.fsproj` or `.vbproj` depending on the language you're using) and add the following minimal properties inside the existing `` tag, changing the values as appropriate: ```xml AppLogger From 29f1e4719212cbfa2e88c0276478a515422d5fad Mon Sep 17 00:00:00 2001 From: John Zabroski Date: Mon, 14 Jun 2021 10:21:36 -0400 Subject: [PATCH 423/988] Fix semver-compatible floating version --- docs/consume-packages/Package-References-in-Project-Files.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Package-References-in-Project-Files.md b/docs/consume-packages/Package-References-in-Project-Files.md index fc8c2ecf0..ffc403c2c 100644 --- a/docs/consume-packages/Package-References-in-Project-Files.md +++ b/docs/consume-packages/Package-References-in-Project-Files.md @@ -71,7 +71,7 @@ In PackageReference projects, the transitive dependency versions are resolved at - + ``` From 6f5b5af68f3398827d696559bee0c8085799f7a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kat=20March=C3=A1n?= Date: Thu, 17 Jun 2021 14:30:03 -0700 Subject: [PATCH 424/988] release notes for 5.10 (#2457) --- docs/TOC.md | 1 + docs/release-notes/Index.md | 2 + docs/release-notes/NuGet-5.10.md | 156 +++++++++++++++++++++++++++++++ 3 files changed, 159 insertions(+) create mode 100644 docs/release-notes/NuGet-5.10.md diff --git a/docs/TOC.md b/docs/TOC.md index caa00f24b..44331cdad 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -292,6 +292,7 @@ ## Release notes ### [Known Issues](release-notes/known-issues.md) ### NuGet 5.x +#### [NuGet 5.10](release-notes/NuGet-5.10.md) #### [NuGet 5.9](release-notes/NuGet-5.9.md) #### [NuGet 5.8](release-notes/NuGet-5.8.md) #### [NuGet 5.7](release-notes/NuGet-5.7.md) diff --git a/docs/release-notes/Index.md b/docs/release-notes/Index.md index 2b1eae9ff..bf8deedbf 100644 --- a/docs/release-notes/Index.md +++ b/docs/release-notes/Index.md @@ -11,6 +11,8 @@ ms.topic: conceptual [Known Issues](../release-notes/known-issues.md) +[NuGet 5.10](../release-notes/NuGet-5.10.md) + [NuGet 5.9](../release-notes/NuGet-5.9.md) [NuGet 5.8](../release-notes/NuGet-5.8.md) diff --git a/docs/release-notes/NuGet-5.10.md b/docs/release-notes/NuGet-5.10.md new file mode 100644 index 000000000..e9d312f4c --- /dev/null +++ b/docs/release-notes/NuGet-5.10.md @@ -0,0 +1,156 @@ +--- +title: NuGet 5.10 Release Notes +description: Release notes for NuGet 5.10 including new features, bug fixes, and DCRs. +author: zkat +ms.author: kmarchan +ms.date: 6/11/2021 +ms.topic: conceptual +--- + +# NuGet 5.10 Release Notes + +NuGet distribution vehicles: + +| NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | +|:---|:---|:---| +| [**5.10.0**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.10](https://visualstudio.microsoft.com/downloads/) | [5.0.300](https://dotnet.microsoft.com/download/dotnet-core/5.0)1 | + +1 Installed with Visual Studio 2019 with .NET Core workload + +> [!NOTE] +> Visual Studio 16.10, MSBuild 16.10, and .NET 5.0.300+ requires NuGet.exe 5.10 or later. + +## Summary: What's New in 5.10 + +* Signing: implement dotnet trusted-signers command - [#8053](https://github.com/NuGet/Home/issues/8053) + +* Make default validation disabled on Linux, but enabled by default on Windows - [#10713](https://github.com/NuGet/Home/issues/10713) + +* Add an ENV Variable for Package Signing Verification on .NET 5+ Linux/MAC - [#10742](https://github.com/NuGet/Home/issues/10742) + +* Improve install new package performance for large solutions - [#10166](https://github.com/NuGet/Home/issues/10166) + +* Add the project type `nfproj` to the list of supportedProjectExtensions for Nuget CLI. - [#10562](https://github.com/NuGet/Home/issues/10562) + +### Issues fixed in this release + +* Suppress the element when packing a project - [#5133](https://github.com/NuGet/Home/issues/5133) + +* [CPVM] preview warning should be shown on dotnet cli - [#10226](https://github.com/NuGet/Home/issues/10226) + +* Update the background and foreground color tokens of the PMUI to CommonDocumentColors - [#10608](https://github.com/NuGet/Home/issues/10608) + +* [Bug Bash] Error “operation canceled by user” show in Error List window when switching between tabs quickly in PM UI - [#10671](https://github.com/NuGet/Home/issues/10671) + +* PM UI: Improve package installation performance on the solution level - [#10210](https://github.com/NuGet/Home/issues/10210) + +* Replace GetService with GetServiceAsync everywhere in NuGet.Clients - [#3784](https://github.com/NuGet/Home/issues/3784) + +* NuGet.exe pack performance problem with `..` relative path - [#5016](https://github.com/NuGet/Home/issues/5016) + +* The performance of "nuget pack" decreases with increasing levels in the source paths - [#5706](https://github.com/NuGet/Home/issues/5706) + +* NuGet doesn't error when packaging nuspec with duplicate files. - [#6941](https://github.com/NuGet/Home/issues/6941) + +* NuGet pack "The DateTimeOffset specified cannot be converted into a Zip file timestamp" - [#7001](https://github.com/NuGet/Home/issues/7001) + +* Timestamps of file of packed package is shifted by the timezone - [#7395](https://github.com/NuGet/Home/issues/7395) + +* NU1004 should contain more actionable information - [#7696](https://github.com/NuGet/Home/issues/7696) + +* [Bug Bash][Test Failure] The empty/malformed lock file should not be updated when running ‘dotnet restore --use-lock-file --locked-mode’ - [#8640](https://github.com/NuGet/Home/issues/8640) + +* NuGetVersionRange allows logically incorrect ranges to be parsed - [#9145](https://github.com/NuGet/Home/issues/9145) + +* PM UI can’t show distinguishable background color between selected and hovered package sources - [#9538](https://github.com/NuGet/Home/issues/9538) + +* Checkbox for selecting projects to install to isn't being read by screen reader - [#9578](https://github.com/NuGet/Home/issues/9578) + +* Details Pane Versions Dropdown default selection should be Installed/LatestStable on Installed/Updates tabs - [#9887](https://github.com/NuGet/Home/issues/9887) + +* Remove workaround account for some .NET 5 SDKs report TargetPlatformMoniker of ` ,Version= ` - [#9913](https://github.com/NuGet/Home/issues/9913) + +* dotnet nuget verify is too quiet - [#10316](https://github.com/NuGet/Home/issues/10316) + +* VersionRange cannot parse single-digit ranges - [#10342](https://github.com/NuGet/Home/issues/10342) + +* VS Solution manager throws null exception for during debugging - [#10352](https://github.com/NuGet/Home/issues/10352) + +* Move CLI exception messages to String Resource files - [#10392](https://github.com/NuGet/Home/issues/10392) + +* Remove dead code (TabItemButtonAutomationPeer) - [#10435](https://github.com/NuGet/Home/issues/10435) + +* Update context menu should scroll to first selected item - [#10498](https://github.com/NuGet/Home/issues/10498) + +* Solution PMUI Details has overlapping horizontal bar - [#10533](https://github.com/NuGet/Home/issues/10533) + +* Signing: primary signature details not displayed when certificate expired and timestamp untrusted - [#10535](https://github.com/NuGet/Home/issues/10535) + +* Having no enabled sources prevents the PM UI from showing - [#10541](https://github.com/NuGet/Home/issues/10541) + +* Package Metadata (details, deprecation) are sometimes not pulled from nuget.org in CodeSpaces - [#10549](https://github.com/NuGet/Home/issues/10549) + +* PMUI initialization fails with exception during debug session - [#10559](https://github.com/NuGet/Home/issues/10559) + +* nuget restore results in a package integrity check failure on big endian system - [#10567](https://github.com/NuGet/Home/issues/10567) + +* FormatException is thrown instead of PackagingException - [#10595](https://github.com/NuGet/Home/issues/10595) + +* CPVM - Concurrency issues in the graph walking algorithm - [#10598](https://github.com/NuGet/Home/issues/10598) + +* Add PMC powershell version telemetry - [#10609](https://github.com/NuGet/Home/issues/10609) + +* Improve NuGetVersion sort performance - [#10611](https://github.com/NuGet/Home/issues/10611) + +* Trusted-signers Add has inconsistent arguments - [#10647](https://github.com/NuGet/Home/issues/10647) + +* Vs2019 v16.9.0: Switching tabs in NuGet Package Manager from "Updates" to "Installed" doesn't update the frame. - [#10654](https://github.com/NuGet/Home/issues/10654) + +* Remove the "v" from the version number in PMUI - [#10677](https://github.com/NuGet/Home/issues/10677) + +* INuGetProjectService.GetInstalledPackagesAsync throws before receiving CPS project system nomination - [#10681](https://github.com/NuGet/Home/issues/10681) + +* Embedded Icons cause Access Denied from source "Microsoft Visual Studio Offline Packages" on Browse tab - [#10687](https://github.com/NuGet/Home/issues/10687) + +* INuGetProjectService.GetInstalledPackagesAsync throws when MSBuildProjectExtensionsPath is not set - [#10739](https://github.com/NuGet/Home/issues/10739) + +* "dotnet nuget remove source nuget.org" doesn't work the first time - [#10745](https://github.com/NuGet/Home/issues/10745) + +* Nuget blocks a threadpool thread in an async method making a synchronous call to the UI thread - [#10775](https://github.com/NuGet/Home/issues/10775) + +* Tools -> Options -> NuGet Package Manager string is truncated - [#10779](https://github.com/NuGet/Home/issues/10779) + +* `PackageLoadContext.GetInstalledAndTransitivePackagesAsync` is dead code and hurting performance - [#10790](https://github.com/NuGet/Home/issues/10790) + +* Use embedded icon in NuGet SDK packages - [#10795](https://github.com/NuGet/Home/issues/10795) + +* Update the SPDX license list - [#10806](https://github.com/NuGet/Home/issues/10806) + +**[List of all issues fixed in this release - 5.10](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=Z2lkOi8vcmFwdG9yL1JlbGVhc2UvNTY2MTQ)** + +**[List of commits in this release - 5.10.0](https://github.com/NuGet/NuGet.Client/compare/5.9.0.7134...5.10.0.7240)** + +### Community contributions + +Thank you to all the contributors who helped make this NuGet release awesome! + +|Who|PRs|Issues| +|----|----|----| +[louis-z](https://github.com/louis-z) | [3991](https://github.com/NuGet/NuGet.Client/pull/3991) | VersionRange cannot parse single-digit ranges - [#10342](https://github.com/NuGet/Home/issues/10342) +[omajid](https://github.com/omajid) | [3860](https://github.com/NuGet/NuGet.Client/pull/3860) | NuGet.Client build.sh is broken - [#10139](https://github.com/NuGet/Home/issues/10139) +[Nirmal4G](https://github.com/Nirmal4G) | [3623](https://github.com/NuGet/NuGet.Client/pull/3623) | NuGet.Client build.sh is broken - [#10139](https://github.com/NuGet/Home/issues/10139) +[BlackGad](https://github.com/BlackGad) | [3953](https://github.com/NuGet/NuGet.Client/pull/3953) | The performance of "nuget pack" decreases with increasing levels in the source paths - [#5706](https://github.com/NuGet/Home/issues/5706) +[BlackGad](https://github.com/BlackGad) | [3953](https://github.com/NuGet/NuGet.Client/pull/3953) | NuGet.exe pack performance problem with .. relative path - [#5016](https://github.com/NuGet/Home/issues/5016) +[marcin-krystianc](https://github.com/marcin-krystianc) | [3940](https://github.com/NuGet/NuGet.Client/pull/3940) | CPVM - Concurrency issues in the graph walking algorithm - [#10598](https://github.com/NuGet/Home/issues/10598) +[josesimoes](https://github.com/josesimoes) | [3943](https://github.com/NuGet/NuGet.Client/pull/3943) | Add the project type nfproj to the list of supportedProjectExtensions for Nuget CLI. - [#10562](https://github.com/NuGet/Home/issues/10562) + +## Feedback welcome + +Your feedback is important to us. If there are any problems with this release, check our +[GitHub Issues](https://github.com/NuGet/Home/issues) and +[Visual Studio Developer Community](https://developercommunity.visualstudio.com/) +for existing issues. For new issues within NuGet, please report a +[GitHub Issue](https://github.com/NuGet/Home/issues/new). +For general NuGet experience issues, let us know via the +[Report a Problem](/visualstudio/ide/how-to-report-a-problem-with-visual-studio) +option found in your favorite IDE under **Help > Report a Problem**. From f39d11f06b4e8d2b9a223ac7badcd8d9df74cde0 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Thu, 17 Jun 2021 16:31:35 -0500 Subject: [PATCH 425/988] Fix absolute link --- docs/reference/errors-and-warnings/NU1105.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/errors-and-warnings/NU1105.md b/docs/reference/errors-and-warnings/NU1105.md index c7ff8201e..2a93b631e 100644 --- a/docs/reference/errors-and-warnings/NU1105.md +++ b/docs/reference/errors-and-warnings/NU1105.md @@ -23,7 +23,7 @@ The project file exists but no restore information was provided for it. From the command line this could mean that the file is corrupt or that the `NuGet.targets` are not imported. To import the `NuGet.targets`, usually it's recommended to import the `Microsoft.Common.targets`. -To restore projects in solution using [.NET Core CLI](https://docs.microsoft.com/nuget/consume-packages/install-use-packages-dotnet-cli) use: +To restore projects in solution using [.NET Core CLI](../consume-packages/install-use-packages-dotnet-cli.md) use: ```dotnetcli dotnet restore MySolution.sln ``` From 3f0952d99c287ab556a06c6fd5829fdc0cd8875e Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Thu, 17 Jun 2021 16:33:45 -0500 Subject: [PATCH 426/988] Fix absolute link again --- docs/reference/errors-and-warnings/NU1105.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/errors-and-warnings/NU1105.md b/docs/reference/errors-and-warnings/NU1105.md index 2a93b631e..365ba0e43 100644 --- a/docs/reference/errors-and-warnings/NU1105.md +++ b/docs/reference/errors-and-warnings/NU1105.md @@ -23,7 +23,7 @@ The project file exists but no restore information was provided for it. From the command line this could mean that the file is corrupt or that the `NuGet.targets` are not imported. To import the `NuGet.targets`, usually it's recommended to import the `Microsoft.Common.targets`. -To restore projects in solution using [.NET Core CLI](../consume-packages/install-use-packages-dotnet-cli.md) use: +To restore projects in solution using [.NET Core CLI](../../consume-packages/install-use-packages-dotnet-cli.md) use: ```dotnetcli dotnet restore MySolution.sln ``` From d50a05bd0b5cf45fd27b7d93aad747c11fedbd52 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kat=20March=C3=A1n?= Date: Fri, 2 Jul 2021 09:19:08 -0700 Subject: [PATCH 427/988] add NU1703 (#2475) Fixes: https://github.com/NuGet/docs.microsoft.com-nuget/issues/2468 --- docs/TOC.md | 1 + docs/reference/errors-and-warnings/NU1703.md | 23 ++++++++++++++++++++ 2 files changed, 24 insertions(+) create mode 100644 docs/reference/errors-and-warnings/NU1703.md diff --git a/docs/TOC.md b/docs/TOC.md index 44331cdad..85332bae9 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -158,6 +158,7 @@ ### [NU1605](reference/errors-and-warnings/NU1605.md) ### [NU1608](reference/errors-and-warnings/NU1608.md) ### [NU1701](reference/errors-and-warnings/NU1701.md) +### [NU1703](reference/errors-and-warnings/NU1703.md) ### [NU1801](reference/errors-and-warnings/NU1801.md) ### [NU3000](reference/errors-and-warnings/NU3000.md) ### [NU3001](reference/errors-and-warnings/NU3001.md) diff --git a/docs/reference/errors-and-warnings/NU1703.md b/docs/reference/errors-and-warnings/NU1703.md new file mode 100644 index 000000000..911170c4d --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1703.md @@ -0,0 +1,23 @@ +--- +title: NuGet Warning NU1703 +description: NU1703 warning code +author: zkat +ms.author: kmarchan +ms.date: 07/01/2021 +ms.topic: reference +ms.reviewer: anangaur +f1_keywords: + - "NU1703" +--- + +# NuGet Warning NU1703 + +
    'packageId' was resolved as a dependency of 'project', but the dependency is using 'Xamarin.iOS' while 'project' is using 'net6.0-maccatalyst14.5' as its TargetFramework
    + +### Issue + +While `net6.0-maccatalyst` (and higher .NET versions) support using Xamarin.iOS dependencies, this is not guaranteed to be 100% compatible. + +### Solution + +Use a dependency that ships artifacts for `net6.0-maccatalyst` or a higher .NET version instead of relying on legacy Xamarin.iOS. From b121377ecf18b9cb3199fa6c9ed0624451288787 Mon Sep 17 00:00:00 2001 From: Drew Noakes Date: Wed, 21 Jul 2021 16:56:31 +1000 Subject: [PATCH 428/988] Fix missing text Because the XML was not escaped in backticks, it was being removed from the rendered markdown. Consequently it was not clear what property the sentence is referring to. The fix is to mark the property as an inline code snippet, which also makes it consistent with other property references in the document. --- docs/create-packages/creating-a-package-msbuild.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/create-packages/creating-a-package-msbuild.md b/docs/create-packages/creating-a-package-msbuild.md index 93c036f10..9f1aca975 100644 --- a/docs/create-packages/creating-a-package-msbuild.md +++ b/docs/create-packages/creating-a-package-msbuild.md @@ -152,7 +152,7 @@ To automatically run `msbuild -t:pack` when you build or restore the project, ad true ``` -When you run `msbuild -t:pack` on a solution, this packs all the projects in the solution that are packable ([](/dotnet/core/tools/csproj#nuget-metadata-properties) property is set to `true`). +When you run `msbuild -t:pack` on a solution, this packs all the projects in the solution that are packable ([``](/dotnet/core/tools/csproj#nuget-metadata-properties) property is set to `true`). > [!NOTE] > When you automatically generate the package, the time to pack increases the build time for your project. @@ -184,4 +184,4 @@ You might also want to extend the capabilities of your package or otherwise supp Finally, there are additional package types to be aware of: - [Native Packages](../guides/native-packages.md) -- [Symbol Packages](../create-packages/symbol-packages-snupkg.md) \ No newline at end of file +- [Symbol Packages](../create-packages/symbol-packages-snupkg.md) From f2ff95d7c78977f1392fe20ca88117f16f306dd9 Mon Sep 17 00:00:00 2001 From: lyndaidaii <64443925+lyndaidaii@users.noreply.github.com> Date: Wed, 21 Jul 2021 14:28:29 -0700 Subject: [PATCH 429/988] include app.codacy.com in allowlist (#2485) --- docs/nuget-org/package-readme-on-nuget-org.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/nuget-org/package-readme-on-nuget-org.md b/docs/nuget-org/package-readme-on-nuget-org.md index f4dd15f04..507bd0e79 100644 --- a/docs/nuget-org/package-readme-on-nuget-org.md +++ b/docs/nuget-org/package-readme-on-nuget-org.md @@ -43,6 +43,7 @@ Due to security and privacy concerns, NuGet.org restricts the domains from which NuGet.org allows all images, including badges, from the following trusted domains to be rendered: * api.bintray.com * api.codacy.com +* app.codacy.com * api.codeclimate.com * api.dependabot.com * api.travis-ci.com From 40e7ad74a7356df8ac07712940bed58c4e473986 Mon Sep 17 00:00:00 2001 From: Mike Jones Date: Fri, 30 Jul 2021 10:23:04 -0700 Subject: [PATCH 430/988] Fixes to the suggestions on the repo (#2488) --- .../Package-authoring-best-practices.md | 28 +++++++++---------- docs/nuget-org/package-readme-on-nuget-org.md | 4 +-- docs/release-notes/NuGet-5.8.md | 2 +- 3 files changed, 17 insertions(+), 17 deletions(-) diff --git a/docs/create-packages/Package-authoring-best-practices.md b/docs/create-packages/Package-authoring-best-practices.md index 3d47dc03a..ed01fcf79 100644 --- a/docs/create-packages/Package-authoring-best-practices.md +++ b/docs/create-packages/Package-authoring-best-practices.md @@ -53,21 +53,21 @@ Package metadata elements can also be [specified directly in the project file](. Below is a table mapping and describing available package metadata elements: -| Visual Studio property name | [Project file/ MSBuild property name](https://docs.microsoft.com/dotnet/core/tools/csproj#packagereleasenotes) | [Nuspec property name](https://docs.microsoft.com/nuget/reference/nuspec#general-form-and-schema) | Description | +| Visual Studio property name | [Project file/ MSBuild property name](/dotnet/core/tools/csproj#packagereleasenotes) | [Nuspec property name](/nuget/reference/nuspec#general-form-and-schema) | Description | |----------------------------------------------- |----------------------------------------------------------------------------------------------------------------------------------------- |--------------------------------------------------------------------------------------------------- |------------------------------------------------------------------------------------------------------------------- | -| [`Package id`](#package-id) | [`PackageId`](https://docs.microsoft.com/nuget/reference/msbuild-targets#pack-target) | [`id`](https://docs.microsoft.com/nuget/reference/nuspec#id) | The package name or identifier. | -| [`Package version`](#package-version) | [`PackageVersion`](https://docs.microsoft.com/nuget/reference/msbuild-targets#pack-target) | [`version`](https://docs.microsoft.com/nuget/reference/nuspec#version) | NuGet package version. | -| [`Authors`](#authors) | [`Authors`](https://docs.microsoft.com/nuget/reference/msbuild-targets#pack-target) | [`authors`](https://docs.microsoft.com/nuget/reference/nuspec#authors) | A comma-separated list of package authors, often using the individual's or an organization's "pretty name." | -| [`Description`](#description) | [`Description`](https://docs.microsoft.com/nuget/reference/msbuild-targets#pack-target) | [`description`](https://docs.microsoft.com/nuget/reference/nuspec#description) | A description of the package. | -| [`Copyright`](#copyright) | [`Copyright`](https://docs.microsoft.com/nuget/reference/msbuild-targets#pack-target) | [`copyright`](https://docs.microsoft.com/nuget/reference/nuspec#copyright) | Copyright details for the package. | -| [`Licensing - Expression`](#licensing) | [`PackageLicenseExpression`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="expression"`](https://docs.microsoft.com/nuget/reference/nuspec#license) | An SPDX license expression. | -| [`Licensing - File`](#licensing) | [`PackageLicenseFile`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="file"`](https://docs.microsoft.com/nuget/reference/nuspec#license) | Path to a custom license file. | -| [`Project URL`](#project-url) | `PackageProjectUrl` | [`projectUrl`](https://docs.microsoft.com/nuget/reference/nuspec#projecturl) | A URL for the project homepage. | -| [`Icon File`](#icon) | [`PackageIcon`](https://docs.microsoft.com/nuget/reference/msbuild-targets#packing-an-icon-image-file) | [`icon`](https://docs.microsoft.com/nuget/reference/nuspec#icon) | Path to the package icon image file. | -| [`Repository URL`](#repository-type-and-url) | [`RepositoryUrl`](https://docs.microsoft.com/nuget/reference/msbuild-targets#pack-target) | [`repository url`](https://docs.microsoft.com/nuget/reference/nuspec#repository) | URL to the repository from which the package was built. | -| [`Repository type`](#repository-type-and-url) | [`RespositoryType`](https://docs.microsoft.com/nuget/reference/msbuild-targets#pack-target) | [`repository type`](https://docs.microsoft.com/nuget/reference/nuspec#repository) | Type of repository the repository URL is pointing to (i.e. "git"). | -| [`Tags`](#tags) | [`PackageTags`](https://docs.microsoft.com/nuget/reference/msbuild-targets#pack-target) | [`tags`](https://docs.microsoft.com/nuget/reference/nuspec#tags) | A space-delimited list of tags and keywords that describe the package. Tags are used when searching for packages. | -| [`Release notes`](#release-notes) | [`PackageReleaseNotes`](https://docs.microsoft.com/nuget/reference/msbuild-targets#pack-target) | [`releaseNotes`](https://docs.microsoft.com/nuget/reference/nuspec#releasenotes) | A description of the changes made in this release of the package. | +| [`Package id`](#package-id) | [`PackageId`](/nuget/reference/msbuild-targets#pack-target) | [`id`](/nuget/reference/nuspec#id) | The package name or identifier. | +| [`Package version`](#package-version) | [`PackageVersion`](/nuget/reference/msbuild-targets#pack-target) | [`version`](/nuget/reference/nuspec#version) | NuGet package version. | +| [`Authors`](#authors) | [`Authors`](/nuget/reference/msbuild-targets#pack-target) | [`authors`](/nuget/reference/nuspec#authors) | A comma-separated list of package authors, often using the individual's or an organization's "pretty name." | +| [`Description`](#description) | [`Description`](/nuget/reference/msbuild-targets#pack-target) | [`description`](/nuget/reference/nuspec#description) | A description of the package. | +| [`Copyright`](#copyright) | [`Copyright`](/nuget/reference/msbuild-targets#pack-target) | [`copyright`](/nuget/reference/nuspec#copyright) | Copyright details for the package. | +| [`Licensing - Expression`](#licensing) | [`PackageLicenseExpression`](/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="expression"`](/nuget/reference/nuspec#license) | An SPDX license expression. | +| [`Licensing - File`](#licensing) | [`PackageLicenseFile`](/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="file"`](/nuget/reference/nuspec#license) | Path to a custom license file. | +| [`Project URL`](#project-url) | `PackageProjectUrl` | [`projectUrl`](/nuget/reference/nuspec#projecturl) | A URL for the project homepage. | +| [`Icon File`](#icon) | [`PackageIcon`](/nuget/reference/msbuild-targets#packing-an-icon-image-file) | [`icon`](/nuget/reference/nuspec#icon) | Path to the package icon image file. | +| [`Repository URL`](#repository-type-and-url) | [`RepositoryUrl`](/nuget/reference/msbuild-targets#pack-target) | [`repository url`](/nuget/reference/nuspec#repository) | URL to the repository from which the package was built. | +| [`Repository type`](#repository-type-and-url) | [`RespositoryType`](/nuget/reference/msbuild-targets#pack-target) | [`repository type`](/nuget/reference/nuspec#repository) | Type of repository the repository URL is pointing to (i.e. "git"). | +| [`Tags`](#tags) | [`PackageTags`](/nuget/reference/msbuild-targets#pack-target) | [`tags`](/nuget/reference/nuspec#tags) | A space-delimited list of tags and keywords that describe the package. Tags are used when searching for packages. | +| [`Release notes`](#release-notes) | [`PackageReleaseNotes`](/nuget/reference/msbuild-targets#pack-target) | [`releaseNotes`](/nuget/reference/nuspec#releasenotes) | A description of the changes made in this release of the package. | ### Package ID If you're publishing a completely new package: diff --git a/docs/nuget-org/package-readme-on-nuget-org.md b/docs/nuget-org/package-readme-on-nuget-org.md index 507bd0e79..06170b63f 100644 --- a/docs/nuget-org/package-readme-on-nuget-org.md +++ b/docs/nuget-org/package-readme-on-nuget-org.md @@ -10,7 +10,7 @@ ms.reviewer: anangaur # Package readme on NuGet.org -[Include a readme file in your NuGet package](https://docs.microsoft.com/nuget/reference/msbuild-targets#packagereadmefile) to make your package details richer and more informative for your users! +[Include a readme file in your NuGet package](/nuget/reference/msbuild-targets#packagereadmefile) to make your package details richer and more informative for your users! This is likely one of the first elements users will see when they view your package details page on NuGet.org and is essential to making a good impression! @@ -31,7 +31,7 @@ Keep in mind, high quality readmes can come in a wide variety of formats, shapes ## Preview your readme -To preview your readme file before it's live on NuGet.org, upload your package using the [Upload Package web portal on NuGet.org](https://docs.microsoft.com/nuget/nuget-org/publish-a-package#web-portal-use-the-upload-package-tab-on-nugetorg) and scroll down to the "Readme File" section of the metadata preview. It should look something like this: +To preview your readme file before it's live on NuGet.org, upload your package using the [Upload Package web portal on NuGet.org](/nuget/nuget-org/publish-a-package#web-portal-use-the-upload-package-tab-on-nugetorg) and scroll down to the "Readme File" section of the metadata preview. It should look something like this: ![Readme File preview](media\readme-upload-preview.PNG) diff --git a/docs/release-notes/NuGet-5.8.md b/docs/release-notes/NuGet-5.8.md index f054f3a99..b0e4aa7ff 100644 --- a/docs/release-notes/NuGet-5.8.md +++ b/docs/release-notes/NuGet-5.8.md @@ -132,7 +132,7 @@ Thank you to all the contributors who helped make this NuGet release awesome! [omajid](https://github.com/omajid) | [3437](https://github.com/NuGet/NuGet.Client/pull/3437) | Typo in error message. "administator" instead of "administrator" - [#9662](https://github.com/NuGet/Home/issues/9662) [odalet](https://github.com/odalet) | [3341](https://github.com/NuGet/NuGet.Client/pull/3341) | NuGet Pack with invalid AssemblyInformationalVersion reports "description is required" - [#5548](https://github.com/NuGet/Home/issues/5548) [campersau](https://github.com/campersau) | [3501](https://github.com/NuGet/NuGet.Client/pull/3501) | `RepositoryMetadata.Equals()` does not account for Branch and Commit properties - [#9613](https://github.com/NuGet/Home/issues/9613) -[Youssef1313](https://github.com/Youssef1313) | [3599](https://github.com/NuGet/NuGet.Client/pull/3599) | Clicking NU code in Visual Studio Error List window should go to https://docs.microsoft.com/nuget/reference/errors-and-warnings/ - [#9934](https://github.com/NuGet/Home/issues/9934) +[Youssef1313](https://github.com/Youssef1313) | [3599](https://github.com/NuGet/NuGet.Client/pull/3599) | Clicking NU code in Visual Studio Error List window should go to [https://docs.microsoft.com/nuget/reference/errors-and-warnings/](/nuget/reference/errors-and-warnings/) - [#9934](https://github.com/NuGet/Home/issues/9934) [ChrisMaddock](https://github.com/ChrisMaddock) | [3624](https://github.com/NuGet/NuGet.Client/pull/3624) | Use 'https://' when adding new package source through Visual Studio options - [#9974](https://github.com/NuGet/Home/issues/9974) [Therzok](https://github.com/Therzok) | [3636](https://github.com/NuGet/NuGet.Client/pull/3636) | `RuntimeEnvironmentHelper.IsRunningOnVisualStudio` performance issue on Mono - [#9989](https://github.com/NuGet/Home/issues/9989) [thomaslevesque](https://github.com/thomaslevesque) | [3442](https://github.com/NuGet/NuGet.Client/pull/3442) | Add a TypeConverter for the SemanticVersion class - [#9125](https://github.com/NuGet/Home/issues/9125) From d95427a06480b94eb0d6996f8e1d568175b3f43a Mon Sep 17 00:00:00 2001 From: Vadim Peretokin Date: Sat, 31 Jul 2021 11:45:44 +0200 Subject: [PATCH 431/988] Fix typo --- docs/create-packages/creating-a-package-msbuild.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/create-packages/creating-a-package-msbuild.md b/docs/create-packages/creating-a-package-msbuild.md index 93c036f10..5f0b754af 100644 --- a/docs/create-packages/creating-a-package-msbuild.md +++ b/docs/create-packages/creating-a-package-msbuild.md @@ -15,7 +15,7 @@ For .NET Core and .NET Standard projects that use the [SDK-style format](../reso SDK-style projects have the pack functionality available by default. For non SDK-style PackageReference projects, you need to add the NuGet.Build.Tasks.Pack package to the project dependencies. For detailed information about MSBuild pack targets, see [NuGet pack and restore as MSBuild targets](../reference/msbuild-targets.md). -The command that creates a package, `msbuild -t:pack`, is functionality equivalent to `dotnet pack`. +The command that creates a package, `msbuild -t:pack`, is functionally equivalent to `dotnet pack`. > [!IMPORTANT] > This topic applies to [SDK-style](../resources/check-project-format.md) projects, typically .NET Core and .NET Standard projects, and to non-SDK-style projects that use PackageReference. @@ -184,4 +184,4 @@ You might also want to extend the capabilities of your package or otherwise supp Finally, there are additional package types to be aware of: - [Native Packages](../guides/native-packages.md) -- [Symbol Packages](../create-packages/symbol-packages-snupkg.md) \ No newline at end of file +- [Symbol Packages](../create-packages/symbol-packages-snupkg.md) From 7be8d4609e064d16984cdb5190ef6bb298879168 Mon Sep 17 00:00:00 2001 From: lyndaidaii <64443925+lyndaidaii@users.noreply.github.com> Date: Fri, 13 Aug 2021 15:55:53 -0700 Subject: [PATCH 432/988] update domain list (#2501) --- docs/nuget-org/package-readme-on-nuget-org.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/nuget-org/package-readme-on-nuget-org.md b/docs/nuget-org/package-readme-on-nuget-org.md index 06170b63f..158bd2ca9 100644 --- a/docs/nuget-org/package-readme-on-nuget-org.md +++ b/docs/nuget-org/package-readme-on-nuget-org.md @@ -55,6 +55,7 @@ NuGet.org allows all images, including badges, from the following trusted domain * bettercodehub.com * buildstats.info * camo.githubusercontent.com +* cdn.jsdelivr.net * ci.appveyor.com * circleci.com * codecov.io @@ -64,6 +65,7 @@ NuGet.org allows all images, including badges, from the following trusted domain * github.com/.../workflows/.../badge.svg * gitlab.com * img.shields.io +* i.imgur.com * isitmaintained.com * opencollective.com * raw.github.com From 962f11a8cd9a28b90cc3f99b08156cae2ecaa275 Mon Sep 17 00:00:00 2001 From: erdem Date: Mon, 16 Aug 2021 13:40:32 -0700 Subject: [PATCH 433/988] Release notes for 5.11 (#2504) --- docs/TOC.md | 1 + docs/concepts/Security-Best-Practices.md | 2 +- docs/release-notes/Index.md | 2 + docs/release-notes/NuGet-5.10.md | 4 +- docs/release-notes/NuGet-5.11.md | 48 ++++++++++++++++++++++++ 5 files changed, 53 insertions(+), 4 deletions(-) create mode 100644 docs/release-notes/NuGet-5.11.md diff --git a/docs/TOC.md b/docs/TOC.md index 85332bae9..7bafbb865 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -293,6 +293,7 @@ ## Release notes ### [Known Issues](release-notes/known-issues.md) ### NuGet 5.x +#### [NuGet 5.11](release-notes/NuGet-5.11.md) #### [NuGet 5.10](release-notes/NuGet-5.10.md) #### [NuGet 5.9](release-notes/NuGet-5.9.md) #### [NuGet 5.8](release-notes/NuGet-5.8.md) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 3db11969a..6f8bdee11 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -119,7 +119,7 @@ For more information about Dependabot alerts & security updates, [see the follow When using multiple public & private NuGet source feeds, a package can be downloaded from any of the feeds. To ensure your build is predictable and secure from known attacks such as [Dependency Confusion](https://medium.com/@alex.birsan/dependency-confusion-4a5d60fec610), knowing what specific feed(s) your packages are coming from is a best practice. You can use a single feed or private feed with upstreaming capabilities for protection. -For more information to secure your package feeds, see [3 Ways to Mitigate Risk When Using Private Package Feeds](https://azure.microsoft.com/en-us/resources/3-ways-to-mitigate-risk-using-private-package-feeds/). +For more information to secure your package feeds, see [3 Ways to Mitigate Risk When Using Private Package Feeds](https://azure.microsoft.com/resources/3-ways-to-mitigate-risk-using-private-package-feeds/). ### Client trust policies diff --git a/docs/release-notes/Index.md b/docs/release-notes/Index.md index bf8deedbf..5382edf3e 100644 --- a/docs/release-notes/Index.md +++ b/docs/release-notes/Index.md @@ -11,6 +11,8 @@ ms.topic: conceptual [Known Issues](../release-notes/known-issues.md) +[NuGet 5.11](../release-notes/NuGet-5.11.md) + [NuGet 5.10](../release-notes/NuGet-5.10.md) [NuGet 5.9](../release-notes/NuGet-5.9.md) diff --git a/docs/release-notes/NuGet-5.10.md b/docs/release-notes/NuGet-5.10.md index e9d312f4c..d8018de5b 100644 --- a/docs/release-notes/NuGet-5.10.md +++ b/docs/release-notes/NuGet-5.10.md @@ -34,7 +34,7 @@ NuGet distribution vehicles: ### Issues fixed in this release -* Suppress the element when packing a project - [#5133](https://github.com/NuGet/Home/issues/5133) +* Suppress the `` element when packing a project - [#5133](https://github.com/NuGet/Home/issues/5133) * [CPVM] preview warning should be shown on dotnet cli - [#10226](https://github.com/NuGet/Home/issues/10226) @@ -118,8 +118,6 @@ NuGet distribution vehicles: * Nuget blocks a threadpool thread in an async method making a synchronous call to the UI thread - [#10775](https://github.com/NuGet/Home/issues/10775) -* Tools -> Options -> NuGet Package Manager string is truncated - [#10779](https://github.com/NuGet/Home/issues/10779) - * `PackageLoadContext.GetInstalledAndTransitivePackagesAsync` is dead code and hurting performance - [#10790](https://github.com/NuGet/Home/issues/10790) * Use embedded icon in NuGet SDK packages - [#10795](https://github.com/NuGet/Home/issues/10795) diff --git a/docs/release-notes/NuGet-5.11.md b/docs/release-notes/NuGet-5.11.md new file mode 100644 index 000000000..a6aa5a591 --- /dev/null +++ b/docs/release-notes/NuGet-5.11.md @@ -0,0 +1,48 @@ +--- +title: NuGet 5.11 Release Notes +description: Release notes for NuGet 5.11 including new features, bug fixes, and DCRs. +author: erdembayar +ms.author: eryondon +ms.date: 8/10/2021 +ms.topic: conceptual +--- + +# NuGet 5.11 Release Notes + +NuGet distribution vehicles: + +| NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | +|:---|:---|:---| +| [**5.11.0**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.11](https://visualstudio.microsoft.com/downloads/) | [5.0.400](https://dotnet.microsoft.com/download/dotnet-core/5.0)1 | + +1 Installed with Visual Studio 2019 with .NET Core workload + +> [!NOTE] +> Visual Studio 16.11, MSBuild 16.11, and .NET 5.0.400+ requires NuGet.exe 5.11 or later. + +## Summary: What's New in 5.11 + +### Issues fixed in this release + +**Bugs:** + +* Tools -> Options -> NuGet Package Manager string is truncated - [#10779](https://github.com/NuGet/Home/issues/10779) + +* Hang when the PackagesMissingStatusChanged event is fired - [#10854](https://github.com/NuGet/Home/issues/10854) + +* The NuGet client ignores the NO_PROXY setting - [#10902](https://github.com/NuGet/Home/issues/10902) + +**[List of all issues fixed in this release - 5.11](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=Z2lkOi8vcmFwdG9yL1JlbGVhc2UvNTk5MDE)** + +**[List of commits in this release - 5.11](https://github.com/NuGet/NuGet.Client/compare/5.10.0.7240...5.11.0.17)** + +## Feedback welcome + +Your feedback is important to us. If there are any problems with this release, check our +[GitHub Issues](https://github.com/NuGet/Home/issues) and +[Visual Studio Developer Community](https://developercommunity.visualstudio.com/) +for existing issues. For new issues within NuGet, please report a +[GitHub Issue](https://github.com/NuGet/Home/issues/new). +For general NuGet experience issues, let us know via the +[Report a Problem](/visualstudio/ide/how-to-report-a-problem-with-visual-studio) +option found in your favorite IDE under **Help > Report a Problem**. From 94e47116a87a67e83ad213ce4bc6bcc73aad6d11 Mon Sep 17 00:00:00 2001 From: Ian Kemp Date: Tue, 17 Aug 2021 12:54:41 +0100 Subject: [PATCH 434/988] add detail about devops not supporting snupkg --- docs/create-packages/Symbol-Packages-snupkg.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/docs/create-packages/Symbol-Packages-snupkg.md b/docs/create-packages/Symbol-Packages-snupkg.md index 9212cd022..136dd7671 100644 --- a/docs/create-packages/Symbol-Packages-snupkg.md +++ b/docs/create-packages/Symbol-Packages-snupkg.md @@ -65,6 +65,9 @@ The [`SymbolPackageFormat`](/dotnet/core/tools/csproj#symbolpackageformat) prope ## Publishing a symbol package +> [!Note] +> [Azure Devops Artifacts](https://azure.microsoft.com/services/devops/artifacts) does not currently support debugging via `.snupkg` files. + 1. For convenience, first save your API key with NuGet (see [publish a package](../nuget-org/publish-a-package.md)). ```cli @@ -135,4 +138,4 @@ The symbol package (.snupkg) has the following characteristics: Consider using Source Link to enable source code debugging of .NET assemblies. For more information, please refer to the [Source Link guidance](/dotnet/standard/library-guidance/sourcelink). -For more information on symbol packages, please refer to the [NuGet Package Debugging & Symbols Improvements](https://github.com/NuGet/Home/wiki/NuGet-Package-Debugging-&-Symbols-Improvements) design spec. \ No newline at end of file +For more information on symbol packages, please refer to the [NuGet Package Debugging & Symbols Improvements](https://github.com/NuGet/Home/wiki/NuGet-Package-Debugging-&-Symbols-Improvements) design spec. From b5242a036bedbbf68da1701612b61f13e7ba359f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Sharma?= <737941+loic-sharma@users.noreply.github.com> Date: Tue, 17 Aug 2021 10:16:20 -0700 Subject: [PATCH 435/988] Document popularity transfers (#2490) Addresses: https://github.com/NuGet/NuGetGallery/issues/7943 --- docs/nuget-org/Deprecate-packages.md | 78 ++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) diff --git a/docs/nuget-org/Deprecate-packages.md b/docs/nuget-org/Deprecate-packages.md index efd8b6e23..c9189ce99 100644 --- a/docs/nuget-org/Deprecate-packages.md +++ b/docs/nuget-org/Deprecate-packages.md @@ -61,3 +61,81 @@ Project `My.Test.Project` has the following deprecated packages > My.Sample.Lib 6.0.0 Legacy My.Awesome.Package ``` + +## Transfer popularity to a newer package + +Package authors who have deprecated a legacy package can choose to transfer its "popularity" to a newer package to boost the newer package's search ranking. This helps customers discover the newer package instead of the deprecated package. + +For example, let's say I have two packages: + +* My deprecated legacy package, `Contoso.Legacy` with 3 million downloads +* My latest package, `Contoso.Latest` with 5 downloads + +NuGet.org prefers search results with higher downloads/popularity. Given the search query "Contoso", my deprecated package `Contoso.Legacy` would likely rank above my latest package `Contoso.Latest` in search results. + +To solve this problem, I can apply to transfer the popularity of my deprecated legacy package to my latest package. This would cause `Contoso.Latest` to rank higher in search results, while `Contoso.Legacy` would rank lower. Only the internal popularity scores for the packages is impacted, the actual download count for each package will not be affected. + +> [!Note] +> Popularity transfers can make it significantly harder for consumers to find the legacy package. + +See the table below to get a concrete idea of how a popularity transfer may impact search rankings for the query "Contoso": + +| Search ranking | Before popularity transfer | After popularity transfer | +|---------------- |-------------------------------- |-------------------------------- | +| 1 | *Contoso.Legacy, 3M downloads* | *Contoso.Latest, 5 downloads* | +| 2 | Contoso.Scanner, 2M downloads | Contoso.Scanner, 2M downloads | +| 3 | Contoso.Core, 1.5M downloads | Contoso.Core, 1.5M downloads | +| 4 | Contoso.UI, 1M downloads | Contoso.UI, 1M downloads | +| ... | ... | ... | +| 20 | *Contoso.Latest, 5 downloads* | *Contoso.Legacy, 3M downloads* | + +### Popularity transfer application process + +1. Review the [popularity transfer requirements](#popularity-transfer-requirements). +2. Email [account@nuget.org](mailto:account@nuget.org) with the deprecated package whose popularity should be transferred, and, the list of stable package(s) that should receive the popularity transfer. + +After the application is submitted, we will notify you of your application's acceptance or rejection (with the criteria that caused rejection). We may need to ask additional identifying questions to confirm owner identity. + +#### Popularity transfer requirements + +* The legacy packages and new packages must share all owners. +* The new packages must be clearly related to the legacy packages in naming and function (i.e. an evolution or next generation). +* All versions of the legacy packages must be deprecated and point to the new packages receiving the transfer. +* The popularity transfer must not cause confusion for NuGet users or worsen the NuGet search experience. +* The new packages must have a stable version. +* The legacy package must not receive popularity transfers from another deprecated package. + +### Advanced popularity transfer scenarios + +#### Package consolidations + +I can transfer the popularity of multiple deprecated packages in favor of a single new package. For example, let's say I have 3 packages: + +* My first deprecated legacy package, `Contoso.Legacy1` +* My second deprecated legacy package, `Contoso.Legacy2` +* My new consolidated package, `Contoso.Latest` + +After I deprecate `Contoso.Legacy1` and `Contoso.Legacy2`, I can apply to transfer their popularity to `Contoso.Latest`. + +#### Package splits + +A deprecated package's popularity can be transferred to, and divided among, up to 5 newer packages. This is useful if the functionality of a deprecated package has been split among multiple new packages. For example, let's say I have 3 packages: + +* My deprecated legacy package, `Contoso.Legacy` +* My first new package, `Contoso.Web` +* My second new package, `Contoso.Cloud` + +`Contoso.Legacy` includes both web and cloud functionality, but I decided to separate that functionality into different packages for the next generation. After I deprecate `Contoso.Legacy`, I can apply to transfer its popularity to both `Contoso.Web` and `Contoso.Cloud`. + +> [!Warning] +> The transferred popularity will be split evenly between all new packages. As a result, we recommend transferring your deprecated package's popularity to as few packages as possible. + +#### Popularity transfer chains + +A deprecated package cannot transfer its popularity if it is already receiving popularity from another deprecated package. For example, say I have 3 packages: + +* My deprecated legacy package, `Contoso.First` +* My deprecated legacy package, `Contoso.Second` +* My new package, `Contoso.Latest` + +If `Contoso.First` transfers its popularity to `Contoso.Second,` then `Contoso.Second` cannot transfer its popularity to `Contoso.Latest`. Instead, we recommend transferring the popularity of both `Contoso.First` and `Contoso.Second` to `Contoso.Latest`, as per the [Package consolidations](#package-consolidations) scenario. From 73356395c0aa3176f46090146edf34a0060b4903 Mon Sep 17 00:00:00 2001 From: cabadam Date: Sun, 22 Aug 2021 20:58:44 -0500 Subject: [PATCH 436/988] Add missing "=true" to RestoreUseStaticGraphEvaluation Without this "=true", msbuild throws an error: MSBUILD : error MSB1006: Property is not valid. Switch: RestoreUseStaticGraphEvaluation --- docs/reference/msbuild-targets.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index 9bde46d8b..b09283809 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -527,7 +527,7 @@ In very few scenarios, static graph restore may behave differently from current To ease your mind, as a one time check, when migrating to static graph restore, consider running: ```cli -msbuild.exe -t:restore -p:RestoreUseStaticGraphEvaluation +msbuild.exe -t:restore -p:RestoreUseStaticGraphEvaluation=true msbuild.exe -t:restore ``` From f637a3f691448c86bdc588eeeb13e7cfb182f5af Mon Sep 17 00:00:00 2001 From: Anand Gaurav Date: Mon, 23 Aug 2021 15:38:09 -0700 Subject: [PATCH 437/988] Update migrate-packages-config-to-package-reference.md (#2517) --- .../migrate-packages-config-to-package-reference.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/migrate-packages-config-to-package-reference.md b/docs/consume-packages/migrate-packages-config-to-package-reference.md index e5ebec71e..0e43ff4b2 100644 --- a/docs/consume-packages/migrate-packages-config-to-package-reference.md +++ b/docs/consume-packages/migrate-packages-config-to-package-reference.md @@ -17,7 +17,7 @@ Visual Studio 2017 Version 15.7 and later supports migrating a project from the * **Uncluttered view of top-level dependencies**: Unlike packages.config, PackageReference lists only those NuGet packages you directly installed in the project. As a result, the NuGet Package Manager UI and the project file aren't cluttered with down-level dependencies. * **Performance improvements**: When using PackageReference, packages are maintained in the *global-packages* folder (as described on [Managing the global packages and cache folders](../consume-packages/managing-the-global-packages-and-cache-folders.md) rather than in a `packages` folder within the solution. As a result, PackageReference performs faster and consumes less disk space. * **Fine control over dependencies and content flow**: Using the existing features of MSBuild allows you to [conditionally reference a NuGet package](../consume-packages/Package-References-in-Project-Files.md#adding-a-packagereference-condition) and choose package references per target framework, configuration, platform, or other pivots. -* **PackageReference is under active development**: See [PackageReference issues on GitHub](https://aka.ms/nuget-pr-improvements). packages.config is no longer under active development. + ### Limitations From 6d7a218d2676b243faa9a0bb688b2073d5619bc6 Mon Sep 17 00:00:00 2001 From: Alexander Date: Tue, 24 Aug 2021 14:31:08 +0200 Subject: [PATCH 438/988] Add GitLab to list of NuGet hosting products --- docs/hosting-packages/Overview.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/hosting-packages/Overview.md b/docs/hosting-packages/Overview.md index 3671910cf..6450b7eda 100644 --- a/docs/hosting-packages/Overview.md +++ b/docs/hosting-packages/Overview.md @@ -25,6 +25,7 @@ There are also several other NuGet hosting products such as [Azure Artifacts](ht - [BaGet](https://github.com/loic-sharma/BaGet), an open-source implementation of NuGet V3 server built on ASP.NET Core - [Cloudsmith](https://cloudsmith.io/l/nuget-feed/), a fully managed package management SaaS - [GitHub package registry](https://help.github.com/articles/configuring-nuget-for-use-with-github-package-registry) +- [GitLab Package Registry](https://docs.gitlab.com/ee/user/packages/nuget_repository/) - [LiGet](https://github.com/ai-traders/liget), an open-source implementation of NuGet V2 server that runs on kestrel in docker - [MyGet](https://myget.org) - [Nexus Repository OSS](https://www.sonatype.com/nexus-repository-oss) from Sonatype. From 9e1f0b6035dd06c3681c00f1d110faa2ce41d741 Mon Sep 17 00:00:00 2001 From: Tim Barnett Date: Fri, 27 Aug 2021 08:16:13 +0200 Subject: [PATCH 439/988] Quick grammar fixes Changed "this constraints" to "this constraint" when talking about the constraint on nuget.org to not be able to delete packages. Changed "enabling lock file" to "enabling the lock file". --- docs/consume-packages/Package-References-in-Project-Files.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/consume-packages/Package-References-in-Project-Files.md b/docs/consume-packages/Package-References-in-Project-Files.md index fc8c2ecf0..8205c6bac 100644 --- a/docs/consume-packages/Package-References-in-Project-Files.md +++ b/docs/consume-packages/Package-References-in-Project-Files.md @@ -310,9 +310,9 @@ Input to NuGet restore is a set of Package References from the project file (top * Day 2: Version 4.0.0 gets published. NuGet will now find the exact match and start resolving to 4.0.0 -* A given package version is removed from the repository. Though nuget.org does not allow package deletions, not all package repositories have this constraints. This results in NuGet finding the best match when it cannot resolve to the deleted version. +* A given package version is removed from the repository. Though nuget.org does not allow package deletions, not all package repositories have this constraint. This results in NuGet finding the best match when it cannot resolve to the deleted version. -### Enabling lock file +### Enabling the lock file In order to persist the full closure of package dependencies you can opt-in to the lock file feature by setting the MSBuild property `RestorePackagesWithLockFile` for your project: From 451918316cdeb119ff1014902791632ccaf6e16f Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 3 Sep 2021 10:31:04 -0700 Subject: [PATCH 440/988] Package Reference projects do not support reinstall (#2520) --- docs/consume-packages/Reinstalling-and-Updating-Packages.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/consume-packages/Reinstalling-and-Updating-Packages.md b/docs/consume-packages/Reinstalling-and-Updating-Packages.md index d6a7c46a1..5ce680cff 100644 --- a/docs/consume-packages/Reinstalling-and-Updating-Packages.md +++ b/docs/consume-packages/Reinstalling-and-Updating-Packages.md @@ -9,6 +9,9 @@ ms.topic: conceptual # How to reinstall and update packages +> [!NOTE] +> The following section applies to [packages.config](../reference/packages-config.md) based projects only. [PackageReference](../consume-packages/Package-References-in-Project-Files.md) projects automatically fix broken references when restore is run. + There are a number of situations, described below under [When to Reinstall a Package](#when-to-reinstall-a-package), where references to a package might get broken within a Visual Studio project. In these cases, uninstalling and then reinstalling the same version of the package will restore those references to working order. Updating a package simply means installing an updated version, which often restores a package to working order. In Visual Studio, the Package Manager Console provides many flexible options for updating and reinstalling packages. From 08075b04732de37cbe2d1f9a7b8b9c94dbef1999 Mon Sep 17 00:00:00 2001 From: Genevieve Warren <24882762+gewarren@users.noreply.github.com> Date: Mon, 20 Sep 2021 10:39:10 -0700 Subject: [PATCH 441/988] Fix up version entries, remove unnecessary sentence (#2523) --- docs/reference/msbuild-targets.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index 9bde46d8b..efa0be2c1 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -3,7 +3,7 @@ title: NuGet pack and restore as MSBuild targets description: NuGet pack and restore can work directly as MSBuild targets with NuGet 4.0+. author: nkolev92 ms.author: nikolev -ms.date: 03/23/2018 +ms.date: 09/02/2021 ms.topic: conceptual no-loc: [NuGet, MSBuild, .nuspec, nuspec] --- @@ -46,9 +46,9 @@ The following table describes the MSBuild properties that can be added to a proj | Attribute/nuspec Value | MSBuild Property | Default | Notes | |--------|--------|--------|--------| | `Id` | `PackageId` | `$(AssemblyName)` | `$(AssemblyName)` from MSBuild | -| `Version` | `PackageVersion` | Version | This is semver compatible, for example `1.0.0`, `1.0.0-beta`, or `1.0.0-beta-00345` | -| `VersionPrefix` | `PackageVersionPrefix` | empty | Setting `PackageVersion` overwrites `PackageVersionPrefix` | -| `VersionSuffix` | `PackageVersionSuffix` | empty | `$(VersionSuffix)` from MSBuild. Setting `PackageVersion` overwrites `PackageVersionSuffix` | +| `Version` | `PackageVersion` | Version | This is semver compatible, for example `1.0.0`, `1.0.0-beta`, or `1.0.0-beta-00345`. Defaults to `Version` if not set. | +| `VersionPrefix` | `VersionPrefix` | empty | Setting `PackageVersion` overwrites `VersionPrefix` | +| `VersionSuffix` | `VersionSuffix` | empty | Setting `PackageVersion` overwrites `VersionSuffix` | | `Authors` | `Authors` | Username of the current user | A semicolon-separated list of packages authors, matching the profile names on nuget.org. These are displayed in the NuGet Gallery on nuget.org and are used to cross-reference packages by the same authors. | | `Owners` | N/A | Not present in nuspec | | | `Title` | `Title` | The `PackageId` | A human-friendly title of the package, typically used in UI displays as on nuget.org and the Package Manager in Visual Studio. | From e639043a7ea6c4a28974b538fd515fd2d6c31ca7 Mon Sep 17 00:00:00 2001 From: Grzegorz Kotfis Date: Tue, 28 Sep 2021 09:53:59 +0200 Subject: [PATCH 442/988] Fix not escaped asterisk Spaces between `*` and `-` are invalid. Instead of: `1.1.* - *` should be: `1.1.*-*` Same for `* - *`, should be: `*-*` Message from `dotnet restore` command: ```bash dotnet\sdk\5.0.300\NuGet.targets(131,5): error : '* - *' is not a valid version string ``` --- docs/concepts/Package-Versioning.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/concepts/Package-Versioning.md b/docs/concepts/Package-Versioning.md index 3a965e322..1612f25b3 100644 --- a/docs/concepts/Package-Versioning.md +++ b/docs/concepts/Package-Versioning.md @@ -160,8 +160,8 @@ Always specify a version or version range for package dependencies in project fi |----------|--------------|-------------|-------------|-------------| | * | 1.1.0
    1.1.1
    1.2.0
    1.3.0-alpha | 1.2.0 | The highest stable version. | | 1.1.* | 1.1.0
    1.1.1
    1.1.2-alpha
    1.2.0-alpha | 1.1.1 | The highest stable version that respects the specified pattern.| -| * - * | 1.1.0
    1.1.1
    1.1.2-alpha
    1.3.0-beta | 1.3.0-beta | The highest version including the not stable versions. | Available in Visual Studio version 16.6, NuGet version 5.6, .NET Core SDK version 3.1.300 | -| 1.1.* - * | 1.1.0
    1.1.1
    1.1.2-alpha
    1.1.2-beta
    1.3.0-beta | 1.1.2-beta | The highest version respecting the pattern and including the not stable versions. | Available in Visual Studio version 16.6, NuGet version 5.6, .NET Core SDK version 3.1.300 | +| \*-\* | 1.1.0
    1.1.1
    1.1.2-alpha
    1.3.0-beta | 1.3.0-beta | The highest version including the not stable versions. | Available in Visual Studio version 16.6, NuGet version 5.6, .NET Core SDK version 3.1.300 | +| 1.1.\*-\* | 1.1.0
    1.1.1
    1.1.2-alpha
    1.1.2-beta
    1.3.0-beta | 1.1.2-beta | The highest version respecting the pattern and including the not stable versions. | Available in Visual Studio version 16.6, NuGet version 5.6, .NET Core SDK version 3.1.300 | **References in `packages.config`:** From b4d585c3894e515503863a8f5f46265c940d2c6f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Sharma?= <737941+loic-sharma@users.noreply.github.com> Date: Mon, 4 Oct 2021 10:12:13 -0700 Subject: [PATCH 443/988] Add nuget.org's search API limits (#2442) We are introducing a new limit to nuget.org's `skip` parameter to prevent Azure Search throttling. This updates our docs accordingly. Part of: https://github.com/NuGet/Engineering/issues/3776 --- docs/api/search-query-service-resource.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/docs/api/search-query-service-resource.md b/docs/api/search-query-service-resource.md index 17cf2378c..c244e14e4 100644 --- a/docs/api/search-query-service-resource.md +++ b/docs/api/search-query-service-resource.md @@ -69,6 +69,9 @@ The `skip` parameter defaults to 0. The `take` parameter should be an integer greater than zero. The server implementation may impose a maximum value. +> [!Note] +> nuget.org limits the `skip` parameter to 3,000 and the `take` parameter to 1,000. + If `prerelease` is not provided, pre-release packages are excluded. The `semVerLevel` query parameter is used to opt-in to @@ -145,4 +148,4 @@ GET https://azuresearch-usnc.nuget.org/query?q=NuGet.Versioning&prerelease=false ### Sample response -[!code-JSON [search-result.json](./_data/search-result.json)] \ No newline at end of file +[!code-JSON [search-result.json](./_data/search-result.json)] From d187f3b10fdfdbc2c83d39b5dd699a72ebbf796f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kat=20March=C3=A1n?= Date: Thu, 7 Oct 2021 13:33:03 -0700 Subject: [PATCH 444/988] initial release note draft for 6.0 --- docs/TOC.md | 3 + docs/release-notes/Index.md | 2 + docs/release-notes/NuGet-6.0.md | 264 ++++++++++++++++++++++++++++++++ 3 files changed, 269 insertions(+) create mode 100644 docs/release-notes/NuGet-6.0.md diff --git a/docs/TOC.md b/docs/TOC.md index 7bafbb865..d2ba25ca2 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -292,6 +292,9 @@ ### [NuGet.org policies](nuget-org/policies/data-requests.md) ## Release notes ### [Known Issues](release-notes/known-issues.md) + +### NuGet 6.x +#### [NuGet 6.0](release-notes/NuGet-6.0.md) ### NuGet 5.x #### [NuGet 5.11](release-notes/NuGet-5.11.md) #### [NuGet 5.10](release-notes/NuGet-5.10.md) diff --git a/docs/release-notes/Index.md b/docs/release-notes/Index.md index 5382edf3e..54a2a5c8b 100644 --- a/docs/release-notes/Index.md +++ b/docs/release-notes/Index.md @@ -11,6 +11,8 @@ ms.topic: conceptual [Known Issues](../release-notes/known-issues.md) +[NuGet 6.0](../release-notes/NuGet-6.0.md) + [NuGet 5.11](../release-notes/NuGet-5.11.md) [NuGet 5.10](../release-notes/NuGet-5.10.md) diff --git a/docs/release-notes/NuGet-6.0.md b/docs/release-notes/NuGet-6.0.md new file mode 100644 index 000000000..be4a2fa50 --- /dev/null +++ b/docs/release-notes/NuGet-6.0.md @@ -0,0 +1,264 @@ +--- +title: NuGet 6.0 Release Notes +description: Release notes for NuGet 6.0 including new features, bug fixes, and DCRs. +author: zkat +ms.author: kmarchan +ms.date: 10/7/2021 +ms.topic: conceptual +--- + +# NuGet 6.0 Release Notes + +NuGet distribution vehicles: + +| NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | +|:---|:---|:---| +| [****](https://nuget.org/downloads) | [Visual Studio version ](https://visualstudio.microsoft.com/downloads/) | [](https://dotnet.microsoft.com/download/dotnet-core/)1 | + +1 Installed with Visual Studio with.NET Core workload + +## Summary: What's New in 6.0 + +* Add hook for excluding certain build output extensions from the nuget package - [#10690](https://github.com/NuGet/Home/issues/10690) + +* Implement new precedence for xamarin TFMs when using net6.0+ - [#10717](https://github.com/NuGet/Home/issues/10717) + +* Implement maccatalyst warning when "falling back" to xamarin.ios for net6.0+ projects - [#10718](https://github.com/NuGet/Home/issues/10718) + +* Add package namespaces support as part of the configuration - add a reading capability only - [#10725](https://github.com/NuGet/Home/issues/10725) + +* Package Namespaces: Account for package namespaces filtering in package downloading in PackageReference restore - [#10732](https://github.com/NuGet/Home/issues/10732) + +* Add namespaces filtering support in packages.config restore in nuget.exe and msbuild /t:restore - [#10737](https://github.com/NuGet/Home/issues/10737) + +* Add a contract for identifying a restore source, to help nuget better batch restores/branch switches. - [#10807](https://github.com/NuGet/Home/issues/10807) + +* Add support for net6.0-tizen and net6.0-android - [#10819](https://github.com/NuGet/Home/issues/10819) + +* Add namespaces filtering support for packages.config restore in Visual Studio - [#10823](https://github.com/NuGet/Home/issues/10823) + +* Add support for TfmSpecificDebugSymbolsFile to provide symbols in the inner build - [#10913](https://github.com/NuGet/Home/issues/10913) + +* Show warning icon in Installed tab if there are vulnerable packages installed - [#10982](https://github.com/NuGet/Home/issues/10982) + +* Show warning icon by package in list of packages if there is a vulnerability - [#10983](https://github.com/NuGet/Home/issues/10983) + +* Show package vulnerability details in the package details pane of the PMUI - [#10985](https://github.com/NuGet/Home/issues/10985) + +* Add Deprecation Links in Details page in PM UI - [#10996](https://github.com/NuGet/Home/issues/10996) + +* [Feature]: Make retry count and backoff behavior configurable for Nuget Clients - [#11027](https://github.com/NuGet/Home/issues/11027) + +* [Feature]: Address all the package installation rules for package namespaces work in PackageReference and PackageDownload scenarios. - [#11035](https://github.com/NuGet/Home/issues/11035) + +* [Feature]: Address all the package installation rules for package namespaces work in Packages Config style projects - [#11036](https://github.com/NuGet/Home/issues/11036) + +### Issues fixed in this release + +**DCRs:** + +* Consider removing the extensibility that allows other package managers to be shown as compatible - [#6623](https://github.com/NuGet/Home/issues/6623) + +* Stop using EmbedInteropTypes for NuGet's VS extenbility packages/assemblies - [#10892](https://github.com/NuGet/Home/issues/10892) + +* Project.nuget.g.targets should not prepend to MSBuildAllProjects in MSBuild 16 or later - [#10895](https://github.com/NuGet/Home/issues/10895) + +* Remove obsolete core APIs - [#10940](https://github.com/NuGet/Home/issues/10940) + +* Merge NuGet.SolutionRestoreManager.Interop into NuGet.VisualStudio - [#10957](https://github.com/NuGet/Home/issues/10957) + +* Remove RuntimeEnvironmentHelper.IsDev14 - [#11000](https://github.com/NuGet/Home/issues/11000) + +* Update Newtonsoft.Json to 13.0.1 - [#11095](https://github.com/NuGet/Home/issues/11095) + +* [DCR]: Rename packageNamespaces feature to packageSourceMapping - [#11205](https://github.com/NuGet/Home/issues/11205) + +**Bugs:** + +* Installing with package save mode "nuspec" always reinstalls - [#2402](https://github.com/NuGet/Home/issues/2402) + +* Update-Package -reinstall -ProjectName does not work for PR - [#6088](https://github.com/NuGet/Home/issues/6088) + +* "An item with the same key has already been added" - when project graph has projectName == packageRef name (of same version) - [#6795](https://github.com/NuGet/Home/issues/6795) + +* [Test Failure] Suggest removing the second duplicated string “License Acceptance” in “License Acceptance” dialog - [#8162](https://github.com/NuGet/Home/issues/8162) + +* Can't remove config key using nuget.exe - [#8223](https://github.com/NuGet/Home/issues/8223) + +* msbuild /t:Restore and Visual Studio produce different assets files when assembly name != project name - [#8272](https://github.com/NuGet/Home/issues/8272) + +* PM UI does not humanize the download count when 999,500 <= count <=999,999 - [#8800](https://github.com/NuGet/Home/issues/8800) + +* Roslyn Analyzer suggestion "install with package manager" opens NuGet to wrong tab - [#10124](https://github.com/NuGet/Home/issues/10124) + +* StaticGraph Restore should clearly call out when a project is not `KnownToBeMSBuildFormat` When Called via a Solution File - [#10363](https://github.com/NuGet/Home/issues/10363) + +* The "nuget spec" command generates a .nuspec file with an iconUrl - [#10400](https://github.com/NuGet/Home/issues/10400) + +* Rfc3161TimestampTokenInfo.GetNonce can throw - [#10484](https://github.com/NuGet/Home/issues/10484) + +* Verify command is not disabled on Mono - [#10585](https://github.com/NuGet/Home/issues/10585) + +* The CreateLockFileTargetLibrary method slows down the restore operation - [#10614](https://github.com/NuGet/Home/issues/10614) + +* PackageArchieveReader doesn't override CopyNupkgAsync so package extraction fails - [#10708](https://github.com/NuGet/Home/issues/10708) + +* Propagate package namespaces information to the restore command - [#10736](https://github.com/NuGet/Home/issues/10736) + +* Ensure the namespaces filtering is respected in packages.config package installation/updates in PMUI - [#10738](https://github.com/NuGet/Home/issues/10738) + +* NuGet.Packaging.Extraction: exceptions from resources not found - [#10776](https://github.com/NuGet/Home/issues/10776) + +* Cannot use embeded PackageReadmeFile when using snupkg for symbols - [#10791](https://github.com/NuGet/Home/issues/10791) + +* Remove redundant UI delay switches in NuGet Project initialization - [#10824](https://github.com/NuGet/Home/issues/10824) + +* Remove unnecessary ToList enumerations in restore codepaths - [#10835](https://github.com/NuGet/Home/issues/10835) + +* Mark IVsPackageInstallerServices as deprecated - [#10836](https://github.com/NuGet/Home/issues/10836) + +* NuGet packages downloaded over 1 billion times show the wrong unit - [#10864](https://github.com/NuGet/Home/issues/10864) + +* Hard to see the background color of the number on the right of “Updates” and “Consolidate” tabs in the Dark theme - [#10896](https://github.com/NuGet/Home/issues/10896) + +* IVsProjectRestoreInfoSource improvements - [#10898](https://github.com/NuGet/Home/issues/10898) + +* packages.lock.json broken with Sdk-Style C# project targeting net5.0-windows - [#10901](https://github.com/NuGet/Home/issues/10901) + +* Add a default implementation for IVsSolutionRestoreService4 - [#10908](https://github.com/NuGet/Home/issues/10908) + +* [Responsiveness] Remove implicit RPC from background thread via unneeded GetServiceAsync extensions - [#10916](https://github.com/NuGet/Home/issues/10916) + +* Boxing of bool is to compute hashcode is causing excessive allocations - [#10917](https://github.com/NuGet/Home/issues/10917) + +* Iterating over Library Dependencies is causing over-allocation of Enumerators - [#10918](https://github.com/NuGet/Home/issues/10918) + +* Compatibility cache lookup allocates Func for each lookup - [#10919](https://github.com/NuGet/Home/issues/10919) + +* Overallocations of WhereListIterator in DependencyWalker.CreateGraphNode - [#10920](https://github.com/NuGet/Home/issues/10920) + +* Exception while restoring: "Restore metadata is mising the required target frameworks list" - [#10924](https://github.com/NuGet/Home/issues/10924) + +* Share a framework reducer across managed code conventions - [#10925](https://github.com/NuGet/Home/issues/10925) + +* NuGet VSIX is generated with incorrect binding redirects - [#10946](https://github.com/NuGet/Home/issues/10946) + +* NuGet Package Manager UI delays when running init scripts - [#10947](https://github.com/NuGet/Home/issues/10947) + +* Support sourceUri passed on nuget restore/install and dotnet restore package or other equivalent commands - [#10948](https://github.com/NuGet/Home/issues/10948) + +* Namespaces filtering support for the nuget.exe install command - [#10961](https://github.com/NuGet/Home/issues/10961) + +* Stop generating raw properties for every segment - [#10969](https://github.com/NuGet/Home/issues/10969) + +* Unexpected NU1605 from transitive reference that was never selected (pruned subgraph) - [#10972](https://github.com/NuGet/Home/issues/10972) + +* NuGet.Localization has no package icon - [#10975](https://github.com/NuGet/Home/issues/10975) + +* Avoid unnecessarily resizing dictionary while calculating project closure - [#10976](https://github.com/NuGet/Home/issues/10976) + +* Conflicting documentation on ISettings.AddOrUpdate - [#10980](https://github.com/NuGet/Home/issues/10980) + +* Use a pooled byte array when copying files and validating signatures - [#10988](https://github.com/NuGet/Home/issues/10988) + +* Avoid Task.WhenAny allocations in dependency walker - [#10989](https://github.com/NuGet/Home/issues/10989) + +* Ensure the namespaces filtering is respected in packages.config package installation/updates PMC - [#11001](https://github.com/NuGet/Home/issues/11001) + +* Ensure the namespaces filtering is respected in packages.config package installation/updates IVs installer API - [#11002](https://github.com/NuGet/Home/issues/11002) + +* [Bug]: PM UI shows 0 download count when selected package is already installed - [#11012](https://github.com/NuGet/Home/issues/11012) + +* Reduce allocations in VersionFormatter - [#11014](https://github.com/NuGet/Home/issues/11014) + +* Obsolete unused types: LibraryDependencyType and related - [#11015](https://github.com/NuGet/Home/issues/11015) + +* [Bug]: `nuget.exe install packages.config` does not honor `-PackageSaveMode nuspec` - [#11018](https://github.com/NuGet/Home/issues/11018) + +* [Bug]: `$(IsPackable)` is not quoted - [#11025](https://github.com/NuGet/Home/issues/11025) + +* Create Apex tests with multi source repositories for PMUI Package namespace filtering - [#11026](https://github.com/NuGet/Home/issues/11026) + +* [Bug]: [Accessibility] Hard to read links in PM UI search results using Light or Dark Theme - [#11055](https://github.com/NuGet/Home/issues/11055) + +* IVsSolutionRestoreService4 should extend IVsSolutionRestoreService3 - [#11098](https://github.com/NuGet/Home/issues/11098) + +* [Bug]: Advisory links should be aligned in details pane of PMUI - [#11101](https://github.com/NuGet/Home/issues/11101) + +* Tooltip of the installed vulnerable/deprecation package versions’ warning icon is not clear - [#11103](https://github.com/NuGet/Home/issues/11103) + +* [Responsiveness] RestoreOperationLogger+StatusBarProgress.Dispose blocking a thread pool thread waiting for UI thread - [#11115](https://github.com/NuGet/Home/issues/11115) + +* Add time since last restore metric - [#11124](https://github.com/NuGet/Home/issues/11124) + +* [Bug]: nuget.exe regression in handling of recursive entries between 5.9.1 and 5.10.0 - [#11125](https://github.com/NuGet/Home/issues/11125) + +* Await WhenNominated when a project has a pending nomination - [#11132](https://github.com/NuGet/Home/issues/11132) + +* Support sourceUri option passed on dotnet add package - [#11140](https://github.com/NuGet/Home/issues/11140) + +* [Bug]: VS PM UI does not display JPEG icons for packages - [#11144](https://github.com/NuGet/Home/issues/11144) + +* UIDelay: nuget.packagemanagement.visualstudio.dll!NuGet.PackageManagement.VisualStudio.VsCoreProjectSystemReferenceReader+d__ - CPS projects - [#11162](https://github.com/NuGet/Home/issues/11162) + +* [Bug]: `dotnet list package --outdated --interactive` makes credential provider invalidate cache for every package listed - [#11169](https://github.com/NuGet/Home/issues/11169) + +* [Bug]: Package namespaces for packages.config scenarios is using all the sources as fallback option when no matching namespaces are found for a package - [#11170](https://github.com/NuGet/Home/issues/11170) + +* Avoid MEF lookups on UI thread during NuGet projects initialization - [#11176](https://github.com/NuGet/Home/issues/11176) + +* [Bug]: Tooltip on the warning indicator image in the Installed tab no longer works - [#11183](https://github.com/NuGet/Home/issues/11183) + +* All ServiceLocator calls that retrieve MEF services should avoid the UI thread. - [#11201](https://github.com/NuGet/Home/issues/11201) + +* [Bug]: Telemetry event missing in Visual Studio - [#11206](https://github.com/NuGet/Home/issues/11206) + +* Avoid duplicate EnvDTEProjectUtility.IsSupportedAsync calls - [#11207](https://github.com/NuGet/Home/issues/11207) + +* Add IVsSolutionManager.GetSolutionDirectoryAsync - improve performance and stop blocking the calling thread in async codepaths. - [#11208](https://github.com/NuGet/Home/issues/11208) + +* Rename types/variables in the product/test code to reflect new name for package namespaces feature - [#11216](https://github.com/NuGet/Home/issues/11216) + +* [Bug]: ArPow build doesn't work well when in a subdirectory of an unrelated git repository - [#11227](https://github.com/NuGet/Home/issues/11227) + +**StillOpens:** + +* Clean up Package Spec redudant APIs - [#6231](https://github.com/NuGet/Home/issues/6231) + +* Remove project.json support - [#7199](https://github.com/NuGet/Home/issues/7199) + +* Deprecate and remove the old nuget.exe credential plugin model - [#7586](https://github.com/NuGet/Home/issues/7586) + +* Remove net40 support from NuGet.Framework - [#8416](https://github.com/NuGet/Home/issues/8416) + +* Remove .NET Framework TFM from NuGet.CommandLine.XPlat - [#8452](https://github.com/NuGet/Home/issues/8452) + +* Remove or improve configuration change events - [#8479](https://github.com/NuGet/Home/issues/8479) + +* Remove from public members parameter types that leak implementation details - [#9197](https://github.com/NuGet/Home/issues/9197) + +* Make static graph restore the default experience. - [#9803](https://github.com/NuGet/Home/issues/9803) + +* Allow to user to input custom (floating) versions through the PM UI - [#9829](https://github.com/NuGet/Home/issues/9829) + +* ``nuget.exe push *.nupkg`` doesn't push more than one file - [#10217](https://github.com/NuGet/Home/issues/10217) + +* Test PackageUpdateResource_SourceAndSymbolNuGetOrgPushingAsync is flaky - [#10706](https://github.com/NuGet/Home/issues/10706) + +* dotnet list package --vulnerable, --deprecated, --outdated does not work for transitive-only positives - [#10767](https://github.com/NuGet/Home/issues/10767) + +* [Feature]: Create More Consumable Library Interfaces (or SDK Documentation, or both!) - [#11142](https://github.com/NuGet/Home/issues/11142) + +* 9 signing tests failed on MacOS, as root certificate is removed from trusted store on MacOS - [#11178](https://github.com/NuGet/Home/issues/11178) + +**Nones:** + +* Clarify documentation guideline - do no include empty xml docs - [#10857](https://github.com/NuGet/Home/issues/10857) + +* Add telemetry for tracking vulnerable packages installed through PMUI - [#10986](https://github.com/NuGet/Home/issues/10986) + +* Document which VS extensibility APIs can be called from a background thread - [#11021](https://github.com/NuGet/Home/issues/11021) + +**[List of all issues fixed in this release - 6.0](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=Z2lkOi8vcmFwdG9yL1JlbGVhc2UvNDMwMDQ)** + +**[List of commits in this release - 6.0](https://github.com/NuGet/NuGet.Client/compare/5.11.0.17...6.0.0.262)** From 3dc074084fdf541003f8fce0cd4c91c0ed04ddfe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kat=20March=C3=A1n?= Date: Thu, 7 Oct 2021 16:10:34 -0700 Subject: [PATCH 445/988] fill in some bits I missed --- docs/release-notes/NuGet-6.0.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/release-notes/NuGet-6.0.md b/docs/release-notes/NuGet-6.0.md index be4a2fa50..cc2b9051b 100644 --- a/docs/release-notes/NuGet-6.0.md +++ b/docs/release-notes/NuGet-6.0.md @@ -13,9 +13,9 @@ NuGet distribution vehicles: | NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | |:---|:---|:---| -| [****](https://nuget.org/downloads) | [Visual Studio version ](https://visualstudio.microsoft.com/downloads/) | [](https://dotnet.microsoft.com/download/dotnet-core/)1 | +| [**6.0.0**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.0](https://visualstudio.microsoft.com/downloads/) | [6.0.0](https://dotnet.microsoft.com/download/dotnet-core/6.0)1 | -1 Installed with Visual Studio with.NET Core workload +1 Installed with Visual Studio 2022 with.NET Core workload ## Summary: What's New in 6.0 From 29d7af24291fa6ae68d8366fde832771e65ac52d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kat=20March=C3=A1n?= Date: Thu, 7 Oct 2021 16:24:31 -0700 Subject: [PATCH 446/988] fixing some warnings --- docs/release-notes/NuGet-6.0.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/release-notes/NuGet-6.0.md b/docs/release-notes/NuGet-6.0.md index cc2b9051b..270345074 100644 --- a/docs/release-notes/NuGet-6.0.md +++ b/docs/release-notes/NuGet-6.0.md @@ -77,7 +77,7 @@ NuGet distribution vehicles: * Installing with package save mode "nuspec" always reinstalls - [#2402](https://github.com/NuGet/Home/issues/2402) -* Update-Package -reinstall -ProjectName does not work for PR - [#6088](https://github.com/NuGet/Home/issues/6088) +* Update-Package -reinstall -ProjectName `` does not work for PR - [#6088](https://github.com/NuGet/Home/issues/6088) * "An item with the same key has already been added" - when project graph has projectName == packageRef name (of same version) - [#6795](https://github.com/NuGet/Home/issues/6795) @@ -191,7 +191,7 @@ NuGet distribution vehicles: * Add time since last restore metric - [#11124](https://github.com/NuGet/Home/issues/11124) -* [Bug]: nuget.exe regression in handling of recursive entries between 5.9.1 and 5.10.0 - [#11125](https://github.com/NuGet/Home/issues/11125) +* [Bug]: nuget.exe regression in handling of recursive `` entries between 5.9.1 and 5.10.0 - [#11125](https://github.com/NuGet/Home/issues/11125) * Await WhenNominated when a project has a pending nomination - [#11132](https://github.com/NuGet/Home/issues/11132) @@ -199,7 +199,7 @@ NuGet distribution vehicles: * [Bug]: VS PM UI does not display JPEG icons for packages - [#11144](https://github.com/NuGet/Home/issues/11144) -* UIDelay: nuget.packagemanagement.visualstudio.dll!NuGet.PackageManagement.VisualStudio.VsCoreProjectSystemReferenceReader+d__ - CPS projects - [#11162](https://github.com/NuGet/Home/issues/11162) +* UIDelay: `nuget.packagemanagement.visualstudio.dll!NuGet.PackageManagement.VisualStudio.VsCoreProjectSystemReferenceReader+d__` - CPS projects - [#11162](https://github.com/NuGet/Home/issues/11162) * [Bug]: `dotnet list package --outdated --interactive` makes credential provider invalidate cache for every package listed - [#11169](https://github.com/NuGet/Home/issues/11169) From 42240dba551c2063e5c8123c64c4ac0c58a86980 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Sharma?= <737941+loic-sharma@users.noreply.github.com> Date: Mon, 11 Oct 2021 12:07:46 -0700 Subject: [PATCH 447/988] Clarify missing data in package metadata resource (#2543) --- docs/api/registration-base-url-resource.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/docs/api/registration-base-url-resource.md b/docs/api/registration-base-url-resource.md index 1bf753365..b6136032e 100644 --- a/docs/api/registration-base-url-resource.md +++ b/docs/api/registration-base-url-resource.md @@ -15,7 +15,11 @@ metadata can be fetched using the `RegistrationsBaseUrl` resource found in the [ The collection of the documents found under `RegistrationsBaseUrl` are often called "registrations" or "registration blobs". The set of documents under a single `RegistrationsBaseUrl` is referred to as a "registration hive". A -registration hive contains all metadata about every package available on a package source. +registration hive contains metadata about every package available on a package source. + +> [!Note] +> The package metadata resource does not contain all metadata for packages. +> Use the [search resource](search-query-service-resource.md) to find packages' owners, downloads, or prefix reservation status. ## Versioning From 56be075517498fd4fffc9dc59c30b973fae5b4d4 Mon Sep 17 00:00:00 2001 From: Ken Dale Date: Wed, 13 Oct 2021 11:07:53 -0400 Subject: [PATCH 448/988] Add warning for keeping API keys a secret Add a Warning callout reminding users to keep API keys a secret. The text is derived from the image at https://devblogs.microsoft.com/nuget/nuget-api-key-expiration/#how-do-i-know-when-my-api-key-expires Also change the Important below to a callout and remove the "via the CLI" portion. --- The file edited (docs\quickstart\includes\publish-api-key.md) is currently used at the following locations: - docs\nuget-org\Publish-a-package.md - docs\nuget-org\scoped-api-keys.md - docs\quickstart\create-and-publish-a-package-using-the-dotnet-cli.md - docs\quickstart\create-and-publish-a-package-using-visual-studio-net-framework.md - docs\quickstart\create-and-publish-a-package-using-visual-studio.md --- docs/quickstart/includes/publish-api-key.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/docs/quickstart/includes/publish-api-key.md b/docs/quickstart/includes/publish-api-key.md index d47a1a179..53040b329 100644 --- a/docs/quickstart/includes/publish-api-key.md +++ b/docs/quickstart/includes/publish-api-key.md @@ -10,6 +10,10 @@ ![Copying the API key to the clipboard](../media/QS_Create-02-APIKey.png) -1. **Important**: Save your key in a secure location because you cannot copy the key again later on. If you return to the API key page, you need to regenerate the key to copy it. You can also remove the API key if you no longer want to push packages via the CLI. +> [!Warning] +> **Always keep your API key a secret!** If your key is accidentally revealed, you can always regenerate it at any time. + +> [!Important] +> Save your key in a secure location because you cannot copy the key again later on. If you return to the API key page, you need to regenerate the key to copy it. You can also remove the API key if you no longer want to push packages. Scoping allows you to create separate API keys for different purposes. Each key has its expiration timeframe and can be scoped to specific packages (or glob patterns). Each key is also scoped to specific operations: push of new packages and updates, push of updates only, or delisting. Through scoping, you can create API keys for different people who manage packages for your organization such that they have only the permissions they need. For more information, see [scoped API keys](../../nuget-org/scoped-api-keys.md). \ No newline at end of file From 8000d1337e3207310b8cd2b4eeb0b7a69c1248d8 Mon Sep 17 00:00:00 2001 From: Ken Dale Date: Wed, 13 Oct 2021 13:08:03 -0400 Subject: [PATCH 449/988] Commit suggestion MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Loïc Sharma <737941+loic-sharma@users.noreply.github.com> --- docs/quickstart/includes/publish-api-key.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/quickstart/includes/publish-api-key.md b/docs/quickstart/includes/publish-api-key.md index 53040b329..30c3fe668 100644 --- a/docs/quickstart/includes/publish-api-key.md +++ b/docs/quickstart/includes/publish-api-key.md @@ -11,7 +11,7 @@ ![Copying the API key to the clipboard](../media/QS_Create-02-APIKey.png) > [!Warning] -> **Always keep your API key a secret!** If your key is accidentally revealed, you can always regenerate it at any time. +> **Always keep your API key a secret!** Treat your API key as a password that allows anyone to manage packages on your behalf. You should delete or regenerate your API key if it is accidentally revealed. > [!Important] > Save your key in a secure location because you cannot copy the key again later on. If you return to the API key page, you need to regenerate the key to copy it. You can also remove the API key if you no longer want to push packages. From 2cc7d29bffba2c269e05cb14b94834cb1767ca95 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Wed, 13 Oct 2021 12:27:03 -0500 Subject: [PATCH 450/988] Add some feedback, note, & summary snippets. --- docs/release-notes/NuGet-6.0.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/docs/release-notes/NuGet-6.0.md b/docs/release-notes/NuGet-6.0.md index 270345074..07750ca54 100644 --- a/docs/release-notes/NuGet-6.0.md +++ b/docs/release-notes/NuGet-6.0.md @@ -17,8 +17,13 @@ NuGet distribution vehicles: 1 Installed with Visual Studio 2022 with.NET Core workload +> [!NOTE] +> Visual Studio 17.0, MSBuild 17.0, and .NET 6.0 require NuGet.exe 6.0 or later. + ## Summary: What's New in 6.0 +🎉 **This is the first release to offer full authoring and restoring support for NuGet packages targeting .NET 6.0** 🎉 + * Add hook for excluding certain build output extensions from the nuget package - [#10690](https://github.com/NuGet/Home/issues/10690) * Implement new precedence for xamarin TFMs when using net6.0+ - [#10717](https://github.com/NuGet/Home/issues/10717) @@ -262,3 +267,14 @@ NuGet distribution vehicles: **[List of all issues fixed in this release - 6.0](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=Z2lkOi8vcmFwdG9yL1JlbGVhc2UvNDMwMDQ)** **[List of commits in this release - 6.0](https://github.com/NuGet/NuGet.Client/compare/5.11.0.17...6.0.0.262)** + +## Feedback welcome + +Your feedback is important to us. If there are any problems with this release, check our +[GitHub Issues](https://github.com/NuGet/Home/issues) and +[Visual Studio Developer Community](https://developercommunity.visualstudio.com/) +for existing issues. For new issues within NuGet, please report a +[GitHub Issue](https://github.com/NuGet/Home/issues/new/choose). +For general NuGet experience issues, let us know via the +[Report a Problem](/visualstudio/ide/how-to-report-a-problem-with-visual-studio) +option found in your favorite IDE under **Help > Report a Problem**. From 81ec8b077c6eabce435655a77bcc035ebc27be05 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Thu, 14 Oct 2021 18:33:13 -0700 Subject: [PATCH 451/988] Mark initial areas where things need documented --- docs/concepts/Security-Best-Practices.md | 4 ++++ .../consume-packages/Package-Source-Mapping.md | 18 ++++++++++++++++++ ...ges.md => installing-signed-packages.md.md} | 0 docs/reference/nuget-config-file.md | 4 ++++ 4 files changed, 26 insertions(+) create mode 100644 docs/consume-packages/Package-Source-Mapping.md rename docs/consume-packages/{installing-signed-packages.md => installing-signed-packages.md.md} (100%) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 6f8bdee11..9f331c4c4 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -184,3 +184,7 @@ Your software supply chain is anything that goes into or affects your code. Even You learned about various methods that NuGet and [GitHub](/learn/modules/maintain-secure-repository-github/) provide that are available to you today to be more effective in viewing, managing, and monitoring your supply chain. For more information about securing the world's software, see [The State of the Octoverse 2020 Security Report](https://octoverse.github.com/static/github-octoverse-2020-security-report.pdf). + +==== + +Package Source Mapping might need an update here. \ No newline at end of file diff --git a/docs/consume-packages/Package-Source-Mapping.md b/docs/consume-packages/Package-Source-Mapping.md new file mode 100644 index 000000000..8dcf9565f --- /dev/null +++ b/docs/consume-packages/Package-Source-Mapping.md @@ -0,0 +1,18 @@ + +Should package source mapping be here? + +It should fall under `Configure NuGet` + +Talk about + +Motivation + +Configuration + +Setup. + +GlobalPackagesFolder details - retty much the blog. + +Things like lock files should probably be under configure nuget as well. + +Fix up the TOC. \ No newline at end of file diff --git a/docs/consume-packages/installing-signed-packages.md b/docs/consume-packages/installing-signed-packages.md.md similarity index 100% rename from docs/consume-packages/installing-signed-packages.md rename to docs/consume-packages/installing-signed-packages.md.md diff --git a/docs/reference/nuget-config-file.md b/docs/reference/nuget-config-file.md index e2b9e4a90..db2608a70 100644 --- a/docs/reference/nuget-config-file.md +++ b/docs/reference/nuget-config-file.md @@ -333,6 +333,10 @@ Sets the default package management format, either *packages.config* or PackageR ``` +## packageSourceMapping section + +TODO NK - Addd + ## Using environment variables You can use environment variables in `nuget.config` values (NuGet 3.4+) to apply settings at run time. From a98e4cd7cb2119b4bf6386396b7149ec0fd9f7c4 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 15 Oct 2021 16:09:12 -0700 Subject: [PATCH 452/988] Package Source mapping --- .../Package-Source-Mapping.md | 104 ++++++++++++++++-- 1 file changed, 95 insertions(+), 9 deletions(-) diff --git a/docs/consume-packages/Package-Source-Mapping.md b/docs/consume-packages/Package-Source-Mapping.md index 8dcf9565f..391703b6d 100644 --- a/docs/consume-packages/Package-Source-Mapping.md +++ b/docs/consume-packages/Package-Source-Mapping.md @@ -1,18 +1,104 @@ +--- +title: Package Source Mapping +description: Describes Describes the process of installing signed NuGet packages and configuring package signature trust settings. +author: nkolev92 +ms.author: nikolev +ms.date: 10/15/2021 +ms.topic: conceptual +--- -Should package source mapping be here? +# Package Source Mapping -It should fall under `Configure NuGet` +Safeguarding your software supply chain is crucial if you use a mix of public and private package sources. +Use Package Source Mapping along side other [best practices](..\concepts\Security-Best-Practices.md) to help you fortify your supply chain against attacks. -Talk about +Starting with [NuGet 6.0](..\release-notes\NuGet-6.0.md), you can centrally declare which source each package in your solution should restore from in your nuget.config file. -Motivation +The feature is available across all NuGet integrated tooling. -Configuration +* [Visual Studio 2022 preview 4 and later](https://visualstudio.microsoft.com/downloads/) +* [.NET SDK 6.0.100-rc.1 and later](https://dotnet.microsoft.com/download/dotnet/6.0) +* [nuget.exe 6.0.0-preview.4 and later](https://www.nuget.org/downloads) -Setup. +Older tooling will ignore the Package Source Mapping configuration. To use this feature, ensure all your build environments use compatible tooling versions. -GlobalPackagesFolder details - retty much the blog. +Package Source Mappings will apply to all project types – including .NET Framework – as long as compatible tooling is used. -Things like lock files should probably be under configure nuget as well. +## Enabling Package Source Mapping -Fix up the TOC. \ No newline at end of file +To opt into this feature, you must have a `nuget.config` file. Having a single `nuget.config` at the root of your repository is considered a best practice. See [nuget.config documentation](../reference/nuget-config-file) to learn more. + +Declare your desired package sources in your `nuget.config` file. Following your source declarations, add a `` element that specifies the desired mappings for each source. + +```xml + + + + + + + + + + + + + + + + + + + + +``` + +Package Source Mapping settings are applied following [nuget.config precedence rules](configuring-nuget-behavior#how-settings-are-applied) when multiple `nuget.config` files at various levels (machine-level, user-level, repo-level) are present. + +## Package Source Mapping rules + +For maximum flexibility and control, NuGet requires that all packages match a package pattern through a well defined precedence. + +### Package Pattern requirements + +All requested packages must map to one or more sources by matching a defined package pattern. In other words, once you have defined a `packageSourceMapping` element you must explicitly define which sources *every* package - *including transitive packages* - will be restored from. + +* Both top-level *and transitive* packages must match defined patterns. There is no requirement that a top level package and its dependencies come from the same source. +* The same ID pattern can be defined on multiple sources, allowing matching package IDs to be restored from any of the feeds that define the pattern. However, this isn't recommended due to the impact on restore predictability (a given package could come from multiple sources). This may be a valid configuration if you trust all respective sources. + +### Package Pattern Syntax + +| | Example syntax | Description | +|-|--------|---------|-------------| +| Package prefix pattern | `*`, `NuGet.*`, `NuGet.*` | Must end with a `*`, where `*` matches 0 or more characters. `*` is the shortest allowed prefix pattern and matches all packages ids. | +| Package ID pattern | `NuGet.Common`, `Contoso.Contracts` | Exact package ID. | + +### Package Pattern precedence + +When multiple unique patterns match a package ID, the most specific one will be preferred. Package ID patterns always have the highest precedence while the generic `*` always has the lowest precedence. For package prefix patterns, the longest has precedence. + +### Setting default sources + +The `*` pattern can be used to make a declare a de-facto default source - meaning any package that doesn't match other specified patterns will be restored from that source without throwing an error. +This configuration is advantageous if you primarily use packages from say, `nuget.org`, and only have a few internal packages, or use standard prefixes for all internal packages like `Contoso.*`. + +If your team doesn't use standard prefixes for internal package IDs or vets `nuget.org` packages prior to installation, then making a private source the default will suit your needs better. + +> **Important:** When the requested package already exists in the global packages folder, no source look-up will happen and the mappings will be ignored. Consider declaring a [global packages folder for your repo](../reference/nuget-config-file#config-section) to gain the full security benefits of this feature. Work to improve the experience with the default global packages folder in planned for a next iteration. + +### Get started + +Start by downloading the compatible tooling. + +To fully onboard your repository you may take the following steps: + +1. Declare a new [global packages folder for your repo](../reference/nuget-config-file#config-section). +1. Run [`dotnet list package --include-transitive`](/dotnet/core/tools/dotnet-list-package#synopsis) to view all top-level and transitive packages in your solution. + * For .NET framework projects using [`packages.config`](../reference/packages-config), the `packages.config` file will have a flat list of all direct and transitive packages. +1. Define mappings such that every package ID in your solution - *including transitive packages* - matches a pattern for the target source. +1. Run restore to validate that you have configured your mappings correctly. If your mappings don't fully cover every package ID in your solution, the error messages will help you identify the issue. +1. When restore succeeds, you are done! Optionally consider: + * simplifying the configuration to fewer declarations by using broader package ID prefixes or [setting a default source](#setting-default-sources) where possible. + * verifying the source each package was restored from by checking the [metadata files in the global packages folder or reviewing the restore logs](https://devblogs.microsoft.com/nuget/performance-and-polish-with-nuget-5-9/). + +For an idea of how your source mappings may look like, refer to our [samples repo](https://github.com/NuGet/Samples/tree/main/PackageSourceMappingExample). From d5abbb34f18dad9c66db4f879639d10850ae49bd Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 15 Oct 2021 16:32:23 -0700 Subject: [PATCH 453/988] Add examples --- docs/consume-packages/Package-Source-Mapping.md | 2 ++ .../media/Package-Pattern-Examples.png | Bin 0 -> 21283 bytes 2 files changed, 2 insertions(+) create mode 100644 docs/consume-packages/media/Package-Pattern-Examples.png diff --git a/docs/consume-packages/Package-Source-Mapping.md b/docs/consume-packages/Package-Source-Mapping.md index 391703b6d..abe37ef35 100644 --- a/docs/consume-packages/Package-Source-Mapping.md +++ b/docs/consume-packages/Package-Source-Mapping.md @@ -77,6 +77,8 @@ All requested packages must map to one or more sources by matching a defined pac When multiple unique patterns match a package ID, the most specific one will be preferred. Package ID patterns always have the highest precedence while the generic `*` always has the lowest precedence. For package prefix patterns, the longest has precedence. +![Package Pattern Precedence Examples](media/Package-Pattern-Examples.png) + ### Setting default sources The `*` pattern can be used to make a declare a de-facto default source - meaning any package that doesn't match other specified patterns will be restored from that source without throwing an error. diff --git a/docs/consume-packages/media/Package-Pattern-Examples.png b/docs/consume-packages/media/Package-Pattern-Examples.png new file mode 100644 index 0000000000000000000000000000000000000000..1ec39b17919f9935346d247a5ab08c70d105f40a GIT binary patch literal 21283 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 literal 0 HcmV?d00001 From 19ea1f8c39681db30277a8b2fd88abc34bbba9b7 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 15 Oct 2021 16:39:20 -0700 Subject: [PATCH 454/988] Use note instead --- docs/consume-packages/Package-Source-Mapping.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/consume-packages/Package-Source-Mapping.md b/docs/consume-packages/Package-Source-Mapping.md index abe37ef35..3a18bf94d 100644 --- a/docs/consume-packages/Package-Source-Mapping.md +++ b/docs/consume-packages/Package-Source-Mapping.md @@ -86,7 +86,8 @@ This configuration is advantageous if you primarily use packages from say, `nuge If your team doesn't use standard prefixes for internal package IDs or vets `nuget.org` packages prior to installation, then making a private source the default will suit your needs better. -> **Important:** When the requested package already exists in the global packages folder, no source look-up will happen and the mappings will be ignored. Consider declaring a [global packages folder for your repo](../reference/nuget-config-file#config-section) to gain the full security benefits of this feature. Work to improve the experience with the default global packages folder in planned for a next iteration. +> [!Note] +> When the requested package already exists in the global packages folder, no source look-up will happen and the mappings will be ignored. Consider declaring a [global packages folder for your repo](../reference/nuget-config-file#config-section) to gain the full security benefits of this feature. Work to improve the experience with the default global packages folder in planned for a next iteration. ### Get started From 39c1bc2ed5e5b2fbee713c761418ffff9d22a74d Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 15 Oct 2021 16:47:49 -0700 Subject: [PATCH 455/988] Add PackageSourceMapping to security best practices --- docs/concepts/Security-Best-Practices.md | 8 ++++++++ docs/consume-packages/Package-Source-Mapping.md | 2 -- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 9f331c4c4..42b2bddfa 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -137,6 +137,14 @@ Lock files store the hash of your package’s content. If the content hash of a To enable lock files, [see the following documentation](../consume-packages/package-references-in-project-files.md#locking-dependencies). +### Package Source mapping + +**📦 Package Consumer** + +Package Source Mapping allows you to centrally declare which source each package in your solution should restore from in your nuget.config file. + +To enable package source mapping, [see the following documentation](../consume-packages/package-source-mapping.md). + ## Monitor your supply chain ### GitHub secret scanning diff --git a/docs/consume-packages/Package-Source-Mapping.md b/docs/consume-packages/Package-Source-Mapping.md index 3a18bf94d..e9d5473e3 100644 --- a/docs/consume-packages/Package-Source-Mapping.md +++ b/docs/consume-packages/Package-Source-Mapping.md @@ -91,8 +91,6 @@ If your team doesn't use standard prefixes for internal package IDs or vets `nug ### Get started -Start by downloading the compatible tooling. - To fully onboard your repository you may take the following steps: 1. Declare a new [global packages folder for your repo](../reference/nuget-config-file#config-section). From f170a518dc7d9efdfd4c4365224ffd06bf57937c Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 15 Oct 2021 16:49:44 -0700 Subject: [PATCH 456/988] Add to TOC --- docs/TOC.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/TOC.md b/docs/TOC.md index 7bafbb865..5950aecba 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -20,6 +20,7 @@ ### Package restore options #### [Restore packages](consume-packages/package-restore.md) #### [Troubleshooting](consume-packages/package-restore-troubleshooting.md) +### [Package source mapping](consume-packages/package-source-mapping.md) ### [Reinstall and update packages](consume-packages/reinstalling-and-updating-packages.md) ### [Manage global packages and cache folders](consume-packages/managing-the-global-packages-and-cache-folders.md) ### [Manage package trust boundaries](consume-packages/installing-signed-packages.md) From b1c999b6613144f7c10f9acf010dfbdf211d4018 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 15 Oct 2021 16:53:21 -0700 Subject: [PATCH 457/988] Clenaup --- docs/concepts/Security-Best-Practices.md | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 42b2bddfa..d33fb5027 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -191,8 +191,4 @@ Your software supply chain is anything that goes into or affects your code. Even You learned about various methods that NuGet and [GitHub](/learn/modules/maintain-secure-repository-github/) provide that are available to you today to be more effective in viewing, managing, and monitoring your supply chain. -For more information about securing the world's software, see [The State of the Octoverse 2020 Security Report](https://octoverse.github.com/static/github-octoverse-2020-security-report.pdf). - -==== - -Package Source Mapping might need an update here. \ No newline at end of file +For more information about securing the world's software, see [The State of the Octoverse 2020 Security Report](https://octoverse.github.com/static/github-octoverse-2020-security-report.pdf). \ No newline at end of file From 7222d36b07ad92b549682f394d641d56ef39ed61 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 15 Oct 2021 16:54:08 -0700 Subject: [PATCH 458/988] Cleanup --- ...alling-signed-packages.md.md => installing-signed-packages.md} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename docs/consume-packages/{installing-signed-packages.md.md => installing-signed-packages.md} (100%) diff --git a/docs/consume-packages/installing-signed-packages.md.md b/docs/consume-packages/installing-signed-packages.md similarity index 100% rename from docs/consume-packages/installing-signed-packages.md.md rename to docs/consume-packages/installing-signed-packages.md From e17e686295e5674eda6f1516c4a98b99d884a292 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 15 Oct 2021 17:17:18 -0700 Subject: [PATCH 459/988] Add the syntax in nuget.config --- .../Package-Source-Mapping.md | 6 +++ docs/reference/nuget-config-file.md | 43 +++++++++++++++++-- 2 files changed, 45 insertions(+), 4 deletions(-) diff --git a/docs/consume-packages/Package-Source-Mapping.md b/docs/consume-packages/Package-Source-Mapping.md index e9d5473e3..200c963d4 100644 --- a/docs/consume-packages/Package-Source-Mapping.md +++ b/docs/consume-packages/Package-Source-Mapping.md @@ -103,3 +103,9 @@ To fully onboard your repository you may take the following steps: * verifying the source each package was restored from by checking the [metadata files in the global packages folder or reviewing the restore logs](https://devblogs.microsoft.com/nuget/performance-and-polish-with-nuget-5-9/). For an idea of how your source mappings may look like, refer to our [samples repo](https://github.com/NuGet/Samples/tree/main/PackageSourceMappingExample). + +### Disclaimer (TODO) + +* Add a big disclaimer that this is a feature actively in development. +* Add a disclaimer that only restore is support. +* There's no means of pinning through Visual Studio or at installation time, the configurations have to be managed manually. \ No newline at end of file diff --git a/docs/reference/nuget-config-file.md b/docs/reference/nuget-config-file.md index db2608a70..65c25b66b 100644 --- a/docs/reference/nuget-config-file.md +++ b/docs/reference/nuget-config-file.md @@ -97,7 +97,7 @@ Controls whether the `packages` folder of a solution is included in source contr ## Package source sections -The `packageSources`, `packageSourceCredentials`, `apikeys`, `activePackageSource`, `disabledPackageSources` and `trustedSigners` all work together to configure how NuGet works with package repositories during install, restore, and update operations. +The `packageSources`, `packageSourceCredentials`, `apikeys`, `activePackageSource`, `disabledPackageSources`, `trustedSigners` and `packageSourceMapping` all work together to configure how NuGet works with package repositories during install, restore, and update operations. The [`nuget sources` command](../reference/cli-reference/cli-ref-sources.md) is generally used to manage these settings, except for `apikeys` which is managed using the [`nuget setapikey` command](../reference/cli-reference/cli-ref-setapikey.md), and `trustedSigners` which is managed using the [`nuget trusted-signers` command](../reference/cli-reference/cli-ref-trusted-signers.md). @@ -315,6 +315,42 @@ If a match is not found, then NuGet checks file sources, and then http sources, ``` +## Package source mapping section + +The `packageSourceMapping` section contains the details that help the NuGet package operations determine where a package id should be downloaded from. + +This section can only be managed manually right now. + +A `packageSourceMapping` section can only contain `packageSource` sections. + +### packageSource + +A sub section of the [`packageSourceMapping`](#package-source-mapping-section) section. Contains a mapping to help NuGet determine whether the source should be considered for downloading the package of interest. + +| Key | +| --- | +| Name of a package source declared in the [`packageSources`](#packageSources) section. The key must exactly match the the key of the package source. | + +The `packageSource` sections under `packageSourceMapping` are uniquely identified by the `key`. + +### package + +The `package` is part of the [`packageSource`](#packageSource) section. + +| Pattern | +| --- | +| A pattern as defined by the [syntax](../consume-packages/package-source-mapping.md) of Package Source mapping. | + +**Example**: + +```xml + + + + + +``` + ## packageManagement section Sets the default package management format, either *packages.config* or PackageReference. SDK-style projects always use PackageReference. @@ -333,9 +369,8 @@ Sets the default package management format, either *packages.config* or PackageR ``` -## packageSourceMapping section - -TODO NK - Addd +> [!Tip] +> When `` is present for a given node, NuGet ignores previously defined configuration values for that node. [Read more about how settings are applied](../consume-packages/configuring-nuget-behavior.md#how-settings-are-applied). ## Using environment variables From b574285e5478bb99c8aee06827f3c64b90783273 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 15 Oct 2021 17:25:42 -0700 Subject: [PATCH 460/988] Cleanup --- docs/consume-packages/Package-Source-Mapping.md | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/docs/consume-packages/Package-Source-Mapping.md b/docs/consume-packages/Package-Source-Mapping.md index 200c963d4..80ec66144 100644 --- a/docs/consume-packages/Package-Source-Mapping.md +++ b/docs/consume-packages/Package-Source-Mapping.md @@ -91,6 +91,11 @@ If your team doesn't use standard prefixes for internal package IDs or vets `nug ### Get started +> [!Note] +> This feature is currently in active development. We appreciate you trying it out and providing any feedback you may have at [NuGet/Home](https://github.com/nuget/home/issues). +> There are no nuget.exe or dotnet.exe commands for managing the package source mapping configuration, see [NuGet/Home#10735](https://github.com/NuGet/Home/issues/10735). +> There are no means of mapping packages at package installation time, see [NuGet/Home#10730](https://github.com/NuGet/Home/issues/10730). + To fully onboard your repository you may take the following steps: 1. Declare a new [global packages folder for your repo](../reference/nuget-config-file#config-section). @@ -103,9 +108,3 @@ To fully onboard your repository you may take the following steps: * verifying the source each package was restored from by checking the [metadata files in the global packages folder or reviewing the restore logs](https://devblogs.microsoft.com/nuget/performance-and-polish-with-nuget-5-9/). For an idea of how your source mappings may look like, refer to our [samples repo](https://github.com/NuGet/Samples/tree/main/PackageSourceMappingExample). - -### Disclaimer (TODO) - -* Add a big disclaimer that this is a feature actively in development. -* Add a disclaimer that only restore is support. -* There's no means of pinning through Visual Studio or at installation time, the configurations have to be managed manually. \ No newline at end of file From 59ad15f2403f0d0502172837e138f104fda0bb96 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 15 Oct 2021 17:36:05 -0700 Subject: [PATCH 461/988] Fix links --- docs/consume-packages/Package-Source-Mapping.md | 12 ++++++------ docs/reference/nuget-config-file.md | 4 ++-- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/docs/consume-packages/Package-Source-Mapping.md b/docs/consume-packages/Package-Source-Mapping.md index 80ec66144..1b974df66 100644 --- a/docs/consume-packages/Package-Source-Mapping.md +++ b/docs/consume-packages/Package-Source-Mapping.md @@ -26,7 +26,7 @@ Package Source Mappings will apply to all project types – including .NET Frame ## Enabling Package Source Mapping -To opt into this feature, you must have a `nuget.config` file. Having a single `nuget.config` at the root of your repository is considered a best practice. See [nuget.config documentation](../reference/nuget-config-file) to learn more. +To opt into this feature, you must have a `nuget.config` file. Having a single `nuget.config` at the root of your repository is considered a best practice. See [nuget.config documentation](../reference/nuget-config-file.md) to learn more. Declare your desired package sources in your `nuget.config` file. Following your source declarations, add a `` element that specifies the desired mappings for each source. @@ -53,7 +53,7 @@ Declare your desired package sources in your `nuget.config` file. Following your ``` -Package Source Mapping settings are applied following [nuget.config precedence rules](configuring-nuget-behavior#how-settings-are-applied) when multiple `nuget.config` files at various levels (machine-level, user-level, repo-level) are present. +Package Source Mapping settings are applied following [nuget.config precedence rules](configuring-nuget-behavior.md#how-settings-are-applied) when multiple `nuget.config` files at various levels (machine-level, user-level, repo-level) are present. ## Package Source Mapping rules @@ -68,7 +68,7 @@ All requested packages must map to one or more sources by matching a defined pac ### Package Pattern Syntax -| | Example syntax | Description | +| Pattern | Example syntax | Description | |-|--------|---------|-------------| | Package prefix pattern | `*`, `NuGet.*`, `NuGet.*` | Must end with a `*`, where `*` matches 0 or more characters. `*` is the shortest allowed prefix pattern and matches all packages ids. | | Package ID pattern | `NuGet.Common`, `Contoso.Contracts` | Exact package ID. | @@ -87,7 +87,7 @@ This configuration is advantageous if you primarily use packages from say, `nuge If your team doesn't use standard prefixes for internal package IDs or vets `nuget.org` packages prior to installation, then making a private source the default will suit your needs better. > [!Note] -> When the requested package already exists in the global packages folder, no source look-up will happen and the mappings will be ignored. Consider declaring a [global packages folder for your repo](../reference/nuget-config-file#config-section) to gain the full security benefits of this feature. Work to improve the experience with the default global packages folder in planned for a next iteration. +> When the requested package already exists in the global packages folder, no source look-up will happen and the mappings will be ignored. Consider declaring a [global packages folder for your repo](../reference/nuget-config-file.md#config-section) to gain the full security benefits of this feature. Work to improve the experience with the default global packages folder in planned for a next iteration. ### Get started @@ -98,9 +98,9 @@ If your team doesn't use standard prefixes for internal package IDs or vets `nug To fully onboard your repository you may take the following steps: -1. Declare a new [global packages folder for your repo](../reference/nuget-config-file#config-section). +1. Declare a new [global packages folder for your repo](../reference/nuget-config-file.md#config-section). 1. Run [`dotnet list package --include-transitive`](/dotnet/core/tools/dotnet-list-package#synopsis) to view all top-level and transitive packages in your solution. - * For .NET framework projects using [`packages.config`](../reference/packages-config), the `packages.config` file will have a flat list of all direct and transitive packages. + * For .NET framework projects using [`packages.config`](../reference/packages-config.md), the `packages.config` file will have a flat list of all direct and transitive packages. 1. Define mappings such that every package ID in your solution - *including transitive packages* - matches a pattern for the target source. 1. Run restore to validate that you have configured your mappings correctly. If your mappings don't fully cover every package ID in your solution, the error messages will help you identify the issue. 1. When restore succeeds, you are done! Optionally consider: diff --git a/docs/reference/nuget-config-file.md b/docs/reference/nuget-config-file.md index 65c25b66b..aabc82aba 100644 --- a/docs/reference/nuget-config-file.md +++ b/docs/reference/nuget-config-file.md @@ -329,13 +329,13 @@ A sub section of the [`packageSourceMapping`](#package-source-mapping-section) s | Key | | --- | -| Name of a package source declared in the [`packageSources`](#packageSources) section. The key must exactly match the the key of the package source. | +| Name of a package source declared in the [`packageSources`](#packagesources) section. The key must exactly match the the key of the package source. | The `packageSource` sections under `packageSourceMapping` are uniquely identified by the `key`. ### package -The `package` is part of the [`packageSource`](#packageSource) section. +The `package` is part of the [`packageSource`](#packagesource) section. | Pattern | | --- | From 4aefae9642f3314dd0d4808ee6db9eab9f4526c3 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 15 Oct 2021 17:38:16 -0700 Subject: [PATCH 462/988] Add a better png --- .../media/Package-Pattern-Examples.png | Bin 21283 -> 21304 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/consume-packages/media/Package-Pattern-Examples.png b/docs/consume-packages/media/Package-Pattern-Examples.png index 1ec39b17919f9935346d247a5ab08c70d105f40a..bfac6f3a249aa921f12f31f3281676c47c86837a 100644 GIT binary patch literal 21304 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 From d94f649516e5ee6ee3c3c351b62b162168418e2f Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 15 Oct 2021 17:38:46 -0700 Subject: [PATCH 463/988] cleanup --- docs/consume-packages/Package-Source-Mapping.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Package-Source-Mapping.md b/docs/consume-packages/Package-Source-Mapping.md index 1b974df66..162dc29d9 100644 --- a/docs/consume-packages/Package-Source-Mapping.md +++ b/docs/consume-packages/Package-Source-Mapping.md @@ -92,7 +92,7 @@ If your team doesn't use standard prefixes for internal package IDs or vets `nug ### Get started > [!Note] -> This feature is currently in active development. We appreciate you trying it out and providing any feedback you may have at [NuGet/Home](https://github.com/nuget/home/issues). +> This feature is in active development. We appreciate you trying it out and providing any feedback you may have at [NuGet/Home](https://github.com/nuget/home/issues). > There are no nuget.exe or dotnet.exe commands for managing the package source mapping configuration, see [NuGet/Home#10735](https://github.com/NuGet/Home/issues/10735). > There are no means of mapping packages at package installation time, see [NuGet/Home#10730](https://github.com/NuGet/Home/issues/10730). From 0c20b98683a149c3a6dde7ccace9d85f6cd547d1 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 15 Oct 2021 17:43:53 -0700 Subject: [PATCH 464/988] Add source mapping in the conceptual package installation doc --- docs/concepts/package-installation-process.md | 2 +- docs/consume-packages/Package-Source-Mapping.md | 13 ++++++++----- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/docs/concepts/package-installation-process.md b/docs/concepts/package-installation-process.md index 0ad246c66..e72f9bb70 100644 --- a/docs/concepts/package-installation-process.md +++ b/docs/concepts/package-installation-process.md @@ -20,7 +20,7 @@ The general process is as follows: 2. Acquire the package: - Check if the package (by exact identifer and version number) is already installed in the *global-packages* folder as described on [Managing the global packages and cache folders](../consume-packages/managing-the-global-packages-and-cache-folders.md). - - If the package is not in the *global-packages* folder, attempt to retrieve it from the sources listed in the [configuration files](../consume-packages/Configuring-NuGet-Behavior.md). For online sources, attempt first to retrieve the package from the HTTP cache unless `-NoCache` is specified with `nuget.exe` commands or `--no-cache` is specified with `dotnet restore`. (Visual Studio and `dotnet add package` always use the cache.) If a package is used from the cache, "CACHE" appears in the output. The cache has an expiration time of 30 minutes. + - If the package is not in the *global-packages* folder, attempt to retrieve it from the sources listed in the [configuration files](../consume-packages/Configuring-NuGet-Behavior.md). [Package Source Mapping](../consume-packages/package-source-mapping.md) configurations are applied at this point. For online sources, attempt first to retrieve the package from the HTTP cache unless `-NoCache` is specified with `nuget.exe` commands or `--no-cache` is specified with `dotnet restore`. (Visual Studio and `dotnet add package` always use the cache.) If a package is used from the cache, "CACHE" appears in the output. The cache has an expiration time of 30 minutes. - If the package has been specified using a [floating version](../consume-packages/Package-References-in-Project-Files.md#floating-versions), or without a minimum version, NuGet *will* contact all sources to figure out the best match. Example: `1.*`, `(, 2.0.0]`. diff --git a/docs/consume-packages/Package-Source-Mapping.md b/docs/consume-packages/Package-Source-Mapping.md index 162dc29d9..ab0f20117 100644 --- a/docs/consume-packages/Package-Source-Mapping.md +++ b/docs/consume-packages/Package-Source-Mapping.md @@ -88,14 +88,10 @@ If your team doesn't use standard prefixes for internal package IDs or vets `nug > [!Note] > When the requested package already exists in the global packages folder, no source look-up will happen and the mappings will be ignored. Consider declaring a [global packages folder for your repo](../reference/nuget-config-file.md#config-section) to gain the full security benefits of this feature. Work to improve the experience with the default global packages folder in planned for a next iteration. +To learn more about how package installation works, see [the conceptual document.](../concepts/package-installation-process.md) ### Get started -> [!Note] -> This feature is in active development. We appreciate you trying it out and providing any feedback you may have at [NuGet/Home](https://github.com/nuget/home/issues). -> There are no nuget.exe or dotnet.exe commands for managing the package source mapping configuration, see [NuGet/Home#10735](https://github.com/NuGet/Home/issues/10735). -> There are no means of mapping packages at package installation time, see [NuGet/Home#10730](https://github.com/NuGet/Home/issues/10730). - To fully onboard your repository you may take the following steps: 1. Declare a new [global packages folder for your repo](../reference/nuget-config-file.md#config-section). @@ -108,3 +104,10 @@ To fully onboard your repository you may take the following steps: * verifying the source each package was restored from by checking the [metadata files in the global packages folder or reviewing the restore logs](https://devblogs.microsoft.com/nuget/performance-and-polish-with-nuget-5-9/). For an idea of how your source mappings may look like, refer to our [samples repo](https://github.com/NuGet/Samples/tree/main/PackageSourceMappingExample). + + +> [!Note] +> This feature is in active development. We appreciate you trying it out and providing any feedback you may have at [NuGet/Home](https://github.com/nuget/home/issues). +> +> * There are no nuget.exe or dotnet.exe commands for managing the package source mapping configuration, see [NuGet/Home#10735](https://github.com/NuGet/Home/issues/10735). +> * There are no means of mapping packages at package installation time, see [NuGet/Home#10730](https://github.com/NuGet/Home/issues/10730). \ No newline at end of file From ed1634d14b38a6b5ab7015f190379f2b6b6b1752 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Sharma?= <737941+loic-sharma@users.noreply.github.com> Date: Fri, 22 Oct 2021 21:27:55 -0700 Subject: [PATCH 465/988] Fix copy paste error --- docs/api/package-base-address-resource.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/api/package-base-address-resource.md b/docs/api/package-base-address-resource.md index d3bf8e43d..56bdc55b0 100644 --- a/docs/api/package-base-address-resource.md +++ b/docs/api/package-base-address-resource.md @@ -32,7 +32,7 @@ resource `@type` value. In the following document, the placeholder base URL `{@i ## HTTP methods -All URLs found in the registration resource support the HTTP methods `GET` and `HEAD`. +All URLs found in the package content resource support the HTTP methods `GET` and `HEAD`. ## Enumerate package versions From e7868039376136d377a1df5fb9d8e044bf187fb9 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Tue, 26 Oct 2021 13:43:36 -0700 Subject: [PATCH 466/988] Make PackageReference string searchable (#2547) * Make PackageReference string searchable * Update package reference terminology here. Co-authored-by: Jon Douglas --- docs/TOC.md | 2 +- .../consume-packages/Package-References-in-Project-Files.md | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/TOC.md b/docs/TOC.md index 7bafbb865..6a9c52d21 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -27,7 +27,7 @@ ### [Work with source control systems](consume-packages/packages-and-source-control.md) ### [Common NuGet configurations](consume-packages/configuring-nuget-behavior.md) ## Reference packages in your project -### [Package references in project files](consume-packages/package-references-in-project-files.md) +### [PackageReference in project files](consume-packages/package-references-in-project-files.md) ### [Migrate packages.config to PackageReference](consume-packages/migrate-packages-config-to-package-reference.md) ### [packages.config](reference/packages-config.md) # Create packages diff --git a/docs/consume-packages/Package-References-in-Project-Files.md b/docs/consume-packages/Package-References-in-Project-Files.md index 906fcd31d..050153d43 100644 --- a/docs/consume-packages/Package-References-in-Project-Files.md +++ b/docs/consume-packages/Package-References-in-Project-Files.md @@ -1,5 +1,5 @@ --- -title: NuGet PackageReference format (package references in project files) +title: NuGet PackageReference in project files description: Details on NuGet PackageReference in project files as supported by NuGet 4.0+ and VS2017 and .NET Core 2.0 author: nkolev92 ms.author: nikolev @@ -7,7 +7,7 @@ ms.date: 03/16/2018 ms.topic: conceptual --- -# Package references (`PackageReference`) in project files +# `PackageReference` in project files Package references, using the `PackageReference` node, manage NuGet dependencies directly within project files (as opposed to a separate `packages.config` file). Using PackageReference, as it's called, doesn't affect other aspects of NuGet; for example, settings in `NuGet.Config` files (including package sources) are still applied as explained in [Common NuGet configurations](configuring-nuget-behavior.md). @@ -300,7 +300,7 @@ When in Visual Studio, you can also [suppress warnings](/visualstudio/ide/how-to *This feature is available with NuGet **4.9** or above and with Visual Studio 2017 **15.9** or above.* -Input to NuGet restore is a set of Package References from the project file (top-level or direct dependencies) and the output is a full closure of all the package dependencies including transitive dependencies. NuGet tries to always produce the same full closure of package dependencies if the input PackageReference list has not changed. However, there are some scenarios where it is unable to do so. For example: +Input to NuGet restore is a set of `PackageReference` items from the project file (top-level or direct dependencies) and the output is a full closure of all the package dependencies including transitive dependencies. NuGet tries to always produce the same full closure of package dependencies if the input PackageReference list has not changed. However, there are some scenarios where it is unable to do so. For example: * When you use floating versions like ``. While the intention here is to float to the latest version on every restore of packages, there are scenarios where users require the graph to be locked to a certain latest version and float to a later version, if available, upon an explicit gesture. * A newer version of the package matching PackageReference version requirements is published. E.g. From 9fd88b1ee2cea6d5cd0cb3b86668d5ab044074c3 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Tue, 26 Oct 2021 15:57:13 -0500 Subject: [PATCH 467/988] Minor changes for RTW. --- docs/consume-packages/Package-Source-Mapping.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/consume-packages/Package-Source-Mapping.md b/docs/consume-packages/Package-Source-Mapping.md index ab0f20117..8945b89c6 100644 --- a/docs/consume-packages/Package-Source-Mapping.md +++ b/docs/consume-packages/Package-Source-Mapping.md @@ -16,9 +16,9 @@ Starting with [NuGet 6.0](..\release-notes\NuGet-6.0.md), you can centrally decl The feature is available across all NuGet integrated tooling. -* [Visual Studio 2022 preview 4 and later](https://visualstudio.microsoft.com/downloads/) -* [.NET SDK 6.0.100-rc.1 and later](https://dotnet.microsoft.com/download/dotnet/6.0) -* [nuget.exe 6.0.0-preview.4 and later](https://www.nuget.org/downloads) +* [Visual Studio 2022 and later](https://visualstudio.microsoft.com/downloads/) +* [.NET SDK 6.0.100 and later](https://dotnet.microsoft.com/download/dotnet/6.0) +* [nuget.exe 6.0.0 and later](https://www.nuget.org/downloads) Older tooling will ignore the Package Source Mapping configuration. To use this feature, ensure all your build environments use compatible tooling versions. @@ -100,8 +100,8 @@ To fully onboard your repository you may take the following steps: 1. Define mappings such that every package ID in your solution - *including transitive packages* - matches a pattern for the target source. 1. Run restore to validate that you have configured your mappings correctly. If your mappings don't fully cover every package ID in your solution, the error messages will help you identify the issue. 1. When restore succeeds, you are done! Optionally consider: - * simplifying the configuration to fewer declarations by using broader package ID prefixes or [setting a default source](#setting-default-sources) where possible. - * verifying the source each package was restored from by checking the [metadata files in the global packages folder or reviewing the restore logs](https://devblogs.microsoft.com/nuget/performance-and-polish-with-nuget-5-9/). + * Simplifying the configuration to fewer declarations by using broader package ID prefixes or [setting a default source](#setting-default-sources) where possible. + * Verifying the source each package was restored from by checking the [metadata files in the global packages folder or reviewing the restore logs](https://devblogs.microsoft.com/nuget/performance-and-polish-with-nuget-5-9/). For an idea of how your source mappings may look like, refer to our [samples repo](https://github.com/NuGet/Samples/tree/main/PackageSourceMappingExample). @@ -110,4 +110,4 @@ For an idea of how your source mappings may look like, refer to our [samples rep > This feature is in active development. We appreciate you trying it out and providing any feedback you may have at [NuGet/Home](https://github.com/nuget/home/issues). > > * There are no nuget.exe or dotnet.exe commands for managing the package source mapping configuration, see [NuGet/Home#10735](https://github.com/NuGet/Home/issues/10735). -> * There are no means of mapping packages at package installation time, see [NuGet/Home#10730](https://github.com/NuGet/Home/issues/10730). \ No newline at end of file +> * There are no means of mapping packages at package installation time, see [NuGet/Home#10730](https://github.com/NuGet/Home/issues/10730). From b034e1a508b60695316e62a2b47b34f199f9f22e Mon Sep 17 00:00:00 2001 From: Damon Tivel Date: Wed, 27 Oct 2021 07:21:35 -0700 Subject: [PATCH 468/988] Document experimental retry for untrusted root failures (#2568) --- docs/reference/errors-and-warnings/NU3001.md | 4 ++-- docs/reference/errors-and-warnings/NU3028.md | 23 +++++++++++++++++--- 2 files changed, 22 insertions(+), 5 deletions(-) diff --git a/docs/reference/errors-and-warnings/NU3001.md b/docs/reference/errors-and-warnings/NU3001.md index 424ec1100..e90bf5b25 100644 --- a/docs/reference/errors-and-warnings/NU3001.md +++ b/docs/reference/errors-and-warnings/NU3001.md @@ -63,7 +63,7 @@ Please ensure that any certificate file being used to sign a NuGet package is a ### Issue -A certificate was suggested to the NuGet Sign command using the `-CertificateSubjectName` option. But multiple certificates were found to match the certificate subject name in the windows certificate store. +A certificate was suggested to the NuGet Sign command using the `-CertificateSubjectName` option. But multiple certificates were found to match the certificate subject name in the Windows certificate store. ### Solution @@ -78,7 +78,7 @@ Please pass the '-CertificateFingerprint' option with the hash of the desired ce ### Issue -A certificate was suggested to the NuGet Sign command using the `-CertificateSubjectName` option. But no certificate was found to match the certificate subject name in the windows certificate store. +A certificate was suggested to the NuGet Sign command using the `-CertificateSubjectName` option. But no certificate was found to match the certificate subject name in the Windows certificate store. ### Solution diff --git a/docs/reference/errors-and-warnings/NU3028.md b/docs/reference/errors-and-warnings/NU3028.md index a98a2c1dc..bbb2e1e8e 100644 --- a/docs/reference/errors-and-warnings/NU3028.md +++ b/docs/reference/errors-and-warnings/NU3028.md @@ -19,20 +19,37 @@ f1_keywords: ### Issue Certificate chain building failed for the timestamp signature. The timestamp signing certificate is untrusted, revoked, or revocation information for the certificate is unavailable. +On Windows only, this issue may occur the first time a root certificate is observed. During certificate chain building, Windows fetches relevant 3rd party root certificates on first use and adds them as locally trusted root certificates. Internally, Windows initiates this network fetch with an RPC call, and if the system is sufficiently busy, this RPC call may fail. This failure results in the root certificate not being locally trusted. For NuGet users, the resulting error is "A certification chain processed correctly but terminated in a root certificate that is not trusted by the trust provider." + ### Solution Use a trusted and valid certificate. Check internet connectivity. -### Revocation check mode *(4.8.1+)* +#### Revocation check mode +> [!Note] +> This option is available starting from NuGet 4.8.1. + If the machine has restricted internet access (such as a build machine in a CI/CD scenario), installing/restoring a signed nuget package will result in this warning since the revocation servers are not reachable. This is expected. However, in some cases, this may have unintended concequences such as the package install/restore taking longer than usual. If that happens, you can work around it by setting the `NUGET_CERT_REVOCATION_MODE` environment variable to `offline`. This will force NuGet to check the revocation status of the certificate only against the cached certificate revocation list, and NuGet will not attempt to reach revocation servers. > [!Warning] -> It is not recommended to switch the revocation check mode to offline under normal cirumstances. Doing so will cause NuGet to skip online revocation check and perform only an offline revocation check against the cached certificate revocation list which may be out of date. This means packages where the signing certificate may have been revoked, will continue to be installed/restored, which otherwise would have failed revocation check and would not have been installed. +> It is not recommended to switch the revocation check mode to offline under normal circumstances. Doing so will cause NuGet to skip an online revocation check and perform only an offline revocation check against the cached certificate revocation list which may be out of date. This means packages where the signing certificate may have been revoked, will continue to be installed/restored, which otherwise would have failed revocation check and would not have been installed. -When the revocation check mode is set to `offline`, the warning will be downgraded to an info. +When the revocation check mode is set to `offline`, the warning will be downgraded to an informational level.
    The author primary signature's timestamp found a chain building issue: The revocation function was unable to check revocation because the certificate is not available in the cached certificate revocation list and NUGET_CERT_REVOCATION_MODE environment variable has been set to offline. For more information, visit https://aka.ms/certificateRevocationMode.
    +#### Retry untrusted root failures +> [!Note] +> This option is available starting from NuGet 6.0.0 Preview 5 and only applies to the Windows-specific failure described in the [Issue](#issue) section. + +Retrying will typically succeed. You can opt-in to an experimental, automatic retry for untrusted root failures on Windows by setting an environment variable named `NUGET_EXPERIMENTAL_CHAIN_BUILD_RETRY_POLICY` with a value consisting of 2 comma-delimited positive integers representing retry count and sleep interval in milliseconds, respectively. There are no default values; you need to pick retry values that are sensible for you. + +For example, setting the environment variable to a value of `3,1000` like so: + +
    set NUGET_EXPERIMENTAL_CHAIN_BUILD_RETRY_POLICY=3,1000
    + +...would try up to 4 times (initial try plus 3 retries) with 1 second (1,000 ms) between each try. + > [!Note] > NU3028 is raised as an error in most cases. > When NuGet’s [signature validation mode](../../consume-packages/installing-signed-packages.md#configure-package-signature-requirements) is set to accept (default), NU3028 is raised as a warning in some cases. From 96b2ac468822c525b3bb7b1730daccd679c98415 Mon Sep 17 00:00:00 2001 From: Dan Kent <83468000+kentdr@users.noreply.github.com> Date: Wed, 27 Oct 2021 15:05:25 -0400 Subject: [PATCH 469/988] Update NU5123.md --- docs/reference/errors-and-warnings/NU5123.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/errors-and-warnings/NU5123.md b/docs/reference/errors-and-warnings/NU5123.md index a8080e4bb..7931c2c37 100644 --- a/docs/reference/errors-and-warnings/NU5123.md +++ b/docs/reference/errors-and-warnings/NU5123.md @@ -20,5 +20,5 @@ A file was detected to have an installed path of longer than 200 characters. Ins ### Solution -Please ensure that the path `//target_file_path` for all the files included in the package are lesser than 200 characters, where `target_file_path` is defined in the `target` property of the`` section in the nuspec file. +Please ensure that the path `//target_file_path` for all the files included in the package are less than 200 characters, where `target_file_path` is defined in the `target` property of the`` section in the nuspec file. From a96584c6ae27b61a82fed14b57943534e7b7815d Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Wed, 27 Oct 2021 15:11:18 -0700 Subject: [PATCH 470/988] Add note that search filter is specific to nuget.org --- docs/consume-packages/Finding-and-Choosing-Packages.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/consume-packages/Finding-and-Choosing-Packages.md b/docs/consume-packages/Finding-and-Choosing-Packages.md index d450dbcd6..afc6bf797 100644 --- a/docs/consume-packages/Finding-and-Choosing-Packages.md +++ b/docs/consume-packages/Finding-and-Choosing-Packages.md @@ -147,7 +147,8 @@ For the MSBuild equivalent to setting the license in the `.nuspec`, take a look NuGet package search works the same on nuget.org, from the NuGet CLI, and within the NuGet Package Manager extension in Visual Studio. In general, search is applied to keywords as well as package descriptions. -- **Filtering**: You can apply a search term to a specific property by using the syntax `:` where +- **Filtering**: Nuget.org supports search filters. Other package sources depend on server implementation. + You can apply a search term to a specific property by using the syntax `:` where `` (case-insensitive) can be `id`, `packageid`, `version`, `title`, `tags`, `author`, `description`, `summary`, and `owner`. You can search for multiple properties at the same time. Searches on the `id` property are substring matches, whereas `packageid` and `owner` uses an exact, case-insensitive match. Examples: From aa7a99037a28b4994484ca4fc7009cbbdf99907a Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Thu, 28 Oct 2021 10:04:27 -0500 Subject: [PATCH 471/988] Add Community Contributions --- docs/release-notes/NuGet-6.0.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/docs/release-notes/NuGet-6.0.md b/docs/release-notes/NuGet-6.0.md index 07750ca54..2deb2a7ce 100644 --- a/docs/release-notes/NuGet-6.0.md +++ b/docs/release-notes/NuGet-6.0.md @@ -268,6 +268,23 @@ NuGet distribution vehicles: **[List of commits in this release - 6.0](https://github.com/NuGet/NuGet.Client/compare/5.11.0.17...6.0.0.262)** +### Community contributions + +Thank you to all the contributors who helped make this NuGet release awesome! + +|Who|PRs|Issues| +|----|----|----| +[omajid](https://github.com/omajid) | [3866](https://github.com/NuGet/NuGet.Client/pull/3866) | Handle nonce being null in Rfc3161TimestampTokenInfo - [#10484](https://github.com/NuGet/Home/issues/10484) +[marcin-krystianc](https://github.com/marcin-krystianc) | [3934](https://github.com/NuGet/NuGet.Client/pull/3934) | Adding a cache for LockFileTargetLibrary - [#10614](https://github.com/NuGet/Home/issues/10614) +[krafs](https://github.com/krafs) | [4151](https://github.com/NuGet/NuGet.Client/pull/4151) | Removed return value from docs on ISettings.AddOrUpdate - [#10980](https://github.com/NuGet/Home/issues/10980) +[huangqinjin](https://github.com/huangqinjin) | [4148](https://github.com/NuGet/NuGet.Client/pull/4148) | Fix PackageSaveMode nuspec always reinstalls - [#2402](https://github.com/NuGet/Home/issues/2402) +[Insomniak47](https://github.com/Insomniak47) | [4190](https://github.com/NuGet/NuGet.Client/pull/4190) | fix(docs): Remove link to closed/dead-end link in Contributing guidelines - [#8987](https://github.com/NuGet/Home/issues/8987) +[marcin-krystianc](https://github.com/marcin-krystianc) | [4194](https://github.com/NuGet/NuGet.Client/pull/4194) | Make the performance scripts account for restore operation failures - [#9968](https://github.com/NuGet/Home/issues/9968) +[eriawan](https://github.com/eriawan) | [4159](https://github.com/NuGet/NuGet.Client/pull/4159) | Fixes Surround ($IsPackable) with single quotes - [#11025](https://github.com/NuGet/Home/issues/11025) +[huangqinjin](https://github.com/huangqinjin) | [4193](https://github.com/NuGet/NuGet.Client/pull/4193) | Install packages.config should honor PackageSaveMode - [#11018](https://github.com/NuGet/Home/issues/11018) +[mfkl](https://github.com/mfkl) | [4199](https://github.com/NuGet/NuGet.Client/pull/4199) | test: use new DependencyGraphSpec - [#11168](https://github.com/NuGet/Home/issues/11168) +[omajid](https://github.com/omajid) | [4254](https://github.com/NuGet/NuGet.Client/pull/4254) | Use --work-tree with git apply - [#11227](https://github.com/NuGet/Home/issues/11227) + ## Feedback welcome Your feedback is important to us. If there are any problems with this release, check our From 9193426a5fd5bbf66e5ef4fc34fcb2a2288e370d Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Fri, 29 Oct 2021 07:30:30 -0500 Subject: [PATCH 472/988] Add feature blurbs & initial images --- docs/release-notes/NuGet-6.0.md | 90 +++++++++++++++++++++++++++++++++ 1 file changed, 90 insertions(+) diff --git a/docs/release-notes/NuGet-6.0.md b/docs/release-notes/NuGet-6.0.md index 2deb2a7ce..90a69a0e0 100644 --- a/docs/release-notes/NuGet-6.0.md +++ b/docs/release-notes/NuGet-6.0.md @@ -24,6 +24,96 @@ NuGet distribution vehicles: 🎉 **This is the first release to offer full authoring and restoring support for NuGet packages targeting .NET 6.0** 🎉 +### .NET 6 Support + +NuGet 6.0 is the first release to offer full authoring and restoring support for NuGet packages targeting .NET 6.0. You can now target the following target frameworks: + +* net6.0 +* net6.0-windows +* net6.0-android +* net6.0-ios +* net6.0-macos +* net6.0-maccatalyst +* net6.0-tvos +* net6.0-tizen + +Image dotnet + +If you aren’t familiar with the .NET 6.0 targets today or what it will look like in the future, don’t forget to check out the [.NET 6.0 TFM spec](https://github.com/dotnet/designs/blob/main/accepted/2021/net6.0-tfms/net6.0-tfms.md). + +### Source Mapping + +Earlier this year, many package managers became aware of [dependency confusion](https://medium.com/@alex.birsan/dependency-confusion-4a5d60fec610) attacks in which a user to be tricked into installing a malicious dependency instead of the one they intended to. To fortify your software supply chain against these attacks, the NuGet team has developed a new feature that allows you to map your dependencies to specific sources. Below is an example of how you can use source mapping to protect your projects. + +
    <!-- Define a global packages folder for your repository. -->
    +<!-- This is where installed packages will be stored locally. -->
    +<config>
    +  <add key="globalPackagesFolder" value="globalPackagesFolder" />
    +</config>
    +
    +<!-- Define my package sources, nuget.org and contoso.com. -->
    +<!-- `clear` ensures no additional sources are inherited from another config file. -->
    +<packageSources>
    +  <clear />
    +  <!-- `key` can be any identifier for your source. -->
    +  <add key="nuget.org" value="https://api.nuget.org/v3/index.json" />
    +  <add key="contoso.com" value="https://contoso.com/packages/" />
    +</packageSources>
    +
    +<!-- Define mappings by adding package ID patterns beneath the target source. -->
    +<!-- Contoso.* packages will be restored from contoso.com, everything else from nuget.org. -->
    +<packageSourceMapping>
    +  <!-- key value for <packageSource> should match key values from <packageSources> element -->
    +  <packageSource key="nuget.org">
    +    <package pattern="*" />
    +  </packageSource>
    +  <packageSource key="contoso.com">
    +    <package pattern="Contoso.*" />
    +  </packageSource>
    +</packageSourceMapping>
    +
    + +You can read more about source mapping in our [blog released earlier this year](https://devblogs.microsoft.com/nuget/introducing-package-source-mapping/). + +### Package Vulnerabilities in Visual Studio + +When using the NuGet Package Manager within Visual Studio, you will now see package vulnerabilities for your packages including details such as the number and severity of vulnerabilities as well as direct links to learn more about the advisories. + +Image vulnerability + +### Retry & Backoff Behavior + +There is now a `NUGET_ENABLE_EXPERIMENTAL_HTTP_RETRY` flag to improve the retry & backoff behavior of NuGet clients such as increasing the maximum amount of retries and increasing the delay for a more resilient experience when encountering a weaker internet connection. + +### Exclude Default File Extensions + +You can now use the MSBuild flag `` to edit the file extensions included in the build output of your package. This gives you more control over the extensions being included in your build output folder. + +### Improved Deprecation Information in Visual Studio + +Deprecated packages in Visual Studio now include a link to the suggested alternate package to use. You can use this feature to quickly browse and install packages that are actively maintained. + +Image deprecation + +### Add a Package README in Visual Studio + +You can now add a package README.md file directly within Visual Studio. A README helps communicate important information about your package. It is often the first item a visitor will see when visiting your package on NuGet.org. README files typically include information on: + +* What the package does +* Why the package is useful +* How users can get started with the package +* Where users can get help or contribute to your package + +You can read more about [adding a README to your NuGet package on our blog](https://devblogs.microsoft.com/nuget/add-a-readme-to-your-nuget-package/). + +### Faster Solution Load & Branch Switching in Visual Studio + +In Visual Studio 2022, NuGet has redefined the contract between NuGet package restore and common Visual Studio components to improve performance for large solutions by only calling restore once instead of multiple times. This improves the time it takes for background processes to complete significantly. + +Install the [Visual Studio 2022 Preview](https://visualstudio.microsoft.com/downloads/) and let us know if you notice a faster experience when loading your large solutions or switching between branches! + +**Features:** + * Add hook for excluding certain build output extensions from the nuget package - [#10690](https://github.com/NuGet/Home/issues/10690) * Implement new precedence for xamarin TFMs when using net6.0+ - [#10717](https://github.com/NuGet/Home/issues/10717) From 73fd2c40329f0014c7e0f0142c11c992a180a793 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Fri, 29 Oct 2021 07:39:18 -0500 Subject: [PATCH 473/988] Add local images --- docs/release-notes/NuGet-6.0.md | 6 +++--- .../media/NuGet-6.0/VS-Deprecation.png | Bin 0 -> 331436 bytes .../media/NuGet-6.0/VS-Vulnerability.png | Bin 0 -> 196605 bytes docs/release-notes/media/NuGet-6.0/dotnet.png | Bin 0 -> 3560 bytes 4 files changed, 3 insertions(+), 3 deletions(-) create mode 100644 docs/release-notes/media/NuGet-6.0/VS-Deprecation.png create mode 100644 docs/release-notes/media/NuGet-6.0/VS-Vulnerability.png create mode 100644 docs/release-notes/media/NuGet-6.0/dotnet.png diff --git a/docs/release-notes/NuGet-6.0.md b/docs/release-notes/NuGet-6.0.md index 90a69a0e0..57bf5ead1 100644 --- a/docs/release-notes/NuGet-6.0.md +++ b/docs/release-notes/NuGet-6.0.md @@ -37,7 +37,7 @@ NuGet 6.0 is the first release to offer full authoring and restoring support for * net6.0-tvos * net6.0-tizen -Image dotnet + ![.NET 6](media/NuGet-6.0/dotnet.png) If you aren’t familiar with the .NET 6.0 targets today or what it will look like in the future, don’t forget to check out the [.NET 6.0 TFM spec](https://github.com/dotnet/designs/blob/main/accepted/2021/net6.0-tfms/net6.0-tfms.md). @@ -79,7 +79,7 @@ You can read more about source mapping in our [blog released earlier this year]( When using the NuGet Package Manager within Visual Studio, you will now see package vulnerabilities for your packages including details such as the number and severity of vulnerabilities as well as direct links to learn more about the advisories. -Image vulnerability + ![Visual Studio Package Vulnerabilities](media/NuGet-6.0/VS-Vulnerability.png) ### Retry & Backoff Behavior @@ -93,7 +93,7 @@ You can now use the MSBuild flag ` + ![Visual Studio Package Deprecations](media/NuGet-6.0/VS-Deprecation.png) ### Add a Package README in Visual Studio diff --git a/docs/release-notes/media/NuGet-6.0/VS-Deprecation.png b/docs/release-notes/media/NuGet-6.0/VS-Deprecation.png new file mode 100644 index 0000000000000000000000000000000000000000..1685da19ca254e3459609f08cc69ff7019427f75 GIT binary patch literal 331436 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 z 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%0DUW>S#S4x_QNNp#XLSdCfoN_XgB3$K01iq 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 literal 0 HcmV?d00001 diff --git a/docs/release-notes/media/NuGet-6.0/VS-Vulnerability.png b/docs/release-notes/media/NuGet-6.0/VS-Vulnerability.png new file mode 100644 index 0000000000000000000000000000000000000000..32db7425adcf693c6f652077ebe59a75d874492f GIT binary patch literal 196605 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 M@}eDqCUw*fIDbVeq2Mv@ut(~W>$*; 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

    0|D>3RPtHO>ytx^g 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 literal 0 HcmV?d00001 diff --git a/docs/release-notes/media/NuGet-6.0/dotnet.png b/docs/release-notes/media/NuGet-6.0/dotnet.png new file mode 100644 index 0000000000000000000000000000000000000000..a69d9fe96d89da0aec2c0764124f4c00546d576d GIT binary patch literal 3560 zcmeHKXIB%-7R8E+6j33R3kC$09s&fUL;_O9fFezbBowKU79#a>MF9;45J9>UrAT{p zF##-)013?~kVun&fRs=J2!WTY?|yoJ;eMDo>#Q@gXU;zR%vzIVebtoznD{Xs9v*&k zGvjMq%lvyBIn15IALFlZ&AyOprZAq$9?4m*bI{w+%8-Yr8ppTeeu(QIy<_GW!owr* z@$a#Zj4JWqB1M}U8`@%A7e=?&=IZq2zSG zk+sOpufN{A=$9YBmun{(*i=4%)g`v|^v0if47<0i`}+=1%9AqAJw8y^6)<8ENr_X#KUAWL}Vz zI=XQqM^WCEKF4bXkxsOkK115ysbwO@A~FI+&(amdG!~ps;Cl?Qhte#u>KQwTGBKCu znPqJyAwtNwNpWO|QB~GDhu>?WW2e=bQ`bH;2FLa%fdjX118}gBtuz0jEOK)}Q<{%{ zbvd0X;pQnH9ero8k4{d{dIT@iz;S$*HVg;(rd;6c_JMTP>hwj<5Un4Tze^E7Er_V) z9Z^RqvV61#dxt`AjWSKKsrc8S1)_+%t{eKki8k!ZU6f96Yu#vN=gQ^%SM-BA;W||7 z0WHJKO>bA%dRoEU8osoJd?I3;gN$R?`oee##FZn10L#HeP1Oo)3|t1;8MZ~=FvA8Wf`HD* z;hJiSvu-nK-gkC&?;PiLzzwLhoK@;9-3;}+^=_zlo{qmlystCUfEW7v3W-+`x!?%= z2sDg#ImgNkwf5p>4J(MzShF`Q`wOQ-gLKsNDWiS_DxD-?OzQINMi+J0GyP`0Zc{Ipox(&&Cw`; zroqo%sqJxi&z(5=Um$eS`C^mwxfTwL5Sz4Az4m~*@tdDSf8?nZ9U`T7`1VD{Pmbj) zY2BRddDt12j$q3_(3yby3hJ?S;yR+z6!? zG?i2>HWZ{~R`jc^&OYQOFAX|I&)mdCW^*hPa5pI7+IbCzM%XPWVJs0PPx3#3^uVr+ zcTv;QHw3Wd@|-gPBV0wC(lf#7Eln3V zxc4@TYohDfS#*EYx#|yUJAbWs z)?w9uZNDsYaP`ML3#e;gl_5+MQVv^IRp;< z&&R#7wR?c1prJ=#6JSD@vdiajxMq~z>bO8imp8Owj4Gj-mvmPtxfLC z=rSLLZ*5-doBDLY4hwrsb=06NNK_Oa1_>kkJ7RPROLw8(xYrsXWZNvuSX-a)bb?BH z;WJQ|UKg=)H|Oh%V0UhQ)#oQK`8u8)jSkDxucqZcj-ib~ZZU3dcPF4&TH)PQwStc+ z)88M8;Zy2=Vp(?2Dsl*%n_YpY6iEEi;f!sko&{Mq?-V#a1~p~f=5RJR0&{etbNfSh ze3jFvziN0-^?RE61vD0Bpo$?s4ck@rgd97KbP3CBLPsP!YS%NIBVDarU1CTiV(wxA z;E}P&n<)rkL8EnVAb>s8^L+N@ZEk(dvTzVP)(T2_)usf%r{n6>M5_e4eAhV+5{Vm* zTakO!&ELH1B4OYpzD>Pf?639&<|^QmXww0^z>1!_E2Mr$dGtU-1nZE?gIq7` zQRIUF*q{hLr59A`@PnOfS89lD0}!f5ofcbejI`55y_VC2 zoJg|C*PFDw?ANui)hMO!8e62y1i17#*>?cP%+q=SQwKY3@b#scfK|Erg5}ag!C`}z zmp)5+>L<3VCk=^<)?(w0m_^V(TllTs$)eh-)3au5mqQv2uLNVs<%Z?*p>} zZFEB(6tgt2*x@7kaCmVw7S-*CtqIebXQh&>TZ$;oQR1NQ$^J7bs?SnGy2@Q>?oJIG z3~)Gw@+sVHPOY(>$75DcYF9A zgIQ<~{=4n*3L)Kf-1Afan1Oa9cz^biOyC6TNiyeUDMqji&F7qODUBHIUMM)J#( zrjq1t=L;;wpf+Ab#9EGreo8S~mML~QKf3UJ?v6HP`>Utp5l$p=?DSL+Rq;Nk$Si&3 zxkdav?HtF1=uI|ula`pf2`*Lo`)6wf2J literal 0 HcmV?d00001 From db7ed312e9c5cb738795960d508038d8cf5ffea4 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Wed, 3 Nov 2021 09:47:31 -0700 Subject: [PATCH 474/988] Update package advanced filtering message. Applies feedback from previous PR that was not acted on. --- docs/consume-packages/Finding-and-Choosing-Packages.md | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/docs/consume-packages/Finding-and-Choosing-Packages.md b/docs/consume-packages/Finding-and-Choosing-Packages.md index afc6bf797..ba00aaeae 100644 --- a/docs/consume-packages/Finding-and-Choosing-Packages.md +++ b/docs/consume-packages/Finding-and-Choosing-Packages.md @@ -144,11 +144,10 @@ For the MSBuild equivalent to setting the license in the `.nuspec`, take a look ## Search Syntax -NuGet package search works the same on nuget.org, from the NuGet CLI, and within the NuGet Package Manager extension in -Visual Studio. In general, search is applied to keywords as well as package descriptions. +Search queries on nuget.org, from the NuGet CLI, and within the NuGet Package Manager extension in +Visual Studio, all use the same syntax. In general, search is applied to keywords as well as package descriptions. -- **Filtering**: Nuget.org supports search filters. Other package sources depend on server implementation. - You can apply a search term to a specific property by using the syntax `:` where +- **Advanced Filtering**: You can apply a search term to a specific property by using the syntax `:` where `` (case-insensitive) can be `id`, `packageid`, `version`, `title`, `tags`, `author`, `description`, `summary`, and `owner`. You can search for multiple properties at the same time. Searches on the `id` property are substring matches, whereas `packageid` and `owner` uses an exact, case-insensitive match. Examples: @@ -167,3 +166,6 @@ id:jquery tags:validation # Search multiple properties invalid:jquery ui # Unsupported properties are ignored, so this # is the same as searching on ui ``` + +> [Note] +> This advanced filtering syntax is supported by nuget.org. Other package sources, like Azure Artifacts or GitHub Package Repository, may use different syntax or may not support advanced filtering. From a3d265ced725192b261784c265be468aec52ee69 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Wed, 3 Nov 2021 09:52:06 -0700 Subject: [PATCH 475/988] Fix note syntax --- docs/consume-packages/Finding-and-Choosing-Packages.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Finding-and-Choosing-Packages.md b/docs/consume-packages/Finding-and-Choosing-Packages.md index ba00aaeae..02d47c558 100644 --- a/docs/consume-packages/Finding-and-Choosing-Packages.md +++ b/docs/consume-packages/Finding-and-Choosing-Packages.md @@ -167,5 +167,5 @@ invalid:jquery ui # Unsupported properties are ignored, so this # is the same as searching on ui ``` -> [Note] +> [!Note] > This advanced filtering syntax is supported by nuget.org. Other package sources, like Azure Artifacts or GitHub Package Repository, may use different syntax or may not support advanced filtering. From e359ef80be413faaa0f90eec71eb786caf4d84d2 Mon Sep 17 00:00:00 2001 From: Heng Liu <45407901+heng-liu@users.noreply.github.com> Date: Tue, 9 Nov 2021 09:57:40 -0800 Subject: [PATCH 476/988] Update NuGet-6.0.md --- docs/release-notes/NuGet-6.0.md | 28 ---------------------------- 1 file changed, 28 deletions(-) diff --git a/docs/release-notes/NuGet-6.0.md b/docs/release-notes/NuGet-6.0.md index 57bf5ead1..479505e55 100644 --- a/docs/release-notes/NuGet-6.0.md +++ b/docs/release-notes/NuGet-6.0.md @@ -316,36 +316,8 @@ Install the [Visual Studio 2022 Preview](https://visualstudio.microsoft.com/down * [Bug]: ArPow build doesn't work well when in a subdirectory of an unrelated git repository - [#11227](https://github.com/NuGet/Home/issues/11227) -**StillOpens:** - -* Clean up Package Spec redudant APIs - [#6231](https://github.com/NuGet/Home/issues/6231) - -* Remove project.json support - [#7199](https://github.com/NuGet/Home/issues/7199) - -* Deprecate and remove the old nuget.exe credential plugin model - [#7586](https://github.com/NuGet/Home/issues/7586) - -* Remove net40 support from NuGet.Framework - [#8416](https://github.com/NuGet/Home/issues/8416) - -* Remove .NET Framework TFM from NuGet.CommandLine.XPlat - [#8452](https://github.com/NuGet/Home/issues/8452) - -* Remove or improve configuration change events - [#8479](https://github.com/NuGet/Home/issues/8479) - -* Remove from public members parameter types that leak implementation details - [#9197](https://github.com/NuGet/Home/issues/9197) - -* Make static graph restore the default experience. - [#9803](https://github.com/NuGet/Home/issues/9803) - -* Allow to user to input custom (floating) versions through the PM UI - [#9829](https://github.com/NuGet/Home/issues/9829) - -* ``nuget.exe push *.nupkg`` doesn't push more than one file - [#10217](https://github.com/NuGet/Home/issues/10217) - -* Test PackageUpdateResource_SourceAndSymbolNuGetOrgPushingAsync is flaky - [#10706](https://github.com/NuGet/Home/issues/10706) - * dotnet list package --vulnerable, --deprecated, --outdated does not work for transitive-only positives - [#10767](https://github.com/NuGet/Home/issues/10767) -* [Feature]: Create More Consumable Library Interfaces (or SDK Documentation, or both!) - [#11142](https://github.com/NuGet/Home/issues/11142) - -* 9 signing tests failed on MacOS, as root certificate is removed from trusted store on MacOS - [#11178](https://github.com/NuGet/Home/issues/11178) - **Nones:** * Clarify documentation guideline - do no include empty xml docs - [#10857](https://github.com/NuGet/Home/issues/10857) From 28f1b95abdc1946dce088db47b6bb22d7695e818 Mon Sep 17 00:00:00 2001 From: Heng Liu Date: Tue, 9 Nov 2021 10:17:02 -0800 Subject: [PATCH 477/988] remove Nones --- docs/release-notes/NuGet-6.0.md | 8 -------- 1 file changed, 8 deletions(-) diff --git a/docs/release-notes/NuGet-6.0.md b/docs/release-notes/NuGet-6.0.md index 479505e55..e2dabe5e2 100644 --- a/docs/release-notes/NuGet-6.0.md +++ b/docs/release-notes/NuGet-6.0.md @@ -318,14 +318,6 @@ Install the [Visual Studio 2022 Preview](https://visualstudio.microsoft.com/down * dotnet list package --vulnerable, --deprecated, --outdated does not work for transitive-only positives - [#10767](https://github.com/NuGet/Home/issues/10767) -**Nones:** - -* Clarify documentation guideline - do no include empty xml docs - [#10857](https://github.com/NuGet/Home/issues/10857) - -* Add telemetry for tracking vulnerable packages installed through PMUI - [#10986](https://github.com/NuGet/Home/issues/10986) - -* Document which VS extensibility APIs can be called from a background thread - [#11021](https://github.com/NuGet/Home/issues/11021) - **[List of all issues fixed in this release - 6.0](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=Z2lkOi8vcmFwdG9yL1JlbGVhc2UvNDMwMDQ)** **[List of commits in this release - 6.0](https://github.com/NuGet/NuGet.Client/compare/5.11.0.17...6.0.0.262)** From 9cbee2ab177616be9983e9f9be7dbda848ec7de4 Mon Sep 17 00:00:00 2001 From: Nico Kranz Date: Wed, 10 Nov 2021 13:00:23 +0000 Subject: [PATCH 478/988] Update NU5026.md fixed a typo: mbuild -> msbuild --- docs/reference/errors-and-warnings/NU5026.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/errors-and-warnings/NU5026.md b/docs/reference/errors-and-warnings/NU5026.md index 56e330034..239d61f4e 100644 --- a/docs/reference/errors-and-warnings/NU5026.md +++ b/docs/reference/errors-and-warnings/NU5026.md @@ -24,5 +24,5 @@ Please build the project before running dotnet pack operation or do not use `--n You may have written a project that does not output assemblies. If you intend to ship an assembly-free NuGet package, disable `dotnet pack`’s requirement for an output assembly. You can do this by setting the `IncludeBuildOutput` property to `false` in your project file. -Also see [related mbuild properties](../msbuild-targets.md#output-assemblies). +Also see [related msbuild properties](../msbuild-targets.md#output-assemblies). From 3804b11d192d2322d0f113431b98a1d9ca4e7a3e Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Mon, 15 Nov 2021 18:08:16 -0500 Subject: [PATCH 479/988] Added README to table --- docs/create-packages/Package-authoring-best-practices.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/docs/create-packages/Package-authoring-best-practices.md b/docs/create-packages/Package-authoring-best-practices.md index ed01fcf79..b346aebd7 100644 --- a/docs/create-packages/Package-authoring-best-practices.md +++ b/docs/create-packages/Package-authoring-best-practices.md @@ -60,14 +60,15 @@ Below is a table mapping and describing available package metadata elements: | [`Authors`](#authors) | [`Authors`](/nuget/reference/msbuild-targets#pack-target) | [`authors`](/nuget/reference/nuspec#authors) | A comma-separated list of package authors, often using the individual's or an organization's "pretty name." | | [`Description`](#description) | [`Description`](/nuget/reference/msbuild-targets#pack-target) | [`description`](/nuget/reference/nuspec#description) | A description of the package. | | [`Copyright`](#copyright) | [`Copyright`](/nuget/reference/msbuild-targets#pack-target) | [`copyright`](/nuget/reference/nuspec#copyright) | Copyright details for the package. | -| [`Licensing - Expression`](#licensing) | [`PackageLicenseExpression`](/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="expression"`](/nuget/reference/nuspec#license) | An SPDX license expression. | -| [`Licensing - File`](#licensing) | [`PackageLicenseFile`](/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="file"`](/nuget/reference/nuspec#license) | Path to a custom license file. | | [`Project URL`](#project-url) | `PackageProjectUrl` | [`projectUrl`](/nuget/reference/nuspec#projecturl) | A URL for the project homepage. | | [`Icon File`](#icon) | [`PackageIcon`](/nuget/reference/msbuild-targets#packing-an-icon-image-file) | [`icon`](/nuget/reference/nuspec#icon) | Path to the package icon image file. | +| [`README`](#readme) | [`PackageReadmeFile`](/nuget/reference/msbuild-targets#packagereadmefile) | [`readme`](/nuget/reference/nuspec#readme) | Path to the package README markdown file. | | [`Repository URL`](#repository-type-and-url) | [`RepositoryUrl`](/nuget/reference/msbuild-targets#pack-target) | [`repository url`](/nuget/reference/nuspec#repository) | URL to the repository from which the package was built. | | [`Repository type`](#repository-type-and-url) | [`RespositoryType`](/nuget/reference/msbuild-targets#pack-target) | [`repository type`](/nuget/reference/nuspec#repository) | Type of repository the repository URL is pointing to (i.e. "git"). | | [`Tags`](#tags) | [`PackageTags`](/nuget/reference/msbuild-targets#pack-target) | [`tags`](/nuget/reference/nuspec#tags) | A space-delimited list of tags and keywords that describe the package. Tags are used when searching for packages. | | [`Release notes`](#release-notes) | [`PackageReleaseNotes`](/nuget/reference/msbuild-targets#pack-target) | [`releaseNotes`](/nuget/reference/nuspec#releasenotes) | A description of the changes made in this release of the package. | +| [`Licensing - Expression`](#licensing) | [`PackageLicenseExpression`](/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="expression"`](/nuget/reference/nuspec#license) | An SPDX license expression. | +| [`Licensing - File`](#licensing) | [`PackageLicenseFile`](/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file) | [`license type="file"`](/nuget/reference/nuspec#license) | Path to a custom license file. | ### Package ID If you're publishing a completely new package: @@ -94,6 +95,7 @@ See the [.NET library versioning guide](/dotnet/standard/library-guidance/versio ✔️ DO use the author field for your or your organization's "pretty name." > For example, if my NuGet.org username is "jdoe" then using "Jane Doe" for the author field may help consumers recognize me as an author. If my organization's NuGet.org username is "ContosoToolkit" then using "Contoso Corporation" may be more recognizable and inspire more consumer trust. + ### Description ✔️ DO include a short description (up to 4000 characters) to describe your package. From 426ec978f8b76f027e40fdec2eb49ee7c2f2a25c Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Mon, 15 Nov 2021 18:50:58 -0500 Subject: [PATCH 480/988] Added README guidance --- .../Package-authoring-best-practices.md | 60 ++++++++++--------- 1 file changed, 32 insertions(+), 28 deletions(-) diff --git a/docs/create-packages/Package-authoring-best-practices.md b/docs/create-packages/Package-authoring-best-practices.md index b346aebd7..f11fda40b 100644 --- a/docs/create-packages/Package-authoring-best-practices.md +++ b/docs/create-packages/Package-authoring-best-practices.md @@ -103,38 +103,14 @@ See the [.NET library versioning guide](/dotnet/standard/library-guidance/versio ### Copyright -✔️ CONSIDER copyrighting your package with "Copyright (c) ." ->A copyright notice essentially indicates that your work cannot be copied without your permission. Including a copyright notice in your package is easy and won't do any harm! +✔️ DO copyrighting your package with "Copyright (c) ." +> A copyright notice essentially indicates that your work cannot be copied without your permission. Including a copyright notice in your package is easy and won't do any harm! Example: Copyright (c) Contoso 2020 -### Licensing - -✔️ DO [include a license expression or license file in your package](../reference/msbuild-targets.md#packing-a-license-expression-or-a-license-file). -> [!IMPORTANT] -> A project without a license defaults to [exclusive copyright](https://choosealicense.com/no-permission/), meaning that you have not granted anyone permission to use your project. - -❌ DO NOT use the deprecated `LicenseUrl` metadata property. -> This presents legal ambiguity as license changes at the URL will retroactively change the displayed license for previous package versions. - -#### If your package is [open source](https://opensource.org/osd) - -✔️ DO [choose an open source license](https://choosealicense.com/) to make your package open source. -> *"Open source licenses are licenses that comply with the Open Source Definition — in brief, they allow software to be freely used, modified, and shared."* - Open Source Initiative. To learn more about open source software and the Open Source Initiative, check out https://opensource.org/. - -✔️ CONSIDER [including a license expression in your package](../reference/msbuild-targets.md#packing-a-license-expression-or-a-license-file). -> License expressions are surfaced the most clearly and make it more obvious to consumers if they can use your package or if the license has changed. -> [!Note] -> NuGet.org only accepts license expressions for licenses that are approved by the Open Source Initiative or the Free Software Foundation. - -#### If your package is not open source - -✔️ DO [include a license file in your package](../reference/msbuild-targets.md#packing-a-license-expression-or-a-license-file). -> Any license file (.txt or .md) can be added to your package, including non-standard licenses. - ### Project URL -✔️ CONSIDER including a link to an associated project, repository, or company website. +✔️ DO include a link to an associated project, repository, or company website. > Your project site should have everything users need to know about your package and will likely be where users look for documentation. ### Icon @@ -147,6 +123,10 @@ Example: Copyright (c) Contoso 2020 ❌ DO NOT use the deprecated `IconUrl` metadata property. +### README +✔️ DO add a README markdown file that provides an overview of what your package does and how to get started. +> A package README will significantly improve the quality perception of your package as well as new user onboarding. Also consider [previewing your README](../nuget-org/package-readme-on-nuget-org.md#preview-your-readme) before you upload it! + ### Repository Type and URL ✔️ CONSIDER setting up [Source Link](/dotnet/standard/library-guidance/sourcelink) to automatically add source control metadata to your NuGet package and make your library easier to debug. @@ -161,7 +141,7 @@ For example, if I published a package to log strings to the console, I would inc ### Release notes -✔️ CONSIDER including release notes with each update describing what changes were made. +✔️ DO include release notes with each update describing what changes were made. > While there is no specific format required for release notes, we recommend including: > > 1. Breaking changes @@ -170,6 +150,30 @@ For example, if I published a package to log strings to the console, I would inc > > If you already track release notes or a changelog in your repo, you can also include a link to the relevant file. +### Licensing + +✔️ DO [include a license expression or license file in your package](../reference/msbuild-targets.md#packing-a-license-expression-or-a-license-file). +> [!IMPORTANT] +> A project without a license defaults to [exclusive copyright](https://choosealicense.com/no-permission/), meaning that you have not granted anyone permission to use your project. + +❌ DO NOT use the deprecated `LicenseUrl` metadata property. +> This presents legal ambiguity as license changes at the URL will retroactively change the displayed license for previous package versions. + +#### If your package is [open source](https://opensource.org/osd) + +✔️ DO [choose an open source license](https://choosealicense.com/) to make your package open source. +> *"Open source licenses are licenses that comply with the Open Source Definition — in brief, they allow software to be freely used, modified, and shared."* - Open Source Initiative. To learn more about open source software and the Open Source Initiative, check out https://opensource.org/. + +✔️ CONSIDER [including a license expression in your package](../reference/msbuild-targets.md#packing-a-license-expression-or-a-license-file). +> License expressions are surfaced the most clearly and make it more obvious to consumers if they can use your package or if the license has changed. +> [!Note] +> NuGet.org only accepts license expressions for licenses that are approved by the Open Source Initiative or the Free Software Foundation. + +#### If your package is not open source + +✔️ DO [include a license file in your package](../reference/msbuild-targets.md#packing-a-license-expression-or-a-license-file). +> Any license file (.txt or .md) can be added to your package, including non-standard licenses. + ## Related topics - [Create and publish a package (dotnet CLI)](../quickstart/create-and-publish-a-package-using-the-dotnet-cli.md) From 95f997df254c92952daccf38eb13bcf5ec03047c Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Tue, 16 Nov 2021 16:49:21 -0500 Subject: [PATCH 481/988] Update docs/create-packages/Package-authoring-best-practices.md Co-authored-by: Andy Zivkovic --- docs/create-packages/Package-authoring-best-practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/create-packages/Package-authoring-best-practices.md b/docs/create-packages/Package-authoring-best-practices.md index f11fda40b..680abd502 100644 --- a/docs/create-packages/Package-authoring-best-practices.md +++ b/docs/create-packages/Package-authoring-best-practices.md @@ -103,7 +103,7 @@ See the [.NET library versioning guide](/dotnet/standard/library-guidance/versio ### Copyright -✔️ DO copyrighting your package with "Copyright (c) ." +✔️ DO add a copyright notice to your package with "Copyright (c) ." > A copyright notice essentially indicates that your work cannot be copied without your permission. Including a copyright notice in your package is easy and won't do any harm! Example: Copyright (c) Contoso 2020 From 2fa68f65ef710a65d1156251031c66c149d6c622 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Wed, 17 Nov 2021 13:58:42 -0800 Subject: [PATCH 482/988] Quote `runtime.` in NU1605 docs (#2585) --- docs/reference/errors-and-warnings/NU1605.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/errors-and-warnings/NU1605.md b/docs/reference/errors-and-warnings/NU1605.md index b0169a013..f394c1f89 100644 --- a/docs/reference/errors-and-warnings/NU1605.md +++ b/docs/reference/errors-and-warnings/NU1605.md @@ -41,7 +41,7 @@ Detected package downgrade: System.IO.FileSystem.Primitives from 4.3.0 to 4.0.1. ### Issue -Certain combinations of packages which shipped with .NET Core 1.0 and 1.1 are not compatible with each other when they are referenced together in a .NET Core 3.0 or higher project, and a RuntimeIdentifier is specified. The problematic packages generally start with `System.` or `Microsoft.`, and have version numbers between 4.0.0 and 4.3.1. In this case, the downgrade message will have a package starting with runtime. in the dependency chain. +Certain combinations of packages which shipped with .NET Core 1.0 and 1.1 are not compatible with each other when they are referenced together in a .NET Core 3.0 or higher project, and a RuntimeIdentifier is specified. The problematic packages generally start with `System.` or `Microsoft.`, and have version numbers between 4.0.0 and 4.3.1. In this case, the downgrade message will have a package starting with `runtime.` in the dependency chain. ### Solution From f8816eb69a6f9289d4673f755088287140a6cdbe Mon Sep 17 00:00:00 2001 From: Olivier Spinelli Date: Fri, 19 Nov 2021 08:02:05 +0100 Subject: [PATCH 483/988] Replaced obsolete Note. Replaced with a link to dotnet nuget sign command. --- docs/create-packages/Sign-a-Package.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/docs/create-packages/Sign-a-Package.md b/docs/create-packages/Sign-a-Package.md index cd1004a1c..fb9e3018f 100644 --- a/docs/create-packages/Sign-a-Package.md +++ b/docs/create-packages/Sign-a-Package.md @@ -28,8 +28,10 @@ You can use self-issued certificates for testing purposes. However, packages sig ## Sign the package -> [!note] -> Requires nuget.exe 4.6.0 or later. dotnet.exe support is coming soon - [#7939](https://github.com/NuGet/Home/issues/7939) +### .Net (requires .NET 6 SDK and later versions) +Use [dotnet nuget sign](https://docs.microsoft.com/en-us/dotnet/core/tools/dotnet-nuget-sign). + +### On .Net Framework (requires nuget.exe 4.6.0 or later) Sign the package using [nuget sign](../reference/cli-reference/cli-ref-sign.md): From bfa5ea591d226f940f5a21ead0229ecdf0ff1b86 Mon Sep 17 00:00:00 2001 From: Olivier Spinelli Date: Fri, 19 Nov 2021 16:29:52 +0100 Subject: [PATCH 484/988] Removed en-us fragment in Microsoft url. --- docs/create-packages/Sign-a-Package.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/create-packages/Sign-a-Package.md b/docs/create-packages/Sign-a-Package.md index fb9e3018f..6c7406cca 100644 --- a/docs/create-packages/Sign-a-Package.md +++ b/docs/create-packages/Sign-a-Package.md @@ -29,7 +29,7 @@ You can use self-issued certificates for testing purposes. However, packages sig ## Sign the package ### .Net (requires .NET 6 SDK and later versions) -Use [dotnet nuget sign](https://docs.microsoft.com/en-us/dotnet/core/tools/dotnet-nuget-sign). +Use [dotnet nuget sign](https://docs.microsoft.com/dotnet/core/tools/dotnet-nuget-sign). ### On .Net Framework (requires nuget.exe 4.6.0 or later) From c86f3f21b5f0173e5ce6b662dd28d43b103c837c Mon Sep 17 00:00:00 2001 From: v-hearya Date: Wed, 24 Nov 2021 05:23:36 +0530 Subject: [PATCH 485/988] channel9 links fixed --- .../create-and-publish-a-package-using-the-dotnet-cli.md | 4 ++-- .../create-and-publish-a-package-using-visual-studio.md | 4 ++-- docs/quickstart/install-and-use-a-package-in-visual-studio.md | 4 ++-- .../install-and-use-a-package-using-the-dotnet-cli.md | 4 ++-- docs/what-is-nuget.md | 4 ++-- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md index c7f0a925b..1341632ad 100644 --- a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md +++ b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md @@ -102,9 +102,9 @@ Once you have a `.nupkg` file, you publish it to nuget.org using the `dotnet nug ## Related video -> [!Video https://channel9.msdn.com/Series/NuGet-101/Create-and-Publish-a-NuGet-Package-with-the-NET-CLI-5-of-5/player] +> [!Video https://docs.microsoft.com/en-us/shows/NuGet-101/Create-and-Publish-a-NuGet-Package-with-the-NET-CLI-5-of-5/player] -Find more NuGet videos on [Channel 9](https://channel9.msdn.com/Series/NuGet-101) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). +Find more NuGet videos on [Channel 9](https://docs.microsoft.com/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). ## Next steps diff --git a/docs/quickstart/create-and-publish-a-package-using-visual-studio.md b/docs/quickstart/create-and-publish-a-package-using-visual-studio.md index ab2615c72..9dd7b6953 100644 --- a/docs/quickstart/create-and-publish-a-package-using-visual-studio.md +++ b/docs/quickstart/create-and-publish-a-package-using-visual-studio.md @@ -190,9 +190,9 @@ This will include a file named `readme.txt` in the package root. Visual Studio d ## Related video -> [!Video https://channel9.msdn.com/Series/NuGet-101/Create-and-Publish-a-NuGet-Package-with-Visual-Studio-4-of-5/player] +> [!Video https://docs.microsoft.com/en-us/shows/NuGet-101/Create-and-Publish-a-NuGet-Package-with-Visual-Studio-4-of-5/player] -Find more NuGet videos on [Channel 9](https://channel9.msdn.com/Series/NuGet-101) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). +Find more NuGet videos on [Channel 9](https://docs.microsoft.com/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). ## Related topics diff --git a/docs/quickstart/install-and-use-a-package-in-visual-studio.md b/docs/quickstart/install-and-use-a-package-in-visual-studio.md index 4a6572204..555c723ff 100644 --- a/docs/quickstart/install-and-use-a-package-in-visual-studio.md +++ b/docs/quickstart/install-and-use-a-package-in-visual-studio.md @@ -122,9 +122,9 @@ With the Newtonsoft.Json package in the project, you can call its `JsonConvert.S ## Related video -> [!Video https://channel9.msdn.com/Series/NuGet-101/Install-and-Use-a-NuGet-Package-with-Visual-Studio-2-of-5/player] +> [!Video https://docs.microsoft.com/en-us/shows/NuGet-101/Install-and-Use-a-NuGet-Package-with-Visual-Studio-2-of-5/player] -Find more NuGet videos on [Channel 9](https://channel9.msdn.com/Series/NuGet-101) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). +Find more NuGet videos on [Channel 9](https://docs.microsoft.com/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). ## Next steps diff --git a/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md b/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md index 1b239805e..133984206 100644 --- a/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md +++ b/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md @@ -99,9 +99,9 @@ NuGet packages can be installed into a .NET project of some kind. For this walkt ``` ## Related video -> [!Video https://channel9.msdn.com/Series/NuGet-101/Install-and-Use-a-NuGet-Package-with-the-NET-CLI-3-of-5/player] +> [!Video https://docs.microsoft.com/en-us/shows/NuGet-101/Install-and-Use-a-NuGet-Package-with-the-NET-CLI-3-of-5/player] -Find more NuGet videos on [Channel 9](https://channel9.msdn.com/Series/NuGet-101) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). +Find more NuGet videos on [Channel 9](https://docs.microsoft.com/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). ## Next steps diff --git a/docs/what-is-nuget.md b/docs/what-is-nuget.md index bad0e8bc8..e54d411a9 100644 --- a/docs/what-is-nuget.md +++ b/docs/what-is-nuget.md @@ -106,9 +106,9 @@ Take a moment to browse the table of contents for this documentation, and you se ## Related video -> [!Video https://channel9.msdn.com/Series/NuGet-101/What-is-NuGet-1-of-5/player] +> [!Video https://docs.microsoft.com/en-us/shows/NuGet-101/What-is-NuGet-1-of-5/player] -Find more NuGet videos on [Channel 9](https://channel9.msdn.com/Series/NuGet-101) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). +Find more NuGet videos on [Channel 9](https://docs.microsoft.com/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). ## Comments, contributions, and issues From fc8618fd75310fcb0cf3c0c0980fa9b6e863d95f Mon Sep 17 00:00:00 2001 From: v-hearya Date: Wed, 24 Nov 2021 05:29:27 +0530 Subject: [PATCH 486/988] PR suggestion fixed --- .../create-and-publish-a-package-using-the-dotnet-cli.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md index 1341632ad..9eb22ccde 100644 --- a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md +++ b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md @@ -104,7 +104,7 @@ Once you have a `.nupkg` file, you publish it to nuget.org using the `dotnet nug > [!Video https://docs.microsoft.com/en-us/shows/NuGet-101/Create-and-Publish-a-NuGet-Package-with-the-NET-CLI-5-of-5/player] -Find more NuGet videos on [Channel 9](https://docs.microsoft.com/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). +Find more NuGet videos on [Channel 9](/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). ## Next steps From 201f46520f373471b4b085ef5548d934b1040df9 Mon Sep 17 00:00:00 2001 From: v-hearya Date: Wed, 24 Nov 2021 05:32:53 +0530 Subject: [PATCH 487/988] PR suggestions implemented --- .../create-and-publish-a-package-using-visual-studio.md | 2 +- docs/quickstart/install-and-use-a-package-in-visual-studio.md | 2 +- .../install-and-use-a-package-using-the-dotnet-cli.md | 2 +- docs/what-is-nuget.md | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/quickstart/create-and-publish-a-package-using-visual-studio.md b/docs/quickstart/create-and-publish-a-package-using-visual-studio.md index 9dd7b6953..61ca8fa96 100644 --- a/docs/quickstart/create-and-publish-a-package-using-visual-studio.md +++ b/docs/quickstart/create-and-publish-a-package-using-visual-studio.md @@ -192,7 +192,7 @@ This will include a file named `readme.txt` in the package root. Visual Studio d > [!Video https://docs.microsoft.com/en-us/shows/NuGet-101/Create-and-Publish-a-NuGet-Package-with-Visual-Studio-4-of-5/player] -Find more NuGet videos on [Channel 9](https://docs.microsoft.com/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). +Find more NuGet videos on [Channel 9](/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). ## Related topics diff --git a/docs/quickstart/install-and-use-a-package-in-visual-studio.md b/docs/quickstart/install-and-use-a-package-in-visual-studio.md index 555c723ff..c395dcba4 100644 --- a/docs/quickstart/install-and-use-a-package-in-visual-studio.md +++ b/docs/quickstart/install-and-use-a-package-in-visual-studio.md @@ -124,7 +124,7 @@ With the Newtonsoft.Json package in the project, you can call its `JsonConvert.S > [!Video https://docs.microsoft.com/en-us/shows/NuGet-101/Install-and-Use-a-NuGet-Package-with-Visual-Studio-2-of-5/player] -Find more NuGet videos on [Channel 9](https://docs.microsoft.com/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). +Find more NuGet videos on [Channel 9](/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). ## Next steps diff --git a/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md b/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md index 133984206..cf629aa7d 100644 --- a/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md +++ b/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md @@ -101,7 +101,7 @@ NuGet packages can be installed into a .NET project of some kind. For this walkt > [!Video https://docs.microsoft.com/en-us/shows/NuGet-101/Install-and-Use-a-NuGet-Package-with-the-NET-CLI-3-of-5/player] -Find more NuGet videos on [Channel 9](https://docs.microsoft.com/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). +Find more NuGet videos on [Channel 9](/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). ## Next steps diff --git a/docs/what-is-nuget.md b/docs/what-is-nuget.md index e54d411a9..4d3124bc4 100644 --- a/docs/what-is-nuget.md +++ b/docs/what-is-nuget.md @@ -108,7 +108,7 @@ Take a moment to browse the table of contents for this documentation, and you se > [!Video https://docs.microsoft.com/en-us/shows/NuGet-101/What-is-NuGet-1-of-5/player] -Find more NuGet videos on [Channel 9](https://docs.microsoft.com/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). +Find more NuGet videos on [Channel 9](/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). ## Comments, contributions, and issues From 36ac5d868f9be1d5453f8d9170dd7660082fe4d0 Mon Sep 17 00:00:00 2001 From: Claire Novotny Date: Tue, 30 Nov 2021 12:21:28 -0500 Subject: [PATCH 488/988] Add section on reproducible builds --- docs/concepts/Security-Best-Practices.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index d33fb5027..8aa22372c 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -162,6 +162,14 @@ To learn more about secret scanning, see [About secret scanning](https://docs.gi [Author signing](../reference/signed-packages-reference.md) allows a package author to stamp their identity on a package and for a consumer to verify it came from you. This protects you against content tampering and serves as a single source of truth about the origin of the package and the package authenticity. When combined with client trust policies, you can verify a package came from a specific author. To author sign a package, see [Sign a package](../create-packages/sign-a-package.md). +githg +### Reproducible Builds + +**📦🖊 Package Author** + +Reproducible builds creates binaries that are binary identical each time you build it, and contain source code links and compiler metadata that enable a package consumer to recreate the binary directly and validate that the build environment has not been compromised. + +To learn more about reproducible builds, see [Producing Packages with Source Link](https://devblogs.microsoft.com/dotnet/producing-packages-with-source-link/) and the [Reproducible Build Validation](https://github.com/dotnet/designs/blob/main/accepted/2020/reproducible-builds.md) spec. ### Two-Factor Authentication (2FA) From 38ae6eff2f9f670bec606a04333dc50f7908dc3b Mon Sep 17 00:00:00 2001 From: Claire Novotny Date: Tue, 30 Nov 2021 12:21:28 -0500 Subject: [PATCH 489/988] Add section on reproducible builds --- docs/concepts/Security-Best-Practices.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 8aa22372c..f6ca1b1c0 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -162,7 +162,7 @@ To learn more about secret scanning, see [About secret scanning](https://docs.gi [Author signing](../reference/signed-packages-reference.md) allows a package author to stamp their identity on a package and for a consumer to verify it came from you. This protects you against content tampering and serves as a single source of truth about the origin of the package and the package authenticity. When combined with client trust policies, you can verify a package came from a specific author. To author sign a package, see [Sign a package](../create-packages/sign-a-package.md). -githg + ### Reproducible Builds **📦🖊 Package Author** From 0165ddccd3a4a7c242beabaf36657418eda6b5ca Mon Sep 17 00:00:00 2001 From: Claire Novotny Date: Tue, 30 Nov 2021 12:43:35 -0500 Subject: [PATCH 490/988] Update example package to WebView2 --- docs/guides/Native-Packages.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/guides/Native-Packages.md b/docs/guides/Native-Packages.md index d35d663c5..14f5c5353 100644 --- a/docs/guides/Native-Packages.md +++ b/docs/guides/Native-Packages.md @@ -16,6 +16,6 @@ To be consumable in a C++ project, a package must target the `native` framework. > [!Note] > Be sure to include *native* in the `` section of your `.nuspec` to help other developers find your package by searching on that tag. -Native NuGet packages targeting `native` then provide files in `\build`, `\content`, and `\tools` folders; `\lib` is not used in this case (NuGet cannot directly add references to a C++ project). A package may also include targets and props files in `\build` that NuGet will automatically import into projects that consume the package. Those files must be named the same as the package ID with the `.targets` and/or `.props` extensions. For example, the [cpprestsdk](https://nuget.org/packages/cpprestsdk/) package includes a `cpprestsdk.targets` file in its `\build` folder. +Native NuGet packages targeting `native` then provide files in `\build`, `\content`, and `\tools` folders; `\lib` is not used in this case (NuGet cannot directly add references to a C++ project). A package may also include targets and props files in `\build` that NuGet will automatically import into projects that consume the package. Those files must be named the same as the package ID with the `.targets` and/or `.props` extensions. For example, the [Microsoft.Web.WebView2](https://www.nuget.org/packages/Microsoft.Web.WebView2) package includes a `Microsoft.Web.WebView2.targets` file in its `\build` folder. The `\build` folder can be used for all NuGet packages and not just native packages. The `\build` folder respects target frameworks just like the `\content`, `\lib`, and `\tools` folders. This means you can create a `\build\net40` folder and a `\build\net45` folder and NuGet will import the appropriate props and targets files into the project. (Use of PowerShell scripts to import MSBuild targets is not needed.) From 61904574323856c4a9e2246d7e00d8432aac5e23 Mon Sep 17 00:00:00 2001 From: Anand Gaurav Date: Tue, 30 Nov 2021 10:20:28 -0800 Subject: [PATCH 491/988] Update nuget-config-file.md Fixes #2196 --- docs/reference/nuget-config-file.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/reference/nuget-config-file.md b/docs/reference/nuget-config-file.md index aabc82aba..6cf6afa68 100644 --- a/docs/reference/nuget-config-file.md +++ b/docs/reference/nuget-config-file.md @@ -218,7 +218,7 @@ Stores keys for sources that use API key authentication, as set with the [`nuget ### disabledPackageSources -Identified currently disabled sources. May be empty. +Identified currently disabled sources. May be empty. Unless specific sources are disabled in this section, they are enabled. | Key | Value | | --- | --- | @@ -235,6 +235,8 @@ Identified currently disabled sources. May be empty. ``` +In the above eample, `Contoso` source is disabled and this source will not be used to download or install packages. + ### activePackageSource *(2.x only; deprecated in 3.x+)* From e0d197e8bd668c44fe0a7bb32e15d0cdab987ff6 Mon Sep 17 00:00:00 2001 From: Donnie Goodson <49205731+donnie-msft@users.noreply.github.com> Date: Tue, 30 Nov 2021 13:52:56 -0500 Subject: [PATCH 492/988] Add Solution Explorer document reference --- docs/quickstart/install-and-use-a-package-in-visual-studio.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/quickstart/install-and-use-a-package-in-visual-studio.md b/docs/quickstart/install-and-use-a-package-in-visual-studio.md index 4a6572204..9de367790 100644 --- a/docs/quickstart/install-and-use-a-package-in-visual-studio.md +++ b/docs/quickstart/install-and-use-a-package-in-visual-studio.md @@ -30,7 +30,7 @@ NuGet packages can be installed into any .NET project, provided that the package For this walkthrough, use a simple WPF app. Create a project in Visual Studio using **File** > **New Project**, typing **.NET** in the search box, and then selecting the **WPF App (.NET Framework)**. Click **Next**. Accept the default values for **Framework** when prompted. -Visual Studio creates the project, which opens in Solution Explorer. +Visual Studio creates the project, which can be found in Solution Explorer. For more information, see [Learn about Solution Explorer](https://docs.microsoft.com/visualstudio/ide/use-solution-explorer). ## Add the Newtonsoft.Json NuGet package From c640398fdcf14c76fb7f08f316454a49e1af7f48 Mon Sep 17 00:00:00 2001 From: Donnie Goodson <49205731+donnie-msft@users.noreply.github.com> Date: Tue, 30 Nov 2021 14:03:48 -0500 Subject: [PATCH 493/988] use relative link --- docs/quickstart/install-and-use-a-package-in-visual-studio.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/quickstart/install-and-use-a-package-in-visual-studio.md b/docs/quickstart/install-and-use-a-package-in-visual-studio.md index 9de367790..da1ba6701 100644 --- a/docs/quickstart/install-and-use-a-package-in-visual-studio.md +++ b/docs/quickstart/install-and-use-a-package-in-visual-studio.md @@ -30,7 +30,7 @@ NuGet packages can be installed into any .NET project, provided that the package For this walkthrough, use a simple WPF app. Create a project in Visual Studio using **File** > **New Project**, typing **.NET** in the search box, and then selecting the **WPF App (.NET Framework)**. Click **Next**. Accept the default values for **Framework** when prompted. -Visual Studio creates the project, which can be found in Solution Explorer. For more information, see [Learn about Solution Explorer](https://docs.microsoft.com/visualstudio/ide/use-solution-explorer). +Visual Studio creates the project, which can be found in Solution Explorer. For more information, see [Learn about Solution Explorer](/visualstudio/ide/use-solution-explorer). ## Add the Newtonsoft.Json NuGet package From 5b321ec7425b02f086bc3881ea91f9b5a20d5e94 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Tue, 30 Nov 2021 13:05:25 -0600 Subject: [PATCH 494/988] Update docs/reference/nuget-config-file.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Loïc Sharma <737941+loic-sharma@users.noreply.github.com> --- docs/reference/nuget-config-file.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/nuget-config-file.md b/docs/reference/nuget-config-file.md index 6cf6afa68..fec7fb427 100644 --- a/docs/reference/nuget-config-file.md +++ b/docs/reference/nuget-config-file.md @@ -235,7 +235,7 @@ Identified currently disabled sources. May be empty. Unless specific sources are ``` -In the above eample, `Contoso` source is disabled and this source will not be used to download or install packages. +In the example above, the package source `Contoso` is disabled and will not be used to download or install packages. ### activePackageSource From 6bebc501cd964a368504657bdc330724048b118b Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Tue, 30 Nov 2021 13:15:59 -0600 Subject: [PATCH 495/988] Add a note about app components vs. reusable libraries Fixes #2590 --- docs/what-is-nuget.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/what-is-nuget.md b/docs/what-is-nuget.md index bad0e8bc8..22eb54d85 100644 --- a/docs/what-is-nuget.md +++ b/docs/what-is-nuget.md @@ -32,7 +32,7 @@ A "compatible" package means that it contains assemblies built for at least one Package developers who require APIs outside of .NET Standard, on the other hand, create separate assemblies for the different target frameworks they want to support and include all of those assemblies in the same package (which is called "multi-targeting"). When a consumer installs such a package, NuGet extracts only those assemblies that are needed by the project. This minimizes the package's footprint in the final application and/or assemblies produced by that project. A multi-targeting package is, of course, more difficult for its creator to maintain. > [!Note] -> Targeting .NET Standard supersedes the previous approach of using various portable class library (PCL) targets. This documentation therefore focuses on creating packages for .NET Standard. +> For guidance on app components vs. reusable libraries, see the [.NET Standard documentation on the topic](/dotnet/standard/net-standard?branch=master#when-to-target-net50-vs-netstandard). ## NuGet tools From b7dc06ff001176c8ab1abc4e33fe7f53e2f96c09 Mon Sep 17 00:00:00 2001 From: Donnie Goodson <49205731+donnie-msft@users.noreply.github.com> Date: Tue, 30 Nov 2021 14:48:10 -0500 Subject: [PATCH 496/988] Update the Sample link and formatting --- docs/visual-studio-extensibility/Visual-Studio-Templates.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/visual-studio-extensibility/Visual-Studio-Templates.md b/docs/visual-studio-extensibility/Visual-Studio-Templates.md index 046416985..be705fc5e 100644 --- a/docs/visual-studio-extensibility/Visual-Studio-Templates.md +++ b/docs/visual-studio-extensibility/Visual-Studio-Templates.md @@ -20,7 +20,9 @@ The remainder of this section describes the specific steps to take when authorin - [Adding packages to a template](#adding-packages-to-a-template) - [Best practices](#best-practices) -For an example, see the [NuGetInVsTemplates sample](https://bitbucket.org/marcind/nugetinvstemplates). +## Samples + +The [Preinstalled-Packages](https://github.com/NuGet/Samples/tree/main/Preinstalled-Packages) sample is available in the NuGet/Samples repository on GitHub. ## Adding packages to a template From 2422de46b08ac8ec4ffeba22a7441e5694fc1b51 Mon Sep 17 00:00:00 2001 From: Claire Novotny <1427284+clairernovotny@users.noreply.github.com> Date: Tue, 30 Nov 2021 15:39:35 -0500 Subject: [PATCH 497/988] Clarify wording --- docs/concepts/Security-Best-Practices.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index f6ca1b1c0..87e00213f 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -167,7 +167,7 @@ To author sign a package, see [Sign a package](../create-packages/sign-a-package **📦🖊 Package Author** -Reproducible builds creates binaries that are binary identical each time you build it, and contain source code links and compiler metadata that enable a package consumer to recreate the binary directly and validate that the build environment has not been compromised. +Reproducible builds creates binaries that are byte-for-byte identical each time you build it, and contain source code links and compiler metadata that enable a package consumer to recreate the binary directly and validate that the build environment has not been compromised. To learn more about reproducible builds, see [Producing Packages with Source Link](https://devblogs.microsoft.com/dotnet/producing-packages-with-source-link/) and the [Reproducible Build Validation](https://github.com/dotnet/designs/blob/main/accepted/2020/reproducible-builds.md) spec. @@ -199,4 +199,4 @@ Your software supply chain is anything that goes into or affects your code. Even You learned about various methods that NuGet and [GitHub](/learn/modules/maintain-secure-repository-github/) provide that are available to you today to be more effective in viewing, managing, and monitoring your supply chain. -For more information about securing the world's software, see [The State of the Octoverse 2020 Security Report](https://octoverse.github.com/static/github-octoverse-2020-security-report.pdf). \ No newline at end of file +For more information about securing the world's software, see [The State of the Octoverse 2020 Security Report](https://octoverse.github.com/static/github-octoverse-2020-security-report.pdf). From c5c93e8b5e5b3a0d3ecd43b3c49bfc44a581cf96 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Tue, 30 Nov 2021 15:23:14 -0600 Subject: [PATCH 498/988] Clarify limitation of package source mapping Fixes #2610 --- docs/consume-packages/Package-Source-Mapping.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/consume-packages/Package-Source-Mapping.md b/docs/consume-packages/Package-Source-Mapping.md index 8945b89c6..8280dd3e3 100644 --- a/docs/consume-packages/Package-Source-Mapping.md +++ b/docs/consume-packages/Package-Source-Mapping.md @@ -111,3 +111,4 @@ For an idea of how your source mappings may look like, refer to our [samples rep > > * There are no nuget.exe or dotnet.exe commands for managing the package source mapping configuration, see [NuGet/Home#10735](https://github.com/NuGet/Home/issues/10735). > * There are no means of mapping packages at package installation time, see [NuGet/Home#10730](https://github.com/NuGet/Home/issues/10730). +> * There is a limitation when using the `DotNetCoreCLI@2` Azure Pipelines task which requires `feed-` prefixes in your source mapping configuration, see [microsoft/azure-pipelines-tasks#15542](https://github.com/microsoft/azure-pipelines-tasks/issues/15542). From f7fb691f6bda0b8acdd316765612bea8b06be4d6 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Wed, 1 Dec 2021 06:55:02 -0600 Subject: [PATCH 499/988] Clarify note further --- docs/consume-packages/Package-Source-Mapping.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Package-Source-Mapping.md b/docs/consume-packages/Package-Source-Mapping.md index 8280dd3e3..c13e71c65 100644 --- a/docs/consume-packages/Package-Source-Mapping.md +++ b/docs/consume-packages/Package-Source-Mapping.md @@ -111,4 +111,4 @@ For an idea of how your source mappings may look like, refer to our [samples rep > > * There are no nuget.exe or dotnet.exe commands for managing the package source mapping configuration, see [NuGet/Home#10735](https://github.com/NuGet/Home/issues/10735). > * There are no means of mapping packages at package installation time, see [NuGet/Home#10730](https://github.com/NuGet/Home/issues/10730). -> * There is a limitation when using the `DotNetCoreCLI@2` Azure Pipelines task which requires `feed-` prefixes in your source mapping configuration, see [microsoft/azure-pipelines-tasks#15542](https://github.com/microsoft/azure-pipelines-tasks/issues/15542). +> * There is a limitation when using the `DotNetCoreCLI@2` Azure Pipelines task which requires `feed-` prefixes in your source mapping configuration, it is recommended to use `NuGetAuthenticate` for authentication needs instead, see [microsoft/azure-pipelines-tasks#15542](https://github.com/microsoft/azure-pipelines-tasks/issues/15542). From 14d0a7a03a0ff296ddcacad38eb2fce8a5d425dc Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Wed, 1 Dec 2021 15:56:40 -0800 Subject: [PATCH 500/988] Add 6.0.1 to 6.0 release notes (#2607) --- docs/release-notes/NuGet-6.0.md | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/docs/release-notes/NuGet-6.0.md b/docs/release-notes/NuGet-6.0.md index e2dabe5e2..13d3e0969 100644 --- a/docs/release-notes/NuGet-6.0.md +++ b/docs/release-notes/NuGet-6.0.md @@ -13,14 +13,15 @@ NuGet distribution vehicles: | NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | |:---|:---|:---| -| [**6.0.0**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.0](https://visualstudio.microsoft.com/downloads/) | [6.0.0](https://dotnet.microsoft.com/download/dotnet-core/6.0)1 | +| [**6.0.0**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.0.0](https://visualstudio.microsoft.com/downloads/) | [6.0.0](https://dotnet.microsoft.com/download/dotnet-core/6.0)1 | +| **6.0.1** | [Visual Studio 2022 version 17.0.2](https://visualstudio.microsoft.com/downloads/) | N/A | 1 Installed with Visual Studio 2022 with.NET Core workload > [!NOTE] > Visual Studio 17.0, MSBuild 17.0, and .NET 6.0 require NuGet.exe 6.0 or later. -## Summary: What's New in 6.0 +## Summary: What's New in 6.0.0 🎉 **This is the first release to offer full authoring and restoring support for NuGet packages targeting .NET 6.0** 🎉 @@ -320,7 +321,18 @@ Install the [Visual Studio 2022 Preview](https://visualstudio.microsoft.com/down **[List of all issues fixed in this release - 6.0](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=Z2lkOi8vcmFwdG9yL1JlbGVhc2UvNDMwMDQ)** -**[List of commits in this release - 6.0](https://github.com/NuGet/NuGet.Client/compare/5.11.0.17...6.0.0.262)** +**[List of commits in this release - 6.0.0](https://github.com/NuGet/NuGet.Client/compare/5.11.0.17...6.0.0.280)** + +## Summary: What's New in 6.0.1 + +Only Visual Studio was updated with this version of NuGet. + +### Issues fixed in this release + +* [Bug]: Cannot get INuGetProjectService from the service broker in Visual Studio 17 - [#11367](https://github.com/NuGet/Home/issues/11367) +* [Bug]: Package Manager Console initialization might cause deadlocks - [#11320](https://github.com/NuGet/Home/issues/11320) + +**[List of commits in this release - 6.0.1](https://github.com/NuGet/NuGet.Client/compare/6.0.0.280...6.0.1.1)** ### Community contributions From 7fb7918fee7d277a64c7e41eaffbbce54417a49c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20R=C3=B6ssel=20=5ByWorks=5D?= Date: Mon, 13 Dec 2021 15:07:30 +0100 Subject: [PATCH 501/988] Fixed typo ... and improved sentence structure a bit, I hope. --- .../migrate-packages-config-to-package-reference.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/migrate-packages-config-to-package-reference.md b/docs/consume-packages/migrate-packages-config-to-package-reference.md index 0e43ff4b2..93a3f2c6f 100644 --- a/docs/consume-packages/migrate-packages-config-to-package-reference.md +++ b/docs/consume-packages/migrate-packages-config-to-package-reference.md @@ -25,7 +25,7 @@ Visual Studio 2017 Version 15.7 and later supports migrating a project from the * Migration is not currently available for C++ and ASP.NET projects. * Some packages may not be fully compatible with PackageReference. For more information, see [package compatibility issues](#package-compatibility-issues). -In addition, there are some differences in how PackageReferences work compared to packages.config. For example - [constraining upgrade versions](../consume-packages/reinstalling-and-updating-packages.md#constraining-upgrade-versions) is not supprted by PackageReference but add support for [Floating Versions](../consume-packages/package-references-in-project-files.md#floating-versions). +In addition, there are some differences in how PackageReferences work compared to packages.config. For example, [constraining upgrade versions](../consume-packages/reinstalling-and-updating-packages.md#constraining-upgrade-versions) is not supported by PackageReference, but PackageReference adds support for [Floating Versions](../consume-packages/package-references-in-project-files.md#floating-versions). ### Known Issues From ecac1268610fb47b39e7127c19a9d2360c713cc1 Mon Sep 17 00:00:00 2001 From: v-hearya Date: Mon, 13 Dec 2021 23:51:31 +0530 Subject: [PATCH 502/988] en-us removed --- docs/what-is-nuget.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/what-is-nuget.md b/docs/what-is-nuget.md index 4d3124bc4..68ee5fdbd 100644 --- a/docs/what-is-nuget.md +++ b/docs/what-is-nuget.md @@ -106,7 +106,7 @@ Take a moment to browse the table of contents for this documentation, and you se ## Related video -> [!Video https://docs.microsoft.com/en-us/shows/NuGet-101/What-is-NuGet-1-of-5/player] +> [!Video https://docs.microsoft.com/shows/NuGet-101/What-is-NuGet-1-of-5/player] Find more NuGet videos on [Channel 9](/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). From b5dfa43454b2fb3466f7598669c573d340021e4b Mon Sep 17 00:00:00 2001 From: v-hearya Date: Mon, 13 Dec 2021 23:52:07 +0530 Subject: [PATCH 503/988] en-us removed --- .../install-and-use-a-package-using-the-dotnet-cli.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md b/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md index cf629aa7d..4cf284baa 100644 --- a/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md +++ b/docs/quickstart/install-and-use-a-package-using-the-dotnet-cli.md @@ -99,7 +99,7 @@ NuGet packages can be installed into a .NET project of some kind. For this walkt ``` ## Related video -> [!Video https://docs.microsoft.com/en-us/shows/NuGet-101/Install-and-Use-a-NuGet-Package-with-the-NET-CLI-3-of-5/player] +> [!Video https://docs.microsoft.com/shows/NuGet-101/Install-and-Use-a-NuGet-Package-with-the-NET-CLI-3-of-5/player] Find more NuGet videos on [Channel 9](/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). From 15e8cd3e0b98a169346224af74660682b8c19f5d Mon Sep 17 00:00:00 2001 From: v-hearya Date: Mon, 13 Dec 2021 23:52:42 +0530 Subject: [PATCH 504/988] en-us removed --- docs/quickstart/install-and-use-a-package-in-visual-studio.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/quickstart/install-and-use-a-package-in-visual-studio.md b/docs/quickstart/install-and-use-a-package-in-visual-studio.md index c395dcba4..2a9fc4b2c 100644 --- a/docs/quickstart/install-and-use-a-package-in-visual-studio.md +++ b/docs/quickstart/install-and-use-a-package-in-visual-studio.md @@ -122,7 +122,7 @@ With the Newtonsoft.Json package in the project, you can call its `JsonConvert.S ## Related video -> [!Video https://docs.microsoft.com/en-us/shows/NuGet-101/Install-and-Use-a-NuGet-Package-with-Visual-Studio-2-of-5/player] +> [!Video https://docs.microsoft.com/shows/NuGet-101/Install-and-Use-a-NuGet-Package-with-Visual-Studio-2-of-5/player] Find more NuGet videos on [Channel 9](/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). From fa33139c0eba4c1c3bf19f59ae68b7af2cc1e10d Mon Sep 17 00:00:00 2001 From: v-hearya Date: Mon, 13 Dec 2021 23:53:13 +0530 Subject: [PATCH 505/988] en-us removed --- .../create-and-publish-a-package-using-visual-studio.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/quickstart/create-and-publish-a-package-using-visual-studio.md b/docs/quickstart/create-and-publish-a-package-using-visual-studio.md index 61ca8fa96..643f315da 100644 --- a/docs/quickstart/create-and-publish-a-package-using-visual-studio.md +++ b/docs/quickstart/create-and-publish-a-package-using-visual-studio.md @@ -190,7 +190,7 @@ This will include a file named `readme.txt` in the package root. Visual Studio d ## Related video -> [!Video https://docs.microsoft.com/en-us/shows/NuGet-101/Create-and-Publish-a-NuGet-Package-with-Visual-Studio-4-of-5/player] +> [!Video https://docs.microsoft.com/shows/NuGet-101/Create-and-Publish-a-NuGet-Package-with-Visual-Studio-4-of-5/player] Find more NuGet videos on [Channel 9](/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). From e4c4f46b1a20d0d45ddbc6a34ec707f93de1753a Mon Sep 17 00:00:00 2001 From: v-hearya Date: Mon, 13 Dec 2021 23:53:47 +0530 Subject: [PATCH 506/988] en-us removed --- .../create-and-publish-a-package-using-the-dotnet-cli.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md index 9eb22ccde..c667da03e 100644 --- a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md +++ b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md @@ -102,7 +102,7 @@ Once you have a `.nupkg` file, you publish it to nuget.org using the `dotnet nug ## Related video -> [!Video https://docs.microsoft.com/en-us/shows/NuGet-101/Create-and-Publish-a-NuGet-Package-with-the-NET-CLI-5-of-5/player] +> [!Video https://docs.microsoft.com/shows/NuGet-101/Create-and-Publish-a-NuGet-Package-with-the-NET-CLI-5-of-5/player] Find more NuGet videos on [Channel 9](/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). From 4003dbb4baa87633c7ae868e612b57ab23da1f51 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 13 Dec 2021 12:35:36 -0600 Subject: [PATCH 507/988] Clarify --- docs/consume-packages/Package-Source-Mapping.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Package-Source-Mapping.md b/docs/consume-packages/Package-Source-Mapping.md index c13e71c65..0e304a03e 100644 --- a/docs/consume-packages/Package-Source-Mapping.md +++ b/docs/consume-packages/Package-Source-Mapping.md @@ -111,4 +111,4 @@ For an idea of how your source mappings may look like, refer to our [samples rep > > * There are no nuget.exe or dotnet.exe commands for managing the package source mapping configuration, see [NuGet/Home#10735](https://github.com/NuGet/Home/issues/10735). > * There are no means of mapping packages at package installation time, see [NuGet/Home#10730](https://github.com/NuGet/Home/issues/10730). -> * There is a limitation when using the `DotNetCoreCLI@2` Azure Pipelines task which requires `feed-` prefixes in your source mapping configuration, it is recommended to use `NuGetAuthenticate` for authentication needs instead, see [microsoft/azure-pipelines-tasks#15542](https://github.com/microsoft/azure-pipelines-tasks/issues/15542). +> * There is a limitation when using the `DotNetCoreCLI@2` Azure Pipelines task which can be worked around by using `feed-` prefixes in your source mapping configuration, it is recommended however to use `NuGetAuthenticate` for your authentication needs instead, see [microsoft/azure-pipelines-tasks#15542](https://github.com/microsoft/azure-pipelines-tasks/issues/15542). From f60da78feee45a5af71d34633c054f84a4e9c00f Mon Sep 17 00:00:00 2001 From: neilcampbe11 Date: Wed, 15 Dec 2021 12:24:51 +0000 Subject: [PATCH 508/988] Update NU5128.md fix xml --- docs/reference/errors-and-warnings/NU5128.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/errors-and-warnings/NU5128.md b/docs/reference/errors-and-warnings/NU5128.md index 1d0703f94..7ded238b1 100644 --- a/docs/reference/errors-and-warnings/NU5128.md +++ b/docs/reference/errors-and-warnings/NU5128.md @@ -41,7 +41,7 @@ Note that the TFM identifier used in the assembly paths use a different format t ... - + ``` * Remove the `lib/` or `ref/` files From 4389b54293243f834125e57e5fc9836ae2e6b58e Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Tue, 21 Dec 2021 14:42:24 -0600 Subject: [PATCH 509/988] Update docs/consume-packages/Package-Source-Mapping.md Co-authored-by: Andy Zivkovic --- docs/consume-packages/Package-Source-Mapping.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Package-Source-Mapping.md b/docs/consume-packages/Package-Source-Mapping.md index 0e304a03e..c8f7ab2ae 100644 --- a/docs/consume-packages/Package-Source-Mapping.md +++ b/docs/consume-packages/Package-Source-Mapping.md @@ -111,4 +111,4 @@ For an idea of how your source mappings may look like, refer to our [samples rep > > * There are no nuget.exe or dotnet.exe commands for managing the package source mapping configuration, see [NuGet/Home#10735](https://github.com/NuGet/Home/issues/10735). > * There are no means of mapping packages at package installation time, see [NuGet/Home#10730](https://github.com/NuGet/Home/issues/10730). -> * There is a limitation when using the `DotNetCoreCLI@2` Azure Pipelines task which can be worked around by using `feed-` prefixes in your source mapping configuration, it is recommended however to use `NuGetAuthenticate` for your authentication needs instead, see [microsoft/azure-pipelines-tasks#15542](https://github.com/microsoft/azure-pipelines-tasks/issues/15542). +> * There is a limitation when using the `DotNetCoreCLI@2` Azure Pipelines task which can be worked around by using `feed-` prefixes in your source mapping configuration. It is recommended however to use `NuGetAuthenticate` for your authentication needs and call the dotnet cli directly from a script task. See [microsoft/azure-pipelines-tasks#15542](https://github.com/microsoft/azure-pipelines-tasks/issues/15542). From 2773e135d97440bd1335f99aa356981a85bed75c Mon Sep 17 00:00:00 2001 From: v-ddennis <93797680+v-ddennis@users.noreply.github.com> Date: Wed, 22 Dec 2021 00:35:55 -0600 Subject: [PATCH 510/988] NuGet validation updates. --- .../managing-the-global-packages-and-cache-folders.md | 4 ++-- docs/create-packages/creating-a-package-dotnet-cli.md | 2 +- docs/release-notes/NuGet-4.0-RC.md | 2 +- docs/release-notes/NuGet-4.0-RTM.md | 2 +- docs/release-notes/NuGet-5.4.md | 2 +- docs/release-notes/NuGet-5.5.md | 2 +- docs/release-notes/NuGet-5.9.md | 2 +- 7 files changed, 8 insertions(+), 8 deletions(-) diff --git a/docs/consume-packages/managing-the-global-packages-and-cache-folders.md b/docs/consume-packages/managing-the-global-packages-and-cache-folders.md index cb621f84b..5ef5db58f 100644 --- a/docs/consume-packages/managing-the-global-packages-and-cache-folders.md +++ b/docs/consume-packages/managing-the-global-packages-and-cache-folders.md @@ -103,11 +103,11 @@ Starting in Visual Studio 2017, use the **Tools > NuGet Package Manager > Packag The following errors can occur when using `nuget locals` or `dotnet nuget locals`: -- *Error: The process cannot access the file because it is being used by another process* or *Clearing local resources failed: Unable to delete one or more files* +- *Error: The process cannot access the file \ because it is being used by another process* or *Clearing local resources failed: Unable to delete one or more files* One or more files in the folder are in use by another process; for example, a Visual Studio project is open that refers to packages in the *global-packages* folder. Close those processes and try again. -- *Error: Access to the path is denied* or *The directory is not empty* +- *Error: Access to the path \ is denied* or *The directory is not empty* You don't have permission to delete files in the cache. Change the folder permissions, if possible, and try again. Otherwise, contact your system administrator. diff --git a/docs/create-packages/creating-a-package-dotnet-cli.md b/docs/create-packages/creating-a-package-dotnet-cli.md index a0feed738..bb1a552a9 100644 --- a/docs/create-packages/creating-a-package-dotnet-cli.md +++ b/docs/create-packages/creating-a-package-dotnet-cli.md @@ -99,7 +99,7 @@ To automatically run `dotnet pack` when you run `dotnet build`, add the followin true ``` -When you run `dotnet pack` on a solution, this packs all the projects in the solution that are packable ([](/dotnet/core/tools/csproj#nuget-metadata-properties) property is set to `true`). +When you run `dotnet pack` on a solution, this packs all the projects in the solution that are packable ([\](/dotnet/core/tools/csproj#nuget-metadata-properties) property is set to `true`). > [!NOTE] > When you automatically generate the package, the time to pack increases the build time for your project. diff --git a/docs/release-notes/NuGet-4.0-RC.md b/docs/release-notes/NuGet-4.0-RC.md index 636894afe..8deddc15f 100644 --- a/docs/release-notes/NuGet-4.0-RC.md +++ b/docs/release-notes/NuGet-4.0-RC.md @@ -47,7 +47,7 @@ ms.reviewer: ananguar - TFS issue: "[file]not be found in your workspace, or you do not have permission to access it" - [#2805](https://github.com/NuGet/Home/issues/2805) -- Typing "nuget " in vs quicklaunch search box keeps "nuget " prefix - [#2719](https://github.com/NuGet/Home/issues/2719) +- Typing "nuget \" in vs quicklaunch search box keeps "nuget " prefix - [#2719](https://github.com/NuGet/Home/issues/2719) - System.Xml.XmlException: Unrecognized root element in Core Properties part. Line 2, position 2. - [#2718](https://github.com/NuGet/Home/issues/2718) diff --git a/docs/release-notes/NuGet-4.0-RTM.md b/docs/release-notes/NuGet-4.0-RTM.md index 48ae3e641..cea4530b9 100644 --- a/docs/release-notes/NuGet-4.0-RTM.md +++ b/docs/release-notes/NuGet-4.0-RTM.md @@ -332,7 +332,7 @@ There is no workaround at this time. - dotnetcore pack always seems to set ProjectReference version to 1.0.0 - [#3874](https://github.com/NuGet/Home/issues/3874) - dotnet - - dotnetcore pack fails with project references and - [#3865](https://github.com/NuGet/Home/issues/3865) + - dotnetcore pack fails with project references and \ - [#3865](https://github.com/NuGet/Home/issues/3865) - LockRecursionException in ProjectSystemCache.TryGetProjectNameByShortName - [#3861](https://github.com/NuGet/Home/issues/3861) diff --git a/docs/release-notes/NuGet-5.4.md b/docs/release-notes/NuGet-5.4.md index ddcd32535..7e49fe0e6 100644 --- a/docs/release-notes/NuGet-5.4.md +++ b/docs/release-notes/NuGet-5.4.md @@ -37,7 +37,7 @@ NuGet distribution vehicles: * Lock File not properly generated - framework ordering should not impact the restore with lockedmode - [#8645](https://github.com/NuGet/Home/issues/8645) -* LockFile validation fails for projects with set in SDK 3.0.100 - [#8639](https://github.com/NuGet/Home/issues/8639) +* LockFile validation fails for projects with \ set in SDK 3.0.100 - [#8639](https://github.com/NuGet/Home/issues/8639) * Signing Validation will now properly reject signatures with timestamps which have 2 values under the same OID - [#8629](https://github.com/NuGet/Home/issues/8629) diff --git a/docs/release-notes/NuGet-5.5.md b/docs/release-notes/NuGet-5.5.md index 6bb6cc47f..67fdbc22f 100644 --- a/docs/release-notes/NuGet-5.5.md +++ b/docs/release-notes/NuGet-5.5.md @@ -67,7 +67,7 @@ NuGet distribution vehicles: * VS: solution restore perpetually fails due to race condition - [#8881](https://github.com/NuGet/Home/issues/8881) -* Constant "loading.." on installed tab, and "searching .." on updates tab - [#8890](https://github.com/NuGet/Home/issues/8890) +* Constant "loading.." on installed tab, and "searching \.." on updates tab - [#8890](https://github.com/NuGet/Home/issues/8890) * Missing Embedded Icons in VS PM UI after cache expires - [#9069](https://github.com/NuGet/Home/issues/9069) diff --git a/docs/release-notes/NuGet-5.9.md b/docs/release-notes/NuGet-5.9.md index f3b3dfa36..37ce981e8 100644 --- a/docs/release-notes/NuGet-5.9.md +++ b/docs/release-notes/NuGet-5.9.md @@ -93,7 +93,7 @@ NuGet distribution vehicles: * Output is wrapped at 80 characters on macOS when redirected - [#10198](https://github.com/NuGet/Home/issues/10198) -* Restore fails with -Source - [#9406](https://github.com/NuGet/Home/issues/9406) +* Restore fails with -Source \ - [#9406](https://github.com/NuGet/Home/issues/9406) * netcoreapp5.0-windows does not round trip and does not parse platform information - [#10177](https://github.com/NuGet/Home/issues/10177) From 683f7cac4b020e84fe925fafb3ee4302d6c89c0f Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Mon, 3 Jan 2022 14:28:48 -0800 Subject: [PATCH 511/988] Document PackageDownload (#2623) --- docs/TOC.md | 1 + .../Package-Source-Mapping.md | 2 +- .../PackageDownload-Functionality.md | 77 +++++++++++++++++++ 3 files changed, 79 insertions(+), 1 deletion(-) create mode 100644 docs/consume-packages/PackageDownload-Functionality.md diff --git a/docs/TOC.md b/docs/TOC.md index dc2ca0ff7..3a308a84f 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -27,6 +27,7 @@ ### [Work with authenticated Feeds](consume-packages/consuming-packages-authenticated-feeds.md) ### [Work with source control systems](consume-packages/packages-and-source-control.md) ### [Common NuGet configurations](consume-packages/configuring-nuget-behavior.md) +### [PackageDownload functionality](consume-packages/packagedownload-functionality.md) ## Reference packages in your project ### [PackageReference in project files](consume-packages/package-references-in-project-files.md) ### [Migrate packages.config to PackageReference](consume-packages/migrate-packages-config-to-package-reference.md) diff --git a/docs/consume-packages/Package-Source-Mapping.md b/docs/consume-packages/Package-Source-Mapping.md index c8f7ab2ae..56e8dbdfd 100644 --- a/docs/consume-packages/Package-Source-Mapping.md +++ b/docs/consume-packages/Package-Source-Mapping.md @@ -1,6 +1,6 @@ --- title: Package Source Mapping -description: Describes Describes the process of installing signed NuGet packages and configuring package signature trust settings. +description: Describes package source mapping functionality and how to onboard author: nkolev92 ms.author: nikolev ms.date: 10/15/2021 diff --git a/docs/consume-packages/PackageDownload-Functionality.md b/docs/consume-packages/PackageDownload-Functionality.md new file mode 100644 index 000000000..2d926ad2e --- /dev/null +++ b/docs/consume-packages/PackageDownload-Functionality.md @@ -0,0 +1,77 @@ +--- +title: Download packages with PackageDownload +description: Describes the PackageDownload feature, which is a complement to PackageReference. +author: nkolev92 +ms.author: nikolev +ms.date: 12/22/2021 +ms.topic: conceptual +--- + +# PackageDownload + +Starting with Visual Studio 2017 and .NET SDK 1.0.0, NuGet [PackageReference](Package-References-in-Project-Files.md) functionality was added. + +`PackageReference` allows you to manage your package dependencies directly in your project file. +When you run restore, the transitive dependencies are resolved automatically and the applicable references are chosen for each package in the project graph. + +In [NuGet version 5.3](..\release-notes\NuGet-5.3.md) a companion feature was introduced for [.NET SDK-style projects](..\resources\check-project-format.md) called `PackageDownload`, which allows you to download the package without including its files in the project. + +## PackageDownload specification + +PackageDownload is a utility feature for all .NET SDK-style projects, and it works along side `PackageReference`. + +`PackageDownload` items support different attributes compared to `PackageReference`. Only attributes listed in the below table are supported. + +| Attributes | Description | Example | +|------------|-------------|---------| +| Version | Only exact versions, surrounded with `[]` are supported. Multiple versions can be specified separated by `;` | `[1.0.0]`, `[1.0.0];[2.0.0]` | + +Packages acquired through PackageDownload will undergo the same [installation process](..\concepts\package-installation-process.md) as packages acquired through PackageReference. +This means [package signatures](installing-signed-packages.md) are validated, [package source mapping](Package-Source-Mapping.md) is considered. +All newly acquired PackageDownload packages will be installed in the global packages folder. + +| Feature | PackageReference | PackageDownload | +|-|------------------|-----------------| +| Package assets selection | Assemblies from packages are automatically added to the project and can be used for compile and runtime | No assets from the package are included in the project. | +| Dependencies | Automatically resolved, and flattened to a single version | Not considered at all | +| pack | Included in the package specification | Not included in the package specification. | +| Transitivity | PackageReference items are automatically propagated to dependant projects | PackageDownload items are ignored by dependant projects | +| Version | Version ranges such as `1.0.0` or `[1.0.0, )` are supported. Exactly 1 version is allowed. | Only exact versions are supported. More than 1 version can be downloaded. | +| dotnet list package | All dependencies are included | PackageDownload packages are not shown by `dotnet list package`. | + +Due to the fact that PackageDownload are not tied to the project in any way beyond acquisition, multiple versions of the same package can be downloaded. + +### PackageDownload limitations + +Given that this is an advanced feature with limited applicability, it doesn't have a tooling support equivalent to PackageReference. + +- There is no VisualStudio or dotnet.exe functionality to modify PackageDownload items. You can only change them manually in your project files. +- dotnet add, remove, and list commands do not account for PackageDownload items. +- PackageDownload items are *not* part of the [packages lock file](package-references-in-project-files.md#locking-dependencies). + +### PackageDownload applications + +The primary application of PackageDownload is downloading packages that do not follow the traditional NuGet package structure and primarily carry build time dependencies. + +Ideally, all your dependencies are expressed through PackageReference, but in scenarios where that's not possible, or often times not practical yet, you can use this feature to simply `download` packages to a certain location, in a similar way that you could achieve that with a `packages.config` file not tied to a project. + +Example: + +```xml + + + + + packages/ + $(RestorePackagesPath)obj/ + net5.0 + true + false + + + + + + + +``` From dd2098f666bd5ed8267708fb81f84274bbdea8ef Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Fri, 7 Jan 2022 07:59:12 -0800 Subject: [PATCH 512/988] Update VS extensibility docs (#2612) --- .../nuget-api-in-visual-studio.md | 1056 ++++++++++------- 1 file changed, 613 insertions(+), 443 deletions(-) diff --git a/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md b/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md index 2ac10a217..97031766d 100644 --- a/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md +++ b/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md @@ -9,11 +9,29 @@ ms.topic: reference # NuGet API in Visual Studio -In addition to the Package Manager UI and Console in Visual Studio, NuGet also exports some useful services through the [Managed Extensibility Framework (MEF)](/dotnet/framework/mef/index). This interface allows other components in Visual Studio to interact with NuGet, which can be used to install and uninstall packages, and to obtain information about installed packages. +In addition to the Package Manager UI and Console in Visual Studio, NuGet also exports some useful services that other extensions can use. These interfaces allow other components in Visual Studio to interact with NuGet, which can be used to install and uninstall packages, and to obtain information about installed packages. -Over the years, NuGet has added many services all of which reside in the `NuGet.VisualStudio` namespace in the `NuGet.VisualStudio.dll` assembly: +NuGet provides services via two different technologies, each of which have their interfaces defined in a different NuGet package. NuGet's older services are available via [the Managed Extensibility Framework (MEF)](/dotnet/framework/mef/), which are available in the package [NuGet.VisualStudio](https://www.nuget.org/packages/NuGet.VisualStudio) ([go to NuGet's MEF services](#mef-services)). There are newer APIs, designed to be usable with `async` code, available in the package `NuGet.VisualStudio.Contracts`, using a Visual Studio's `IServiceBroker` ([go to NuGet's Brokered Services](#brokered-services)). -As of NuGet 3.3+, NuGet exports the following +## Package Versions + +NuGet's product follows Visual Studio's version, but is 11.0 versions behind. For example, NuGet 6.0 corresponds to Visual Studio 2022 17.0, NuGet 5.11 corresponds to Visual Studio 2019 16.11, and so on. + +Starting from Visual Studio 17.1, NuGet's Visual Studio extensibility API packages match the version of Visual Studio that the APIs are targeting. For example, NuGet.VisualStudio and NuGet.VisualStudio.Contracts package version 17.1.0 should be used when your extension targets Visual Studio 17.1 and higher. In Visual Studio 17.0 and earlier, NuGet's package versions are the same as NuGet's product version. For example, if your extension targets Visual Studio 2022 version 17.0, you should use version 6.0 of NuGet's Visual Studio extensibility packages. + +## Services List + +### Brokered Services + +These services are available in the package [NuGet.VisualStudio.Contracts](https://nuget.org/packages/NuGet.VisualStudio.Contracts/). + +- [`INuGetProjectService`](#inugetprojectservice-interface): Methods to interact with a project. (5.7+) + +### MEF Services + +From NuGet 6.0, all of these APIs are available in the package [NuGet.VisualStudio](https://nuget.org/packages/NuGet.VisualStudio/). In NuGet 5.11 and earlier, the APIs in the namespace `NuGet.VisualStudio` are available in the package [NuGet.VisualStudio](https://nuget.org/packages.NuGet.VisualStudio/), and APIs in the namespace `NuGet.SolutionRestoreManager` are available in the package [NuGet.SolutionRestoreManager.Interop](https://www.nuget.org/packages/NuGet.SolutionRestoreManager.Interop/). + +#### NuGet.VisualStudio - [`IRegistryKey`](#iregistrykey-interface): Method to retrieve a value from a registry subkey. (3.3+) - [`IVsCredentialProvider`](#ivscredentialprovider-interface) Contains methods to get credentials for NuGet operations. (4.0+) @@ -23,15 +41,12 @@ As of NuGet 3.3+, NuGet exports the following - [`IVsFrameworkParser`](#ivsframeworkparser-interface) An interface for dealing with the conversion between strings and [FrameworkName](/dotnet/api/system.runtime.versioning.frameworkname) (4.0+) - [`IVsFrameworkParser2`](#ivsframeworkparser2-interface) An interface to parse .NET Framework strings. See [NuGet-IVsFrameworkParser](https://aka.ms/NuGet-IVsFrameworkParser). (5.8+) - [`IVsGlobalPackagesInitScriptExecutor`](#ivsglobalpackagesinitscriptexecutor-interface) Execute powershell scripts from package(s) in a solution (4.0+) -- [`IVsNuGetFramework`](#ivsnugetframework-interface) A type that represents the components of a .NET Target Framework Moniker. (5.8+) - [`IVsPackageInstaller`](#ivspackageinstaller-interface): Methods to install NuGet packages into projects. (3.3+) - [`IVsPackageInstaller2](#ivspackageinstaller2-interface) Contains method to install latest version of a single package into a project within the current solution. - [`IVsPackageInstallerEvents`](#ivspackageinstallerevents-interface): Events for package install/uninstall. (3.3+) - [`IVsPackageInstallerProjectEvents`](#ivspackageinstallerprojectevents-interface): Batch events for package install/uninstall. (3.3+) - [`IVsPackageInstallerServices`](#ivspackageinstallerservices-interface): Methods to retrieve installed packages in the current solution and to check whether a given package is installed in a project. (3.3+) -- [`IVsPackageManagerProvider`](#ivspackagemanagerprovider-interface): Methods to provide alternative Package Manager suggestions for a NuGet package. (3.3+) -- [`IVsPackageMetadata`](#ivspackagemetadata-interface): Methods to retrieve information about an installed package. (3.3+) -- [`IVsPackageProjectMetadata`](#ivspackageprojectmetadata-interface): Methods to retrieve information about a project where NuGet actions are being executed. (3.3+) +- [`IVsPackageManagerProvider`](#ivspackagemanagerprovider-interface): Methods to provide alternative Package Manager suggestions for a NuGet package. (3.3 - 5.11) - [`IVsPackageRestorer`](#ivspackagerestorer-interface): Methods to restore packages installed in a project. (3.3+) - [`IVsPackageSourceProvider`](#ivspackagesourceprovider-interface): Methods to retrieve a list of NuGet package sources. (3.3+) - [`IVsPackageUninstaller`](#ivspackageuninstaller-interface): Methods to uninstall NuGet packages from projects. (3.3+) @@ -39,19 +54,58 @@ As of NuGet 3.3+, NuGet exports the following - [`IVsPathContext2`](#ivspathcontext2-interface) NuGet path information specific to the current context (e.g. project context). (5.0+) - [`IVsPathContextProvider`](#ivspathcontextprovider-interface) A factory to initialize [IVsPathContext](#ivspathcontext-interface) instances. (4.0+) - [`IVsPathContextProvider2`](#ivspathcontextprovider2-interface) A factory to initialize [IVsPathContext2](#ivspathcontext2-interface) instances. (5.0+) -- [`IVsProjectJsonToPackageReferenceMigrateResult`](#ivsprojectjsontopackagereferencemigrateresult-interface) Contains the result of the migrate operation on a legacy project.json project (4.3+) - [`IVsProjectJsonToPackageReferenceMigrator`](#ivsprojectjsontopackagereferencemigrator-interface) Contains methods to migrate a project.json based legacy project to PackageReference based project. (4.3+) - [`IVsSemanticVersionComparer`](#ivssemanticversioncomparer-interface) An interface for comparing two opaque version strings by treating them as NuGet semantic (4.0+) -- [`IVsTemplateWizard`](#ivstemplatewizard-interface): Designed for project/item templates to include pre-installed packages; this interface is *not* meant to be invoked from code and has no public methods. (3.3+) -## Using NuGet services +#### NuGet.SolutionRestoreManager -1. Install the [`NuGet.VisualStudio`](https://www.nuget.org/packages/NuGet.VisualStudio) package into your project, which contains the `NuGet.VisualStudio.dll` assembly. +These interfaces are designed for project systems to interact with NuGet, allowing the project system to notify NuGet of changes to `PackageReference`s, and orchestrate batch updates. Visual Studio extensions that are not project systems probably will not benefit from these APIs. + +- [`IVsSolutionRestoreService`](#ivssolutionrestoreservice-interface) (4.0+) +- [`IVsSolutionRestoreService2`](#ivssolutionrestoreservice2-interface) (4.3+) +- [`IVsSolutionRestoreService3`](#ivssolutionrestoreservice3-interface) (5.1+) +- [`IVsSolutionRestoreService4`](#ivssolutionrestoreservice4-interface) (6.0+) +- [`IVsSolutionRestoreStatusProvider`](#ivssolutionrestorestatusprovider-interface) (6.0+) - When installed, the package automatically sets the **Embed Interop Types** property of the assembly reference to **True**. This makes your code resilient against version changes when users update to newer versions of NuGet. +## Using NuGet Services > [!Warning] -> Do not use any other types besides the public interfaces in your code, and do not reference any other NuGet assemblies, including `NuGet.Core.dll`. +> Do not use any other types besides the public interfaces in your code, and do not reference any other NuGet assemblies, such as `NuGet.Protocol.dll`, `NuGet.Frameworks.dll`, and so on. + +In order to maximize the backwards compatibility promises we make, but also providing ourselves the flexibility to implement new features, performance improvements, and bug fixes in Visual Studio, we do not support the NuGet Client SDK being used in Visual Studio, and we do not provide binding redirects in `devenv.exe.config` to assemblies other than our VS extensibility contracts. + +If you would like a new NuGet related API in Visual Studio, please search [NuGet's Home repo](https://github.com/NuGet/Home/) and upvote any existing issues if you find a similar one. If you can't find an existing feature request to upvote, please create one. + +### Brokered Services + +1. Install the [`NuGet.VisualStudio.Contracts`](https://www.nuget.org/packages/NuGet.VisualStudio.Contracts/) package into your project, as well as [`Microsoft.VisualStudio.SDK`](https://www.nuget.org/packages/Microsoft.VisualStudio.SDK). + +1. Use the `IAsyncServiceProvider` to get Visual Studio's service broker, and use that to get NuGet's service. Note that [`AsyncPackage` extends `IVsAsyncServiceProvider2`](/dotnet/api/microsoft.visualstudio.shell.asyncpackage), so your class that implements `AsyncPackage` can be used as the `IAsyncServiceProvider`. Also see the docs on [`IBrokeredServiceContainer`](/dotnet/api/microsoft.visualstudio.shell.servicebroker.ibrokeredservicecontainer) and [`IServiceBroker`](/dotnet/api/microsoft.servicehub.framework.iservicebroker) + + ```cs + // Your AsyncPackage implements IAsyncServiceProvider + IAsyncServiceProvider asyncServiceProvider = this; + var brokeredServiceContainer = await asyncServiceProvider.GetServiceAsync(); + var serviceBroker = brokeredServiceContainer.GetFullAccessServiceBroker(); + var nugetProjectService = await serviceBroker.GetProxyAsync(NuGetServices.NuGetProjectServiceV1); + ``` + +1. When your code no longer needs NuGet's brokered service, dispose it. For example, if you only need NuGet's brokered service during a single method call, you can wrap it in a C#`using` statement: + + ```cs + InstalledPackagesResult installedPackagesResult; + using (nugetProjectService as IDisposable) + { + installedPackagesResult = await nugetProjectService.GetInstalledPackages(projectGuid, cancellationToken); + } + ``` + + +### MEF Services + +1. Install the [`NuGet.VisualStudio`](https://www.nuget.org/packages/NuGet.VisualStudio) package into your project, which contains the `NuGet.VisualStudio.dll` assembly. + + In NuGet 5.11 and earlier, the package automatically sets the [**Embed Interop Types**](/dotnet/framework/interop/type-equivalence-and-embedded-interop-types) property of the assembly reference to **True**. [Visual Studio 2022 policy regarding embed interop types changed](/visualstudio/extensibility/migration/migrated-assemblies?view=vs-2022&preserve-view=true), so NuGet.VisualStudio package version 6.0.0 and above no longer use this. 1. To use a service, import it through the [MEF Import attribute](/dotnet/framework/mef/index#imports-and-exports-with-attributes), or through the [IComponentModel service](/dotnet/api/microsoft.visualstudio.componentmodelhost.icomponentmodel). @@ -72,6 +126,21 @@ As of NuGet 3.3+, NuGet exports the following For reference, the source code for NuGet.VisualStudio is contained within the [NuGet.Clients repository](https://github.com/NuGet/NuGet.Client/tree/dev/src/NuGet.Clients/NuGet.VisualStudio). +## INuGetProjectService interface + +```cs + ///

    Service to interact with projects in a solution + /// This interface should not be implemented. New methods may be added over time. + public interface INuGetProjectService + { + /// Gets the list of packages installed in a project. + /// Project ID (GUID). + /// Cancellation token. + /// The list of packages in the project. + Task GetInstalledPackagesAsync(Guid projectId, CancellationToken cancellationToken); + } +``` + ## IRegistryKey interface ```cs @@ -150,6 +219,7 @@ public interface IRegistryKey /// /// Gets all .NETStandard frameworks currently supported, in ascending order by version. /// + /// This API is
    free-threaded. IEnumerable GetNetStandardFrameworks(); /// @@ -160,8 +230,11 @@ public interface IRegistryKey /// equivalent frameworks are not returned. Additionally, a framework name with version X /// in the result implies that framework names with versions greater than or equal to X /// but having the same are also supported. + /// + /// This API is free-threaded. /// /// The .NETStandard version to get supporting frameworks for. + [Obsolete("This API does not support .NET 5 and higher target frameworks with platforms. Use IVsFrameworkCompatibility3 instead.")] IEnumerable GetFrameworksSupportingNetStandard(FrameworkName frameworkName); /// @@ -170,10 +243,12 @@ public interface IRegistryKey /// compatibility rules. null is returned of none of the frameworks /// are compatible. /// + /// This API is free-threaded. /// The target framework. /// The list of frameworks to choose from. /// If any of the arguments are null. /// The nearest framework. + [Obsolete("This API does not support .NET 5 and higher target frameworks with platforms. Use IVsFrameworkCompatibility3 instead.")] FrameworkName GetNearest(FrameworkName targetFramework, IEnumerable frameworks); } ``` @@ -182,8 +257,9 @@ public interface IRegistryKey ```cs /// - /// Gets all .NETStandard frameworks currently supported, in ascending order by version. + /// Contains methods to discover frameworks and compatibility between frameworks. /// + [Obsolete("This API does not support .NET 5 and higher target frameworks with platforms. Use IVsFrameworkCompatibility3 instead.")] public interface IVsFrameworkCompatibility2 : IVsFrameworkCompatibility { /// @@ -192,6 +268,7 @@ public interface IRegistryKey /// compatibility rules. null is returned of none of the frameworks /// are compatible. /// + /// This API is free-threaded. /// The target framework. /// /// Target frameworks to use if the provided is not compatible. @@ -200,6 +277,7 @@ public interface IRegistryKey /// The list of frameworks to choose from. /// If any of the arguments are null. /// The nearest framework. + [Obsolete("This API does not support .NET 5 and higher target frameworks with platforms. Use IVsFrameworkCompatibility3 instead.")] FrameworkName GetNearest( FrameworkName targetFramework, IEnumerable fallbackTargetFrameworks, @@ -211,7 +289,7 @@ public interface IRegistryKey ```cs /// - /// Gets all .NETStandard frameworks currently supported, in ascending order by version. + /// Contains methods to discover frameworks and compatibility between frameworks. /// public interface IVsFrameworkCompatibility3 { @@ -259,6 +337,7 @@ public interface IRegistryKey /// An interface for dealing with the conversion between strings and /// instances. /// + [Obsolete("This API does not support .NET 5 and higher target frameworks with platforms. Use IVsFrameworkParser2 instead.")] public interface IVsFrameworkParser { /// @@ -266,10 +345,12 @@ public interface IRegistryKey /// (e.g. ".NETFramework,Version=v4.5") into a /// instance. /// + /// This API is free-threaded. /// The framework string. /// If the provided string is null. /// If the provided string cannot be parsed. /// The parsed framework. + [Obsolete("This API does not support .NET 5 and higher target frameworks with platforms. Use IVsFrameworkParser2 instead.")] FrameworkName ParseFrameworkName(string shortOrFullName); /// @@ -279,6 +360,7 @@ public interface IRegistryKey /// /// For example, ".NETFramework,Version=v4.5" is converted to "net45". This is the value /// used inside of .nupkg folder structures as well as in project.json files. + /// This API is free-threaded. /// /// The framework name. /// If the input is null. @@ -286,6 +368,7 @@ public interface IRegistryKey /// If the provided framework name cannot be converted to a short name. /// /// The short framework name. + [Obsolete("This API does not support .NET 5 and higher target frameworks with platforms. Use IVsFrameworkParser2 instead.")] string GetShortFrameworkName(FrameworkName frameworkName); } ``` @@ -335,207 +418,203 @@ public interface IRegistryKey } ``` -## IVsNuGetFramework interface - -```cs - /// A type that represents the components of a .NET Target Framework Moniker. - /// does not support .NET 5 Target Framework Monikers with a platform, but this type does. - public interface IVsNuGetFramework - { - /// The framework moniker. - string TargetFrameworkMoniker { get; } - - /// The platform moniker. - string TargetPlatformMoniker { get; } - - /// The platform minimum version. - /// This property is read by , but will always have a null value when returned from . - string TargetPlatformMinVersion { get; } - } -``` - ## IVsPackageInstaller interface ```cs -public interface IVsPackageInstaller -{ /// - /// Installs a single package from the specified package source. + /// Contains methods to install packages into a project within the current solution. /// - /// - /// The package source to install the package from. This value can be null - /// to indicate that the user's configured sources should be used. Otherwise, - /// this should be the source path as a string. If the user has credentials - /// configured for a source, this value must exactly match the configured source - /// value. - /// - /// The target project for package installation. - /// The package ID of the package to install. - /// - /// The version of the package to install. null can be provided to - /// install the latest version of the package. - /// - /// - /// A boolean indicating whether or not to ignore the package's dependencies - /// during installation. - /// - void InstallPackage(string source, Project project, string packageId, Version version, bool ignoreDependencies); + public interface IVsPackageInstaller + { + /// + /// Installs a single package from the specified package source. + /// + /// Can be called from a background thread. + /// + /// The package source to install the package from. This value can be null + /// to indicate that the user's configured sources should be used. Otherwise, + /// this should be the source path as a string. If the user has credentials + /// configured for a source, this value must exactly match the configured source + /// value. + /// + /// The target project for package installation. + /// The package ID of the package to install. + /// + /// The version of the package to install. null can be provided to + /// install the latest version of the package. + /// + /// + /// A boolean indicating whether or not to ignore the package's dependencies + /// during installation. + /// + [Obsolete("System.Version does not support SemVer pre-release versions. Use the overload with string version instead.")] + void InstallPackage(string source, Project project, string packageId, Version version, bool ignoreDependencies); - /// - /// Installs a single package from the specified package source. - /// - /// - /// The package source to install the package from. This value can be null - /// to indicate that the user's configured sources should be used. Otherwise, - /// this should be the source path as a string. If the user has credentials - /// configured for a source, this value must exactly match the configured source - /// value. - /// - /// The target project for package installation. - /// The package ID of the package to install. - /// - /// The version of the package to install. null can be provided to - /// install the latest version of the package. - /// - /// - /// A boolean indicating whether or not to ignore the package's dependencies - /// during installation. - /// - void InstallPackage(string source, Project project, string packageId, string version, bool ignoreDependencies); + /// + /// Installs a single package from the specified package source. + /// + /// Can be called from a background thread. + /// + /// The package source to install the package from. This value can be null + /// to indicate that the user's configured sources should be used. Otherwise, + /// this should be the source path as a string. If the user has credentials + /// configured for a source, this value must exactly match the configured source + /// value. + /// + /// The target project for package installation. + /// The package ID of the package to install. + /// + /// The version of the package to install. null can be provided to + /// install the latest version of the package. + /// + /// + /// A boolean indicating whether or not to ignore the package's dependencies + /// during installation. + /// + void InstallPackage(string source, Project project, string packageId, string version, bool ignoreDependencies); - /// - /// Installs a single package from the specified package source. - /// - /// The package repository to install the package from. - /// The target project for package installation. - /// The package id of the package to install. - /// - /// The version of the package to install. null can be provided to - /// install the latest version of the package. - /// - /// - /// A boolean indicating whether or not to ignore the package's dependencies - /// during installation. - /// - /// - /// A boolean indicating if assembly references from the package should be - /// skipped. - /// - void InstallPackage(IPackageRepository repository, Project project, string packageId, string version, bool ignoreDependencies, bool skipAssemblyReferences); + /// + /// Installs a single package from the specified package source. + /// + /// The package repository to install the package from. + /// The target project for package installation. + /// The package id of the package to install. + /// + /// The version of the package to install. null can be provided to + /// install the latest version of the package. + /// + /// + /// A boolean indicating whether or not to ignore the package's dependencies + /// during installation. + /// + /// + /// A boolean indicating if assembly references from the package should be + /// skipped. + /// + [Obsolete] + void InstallPackage(IPackageRepository repository, Project project, string packageId, string version, bool ignoreDependencies, bool skipAssemblyReferences); - /// - /// Installs one or more packages that exist on disk in a folder defined in the registry. - /// - /// - /// The registry key name (under NuGet's repository key) that defines the folder on disk - /// containing the packages. - /// - /// - /// A boolean indicating whether the folder contains packages that are - /// pre-unzipped. - /// - /// - /// A boolean indicating whether the assembly references from the packages - /// should be skipped. - /// - /// The target project for package installation. - /// - /// A dictionary of packages/versions to install where the key is the package id - /// and the value is the version. - /// - /// - /// If any version of the package is already installed, no action will be taken. - /// - /// Dependencies are always ignored. - /// - /// - void InstallPackagesFromRegistryRepository(string keyName, bool isPreUnzipped, bool skipAssemblyReferences, Project project, IDictionary packageVersions); + /// + /// Installs one or more packages that exist on disk in a folder defined in the registry. + /// + /// + /// The registry key name (under NuGet's repository key) that defines the folder on disk + /// containing the packages. + /// + /// + /// A boolean indicating whether the folder contains packages that are + /// pre-unzipped. + /// + /// + /// A boolean indicating whether the assembly references from the packages + /// should be skipped. + /// + /// The target project for package installation. + /// + /// A dictionary of packages/versions to install where the key is the package id + /// and the value is the version. + /// + /// + /// If any version of the package is already installed, no action will be taken. + /// + /// Dependencies are always ignored. + /// + /// Can be called from a background thread. + /// + void InstallPackagesFromRegistryRepository(string keyName, bool isPreUnzipped, bool skipAssemblyReferences, Project project, IDictionary packageVersions); - /// - /// Installs one or more packages that exist on disk in a folder defined in the registry. - /// - /// - /// The registry key name (under NuGet's repository key) that defines the folder on disk - /// containing the packages. - /// - /// - /// A boolean indicating whether the folder contains packages that are - /// pre-unzipped. - /// - /// - /// A boolean indicating whether the assembly references from the packages - /// should be skipped. - /// - /// A boolean indicating whether the package's dependencies should be ignored - /// The target project for package installation. - /// - /// A dictionary of packages/versions to install where the key is the package id - /// and the value is the version. - /// - /// - /// If any version of the package is already installed, no action will be taken. - /// - void InstallPackagesFromRegistryRepository(string keyName, bool isPreUnzipped, bool skipAssemblyReferences, bool ignoreDependencies, Project project, IDictionary packageVersions); + /// + /// Installs one or more packages that exist on disk in a folder defined in the registry. + /// + /// + /// The registry key name (under NuGet's repository key) that defines the folder on disk + /// containing the packages. + /// + /// + /// A boolean indicating whether the folder contains packages that are + /// pre-unzipped. + /// + /// + /// A boolean indicating whether the assembly references from the packages + /// should be skipped. + /// + /// A boolean indicating whether the package's dependencies should be ignored + /// The target project for package installation. + /// + /// A dictionary of packages/versions to install where the key is the package id + /// and the value is the version. + /// + /// + /// If any version of the package is already installed, no action will be taken. + /// Can be called from a background thread. + /// + void InstallPackagesFromRegistryRepository(string keyName, bool isPreUnzipped, bool skipAssemblyReferences, bool ignoreDependencies, Project project, IDictionary packageVersions); - /// - /// Installs one or more packages that are embedded in a Visual Studio Extension Package. - /// - /// The Id of the Visual Studio Extension Package. - /// - /// A boolean indicating whether the folder contains packages that are - /// pre-unzipped. - /// - /// - /// A boolean indicating whether the assembly references from the packages - /// should be skipped. - /// - /// The target project for package installation - /// - /// A dictionary of packages/versions to install where the key is the package id - /// and the value is the version. - /// - /// - /// If any version of the package is already installed, no action will be taken. - /// - /// Dependencies are always ignored. - /// - /// - void InstallPackagesFromVSExtensionRepository(string extensionId, bool isPreUnzipped, bool skipAssemblyReferences, Project project, IDictionary packageVersions); + /// + /// Installs one or more packages that are embedded in a Visual Studio Extension Package. + /// + /// The Id of the Visual Studio Extension Package. + /// + /// A boolean indicating whether the folder contains packages that are + /// pre-unzipped. + /// + /// + /// A boolean indicating whether the assembly references from the packages + /// should be skipped. + /// + /// The target project for package installation + /// + /// A dictionary of packages/versions to install where the key is the package id + /// and the value is the version. + /// + /// + /// If any version of the package is already installed, no action will be taken. + /// + /// Dependencies are always ignored. + /// + /// Can be called from a background thread. + /// + void InstallPackagesFromVSExtensionRepository(string extensionId, bool isPreUnzipped, bool skipAssemblyReferences, Project project, IDictionary packageVersions); - /// - /// Installs one or more packages that are embedded in a Visual Studio Extension Package. - /// - /// The Id of the Visual Studio Extension Package. - /// - /// A boolean indicating whether the folder contains packages that are - /// pre-unzipped. - /// - /// - /// A boolean indicating whether the assembly references from the packages - /// should be skipped. - /// - /// A boolean indicating whether the package's dependencies should be ignored - /// The target project for package installation - /// - /// A dictionary of packages/versions to install where the key is the package id - /// and the value is the version. - /// - /// - /// If any version of the package is already installed, no action will be taken. - /// - void InstallPackagesFromVSExtensionRepository(string extensionId, bool isPreUnzipped, bool skipAssemblyReferences, bool ignoreDependencies, Project project, IDictionary packageVersions); -} + /// + /// Installs one or more packages that are embedded in a Visual Studio Extension Package. + /// + /// The Id of the Visual Studio Extension Package. + /// + /// A boolean indicating whether the folder contains packages that are + /// pre-unzipped. + /// + /// + /// A boolean indicating whether the assembly references from the packages + /// should be skipped. + /// + /// A boolean indicating whether the package's dependencies should be ignored + /// The target project for package installation + /// + /// A dictionary of packages/versions to install where the key is the package id + /// and the value is the version. + /// + /// + /// If any version of the package is already installed, no action will be taken. + /// Can be called from a background thread. + /// + void InstallPackagesFromVSExtensionRepository(string extensionId, bool isPreUnzipped, bool skipAssemblyReferences, bool ignoreDependencies, Project project, IDictionary packageVersions); + } ``` ## IVsPackageinstaller2 interface ```cs - [Guid("4F3B122B-A53B-432C-8D85-0FAFB8BE4FF4")] + + /// + /// Contains method to install latest version of a single package into a project within the current solution. + /// public interface IVsPackageInstaller2 : IVsPackageInstaller { /// /// Installs the latest version of a single package from the specified package source. /// + /// Can be called from a background thread. /// /// The package source to install the package from. This value can be null /// to indicate that the user's configured sources should be used. Otherwise, @@ -569,296 +648,257 @@ public interface IVsPackageInstaller ## IVsPackageInstallerEvents interface ```cs -public interface IVsPackageInstallerEvents -{ /// - /// Raised when a package is about to be installed into the current solution. + /// Contains events which are raised when packages are installed or uninstalled from projects and the current + /// solution. /// - event VsPackageEventHandler PackageInstalling; + public interface IVsPackageInstallerEvents + { + /// + /// Raised when a package is about to be installed into the current solution. + /// + event VsPackageEventHandler PackageInstalling; - /// - /// Raised after a package has been installed into the current solution. - /// - event VsPackageEventHandler PackageInstalled; + /// + /// Raised after a package has been installed into the current solution. + /// + event VsPackageEventHandler PackageInstalled; - /// - /// Raised when a package is about to be uninstalled from the current solution. - /// - event VsPackageEventHandler PackageUninstalling; + /// + /// Raised when a package is about to be uninstalled from the current solution. + /// + event VsPackageEventHandler PackageUninstalling; - /// - /// Raised after a package has been uninstalled from the current solution. - /// - event VsPackageEventHandler PackageUninstalled; + /// + /// Raised after a package has been uninstalled from the current solution. + /// + event VsPackageEventHandler PackageUninstalled; - /// - /// Raised after a package has been installed into a project within the current solution. - /// - event VsPackageEventHandler PackageReferenceAdded; + /// + /// Raised after a package has been installed into a project within the current solution. + /// + event VsPackageEventHandler PackageReferenceAdded; - /// - /// Raised after a package has been uninstalled from a project within the current solution. - /// - event VsPackageEventHandler PackageReferenceRemoved; -} + /// + /// Raised after a package has been uninstalled from a project within the current solution. + /// + event VsPackageEventHandler PackageReferenceRemoved; + } ``` ## IVsPackageInstallerProjectEvents interface ```cs -public interface IVsPackageInstallerProjectEvents -{ /// - /// Raised before any IVsPackageInstallerEvents events are raised for a project. + /// Contains batch events which are raised when packages are installed or uninstalled from projects with packages.config + /// and the current solution. /// - event VsPackageProjectEventHandler BatchStart; + public interface IVsPackageInstallerProjectEvents + { + /// + /// Raised before any IVsPackageInstallerEvents events are raised for a project. + /// + event VsPackageProjectEventHandler BatchStart; - /// - /// Raised after all IVsPackageInstallerEvents events are raised for a project. - /// - event VsPackageProjectEventHandler BatchEnd; -} + /// + /// Raised after all IVsPackageInstallerEvents events are raised for a project. + /// + event VsPackageProjectEventHandler BatchEnd; + + } ``` ## IVsPackageInstallerServices interface ```cs -public interface IVsPackageInstallerServices -{ - // IMPORTANT: do NOT rearrange the methods here. The order is important to maintain - // backwards compatibility with clients that were compiled against old versions of NuGet. - /// - /// Get the list of NuGet packages installed in the current solution. + /// Contains methods to query for installed packages within the current solution. /// - IEnumerable GetInstalledPackages(); + [Obsolete("Use INuGetProjectService in the NuGet.VisualStudio.Contracts package instead.")] + public interface IVsPackageInstallerServices + { + /// + /// Get the list of NuGet packages installed in the current solution. + /// + [Obsolete("This method can cause UI delays if called on the UI thread. Use INuGetProjectService.GetInstalledPackagesAsync in the NuGet.VisualStudio.Contracts package instead, and iterate all projects in the solution")] + IEnumerable GetInstalledPackages(); - /// - /// Checks if a NuGet package with the specified Id is installed in the specified project. - /// - /// The project to check for NuGet package. - /// The id of the package to check. - /// true if the package is install. false otherwise. - bool IsPackageInstalled(Project project, string id); + /// + /// Checks if a NuGet package with the specified Id is installed in the specified project. + /// + /// The project to check for NuGet package. + /// The id of the package to check. + /// true if the package is install. false otherwise. + [Obsolete("This method can cause UI delays if called on the UI thread. Use INuGetProjectService.GetInstalledPackagesAsync in the NuGet.VisualStudio.Contracts package instead, and check the specific package you're interested in")] + bool IsPackageInstalled(Project project, string id); - /// - /// Checks if a NuGet package with the specified Id and version is installed in the specified project. - /// - /// The project to check for NuGet package. - /// The id of the package to check. - /// The version of the package to check. - /// true if the package is install. false otherwise. - bool IsPackageInstalled(Project project, string id, SemanticVersion version); + /// + /// Checks if a NuGet package with the specified Id and version is installed in the specified project. + /// + /// The project to check for NuGet package. + /// The id of the package to check. + /// The version of the package to check. + /// true if the package is install. false otherwise. + [Obsolete("This method can cause UI delays if called on the UI thread. Use INuGetProjectService.GetInstalledPackagesAsync in the NuGet.VisualStudio.Contracts package instead, and check the specific package you're interested in")] + bool IsPackageInstalled(Project project, string id, SemanticVersion version); - /// - /// Checks if a NuGet package with the specified Id and version is installed in the specified project. - /// - /// The project to check for NuGet package. - /// The id of the package to check. - /// The version of the package to check. - /// true if the package is install. false otherwise. - /// - /// The reason this method is named IsPackageInstalledEx, instead of IsPackageInstalled, is that - /// when client project compiles against this assembly, the compiler would attempt to bind against - /// the other overload which accepts SemanticVersion and would require client project to reference NuGet.Core. - /// - bool IsPackageInstalledEx(Project project, string id, string versionString); + /// + /// Checks if a NuGet package with the specified Id and version is installed in the specified project. + /// + /// The project to check for NuGet package. + /// The id of the package to check. + /// The version of the package to check. + /// true if the package is install. false otherwise. + /// + /// The reason this method is named IsPackageInstalledEx, instead of IsPackageInstalled, is that + /// when client project compiles against this assembly, the compiler would attempt to bind against + /// the other overload which accepts SemanticVersion and would require client project to reference NuGet.Core. + /// + [Obsolete("This method can cause UI delays if called on the UI thread. Use INuGetProjectService.GetInstalledPackagesAsync in the NuGet.VisualStudio.Contracts package instead, and check the specific package you're interested in")] + bool IsPackageInstalledEx(Project project, string id, string versionString); - /// - /// Get the list of NuGet packages installed in the specified project. - /// - /// The project to get NuGet packages from. - IEnumerable GetInstalledPackages(Project project); -} + /// + /// Get the list of NuGet packages installed in the specified project. + /// + /// The project to get NuGet packages from. + [Obsolete("This method can cause UI delays if called on the UI thread. Use INuGetProjectService.GetInstalledPackagesAsync in the NuGet.VisualStudio.Contracts package instead")] + IEnumerable GetInstalledPackages(Project project); + } ``` ## IVsPackageManagerProvider interface -```cs -public interface IVsPackageManagerProvider -{ - /// - /// Localized display package manager name. - /// - string PackageManagerName { get; } - - /// - /// Package manager unique id. - /// - string PackageManagerId { get; } - - /// - /// The tool tip description for the package - /// - string Description { get; } - - /// - /// Check if a recommendation should be surfaced for an alternate package manager. - /// This code should not rely on slow network calls, and should return rapidly. - /// - /// Current package id - /// Unique project name for finding the project through VS dte - /// Cancellation Token - /// return true if need to direct to integrated package manager for this package - Task CheckForPackageAsync(string packageId, string projectName, CancellationToken token); - - /// - /// This Action should take the user to the other package manager. - /// - /// Current package id - /// Unique project name for finding the project through VS dte - void GoToPackage(string packageId, string projectName); -} -``` - -## IVsPackageMetadata interface +This interface was primarily used by the ASP.NET team, to suggest that Javascript and CSS packages like `jQuery` and `bootstrap` are installed with Bower instead of NuGet. Since they removed that functionality From Visual Studio, NuGet has obsolete this interface, and it will no longer be used by the Package Manager UI in Visual Studio 2022 (version 17.0) and later. ```cs -public interface IVsPackageMetadata -{ - /// - /// Id of the package. - /// - string Id { get; } - - /// - /// Version of the package. - /// - /// - /// Do not use this property because it will require referencing NuGet.Core.dll assembly. Use the VersionString - /// property instead. - /// - [Obsolete("Do not use this property because it will require referencing NuGet.Core.dll assembly. Use the VersionString property instead.")] - NuGet.SemanticVersion Version { get; } - /// - /// Title of the package. + /// Interface allowing integration of alternate package manager suggestion for a NuGet package. + /// For example jQuery may appear on Bower and npm, + /// it might be more appropriate to install a package from them for certain projects. /// - string Title { get; } - - /// - /// Description of the package. - /// - string Description { get; } - - /// - /// The authors of the package. - /// - IEnumerable Authors { get; } - - /// - /// The location where the package is installed on disk. - /// - string InstallPath { get; } + [Obsolete] + public interface IVsPackageManagerProvider + { + /// + /// Localized display package manager name. + /// + string PackageManagerName { get; } - // IMPORTANT: This property must come LAST, because it was added in 2.5. Having it declared - // LAST will avoid breaking components that compiled against earlier versions which doesn't - // have this property. - /// - /// The version of the package. - /// - /// - /// Use this property instead of the Version property becase with the type string, - /// it doesn't require referencing NuGet.Core.dll assembly. - /// - string VersionString { get; } -} -``` + /// + /// Package manager unique id. + /// + string PackageManagerId { get; } -## IVsPackageProjectMetadata interface + /// + /// The tool tip description for the package + /// + string Description { get; } -```cs -public interface IVsPackageProjectMetadata -{ - /// - /// Unique batch id for batch start/end events of the project. - /// - string BatchId { get; } + /// + /// Check if a recommendation should be surfaced for an alternate package manager. + /// This code should not rely on slow network calls, and should return rapidly. + /// + /// Current package id + /// Unique project name for finding the project through VS dte + /// Cancellation Token + /// return true if need to direct to integrated package manager for this package + Task CheckForPackageAsync(string packageId, string projectName, CancellationToken token); - /// - /// Name of the project. - /// - string ProjectName { get; } -} + /// + /// This Action should take the user to the other package manager. + /// + /// Current package id + /// Unique project name for finding the project through VS dte + void GoToPackage(string packageId, string projectName); + } ``` ## IVsPackageRestorer interface ```cs -public interface IVsPackageRestorer -{ - /// - /// Returns a value indicating whether the user consent to download NuGet packages - /// has been granted. - /// - /// true if the user consent has been granted; otherwise, false. - bool IsUserConsentGranted(); /// - /// Restores NuGet packages installed in the given project within the current solution. + /// Contains methods to restore packages installed in a project within the current solution. /// - /// The project whose NuGet packages to restore. - void RestorePackages(Project project); -} + public interface IVsPackageRestorer + { + /// + /// Returns a value indicating whether the user consent to download NuGet packages + /// has been granted. + /// + /// Can be called from a background thread. + /// true if the user consent has been granted; otherwise, false. + bool IsUserConsentGranted(); + + /// + /// Restores NuGet packages installed in the given project within the current solution. + /// + /// Can be called from a background thread. + /// The project whose NuGet packages to restore. + void RestorePackages(Project project); + } ``` ## IVsPackageSourceProvider interface ```cs -/// -/// A public API for retrieving the list of NuGet package sources. -/// -public interface IVsPackageSourceProvider -{ /// - /// Provides the list of package sources. + /// A public API for retrieving the list of NuGet package sources. /// - /// Unofficial sources will be included in the results - /// Disabled sources will be included in the results - /// Does not require the UI thread. - /// Thrown if a NuGet configuration file is invalid. - /// Thrown if a NuGet configuration file is invalid. - /// Thrown if a NuGet configuration file is invalid. - /// Thrown if a NuGet configuration file is invalid. - /// Key: source name Value: source URI - IEnumerable> GetSources(bool includeUnOfficial, bool includeDisabled); + public interface IVsPackageSourceProvider + { + /// + /// Provides the list of package sources. + /// + /// Can be called from a background thread. + /// Unofficial sources will be included in the results + /// Disabled sources will be included in the results + /// Does not require the UI thread. + /// Thrown if a NuGet configuration file is invalid. + /// Thrown if a NuGet configuration file is invalid. + /// Thrown if a NuGet configuration file is invalid. + /// Thrown if a NuGet configuration file is invalid. + /// Key: source name Value: source URI + IEnumerable> GetSources(bool includeUnOfficial, bool includeDisabled); - /// - /// Raised when sources are added, removed, disabled, or modified. - /// - event EventHandler SourcesChanged; -} + /// + /// Raised when sources are added, removed, disabled, or modified. + /// + event EventHandler SourcesChanged; + } ``` ## IVsPackageUninstaller interface ```cs -public interface IVsPackageUninstaller -{ /// - /// Uninstall the specified package from a project and specify whether to uninstall its dependency packages - /// too. + /// Contains methods to uninstall packages from a project within the current solution. /// - /// The project from which the package is uninstalled. - /// The package to be uninstalled - /// - /// A boolean to indicate whether the dependency packages should be - /// uninstalled too. - /// - void UninstallPackage(Project project, string packageId, bool removeDependencies); -} + public interface IVsPackageUninstaller + { + /// + /// Uninstall the specified package from a project and specify whether to uninstall its dependency packages + /// too. + /// + /// Can be called from a background thread. + /// The project from which the package is uninstalled. + /// The package to be uninstalled + /// + /// A boolean to indicate whether the dependency packages should be + /// uninstalled too. + /// + void UninstallPackage(Project project, string packageId, bool removeDependencies); + } ``` ## IVsPathContext interface ```cs -/// + /// /// NuGet path information specific to the current context (e.g. project context). /// Represents captured snapshot associated with current project/solution settings. /// Should be discarded immediately after all queries are done. /// - [ComImport] - [Guid("24A1A187-75EE-4296-A8B3-59F0E0707119")] public interface IVsPathContext { /// @@ -871,6 +911,7 @@ public interface IVsPackageUninstaller /// fallback package folders are configured, an empty list is returned. The item type of this sequence is /// . /// + /// Can be called from a background thread. IEnumerable FallbackPackageFolders { get; } /// @@ -906,7 +947,7 @@ public interface IVsPackageUninstaller ## IVsPathContext2 interface ```cs -/// + /// /// NuGet path information specific to the current context (e.g. project context) or solution context /// Represents captured snapshot associated with current project/solution settings. /// Should be discarded immediately after all queries are done. @@ -932,6 +973,7 @@ public interface IVsPackageUninstaller /// /// Attempts to create an instance of . /// + /// Can be called from a background thread. /// /// Unique identificator of the project. Should be a full path to project file. /// @@ -959,6 +1001,7 @@ public interface IVsPackageUninstaller /// /// Attempts to create an instance of for the solution. /// + /// This API is free-threaded, but APIs on the returned IVsPathContext2 may not be. /// The path context associated with this solution. /// /// True if operation has succeeded and context was created. @@ -972,6 +1015,7 @@ public interface IVsPackageUninstaller /// /// Attempts to create an instance of for the solution. /// + /// This API is free-threaded, but APIs on the returned IVsPathContext2 may not be. /// /// path to the solution directory. Must be an absolute path. /// It will be performant to pass the solution directory if it's available. @@ -1001,26 +1045,6 @@ public interface IVsPackageUninstaller /// This method can be safely invoked from a background thread. Do note that this method might switch to the UI thread internally, so be mindful of blocking the UI thread on this. /// bool TryCreateNoSolutionContext(out IVsPathContext vsPathContext); - -``` - -## IVsProjectJsonToPackageReferenceMigrateResult interface - -```cs - /// - /// Contains the result of the migrate operation on a legacy project.json project - /// - public interface IVsProjectJsonToPackageReferenceMigrateResult - { - /// - /// Returns the success value of the migration operation. - /// - bool IsSuccess { get; } - - /// - /// If migrate operation was unsuccessful, stores the error message in the exception. - /// - string ErrorMessage { get; } } ``` @@ -1060,6 +1084,7 @@ public interface IVsPackageUninstaller /// are equivalent. Returns a number greater than zero if /// is greater than . /// + /// This API is free-threaded. /// The first version string. /// The second version string. /// If either version string is null. @@ -1072,14 +1097,159 @@ public interface IVsPackageUninstaller } ``` -## IVsTemplateWizard interface +## IVsSolutionRestoreService interface ```cs -/// -/// Defines the logic for a template wizard extension. -/// + /// + /// Represents a package restore service API for integration with a project system. + /// + public interface IVsSolutionRestoreService + { + /// + /// A task providing last/current restore operation status. + /// Could be null if restore has not started yet. + /// + /// + /// This task is a reflection of the current state of the current-restore-operation or + /// recently-completed-restore. The usage of this property will be to continue, + /// e.g. to build solution or something) on completion of this task. + /// Also, on completion, if the task returns false then it means the restore failed and + /// the build task will be terminated. + /// + Task CurrentRestoreOperation { get; } -public interface IVsTemplateWizard : IWizard -{ -} + /// + /// An entry point used by CPS to indicate given project needs to be restored. + /// + /// + /// Unique identifier of the project. Should be a full path to project file. + /// + /// Metadata needed for restoring the project. + /// Cancellation token. + /// + /// Returns a restore task corresponding to the nominated project request. + /// NuGet will batch restore requests so it's possible the same restore task will be returned for multiple projects. + /// When the requested restore operation for the given project completes the task will indicate operation success or failure. + /// + /// Thrown if is not the path of a project file. + /// Thrown if is null. + /// Thrown if is cancelled. + Task NominateProjectAsync(string projectUniqueName, IVsProjectRestoreInfo projectRestoreInfo, CancellationToken token); + } +``` + +## IVsSolutionRestoreService2 interface + +```cs + /// + /// Represents a package restore service API for integration with a project system. + /// + public interface IVsSolutionRestoreService2 + { + /// + /// An entry point which allows non-NETCore SDK based projects to indicate given project needs to be restored. + /// + /// + /// Unique identificator of the project. Should be a full path to project file. + /// + /// Cancellation token. + /// + /// Returns a restore task corresponding to the nominated project request. + /// NuGet will batch restore requests so it's possible the same restore task will be returned for multiple projects. + /// When the requested restore operation for the given project completes the task will indicate operation success or failure. + /// + Task NominateProjectAsync(string projectUniqueName, CancellationToken token); + } +``` + +## IVsSolutionRestoreService3 interface + +```cs + /// + /// Represents a package restore service API for integration with a project system. + /// + public interface IVsSolutionRestoreService3 + { + /// + /// A task providing last/current restore operation status. + /// Could be null if restore has not started yet. + /// + /// + /// This task is a reflection of the current state of the current-restore-operation or + /// recently-completed-restore. The usage of this property will be to continue, + /// e.g. to build solution or something) on completion of this task. + /// Also, on completion, if the task returns false then it means the restore failed and + /// the build task will be terminated. + /// + Task CurrentRestoreOperation { get; } + + /// + /// An entry point used by CPS to indicate given project needs to be restored. + /// This entry point also handles PackageDownload items + /// + /// + /// Unique identifier of the project. Should be a full path to project file. + /// + /// Metadata needed for restoring the project. + /// Cancellation token. + /// + /// Returns a restore task corresponding to the nominated project request. + /// NuGet will batch restore requests so it's possible the same restore task will be returned for multiple projects. + /// When the requested restore operation for the given project completes the task will indicate operation success or failure. + /// + /// Thrown if is not the path of a project file. + /// Thrown if is null. + /// Thrown if is cancelled. + Task NominateProjectAsync(string projectUniqueName, IVsProjectRestoreInfo2 projectRestoreInfo, CancellationToken token); + } +``` + +## IVsSolutionRestoreService4 interface + +```cs + /// + /// Represents a package restore service API for integration with a project system. + /// Implemented by NuGet. + /// + public interface IVsSolutionRestoreService4 : IVsSolutionRestoreService3 + { + /// + /// A project system can call this service (optionally) to register itself to coordinate restore.
    + /// Each project can only register once. NuGet will call into the source to wait for nominations for restore.
    + /// NuGet will remove the registered object when a project is unloaded. + ///
    + /// Represents a project specific info source + /// Cancellation token. + /// If the project has already been registered. + /// If is null. + /// If 's is . + Task RegisterRestoreInfoSourceAsync(IVsProjectRestoreInfoSource restoreInfoSource, CancellationToken cancellationToken); + } +``` + +## IVsSolutionRestoreStatusProvider interface + +```cs + /// + /// Provides the status of IVsSolutionRestore. + /// + public interface IVsSolutionRestoreStatusProvider + { + /// + /// IsRestoreCompleteAsync indicates whether or not automatic package restore has pending work. + /// Automatic package restore applies for both packages.config and PackageReference projects. + /// + /// Returns true if all projects in the solution that require nomination have been nominated for restore and all pending restores have completed. + /// The result does not indicate that restore completed successfully, a failed restore will still return true. + /// + /// + /// Special cases: + /// * An empty solution will return true. + /// * If no solution is open this will true. + /// * An invalid project that does not provide restore details will cause this to return false since restore will not run for that project. + /// + /// Restores running due to Install/Update/Uninstall operations are NOT included in this status. Status here is limited to IVsSolutionRestoreService. + /// + Task IsRestoreCompleteAsync(CancellationToken token); + } ``` From 12f135ece66815ff4e6d4b710da52950a54db850 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Fri, 7 Jan 2022 08:11:29 -0800 Subject: [PATCH 513/988] Update docs on selecting referenced assemblies (#2613) --- ...elect-assemblies-referenced-by-projects.md | 68 +++++++++++++++---- 1 file changed, 55 insertions(+), 13 deletions(-) diff --git a/docs/create-packages/Select-assemblies-referenced-by-projects.md b/docs/create-packages/Select-assemblies-referenced-by-projects.md index d0b50c3ce..5fb113a9b 100644 --- a/docs/create-packages/Select-assemblies-referenced-by-projects.md +++ b/docs/create-packages/Select-assemblies-referenced-by-projects.md @@ -9,22 +9,57 @@ ms.topic: conceptual # Select Assemblies Referenced By Projects -Explicit assembly references allows a subset of assemblies to be used for IntelliSense and compiling, while all assemblies are available at run-time. `PackageReference` and `packages.config` work differently, and as a result package authors need to take care to create the package to be compatible with both project types. +Assemblies are used in two different ways during a build. The first is for compile, which allows the package consumer's code to compile against APIs in the assembly, and for Intellisense to give suggestions. The second is runtime, where the assembly is copied to the `bin` directory and is used during program execution. Some package authors would like only their own assemblies (or a subset of their assemblies) available to their package consumers at compile time, but need to provide all their dependencies for runtime. This document looks at ways to achieve this outcome. -> [!Note] -> Explicit assembly references are related to .NET assemblies. It is not a method to distribute native assemblies that are P/Invoked by a managed assembly. +## Recommended: One assembly per package -## `PackageReference` support +Our recommendation is to have one package per assembly, and package dependencies to other assemblies. When NuGet restores a project, it does asset selection and supports including, excluding, and making private different asset classes. In order to prevent your package's dependencies from becoming compile time assets for anyone using your package, you can make `compile` assets private. In the generated package, that will cause `compile` to be excluded from the dependency. Note that the default private assets when none is supplied is `build;analyzers`. Therefore, you should use `PrivateAssets="compile;build;analyzers"` in your `PackageReference` or `ProjectReference`. -When a project uses a package with `PackageReference` and the package contains a `ref\\` directory, NuGet will classify those assembles as compile-time assets, while the `lib\\` assemblies are classified as runtime assets. Assemblies in `ref\\` are not used at runtime. This means it is necessary for any assembly in `ref\\` to have a matching assembly in either `lib\\` or a relevant `runtime\` directory, otherwise runtime errors will likely occur. Since assemblies in `ref\\` are not used at runtime, they may be [metadata-only assemblies](https://github.com/dotnet/roslyn/blob/main/docs/features/refout.md) to reduce package size. +```xml + + + + +``` -> [!Important] -> If a package contains the nuspec `` element (used by `packages.config`, see below) and does not contain assemblies in `ref\\`, NuGet will advertise the assemblies listed in the nuspec `` element as both the compile and runtime assets. This means there will be runtime exceptions when the referenced assemblies need to load any other assembly in the `lib\\` directory. +If you are creating a package from a custom `nuspec` file, rather than letting NuGet auto-generate one for you, your `nuspec` should use the `exclude` XML attribute . -> [!Note] -> If the package contains a `runtime\` directory, NuGet may not use the assets in the `lib\` directory. +```xml + + + + + + +``` + +There are three reasons why this is the recommended solution. + +Firstly, useful assemblies often get referenced by new assemblies/packages. While a utility assembly might be intended to only be used by a single package today, making it tempting to ship both assemblies in a single package, if a second package wants to use the "private" utility assembly in the future, either the utility assembly needs to be moved into a new package and the old package needs to be updated to declare it as a dependency, or the utility package needs to ship in both the existing and the new package. If the assembly ships in two different packages, and a project references both packages, if there are different versions of the utility assembly in the two packages, NuGet will be unable to assist in version management. + +Secondly, there may be times that the developers using your package want to also use APIs from your dependencies. For example, consider the package [Microsoft.ServiceHub.Client version 3.0.3078](https://www.nuget.org/packages/Microsoft.ServiceHub.Client/3.0.3078). If you download the package and check the `nuspec` file, you can see that it lists two packages starting with `Microsoft.VisualStudio.` as dependencies, meaning it needs them at runtime, but it also excludes their compile assets. This means that projects using Microsoft.ServiceHub.Client will not have the Visual Studio APIs available in IntelliSense or if they build the project, unless the project explicit installs those packages. And this is the advantage that a package dependency with an exclude asset has. Projects using your package, if they want to use your dependencies as well, they can add a reference to the package to make the APIs available to themselves. + +Finally, some package authors have been confused in the past about NuGet's assembly selection for packages supporting more than one target framework when their package also contains multiple assemblies. If your main assembly supports different target frameworks to your utility assembly, it may not be obvious which `lib/` directories to put all of the assemblies into. By separating each package by assembly name, it's more intuitive which `lib/` folders each assembly should go into. Note, this does not mean having `Package1.net48` and `Package1.net6.0` packages. It means having `lib/net48/Package1.dll` and `lib/net6.0/Package6.0` in `Package1`, and `lib/netstandard2.0/Package2.dll` and `lib/net5.0/Package2.dll` in `Package2`. When Nuget restores a project, Nuget will independently do asset selection for the two packages. + +Also note that dependency include/exclude assets is only used by projects using PackageReference. Any project installing your package using `packages.config` will install your dependencies and have its APIs available as well. `packages.config` is only supported by Visual Studio's older .NET Framework project templates. SDK style projects, even those targeting .NET Framework, do not support `packages.config`, and therefore do support dependency include/exclude assets. -## `packages.config` support +## Not recommended: Multiple assemblies in one package + +`PackageReference` and `packages.config` have different features available. Whether you want to support your package consumers who use `PackageReference`, `packages.config`, or both, changes how you must author your package. + +NuGet's MSBuild Pack target does not support automatically including project references in the package. It will only list those referenced projects as package dependencies. There is [an issue on GitHub](https://github.com/NuGet/Home/issues/3891), where community members shared ways they achieved this outcome, which usually involves using `PackagePath` MSBuild item metadata to place files anywhere in the package, as described in [the docs on including content in a package](../reference/msbuild-targets.md#including-content-in-a-package), and using [`SuppressDependenciesWhenPacking` to avoid the project references becoming package dependencies](../reference/msbuild-targets.md#pack-target-inputs). There also exist community developed tools that can be used as an alternative to NuGet's official pack, which support this feature. + +### `PackageReference` support + +When a package consumer uses `PackageReference`, NuGet selects compile and runtime assets independently, as previously described. + +Compile assets prefer `ref//*.dll` (for example `ref/net6.0/*.dll`), but if that does not exist, then it will fall back to `lib//*.dll` (for example `lib/net6.0/*.dll`). + +Runtime assets prefer `runtimes//lib//*.dll` (for example (`runtimes/win11-x64/lib/net6.0/*.dll`)), but if that does not exist, then it will fall back to `lib//*.dll`. + +Since assemblies in `ref\\` are not used at runtime, they may be [metadata-only assemblies](https://github.com/dotnet/roslyn/blob/main/docs/features/refout.md) to reduce package size. + +### `packages.config` support Projects using `packages.config` to manage NuGet packages normally add references to all assemblies in the `lib\\` directory. The `ref\` directory was added to support `PackageReference` and therefore isn't considered when using `packages.config`. To explicitly set which assemblies are referenced for projects using `packages.config`, the package must use the [`` element in the nuspec file](../reference/nuspec.md#explicit-assembly-references). For example: @@ -36,10 +71,17 @@ Projects using `packages.config` to manage NuGet packages normally add reference ``` +The MSBuild pack targets don't support the `` element. See [the docs on packing using a .nuspec file](../reference/msbuild-targets.md#packing-using-a-nuspec-file) when using MSBuild pack. + > [!Note] -> `packages.config` project use a process called [ResolveAssemblyReference](https://github.com/Microsoft/msbuild/blob/main/documentation/wiki/ResolveAssemblyReference.md) to copy assemblies to the `bin\\` output directory. Your project's assembly is copied, then the build system looks at the assembly manifest for referenced assemblies, then copies those assemblies and recursively repeats for all assemblies. This means that if any of the assemblies in your `lib\\` directory are not listed in any other assembly's manifest as a dependency (if the assembly is loaded at runtime using `Assembly.Load`, MEF or another dependency injection framework), then it may not be copied to your project's `bin\\` output directory despite being in `bin\\`. +> `packages.config` project use a process called [ResolveAssemblyReference](https://github.com/Microsoft/msbuild/blob/main/documentation/wiki/ResolveAssemblyReference.md) to copy assemblies to the `bin\\` output directory. Your project's assembly is copied, then the build system looks at the assembly manifest for referenced assemblies, then copies those assemblies and recursively repeats for all assemblies. This means that if any of the assemblies loaded only by reflection (`Assembly.Load`, MEF or another dependency injection framework), then it may not be copied to your project's `bin\\` output directory despite being in `bin\\`. This also means that this only works for .NET assemblies, not for native code called with P/Invoke. + +### Supporting both `PackageReference` and `packages.config` + +> [!Important] +> If a package contains the nuspec `` element and does not contain assemblies in `ref\\`, NuGet will advertise the assemblies listed in the nuspec `` element as both the compile and runtime assets. This means there will be runtime exceptions when the referenced assemblies need to load any other assembly in the `lib\\` directory. Therefore, it is important to use both the nuspec `` for `packages.config` support, as well as duplicating assemblies in the `ref/` folder for `PackageReference` support. The `runtimes/` package folder does not need to be used, it was added to the above section for completeness. -## Example +#### Example My package will contain three assemblies, `MyLib.dll`, `MyHelpers.dll` and `MyUtilities.dll`, which are targeting the .NET Framework 4.7.2. `MyUtilities.dll` contains classes intended to be used only by the other two assemblies, so I don't want to make those classes available in IntelliSense or at compile time to projects using my package. My `nuspec` file needs to contain the following XML elements: @@ -52,7 +94,7 @@ My package will contain three assemblies, `MyLib.dll`, `MyHelpers.dll` and `MyUt ``` -and the files in the package will be: +I need to ensure my package contents are: ```text lib\net472\MyLib.dll From f8db6343797f035f2efedb13f8faf108f3131ec2 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 7 Jan 2022 10:38:23 -0800 Subject: [PATCH 514/988] Add PackageSourceMapping examples in NU1100, NU1101, NU1102 and NU1103 (#2628) --- docs/reference/errors-and-warnings/NU1100.md | 20 +++++++++++++++++--- docs/reference/errors-and-warnings/NU1101.md | 17 ++++++++++++++++- docs/reference/errors-and-warnings/NU1102.md | 15 +++++++++++++++ docs/reference/errors-and-warnings/NU1103.md | 15 ++++++++++++++- 4 files changed, 62 insertions(+), 5 deletions(-) diff --git a/docs/reference/errors-and-warnings/NU1100.md b/docs/reference/errors-and-warnings/NU1100.md index 2eab04263..8cb4df5ea 100644 --- a/docs/reference/errors-and-warnings/NU1100.md +++ b/docs/reference/errors-and-warnings/NU1100.md @@ -12,10 +12,24 @@ f1_keywords: # NuGet Error NU1100 -
    Unable to resolve 'Dependency dll' for 'TargetFramework'
    +## Scenario 1 + +
    Unable to resolve 'Dependency (>= 1.0.0)' for 'TargetFramework'
    ### Issue -A dependency group not be resolved. This is a generic issue for types that are not packages or projects. +A dependency could not be resolved. This is a generic issue for types that are not packages or projects. ### Solution -Open the project file and examine the list of its dependencies. Check that each dependency exists on the package sources you're using, and that the package supports the project's target framework. \ No newline at end of file +Open the project file and examine the list of its dependencies. Check that each dependency exists on the package sources you're using, and that the package supports the project's target framework. + +## Scenario 2 + +
     Unable to resolve 'Dependency (>= 1.0.0)' for 'TargetFramework'.  PackageSourceMapping is enabled, the following source(s) were not considered: nuget. 
    + +### Issue + +A dependency could not be resolved. PackageSourceMapping is enabled and there are no matching sources. + +### Solution + +Check your [NuGet.Config](../../consume-packages/Configuring-NuGet-Behavior.md) for the [PackageSourceMapping](../../consume-packages/Package-Source-Mapping.md) configuration and ensure there's a matching pattern for the package in question. diff --git a/docs/reference/errors-and-warnings/NU1101.md b/docs/reference/errors-and-warnings/NU1101.md index d947f205d..30e68ea8b 100644 --- a/docs/reference/errors-and-warnings/NU1101.md +++ b/docs/reference/errors-and-warnings/NU1101.md @@ -12,10 +12,25 @@ f1_keywords: # NuGet Error NU1101 -
    Unable to find package 'PackageId'. No packages exist with this id in source(s): 'sourceA', 'sourceB', 'sourceC'
    +## Scenario 1 + +
    Unable to find package 'PackageId'. No packages exist with this id in source(s): sourceA, sourceB, sourceC
    ### Issue The package cannot be found on any sources. ### Solution Examine the project's dependencies in Visual Studio to be sure you're using the correct package identifier and version number. Also check that the [NuGet configuration](../../consume-packages/Configuring-NuGet-Behavior.md) identifies the package sources you are expected to be using. If you use packages that have [Semantic Versioning 2.0.0](../../concepts/package-versioning.md#semantic-versioning-200), please make sure that you are using the V3 feed, `https://api.nuget.org/v3/index.json`, in the [NuGet configuration](../../consume-packages/Configuring-NuGet-Behavior.md). + +## Scenario 2 + +
    Unable to find package 'PackageId'. No packages exist with this id in source(s): sourceA PackageSourceMapping is enabled, the following source(s) were not considered: sourceB, sourceC.
    +
    + +### Issue +The package cannot be found on any of the PackageSourceMapping configured sources. + +### Solution + +Examine the project's dependencies in Visual Studio to be sure you're using the correct package identifier and version number. +Check your [NuGet.Config](../../consume-packages/Configuring-NuGet-Behavior.md) for the [PackageSourceMapping](../../consume-packages/Package-Source-Mapping.md) configuration. The package in question may be available on a source that is not configured. diff --git a/docs/reference/errors-and-warnings/NU1102.md b/docs/reference/errors-and-warnings/NU1102.md index 5585c7555..ef3561d9c 100644 --- a/docs/reference/errors-and-warnings/NU1102.md +++ b/docs/reference/errors-and-warnings/NU1102.md @@ -12,6 +12,8 @@ f1_keywords: # NuGet Error NU1102 +## Scenario 1 +
    Unable to find package 'PackageId' with version (>= 9.0.1)
    - Found 30 version(s) in 'sourceA' [ Nearest version: '4.0.0' ]
    - Found 10 version(s) in 'sourceB' [ Nearest version: '4.0.0-rc-2129' ]
    - Found 9 version(s) in 'sourceC' [ Nearest version: '3.0.0-beta-00032' ]
    - Found 0 version(s) in 'sourceD'
    - Found 0 version(s) in 'sourceE'
    ### Issue @@ -19,3 +21,16 @@ The package identifier is found but a version within the specified dependency ra ### Solution Edit the project file to correct the package version. Also check that the [NuGet configuration](../../consume-packages/Configuring-NuGet-Behavior.md) identifies the package sources your expect to be using. You may need to change the requested version if this package is referenced by the project directly. + +## Scenario 2 + +
    Unable to find package 'PackageId' with version (>= 9.0.1)
    - Found 30 version(s) in 'sourceA' [ Nearest version: '4.0.0' ]
    - Versions from sourceB were not considered +
    + +### Issue +The package identifier is found but a version within the specified dependency range cannot be found on any of the sources. The range might be specified by a package and not the user. + +### Solution + +Edit the project file to correct the package version. +Check your [NuGet.Config](../../consume-packages/Configuring-NuGet-Behavior.md) for the [PackageSourceMapping](../../consume-packages/Package-Source-Mapping.md) configuration. The package version in question may be available on a source that is not configured. diff --git a/docs/reference/errors-and-warnings/NU1103.md b/docs/reference/errors-and-warnings/NU1103.md index e062285ad..838d11f45 100644 --- a/docs/reference/errors-and-warnings/NU1103.md +++ b/docs/reference/errors-and-warnings/NU1103.md @@ -12,10 +12,23 @@ f1_keywords: # NuGet Error NU1103 +## Scenario 1 +
    Unable to find a stable package 'PackageId' with version (>= 3.0.0)
    - Found 10 version(s) in 'sourceA' [ Nearest version: '4.0.0-rc-2129' ]
    - Found 9 version(s) in 'sourceB' [ Nearest version: '3.0.0-beta-00032' ]
    - Found 0 version(s) in 'sourceC'
    - Found 0 version(s) in 'sourceD'
    ### Issue The project specified a stable version for the dependency range, but no stable versions were found in that range. Pre-release versions were found but are not allowed. ### Solution -Edit the version range in the project file to include pre-release versions. See [Package versioning](../../concepts/package-versioning.md). \ No newline at end of file +Edit the version range in the project file to include pre-release versions. See [Package versioning](../../concepts/package-versioning.md). + +## Scenario 2 + +
    Unable to find a stable package 'PackageId' with version (>= 3.0.0)
    - Found 10 version(s) in 'sourceA' [ Nearest version: '4.0.0-rc-2129' ]
    - Versions from sourceB were not considered
    + +### Issue +The project specified a stable version for the dependency range, but no stable versions were found in that range. Pre-release versions were found but are not allowed. + +### Solution +Edit the version range in the project file to include pre-release versions. See [Package versioning](../../concepts/package-versioning.md). +Check your [NuGet.Config](../../consume-packages/Configuring-NuGet-Behavior.md) for the [PackageSourceMapping](../../consume-packages/Package-Source-Mapping.md) configuration. The package version in question may be available on a source that is not configured. From d6e18962e1d52495919db6b77de7aff0620639e9 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Mon, 10 Jan 2022 19:03:13 -0800 Subject: [PATCH 515/988] Promote single config in repo (#2631) --- docs/consume-packages/configuring-nuget-behavior.md | 3 +++ docs/reference/nuget-config-file.md | 4 ++++ 2 files changed, 7 insertions(+) diff --git a/docs/consume-packages/configuring-nuget-behavior.md b/docs/consume-packages/configuring-nuget-behavior.md index da3b6e48d..061979021 100644 --- a/docs/consume-packages/configuring-nuget-behavior.md +++ b/docs/consume-packages/configuring-nuget-behavior.md @@ -109,6 +109,9 @@ As NuGet finds settings in these files, they are applied as follows: 1. For collection elements (such as ``), NuGet combines the values from all configuration files into a single collection. 1. When `` is present for a given node, NuGet ignores previously defined configuration values for that node. +> [!Tip] +> Add a `nuget.config` file in the root of your project repository. This is considered a best practice as it promotes repeatability and ensures that different users have the same NuGet configuration. + ### Settings walkthrough Let's say you have the following folder structure on two separate drives: diff --git a/docs/reference/nuget-config-file.md b/docs/reference/nuget-config-file.md index fec7fb427..b93ad7b51 100644 --- a/docs/reference/nuget-config-file.md +++ b/docs/reference/nuget-config-file.md @@ -18,6 +18,10 @@ NuGet behavior is controlled by settings in different `NuGet.Config` or `nuget.c +> [!Tip] +> Add a `nuget.config` file in the root of your project repository. This is considered a best practice as it promotes repeatability and ensures that different users have the same NuGet configuration. +> You may need to configure `clear` elements to ensure no user or machine specific configuration is applied. [Read more about how settings are applied](../consume-packages/configuring-nuget-behavior.md#how-settings-are-applied). + ## config section Contains miscellaneous configuration settings, which can be set using the [`nuget config` command](../reference/cli-reference/cli-ref-config.md). From 51207b01baae8181e31db155f0899616f0651406 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Fri, 14 Jan 2022 09:26:02 -0800 Subject: [PATCH 516/988] Highlight SolutionRestoreManager in 6.0 release notes (#2636) --- docs/release-notes/NuGet-6.0.md | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/docs/release-notes/NuGet-6.0.md b/docs/release-notes/NuGet-6.0.md index 13d3e0969..85446cad0 100644 --- a/docs/release-notes/NuGet-6.0.md +++ b/docs/release-notes/NuGet-6.0.md @@ -113,6 +113,27 @@ In Visual Studio 2022, NuGet has redefined the contract between NuGet package re Install the [Visual Studio 2022 Preview](https://visualstudio.microsoft.com/downloads/) and let us know if you notice a faster experience when loading your large solutions or switching between branches! +### NuGet's SolutionRestoreManager Visual Studio APIs moved into NuGet.VisualStudio package + +NuGet.SolutionRestoreManager.Interop is no longer updated, and its APIs have been merged into the NuGet.VisualStudio package. +If you are updating an existing Visual Studio extension to work with Visual Studio 2022 (17.0), and you were previously using NuGet.SolutionRestoreManager.Interop, you should uninstall that package and upgrade/install NuGet.VisualStudio to version 6.0.0. +The namespaces and classes remain the same, so it's compatible from an API perspective. + +Additionally, following [Visual Studio's change in policy](/visualstudio/extensibility/migration/migrated-assemblies?view=vs-2022&preserve-view=true), NuGet.VisualStudio no longer uses `EmbedInteropTypes`. +Therefore, your extension will have a compile time reference to NuGet.VisualStudio.dll. +Nuget instructs Visual Studio to use binding redirects, so your extension will not be affected when NuGet updates to newer versions and your extension is compiled against an older version of our assembly. +For this reason, you can suppress NuGet's assemblies from your vsix to reduce the download size. +NuGet's packages will be updated to do this automatically in NuGet 6.2 (for Visual Studio 17.2). + +To suppress NuGet's assemblies from your vsix, add the following to your project file: + +```xml + + + + +``` + **Features:** * Add hook for excluding certain build output extensions from the nuget package - [#10690](https://github.com/NuGet/Home/issues/10690) From 46560a8818e676337c4fb7168726c66e4cbf174b Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Thu, 27 Jan 2022 15:31:48 -0800 Subject: [PATCH 517/988] Update VS extensibility API docs (#2649) --- .../nuget-api-in-visual-studio.md | 26 +++++++++++++------ 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md b/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md index 97031766d..b0dd58e35 100644 --- a/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md +++ b/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md @@ -424,12 +424,15 @@ public interface IRegistryKey /// /// Contains methods to install packages into a project within the current solution. /// + [ComImport] + [Guid("4F3B122B-A53B-432C-8D85-0FAFB8BE4FF4")] public interface IVsPackageInstaller { /// /// Installs a single package from the specified package source. /// - /// Can be called from a background thread. + /// Can be called from a background thread, if the UI thread is not blocked waiting for this to finish. + /// See https://github.com/nuget/home/issues/11476 /// /// The package source to install the package from. This value can be null /// to indicate that the user's configured sources should be used. Otherwise, @@ -453,7 +456,8 @@ public interface IRegistryKey /// /// Installs a single package from the specified package source. /// - /// Can be called from a background thread. + /// Can be called from a background thread, if the UI thread is not blocked waiting for this to finish. + /// See https://github.com/nuget/home/issues/11476 /// /// The package source to install the package from. This value can be null /// to indicate that the user's configured sources should be used. Otherwise, @@ -519,7 +523,8 @@ public interface IRegistryKey /// /// Dependencies are always ignored. /// - /// Can be called from a background thread. + /// Can be called from a background thread, if the UI thread is not blocked waiting for this to finish. + /// See https://github.com/nuget/home/issues/11476 /// void InstallPackagesFromRegistryRepository(string keyName, bool isPreUnzipped, bool skipAssemblyReferences, Project project, IDictionary packageVersions); @@ -546,7 +551,8 @@ public interface IRegistryKey /// /// /// If any version of the package is already installed, no action will be taken. - /// Can be called from a background thread. + /// Can be called from a background thread, if the UI thread is not blocked waiting for this to finish. + /// See https://github.com/nuget/home/issues/11476 /// void InstallPackagesFromRegistryRepository(string keyName, bool isPreUnzipped, bool skipAssemblyReferences, bool ignoreDependencies, Project project, IDictionary packageVersions); @@ -572,7 +578,8 @@ public interface IRegistryKey /// /// Dependencies are always ignored. /// - /// Can be called from a background thread. + /// Can be called from a background thread, if the UI thread is not blocked waiting for this to finish. + /// See https://github.com/nuget/home/issues/11476 /// void InstallPackagesFromVSExtensionRepository(string extensionId, bool isPreUnzipped, bool skipAssemblyReferences, Project project, IDictionary packageVersions); @@ -596,7 +603,8 @@ public interface IRegistryKey /// /// /// If any version of the package is already installed, no action will be taken. - /// Can be called from a background thread. + /// Can be called from a background thread, if the UI thread is not blocked waiting for this to finish. + /// See https://github.com/nuget/home/issues/11476 /// void InstallPackagesFromVSExtensionRepository(string extensionId, bool isPreUnzipped, bool skipAssemblyReferences, bool ignoreDependencies, Project project, IDictionary packageVersions); } @@ -614,7 +622,8 @@ public interface IRegistryKey /// /// Installs the latest version of a single package from the specified package source. /// - /// Can be called from a background thread. + /// Can be called from a background thread, if the UI thread is not blocked waiting for this to finish. + /// See https://github.com/nuget/home/issues/11476 /// /// The package source to install the package from. This value can be null /// to indicate that the user's configured sources should be used. Otherwise, @@ -880,7 +889,8 @@ This interface was primarily used by the ASP.NET team, to suggest that Javascrip /// Uninstall the specified package from a project and specify whether to uninstall its dependency packages /// too. ///
    - /// Can be called from a background thread. + /// Can be called from a background thread, if the UI thread is not blocked waiting for this to finish. + /// See https://github.com/nuget/home/issues/11476 /// The project from which the package is uninstalled. /// The package to be uninstalled /// From 07af997943d906b493138ed1becf7cfa5a6cb0e8 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Fri, 28 Jan 2022 10:01:48 -0800 Subject: [PATCH 518/988] Document NUGET_UPDATEFILETIME_MAXRETRIES (#2650) --- docs/reference/cli-reference/cli-ref-environment-variables.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/reference/cli-reference/cli-ref-environment-variables.md b/docs/reference/cli-reference/cli-ref-environment-variables.md index 7220ed04a..9668140f9 100644 --- a/docs/reference/cli-reference/cli-ref-environment-variables.md +++ b/docs/reference/cli-reference/cli-ref-environment-variables.md @@ -31,6 +31,7 @@ The list of properties documented in [NuGet pack and restore as MSBuild targets] | NUGET_RESTORE_MSBUILD_ARGS | Sets additional MSBuild arguments. | Pass arguments identical to how you would pass them to msbuild.exe. An example of setting a project property Foo from the command line to value Bar would be /p:Foo=Bar | | NUGET_RESTORE_MSBUILD_VERBOSITY | Sets the MSBuild log verbosity. | Default is *quiet* ("/v:q"). Possible values *q[uiet]*, *m[inimal]*, *n[ormal]*, *d[etailed]*, and *diag[nostic]*. | | NUGET_SHOW_STACK | Determines whether the full exception (including stack trace) should be displayed to the user. | Specified as *true* or *false* (default). | +| NUGET_UPDATEFILETIME_MAXRETRIES | Sets the number of times NuGet will attempt to set the file timestamp when extracting packages. | On Windows anti-virus software might temporarily open files, preventing NuGet from changing the timestamp. NuGet uses an exponential back-off where the wait duration between attempts is `Math.Pow(2, retryNumber)`. The default max retries is 9, meaning the default total wait duration before failure will be approximately one second. | | NUGET_XMLDOC_MODE | Determines how assemblies XML documentation file extraction should be handled. | Supported modes are *skip* (do not extract XML documentation files), *compress* (store XML doc files as a zip archive) or *none* (default, treat XML doc files as regular files). | | NUGET_CERT_REVOCATION_MODE | Determines how the revocation status check of the certificate used to sign a package, is performed when a signed package is installed or restored. When not set, defaults to `online`.| Possible values *online* (default), *offline*. Related to [NU3028](../errors-and-warnings/NU3028.md) | From 2e8fd2b24834eca1fcde1578847373292df313a8 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 31 Jan 2022 12:34:43 -0600 Subject: [PATCH 519/988] Change link Fixes #2643 --- docs/nuget-org/Publish-a-package.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/nuget-org/Publish-a-package.md b/docs/nuget-org/Publish-a-package.md index 5b4048e98..e2c89c586 100644 --- a/docs/nuget-org/Publish-a-package.md +++ b/docs/nuget-org/Publish-a-package.md @@ -33,7 +33,7 @@ Next, you can either upload the package through the nuget.org web portal, push t 1. nuget.org tells you if the package name is available. If it isn't, change the package identifier in your project, rebuild, and try the upload again. -1. If the package name is available, nuget.org opens a **Verify** section in which you can review the metadata from the package manifest. If you included a [readme file](/docs/nuget-org/package-readme-on-nuget-org.md) in your package, check out the preview to ensure all content is being rendered properly. To change any of the metadata, edit your project (project file or `.nuspec` file), rebuild, recreate the package, and upload again. +1. If the package name is available, nuget.org opens a **Verify** section in which you can review the metadata from the package manifest. If you included a [readme file](../nuget-org/package-readme-on-nuget-org.md) in your package, check out the preview to ensure all content is being rendered properly. To change any of the metadata, edit your project (project file or `.nuspec` file), rebuild, recreate the package, and upload again. 2. When all the information is ready, select the **Submit** button From 6455f994c44bdf9773a504b4ef83ca2721bc393d Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Mon, 31 Jan 2022 10:45:23 -0800 Subject: [PATCH 520/988] Document Project Update event API (#2635) --- .../nuget-api-in-visual-studio.md | 69 +++++++++++++++++++ 1 file changed, 69 insertions(+) diff --git a/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md b/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md index b0dd58e35..1691de22e 100644 --- a/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md +++ b/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md @@ -56,6 +56,7 @@ From NuGet 6.0, all of these APIs are available in the package [NuGet.VisualStud - [`IVsPathContextProvider2`](#ivspathcontextprovider2-interface) A factory to initialize [IVsPathContext2](#ivspathcontext2-interface) instances. (5.0+) - [`IVsProjectJsonToPackageReferenceMigrator`](#ivsprojectjsontopackagereferencemigrator-interface) Contains methods to migrate a project.json based legacy project to PackageReference based project. (4.3+) - [`IVsSemanticVersionComparer`](#ivssemanticversioncomparer-interface) An interface for comparing two opaque version strings by treating them as NuGet semantic (4.0+) +- [`IVsNuGetProjectUpdateEvents`](#ivsnugetprojectupdateevents-interface) (6.2+) #### NuGet.SolutionRestoreManager @@ -1107,6 +1108,74 @@ This interface was primarily used by the ASP.NET team, to suggest that Javascrip } ``` +## IVsNuGetProjectUpdateEvents interface + +```cs + /// + /// NuGet project update events. + /// This API provides means of tracking project updates by NuGet. + /// In particular, for PackageReference projects, updates to the assets file and nuget generated props/targets. + /// For packages.config projects, package installations will be tracked. + /// All events are fired from a threadpool thread. + /// + public interface IVsNuGetProjectUpdateEvents + { + /// + /// Raised when solution restore starts with the list of projects that will be restored. + /// The list will not include all projects. Some projects may have been skipped in earlier up to date check, and other projects may no-op. + /// + /// + /// Just because a project is being restored that doesn't necessarily mean any actual updates will happen. + /// No heavy computation should happen in any of these methods as it'll block the NuGet progress. + /// + event SolutionRestoreEventHandler SolutionRestoreStarted; + + /// + /// Raised when solution restore finishes with the list of projects that were restored. + /// The list will not include all projects. Some projects may have been skipped in earlier up to date check, and other projects may no-op. + /// + /// + /// Just because a project is being restored that doesn't necessarily mean any actual updates will happen. + /// No heavy computation should happen in any of these methods as it'll block the NuGet progress. + /// + event SolutionRestoreEventHandler SolutionRestoreFinished; + + /// + /// Raised when particular project is about to be updated. + /// For PackageReference projects, this means an assets file or a nuget temp msbuild file write (nuget.g.props or nuget.g.targets). The list of updated files will include the aforementioned. + /// If a project was restore, but no file updates happen, this event will not be fired. + /// + /// + /// No heavy computation should happen in any of these methods as it'll block the NuGet progress. + /// + event ProjectUpdateEventHandler ProjectUpdateStarted; + + /// + /// Raised when particular project update has been completed. + /// For PackageReference projects, this means an assets file or a nuget temp msbuild file write (nuget.g.props or nuget.g.targets). The list of updated files will include the aforementioned. + /// If a project was restore, but no file updates happen, this event will not be fired. + /// + /// + /// No heavy computation should happen in any of these methods as it'll block the NuGet progress. + /// + event ProjectUpdateEventHandler ProjectUpdateFinished; + } + + /// + /// Defines an event handler delegate for solution restore start and end. + /// + /// List of projects that will run restore. Never . + public delegate void SolutionRestoreEventHandler(IReadOnlyList projects); + + /// + /// Defines an event handler delegate for project updates. + /// + /// Project full path. Never . + /// NuGet output files that may be updated. Never . + public delegate void ProjectUpdateEventHandler(string projectUniqueName, IReadOnlyList updatedFiles); +} +``` + ## IVsSolutionRestoreService interface ```cs From 70d0e4dc6865e90fe32f456329d1a1362a710811 Mon Sep 17 00:00:00 2001 From: Joel Verhagen Date: Mon, 31 Jan 2022 10:50:56 -0800 Subject: [PATCH 521/988] Add link to source mapping video to doc --- docs/consume-packages/Package-Source-Mapping.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/docs/consume-packages/Package-Source-Mapping.md b/docs/consume-packages/Package-Source-Mapping.md index 56e8dbdfd..013c06003 100644 --- a/docs/consume-packages/Package-Source-Mapping.md +++ b/docs/consume-packages/Package-Source-Mapping.md @@ -24,6 +24,12 @@ Older tooling will ignore the Package Source Mapping configuration. To use this Package Source Mappings will apply to all project types – including .NET Framework – as long as compatible tooling is used. +## Related video + +For a video-based overview of the Package Source Mapping feature, consider watching the [Secure your NuGet packages with Package Source Mapping](https://www.youtube.com/watch?v=G6P38Dn69Ro) video on YouTube. + +[!Video https://www.youtube.com/watch?v=G6P38Dn69Ro] + ## Enabling Package Source Mapping To opt into this feature, you must have a `nuget.config` file. Having a single `nuget.config` at the root of your repository is considered a best practice. See [nuget.config documentation](../reference/nuget-config-file.md) to learn more. From 8fa932186f838009f481936078dc62b79d47847a Mon Sep 17 00:00:00 2001 From: Joel Verhagen Date: Mon, 31 Jan 2022 10:54:55 -0800 Subject: [PATCH 522/988] Fix broken link via Archive.org Address https://github.com/NuGet/docs.microsoft.com-nuget/issues/2580 --- docs/resources/NuGet-FAQ.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/resources/NuGet-FAQ.yml b/docs/resources/NuGet-FAQ.yml index e693f4d18..fef2686ca 100644 --- a/docs/resources/NuGet-FAQ.yml +++ b/docs/resources/NuGet-FAQ.yml @@ -92,7 +92,7 @@ sections: - question: | Is it possible to extend the NuGet command line tool? answer: | - Yes, it's possible to add custom commands to `nuget.exe`, as described in [Rob Reynold's post](http://geekswithblogs.net/robz/archive/2011/07/15/extend-nuget-command-line.aspx). + Yes, it's possible to add custom commands to `nuget.exe`, as described in [Rob Reynold's post](https://web.archive.org/web/20200814172907/http://geekswithblogs.net/robz/archive/2011/07/15/extend-nuget-command-line.aspx) available via Archive.org. - name: NuGet Package Manager Console (Visual Studio on Windows) questions: From 95647724d5c3688e2aac185db4b07db49d1d7496 Mon Sep 17 00:00:00 2001 From: Joel Verhagen Date: Mon, 31 Jan 2022 10:55:49 -0800 Subject: [PATCH 523/988] Update Package-Source-Mapping.md --- docs/consume-packages/Package-Source-Mapping.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/docs/consume-packages/Package-Source-Mapping.md b/docs/consume-packages/Package-Source-Mapping.md index 013c06003..dc2ffa4bf 100644 --- a/docs/consume-packages/Package-Source-Mapping.md +++ b/docs/consume-packages/Package-Source-Mapping.md @@ -28,8 +28,6 @@ Package Source Mappings will apply to all project types – including .NET Frame For a video-based overview of the Package Source Mapping feature, consider watching the [Secure your NuGet packages with Package Source Mapping](https://www.youtube.com/watch?v=G6P38Dn69Ro) video on YouTube. -[!Video https://www.youtube.com/watch?v=G6P38Dn69Ro] - ## Enabling Package Source Mapping To opt into this feature, you must have a `nuget.config` file. Having a single `nuget.config` at the root of your repository is considered a best practice. See [nuget.config documentation](../reference/nuget-config-file.md) to learn more. From 4c84c2a131b435d8098f7c4a9befc965d4b27994 Mon Sep 17 00:00:00 2001 From: Joel Verhagen Date: Mon, 31 Jan 2022 12:13:49 -0800 Subject: [PATCH 524/988] Update docs/consume-packages/Package-Source-Mapping.md Co-authored-by: Nikolche Kolev --- docs/consume-packages/Package-Source-Mapping.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Package-Source-Mapping.md b/docs/consume-packages/Package-Source-Mapping.md index dc2ffa4bf..753e24f44 100644 --- a/docs/consume-packages/Package-Source-Mapping.md +++ b/docs/consume-packages/Package-Source-Mapping.md @@ -24,7 +24,7 @@ Older tooling will ignore the Package Source Mapping configuration. To use this Package Source Mappings will apply to all project types – including .NET Framework – as long as compatible tooling is used. -## Related video +## Video walkthough For a video-based overview of the Package Source Mapping feature, consider watching the [Secure your NuGet packages with Package Source Mapping](https://www.youtube.com/watch?v=G6P38Dn69Ro) video on YouTube. From bfe091d3f8cbb9a65da94acf1067e580b7111743 Mon Sep 17 00:00:00 2001 From: Joel Verhagen Date: Mon, 31 Jan 2022 12:14:17 -0800 Subject: [PATCH 525/988] Update docs/consume-packages/Package-Source-Mapping.md --- docs/consume-packages/Package-Source-Mapping.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Package-Source-Mapping.md b/docs/consume-packages/Package-Source-Mapping.md index 753e24f44..1810e05ff 100644 --- a/docs/consume-packages/Package-Source-Mapping.md +++ b/docs/consume-packages/Package-Source-Mapping.md @@ -24,7 +24,7 @@ Older tooling will ignore the Package Source Mapping configuration. To use this Package Source Mappings will apply to all project types – including .NET Framework – as long as compatible tooling is used. -## Video walkthough +## Video walkthrough For a video-based overview of the Package Source Mapping feature, consider watching the [Secure your NuGet packages with Package Source Mapping](https://www.youtube.com/watch?v=G6P38Dn69Ro) video on YouTube. From dd0fc158ea54b87a19a8bfd33c6ec3ad61088e6a Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Wed, 2 Feb 2022 13:32:44 -0800 Subject: [PATCH 526/988] Document IVsProjectRestoreInfoSource (#2657) --- .../nuget-api-in-visual-studio.md | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md b/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md index 1691de22e..6d0acf85e 100644 --- a/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md +++ b/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md @@ -1306,6 +1306,40 @@ This interface was primarily used by the ASP.NET team, to suggest that Javascrip } ``` +## IVsProjectRestoreInfoSource interface + +```cs + /// + /// Represents a package restore service API for integration with a project system. + /// Implemented by the project-system. + /// + public interface IVsProjectRestoreInfoSource + { + /// + /// Project Unique Name. + /// Must be equivalent to the name provided in the or equivalent. + /// + /// Never . + string Name { get; } + + /// + /// Whether the source needs to do some work that could lead to a nomination.
    + /// Called frequently, so it should be very efficient. + ///
    + bool HasPendingNomination { get; } + + /// + /// NuGet calls this method to wait on a potential nomination.
    + /// If the project has no pending restore data, it will return a completed task.
    + /// Otherwise, the task will be completed once the project nominates.
    + /// The task will be cancelled, if the source decide it no longer needs to nominate (for example: the restore state has no change)
    + /// The task will be failed, if the source runs into a problem, and it cannot get the correct data to nominate (for example: DT build failed)
    + ///
    + /// Cancellation token. + Task WhenNominated(CancellationToken cancellationToken); + } +``` + ## IVsSolutionRestoreStatusProvider interface ```cs From 2be74f70a8fd88d5a6e7e68b1a4b6d0d2d2af127 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Wed, 2 Feb 2022 13:33:41 -0800 Subject: [PATCH 527/988] Documented NU1004, NU1005, NU1006, NU1007, NU1012 log codes (#2656) --- docs/TOC.md | 5 +++ docs/reference/errors-and-warnings/NU1004.md | 47 ++++++++++++++++++++ docs/reference/errors-and-warnings/NU1005.md | 23 ++++++++++ docs/reference/errors-and-warnings/NU1006.md | 22 +++++++++ docs/reference/errors-and-warnings/NU1007.md | 25 +++++++++++ docs/reference/errors-and-warnings/NU1012.md | 38 ++++++++++++++++ 6 files changed, 160 insertions(+) create mode 100644 docs/reference/errors-and-warnings/NU1004.md create mode 100644 docs/reference/errors-and-warnings/NU1005.md create mode 100644 docs/reference/errors-and-warnings/NU1006.md create mode 100644 docs/reference/errors-and-warnings/NU1007.md create mode 100644 docs/reference/errors-and-warnings/NU1012.md diff --git a/docs/TOC.md b/docs/TOC.md index 3a308a84f..73aa14f0b 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -136,6 +136,11 @@ ### [NU1001](reference/errors-and-warnings/NU1001.md) ### [NU1002](reference/errors-and-warnings/NU1002.md) ### [NU1003](reference/errors-and-warnings/NU1003.md) +### [NU1004](reference/errors-and-warnings/NU1004.md) +### [NU1005](reference/errors-and-warnings/NU1005.md) +### [NU1006](reference/errors-and-warnings/NU1006.md) +### [NU1007](reference/errors-and-warnings/NU1007.md) +### [NU1012](reference/errors-and-warnings/NU1012.md) ### [NU1100](reference/errors-and-warnings/NU1100.md) ### [NU1101](reference/errors-and-warnings/NU1101.md) ### [NU1102](reference/errors-and-warnings/NU1102.md) diff --git a/docs/reference/errors-and-warnings/NU1004.md b/docs/reference/errors-and-warnings/NU1004.md new file mode 100644 index 000000000..c4350eb5e --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1004.md @@ -0,0 +1,47 @@ +--- +title: NuGet Error NU1004 +description: NU1004 error code +author: nkolev92 +ms.author: nikolev +ms.date: 01/02/2022 +ms.topic: reference +f1_keywords: + - "NU1004" +--- + +# NuGet Error NU1004 + +## Scenario 1 + +
    The project target frameworks are different than the lock file's target frameworks. Lock file target frameworks: net6.0,net5.0. Project target frameworks net6.0.
    +The packages lock file is inconsistent with the project dependencies so restore can't be run in locked mode. Disable the RestoreLockedMode MSBuild property or pass an explicit --force-evaluate option to run restore to update the lock file.
    + +### Issue + +When restore is run in locked mode, it ensures that the project dependencies have not changed since the last restore. +A new framework, `net5.0` has been added to the project. + +### Solution + +Consult the recommendations in the error message and do one of the following: + +- Rerun restore without locked mode to regenerate the lock file. +- Return the project to it's previous state, removing the additional net5.0 framework. + +## Scenario 2 + +
    The package reference Contoso.Library version has changed from [2.0.0, ) to [1.2.3, ).The packages lock file is inconsistent with the project dependencies so restore can't be run
    + in locked mode. Disable the RestoreLockedMode MSBuild property or pass an explicit --force-evaluate option to run restore to update the lock file.
    + +### Issue + + +When restore is run in locked mode, it ensures that the project dependencies have not changed since the last restore. +Contoso.Library's version has been changed from `2.0.0` to `1.2.3`. + +### Solution + +Consult the recommendations in the error message and do one of the following: + +- Rerun restore without locked mode to regenerate the lock file. +- Return the project to it's previous state, changing the version back to `2.0.0`. diff --git a/docs/reference/errors-and-warnings/NU1005.md b/docs/reference/errors-and-warnings/NU1005.md new file mode 100644 index 000000000..92f377d21 --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1005.md @@ -0,0 +1,23 @@ +--- +title: NuGet Error NU1005 +description: NU1005 error code +author: nkolev92 +ms.author: nikolev +ms.date: 01/02/2022 +ms.topic: reference +f1_keywords: + - "NU1005" +--- + +# NuGet Error NU1005 + +
    Invalid restore input where RestorePackagesWithLockFile property is set to false but a packages lock file exists at C:\SourceCode\ContosoProject\Contoso.Library\packages.lock.json
    + +### Issue + +There are 2 opt-in methods the lock file functionality, by setting the RestorePackagesWithLockFile property, or create a packages.lock.json next to the project file, and they are conflicting. + +### Solution + +- If you wish to continue using the lock file functionality, change RestorePackagesWithLockFile to `true`. +- If you to wish to stop using the lock file functionality, remove the packages.lock.json file. diff --git a/docs/reference/errors-and-warnings/NU1006.md b/docs/reference/errors-and-warnings/NU1006.md new file mode 100644 index 000000000..5f6094f6c --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1006.md @@ -0,0 +1,22 @@ +--- +title: NuGet Error NU1006 +description: NU1006 error code +author: nkolev92 +ms.author: nikolev +ms.date: 01/02/2022 +ms.topic: reference +f1_keywords: + - "NU1006" +--- + +# NuGet Error NU1006 + +
    NuGet.Config has an invalid package source value 'C:\PackageSource>\'. Reason: Illegal characters in path.
    + +### Issue + +The configuration file has an invalid package source value. + +### Solution + +Remove the illegal package source value. diff --git a/docs/reference/errors-and-warnings/NU1007.md b/docs/reference/errors-and-warnings/NU1007.md new file mode 100644 index 000000000..987d8df27 --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1007.md @@ -0,0 +1,25 @@ +--- +title: NuGet Error NU1007 +description: NU1007 error code +author: nkolev92 +ms.author: nikolev +ms.date: 01/02/2022 +ms.topic: reference +f1_keywords: + - "NU1007" +--- + +# NuGet Error NU1007 + +
    The runtime.json specified in the project 'C:\Program Files\dotnet\sdk\X.Y.Z00\RuntimeIdentifierGraph.json
    +' could not be parsed.
    + +### Issue + +The runtime.json specified in the project could not be parsed. +This is normally a .NET SDK, or a package issue. + +### Solution + +- If the path in question is from the .NET SDK, file an issue at [dotnet/sdk](https://github.com/dotnet/sdk/issues). +- If the path in question is from a package location, contact the package author. diff --git a/docs/reference/errors-and-warnings/NU1012.md b/docs/reference/errors-and-warnings/NU1012.md new file mode 100644 index 000000000..111fc520f --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1012.md @@ -0,0 +1,38 @@ +--- +title: NuGet Error NU1012 +description: NU1012 error code +author: nkolev92 +ms.author: nikolev +ms.date: 01/02/2022 +ms.topic: reference +f1_keywords: + - "NU1012" +--- + +# NuGet Error NU1012 + +## Scenario 1 + +Platform version is not present for one or more target frameworks, even though they have specified a platform: net6.0-android. + +### Issue + +You have specified a target framework with a platform in your project file but the platform version is not available. + +### Solution + +- If you are specifying `TargetPlatformVersion` manually, please ensure a version is included. +- If you are using the .NET SDK, and the TargetFramework(s) property contains `net6.0-android`, the .NET SDK is supposed to automatically add a platform version. If you are experiencing this, file an issue at [dotnet/sdk](https://github.com/dotnet/sdk/issues). + +## Scenario 2 + +
    Some dependency group TFMs are missing a platform version: net6.0-android
    + +### Issue + +When creating a package for a framework with a platform such as `android`, you need to specify the correct platform version. + +### Solution + +Specify the platform version in your nuspec. +If you are using the pack targets, the platform version will be automatically inferred. \ No newline at end of file From eff3f5452f653432c6c6db4c9d0906e65043759e Mon Sep 17 00:00:00 2001 From: David Schmitt <88319323+DavidS-cloud@users.noreply.github.com> Date: Fri, 4 Feb 2022 09:33:39 +0000 Subject: [PATCH 528/988] Fix typo in search-autocomplete-service-resource.md --- docs/api/search-autocomplete-service-resource.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/api/search-autocomplete-service-resource.md b/docs/api/search-autocomplete-service-resource.md index bec6ca03c..c715a237d 100644 --- a/docs/api/search-autocomplete-service-resource.md +++ b/docs/api/search-autocomplete-service-resource.md @@ -59,7 +59,7 @@ semVerLevel | URL | string | no | A SemVer 1.0.0 version string packageType | URL | string | no | The package type to use to filter packages (added in `SearchAutocompleteService/3.5.0`) The autocomplete query `q` is parsed in a manner that is defined by the server implementation. nuget.org supports -querying for the prefix of package ID tokens, which are pieces of the ID produced by spliting the original by camel +querying for the prefix of package ID tokens, which are pieces of the ID produced by splitting the original by camel case and symbol characters. The `skip` parameter defaults to 0. From 71affc31fd4f185a81cdeb23717cc0b3e6a16161 Mon Sep 17 00:00:00 2001 From: Niclas Gustafsson <45293037+niclas-g@users.noreply.github.com> Date: Fri, 4 Feb 2022 16:02:49 +0100 Subject: [PATCH 529/988] Update Overview.md --- docs/hosting-packages/Overview.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/hosting-packages/Overview.md b/docs/hosting-packages/Overview.md index 6450b7eda..6544cd6a7 100644 --- a/docs/hosting-packages/Overview.md +++ b/docs/hosting-packages/Overview.md @@ -23,6 +23,7 @@ There are also several other NuGet hosting products such as [Azure Artifacts](ht - [Artifactory](https://www.jfrog.com/artifactory/) from JFrog. - [Azure Artifacts](https://www.visualstudio.com/docs/package/nuget/publish), which is also available on Team Foundation Server 2017 and later. - [BaGet](https://github.com/loic-sharma/BaGet), an open-source implementation of NuGet V3 server built on ASP.NET Core +- [Bytesafe](https://bytesafe.dev/nuget/) A fully managed package and supply chain security platform - [Cloudsmith](https://cloudsmith.io/l/nuget-feed/), a fully managed package management SaaS - [GitHub package registry](https://help.github.com/articles/configuring-nuget-for-use-with-github-package-registry) - [GitLab Package Registry](https://docs.gitlab.com/ee/user/packages/nuget_repository/) From 8f15af977ce90cf66b1505cbe0208bd97ad95336 Mon Sep 17 00:00:00 2001 From: Jeff Kluge Date: Fri, 4 Feb 2022 10:45:45 -0800 Subject: [PATCH 530/988] Document enhanced HTTP retry environment variables --- docs/reference/cli-reference/cli-ref-environment-variables.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/reference/cli-reference/cli-ref-environment-variables.md b/docs/reference/cli-reference/cli-ref-environment-variables.md index 9668140f9..d0d54723d 100644 --- a/docs/reference/cli-reference/cli-ref-environment-variables.md +++ b/docs/reference/cli-reference/cli-ref-environment-variables.md @@ -34,4 +34,6 @@ The list of properties documented in [NuGet pack and restore as MSBuild targets] | NUGET_UPDATEFILETIME_MAXRETRIES | Sets the number of times NuGet will attempt to set the file timestamp when extracting packages. | On Windows anti-virus software might temporarily open files, preventing NuGet from changing the timestamp. NuGet uses an exponential back-off where the wait duration between attempts is `Math.Pow(2, retryNumber)`. The default max retries is 9, meaning the default total wait duration before failure will be approximately one second. | | NUGET_XMLDOC_MODE | Determines how assemblies XML documentation file extraction should be handled. | Supported modes are *skip* (do not extract XML documentation files), *compress* (store XML doc files as a zip archive) or *none* (default, treat XML doc files as regular files). | | NUGET_CERT_REVOCATION_MODE | Determines how the revocation status check of the certificate used to sign a package, is performed when a signed package is installed or restored. When not set, defaults to `online`.| Possible values *online* (default), *offline*. Related to [NU3028](../errors-and-warnings/NU3028.md) | - +| NUGET_ENABLE_ENHANCED_HTTP_RETRY | Enables or disables enhanced HTTP retry in NuGet. | Possible values are `true` or `false` (default) | +| NUGET_ENHANCED_MAX_NETWORK_TRY_COUNT | Configures the maximum number of times an HTTP connection should be retried when enhanced retries are enabled. | A number representing how many retries to perform, the default value is `6`. | +| NUGET_ENHANCED_NETWORK_RETRY_DELAY_MILLISECONDS | Configures the amount of time to wait in milliseconds before retrying an HTTP connection when enhanced retries are enabled. | Number of millseconds to wait, the default value is `1000`. | From af7a0a7ba7ce0f548627b428e0fb5e7d6ea7e5ee Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 4 Feb 2022 15:59:40 -0800 Subject: [PATCH 531/988] Document RestoreRepositoryPath, ExcludeRestorePackageImports and listendess impact to floating versions (#2660) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Document RestoreRepositoryPath * Document ExcludeRestorePackageImports * Document floating version listedness * Update docs/reference/msbuild-targets.md Co-authored-by: Loïc Sharma <737941+loic-sharma@users.noreply.github.com> * address feedback * use stronger language Co-authored-by: Loïc Sharma <737941+loic-sharma@users.noreply.github.com> --- docs/concepts/Package-Versioning.md | 3 +++ docs/reference/msbuild-targets.md | 4 ++++ 2 files changed, 7 insertions(+) diff --git a/docs/concepts/Package-Versioning.md b/docs/concepts/Package-Versioning.md index 1612f25b3..61d1fd07d 100644 --- a/docs/concepts/Package-Versioning.md +++ b/docs/concepts/Package-Versioning.md @@ -163,6 +163,9 @@ Always specify a version or version range for package dependencies in project fi | \*-\* | 1.1.0
    1.1.1
    1.1.2-alpha
    1.3.0-beta | 1.3.0-beta | The highest version including the not stable versions. | Available in Visual Studio version 16.6, NuGet version 5.6, .NET Core SDK version 3.1.300 | | 1.1.\*-\* | 1.1.0
    1.1.1
    1.1.2-alpha
    1.1.2-beta
    1.3.0-beta | 1.1.2-beta | The highest version respecting the pattern and including the not stable versions. | Available in Visual Studio version 16.6, NuGet version 5.6, .NET Core SDK version 3.1.300 | +> [!Note] +> Floating version resolution does not take into account whether or not a package is listed. + **References in `packages.config`:** In `packages.config`, every dependency is listed with an exact `version` attribute that's used when restoring packages. The `allowedVersions` attribute is used only during update operations to constrain the versions to which the package might be updated. diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index ef989c51c..d7e7101e4 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -442,8 +442,12 @@ Additional restore settings may come from MSBuild properties in the project file | `NuGetLockFilePath` | A custom location for the lock file. The default location is next to the project and is named `packages.lock.json`. | | `RestoreForceEvaluate` | Forces restore to recompute the dependencies and update the lock file without any warning. | | `RestorePackagesConfig` | An opt-in switch, that restores projects with packages.config. Support with `MSBuild -t:restore` only. | +| `RestoreRepositoryPath` | packages.config only. Specifies the packages directory to which the packages should be restored. `SolutionDirectory` will be used if not specified. | | `RestoreUseStaticGraphEvaluation` | An opt-in switch to use static graph MSBuild evaluation instead of the standard evaluation. Static graph evaluation is an experimental feature that's significantly faster for large repos and solutions. | +The `ExcludeRestorePackageImports` property is an internal property used by NuGet. +It should not be modified or set in any MSBuild files. + #### Examples Command line: From f9141cc0098cfa14f2f6db5ff6e7032f33379ff1 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 4 Feb 2022 16:02:00 -0800 Subject: [PATCH 532/988] Document NU5126, NU5045, NU1211, NU1212, NU1213, NU1204 (#2659) --- docs/TOC.md | 6 +++ docs/reference/errors-and-warnings/NU1204.md | 21 ++++++++++ docs/reference/errors-and-warnings/NU1211.md | 22 +++++++++++ docs/reference/errors-and-warnings/NU1212.md | 40 ++++++++++++++++++++ docs/reference/errors-and-warnings/NU1213.md | 22 +++++++++++ docs/reference/errors-and-warnings/NU5045.md | 21 ++++++++++ docs/reference/errors-and-warnings/NU5126.md | 21 ++++++++++ 7 files changed, 153 insertions(+) create mode 100644 docs/reference/errors-and-warnings/NU1204.md create mode 100644 docs/reference/errors-and-warnings/NU1211.md create mode 100644 docs/reference/errors-and-warnings/NU1212.md create mode 100644 docs/reference/errors-and-warnings/NU1213.md create mode 100644 docs/reference/errors-and-warnings/NU5045.md create mode 100644 docs/reference/errors-and-warnings/NU5126.md diff --git a/docs/TOC.md b/docs/TOC.md index 73aa14f0b..d841d6fd2 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -153,6 +153,10 @@ ### [NU1201](reference/errors-and-warnings/NU1201.md) ### [NU1202](reference/errors-and-warnings/NU1202.md) ### [NU1203](reference/errors-and-warnings/NU1203.md) +### [NU1204](reference/errors-and-warnings/NU1204.md) +### [NU1211](reference/errors-and-warnings/NU1211.md) +### [NU1212](reference/errors-and-warnings/NU1212.md) +### [NU1213](reference/errors-and-warnings/NU1213.md) ### [NU1401](reference/errors-and-warnings/NU1401.md) ### [NU1500](reference/errors-and-warnings/NU1500.md) ### [NU1501](reference/errors-and-warnings/NU1501.md) @@ -244,6 +248,7 @@ ### [NU5035](reference/errors-and-warnings/NU5035.md) ### [NU5036](reference/errors-and-warnings/NU5036.md) ### [NU5037](reference/errors-and-warnings/NU5037.md) +### [NU5045](reference/errors-and-warnings/NU5045.md) ### [NU5046](reference/errors-and-warnings/NU5046.md) ### [NU5047](reference/errors-and-warnings/NU5047.md) ### [NU5048](reference/errors-and-warnings/NU5048.md) @@ -272,6 +277,7 @@ ### [NU5123](reference/errors-and-warnings/NU5123.md) ### [NU5124](reference/errors-and-warnings/NU5124.md) ### [NU5125](reference/errors-and-warnings/NU5125.md) +### [NU5126](reference/errors-and-warnings/NU5126.md) ### [NU5127](reference/errors-and-warnings/NU5127.md) ### [NU5128](reference/errors-and-warnings/NU5128.md) ### [NU5129](reference/errors-and-warnings/NU5129.md) diff --git a/docs/reference/errors-and-warnings/NU1204.md b/docs/reference/errors-and-warnings/NU1204.md new file mode 100644 index 000000000..bcfc268dd --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1204.md @@ -0,0 +1,21 @@ +--- +title: NuGet Error NU1204 +description: NU1204 Error code +author: nkolev92 +ms.date: 02/02/2022 +ms.topic: reference +f1_keywords: + - NU1204 +--- + +# NuGet Warning NU1204 + +
    Invalid tools package Contoso.Tool 1.0.0. Tools packages cannot contain more than one PackageType.
    + +### Issue + +The Contoso.Tool package has more than one package type. [DotnetTool](../../create-packages/set-package-type.md#known-package-types packages can only contain one PackageType. + +### Solution + +Consult the with the package author and ask them to [create a package](/dotnet/core/tools/global-tools-how-to-create) with the DotnetTool package type only. diff --git a/docs/reference/errors-and-warnings/NU1211.md b/docs/reference/errors-and-warnings/NU1211.md new file mode 100644 index 000000000..186124a36 --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1211.md @@ -0,0 +1,22 @@ +--- +title: NuGet Error NU1211 +description: NU1211 Error code +author: nkolev92 +ms.date: 02/02/2022 +ms.topic: reference +f1_keywords: + - NU1211 +--- + +# NuGet Warning NU1211 + +
    Project `DotnelToolReferenceProject.csproj` must have a single package reference(s).
    + +### Issue + +The project you are attempting to restore has special restrictions and exactly 1 PackageReference package must be specified. + +### Solution + +Projects of this style are normally not ordinary projects and the [dotnet tool](/dotnet/core/tools/global-tools) commands should be used to manage your dotnet tools. +Alternatively, change your project to specify exactly 1 package. diff --git a/docs/reference/errors-and-warnings/NU1212.md b/docs/reference/errors-and-warnings/NU1212.md new file mode 100644 index 000000000..d383effdf --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1212.md @@ -0,0 +1,40 @@ +--- +title: NuGet Error NU1212 +description: NU1212 Error code +author: nkolev92 +ms.date: 02/02/2022 +ms.topic: reference +f1_keywords: + - NU1212 +--- + +# NuGet Warning NU1212 + +## Scenario 1 + +
    Invalid project-package combination for Contoso.Library 1.0.0. DotnetToolReference project style can only contain references of the DotnetTool type
    + +### Issue + +`DotnetToolReference` project style can only reference .NET tools with the [DotnetTool](../../create-packages/set-package-type.md#known-package-types) package type. Either the project style is not `DotnetToolReference` or a referenced package is not of `DotnetTool` type. + +### Solution + +Projects of this style are normally not ordinary projects and the [dotnet tool](/dotnet/core/tools/global-tools) commands should be used to manage your dotnet tools. +Contoso.Library is not a `DotnetTool` package. +Use a different package that's of the `DotnetTool` type. + +## Scenario 2 + +
    Invalid project-package combination for Contoso.Library 1.0.0. DotnetToolReference project style can only contain references of the DotnetTool type
    + +### Issue + +`DotnetToolReference` project style can only reference .NET tools with the [DotnetTool](../../create-packages/set-package-type.md#known-package-types) package type. Either the project style is not `DotnetToolReference` or a referenced package is not of `DotnetTool` type. + +### Solution + +Projects of this style are normally not ordinary projects and the [dotnet tool](/dotnet/core/tools/global-tools) commands should be used to manage your dotnet tools. + +The project in question is not a DotnetToolReference project, but the package is of the DotnetTool type. +Change the RestoreProjectStyle to DotnetToolReference. diff --git a/docs/reference/errors-and-warnings/NU1213.md b/docs/reference/errors-and-warnings/NU1213.md new file mode 100644 index 000000000..51881485a --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1213.md @@ -0,0 +1,22 @@ +--- +title: NuGet Error NU1213 +description: NU1213 Error code +author: nkolev92 +ms.date: 02/02/2022 +ms.topic: reference +f1_keywords: + - NU1213 +--- + +# NuGet Warning NU1213 + +
    The package Contoso.Platform 1.0.0 has a package type DotnetPlatform that is incompatible with this project.
    + +### Issue + +Certain [package types](../../create-packages/set-package-type.md) cannot be installed into standard projects. + +### Solution + +Packages of certain types cannot be installed into standard projects. +Do not install this package or contact the package author to learn about their motivation. diff --git a/docs/reference/errors-and-warnings/NU5045.md b/docs/reference/errors-and-warnings/NU5045.md new file mode 100644 index 000000000..a38ca3a7c --- /dev/null +++ b/docs/reference/errors-and-warnings/NU5045.md @@ -0,0 +1,21 @@ +--- +title: NuGet Error NU5045 +description: NU5045 Error code +author: nkolev92 +ms.date: 02/02/2022 +ms.topic: reference +f1_keywords: + - NU5045 +--- + +# NuGet Warning NU5045 + +
    The 'icon' element 'icon.svg' has an invalid file extension. Valid options are .png, .jpg or .jpeg.
    + +### Issue + +The icon file provided does not have a supported extension. + +### Solution + +Consult the options in the error message and use one of those file types. diff --git a/docs/reference/errors-and-warnings/NU5126.md b/docs/reference/errors-and-warnings/NU5126.md new file mode 100644 index 000000000..a91a1d10b --- /dev/null +++ b/docs/reference/errors-and-warnings/NU5126.md @@ -0,0 +1,21 @@ +--- +title: NuGet Error NU5126 +description: NU5126 Error code +author: nkolev92 +ms.date: 02/02/2022 +ms.topic: reference +f1_keywords: + - NU5126 +--- + +# NuGet Warning NU5126 + +
    `project.json` pack is deprecated. Please consider migrating '{0}' to `PackageReference` and using the pack targets
    + +### Issue + +`project.json` as a package management style is no longer actively developed and was replaced by PackageReference and [pack targets](../msbuild-targets.md). + +### Solution + +Migrate your package management style to [PackageReference](../../consume-packages/package-references-in-project-files.md) and use the [pack targets](../msbuild-targets.md). From a30291028ff42c914910c0b52d0feeb4872b18e6 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Fri, 18 Feb 2022 07:29:19 -0800 Subject: [PATCH 533/988] NuGet 6.1 release notes (#2667) --- docs/TOC.md | 1 + docs/release-notes/Index.md | 2 + docs/release-notes/NuGet-6.1.md | 121 ++++++++++++++++++++++++++++++++ 3 files changed, 124 insertions(+) create mode 100644 docs/release-notes/NuGet-6.1.md diff --git a/docs/TOC.md b/docs/TOC.md index d841d6fd2..c1c506e7b 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -307,6 +307,7 @@ ### [Known Issues](release-notes/known-issues.md) ### NuGet 6.x +#### [NuGet 6.1](release-notes/NuGet-6.1.md) #### [NuGet 6.0](release-notes/NuGet-6.0.md) ### NuGet 5.x #### [NuGet 5.11](release-notes/NuGet-5.11.md) diff --git a/docs/release-notes/Index.md b/docs/release-notes/Index.md index 54a2a5c8b..9958537f9 100644 --- a/docs/release-notes/Index.md +++ b/docs/release-notes/Index.md @@ -11,6 +11,8 @@ ms.topic: conceptual [Known Issues](../release-notes/known-issues.md) +[NuGet 6.1](../release-notes/NuGet-6.1.md) + [NuGet 6.0](../release-notes/NuGet-6.0.md) [NuGet 5.11](../release-notes/NuGet-5.11.md) diff --git a/docs/release-notes/NuGet-6.1.md b/docs/release-notes/NuGet-6.1.md new file mode 100644 index 000000000..f19ac036a --- /dev/null +++ b/docs/release-notes/NuGet-6.1.md @@ -0,0 +1,121 @@ +--- +title: NuGet 6.1 Release Notes +description: Release notes for NuGet 6.1 including new features, bug fixes, and DCRs. +author: zivkan +ms.author: zivkan +ms.date: 2/15/2022 +ms.topic: conceptual +--- + +# NuGet 6.1 Release Notes + +NuGet distribution vehicles: + +| NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | +|:---|:---|:---| +| [**6.1.0**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.1](https://visualstudio.microsoft.com/downloads/) | [6.0.200](https://dotnet.microsoft.com/download/dotnet-core/6.0)1 | + +1 Installed with Visual Studio 2022 with.NET Core workload + +## Summary: What's New in 6.1 + +* Show subcommand help instead of main `dotnet nuget trust` command help for all cases - [#10788](https://github.com/NuGet/Home/issues/10788) + +* Sort the package vulnerabilities in descending order in PMUI details pane - [#11091](https://github.com/NuGet/Home/issues/11091) + +### Issues fixed in this release + +**DCRs:** + +* Disable nuget.exe pack for project.json by default, add a fallback env var to enable it - [#11214](https://github.com/NuGet/Home/issues/11214) + +* [DCR]: Adjust compatibility rules for Apple TFMs in .NET - [#11338](https://github.com/NuGet/Home/issues/11338) + +* [DCR][No Customer Impact]: NuGetPackage (VS extension entry point) should not use DTEEvents - [#11360](https://github.com/NuGet/Home/issues/11360) + +* [DCR]: Mitigate missing nuget.org when non-NuGet tool creates nuget.config without any sources - [#11387](https://github.com/NuGet/Home/issues/11387) + +* [DCR]: NuGet.VisualStudio and NuGet.VisualStudio.Contracts to follow Visual Studio version numbers - [#11394](https://github.com/NuGet/Home/issues/11394) + +* [DCR]: Deprecate VS Extensibility APIs that use System.Version - [#11412](https://github.com/NuGet/Home/issues/11412) + +* [DCR]: Obsolete VS extensibility APIs that use System.Runtime.Versioning.FrameworkName - [#11419](https://github.com/NuGet/Home/issues/11419) + +* Remove Mac Catalyst warning - [#11438](https://github.com/NuGet/Home/issues/11438) + +**Bugs:** + +* Confusing restore output: it did some restore on one of the projects, but at the end it still prints "All packages are already installed and there is nothing to restore" - [#4376](https://github.com/NuGet/Home/issues/4376) + +* dotnet nuget push - Missing value for option - [#4864](https://github.com/NuGet/Home/issues/4864) + +* Restore does not print enough info in the output when fails - [#6047](https://github.com/NuGet/Home/issues/6047) + +* Minimal VS install has broken NuGet UI - [#8414](https://github.com/NuGet/Home/issues/8414) + +* Visual Studio is unresponsive while using `Clear All NuGet cache(s)` feature - [#9831](https://github.com/NuGet/Home/issues/9831) + +* Versions List in Details Pane is not kept in sync when changing Selected Package - [#10557](https://github.com/NuGet/Home/issues/10557) + +* File Conflict dialog does not have access keys - [#10691](https://github.com/NuGet/Home/issues/10691) + +* ContentItemCollection uses yield return which is causing over-allocation of Enumerators - [#10921](https://github.com/NuGet/Home/issues/10921) + +* UIDelay: `nuget.packagemanagement.visualstudio.dll!NuGet.PackageManagement.VisualStudio.VsCoreProjectSystemReferenceReader+d__` - managed projects - [#11163](https://github.com/NuGet/Home/issues/11163) + +* [Bug]: MSBuild restore is logging exception as warning - [#11179](https://github.com/NuGet/Home/issues/11179) + +* [Bug]: String comparison approach used for Source and Namespaces is not consistent - [#11182](https://github.com/NuGet/Home/issues/11182) + +* There is no tooltip for the “install” button on the right of a package in "Browse" tab - [#11189](https://github.com/NuGet/Home/issues/11189) + +* Async Service Provider should be invoked on threadpool threads via the built in TService,TInterface extensions instead of custom casting - [#11200](https://github.com/NuGet/Home/issues/11200) + +* [Bug]: VS crashes when package sources dropdown in PM UI has multiple package sources whose names are equal when compared using Culture Ignore Case - [#11241](https://github.com/NuGet/Home/issues/11241) + +* The strings "ms" and "sec" are not localized on Output - Package Manager window. - [#11297](https://github.com/NuGet/Home/issues/11297) + +* Sort Package Source dropdown list using locale/culture setttings in PM UI - [#11298](https://github.com/NuGet/Home/issues/11298) + +* Update SDPX license list from da7ecca to fafa781 - [#11309](https://github.com/NuGet/Home/issues/11309) + +* [Bug]: NuGet.Localization isn't generated - [#11328](https://github.com/NuGet/Home/issues/11328) + +* [Bug]: assembly-loading MEF composition in NuGet.Tools VS package's synchronous event handlers can cause responsiveness delays - [#11334](https://github.com/NuGet/Home/issues/11334) + +* [Bug]: NuGet SDK resolver should not throw if project path is NULL - [#11376](https://github.com/NuGet/Home/issues/11376) + +* [Bug]: PackageSourceMapping inconsistencies should be reported - [#11385](https://github.com/NuGet/Home/issues/11385) + +* [Bug]: `RegistryKeyUtility.GetValueFromRegistryKey()` has unused parameter, leading to incorrect results - [#11407](https://github.com/NuGet/Home/issues/11407) + +* Reduce heap allocations in ResolverUtility.FindLibraryByVersionAsync - [#11409](https://github.com/NuGet/Home/issues/11409) + +* [Bug]: Package Source Mapping matches found should not be logged for projects - [#11413](https://github.com/NuGet/Home/issues/11413) + +* [Bug]: Avoid explicitly casting the result of GetService/GetServiceAsync, use the extension methods instead - [#11451](https://github.com/NuGet/Home/issues/11451) + +* [Bug]: Package Source options in VS does not announce package sources or checkbox status - [#11482](https://github.com/NuGet/Home/issues/11482) + +* [Bug]: VS package source options clears all checkboxes when adding or removing sources - [#11521](https://github.com/NuGet/Home/issues/11521) + +**[List of all issues fixed in this release - 6.1](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=Z2lkOi8vcmFwdG9yL1JlbGVhc2UvNjY5ODY)** + +### Community contributions + +Thank you to all the contributors who helped make this NuGet release awesome! + +|Who|PRs|Issues| +|----|----|----| +[mairaw](https://github.com/mairaw) | [4336](https://github.com/NuGet/NuGet.Client/pull/4336) | Fix broken NuGet logo image - [#11390](https://github.com/NuGet/Home/issues/11390) + +## Feedback welcome + +Your feedback is important to us. If there are any problems with this release, check our +[GitHub Issues](https://github.com/NuGet/Home/issues) and +[Visual Studio Developer Community](https://developercommunity.visualstudio.com/) +for existing issues. For new issues within NuGet, please report a +[GitHub Issue](https://github.com/NuGet/Home/issues/new/choose). +For general NuGet experience issues, let us know via the +[Report a Problem](/visualstudio/ide/how-to-report-a-problem-with-visual-studio) +option found in your favorite IDE under **Help > Report a Problem**. From 74b3b2caee3419af2fa0ba8548608976a39b9da7 Mon Sep 17 00:00:00 2001 From: Andy Zivkovic Date: Mon, 28 Feb 2022 09:25:24 -0800 Subject: [PATCH 534/988] repositoryPath is not overridden by environment variable (#2671) --- docs/reference/nuget-config-file.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/nuget-config-file.md b/docs/reference/nuget-config-file.md index b93ad7b51..135a03caa 100644 --- a/docs/reference/nuget-config-file.md +++ b/docs/reference/nuget-config-file.md @@ -32,7 +32,7 @@ Contains miscellaneous configuration settings, which can be set using the [`nuge | --- | --- | | dependencyVersion (`packages.config` only) | The default `DependencyVersion` value for package install, restore, and update, when the `-DependencyVersion` switch is not specified directly. This value is also used by the NuGet Package Manager UI. Values are `Lowest`, `HighestPatch`, `HighestMinor`, `Highest`. | | globalPackagesFolder (projects using PackageReference only) | The location of the default global packages folder. The default is `%userprofile%\.nuget\packages` (Windows) or `~/.nuget/packages` (Mac/Linux). A relative path can be used in project-specific `nuget.config` files. This setting is overridden by the `NUGET_PACKAGES` environment variable, which takes precedence. | -| repositoryPath (`packages.config` only) | The location in which to install NuGet packages instead of the default `$(Solutiondir)/packages` folder. A relative path can be used in project-specific `nuget.config` files. This setting is overridden by the `NUGET_PACKAGES` environment variable, which takes precedence. | +| repositoryPath (`packages.config` only) | The location in which to install NuGet packages instead of the default `$(Solutiondir)/packages` folder. A relative path can be used in project-specific `nuget.config` files. | | defaultPushSource | Identifies the URL or path of the package source that should be used as the default if no other package sources are found for an operation. | | http_proxy http_proxy.user http_proxy.password no_proxy | Proxy settings to use when connecting to package sources; `http_proxy` should be in the format `http://:@`. Passwords are encrypted and cannot be added manually. For `no_proxy`, the value is a comma-separated list of domains the bypass the proxy server. You can alternately use the http_proxy and no_proxy environment variables for those values. For additional details, see [NuGet proxy settings](http://skolima.blogspot.com/2012/07/nuget-proxy-settings.html) (skolima.blogspot.com). | | signatureValidationMode | Specifies the validation mode used to verify package signatures for package install, and restore. Values are `accept`, `require`. Defaults to `accept`. From 91228f01d2d9edb6adb359471684707bd0b92494 Mon Sep 17 00:00:00 2001 From: Dan Albrecht Date: Mon, 28 Feb 2022 19:16:04 -0800 Subject: [PATCH 535/988] Replace Non-Breaking Hyphen with Hyphen-Minus - Replace Non-Breaking Hyphen (U+2011) with Hyphen-Minus (U+002D) - I was directly copy/pasting these names to make folders and this caused rendering issues in a legacy terminal window - This page now consistently uses hyphen-minus everywhere --- .../managing-the-global-packages-and-cache-folders.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/consume-packages/managing-the-global-packages-and-cache-folders.md b/docs/consume-packages/managing-the-global-packages-and-cache-folders.md index 5ef5db58f..afa31e2a2 100644 --- a/docs/consume-packages/managing-the-global-packages-and-cache-folders.md +++ b/docs/consume-packages/managing-the-global-packages-and-cache-folders.md @@ -13,8 +13,8 @@ Whenever you install, update, or restore a package, NuGet manages packages and p | Name | Description and Location (per user)| | --- | --- | -| global‑packages | The *global-packages* folder is where NuGet installs any downloaded package. Each package is fully expanded into a subfolder that matches the package identifier and version number. Projects using the [PackageReference](package-references-in-project-files.md) format always use packages directly from this folder. When using the [packages.config](../reference/packages-config.md), packages are installed to the *global-packages* folder, then copied into the project's `packages` folder.
    • Windows: `%userprofile%\.nuget\packages`
    • Mac/Linux: `~/.nuget/packages`
    • Override using the NUGET_PACKAGES environment variable, the `globalPackagesFolder` or `repositoryPath` [configuration settings](../reference/nuget-config-file.md#config-section) (when using PackageReference and `packages.config`, respectively), or the `RestorePackagesPath` MSBuild property (MSBuild only). The environment variable takes precedence over the configuration setting.
    | -| http‑cache | The Visual Studio Package Manager (NuGet 3.x+) and the `dotnet` tool store copies of downloaded packages in this cache (saved as `.dat` files), organized into subfolders for each package source. Packages are not expanded, and the cache has an expiration time of 30 minutes.
    • Windows: `%localappdata%\NuGet\v3-cache`
    • Mac/Linux: `~/.local/share/NuGet/v3-cache`
    • Override using the NUGET_HTTP_CACHE_PATH environment variable.
    | +| global-packages | The *global-packages* folder is where NuGet installs any downloaded package. Each package is fully expanded into a subfolder that matches the package identifier and version number. Projects using the [PackageReference](package-references-in-project-files.md) format always use packages directly from this folder. When using the [packages.config](../reference/packages-config.md), packages are installed to the *global-packages* folder, then copied into the project's `packages` folder.
    • Windows: `%userprofile%\.nuget\packages`
    • Mac/Linux: `~/.nuget/packages`
    • Override using the NUGET_PACKAGES environment variable, the `globalPackagesFolder` or `repositoryPath` [configuration settings](../reference/nuget-config-file.md#config-section) (when using PackageReference and `packages.config`, respectively), or the `RestorePackagesPath` MSBuild property (MSBuild only). The environment variable takes precedence over the configuration setting.
    | +| http-cache | The Visual Studio Package Manager (NuGet 3.x+) and the `dotnet` tool store copies of downloaded packages in this cache (saved as `.dat` files), organized into subfolders for each package source. Packages are not expanded, and the cache has an expiration time of 30 minutes.
    • Windows: `%localappdata%\NuGet\v3-cache`
    • Mac/Linux: `~/.local/share/NuGet/v3-cache`
    • Override using the NUGET_HTTP_CACHE_PATH environment variable.
    | | temp | A folder where NuGet stores temporary files during its various operations.
  • Windows: `%temp%\NuGetScratch`
  • Mac/Linux: `/tmp/NuGetScratch`
  • | | plugins-cache **4.8+** | A folder where NuGet stores the results from the operation claims request.
    • Windows: `%localappdata%\NuGet\plugins-cache`
    • Mac/Linux: `~/.local/share/NuGet/plugins-cache`
    • Override using the NUGET_PLUGINS_CACHE_PATH environment variable.
    | From 99e591a051cdd3863ac3039e18cc001ccba84ce1 Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Tue, 1 Mar 2022 08:55:39 -0800 Subject: [PATCH 536/988] Possible failure with unnecessary option parameter. --- docs/release-notes/NuGet-6.1.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-6.1.md b/docs/release-notes/NuGet-6.1.md index f19ac036a..2412f1acf 100644 --- a/docs/release-notes/NuGet-6.1.md +++ b/docs/release-notes/NuGet-6.1.md @@ -47,7 +47,7 @@ NuGet distribution vehicles: * Confusing restore output: it did some restore on one of the projects, but at the end it still prints "All packages are already installed and there is nothing to restore" - [#4376](https://github.com/NuGet/Home/issues/4376) -* dotnet nuget push - Missing value for option - [#4864](https://github.com/NuGet/Home/issues/4864) +* dotnet nuget push - Missing value for option - [#4864](https://github.com/NuGet/Home/issues/4864) Removal of unnecessary option make break your script if check return value from push, so need to unnecessary option in that case. Otherwise it assumes `true` as another path where `nupkg` resides. * Restore does not print enough info in the output when fails - [#6047](https://github.com/NuGet/Home/issues/6047) From f99af92a6669c36403a673168e09217d9e6396a4 Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Tue, 1 Mar 2022 09:35:49 -0800 Subject: [PATCH 537/988] Add more details. --- docs/release-notes/NuGet-6.1.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-6.1.md b/docs/release-notes/NuGet-6.1.md index 2412f1acf..12aa50d35 100644 --- a/docs/release-notes/NuGet-6.1.md +++ b/docs/release-notes/NuGet-6.1.md @@ -47,7 +47,7 @@ NuGet distribution vehicles: * Confusing restore output: it did some restore on one of the projects, but at the end it still prints "All packages are already installed and there is nothing to restore" - [#4376](https://github.com/NuGet/Home/issues/4376) -* dotnet nuget push - Missing value for option - [#4864](https://github.com/NuGet/Home/issues/4864) Removal of unnecessary option make break your script if check return value from push, so need to unnecessary option in that case. Otherwise it assumes `true` as another path where `nupkg` resides. +* dotnet nuget push - Missing value for option - [#4864](https://github.com/NuGet/Home/issues/4864) Previously in order to use `-n|--no-symbols` and `-d|--disable-buffering` options with `dotnet nuget push` command requires passing unnecessary passing of random value after it, even though it's not mentioned in our doc. Removal of this unnecessary value can break your script by throwing exception with `error: File does not exist {somevalue}` even though push operation was successful, so it's recommended to stop passing that unnecessary value. * Restore does not print enough info in the output when fails - [#6047](https://github.com/NuGet/Home/issues/6047) From 6ca0e1809c5172b31e68e3ee9724047a70816f78 Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Tue, 1 Mar 2022 10:53:29 -0800 Subject: [PATCH 538/988] Add known issue section --- docs/release-notes/NuGet-6.1.md | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/docs/release-notes/NuGet-6.1.md b/docs/release-notes/NuGet-6.1.md index 12aa50d35..a72dd9969 100644 --- a/docs/release-notes/NuGet-6.1.md +++ b/docs/release-notes/NuGet-6.1.md @@ -43,12 +43,12 @@ NuGet distribution vehicles: * Remove Mac Catalyst warning - [#11438](https://github.com/NuGet/Home/issues/11438) +* dotnet nuget push - Missing value for option - [#4864](https://github.com/NuGet/Home/issues/4864) + **Bugs:** * Confusing restore output: it did some restore on one of the projects, but at the end it still prints "All packages are already installed and there is nothing to restore" - [#4376](https://github.com/NuGet/Home/issues/4376) -* dotnet nuget push - Missing value for option - [#4864](https://github.com/NuGet/Home/issues/4864) Previously in order to use `-n|--no-symbols` and `-d|--disable-buffering` options with `dotnet nuget push` command requires passing unnecessary passing of random value after it, even though it's not mentioned in our doc. Removal of this unnecessary value can break your script by throwing exception with `error: File does not exist {somevalue}` even though push operation was successful, so it's recommended to stop passing that unnecessary value. - * Restore does not print enough info in the output when fails - [#6047](https://github.com/NuGet/Home/issues/6047) * Minimal VS install has broken NuGet UI - [#8414](https://github.com/NuGet/Home/issues/8414) @@ -101,6 +101,16 @@ NuGet distribution vehicles: **[List of all issues fixed in this release - 6.1](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=Z2lkOi8vcmFwdG9yL1JlbGVhc2UvNjY5ODY)** +## Known issues + +### dotnet nuget push raises `error: File does not exist ...` exception. - [#10601](https://github.com/NuGet/Home/issues/11601) + +#### Issue +Previously in order to use `-n|--no-symbols` and `-d|--disable-buffering` options with `dotnet nuget push` command requires passing unnecessary passing of random value after it, even though it's not mentioned in our doc. Removal of this unnecessary value can break your script by throwing exception with `error: File does not exist ...` even though actual push operation was successful. + +#### Workaround +Use `-n|--no-symbols` and `-d|--disable-buffering` options standalone without any additional value parameter. + ### Community contributions Thank you to all the contributors who helped make this NuGet release awesome! From d8e58215c9a5992d8426dd2283fa6d06bafd8920 Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Tue, 1 Mar 2022 11:03:53 -0800 Subject: [PATCH 539/988] Address PR comment --- docs/release-notes/NuGet-6.1.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/release-notes/NuGet-6.1.md b/docs/release-notes/NuGet-6.1.md index a72dd9969..99e38fe61 100644 --- a/docs/release-notes/NuGet-6.1.md +++ b/docs/release-notes/NuGet-6.1.md @@ -103,10 +103,10 @@ NuGet distribution vehicles: ## Known issues -### dotnet nuget push raises `error: File does not exist ...` exception. - [#10601](https://github.com/NuGet/Home/issues/11601) +### dotnet nuget push -n|--no-symbols or -d|--disable-buffering raises `error: File does not exist ...` exception. - [#10601](https://github.com/NuGet/Home/issues/11601) #### Issue -Previously in order to use `-n|--no-symbols` and `-d|--disable-buffering` options with `dotnet nuget push` command requires passing unnecessary passing of random value after it, even though it's not mentioned in our doc. Removal of this unnecessary value can break your script by throwing exception with `error: File does not exist ...` even though actual push operation was successful. +Previously in order to use `-n|--no-symbols` and `-d|--disable-buffering` options with `dotnet nuget push` command requires passing unnecessary passing of random value after it. Removal of this unnecessary value can break your script by throwing exception with `error: File does not exist ...` even though actual push operation was successful. #### Workaround Use `-n|--no-symbols` and `-d|--disable-buffering` options standalone without any additional value parameter. From d6e11220f774ce4708290d4608376b15167ed917 Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Tue, 1 Mar 2022 12:15:01 -0800 Subject: [PATCH 540/988] Correct issue number --- docs/release-notes/NuGet-6.1.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-6.1.md b/docs/release-notes/NuGet-6.1.md index 99e38fe61..ae15e9f5c 100644 --- a/docs/release-notes/NuGet-6.1.md +++ b/docs/release-notes/NuGet-6.1.md @@ -103,7 +103,7 @@ NuGet distribution vehicles: ## Known issues -### dotnet nuget push -n|--no-symbols or -d|--disable-buffering raises `error: File does not exist ...` exception. - [#10601](https://github.com/NuGet/Home/issues/11601) +### dotnet nuget push -n|--no-symbols or -d|--disable-buffering raises `error: File does not exist ...` exception. - [#11601](https://github.com/NuGet/Home/issues/11601) #### Issue Previously in order to use `-n|--no-symbols` and `-d|--disable-buffering` options with `dotnet nuget push` command requires passing unnecessary passing of random value after it. Removal of this unnecessary value can break your script by throwing exception with `error: File does not exist ...` even though actual push operation was successful. From 01ddaf403c57c50e4343659ec1af7b7e075456dd Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Tue, 1 Mar 2022 12:31:43 -0800 Subject: [PATCH 541/988] Fix syntax --- docs/release-notes/NuGet-6.1.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-6.1.md b/docs/release-notes/NuGet-6.1.md index ae15e9f5c..242741db9 100644 --- a/docs/release-notes/NuGet-6.1.md +++ b/docs/release-notes/NuGet-6.1.md @@ -106,7 +106,7 @@ NuGet distribution vehicles: ### dotnet nuget push -n|--no-symbols or -d|--disable-buffering raises `error: File does not exist ...` exception. - [#11601](https://github.com/NuGet/Home/issues/11601) #### Issue -Previously in order to use `-n|--no-symbols` and `-d|--disable-buffering` options with `dotnet nuget push` command requires passing unnecessary passing of random value after it. Removal of this unnecessary value can break your script by throwing exception with `error: File does not exist ...` even though actual push operation was successful. +Previously in order to use `-n|--no-symbols` and `-d|--disable-buffering` options with `dotnet nuget push` command requires passing of unnecessary random value after it. Removal of this unnecessary value can break your script by throwing exception with `error: File does not exist ...` even though actual push operation was successful. #### Workaround Use `-n|--no-symbols` and `-d|--disable-buffering` options standalone without any additional value parameter. From e11a11bcdd37f0d9d05a638b427f9540b252d7b1 Mon Sep 17 00:00:00 2001 From: Niclas Gustafsson <45293037+niclas-g@users.noreply.github.com> Date: Wed, 2 Mar 2022 12:50:14 +0100 Subject: [PATCH 542/988] Update Overview.md --- docs/hosting-packages/Overview.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/hosting-packages/Overview.md b/docs/hosting-packages/Overview.md index 6544cd6a7..4652c8ea8 100644 --- a/docs/hosting-packages/Overview.md +++ b/docs/hosting-packages/Overview.md @@ -23,7 +23,7 @@ There are also several other NuGet hosting products such as [Azure Artifacts](ht - [Artifactory](https://www.jfrog.com/artifactory/) from JFrog. - [Azure Artifacts](https://www.visualstudio.com/docs/package/nuget/publish), which is also available on Team Foundation Server 2017 and later. - [BaGet](https://github.com/loic-sharma/BaGet), an open-source implementation of NuGet V3 server built on ASP.NET Core -- [Bytesafe](https://bytesafe.dev/nuget/) A fully managed package and supply chain security platform +- [Bytesafe](https://docs.bytesafe.dev/package-managers/nuget/) A fully managed package and supply chain security platform - [Cloudsmith](https://cloudsmith.io/l/nuget-feed/), a fully managed package management SaaS - [GitHub package registry](https://help.github.com/articles/configuring-nuget-for-use-with-github-package-registry) - [GitLab Package Registry](https://docs.gitlab.com/ee/user/packages/nuget_repository/) From f53233b5e320022a5881a2ceb6f4913bb02d140b Mon Sep 17 00:00:00 2001 From: Martin Ruiz Date: Thu, 3 Mar 2022 15:03:21 -0800 Subject: [PATCH 543/988] Added scenario for NU1005 log code --- docs/reference/errors-and-warnings/NU1005.md | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/docs/reference/errors-and-warnings/NU1005.md b/docs/reference/errors-and-warnings/NU1005.md index 92f377d21..ac6b4e79d 100644 --- a/docs/reference/errors-and-warnings/NU1005.md +++ b/docs/reference/errors-and-warnings/NU1005.md @@ -11,6 +11,8 @@ f1_keywords: # NuGet Error NU1005 +## Scenario 1 +
    Invalid restore input where RestorePackagesWithLockFile property is set to false but a packages lock file exists at C:\SourceCode\ContosoProject\Contoso.Library\packages.lock.json
    ### Issue @@ -21,3 +23,19 @@ There are 2 opt-in methods the lock file functionality, by setting the RestorePa - If you wish to continue using the lock file functionality, change RestorePackagesWithLockFile to `true`. - If you to wish to stop using the lock file functionality, remove the packages.lock.json file. + + +## Scenario 2 + +
    RestoreForceEvaluate should not be used with RestoreLockedMode in the same command.
    + +### Issue + +The commands are contrary to each other. RestoreForceEvaluate forces restore to reevaluate the dependencies generating a new lock file, while RestoreLockedMode prevents updating the lock file. + +### Solution + +Consult the recommendations in the error message and do one of the following: + +- Rerun restore without locked mode to regenerate the lock file. +- Rerun restore without force evaluate to avoid changing the lock file. \ No newline at end of file From 35e815107f93afd59a4279f61f7eaa07f413a51a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Sharma?= <737941+loic-sharma@users.noreply.github.com> Date: Sat, 5 Mar 2022 10:50:55 -0800 Subject: [PATCH 544/988] Add scenarios where a PackageDetails leaf is produced (#2687) Update which scenarios produce a `PackageDetails` catalog leaf as Terrapin team may use NuGet Insight's catalog leaves data. Co-authored-by: Joel Verhagen --- docs/api/catalog-resource.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/docs/api/catalog-resource.md b/docs/api/catalog-resource.md index a12e6c603..e9a347be3 100644 --- a/docs/api/catalog-resource.md +++ b/docs/api/catalog-resource.md @@ -202,9 +202,12 @@ version combination). A package details catalog item is produced when a package following scenarios: 1. A package is **pushed**. -1. A package is **listed**. +1. A package is **relisted**. 1. A package is **unlisted**. +1. A package is **deprecated**. +1. A package is **undeprecated**. 1. A package is **reflowed**. +1. A package's **vulnerability status** is updated. A package reflow is an administrative gesture that essentially generates a fake push of an existing package with no changes to the package itself. On nuget.org, a reflow is used after fixing a bug in one of the background jobs From 71308cb7c9448a1862235c9ef103ed5f27fae229 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Tue, 8 Mar 2022 12:14:54 -0600 Subject: [PATCH 545/988] Initial drop --- docs/TOC.md | 1 + .../Central-Package-Management.md | 150 ++++++++++++++++++ 2 files changed, 151 insertions(+) create mode 100644 docs/consume-packages/Central-Package-Management.md diff --git a/docs/TOC.md b/docs/TOC.md index c1c506e7b..8e047ed8b 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -32,6 +32,7 @@ ### [PackageReference in project files](consume-packages/package-references-in-project-files.md) ### [Migrate packages.config to PackageReference](consume-packages/migrate-packages-config-to-package-reference.md) ### [packages.config](reference/packages-config.md) +### [Central Package Management](consume-packages/Central-Package-Management.md) # Create packages ## [Overview and workflow](create-packages/overview-and-workflow.md) ## [Create a package (dotnet CLI)](create-packages/creating-a-package-dotnet-cli.md) diff --git a/docs/consume-packages/Central-Package-Management.md b/docs/consume-packages/Central-Package-Management.md new file mode 100644 index 000000000..96d38e340 --- /dev/null +++ b/docs/consume-packages/Central-Package-Management.md @@ -0,0 +1,150 @@ +--- +title: Central Package Management +description: Manage your dependencies in a central location and how you can get started with central package management. +author: jondouglas +ms.author: jodou +ms.date: 2/25/2022 +ms.topic: conceptual +--- + +# Central Package Management + +Dependency management is a core feature of NuGet. Managing depdendencies for a single project can be easy. Managing dependencies for multi-project solutions can prove to be difficult as they start to scale in size and complexity. In situations where you manage common dependencies for many different projects, you can leverage NuGet's central package management features to do all of this from the ease of a single location. + +Historically, NuGet package dependencies have been managed in two main locations: + +- `packages.config` - An XML file used in older project types to maintain the list of packages referenced by the project. +- `` - An XML element used in new project types that manages NuGet dependencies directly within project files. + +Starting with [NuGet 7.0](..\release-notes\NuGet-7.0.md), you can centrally manage your dependencies in your projects with the addition of a `Directory.Packages.props` file. + +The feature is available across all NuGet integrated tooling. + +* [Visual Studio 2022 and later](https://visualstudio.microsoft.com/downloads/) +* [.NET SDK 7.0.000 and later](https://dotnet.microsoft.com/download/dotnet/7.0) +* [nuget.exe 7.0.0 and later](https://www.nuget.org/downloads) + +Older tooling will ignore Central Package Management configurations and features. To use this feature to the fullest extent, ensure all your build environments use the latest compatible tooling versions. + +Central Package Management will apply to all project types – including .NET Framework – as long as compatible tooling is used. + +## Enabling Central Package Management + +To get started with central package management, you can create a `Directory.Packages.props` file at the root of your solution. + +Inside, you can define each of the respective package versions required of your solution using `` elements that define the package ID and version. + +```xml + + + + + +``` + +Within a project of the solution, you can then use the respective `` syntax you know and love, but without a `Version` attribute to infer the centrally managed version instead. + +```xml + + + + net6.0 + + + + + + +``` + +Now you're using central package management and managing your versions in a central location! + +## Central Package Management rules + +The `Directory.Packages.props` file has a number of rules with regards to where it's located in a repository's directory and its context. For the sake of simplicity, only one `Directory.Packages.props` file is evaluated for a given project. + +What this means is that if you had multiple `Directory.Packages.props` files in your repository, the file that is closest to your project's directory will be evaluated for it. This allows you extra control at various levels of your repository. + +Here's an example, consider the following repository structure: + +``` +Repository + |-- Directory.Packages.props + |-- Solution1 + |-- Directory.Packages.props + |-- Project1 + |-- Solution2 + |-- Project2 +``` + +- Project1 will evaluate the `Directory.Packages.props` file in the `Repository\Solution1\` directory. +- Project2 will evaluate the `Directory.Packages.props` file in the `Repository\` directory. + +## Get started + +To fully onboard your repository, consider taking these steps: + +1. Create a new file at the root of your repository named `Directory.Packages.props` that declares your centrally defined package versions in. +2. Declare `` items in your `Directory.Packages.props`. +3. Declare `` items without `Version` attributes in your project files. + + + +## Transitive pinning + +You can automatically override a transitive package version even without an explicit top-level `` by opting into a feature known as transitive pinning. This promotes a transitive dependency to a top-level dependency implicitly on your behalf. + +You can enable this feature by setting the MSBuild property `CentralPackageTransitivePinningEnabled` to `true` in a project or `Directory.Build.props` import file: + +```xml + + true + +``` + +## Overriding package versions + +You can override an individual package version by using the `VersionOverride` property on a `` item. This overrides any `` defined centrally. + +```xml + + + + + + +``` + +```xml + + + net6.0 + + + + + +``` + +You can disable this feature by setting the MSBuild property `EnablePackageVersionOverride` to `false` in a project or `Directory.Build.props` import file: + +```xml + + false + +``` + +When this feature is disabled, specifying a `VersionOverride` on any `` item will result in an error at restore time indicating that the feature is disabled. + +## Disabling Central Package Management + +If you'd like to disable central package management for any reason, you can disable this feature with the following: + +```xml +false +``` + +> [!Note] +> This feature is in active development. We appreciate you trying it out and providing any feedback you may have at [NuGet/Home](https://github.com/nuget/home/issues). +> +> * There is currently no support in Visual Studio or the .NET CLI for Central Package Management. \ No newline at end of file From e154aae1cb453535673dec103b7541921ea04929 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Wed, 9 Mar 2022 10:16:19 -0600 Subject: [PATCH 546/988] Update docs/consume-packages/Central-Package-Management.md Co-authored-by: Nikolche Kolev --- docs/consume-packages/Central-Package-Management.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Central-Package-Management.md b/docs/consume-packages/Central-Package-Management.md index 96d38e340..412548b43 100644 --- a/docs/consume-packages/Central-Package-Management.md +++ b/docs/consume-packages/Central-Package-Management.md @@ -9,7 +9,7 @@ ms.topic: conceptual # Central Package Management -Dependency management is a core feature of NuGet. Managing depdendencies for a single project can be easy. Managing dependencies for multi-project solutions can prove to be difficult as they start to scale in size and complexity. In situations where you manage common dependencies for many different projects, you can leverage NuGet's central package management features to do all of this from the ease of a single location. +Dependency management is a core feature of NuGet. Managing dependencies for a single project can be easy. Managing dependencies for multi-project solutions can prove to be difficult as they start to scale in size and complexity. In situations where you manage common dependencies for many different projects, you can leverage NuGet's central package management features to do all of this from the ease of a single location. Historically, NuGet package dependencies have been managed in two main locations: From b5ce7df6c4bd18c5958a81ef582301a0d3484bd3 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Tue, 15 Mar 2022 14:48:48 -0700 Subject: [PATCH 547/988] Clarify the source mapping syntax (#2693) --- docs/consume-packages/Package-Source-Mapping.md | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/docs/consume-packages/Package-Source-Mapping.md b/docs/consume-packages/Package-Source-Mapping.md index 1810e05ff..72dcf082e 100644 --- a/docs/consume-packages/Package-Source-Mapping.md +++ b/docs/consume-packages/Package-Source-Mapping.md @@ -32,7 +32,10 @@ For a video-based overview of the Package Source Mapping feature, consider watch To opt into this feature, you must have a `nuget.config` file. Having a single `nuget.config` at the root of your repository is considered a best practice. See [nuget.config documentation](../reference/nuget-config-file.md) to learn more. -Declare your desired package sources in your `nuget.config` file. Following your source declarations, add a `` element that specifies the desired mappings for each source. +* Declare your desired package sources in your `nuget.config` file. +* Following your source declarations, add a `` element that specifies the desired mappings for each source. +* Declare exactly one `packageSource` element for each source in use. + * Add as many patterns as you find necessary. ```xml @@ -45,7 +48,7 @@ Declare your desired package sources in your `nuget.config` file. Following your - + @@ -53,6 +56,7 @@ Declare your desired package sources in your `nuget.config` file. Following your + ``` From 7f5ff9dbcc8152f96423e3ec3803d94f87e18e66 Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Fri, 18 Mar 2022 12:05:47 -0700 Subject: [PATCH 548/988] Add illustrated guide to unblock nuget.exe --- docs/reference/errors-and-warnings/NU5133.md | 32 +++++++++++++++++++ docs/reference/media/NuGetProperties.png | Bin 0 -> 68408 bytes docs/reference/media/NuGetUnblock.png | Bin 0 -> 23031 bytes 3 files changed, 32 insertions(+) create mode 100644 docs/reference/errors-and-warnings/NU5133.md create mode 100644 docs/reference/media/NuGetProperties.png create mode 100644 docs/reference/media/NuGetUnblock.png diff --git a/docs/reference/errors-and-warnings/NU5133.md b/docs/reference/errors-and-warnings/NU5133.md new file mode 100644 index 000000000..a95769c09 --- /dev/null +++ b/docs/reference/errors-and-warnings/NU5133.md @@ -0,0 +1,32 @@ +--- +title: NuGet Warning NU5133 +description: NU5133 Warning code +author: erdembayar +ms.author: eryondon +ms.date: 03/18/2022 +ms.topic: reference +ms.reviewer: +f1_keywords: + - NU5133 +--- + +# NuGet Warning NU5133 + +## Example + +
    Error NU5133: NuGet.exe file on path \Downloads\nuget.exe needs to be unblocked after downloading.
    + +### Issue +Web browsers on Windows add "File Downloaded from the Internet" marking into any downloaded file, in this case `nuget.exe`, so Windows automatically flags it as coming from the Internet and potentially dangerous. +Therefore pack operation with `nuget.exe` may get blocked even though it's coming from reliable source such as 'nuget.org'. + +### Solution +Right click on your downloaded copy of `nuget.exe` and select "Properties". + + ![NuGet Properties](../media/NuGetProperties.png) + +Now tick the `Unblock` then press apply. + + ![NuGet Unblock](../media/NuGetUnblock.png) + +Now try again the pack operation. diff --git a/docs/reference/media/NuGetProperties.png b/docs/reference/media/NuGetProperties.png new file mode 100644 index 0000000000000000000000000000000000000000..12e960b18a1c3b597613ad7a0f982db3fc625803 GIT binary patch literal 68408 zcmZU3S6EZs^EHTqiUbvD61s{=6M@j1h$u)Al+clmK){6F0*F$iM3mlf=gjPxJ+o%5NIe}5hMV_qQc+PcyngjUpNfiF@^VRB zr@egB_T@t0@zRfV9ZSY5l^-}v;(*qw?B(DA=Tjdm-v zrJ}mXd;LQ7osY$43tey?*!be&%~T4c*Y(K_UX?3f^q8;ne7hINmwo*@UkkrFHS-dJ z$68JBFYj%W)ekwv!F<;>!?8>}UnTXW(_Fl~$rQ{=^RfGm#Lld|T@z(*CU7}@|G;49 zwDovsI_K->20&9JNyoR+y1`&u$P9N8%5mCwLC0M#k1g-;Yyc=rv!$k`mC#LoSC&Ih zT}cQSd4COCw)u!W!BnDKX%hdYxX^y2GVDb5-8X&vns4T8xCJ@0a6njiP;13x*pS>t z>Gq9w@nQL%Njfz}%|?~Jkm^19X6v?|uMCTafU-UjxZsBG*M@JYGz?A43MI-<3RL;G zeo2<}U4Hw5F}Fo|L%kg%9tJ<@;1nl+*CD9voM*#m!c_mti}TWklb|bVa~J2wtPQs~xkSTXt-w4AGigXq9b;J; zBbN;;KFM{JKmJUf6Ot)!_xm>ZJMxO1m)`n}{fd(aPT`Y$;n@2&n~~lk(%U@A|MLhZ zrCIqIx7_}KL>gD(8HRd^R}b^`TfQNR>v7(2x_XT3evM$s%R7dagdooL=ZOiC&2ri0 zbt;%@J#dAAR}jdHD>=q*rE+T>B=>*5x{!W)kjs5m2&5Sd`3D3HzQxMlJu&VZ;~icg zw|z{|bkCN2c)`N5%rUpGol-Fr7S_jXrHH+scIh%5`FCdvH)hK9&nhei(|&l3c7>G; z7JK~9>ecLtAmui;@^C5*RYkUCn^vHLJNA#>K-a4QR^s$D&@H^X=Z{NtJdLBz7ggg3 z(gbSV*4FkvK)lWSs3YSm|Eh%T+&;)Z4A-A}mGK9pd>~Va75?{Nt6E1Blq}=Q$Ha zDSt9!hO49qD(phxTy(s2X6}WO7xG|7N(mhc_Y2@Q&|ZB~aYUwO&ngUF(0HBjl=Dfr zgKXvU3d{QMCi}rprR?0XDMhGc(azu962D1zy)837YFo14SI!c4E(7m^o{iiGZf)M3 zz??g5rcbl~l=uEL9bfV^HZu+u@aZ$OM8*>E!|!ERoxv17!Y1|`{g9$^tjxi#%n=#g z<)$!yo*~p^pNpd@OB_@k1sW!1&>*s+Tw9L-bPeYxJALCKxF44zlTk(yEy0> zw?vIv!ppu8&@(yxrJ5$C%qGC)u~N)zPOxf>F(RhOk&fu7XeoaBs&ed!p6uVgoc0Bf z3E&Q(e&Xwb4}~e~9_z*CFQ3a0V9xE}hpy!%bv~ChTSpmq$QC!Q0w0@m!R`|@TGSy8 z4Bxi(Rp8` zDAO1E|^eC>~8v}kna>aq4m-4hiS;y7`BZr^Mp;%o(>II5d&-S` zoYFA&Z--UD<6X&6TZZw5#?0CsVx>VJ>c{uM^!*|ny6wDS!C^*KiFOTFu%bq2UwG<| z=a^&TCa((E_{$D}&I#W5FVdEGrTzXrga+jBUo3nc-#uP=0rcNE>G8i1u{bL>uqhws z4Eo8`zwo|1eqHe+Dm67rm=2c+TYb~*vcM1%+jVj>$;Qovi2Paw(_@~w-U z<$}w$EC)Dr_r-x-`AII*FJ#j}iE0o?(SB)cNp;G^vsE>B@n<0BdLw0K42s}}rc?HE zjY|R~gt}VUJKVw@Gd2{PvL|pS81f0lD0N~E#MUe|aKpc!3;ot}i5c|vvsc(p!9+Vy zX3ZD(bOWCZz0L>vSYAvf5VZ=X3&+}s=Qwm)kR*qI#}YIBN_T;hr!VF2jv{|1Df$%M zT@fhPT9vnA8;1~?ix$#>o5a+=V&x`$r^Gl2FEjoPSAHYl%TnjQ@=oELsQb-9f%Ka2 z%~7sfquUxLXKkPVB1L}&;Go)HMg2ywJ;e0!DX_iE#tcC z&@&J6S2V2q6IMExzcSgZQ@+Z$oHjNr(%L|ci7oD%*oIG27;AT8jXS!o3cA?|V^Uyp z5H5|$?We9jLMCjkHQz+-KWp*V4@4=j{l3T{Qc)WxN9^# zgH6E2-f~7pM~>L{xRk3J(c#MKtpKmBX01m*;0&rojNz8oxzyZn#v>h+D5sAm-GH%TS+{9XY9T<#qV&{NAM^XavN zHUt<*p7)u`)98LE&j)B)%34$s0CKi@pr_D8>DEBX#t=8UNeAxNtT+_e)=bF2N3aGy zuy^&-97r&=afPsQIv&nH2}g`5#eZu)N4{{TmPB&;4yzUDFQ~=n93^a)=WeX>@K=l& zYPvgIJb=R%UqkU8xT-?|<>(F_VQ>4_j8|rk@;SOIagdGTawSVa~pIn0IkN zHUdWQA|!-&=4;;pTl#(kqI_+@Na%hXbS(jVJUTb<+gQ(w2Xp_IMULXa4MfZeWtcl* zs#8k5#@zv>pZ0BGEu-owN|7bs>)m}03)Z%akpi^a^hJocY5AtTZ~dJ%1<6HzZX3LK zlb4N4GeH;c1`j}-%+?P@Rh)Gw+N?6KbOv?$R@vD)qsk}s0PPEGBIo@NEd~;TH~@3E z!^Hx4Elx_@qH<^ViW*L;YZfasE(CS5;I+!2m}JBqob|ewKUWVv#ZZNsLAQ= z&0q*}s?O=v7rW{vI4LX3F7LG&&1n~qoxzzZ9IzC>M2TBN}(g5&qB(Z8B! z!UecQ#=l7wF0yB!vUj?ZQ{=up0tK*#TV`}x>G&YnxaiFN4cB&lc*u^E*d8pi(=Y@S zhy{A?|LQ2>R!6}aJ1XWL3ALbj*lTm41&AD zA|)1eUH5U&DMX++m)9TMB1t;PW_lT45fwh`CO0AvYE|$vy*E2cSP^iXb3VOx*U9D! zRCRhpc zCM1wxE!(#Gw;stwnYKJTat>X_PB0(pt(x`9=8sJskux(g$`rCQ_dl3oyOEp%xEM9l zrAD%;sGPu1mLi`k?BvrMU0vyF?(fg;O+U#|3VX zZRR_e7#c$ZS%_&f@lo*R|I``PA96H~R%)I8kDQcDYLof-NnCivT#y|2$I~cKWZWN6r7n- zhyoU@0su>89iy7tY0{8b`ik+p8eFI%VCqSha8-e|hYtjGGcAJCo$&3WmqYZJw>rAd zeCG{nQy3hmW>e)g)0mu+5}ERB-g&IF=s~_iep6_>)!411P(#{MLAll1evFij&0rc+ z;n7G*MapyMZd2$@#%HaNDlH2U672tT_;Zp`iaZ+XzLG~QkwfXE$-7b@!rvsu9&$t?C9c1eMwJibiz#)umLMw|t_ z<7r$TgUVzdfXZj|%BLT#qqSJV&^Fq=FJ14y9J>TcZ0h23z{m>gRIgvn8$J&KGMNcj0kj8pc6&#M5ETGad~7 zpKj(^?UXU2vVO+S!vl%oi-c9XKC&-`c3A(sif)UNkp@4fBRTIUIne+j0#u+p)C8*5 z@Nk$9*E5yVfaDxT?jkV7=2K(1H`rNfvwR(J9p(Rp(`*uuX-b&jTS!9bDhm(?vhw^-{^3n z7DlYz_p*^6a1hMLW7oEzp(UX1kwfXu#wub15(w9bb&c&Ww=Ab16MlM39r-NryE5$r z%$DJi(rv1gzs|8S1u=7vho(Qhj~<+ro!uqsc1KFHM|J?jz@~&JQHc0>E)TJY)yEHM zq~zrExktdW6f^db34J%Y=)s;I$6;sq`)@x~zXMli)!>s1j56Z^$XLtL`Ugn2rwxyb zD~68FJvB;X@QR;mQVSQrV{(kUj!uR=mT#=D+oK;>v{-raY zLXDcvd)P$1J^A?u2@fj&d5x=jd{|SkOJuy_HIW5@6mqcYt$>TE=s4&;i1bsB^p>Ar z^(;;$P13bP#m0EB+}}?tO*T^y)>D*<@fn5mqy)YVgUN835TL*JX$cH8@b*?o zu^Gm{NHMlHf!d>LI2<|2&bX9L9-RqY>VBUT&oDCQk$9Ryv$&X~srHhJ36?ZQ`BEjz&@hL7K{H3!+LL+h zudoDAn?2vlJ}YSxQ4Wp%-`BMf@oE*fT{jjgDrRt9~e3_slnUoPc^>Q+JN`h{NI^@1FF^jeb%r7t)k{6o^`A%1sqVgzrSgku} z>_Vla!{}`dM4u}-_WLiJng`W>qn48q(_8+^GCEW((Ow(}2;+kv>*a<`d}#BVXD}+E zIxxm_m=We3GxCY{zsg_0fh_&Agyq)zx9%52dznGzYXm4)sj^=THQYGhIo8=`(gUaL z!Shs-6zLGa>RZ^ctcOqOzS|8+ysH-M8x3xMXvF(9DpGsK#YHn+Bwh&A|3}2tT~#4ckrPIEif`9zcYpc=BJ^E7#Dt-R$l@cY@`_R?VrV- z2Yysx?0YO3qi(nLx-Q`vuqm%wPnbE#?St&a*%H_F?7-w4R;-4GL9wub^vZowLVsjG=u*UR^NG=JDY|TW&Y|{=&1>63OB7P+{nS#XJ2(r z$0Z8l3n+zNqhVfzB%r4I;P?v>D|dB6yr;*T``EX%H0|EEVXel>xG5M#GSJah=M{3{ zNlfTKN!^ng19ruq)T@slw9L}05>4Tvuwi|-KK1)F!`o^cTD>pUoLHk8r$AetR&j&d z?WB(#=LfmbUjE|WUuTvMImd}SL>WxE@*0H2M3b6{<}2QT`V;@WY6kBJhl9GJN2H|?cmUY z*rN%?@Dy_Pt91+)tR-@oBO2~Vo)}5(C|$9ss-TT|`SXuHoHbMdHrxOE9JHDgzIw7* ztoP9|E^6k5KPBmT6Jms8%EB-zxVZMpLH}us)llQfPPV;TBv!v!as6 zF1|f5L>M=mvt+{z)SoEu`$1miW9pkQ2F`2e?cD4mxdyipHz68s4ZP3n{VI6oR19E z(=unuvDeDh#u0C6pMt704)fug?!awCwWEJ=fAxMTlEF$aF~Va4wc zr(G;(=mKs3&+wzBJx#8ycf~iA6b519!#h ziyS_g_R=k_qxpVByeomzO|JZACMD!3%2LT6K;&<~_{g;<9~_{QKkU5W?jHj}>adXjc z-LrY>0Sdy?^zEVDtyG%FIp>8Ox@~JO=b*a*^qxpeTd@O zqIaf!eVSV=zlD@9+v z%%luI$NQTrYu9u9` zE&mN83V!uGIooupxu_QL>WSt%91CzIAy2`#ur< zmJhjN*GM_zGH+qR`}#pvNz%?Two$VOe;nT=;UON5<=^Sc{MrwD&)lpX1?Ngs+Z1R?kLX+( z1qX`)NAr}mPRRRueU)NIjD6xGz2YJM*8|tdtJ`Itf1kE_kJ8C0$sK2MTDkr_5xv@` zK9TQCe^^yv3A>U51__!*enDxLfJLS1XuSaPuv|!_;-FX|g@qSz+>c4Sl9vJ<34k;F{7Wg_x_wY%nO8H}!kS-F&8BGoev8s$HbcEJ>PcFd)}vc?^S@mjXkae2$At;>?v71{U3~X)Fe?-*l-jZ_>>SV zRQTU}#;BB(37C{SBzkZwS_rA#H8~6m5ExNTS)>3}>$HjF}rad;Njk}?)#pjQ1Zin^z0HEp<>Q-Y^42AZ6My|2O z&PunuAvf30t!3I`I^1)b;nZHY;p>e%wMiYC9%SAXx&!>AcNXDC^Hqr5wvZKfFx*|i zH(2gVx_+B4@G-dQBK)S!8v9iLQ+5`f`iuvCkjFto4)%WeqQS(->doHzb1a3Lwa~K0(0llXgo-nq%ZH6!I^@}0un+YPsg92qm5OGEPC-BP2pc3`7 zLl!ISW5br`@n7w=lu0sujX5bN7?JQU?!bdTCu{0S-Q#RQ3pRY+8sXO3yw{!goHK1hr$xWmP%nB*>xmBC0DzaV(Q%9mupK|gICd6g>) zZ(oE-EDB8ZEl;yR&-euvSv1~sI`1?Ix*GP8SN=1b^Qa>YhxY#27)yg28r>X3-4yQh zZrx)Go|frZ~7H>B@1|uy#6IsLF3viPeV0km88R z+>rA|b=GJNX&0gMn<@aHeJK+_NXdJ2_KRt~YmCH@48PLp1ZM0=@sdMnSW(L?zLz{WXQ8U4pQ8sU*2h3V>+O?&(-N|*J;9q(zWkh9tR&#$*j{i7#l z2TgOexu8Cto*qVJ^a}+(6?BJ=VvW-4r54XFC`CRqOhK}-N*;lw#>q}{dbP#M z8D3-3>K!|TH=8DS zYVfg_oITvS9QS#*K})BgcIg32MlNaW-#QqlrWN2kIcG2j9XiQuZ;3 z3sTlaWMH z`2k1RpOQ2VONtQWe0&K3r~H&zXvoDcSF}A)+OPeIH`MT;+#`9QCg%-(13Gx2z09VI zy2>pNGu<)x#eDRe&eWoeF7Uq77qNiE>w~;{aJ`adz8A4CfAY)f#d9aPg;=ove2#bS z#%o!UVFBm+7w^xA(o5ZFw6#^?G%}&Xb4AJ&UpSbC@Af{)^O^At@9Ky9LITKV1?Zs( z(zx+5q4oH@u7UJgz$+^Q`R9;|#!AHB#>_ozw6?LG6=PP=KPr#k%iZHUT+)*DIIU#3AyX_GoSyGC$E$Le%~onkKc2TvVBkkJCKfw>xRRiY&2K{Gg>+N= zT*L^OSMTB(oLQL`YghQ6OuW&Y#j!aH>yVyfyckZ^zvYei!M{Io8>VI1yVGM45X7H{A zV#);t(J)sr$M5PtDMiczI%*^;C73=@>ia$F6j%WDP(Yf=vtv$i{fmq{UT@MpHXGTp z7Ah`SW}bUeQm<e#!2`mbSr%f+G6 zN$ayOM|x9#KuI{ZD>-8*eq&5fSJm2 z;fS@90p0RQX}E(DSI|@pu{x;jGAm1Re29v!KxcG;wV#*v>zo1eNCM|`j)Z@UD=1o| z;D*AzMXwCjx8?1kjjO-Ne2rdPliLY-boax}760o`ZCp-uUW~G&SOcM*ccAr6GiBs2 zZ31*A$hCq3V9G{AOY0@hEzO{V`9Lm=5sgSPH3~4&0X_|W7V9|m3)4^|+B~`W`j~1f zwyr8&fyO)%faP6}e7u@& zOJwl`kJuqgi4sdCWa3pgzn?|jtvl~GTK%@bx|sU}XhQJXTQ38T((Ty!eao`%FdY0P zq3{lbcHDoH-%4+?|AfihZ1-BcpYma225KEmuh5lBq^fg99m zG%lU16bB`gRPiGes%JG_l{{=vzhs_(xRHYPCrw@iCkJ#Lt}{-9`;K(uFcErY6Z=GV zsQVqeWovNQbXwKsRp+j&O_ff6Sqrr|a{h@P0eSpAR|xSc@5aQlNU7L$4P z8ceR|b*U)h@s!*IBWFto=k{&WdJA(mabJ}tyZ*$6{fwRIy?=7qax}}fdN(~doA3J* zfrgT$e7fd;6z5o!6}z&GU(#6r(dy;+L@9dk2pYkWtDmTy=YKuE=abN3Ln7x0TykW~ zprBATcTPNHaDM<*{c4@*>^blkF7asTx$L|CEg<+?mA&~uyy;)({`b3oCe>_UUNZU1 zeeVs{c);1sOmZe!X$k6J@>9bDnZh(-Qxb!U0Nx@uba`fHfqbQXF(bt^;$vgGrJ5)> zio1FFyU&ucIlHt{0N?Ck_8_q;9LU7oglUxV+WIsNo53tj9Lo#N9+s6X28oHd57;NC zt+~d_wKF#@C+iok4tdk>_C!@JZ(mtt7vw-3(p?mnloxNrsO?O;W|1lD#J1(Re>)AAUe^0n>8abgb5!gQ z9*jczQh-Wu{*zomtw)?`IpoR~pE9uN!_dVxpT{e`X0j?W1F4pwPJmj!!m7G&950c` zRR{ErwIo_KZ!b5;9@@@-Hu-f~Bj+=pBcPUjmNSC4J6kw;i*U64Lj>2UD>{C6#ll0K za^R5Eg%E3e)EYGW&P8xVJe-{yDYEif@zYo|gEyeIx=>Sr#rzCtDe#6f_hGQPdeMB| zlqgTo@>d7H=6|xLu=E8MAIDl?Gd*!uHzDVr`kej1btY8Vc*rdy z{y`aEnjS}`6WAREl2_dd<^OEBf4fhQ~&v@CrQu?v08zDl^+!RrJe3ut|Yh!DF z?{Xal-}R2G${Fj)ynO~GzVmy zJ;0yD$j>Oaep>2YEG^B_foEK$AH7JJbX;kDXUXOaO2lAgutqketYeb($y|=WfKoe; zc>)c@jY>H*Ag%y)R{}lg%%N2IqM+p>p8D*{$%!=ME0m}8Tj@u3v2L96Zh5C|4s}UZ zw})LFlJ8~A>u3BxhFb5jd!?G{Y`F_mG$5xzkc?8dpFyO4%h+(GgB)UIxMH)#o~6fd z7nFpY7_ZKqpmfuW?f*xG|DC&;WDxXW4*06ec;-!W2W=?5EoG#w`K{a2;U!CIIR#vC zI3U`@8Dx`Nbv^3eM;62je{nhSo8Ml#w;QI$q;ZMg2_kNwJ2kj{TTVs{bfSX-7bA&P z=&aipC;sTpQ@Fpu^noAY1DoKH9pRl=S8P@BQQpjp^(-4!k+(JyRGc}1#x?E7+q#KD z)iC-1^-i29cTDesC-Lv8xpM1nybV63pfn~9lGMGg1h-N+e>Ali$=GZVxZQ1eb-^yw zvevB|E8MS3+n_$wWTz}?Gey&A_H{S7jg%R?e1{fnwMvc!`jzrpd>CFS@05C2#&Qy$ zcm)R2#~r!`XhwP+g`0;xBNw%z{tZES2on`_B@Y7v%WN;yCN7lZvB9q^u6lg|mzw_& zhRCJK3xC(@DW6tiz1Sr=FUnqc*){JfSA0{xSS3N1#L;LGS7?93#GosSbOUj4v5TAZ zG2vpZpdtbsxV_%sWV#<1L8aUY{ZZJzlE9o9b=L%N$Wvlk@aFEBpp=eEj9 zZ>9tOy_r7vp3<-trv~jKI^&B;o`mNGCy!r`85e%^TF$nggSI}-q}=oA;-Pv`2fRsG z{}d>TeQEF2spzI~r_F=X=(EQujizy};zbUWA+*x~h%{iUXy%zvINEZ0V|UzZ;-R>~ zp7VL<9sJyY>fqOAIh52z>aCpUM;CcHv0$5KQaqz%`)|S|HPCTYtyBnCW%Sw%JC>{1 z!*XGKEHCqC;MrNh1Pp)OP1_22c3p|QEp+yL7f3TahNFXom=#w8F0#L5)ESI~ zaQ25@k@+-x7Q+cW8lA#-9m^=3H)D6-qPria?dTKc|HODluXU7j2c0>m;W2Pe12Y*} zjvYZzz|f6VR@nCiRT7G(f~({TV@?#NsxG{9GgWO}WSX4(t=}v0wOLb+Qrn_4RXs+u zQ>w`{Tl8@Q*{6lB zLw74y%K+%Wr8evVJnNq_753M%3%0dWp;%0LmWTo@&tu2PJEOm5b~{bM<#9p@t8^}w-(>KQ-1uwEo`hTVyh-Dg+@{IVvRDFLXYf2!nI$^ ztMA3EXtA1m1845q&v!5BgF@Ov8-yYVeufKbX`LE!qno}QcvNJCEM;iVQWI40U;ld6 zH5G1@s0mSvo8!v8-H2u@vH}MR?@BqMeu zH!=nfd#(4Ql+z}g_ru;yM{Y2(kta#MUv)RK#;X&8xF5yAId;-8Uz~C>scrzpFiFRA zA-d6+X|DPw6^jD9gPV3#@J74Fz8(L6p5hjwUx7TZKCo@K=Uu910(Ly{Cdf`gJE
    i?Ru9H<*9 z&jn(2Cb@u7e^$HA9wA8}C++i=fHaEp>$)YWx1jN`!;OuK?OhHQWy5E-K!a&mT= z@Y6Q)?6Rw>19m4_)|EB0xkQS=iS&o8e+0U5Bk6sHC7B^_Pwn2huZkIc>B3J2h+oG* zNK%Ccm+HB4R$Q(7pUFkeAxzNuKD5MirWoEnCiQS~tL1AmT(#z9sytv!36)Y%iAZtd z2pV@Rd9$jlW@_`AjO>)ABy3+4TRvfM;O1>A$czMtf4>W{K=F9KXzBo50l(D_4_}82 zZ=5@5q(i&jDQqJ-Y<{JG+>ybjHW)R5V)Z^7ZR+aIb-N9Y zpPD88La$)DwPY<0`rqD{ZW(5(``BEturFsLp3?B?gbXE4rgfgS23S#oyl2?J7JhH1{W_3rjk9IeTa%Hn zul2}-h5_wEdGNDs-<4~V5OfxmbBU558 z0G3}`BtL!b1r47%vyP70Ri8X)i)zQz8fcYZLw-+qy}i~ENpuld63k4pf;-v zF}3Z^eo+p{&P1zmsuXc||EMy6>v1~X{<#y9ACs-K*sgC`_||nwmdWjc{4QXZ&MucZ zgKo})FZ0ui8a{$yFab9@Rp1?`e6ADzP8KVMtyiE;PABvh%)}EktPT~j|JBM0S7sR1 zi;A{UzU@7Mziz%ba*StQE4 bMDL0?+#n} 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 P00000NkvXXu0mjf%EHLv literal 0 HcmV?d00001 diff --git a/docs/reference/media/NuGetUnblock.png b/docs/reference/media/NuGetUnblock.png new file mode 100644 index 0000000000000000000000000000000000000000..92979e09b91201dcd33682eb2e80700096fbd82f GIT binary patch literal 23031 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 B8nXZZ literal 0 HcmV?d00001 From 345aefce345424582da8b0b2763efbedcc347d0f Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Fri, 18 Mar 2022 17:16:57 -0700 Subject: [PATCH 549/988] add maxHttpRequestsPerSource to docs (#2682) --- docs/reference/nuget-config-file.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/reference/nuget-config-file.md b/docs/reference/nuget-config-file.md index 135a03caa..ba5751386 100644 --- a/docs/reference/nuget-config-file.md +++ b/docs/reference/nuget-config-file.md @@ -35,6 +35,7 @@ Contains miscellaneous configuration settings, which can be set using the [`nuge | repositoryPath (`packages.config` only) | The location in which to install NuGet packages instead of the default `$(Solutiondir)/packages` folder. A relative path can be used in project-specific `nuget.config` files. | | defaultPushSource | Identifies the URL or path of the package source that should be used as the default if no other package sources are found for an operation. | | http_proxy http_proxy.user http_proxy.password no_proxy | Proxy settings to use when connecting to package sources; `http_proxy` should be in the format `http://:@`. Passwords are encrypted and cannot be added manually. For `no_proxy`, the value is a comma-separated list of domains the bypass the proxy server. You can alternately use the http_proxy and no_proxy environment variables for those values. For additional details, see [NuGet proxy settings](http://skolima.blogspot.com/2012/07/nuget-proxy-settings.html) (skolima.blogspot.com). | +| maxHttpRequestsPerSource | Controls the maximum number of parallel requests sent from NuGet to every package source for package dependency resolution and downloads. The default value on `dotnet.exe` is `Int32.MaxValue` which is derived from `HttpClientHandler.MaxConnectionsPerServer` property. This setting has no impact on `dotnet.exe` for `Mac OS` because the throttling limit is set to `16` to avoid too many open files error. The default value for `NuGet client tools` that runs on `.NET Framework` such as `Visual Studio` and `nuget.exe` is `64` on `Windows` and `1` on `Mono`. The default value for `Packages.config` style projects is set to `Environment.ProcessorCount`. Configuring `maxHttpRequestsPerSource` property to a value less than the default could impact NuGet performance. | | signatureValidationMode | Specifies the validation mode used to verify package signatures for package install, and restore. Values are `accept`, `require`. Defaults to `accept`. **Example**: @@ -46,6 +47,7 @@ Contains miscellaneous configuration settings, which can be set using the [`nuge + ``` From 875fd2ad0d88db194f8b855f7c39e323f7b89f40 Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Mon, 21 Mar 2022 11:03:09 -0700 Subject: [PATCH 550/988] Add Powershell alternative --- docs/reference/errors-and-warnings/NU5133.md | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/docs/reference/errors-and-warnings/NU5133.md b/docs/reference/errors-and-warnings/NU5133.md index a95769c09..2cf0963d3 100644 --- a/docs/reference/errors-and-warnings/NU5133.md +++ b/docs/reference/errors-and-warnings/NU5133.md @@ -14,13 +14,14 @@ f1_keywords: ## Example -
    Error NU5133: NuGet.exe file on path \Downloads\nuget.exe needs to be unblocked after downloading.
    +
    Warning NU5133: NuGet.exe file on path \Downloads\nuget.exe needs to be unblocked after downloading.
    ### Issue -Web browsers on Windows add "File Downloaded from the Internet" marking into any downloaded file, in this case `nuget.exe`, so Windows automatically flags it as coming from the Internet and potentially dangerous. -Therefore pack operation with `nuget.exe` may get blocked even though it's coming from reliable source such as 'nuget.org'. +When downloading a file on Windows, in this case nuget.exe, through a web browser, the `Mark Of The Web` may be added. +This makes Windows consider that flag as potentially dangerous despite coming from a well known source such as nuget.org. +As a consequence some `nuget.exe pack` operations may work incorrectly. -### Solution +### Solution 1 Right click on your downloaded copy of `nuget.exe` and select "Properties". ![NuGet Properties](../media/NuGetProperties.png) @@ -30,3 +31,6 @@ Now tick the `Unblock` then press apply. ![NuGet Unblock](../media/NuGetUnblock.png) Now try again the pack operation. + +### Solution 2 +From powershell terminal run `Unblock-File -Path .\Solution\nuget.exe` From 8588e693f1bcb388821a66e8d51b2054c822849c Mon Sep 17 00:00:00 2001 From: Chris Guzak Date: Thu, 31 Mar 2022 14:51:00 -0700 Subject: [PATCH 551/988] packages.config must be in the project directory (#2478) --- docs/reference/packages-config.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/packages-config.md b/docs/reference/packages-config.md index 92fb21497..57f5bf5de 100644 --- a/docs/reference/packages-config.md +++ b/docs/reference/packages-config.md @@ -11,7 +11,7 @@ ms.topic: reference The `packages.config` file is used in some project types to maintain the list of packages referenced by the project. This allows NuGet to easily restore the project's dependencies when the project is to be transported to a different machine, such as a build server, without all those packages. -If used, `packages.config` is typically located in a project root. It's automatically created when the first NuGet operation is run, but can also be created manually before running any commands such as `nuget restore`. +If used, `packages.config` must be located in a project root. It's automatically created when the first NuGet operation is run, but can also be created manually before running any commands such as `nuget restore`. Projects that use [PackageReference](../consume-packages/Package-References-in-Project-Files.md) do not use `packages.config`. From a49df8e9c2f9b8e13ed99059aafb2a5674f4df15 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Thu, 31 Mar 2022 14:57:00 -0700 Subject: [PATCH 552/988] Update Sign-a-Package.md --- docs/create-packages/Sign-a-Package.md | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/docs/create-packages/Sign-a-Package.md b/docs/create-packages/Sign-a-Package.md index 6c7406cca..a429a2148 100644 --- a/docs/create-packages/Sign-a-Package.md +++ b/docs/create-packages/Sign-a-Package.md @@ -28,12 +28,15 @@ You can use self-issued certificates for testing purposes. However, packages sig ## Sign the package -### .Net (requires .NET 6 SDK and later versions) -Use [dotnet nuget sign](https://docs.microsoft.com/dotnet/core/tools/dotnet-nuget-sign). +Sign the package using [dotnet nuget sign](https://docs.microsoft.com/dotnet/core/tools/dotnet-nuget-sign) (requires .NET 6.0.100 SDK or later). -### On .Net Framework (requires nuget.exe 4.6.0 or later) +```cli +dotnet nuget sign MyPackage.nupkg --certificate-path --timestamper +``` + +or -Sign the package using [nuget sign](../reference/cli-reference/cli-ref-sign.md): +Sign the package using [nuget sign](../reference/cli-reference/cli-ref-sign.md) (requires nuget.exe 4.6.0 or later): ```cli nuget sign MyPackage.nupkg -CertificatePath -Timestamper From 10fb61ffe0d5e1e0b699179254096af039e648b8 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Thu, 31 Mar 2022 14:57:41 -0700 Subject: [PATCH 553/988] Update Sign-a-Package.md --- docs/create-packages/Sign-a-Package.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/create-packages/Sign-a-Package.md b/docs/create-packages/Sign-a-Package.md index a429a2148..814b4eaa6 100644 --- a/docs/create-packages/Sign-a-Package.md +++ b/docs/create-packages/Sign-a-Package.md @@ -28,7 +28,7 @@ You can use self-issued certificates for testing purposes. However, packages sig ## Sign the package -Sign the package using [dotnet nuget sign](https://docs.microsoft.com/dotnet/core/tools/dotnet-nuget-sign) (requires .NET 6.0.100 SDK or later). +Sign the package using [dotnet nuget sign](/dotnet/core/tools/dotnet-nuget-sign) (requires .NET 6.0.100 SDK or later). ```cli dotnet nuget sign MyPackage.nupkg --certificate-path --timestamper From 9a7cce4c2b9765e0a64bc865ceaa78cfe27a1662 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kat=20March=C3=A1n?= Date: Thu, 31 Mar 2022 14:59:51 -0700 Subject: [PATCH 554/988] Create NU5501.md (#2178) --- docs/TOC.md | 1 + docs/reference/Errors-and-Warnings.md | 2 +- docs/reference/errors-and-warnings/NU5501.md | 89 ++++++++++++++++++++ 3 files changed, 91 insertions(+), 1 deletion(-) create mode 100644 docs/reference/errors-and-warnings/NU5501.md diff --git a/docs/TOC.md b/docs/TOC.md index c1c506e7b..c47907607 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -284,6 +284,7 @@ ### [NU5130](reference/errors-and-warnings/NU5130.md) ### [NU5131](reference/errors-and-warnings/NU5131.md) ### [NU5500](reference/errors-and-warnings/NU5500.md) +### [NU5501](reference/errors-and-warnings/NU5501.md) ## Archived content ### [project.json management format](archive/project-json.md) ### [project.json and UWP](archive/project-json-and-uwp.md) diff --git a/docs/reference/Errors-and-Warnings.md b/docs/reference/Errors-and-Warnings.md index 62cb85f48..ab468f76d 100644 --- a/docs/reference/Errors-and-Warnings.md +++ b/docs/reference/Errors-and-Warnings.md @@ -37,6 +37,6 @@ The errors and warnings listed here are available only with [PackageReference-ba | Feed warnings | [NU1801](./errors-and-warnings/NU1801.md) | | NuGet internal warnings | [NU1500](./errors-and-warnings/NU1500.md) | | Signed packages warnings (creation and verification) | [NU3000](./errors-and-warnings/NU3000.md), [NU3002](./errors-and-warnings/NU3002.md), [NU3003](./errors-and-warnings/NU3003.md), [NU3006](./errors-and-warnings/NU3006.md), [NU3007](./errors-and-warnings/NU3007.md), [NU3009](./errors-and-warnings/NU3009.md), [NU3010](./errors-and-warnings/NU3010.md), [NU3011](./errors-and-warnings/NU3011.md), [NU3012](./errors-and-warnings/NU3012.md), [NU3013](./errors-and-warnings/NU3013.md), [NU3014](./errors-and-warnings/NU3014.md), [NU3015](./errors-and-warnings/NU3015.md), [NU3016](./errors-and-warnings/NU3016.md), [NU3017](./errors-and-warnings/NU3017.md), [NU3018](./errors-and-warnings/NU3018.md), [NU3019](./errors-and-warnings/NU3019.md), [NU3020](./errors-and-warnings/NU3020.md), [NU3021](./errors-and-warnings/NU3021.md), [NU3022](./errors-and-warnings/NU3022.md), [NU3023](./errors-and-warnings/NU3023.md), [NU3024](./errors-and-warnings/NU3024.md), [NU3025](./errors-and-warnings/NU3025.md), [NU3026](./errors-and-warnings/NU3026.md), [NU3027](./errors-and-warnings/NU3027.md), [NU3028](./errors-and-warnings/NU3028.md), [NU3029](./errors-and-warnings/NU3029.md), [NU3030](./errors-and-warnings/NU3030.md), [NU3031](./errors-and-warnings/NU3031.md), [NU3032](./errors-and-warnings/NU3032.md), [NU3033](./errors-and-warnings/NU3033.md), [NU3035](./errors-and-warnings/NU3035.md), [NU3036](./errors-and-warnings/NU3036.md), [NU3037](./errors-and-warnings/NU3037.md), [NU3038](./errors-and-warnings/NU3038.md), [NU3040](./errors-and-warnings/NU3040.md) | -| Pack Warnings | [NU5100](./errors-and-warnings/NU5100.md), [NU5101](./errors-and-warnings/NU5101.md), [NU5102](./errors-and-warnings/NU5102.md), [NU5103](./errors-and-warnings/NU5103.md), [NU5104](./errors-and-warnings/NU5104.md), [NU5105](./errors-and-warnings/NU5105.md), [NU5106](./errors-and-warnings/NU5106.md), [NU5107](./errors-and-warnings/NU5107.md), [NU5108](./errors-and-warnings/NU5108.md), [NU5109](./errors-and-warnings/NU5109.md), [NU5110](./errors-and-warnings/NU5110.md), [NU5111](./errors-and-warnings/NU5111.md), [NU5112](./errors-and-warnings/NU5112.md), [NU5114](./errors-and-warnings/NU5114.md), [NU5115](./errors-and-warnings/NU5115.md), [NU5116](./errors-and-warnings/NU5116.md), [NU5117](./errors-and-warnings/NU5117.md), [NU5118](./errors-and-warnings/NU5118.md), [NU5119](./errors-and-warnings/NU5119.md), [NU5120](./errors-and-warnings/NU5120.md), [NU5121](./errors-and-warnings/NU5121.md), [NU5122](./errors-and-warnings/NU5122.md), [NU5123](./errors-and-warnings/NU5123.md), [NU5127](./errors-and-warnings/NU5127.md), [NU5128](./errors-and-warnings/NU5128.md), [NU5129](./errors-and-warnings/NU5129.md), [NU5130](./errors-and-warnings/NU5130.md), [NU5131](./errors-and-warnings/NU5131.md), [NU5500](./errors-and-warnings/NU5500.md) +| Pack Warnings | [NU5100](./errors-and-warnings/NU5100.md), [NU5101](./errors-and-warnings/NU5101.md), [NU5102](./errors-and-warnings/NU5102.md), [NU5103](./errors-and-warnings/NU5103.md), [NU5104](./errors-and-warnings/NU5104.md), [NU5105](./errors-and-warnings/NU5105.md), [NU5106](./errors-and-warnings/NU5106.md), [NU5107](./errors-and-warnings/NU5107.md), [NU5108](./errors-and-warnings/NU5108.md), [NU5109](./errors-and-warnings/NU5109.md), [NU5110](./errors-and-warnings/NU5110.md), [NU5111](./errors-and-warnings/NU5111.md), [NU5112](./errors-and-warnings/NU5112.md), [NU5114](./errors-and-warnings/NU5114.md), [NU5115](./errors-and-warnings/NU5115.md), [NU5116](./errors-and-warnings/NU5116.md), [NU5117](./errors-and-warnings/NU5117.md), [NU5118](./errors-and-warnings/NU5118.md), [NU5119](./errors-and-warnings/NU5119.md), [NU5120](./errors-and-warnings/NU5120.md), [NU5121](./errors-and-warnings/NU5121.md), [NU5122](./errors-and-warnings/NU5122.md), [NU5123](./errors-and-warnings/NU5123.md), [NU5127](./errors-and-warnings/NU5127.md), [NU5128](./errors-and-warnings/NU5128.md), [NU5129](./errors-and-warnings/NU5129.md), [NU5130](./errors-and-warnings/NU5130.md), [NU5131](./errors-and-warnings/NU5131.md), [NU5500](./errors-and-warnings/NU5500.md), [NU5501](./errors-and-warnings/NU5501.md) | License specific Pack Warnings | [NU5124](./errors-and-warnings/NU5124.md), [NU5125](./errors-and-warnings/NU5125.md) | Icon specific Pack Warnings | [NU5046](./errors-and-warnings/NU5046.md), [NU5047](./errors-and-warnings/NU5047.md), [NU5048](./errors-and-warnings/NU5048.md) diff --git a/docs/reference/errors-and-warnings/NU5501.md b/docs/reference/errors-and-warnings/NU5501.md new file mode 100644 index 000000000..f6591f8d3 --- /dev/null +++ b/docs/reference/errors-and-warnings/NU5501.md @@ -0,0 +1,89 @@ +--- +title: NuGet Warning NU5501 +description: NU5501 Warning code +author: zkat +ms.author: kmarchan +ms.date: 10/6/2020 +ms.topic: reference +ms.reviewer: TBD +f1_keywords: + - NU5501 +--- + +# NuGet Warning NU5501 + +## Scenario 1 + +
    The following dependency group(s) require(s) dots in the framework version: net50-windows7.0
    + +### Issue + +The dependency group framework must included dots in their framework version number. This is required for frameworks newer than `net5.0`. + +This issue generally occurs when a nuspec is authored manually, like for example: + +```xml + + + + + + + +``` + +### Solution + +Change `net50` to `net5.0`. + +```xml + + + + + + + +``` + +## Scenario 2 + +
    The following packaged file folder(s) require(s) dots in the framework version: contentFiles/any/net50/a.img. 
    + +### Issue + +The folders denoting a framework must included dots in their framework version number. This is required for frameworks newer than `net5.0`. + +This issue generally occurs when manually adding items to a package, using something like the following in your `.csproj`: + +```xml + + + +``` + +or a nuspec: + +```xml + + + +``` + +### Solution + +Change `net50` to `net5.0`. + +```xml + + + +``` + +or the nuspec: + +```xml + + + +``` From 021f2e76df94699d0e2810705197c1e8f898c2ba Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Thu, 31 Mar 2022 16:52:53 -0700 Subject: [PATCH 555/988] Document NU1301 --- docs/TOC.md | 1 + docs/reference/errors-and-warnings/NU1301.md | 23 ++++++++++++++++++++ 2 files changed, 24 insertions(+) create mode 100644 docs/reference/errors-and-warnings/NU1301.md diff --git a/docs/TOC.md b/docs/TOC.md index c47907607..5198ac539 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -157,6 +157,7 @@ ### [NU1211](reference/errors-and-warnings/NU1211.md) ### [NU1212](reference/errors-and-warnings/NU1212.md) ### [NU1213](reference/errors-and-warnings/NU1213.md) +### [NU1301](reference/errors-and-warnings/NU1301.md) ### [NU1401](reference/errors-and-warnings/NU1401.md) ### [NU1500](reference/errors-and-warnings/NU1500.md) ### [NU1501](reference/errors-and-warnings/NU1501.md) diff --git a/docs/reference/errors-and-warnings/NU1301.md b/docs/reference/errors-and-warnings/NU1301.md new file mode 100644 index 000000000..8c8e0ec94 --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1301.md @@ -0,0 +1,23 @@ +--- +title: NuGet Error NU1301 +description: NU1301 Error code +author: nkolev92 +ms.date: 03/31/2022 +ms.topic: reference +f1_keywords: + - NU1301 +--- + +# NuGet Warning NU1301 + +
    The local source 'C:\Code\Contoso\contosoLocalSource' doesn't exist.
    + +### Issue + +Restore could not be completed because the listed source is unavailable. + +### Solution + +Consult the error message for more details. You may need to inform the source owner as there might be issues that only they can address. + +Alternatively, you can try removing the source from the configuration retry again. The configured source may not be necessary for your build. From c460fefa57d574113d6961561e10e285265ce017 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Thu, 31 Mar 2022 17:42:15 -0700 Subject: [PATCH 556/988] add content files where appropriate. --- .../Select-assemblies-referenced-by-projects.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/create-packages/Select-assemblies-referenced-by-projects.md b/docs/create-packages/Select-assemblies-referenced-by-projects.md index 5fb113a9b..c984846e1 100644 --- a/docs/create-packages/Select-assemblies-referenced-by-projects.md +++ b/docs/create-packages/Select-assemblies-referenced-by-projects.md @@ -13,12 +13,12 @@ Assemblies are used in two different ways during a build. The first is for compi ## Recommended: One assembly per package -Our recommendation is to have one package per assembly, and package dependencies to other assemblies. When NuGet restores a project, it does asset selection and supports including, excluding, and making private different asset classes. In order to prevent your package's dependencies from becoming compile time assets for anyone using your package, you can make `compile` assets private. In the generated package, that will cause `compile` to be excluded from the dependency. Note that the default private assets when none is supplied is `build;analyzers`. Therefore, you should use `PrivateAssets="compile;build;analyzers"` in your `PackageReference` or `ProjectReference`. +Our recommendation is to have one package per assembly, and package dependencies to other assemblies. When NuGet restores a project, it does asset selection and supports including, excluding, and making private different asset classes. In order to prevent your package's dependencies from becoming compile time assets for anyone using your package, you can make `compile` assets private. In the generated package, that will cause `compile` to be excluded from the dependency. Note that the default private assets when none is supplied is `contentfiles;build;analyzers`. Therefore, you should use `PrivateAssets="compile;contentfiles;build;analyzers"` in your `PackageReference` or `ProjectReference`. ```xml - - + + ``` From a8b70939ebf97efde21ff1ba1181f6930b980a4f Mon Sep 17 00:00:00 2001 From: Dhurata Jahiu <101433552+DhurataJ@users.noreply.github.com> Date: Tue, 5 Apr 2022 11:08:02 -0400 Subject: [PATCH 557/988] [BrokenLinksH2] Fix path in link Fixing the link path line 27 and 68. --- docs/create-packages/Sign-a-Package.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/create-packages/Sign-a-Package.md b/docs/create-packages/Sign-a-Package.md index cd1004a1c..da2d16766 100644 --- a/docs/create-packages/Sign-a-Package.md +++ b/docs/create-packages/Sign-a-Package.md @@ -24,7 +24,7 @@ You can use self-issued certificates for testing purposes. However, packages sig ![Certificate Export Wizard](../reference/media/CertificateExportWizard.png) -* You can also export the certificate using the [Export-Certificate PowerShell command](/powershell/module/pkiclient/export-certificate). +* You can also export the certificate using the [Export-Certificate PowerShell command](/powershell/module/pki/export-certificate). ## Sign the package @@ -65,7 +65,7 @@ You are now ready to publish the package to NuGet.org. See [Publishing packages] ## Create a test certificate -You can use self-issued certificates for testing purposes. To create a self-issued certificate, use the [New-SelfSignedCertificate PowerShell command](/powershell/module/pkiclient/new-selfsignedcertificate). +You can use self-issued certificates for testing purposes. To create a self-issued certificate, use the [New-SelfSignedCertificate PowerShell command](/powershell/module/pki/new-selfsignedcertificate). ```ps New-SelfSignedCertificate -Subject "CN=NuGet Test Developer, OU=Use for testing purposes ONLY" ` From 5b50602f41da44b7c6829d03661f786de0bf28ac Mon Sep 17 00:00:00 2001 From: Dhurata Jahiu <101433552+DhurataJ@users.noreply.github.com> Date: Tue, 5 Apr 2022 11:14:05 -0400 Subject: [PATCH 558/988] [BrokenLinksH2] Fix path in link Removing .md in dotnet nuget verify, line 47 --- docs/reference/errors-and-warnings/NU3004.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/errors-and-warnings/NU3004.md b/docs/reference/errors-and-warnings/NU3004.md index 17a2de4f6..1e016fcf0 100644 --- a/docs/reference/errors-and-warnings/NU3004.md +++ b/docs/reference/errors-and-warnings/NU3004.md @@ -44,4 +44,4 @@ The repository indicated that all its packages are repository signed. However, a > [!Warning] > This error may happen due to a bug when using multiple NuGet clients (see [NuGet/Home#7997](https://github.com/NuGet/Home/issues/7997)). Please upgrade to nuget.exe 5.1.0 or newer, Visual Studio 2019 16.1 or newer, and .NET SDK 2.1.70X or 2.2.30X or newer. -You can check if a package is signed using the [`dotnet nuget verify`](/dotnet/core/tools/dotnet-nuget-verify.md) or [`nuget verify`](../cli-reference/cli-ref-verify.md) commands. If the package is unsigned, please contact the package source as this is unexpected. +You can check if a package is signed using the [`dotnet nuget verify`](/dotnet/core/tools/dotnet-nuget-verify) or [`nuget verify`](../cli-reference/cli-ref-verify.md) commands. If the package is unsigned, please contact the package source as this is unexpected. From 04d64532a39c847f99a29ffe7a7fdb0a77c1b706 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Thu, 7 Apr 2022 03:02:43 -0500 Subject: [PATCH 559/988] update with existing .openpublishing.publish.config.json --- .openpublishing.publish.config.json | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/.openpublishing.publish.config.json b/.openpublishing.publish.config.json index 3d7a114f5..39be778c5 100644 --- a/.openpublishing.publish.config.json +++ b/.openpublishing.publish.config.json @@ -18,22 +18,24 @@ } ], "notification_subscribers": [], + "sync_notification_subscribers": null, "branches_to_filter": [], "git_repository_url_open_to_public_contributors": "https://github.com/NuGet/docs.microsoft.com-nuget", "git_repository_branch_open_to_public_contributors": "main", "skip_source_output_uploading": false, + "need_preview_pull_request": true, "contribution_branch_mappings": {}, "dependent_repositories": [ { "path_to_root": "_themes", "url": "https://github.com/Microsoft/templates.docs.msft", - "branch": "master", + "branch": "main", "branch_mapping": {} }, { "path_to_root": "_themes.pdf", "url": "https://github.com/Microsoft/templates.docs.msft.pdf", - "branch": "master", + "branch": "main", "branch_mapping": {} }, { @@ -54,7 +56,6 @@ ] }, "need_generate_pdf_url_template": true, - "need_preview_pull_request": true, "Targets": { "Pdf": { "template_folder": "_themes.pdf" @@ -64,4 +65,4 @@ "docs_build_engine": { "name": "docfx_v3" } -} +} \ No newline at end of file From 1746f6f3f64cd47fe663e2f92054c78d657494ec Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Fri, 8 Apr 2022 09:05:24 -0500 Subject: [PATCH 560/988] Fix versions. --- docs/consume-packages/Central-Package-Management.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/consume-packages/Central-Package-Management.md b/docs/consume-packages/Central-Package-Management.md index 412548b43..5f177b369 100644 --- a/docs/consume-packages/Central-Package-Management.md +++ b/docs/consume-packages/Central-Package-Management.md @@ -16,13 +16,13 @@ Historically, NuGet package dependencies have been managed in two main locations - `packages.config` - An XML file used in older project types to maintain the list of packages referenced by the project. - `` - An XML element used in new project types that manages NuGet dependencies directly within project files. -Starting with [NuGet 7.0](..\release-notes\NuGet-7.0.md), you can centrally manage your dependencies in your projects with the addition of a `Directory.Packages.props` file. +Starting with [NuGet 6.2](..\release-notes\NuGet-6.2.md), you can centrally manage your dependencies in your projects with the addition of a `Directory.Packages.props` file. The feature is available across all NuGet integrated tooling. -* [Visual Studio 2022 and later](https://visualstudio.microsoft.com/downloads/) -* [.NET SDK 7.0.000 and later](https://dotnet.microsoft.com/download/dotnet/7.0) -* [nuget.exe 7.0.0 and later](https://www.nuget.org/downloads) +* [Visual Studio 2022 17.2 and later](https://visualstudio.microsoft.com/downloads/) +* [.NET SDK 6.0.300 and later](https://dotnet.microsoft.com/download/dotnet/6.0) +* [nuget.exe 6.2.0 and later](https://www.nuget.org/downloads) Older tooling will ignore Central Package Management configurations and features. To use this feature to the fullest extent, ensure all your build environments use the latest compatible tooling versions. @@ -147,4 +147,4 @@ If you'd like to disable central package management for any reason, you can disa > [!Note] > This feature is in active development. We appreciate you trying it out and providing any feedback you may have at [NuGet/Home](https://github.com/nuget/home/issues). > -> * There is currently no support in Visual Studio or the .NET CLI for Central Package Management. \ No newline at end of file +> * There is currently no support in Visual Studio or the .NET CLI for Central Package Management. From 7d2fc798d40ac55f49a07bcf17ae7df97ba83cd5 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Fri, 8 Apr 2022 13:51:20 -0500 Subject: [PATCH 561/988] Address most feedback. --- docs/consume-packages/Central-Package-Management.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/consume-packages/Central-Package-Management.md b/docs/consume-packages/Central-Package-Management.md index 5f177b369..6c3e35f04 100644 --- a/docs/consume-packages/Central-Package-Management.md +++ b/docs/consume-packages/Central-Package-Management.md @@ -26,7 +26,7 @@ The feature is available across all NuGet integrated tooling. Older tooling will ignore Central Package Management configurations and features. To use this feature to the fullest extent, ensure all your build environments use the latest compatible tooling versions. -Central Package Management will apply to all project types – including .NET Framework – as long as compatible tooling is used. +Central Package Management will apply to all `` projects – including [legacy .csproj](https://github.com/dotnet/project-system/blob/main/docs/feature-comparison.md) – as long as compatible tooling is used. ## Enabling Central Package Management @@ -92,9 +92,9 @@ To fully onboard your repository, consider taking these steps: ## Transitive pinning -You can automatically override a transitive package version even without an explicit top-level `` by opting into a feature known as transitive pinning. This promotes a transitive dependency to a top-level dependency implicitly on your behalf. +You can automatically override a transitive package version even without an explicit top-level `` by opting into a feature known as transitive pinning. This promotes a transitive dependency to a top-level dependency implicitly on your behalf when necessary. -You can enable this feature by setting the MSBuild property `CentralPackageTransitivePinningEnabled` to `true` in a project or `Directory.Build.props` import file: +You can enable this feature by setting the MSBuild property `CentralPackageTransitivePinningEnabled` to `true` in a project or in a `Directory.Packages.props` or `Directory.Build.props` import file: ```xml @@ -126,7 +126,7 @@ You can override an individual package version by using the `VersionOverride` pr ``` -You can disable this feature by setting the MSBuild property `EnablePackageVersionOverride` to `false` in a project or `Directory.Build.props` import file: +You can disable this feature by setting the MSBuild property `EnablePackageVersionOverride` to `false` in a project or in a `Directory.Packages.props` or `Directory.Build.props` import file: ```xml From fc93d4ac95b6d87e11c3d2bf4639438ef7aaa241 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 8 Apr 2022 17:22:42 -0700 Subject: [PATCH 562/988] Update the API description of the project update events. Call out APIs that are packages.config specific (#2705) --- .../nuget-api-in-visual-studio.md | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md b/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md index 6d0acf85e..a3df6bf70 100644 --- a/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md +++ b/docs/visual-studio-extensibility/nuget-api-in-visual-studio.md @@ -101,7 +101,6 @@ If you would like a new NuGet related API in Visual Studio, please search [NuGet } ``` - ### MEF Services 1. Install the [`NuGet.VisualStudio`](https://www.nuget.org/packages/NuGet.VisualStudio) package into your project, which contains the `NuGet.VisualStudio.dll` assembly. @@ -657,6 +656,9 @@ public interface IRegistryKey ## IVsPackageInstallerEvents interface +> [!Note] +> These events are only raised for packages.config projects. To get updates for both packages.config and PackageReference use [`IVsNuGetProjectUpdateEvents`](#ivsnugetprojectupdateevents-interface) instead. + ```cs /// /// Contains events which are raised when packages are installed or uninstalled from projects and the current @@ -698,6 +700,9 @@ public interface IRegistryKey ## IVsPackageInstallerProjectEvents interface +> [!Note] +> These events are only raised for packages.config projects. To get updates for both packages.config and PackageReference use [`IVsNuGetProjectUpdateEvents`](#ivsnugetprojectupdateevents-interface) instead. + ```cs /// /// Contains batch events which are raised when packages are installed or uninstalled from projects with packages.config @@ -1143,7 +1148,8 @@ This interface was primarily used by the ASP.NET team, to suggest that Javascrip /// /// Raised when particular project is about to be updated. /// For PackageReference projects, this means an assets file or a nuget temp msbuild file write (nuget.g.props or nuget.g.targets). The list of updated files will include the aforementioned. - /// If a project was restore, but no file updates happen, this event will not be fired. + /// If a project was restored, but no file updates happen, this event will not be fired. + /// For packages.config projects, this means that the project file was changed. /// /// /// No heavy computation should happen in any of these methods as it'll block the NuGet progress. @@ -1153,7 +1159,8 @@ This interface was primarily used by the ASP.NET team, to suggest that Javascrip /// /// Raised when particular project update has been completed. /// For PackageReference projects, this means an assets file or a nuget temp msbuild file write (nuget.g.props or nuget.g.targets). The list of updated files will include the aforementioned. - /// If a project was restore, but no file updates happen, this event will not be fired. + /// If a project was restored, but no file updates happen, this event will not be fired. + /// For packages.config projects, this means that the project file was changed. /// /// /// No heavy computation should happen in any of these methods as it'll block the NuGet progress. From 86153e5832dbe1f7f9d6e4974749981e7e87ef03 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 11 Apr 2022 11:18:53 -0500 Subject: [PATCH 563/988] Add source mapping note --- docs/consume-packages/Central-Package-Management.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/docs/consume-packages/Central-Package-Management.md b/docs/consume-packages/Central-Package-Management.md index 6c3e35f04..ba2668920 100644 --- a/docs/consume-packages/Central-Package-Management.md +++ b/docs/consume-packages/Central-Package-Management.md @@ -144,6 +144,14 @@ If you'd like to disable central package management for any reason, you can disa false ``` +## Warning when using multiple package sources + +When using central package management, you will see a warning if you have more than one package source defined in your configuration. To resolve this warning, map your package sources with [package source mapping](https://aka.ms/nuget-package-source-mapping) or specify a single package source. + +``` +There are {0} package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. +``` + > [!Note] > This feature is in active development. We appreciate you trying it out and providing any feedback you may have at [NuGet/Home](https://github.com/nuget/home/issues). > From b84fafcbfb1cb030743a3421618d751dd5929eca Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 11 Apr 2022 11:21:29 -0500 Subject: [PATCH 564/988] Add NU1507 --- docs/consume-packages/Central-Package-Management.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Central-Package-Management.md b/docs/consume-packages/Central-Package-Management.md index ba2668920..2c64c9029 100644 --- a/docs/consume-packages/Central-Package-Management.md +++ b/docs/consume-packages/Central-Package-Management.md @@ -146,7 +146,7 @@ If you'd like to disable central package management for any reason, you can disa ## Warning when using multiple package sources -When using central package management, you will see a warning if you have more than one package source defined in your configuration. To resolve this warning, map your package sources with [package source mapping](https://aka.ms/nuget-package-source-mapping) or specify a single package source. +When using central package management, you will see a `NU1507` warning if you have more than one package source defined in your configuration. To resolve this warning, map your package sources with [package source mapping](https://aka.ms/nuget-package-source-mapping) or specify a single package source. ``` There are {0} package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. From bea1e3edb44d6fe52f4183db41839c3d2444a379 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Mon, 11 Apr 2022 15:11:09 -0700 Subject: [PATCH 565/988] Document NU1504, NU1505, NU1506 (#2707) --- docs/TOC.md | 3 ++ docs/reference/errors-and-warnings/NU1504.md | 42 ++++++++++++++++++++ docs/reference/errors-and-warnings/NU1505.md | 42 ++++++++++++++++++++ docs/reference/errors-and-warnings/NU1506.md | 42 ++++++++++++++++++++ 4 files changed, 129 insertions(+) create mode 100644 docs/reference/errors-and-warnings/NU1504.md create mode 100644 docs/reference/errors-and-warnings/NU1505.md create mode 100644 docs/reference/errors-and-warnings/NU1506.md diff --git a/docs/TOC.md b/docs/TOC.md index c47907607..4a4aecf60 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -162,6 +162,9 @@ ### [NU1501](reference/errors-and-warnings/NU1501.md) ### [NU1502](reference/errors-and-warnings/NU1502.md) ### [NU1503](reference/errors-and-warnings/NU1503.md) +### [NU1504](reference/errors-and-warnings/NU1504.md) +### [NU1505](reference/errors-and-warnings/NU1505.md) +### [NU1506](reference/errors-and-warnings/NU1506.md) ### [NU1601](reference/errors-and-warnings/NU1601.md) ### [NU1602](reference/errors-and-warnings/NU1602.md) ### [NU1603](reference/errors-and-warnings/NU1603.md) diff --git a/docs/reference/errors-and-warnings/NU1504.md b/docs/reference/errors-and-warnings/NU1504.md new file mode 100644 index 000000000..5ee017c3b --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1504.md @@ -0,0 +1,42 @@ +--- +title: NuGet Error NU1504 +description: NU1504 error code +author: nkolev92 +ms.author: nikolev +ms.date: 03/31/2022 +ms.topic: reference +f1_keywords: + - "NU1504" +--- + +# NuGet Error NU1504 + +## Scenario 1 + +
    Duplicate 'PackageReference' items found. Remove the duplicate items or use the Update functionality to ensure a consistent restore behavior. The duplicate 'PackageReference' items are: X 1.0.0, X 2.0.0.
    + +### Issue + +Sometimes when adding `PackageReference` items, you may end up adding an item for a particular package multiple times. + +Example: + +```xml + + + +... + + + + +``` + +This can cause an inconsistent restore behavior. + +### Solution + +Consult the recommendations in the error message and do one of the following: + +- Remove the duplicate items +- Use item `Update` instead of item `Include` diff --git a/docs/reference/errors-and-warnings/NU1505.md b/docs/reference/errors-and-warnings/NU1505.md new file mode 100644 index 000000000..09e2634e2 --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1505.md @@ -0,0 +1,42 @@ +--- +title: NuGet Error NU1505 +description: NU1505 error code +author: nkolev92 +ms.author: nikolev +ms.date: 03/31/2022 +ms.topic: reference +f1_keywords: + - "NU1505" +--- + +# NuGet Error NU1505 + +## Scenario 1 + +
    Duplicate 'PackageDownload' items found. Remove the duplicate items or use the Update functionality to ensure a consistent restore behavior. The duplicate 'PackageDownload' items are: X [1.0.0], X [2.0.0].
    + +### Issue + +Sometimes when adding `PackageDownload` items, you may end up adding an item for a particular package multiple times. + +Example: + +```xml + + + +... + + + + +``` + +This can cause an inconsistent restore behavior. + +### Solution + +Consult the recommendations in the error message and do one of the following: + +- Remove the duplicate items +- Use item `Update` instead of item `Include` diff --git a/docs/reference/errors-and-warnings/NU1506.md b/docs/reference/errors-and-warnings/NU1506.md new file mode 100644 index 000000000..2c1940201 --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1506.md @@ -0,0 +1,42 @@ +--- +title: NuGet Error NU1506 +description: NU1506 error code +author: nkolev92 +ms.author: nikolev +ms.date: 03/31/2022 +ms.topic: reference +f1_keywords: + - "NU1506" +--- + +# NuGet Error NU1506 + +## Scenario 1 + +
    Duplicate 'PackageVersion' items found. Remove the duplicate items or use the Update functionality to ensure a consistent restore behavior. The duplicate 'PackageVersion' items are: X [1.0.0], X [2.0.0].
    + +### Issue + +Sometimes when adding `PackageVersion` items, you may end up adding an item for a particular package multiple times. + +Example: + +```xml + + + +... + + + + +``` + +This can cause an inconsistent restore behavior. + +### Solution + +Consult the recommendations in the error message and do one of the following: + +- Remove the duplicate items +- Use item `Update` instead of item `Include` From 22391ed65722b65ebdbc8291b5e03674958ed4fe Mon Sep 17 00:00:00 2001 From: Drew Noakes Date: Tue, 12 Apr 2022 22:37:50 +1000 Subject: [PATCH 566/988] Fix invalid table row formatting and default value Fixes https://github.com/NuGet/docs.microsoft.com-nuget/issues/2721 --- docs/reference/msbuild-targets.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index d7e7101e4..4e5fd9c1c 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -50,8 +50,8 @@ The following table describes the MSBuild properties that can be added to a proj | `VersionPrefix` | `VersionPrefix` | empty | Setting `PackageVersion` overwrites `VersionPrefix` | | `VersionSuffix` | `VersionSuffix` | empty | Setting `PackageVersion` overwrites `VersionSuffix` | | `Authors` | `Authors` | Username of the current user | A semicolon-separated list of packages authors, matching the profile names on nuget.org. These are displayed in the NuGet Gallery on nuget.org and are used to cross-reference packages by the same authors. | -| `Owners` | N/A | Not present in nuspec | | -| `Title` | `Title` | The `PackageId` | A human-friendly title of the package, typically used in UI displays as on nuget.org and the Package Manager in Visual Studio. | +| `Owners` | N/A | Not present in nuspec | +| `Title` | `Title` | `$(PackageId)` | A human-friendly title of the package, typically used in UI displays as on nuget.org and the Package Manager in Visual Studio. | | `Description` | `Description` | "Package Description" | A long description for the assembly. If `PackageDescription` is not specified, then this property is also used as the description of the package. | | `Copyright` | `Copyright` | empty | Copyright details for the package. | | `RequireLicenseAcceptance` | `PackageRequireLicenseAcceptance` | `false` | A Boolean value that specifies whether the client must prompt the consumer to accept the package license before installing the package. | From 74cf41bbb25a4bff012f4763614d0ee93f0e649f Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Tue, 12 Apr 2022 10:46:27 -0700 Subject: [PATCH 567/988] Provide better examples include/excludeassets, call out the defaults (#2708) --- .../Package-References-in-Project-Files.md | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/docs/consume-packages/Package-References-in-Project-Files.md b/docs/consume-packages/Package-References-in-Project-Files.md index 050153d43..ae1b2ef8d 100644 --- a/docs/consume-packages/Package-References-in-Project-Files.md +++ b/docs/consume-packages/Package-References-in-Project-Files.md @@ -115,18 +115,23 @@ Allowable values for these tags are as follows, with multiple values separated b | none | None of the above are used. | | all | All of the above (except `none`) | -In the following example, everything except the content files from the package would be consumed by the project and everything except content files and analyzers would flow to the parent project. - ```xml - + + - all + all contentFiles contentFiles;analyzers - + + + + + compile + contentFiles + ``` From 4f1965ad2d1ad2d00d0cc1c215803e8fcc140664 Mon Sep 17 00:00:00 2001 From: Joel Verhagen Date: Fri, 22 Apr 2022 07:18:30 -0700 Subject: [PATCH 568/988] Add the ID prefix length restriction to docs (#2731) --- docs/nuget-org/id-prefix-reservation.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/nuget-org/id-prefix-reservation.md b/docs/nuget-org/id-prefix-reservation.md index ce98a2f08..ef34b08a5 100644 --- a/docs/nuget-org/id-prefix-reservation.md +++ b/docs/nuget-org/id-prefix-reservation.md @@ -74,7 +74,7 @@ When reviewing any application for ID prefix reservation, the [NuGet.org](https: 1. Has the owner [enabled 2FA for their NuGet.org account](individual-accounts.md#enable-two-factor-authentication-2fa)? -1. Is the package ID prefix something common that should not belong to any individual owner or organization? +1. Is the package ID prefix something common that should not belong to any individual owner or organization? Avoid ID prefix reservations that are shorter than four characters and avoid common or generic words. 1. Would *not* reserving the package ID prefix cause ambiguity, confusion, or other harm to the community? From 0ff5da539fb3e034092f7fd954e9e37b285cf018 Mon Sep 17 00:00:00 2001 From: Jeff Kluge Date: Fri, 22 Apr 2022 11:44:37 -0400 Subject: [PATCH 569/988] Update central package management docs (#2732) --- .../Central-Package-Management.md | 96 ++++++++++++------- 1 file changed, 64 insertions(+), 32 deletions(-) diff --git a/docs/consume-packages/Central-Package-Management.md b/docs/consume-packages/Central-Package-Management.md index 2c64c9029..ba694b76c 100644 --- a/docs/consume-packages/Central-Package-Management.md +++ b/docs/consume-packages/Central-Package-Management.md @@ -7,16 +7,19 @@ ms.date: 2/25/2022 ms.topic: conceptual --- -# Central Package Management +# Central Package Management (CPM) -Dependency management is a core feature of NuGet. Managing dependencies for a single project can be easy. Managing dependencies for multi-project solutions can prove to be difficult as they start to scale in size and complexity. In situations where you manage common dependencies for many different projects, you can leverage NuGet's central package management features to do all of this from the ease of a single location. +Dependency management is a core feature of NuGet. Managing dependencies for a single project can be easy. Managing dependencies for multi-project solutions +can prove to be difficult as they start to scale in size and complexity. In situations where you manage common dependencies for many different projects, you +can leverage NuGet's central package management (CPM) features to do all of this from the ease of a single location. -Historically, NuGet package dependencies have been managed in two main locations: +Historically, NuGet package dependencies have been managed in one of two locations: - `packages.config` - An XML file used in older project types to maintain the list of packages referenced by the project. -- `` - An XML element used in new project types that manages NuGet dependencies directly within project files. +- `` - An XML element used in MSBuild projects defines NuGet package dependencies. -Starting with [NuGet 6.2](..\release-notes\NuGet-6.2.md), you can centrally manage your dependencies in your projects with the addition of a `Directory.Packages.props` file. +Starting with [NuGet 6.2](..\release-notes\NuGet-6.2.md), you can centrally manage your dependencies in your projects with the addition of a +`Directory.Packages.props` file and an MSBuild property. The feature is available across all NuGet integrated tooling. @@ -24,33 +27,39 @@ The feature is available across all NuGet integrated tooling. * [.NET SDK 6.0.300 and later](https://dotnet.microsoft.com/download/dotnet/6.0) * [nuget.exe 6.2.0 and later](https://www.nuget.org/downloads) -Older tooling will ignore Central Package Management configurations and features. To use this feature to the fullest extent, ensure all your build environments use the latest compatible tooling versions. +Older tooling will ignore central package management configurations and features. To use this feature to the fullest extent, ensure all your build environments +use the latest compatible tooling versions. -Central Package Management will apply to all `` projects – including [legacy .csproj](https://github.com/dotnet/project-system/blob/main/docs/feature-comparison.md) – as long as compatible tooling is used. +Central package management applies to all ``-based MSBuild projects (including +[legacy CSPROJ](https://github.com/dotnet/project-system/blob/main/docs/feature-comparison.md)) as long as compatible tooling is used. ## Enabling Central Package Management -To get started with central package management, you can create a `Directory.Packages.props` file at the root of your solution. +To get started with central package management, you must create a `Directory.Packages.props` file at the root of your repository and set the MSBuild property +`ManagePackageVersionsCentrally` to `true`. -Inside, you can define each of the respective package versions required of your solution using `` elements that define the package ID and version. +Inside, you then define each of the respective package versions required of your projects using `` elements that define the package ID and +version. ```xml + + true + ``` -Within a project of the solution, you can then use the respective `` syntax you know and love, but without a `Version` attribute to infer the centrally managed version instead. +For each project, you then define a `` but omit the `Version` attribute since the version will be attained from a corresponding +` item. ```xml - net6.0 - @@ -61,9 +70,11 @@ Now you're using central package management and managing your versions in a cent ## Central Package Management rules -The `Directory.Packages.props` file has a number of rules with regards to where it's located in a repository's directory and its context. For the sake of simplicity, only one `Directory.Packages.props` file is evaluated for a given project. +The `Directory.Packages.props` file has a number of rules with regards to where it's located in a repository's directory and its context. For the sake of +simplicity, only one `Directory.Packages.props` file is evaluated for a given project. -What this means is that if you had multiple `Directory.Packages.props` files in your repository, the file that is closest to your project's directory will be evaluated for it. This allows you extra control at various levels of your repository. +What this means is that if you had multiple `Directory.Packages.props` files in your repository, the file that is closest to your project's directory will +be evaluated for it. This allows you extra control at various levels of your repository. Here's an example, consider the following repository structure: @@ -77,34 +88,49 @@ Repository |-- Project2 ``` -- Project1 will evaluate the `Directory.Packages.props` file in the `Repository\Solution1\` directory. +- Project1 will evaluate the `Directory.Packages.props` file in the `Repository\Solution1\` directory and it must manually import the next one if so desired. + ```xml + + + + + + + ``` - Project2 will evaluate the `Directory.Packages.props` file in the `Repository\` directory. +**Note:** MSBuild will not automatically import each `Directory.Packages.props` for you, only the first one closest to the project. If you have multiple +`Directory.Packages.props`, you must import the parent one manually while the root `Directory.Packages.props` would not. + ## Get started To fully onboard your repository, consider taking these steps: -1. Create a new file at the root of your repository named `Directory.Packages.props` that declares your centrally defined package versions in. +1. Create a new file at the root of your repository named `Directory.Packages.props` that declares your centrally defined package versions and set + the MSBuild property `ManagePackageVersionsCentrally` to `true`. 2. Declare `` items in your `Directory.Packages.props`. 3. Declare `` items without `Version` attributes in your project files. - +For an idea of how central package management may look like, refer to our [samples repo](https://github.com/NuGet/Samples/tree/main/CentralPackageManagementExample). ## Transitive pinning -You can automatically override a transitive package version even without an explicit top-level `` by opting into a feature known as transitive pinning. This promotes a transitive dependency to a top-level dependency implicitly on your behalf when necessary. +You can automatically override a transitive package version even without an explicit top-level `` by opting into a feature known as +transitive pinning. This promotes a transitive dependency to a top-level dependency implicitly on your behalf when necessary. -You can enable this feature by setting the MSBuild property `CentralPackageTransitivePinningEnabled` to `true` in a project or in a `Directory.Packages.props` or `Directory.Build.props` import file: +You can enable this feature by setting the MSBuild property `CentralPackageTransitivePinningEnabled` to `true` in a project or in a `Directory.Packages.props` +or `Directory.Build.props` import file: ```xml - - true - + + true + ``` ## Overriding package versions -You can override an individual package version by using the `VersionOverride` property on a `` item. This overrides any `` defined centrally. +You can override an individual package version by using the `VersionOverride` property on a `` item. This overrides any `` +defined centrally. ```xml @@ -126,30 +152,36 @@ You can override an individual package version by using the `VersionOverride` pr ``` -You can disable this feature by setting the MSBuild property `EnablePackageVersionOverride` to `false` in a project or in a `Directory.Packages.props` or `Directory.Build.props` import file: +You can disable this feature by setting the MSBuild property `EnablePackageVersionOverride` to `false` in a project or in a `Directory.Packages.props` or +`Directory.Build.props` import file: ```xml - - false - + + false + ``` -When this feature is disabled, specifying a `VersionOverride` on any `` item will result in an error at restore time indicating that the feature is disabled. +When this feature is disabled, specifying a `VersionOverride` on any `` item will result in an error at restore time indicating that +the feature is disabled. ## Disabling Central Package Management -If you'd like to disable central package management for any reason, you can disable this feature with the following: +If you'd like to disable central package management for any a particular project, you can disable it by setting the MSBuild property +`ManagePackageVersionsCentrally` to `false`: ```xml -false + + false + ``` ## Warning when using multiple package sources -When using central package management, you will see a `NU1507` warning if you have more than one package source defined in your configuration. To resolve this warning, map your package sources with [package source mapping](https://aka.ms/nuget-package-source-mapping) or specify a single package source. +When using central package management, you will see a `NU1507` warning if you have more than one package source defined in your configuration. To resolve +this warning, map your package sources with [package source mapping](https://aka.ms/nuget-package-source-mapping) or specify a single package source. ``` -There are {0} package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. +There are 3 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. ``` > [!Note] From 49bf4e5bee6d202c23219c5e91007b0f94826968 Mon Sep 17 00:00:00 2001 From: Arturo Ortiz <58537168+aortiz-msft@users.noreply.github.com> Date: Fri, 22 Apr 2022 15:42:30 -0700 Subject: [PATCH 570/988] Add note on floating version resolution Clarify the resolution behavior when global package folder is not empty. --- docs/concepts/Package-Versioning.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/concepts/Package-Versioning.md b/docs/concepts/Package-Versioning.md index 61d1fd07d..8aee0a88d 100644 --- a/docs/concepts/Package-Versioning.md +++ b/docs/concepts/Package-Versioning.md @@ -164,7 +164,8 @@ Always specify a version or version range for package dependencies in project fi | 1.1.\*-\* | 1.1.0
    1.1.1
    1.1.2-alpha
    1.1.2-beta
    1.3.0-beta | 1.1.2-beta | The highest version respecting the pattern and including the not stable versions. | Available in Visual Studio version 16.6, NuGet version 5.6, .NET Core SDK version 3.1.300 | > [!Note] -> Floating version resolution does not take into account whether or not a package is listed. +> Floating version resolution does not take into account whether or not a package is listed. +> Floating version resolution will be resolved locally if the conditions can be satisfied with packages in the Global Package Folder. **References in `packages.config`:** From d6a18b882643382de366f3e68f7e5c72efec794c Mon Sep 17 00:00:00 2001 From: Drew Noakes Date: Wed, 27 Apr 2022 11:59:11 +1000 Subject: [PATCH 571/988] Try to make introduction clearer I found the intro a little hard to read. Hopefully this helps. --- docs/consume-packages/Package-References-in-Project-Files.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Package-References-in-Project-Files.md b/docs/consume-packages/Package-References-in-Project-Files.md index ae1b2ef8d..931b7479d 100644 --- a/docs/consume-packages/Package-References-in-Project-Files.md +++ b/docs/consume-packages/Package-References-in-Project-Files.md @@ -9,7 +9,7 @@ ms.topic: conceptual # `PackageReference` in project files -Package references, using the `PackageReference` node, manage NuGet dependencies directly within project files (as opposed to a separate `packages.config` file). Using PackageReference, as it's called, doesn't affect other aspects of NuGet; for example, settings in `NuGet.Config` files (including package sources) are still applied as explained in [Common NuGet configurations](configuring-nuget-behavior.md). +Package references, using `` MSBuild items, specify NuGet package dependencies directly within project files, as opposed to having a separate `packages.config` file. Use of PackageReference doesn't affect other aspects of NuGet; for example, settings in `NuGet.Config` files (including package sources) are still applied as explained in [Common NuGet configurations](configuring-nuget-behavior.md). With PackageReference, you can also use MSBuild conditions to choose package references per target framework, or other groupings. It also allows for fine-grained control over dependencies and content flow. (See For more details [NuGet pack and restore as MSBuild targets](../reference/msbuild-targets.md).) From 0e74474404b67956773482dc06d77ba8d67fca71 Mon Sep 17 00:00:00 2001 From: HebaruSan Date: Sun, 1 May 2022 13:34:45 +0000 Subject: [PATCH 572/988] Spell "Everything" correctly --- docs/consume-packages/Package-References-in-Project-Files.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/consume-packages/Package-References-in-Project-Files.md b/docs/consume-packages/Package-References-in-Project-Files.md index ae1b2ef8d..59f332cd3 100644 --- a/docs/consume-packages/Package-References-in-Project-Files.md +++ b/docs/consume-packages/Package-References-in-Project-Files.md @@ -119,7 +119,7 @@ Allowable values for these tags are as follows, with multiple values separated b - + all contentFiles @@ -127,7 +127,7 @@ Allowable values for these tags are as follows, with multiple values separated b - + compile contentFiles From f1c9be1ec4c1a3a010783066ddc36b3f5e292227 Mon Sep 17 00:00:00 2001 From: Martin Ruiz Date: Thu, 5 May 2022 09:55:42 -0700 Subject: [PATCH 573/988] release notes --- docs/release-notes/NuGet-6.2.md | 102 ++++++++++++++++++++++++++++++++ 1 file changed, 102 insertions(+) create mode 100644 docs/release-notes/NuGet-6.2.md diff --git a/docs/release-notes/NuGet-6.2.md b/docs/release-notes/NuGet-6.2.md new file mode 100644 index 000000000..9bd260641 --- /dev/null +++ b/docs/release-notes/NuGet-6.2.md @@ -0,0 +1,102 @@ +--- +title: NuGet 6.2 Release Notes +description: Release notes for NuGet 6.2 including new features, bug fixes, and DCRs. +author: +ms.author: +ms.date: 5/5/2022 +ms.topic: conceptual +--- + +# NuGet 6.2 Release Notes + +NuGet distribution vehicles: + +| NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | +|:---|:---|:---| +| [****](https://nuget.org/downloads) | [Visual Studio version ](https://visualstudio.microsoft.com/downloads/) | [](https://dotnet.microsoft.com/download/dotnet-core/)1 | + +1 Installed with Visual Studio with.NET Core workload + +## Summary: What's New in 6.2 + +* Add support for grouping to the InfiniteScrollList, allowing it to be enabled or disabled - [#10748](https://github.com/NuGet/Home/issues/10748) + +* Make the InfiniteScrollList grouping sections expandable and collapsible - [#10749](https://github.com/NuGet/Home/issues/10749) + +* Read and store the transitive origins of a package while reading installed packages from assets file - [#10751](https://github.com/NuGet/Home/issues/10751) + +* Add caching of the transitive dependencies data pulled from the lockfile (assets file) - [#10752](https://github.com/NuGet/Home/issues/10752) + +* Add TFM for .NET nanoFramework - [#10800](https://github.com/NuGet/Home/issues/10800) + +* Surface the transitive packages and its transitive origins through the search layer - [#11486](https://github.com/NuGet/Home/issues/11486) + +* [Feature]: Require package source mapping when using CPM - [#11505](https://github.com/NuGet/Home/issues/11505) + +* [Feature]: Allow overriding a centrally defined package version - [#11516](https://github.com/NuGet/Home/issues/11516) + +* [Feature]: Add support for a dedicated environment variable providing the NuGetScratch path. - [#11671](https://github.com/NuGet/Home/issues/11671) + +### Issues fixed in this release + +**DCRs:** + +* Make LocalPackageFileCache methods virtual - [#10325](https://github.com/NuGet/Home/issues/10325) + +* NuGetScratch lock files are not cleaned up - [#10679](https://github.com/NuGet/Home/issues/10679) + +* AutoCompleteResourceV3 does not use the supplied logger - [#11272](https://github.com/NuGet/Home/issues/11272) + +* [DCR]: Mitigate missing nuget.org when non-NuGet tool creates nuget.config without any sources - [#11387](https://github.com/NuGet/Home/issues/11387) + +* Add Author to the tooltip for a package in the packages list of PM UI - [#11499](https://github.com/NuGet/Home/issues/11499) + +* Remove NU5049 - [#11598](https://github.com/NuGet/Home/issues/11598) + +**Bugs:** + +* NuGet.exe list from local packages folder does not work with the AllVersion flag - [#4537](https://github.com/NuGet/Home/issues/4537) + +* Project A referencing package B via AssetTargetFallback, doesn't use that same AssetTargetFallback to pull B's dependency package C - [#5957](https://github.com/NuGet/Home/issues/5957) + +* Errors due to missing/failing sources are inconsistently shown in solution explorer vs the error list - [#7245](https://github.com/NuGet/Home/issues/7245) + +* Arrow keys in NuGet PM UI Sources editing doesn't change order of persistence - [#8315](https://github.com/NuGet/Home/issues/8315) + +* PackageReference ungracefully handles duplicate Runtime Identifiers in csproj PackageReference - [#9290](https://github.com/NuGet/Home/issues/9290) + +* RestoreIgnoreFailedSources=true still gives warnings - [#9765](https://github.com/NuGet/Home/issues/9765) + +* Introduce a warning for null/empty version range (new or reuse NU1604) - [#9767](https://github.com/NuGet/Home/issues/9767) + +* NuGet restore in VS should report progress to allow the project-system to better control design time build scheduling. - [#9782](https://github.com/NuGet/Home/issues/9782) + +* NuGet again throwing exceptions "authors is required" "description is required", ignoring csproj/nuspec replacement tokens - [#9954](https://github.com/NuGet/Home/issues/9954) + +* [Regression]: Performance regression for cold restores in .NET 5.0.x - [#11031](https://github.com/NuGet/Home/issues/11031) + +* [Bug]: Package extraction sometimes fails with "file in use by another process" - [#11373](https://github.com/NuGet/Home/issues/11373) + +* Add progress reporting during package installation - [#11432](https://github.com/NuGet/Home/issues/11432) + +* [Bug]: Reduce string allocations in restore code path - [#11475](https://github.com/NuGet/Home/issues/11475) + +* [Bug]: Errors NU3028 and NU3037 when restoring NuGet packages on FreeBSD - [#11481](https://github.com/NuGet/Home/issues/11481) + +* [Responsiveness] RestoreOperationLogger blocking large number of thread pool threads trying to get access to the output window pane - [#11501](https://github.com/NuGet/Home/issues/11501) + +* [Bug]: Race Condition Creating Plugin Log Files - [#11517](https://github.com/NuGet/Home/issues/11517) + +* [Responsiveness] Package Management UI can consume large number of threads all searching the disk, it needs to run from long running thread - [#11570](https://github.com/NuGet/Home/issues/11570) + +* [Responsiveness] Package Management UI can consume large number of threads all searching the disk (up to 316 threads), use cancellation token at subroutines - [#11599](https://github.com/NuGet/Home/issues/11599) + +* [Bug]: NU1004 in Visual Studio, but not command line (lock files in locked mode) - [#11639](https://github.com/NuGet/Home/issues/11639) + +* [Bug]: new warning for package source mappings doesn't pass a value for the resource string placeholder - [#11709](https://github.com/NuGet/Home/issues/11709) + +**StillOpens:** + +* GeneratePathProperty properties should end with a trailing slash - [#8871](https://github.com/NuGet/Home/issues/8871) + +**[List of all issues fixed in this release - 6.2](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=Z2lkOi8vcmFwdG9yL1JlbGVhc2UvNzA4Njg)** From 51a23915370abaf6cc9052f32580adcfaa8f2a2e Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Thu, 5 May 2022 17:14:05 -0700 Subject: [PATCH 574/988] Add a background to the file --- .../media/Package-Pattern-Examples.png | Bin 21304 -> 18799 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/consume-packages/media/Package-Pattern-Examples.png b/docs/consume-packages/media/Package-Pattern-Examples.png index bfac6f3a249aa921f12f31f3281676c47c86837a..3a9e81b6fab1c1dec626a0bafd71aef7510b3a25 100644 GIT binary patch literal 18799 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 literal 21304 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 Date: Sun, 8 May 2022 21:54:59 -0700 Subject: [PATCH 575/988] Moved bugs from feature section, deleted still opens section, moved feature from bugs section --- docs/release-notes/NuGet-6.2.md | 30 ++++++++++++------------------ 1 file changed, 12 insertions(+), 18 deletions(-) diff --git a/docs/release-notes/NuGet-6.2.md b/docs/release-notes/NuGet-6.2.md index 9bd260641..f274af611 100644 --- a/docs/release-notes/NuGet-6.2.md +++ b/docs/release-notes/NuGet-6.2.md @@ -19,24 +19,16 @@ NuGet distribution vehicles: ## Summary: What's New in 6.2 -* Add support for grouping to the InfiniteScrollList, allowing it to be enabled or disabled - [#10748](https://github.com/NuGet/Home/issues/10748) - -* Make the InfiniteScrollList grouping sections expandable and collapsible - [#10749](https://github.com/NuGet/Home/issues/10749) - -* Read and store the transitive origins of a package while reading installed packages from assets file - [#10751](https://github.com/NuGet/Home/issues/10751) - -* Add caching of the transitive dependencies data pulled from the lockfile (assets file) - [#10752](https://github.com/NuGet/Home/issues/10752) - * Add TFM for .NET nanoFramework - [#10800](https://github.com/NuGet/Home/issues/10800) -* Surface the transitive packages and its transitive origins through the search layer - [#11486](https://github.com/NuGet/Home/issues/11486) - * [Feature]: Require package source mapping when using CPM - [#11505](https://github.com/NuGet/Home/issues/11505) * [Feature]: Allow overriding a centrally defined package version - [#11516](https://github.com/NuGet/Home/issues/11516) * [Feature]: Add support for a dedicated environment variable providing the NuGetScratch path. - [#11671](https://github.com/NuGet/Home/issues/11671) +* [Feature]: Add IVsNuGetProjectUpdateEvents in Visual Studio, reporting of restore changes for PackageReference based projects. - [#9782](https://github.com/NuGet/Home/issues/9782) + ### Issues fixed in this release **DCRs:** @@ -55,6 +47,16 @@ NuGet distribution vehicles: **Bugs:** +* Add support for grouping to the InfiniteScrollList, allowing it to be enabled or disabled - [#10748](https://github.com/NuGet/Home/issues/10748) + +* Make the InfiniteScrollList grouping sections expandable and collapsible - [#10749](https://github.com/NuGet/Home/issues/10749) + +* Read and store the transitive origins of a package while reading installed packages from assets file - [#10751](https://github.com/NuGet/Home/issues/10751) + +* Add caching of the transitive dependencies data pulled from the lockfile (assets file) - [#10752](https://github.com/NuGet/Home/issues/10752) + +* Surface the transitive packages and its transitive origins through the search layer - [#11486](https://github.com/NuGet/Home/issues/11486) + * NuGet.exe list from local packages folder does not work with the AllVersion flag - [#4537](https://github.com/NuGet/Home/issues/4537) * Project A referencing package B via AssetTargetFallback, doesn't use that same AssetTargetFallback to pull B's dependency package C - [#5957](https://github.com/NuGet/Home/issues/5957) @@ -69,8 +71,6 @@ NuGet distribution vehicles: * Introduce a warning for null/empty version range (new or reuse NU1604) - [#9767](https://github.com/NuGet/Home/issues/9767) -* NuGet restore in VS should report progress to allow the project-system to better control design time build scheduling. - [#9782](https://github.com/NuGet/Home/issues/9782) - * NuGet again throwing exceptions "authors is required" "description is required", ignoring csproj/nuspec replacement tokens - [#9954](https://github.com/NuGet/Home/issues/9954) * [Regression]: Performance regression for cold restores in .NET 5.0.x - [#11031](https://github.com/NuGet/Home/issues/11031) @@ -94,9 +94,3 @@ NuGet distribution vehicles: * [Bug]: NU1004 in Visual Studio, but not command line (lock files in locked mode) - [#11639](https://github.com/NuGet/Home/issues/11639) * [Bug]: new warning for package source mappings doesn't pass a value for the resource string placeholder - [#11709](https://github.com/NuGet/Home/issues/11709) - -**StillOpens:** - -* GeneratePathProperty properties should end with a trailing slash - [#8871](https://github.com/NuGet/Home/issues/8871) - -**[List of all issues fixed in this release - 6.2](https://app.zenhub.com/workspaces/nuget-client-team-55aec9a240305cf007585881/reports/release?release=Z2lkOi8vcmFwdG9yL1JlbGVhc2UvNzA4Njg)** From d4397e3b8e43607ec367754d51379924bad8cc70 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 9 May 2022 12:51:52 -0500 Subject: [PATCH 576/988] Add preview 4 to CPM --- docs/consume-packages/Central-Package-Management.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/consume-packages/Central-Package-Management.md b/docs/consume-packages/Central-Package-Management.md index ba694b76c..700cdfebd 100644 --- a/docs/consume-packages/Central-Package-Management.md +++ b/docs/consume-packages/Central-Package-Management.md @@ -25,6 +25,7 @@ The feature is available across all NuGet integrated tooling. * [Visual Studio 2022 17.2 and later](https://visualstudio.microsoft.com/downloads/) * [.NET SDK 6.0.300 and later](https://dotnet.microsoft.com/download/dotnet/6.0) +* [.NET SDK 7.0.0-preview.4 and later](https://dotnet.microsoft.com/download/dotnet/7.0) * [nuget.exe 6.2.0 and later](https://www.nuget.org/downloads) Older tooling will ignore central package management configurations and features. To use this feature to the fullest extent, ensure all your build environments From 70bf5997fd3ea9d5d2fda25404d08b140413a94b Mon Sep 17 00:00:00 2001 From: Martin Ruiz Date: Mon, 9 May 2022 16:47:34 -0700 Subject: [PATCH 577/988] fixes --- docs/release-notes/NuGet-6.2.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/release-notes/NuGet-6.2.md b/docs/release-notes/NuGet-6.2.md index f274af611..1cdeeb383 100644 --- a/docs/release-notes/NuGet-6.2.md +++ b/docs/release-notes/NuGet-6.2.md @@ -1,9 +1,9 @@ --- title: NuGet 6.2 Release Notes description: Release notes for NuGet 6.2 including new features, bug fixes, and DCRs. -author: -ms.author: -ms.date: 5/5/2022 +author: martinrrm +ms.author: mruizmares +ms.date: 5/9/2022 ms.topic: conceptual --- @@ -13,9 +13,9 @@ NuGet distribution vehicles: | NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | |:---|:---|:---| -| [****](https://nuget.org/downloads) | [Visual Studio version ](https://visualstudio.microsoft.com/downloads/) | [](https://dotnet.microsoft.com/download/dotnet-core/)1 | +| [**6.2.0**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.2](https://visualstudio.microsoft.com/downloads/) | [6.0.202](https://dotnet.microsoft.com/download/dotnet-core/6.0)1 | -1 Installed with Visual Studio with.NET Core workload +1 Installed with Visual Studio 2022 with.NET Core workload ## Summary: What's New in 6.2 @@ -27,7 +27,7 @@ NuGet distribution vehicles: * [Feature]: Add support for a dedicated environment variable providing the NuGetScratch path. - [#11671](https://github.com/NuGet/Home/issues/11671) -* [Feature]: Add IVsNuGetProjectUpdateEvents in Visual Studio, reporting of restore changes for PackageReference based projects. - [#9782](https://github.com/NuGet/Home/issues/9782) +* [Feature]: Add IVsNuGetProjectUpdateEvents in Visual Studio, reporting of restore changes for PackageReference based projects. - [#9782](https://github.com/NuGet/Home/issues/9782) - [See documentation](https://docs.microsoft.com/en-us/nuget/visual-studio-extensibility/nuget-api-in-visual-studio#ivsnugetprojectupdateevents-interface) ### Issues fixed in this release From f17bc416664428b985161b5cdae5574924ebc7fc Mon Sep 17 00:00:00 2001 From: Martin Ruiz Date: Mon, 9 May 2022 16:51:52 -0700 Subject: [PATCH 578/988] localization fix --- docs/release-notes/NuGet-6.2.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-6.2.md b/docs/release-notes/NuGet-6.2.md index 1cdeeb383..779c7e120 100644 --- a/docs/release-notes/NuGet-6.2.md +++ b/docs/release-notes/NuGet-6.2.md @@ -27,7 +27,7 @@ NuGet distribution vehicles: * [Feature]: Add support for a dedicated environment variable providing the NuGetScratch path. - [#11671](https://github.com/NuGet/Home/issues/11671) -* [Feature]: Add IVsNuGetProjectUpdateEvents in Visual Studio, reporting of restore changes for PackageReference based projects. - [#9782](https://github.com/NuGet/Home/issues/9782) - [See documentation](https://docs.microsoft.com/en-us/nuget/visual-studio-extensibility/nuget-api-in-visual-studio#ivsnugetprojectupdateevents-interface) +* [Feature]: Add IVsNuGetProjectUpdateEvents in Visual Studio, reporting of restore changes for PackageReference based projects. - [#9782](https://github.com/NuGet/Home/issues/9782) - [See documentation](https://docs.microsoft.com/nuget/visual-studio-extensibility/nuget-api-in-visual-studio#ivsnugetprojectupdateevents-interface) ### Issues fixed in this release From 8a6c550779974a6eb8f2a1f689f6dcfd151746f0 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Tue, 10 May 2022 11:01:09 -0700 Subject: [PATCH 579/988] Add a more information link --- docs/release-notes/NuGet-6.2.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/release-notes/NuGet-6.2.md b/docs/release-notes/NuGet-6.2.md index 779c7e120..12f0fea97 100644 --- a/docs/release-notes/NuGet-6.2.md +++ b/docs/release-notes/NuGet-6.2.md @@ -29,6 +29,8 @@ NuGet distribution vehicles: * [Feature]: Add IVsNuGetProjectUpdateEvents in Visual Studio, reporting of restore changes for PackageReference based projects. - [#9782](https://github.com/NuGet/Home/issues/9782) - [See documentation](https://docs.microsoft.com/nuget/visual-studio-extensibility/nuget-api-in-visual-studio#ivsnugetprojectupdateevents-interface) +* Project A referencing package B via AssetTargetFallback, doesn't use that same AssetTargetFallback to pull B's dependency package C - [#5957](https://github.com/NuGet/Home/issues/5957) - [More information](https://github.com/NuGet/Samples/tree/main/AssetTargetFallbackTransitiveDependencies) + ### Issues fixed in this release **DCRs:** @@ -59,8 +61,6 @@ NuGet distribution vehicles: * NuGet.exe list from local packages folder does not work with the AllVersion flag - [#4537](https://github.com/NuGet/Home/issues/4537) -* Project A referencing package B via AssetTargetFallback, doesn't use that same AssetTargetFallback to pull B's dependency package C - [#5957](https://github.com/NuGet/Home/issues/5957) - * Errors due to missing/failing sources are inconsistently shown in solution explorer vs the error list - [#7245](https://github.com/NuGet/Home/issues/7245) * Arrow keys in NuGet PM UI Sources editing doesn't change order of persistence - [#8315](https://github.com/NuGet/Home/issues/8315) From 23647e41484767e65128ce35dbc576792ea8f5e7 Mon Sep 17 00:00:00 2001 From: Fernando Aguilar Date: Tue, 10 May 2022 14:38:50 -0700 Subject: [PATCH 580/988] Fixed dotnet SDK version --- docs/release-notes/NuGet-6.2.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-6.2.md b/docs/release-notes/NuGet-6.2.md index 12f0fea97..035efb6e1 100644 --- a/docs/release-notes/NuGet-6.2.md +++ b/docs/release-notes/NuGet-6.2.md @@ -13,7 +13,7 @@ NuGet distribution vehicles: | NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | |:---|:---|:---| -| [**6.2.0**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.2](https://visualstudio.microsoft.com/downloads/) | [6.0.202](https://dotnet.microsoft.com/download/dotnet-core/6.0)1 | +| [**6.2.0**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.2](https://visualstudio.microsoft.com/downloads/) | [6.0.300](https://dotnet.microsoft.com/download/dotnet-core/6.0)1 | 1 Installed with Visual Studio 2022 with.NET Core workload From 8338693a77cf45ef1e11bab2c86f5abd90059660 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Tue, 10 May 2022 14:43:12 -0700 Subject: [PATCH 581/988] use a relative link --- docs/release-notes/NuGet-6.2.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-6.2.md b/docs/release-notes/NuGet-6.2.md index 035efb6e1..2354348c1 100644 --- a/docs/release-notes/NuGet-6.2.md +++ b/docs/release-notes/NuGet-6.2.md @@ -27,7 +27,7 @@ NuGet distribution vehicles: * [Feature]: Add support for a dedicated environment variable providing the NuGetScratch path. - [#11671](https://github.com/NuGet/Home/issues/11671) -* [Feature]: Add IVsNuGetProjectUpdateEvents in Visual Studio, reporting of restore changes for PackageReference based projects. - [#9782](https://github.com/NuGet/Home/issues/9782) - [See documentation](https://docs.microsoft.com/nuget/visual-studio-extensibility/nuget-api-in-visual-studio#ivsnugetprojectupdateevents-interface) +* [Feature]: Add IVsNuGetProjectUpdateEvents in Visual Studio, reporting of restore changes for PackageReference based projects. - [#9782](https://github.com/NuGet/Home/issues/9782) - [See documentation](../visual-studio-extensibility/nuget-api-in-visual-studio#ivsnugetprojectupdateevents-interface) * Project A referencing package B via AssetTargetFallback, doesn't use that same AssetTargetFallback to pull B's dependency package C - [#5957](https://github.com/NuGet/Home/issues/5957) - [More information](https://github.com/NuGet/Samples/tree/main/AssetTargetFallbackTransitiveDependencies) From cd87c0300eff6c48938a889479f3bb20b18b1d37 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Tue, 10 May 2022 14:49:04 -0700 Subject: [PATCH 582/988] use a relative link --- docs/release-notes/NuGet-6.2.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-6.2.md b/docs/release-notes/NuGet-6.2.md index 2354348c1..284aca1e6 100644 --- a/docs/release-notes/NuGet-6.2.md +++ b/docs/release-notes/NuGet-6.2.md @@ -27,7 +27,7 @@ NuGet distribution vehicles: * [Feature]: Add support for a dedicated environment variable providing the NuGetScratch path. - [#11671](https://github.com/NuGet/Home/issues/11671) -* [Feature]: Add IVsNuGetProjectUpdateEvents in Visual Studio, reporting of restore changes for PackageReference based projects. - [#9782](https://github.com/NuGet/Home/issues/9782) - [See documentation](../visual-studio-extensibility/nuget-api-in-visual-studio#ivsnugetprojectupdateevents-interface) +* [Feature]: Add IVsNuGetProjectUpdateEvents in Visual Studio, reporting of restore changes for PackageReference based projects. - [#9782](https://github.com/NuGet/Home/issues/9782) - [See documentation](../visual-studio-extensibility/nuget-api-in-visual-studio.md#ivsnugetprojectupdateevents-interface) * Project A referencing package B via AssetTargetFallback, doesn't use that same AssetTargetFallback to pull B's dependency package C - [#5957](https://github.com/NuGet/Home/issues/5957) - [More information](https://github.com/NuGet/Samples/tree/main/AssetTargetFallbackTransitiveDependencies) From fd31628327f03dc3d0e006af49be4cc96bfb8799 Mon Sep 17 00:00:00 2001 From: Fernando Aguilar Date: Thu, 12 May 2022 13:35:46 -0700 Subject: [PATCH 583/988] Added footer and link. Added missing bugfix --- docs/release-notes/NuGet-6.2.md | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/docs/release-notes/NuGet-6.2.md b/docs/release-notes/NuGet-6.2.md index 284aca1e6..6128a9491 100644 --- a/docs/release-notes/NuGet-6.2.md +++ b/docs/release-notes/NuGet-6.2.md @@ -49,6 +49,8 @@ NuGet distribution vehicles: **Bugs:** +* Revert mitigation of missing nuget.org when other tools create nuget.config [#11616](https://github.com/NuGet/Home/issues/11616) + * Add support for grouping to the InfiniteScrollList, allowing it to be enabled or disabled - [#10748](https://github.com/NuGet/Home/issues/10748) * Make the InfiniteScrollList grouping sections expandable and collapsible - [#10749](https://github.com/NuGet/Home/issues/10749) @@ -94,3 +96,26 @@ NuGet distribution vehicles: * [Bug]: NU1004 in Visual Studio, but not command line (lock files in locked mode) - [#11639](https://github.com/NuGet/Home/issues/11639) * [Bug]: new warning for package source mappings doesn't pass a value for the resource string placeholder - [#11709](https://github.com/NuGet/Home/issues/11709) + + +**[List of commits in this release - `release-6.1.x` branch](https://github.com/NuGet/NuGet.Client/compare/release-6.2.x...release-6.1.x)** + +### Community contributions + +|Who|PRs|Issues| +|----|----|----| + + +Thank you to all the contributors who helped make this NuGet release awesome! + + +## Feedback welcome + +Your feedback is important to us. If there are any problems with this release, check our +[GitHub Issues](https://github.com/NuGet/Home/issues) and +[Visual Studio Developer Community](https://developercommunity.visualstudio.com/) +for existing issues. For new issues within NuGet, please report a +[GitHub Issue](https://github.com/NuGet/Home/issues/new/choose). +For general NuGet experience issues, let us know via the +[Report a Problem](/visualstudio/ide/how-to-report-a-problem-with-visual-studio) +option found in your favorite IDE under **Help > Report a Problem**. From 6514808c745927eb95b176408e2406670ff0d5c3 Mon Sep 17 00:00:00 2001 From: Fernando Aguilar Date: Thu, 12 May 2022 19:45:46 -0700 Subject: [PATCH 584/988] WiP: Community contributions --- docs/release-notes/NuGet-6.2.md | 28 +++++++++++++++++++++++----- 1 file changed, 23 insertions(+), 5 deletions(-) diff --git a/docs/release-notes/NuGet-6.2.md b/docs/release-notes/NuGet-6.2.md index 6128a9491..db108d644 100644 --- a/docs/release-notes/NuGet-6.2.md +++ b/docs/release-notes/NuGet-6.2.md @@ -25,8 +25,6 @@ NuGet distribution vehicles: * [Feature]: Allow overriding a centrally defined package version - [#11516](https://github.com/NuGet/Home/issues/11516) -* [Feature]: Add support for a dedicated environment variable providing the NuGetScratch path. - [#11671](https://github.com/NuGet/Home/issues/11671) - * [Feature]: Add IVsNuGetProjectUpdateEvents in Visual Studio, reporting of restore changes for PackageReference based projects. - [#9782](https://github.com/NuGet/Home/issues/9782) - [See documentation](../visual-studio-extensibility/nuget-api-in-visual-studio.md#ivsnugetprojectupdateevents-interface) * Project A referencing package B via AssetTargetFallback, doesn't use that same AssetTargetFallback to pull B's dependency package C - [#5957](https://github.com/NuGet/Home/issues/5957) - [More information](https://github.com/NuGet/Samples/tree/main/AssetTargetFallbackTransitiveDependencies) @@ -98,16 +96,36 @@ NuGet distribution vehicles: * [Bug]: new warning for package source mappings doesn't pass a value for the resource string placeholder - [#11709](https://github.com/NuGet/Home/issues/11709) -**[List of commits in this release - `release-6.1.x` branch](https://github.com/NuGet/NuGet.Client/compare/release-6.2.x...release-6.1.x)** +**[List of commits in this release](https://github.com/NuGet/NuGet.Client/compare/6.1.0.80%5E...6.2.0.146)** ### Community contributions +Thank you to all the contributors who helped make this NuGet release awesome! + |Who|PRs|Issues| |----|----|----| +[MarkKharitonov](https://github.com/MarkKharitonov) | [4511](https://github.com/nuget/nuget.client/pull/4511) | [Feature]: Add support for a dedicated environment variable providing the NuGetScratch path. - [#11671](https://github.com/NuGet/Home/issues/11671) +[mfkl](https://github.com/mfkl) | [4222](https://github.com/nuget/nuget.client/pull/4222) | A better cache clean-up and expiration policy - [#4980](https://github.com/NuGet/Home/issues/4980) +[David Federman](https://github.com/dfederm) | [4504](https://github.com/nuget/nuget.client/pull/4504) | Static Graph restore uses Project.FromFile + Project.CreateInstance instead of ProjectInstance.FromFile directly - [#11675](https://github.com/NuGet/Home/issues/11675) +[crummel](https://github.com/crummel) | [4404](https://github.com/nuget/nuget.client/pull/4404) | [main] Backport source-build patches to repos. [#2708](https://github.com/dotnet/source-build/issues/2708) +[mjolka](https://github.com/mjolka) | [4475](https://github.com/nuget/nuget.client/pull/4475) | Very slow restore when using NoWarn in single project that has lots of dependents - [#11222](https://github.com/NuGet/Home/issues/11222) +Marcin Krystianc | [4488](https://github.com/nuget/nuget.client/pull/4488) | dotnet integration pack test IL issue - [#11454](https://github.com/NuGet/Home/issues/11454) +Marcin Krystianc | [4025](https://github.com/nuget/nuget.client/pull/4025) +David Kean | [4483](https://github.com/nuget/nuget.client/pull/4483) +Bobby Reynolds | [4458](https://github.com/nuget/nuget.client/pull/4458) +Adam Friedman | [4287](https://github.com/nuget/nuget.client/pull/4287) +David Kean | [4440](https://github.com/nuget/nuget.client/pull/4440) +David Kean | [4439](https://github.com/nuget/nuget.client/pull/4439) +David Kean | [4432](https://github.com/nuget/nuget.client/pull/4432) +David Federman | [4393](https://github.com/nuget/nuget.client/pull/4393) +Drew Noakes | [4390](https://github.com/nuget/nuget.client/pull/4390) +Drew Noakes | [4386](https://github.com/nuget/nuget.client/pull/4386) +Marcin Krystianc | [4186](https://github.com/nuget/nuget.client/pull/4186) +joperator | [4389](https://github.com/nuget/nuget.client/pull/4389) +AndreiTimisescu | [3779](https://github.com/nuget/nuget.client/pull/3779) +Tom Deseyn | [4123](https://github.com/nuget/nuget.client/pull/4123) -Thank you to all the contributors who helped make this NuGet release awesome! - ## Feedback welcome From 861296142b799893731d307cc4dd4f543b5f5180 Mon Sep 17 00:00:00 2001 From: Fernando Aguilar Date: Fri, 13 May 2022 13:34:49 -0700 Subject: [PATCH 585/988] WiP: Community PRs --- docs/release-notes/NuGet-6.2.md | 38 ++++++++++++++++----------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/docs/release-notes/NuGet-6.2.md b/docs/release-notes/NuGet-6.2.md index db108d644..529a316a1 100644 --- a/docs/release-notes/NuGet-6.2.md +++ b/docs/release-notes/NuGet-6.2.md @@ -104,26 +104,26 @@ Thank you to all the contributors who helped make this NuGet release awesome! |Who|PRs|Issues| |----|----|----| -[MarkKharitonov](https://github.com/MarkKharitonov) | [4511](https://github.com/nuget/nuget.client/pull/4511) | [Feature]: Add support for a dedicated environment variable providing the NuGetScratch path. - [#11671](https://github.com/NuGet/Home/issues/11671) -[mfkl](https://github.com/mfkl) | [4222](https://github.com/nuget/nuget.client/pull/4222) | A better cache clean-up and expiration policy - [#4980](https://github.com/NuGet/Home/issues/4980) -[David Federman](https://github.com/dfederm) | [4504](https://github.com/nuget/nuget.client/pull/4504) | Static Graph restore uses Project.FromFile + Project.CreateInstance instead of ProjectInstance.FromFile directly - [#11675](https://github.com/NuGet/Home/issues/11675) +[MarkKharitonov](https://github.com/MarkKharitonov) | [4511](https://github.com/nuget/nuget.client/pull/4511) | [Feature]: Add support for a dedicated environment variable providing the NuGetScratch path. - [#11671](https://github.com/NuGet/Home/issues/11671) +[mfkl](https://github.com/mfkl) | [4222](https://github.com/nuget/nuget.client/pull/4222) | A better cache clean-up and expiration policy - [#4980](https://github.com/NuGet/Home/issues/4980) +[dfederm](https://github.com/dfederm) | [4504](https://github.com/nuget/nuget.client/pull/4504) | Static Graph restore uses Project.FromFile + Project.CreateInstance instead of ProjectInstance.FromFile directly - [#11675](https://github.com/NuGet/Home/issues/11675) [crummel](https://github.com/crummel) | [4404](https://github.com/nuget/nuget.client/pull/4404) | [main] Backport source-build patches to repos. [#2708](https://github.com/dotnet/source-build/issues/2708) -[mjolka](https://github.com/mjolka) | [4475](https://github.com/nuget/nuget.client/pull/4475) | Very slow restore when using NoWarn in single project that has lots of dependents - [#11222](https://github.com/NuGet/Home/issues/11222) -Marcin Krystianc | [4488](https://github.com/nuget/nuget.client/pull/4488) | dotnet integration pack test IL issue - [#11454](https://github.com/NuGet/Home/issues/11454) -Marcin Krystianc | [4025](https://github.com/nuget/nuget.client/pull/4025) -David Kean | [4483](https://github.com/nuget/nuget.client/pull/4483) -Bobby Reynolds | [4458](https://github.com/nuget/nuget.client/pull/4458) -Adam Friedman | [4287](https://github.com/nuget/nuget.client/pull/4287) -David Kean | [4440](https://github.com/nuget/nuget.client/pull/4440) -David Kean | [4439](https://github.com/nuget/nuget.client/pull/4439) -David Kean | [4432](https://github.com/nuget/nuget.client/pull/4432) -David Federman | [4393](https://github.com/nuget/nuget.client/pull/4393) -Drew Noakes | [4390](https://github.com/nuget/nuget.client/pull/4390) -Drew Noakes | [4386](https://github.com/nuget/nuget.client/pull/4386) -Marcin Krystianc | [4186](https://github.com/nuget/nuget.client/pull/4186) -joperator | [4389](https://github.com/nuget/nuget.client/pull/4389) -AndreiTimisescu | [3779](https://github.com/nuget/nuget.client/pull/3779) -Tom Deseyn | [4123](https://github.com/nuget/nuget.client/pull/4123) +[mjolka](https://github.com/mjolka) | [4475](https://github.com/nuget/nuget.client/pull/4475) | Very slow restore when using NoWarn in single project that has lots of dependents - [#11222](https://github.com/NuGet/Home/issues/11222) +[marcin-krystianc](https://github.com/marcin-krystianc) | [4488](https://github.com/nuget/nuget.client/pull/4488) | dotnet integration pack test IL issue - [#11454](https://github.com/NuGet/Home/issues/11454) +[marcin-krystianc](https://github.com/marcin-krystianc) | [4025](https://github.com/nuget/nuget.client/pull/4025) | Restore fails with NU1106 for solution that uses StaticGraph and CPVM - [#10327](https://github.com/NuGet/Home/issues/10327); [Feature]: Add option to allow versions of transitive dependencies to be overridden - [#10389](https://github.com/NuGet/Home/issues/10389) +[davkean](https://github.com/davkean) | [4483](https://github.com/nuget/nuget.client/pull/4483) | Remove unneeded allocations when parsing assets file [#11648](https://github.com/NuGet/Home/issues/11648) +[reynoldsbd](https://github.com/reynoldsbd) | [4458](https://github.com/nuget/nuget.client/pull/4458) | [Bug]: Race Condition Creating Plugin Log Files - [#11517](https://github.com/NuGet/Home/issues/11517) +[tintoy](https://github.com/tintoy) | [4287](https://github.com/nuget/nuget.client/pull/4287) | AutoCompleteResourceV3 does not use the supplied logger - [#11272](https://github.com/NuGet/Home/issues/11272) +[davkean](https://github.com/davkean) | [4440](https://github.com/nuget/nuget.client/pull/4440) | Improve VS and NuGet performance by making some methods non-asynchronous - [#11816](https://github.com/NuGet/Home/issues/11816) +[davkean](https://github.com/davkean) | [4439](https://github.com/nuget/nuget.client/pull/4439) | Redundant calls to get VsHierarchy in NuGet VS code - [#11817](https://github.com/NuGet/Home/issues/11817) +[davkean](https://github.com/davkean) | [4432](https://github.com/nuget/nuget.client/pull/4432) | Avoid double-checking for supported projects - [#11554](https://github.com/NuGet/Home/issues/11554) +[dfederm](https://github.com/dfederm) | [4393](https://github.com/nuget/nuget.client/pull/4393) | [Bug]: Static graph restore binlog doesn't log task inputs - [#11484](https://github.com/NuGet/Home/issues/11484) +[drewnoakes](https://github.com/drewnoakes) | [4390](https://github.com/nuget/nuget.client/pull/4390) | Show package .props and .targets files in Solution Explorer [#7838](https://github.com/dotnet/project-system/issues/7838) +[drewnoakes](https://github.com/drewnoakes) | [4386](https://github.com/nuget/nuget.client/pull/4386) | Solution Explorer search is not showing package contents - [#7834](https://github.com/dotnet/project-system/issues/7834) +[marcin-krystianc](https://github.com/marcin-krystianc) | [4186](https://github.com/nuget/nuget.client/pull/4186) | [Regression]: Performance regression for cold restores in .NET 5.0.x [#11031](https://github.com/NuGet/Home/issues/11031) +joperator | [4389](https://github.com/nuget/nuget.client/pull/4389) +AndreiTimisescu | [3779](https://github.com/nuget/nuget.client/pull/3779) +Tom Deseyn | [4123](https://github.com/nuget/nuget.client/pull/4123) From b0f597ea32bdd16f848535d48a973be4c9480320 Mon Sep 17 00:00:00 2001 From: Fernando Aguilar Date: Fri, 13 May 2022 15:04:34 -0700 Subject: [PATCH 586/988] completed community contributions table --- docs/release-notes/NuGet-6.2.md | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/docs/release-notes/NuGet-6.2.md b/docs/release-notes/NuGet-6.2.md index 529a316a1..bab284d21 100644 --- a/docs/release-notes/NuGet-6.2.md +++ b/docs/release-notes/NuGet-6.2.md @@ -43,7 +43,7 @@ NuGet distribution vehicles: * Add Author to the tooltip for a package in the packages list of PM UI - [#11499](https://github.com/NuGet/Home/issues/11499) -* Remove NU5049 - [#11598](https://github.com/NuGet/Home/issues/11598) +* Remove NU5049 - [#11598](https://github.com/NuGet/Home/issues/11598) **Bugs:** @@ -73,20 +73,14 @@ NuGet distribution vehicles: * NuGet again throwing exceptions "authors is required" "description is required", ignoring csproj/nuspec replacement tokens - [#9954](https://github.com/NuGet/Home/issues/9954) -* [Regression]: Performance regression for cold restores in .NET 5.0.x - [#11031](https://github.com/NuGet/Home/issues/11031) - * [Bug]: Package extraction sometimes fails with "file in use by another process" - [#11373](https://github.com/NuGet/Home/issues/11373) * Add progress reporting during package installation - [#11432](https://github.com/NuGet/Home/issues/11432) * [Bug]: Reduce string allocations in restore code path - [#11475](https://github.com/NuGet/Home/issues/11475) -* [Bug]: Errors NU3028 and NU3037 when restoring NuGet packages on FreeBSD - [#11481](https://github.com/NuGet/Home/issues/11481) - * [Responsiveness] RestoreOperationLogger blocking large number of thread pool threads trying to get access to the output window pane - [#11501](https://github.com/NuGet/Home/issues/11501) -* [Bug]: Race Condition Creating Plugin Log Files - [#11517](https://github.com/NuGet/Home/issues/11517) - * [Responsiveness] Package Management UI can consume large number of threads all searching the disk, it needs to run from long running thread - [#11570](https://github.com/NuGet/Home/issues/11570) * [Responsiveness] Package Management UI can consume large number of threads all searching the disk (up to 316 threads), use cancellation token at subroutines - [#11599](https://github.com/NuGet/Home/issues/11599) @@ -121,11 +115,9 @@ Thank you to all the contributors who helped make this NuGet release awesome! [drewnoakes](https://github.com/drewnoakes) | [4390](https://github.com/nuget/nuget.client/pull/4390) | Show package .props and .targets files in Solution Explorer [#7838](https://github.com/dotnet/project-system/issues/7838) [drewnoakes](https://github.com/drewnoakes) | [4386](https://github.com/nuget/nuget.client/pull/4386) | Solution Explorer search is not showing package contents - [#7834](https://github.com/dotnet/project-system/issues/7834) [marcin-krystianc](https://github.com/marcin-krystianc) | [4186](https://github.com/nuget/nuget.client/pull/4186) | [Regression]: Performance regression for cold restores in .NET 5.0.x [#11031](https://github.com/NuGet/Home/issues/11031) -joperator | [4389](https://github.com/nuget/nuget.client/pull/4389) -AndreiTimisescu | [3779](https://github.com/nuget/nuget.client/pull/3779) -Tom Deseyn | [4123](https://github.com/nuget/nuget.client/pull/4123) - - +[joperator](https://github.com/joperator) | [4389](https://github.com/nuget/nuget.client/pull/4389) | [Bug]: Errors NU3028 and NU3037 when restoring NuGet packages on FreeBSD - [#11481](https://github.com/NuGet/Home/issues/11481) +[AndreiTimisescu](https://github.com/AndreiTimisescu) | [3779](https://github.com/nuget/nuget.client/pull/3779) | Make LocalPackageFileCache methods virtual - [#10325](https://github.com/NuGet/Home/issues/10325) +[tmds](https://github.com/tmds) | [4123](https://github.com/nuget/nuget.client/pull/4123) | NuGetScratch lock files are not cleaned up - [#10679](https://github.com/NuGet/Home/issues/10679) ## Feedback welcome From 64c31f0f76c759939fafb0184e7c137811d68e7d Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Mon, 16 May 2022 11:38:10 -0700 Subject: [PATCH 587/988] Cleanup NU1301 (#2754) --- docs/reference/errors-and-warnings/NU1301.md | 2 +- docs/reference/errors-and-warnings/NU1801.md | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/docs/reference/errors-and-warnings/NU1301.md b/docs/reference/errors-and-warnings/NU1301.md index 8c8e0ec94..910c0c794 100644 --- a/docs/reference/errors-and-warnings/NU1301.md +++ b/docs/reference/errors-and-warnings/NU1301.md @@ -8,7 +8,7 @@ f1_keywords: - NU1301 --- -# NuGet Warning NU1301 +# NuGet Error NU1301
    The local source 'C:\Code\Contoso\contosoLocalSource' doesn't exist.
    diff --git a/docs/reference/errors-and-warnings/NU1801.md b/docs/reference/errors-and-warnings/NU1801.md index 161119c82..88f1be030 100644 --- a/docs/reference/errors-and-warnings/NU1801.md +++ b/docs/reference/errors-and-warnings/NU1801.md @@ -15,5 +15,7 @@ f1_keywords: ### Issue An error occurred when reading the feed when `IgnoreFailedSources` is set to true, converting it to a non-fatal warning. This could contain any message and is generic. +Note that if `IgnoreFailedSources` is not enabled, [NU1301](./NU1301.md) will be raised instead. + ### Solution -Edit your configuration to specify valid sources. \ No newline at end of file +Edit your configuration to specify valid sources. From dcd732a25835d884673c646b42c4c1fc70c3f904 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Wed, 25 May 2022 18:48:01 -0500 Subject: [PATCH 588/988] Add 6.2 release notes to index. --- docs/release-notes/Index.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/release-notes/Index.md b/docs/release-notes/Index.md index 9958537f9..cc6ba61df 100644 --- a/docs/release-notes/Index.md +++ b/docs/release-notes/Index.md @@ -3,7 +3,7 @@ title: Release Notes description: Index of NuGet release notes and known issues for all versions. author: anangaur ms.author: anangaur -ms.date: 08/14/2017 +ms.date: 05/25/2022 ms.topic: conceptual --- @@ -11,6 +11,8 @@ ms.topic: conceptual [Known Issues](../release-notes/known-issues.md) +[NuGet 6.2](../release-notes/NuGet-6.2.md) + [NuGet 6.1](../release-notes/NuGet-6.1.md) [NuGet 6.0](../release-notes/NuGet-6.0.md) From 498811344db47f1a4afe53b7375cbc6c6d825d88 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Wed, 25 May 2022 18:52:00 -0500 Subject: [PATCH 589/988] Update TOC --- docs/TOC.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/TOC.md b/docs/TOC.md index d6ffa0b08..254b26e93 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -313,6 +313,7 @@ ### [Known Issues](release-notes/known-issues.md) ### NuGet 6.x +#### [NuGet 6.2](release-notes/NuGet-6.2.md) #### [NuGet 6.1](release-notes/NuGet-6.1.md) #### [NuGet 6.0](release-notes/NuGet-6.0.md) ### NuGet 5.x From 281194291c96abd1f9e20621913ad619a96a3367 Mon Sep 17 00:00:00 2001 From: Arturo Ortiz <58537168+aortiz-msft@users.noreply.github.com> Date: Thu, 26 May 2022 13:40:52 -0700 Subject: [PATCH 590/988] Update NuGet-6.2.md --- docs/release-notes/NuGet-6.2.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/docs/release-notes/NuGet-6.2.md b/docs/release-notes/NuGet-6.2.md index bab284d21..9f4606ace 100644 --- a/docs/release-notes/NuGet-6.2.md +++ b/docs/release-notes/NuGet-6.2.md @@ -39,11 +39,9 @@ NuGet distribution vehicles: * AutoCompleteResourceV3 does not use the supplied logger - [#11272](https://github.com/NuGet/Home/issues/11272) -* [DCR]: Mitigate missing nuget.org when non-NuGet tool creates nuget.config without any sources - [#11387](https://github.com/NuGet/Home/issues/11387) - * Add Author to the tooltip for a package in the packages list of PM UI - [#11499](https://github.com/NuGet/Home/issues/11499) -* Remove NU5049 - [#11598](https://github.com/NuGet/Home/issues/11598) +* Remove unused code NU5049 - [#11598](https://github.com/NuGet/Home/issues/11598) **Bugs:** From 7357da0bccc6a66f5098ee86bfda7c47942021f8 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Tue, 14 Jun 2022 12:47:35 -0500 Subject: [PATCH 591/988] Add 6.2.1 Release Notes --- docs/release-notes/NuGet-6.2.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-6.2.md b/docs/release-notes/NuGet-6.2.md index 9f4606ace..45cdb2fc2 100644 --- a/docs/release-notes/NuGet-6.2.md +++ b/docs/release-notes/NuGet-6.2.md @@ -14,8 +14,13 @@ NuGet distribution vehicles: | NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | |:---|:---|:---| | [**6.2.0**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.2](https://visualstudio.microsoft.com/downloads/) | [6.0.300](https://dotnet.microsoft.com/download/dotnet-core/6.0)1 | +| [**6.2.1**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.2.4](https://visualstudio.microsoft.com/downloads/) | [6.0.301](https://dotnet.microsoft.com/download/dotnet-core/6.0)1 | -1 Installed with Visual Studio 2022 with.NET Core workload +1 Installed with Visual Studio 2022 with .NET Core workload + +## Summary: What's New in 6.2.1 + +* [Security]: Microsoft Security Advisory CVE 2022-30184 | .NET Information Disclosure Vulnerability - [#62](https://github.com/NuGet/Announcements/issues/62) ## Summary: What's New in 6.2 From 79a0141abc5b993ce04149f8507119b9be5e2821 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Tue, 14 Jun 2022 12:49:06 -0500 Subject: [PATCH 592/988] Update links --- docs/release-notes/NuGet-6.2.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/NuGet-6.2.md b/docs/release-notes/NuGet-6.2.md index 45cdb2fc2..c12868d55 100644 --- a/docs/release-notes/NuGet-6.2.md +++ b/docs/release-notes/NuGet-6.2.md @@ -20,7 +20,7 @@ NuGet distribution vehicles: ## Summary: What's New in 6.2.1 -* [Security]: Microsoft Security Advisory CVE 2022-30184 | .NET Information Disclosure Vulnerability - [#62](https://github.com/NuGet/Announcements/issues/62) +* [Security]: Microsoft Security Advisory CVE 2022-30184 | .NET Information Disclosure Vulnerability - [#11883](https://github.com/NuGet/Home/issues/11883) ## Summary: What's New in 6.2 From da289e67891b25be336a2abfcdfd12d497bc3283 Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Thu, 16 Jun 2022 13:13:56 -0700 Subject: [PATCH 593/988] Add 5.9 release notes (#2780) --- docs/release-notes/NuGet-5.9.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docs/release-notes/NuGet-5.9.md b/docs/release-notes/NuGet-5.9.md index 37ce981e8..a11ec7f91 100644 --- a/docs/release-notes/NuGet-5.9.md +++ b/docs/release-notes/NuGet-5.9.md @@ -15,12 +15,17 @@ NuGet distribution vehicles: |:---|:---|:---| | [**5.9.0**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.9](https://visualstudio.microsoft.com/downloads/) | [5.0.200](https://dotnet.microsoft.com/download/dotnet-core/5.0)1 | | [**5.9.1**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.9](https://visualstudio.microsoft.com/downloads/) | [5.0.202](https://dotnet.microsoft.com/download/dotnet-core/5.0)1 | +| [**5.9.2**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.9.22](https://visualstudio.microsoft.com/downloads/) | n/a | 1 Installed with Visual Studio 2019 with .NET Core workload > [!NOTE] > Visual Studio 16.9, MSBuild 16.9, and .NET 5.0.200+ requires NuGet.exe 5.9 or later. +## Summary: What's New in 5.9.2 + +* [Security]: Microsoft Security Advisory CVE 2022-30184 | .NET Information Disclosure Vulnerability - [#11883](https://github.com/NuGet/Home/issues/1188 + ## Summary: What's New in 5.9 * Add "Update" context menu item for package dependencies that launches Package Manager UI with preselected packages to update - [#10378](https://github.com/NuGet/Home/issues/10378) From e58560fdcdbc3a70e0e6f5ee993b6ba7c458bfed Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Thu, 16 Jun 2022 13:15:17 -0700 Subject: [PATCH 594/988] Add 6.0.2 release notes (#2774) --- docs/release-notes/NuGet-6.0.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/release-notes/NuGet-6.0.md b/docs/release-notes/NuGet-6.0.md index 85446cad0..775ca3fb5 100644 --- a/docs/release-notes/NuGet-6.0.md +++ b/docs/release-notes/NuGet-6.0.md @@ -15,11 +15,15 @@ NuGet distribution vehicles: |:---|:---|:---| | [**6.0.0**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.0.0](https://visualstudio.microsoft.com/downloads/) | [6.0.0](https://dotnet.microsoft.com/download/dotnet-core/6.0)1 | | **6.0.1** | [Visual Studio 2022 version 17.0.2](https://visualstudio.microsoft.com/downloads/) | N/A | +| [**6.0.2**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.0.11](https://visualstudio.microsoft.com/downloads/) | [6.0.301](https://dotnet.microsoft.com/download/dotnet-core/6.0)1 | 1 Installed with Visual Studio 2022 with.NET Core workload > [!NOTE] > Visual Studio 17.0, MSBuild 17.0, and .NET 6.0 require NuGet.exe 6.0 or later. +## Summary: What's New in 6.0.2 + +* [Security]: Microsoft Security Advisory CVE 2022-30184 | .NET Information Disclosure Vulnerability - [#11883](https://github.com/NuGet/Home/issues/11883) ## Summary: What's New in 6.0.0 From ef3c93cd94c804a91e93375233bd310f13037046 Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Thu, 16 Jun 2022 13:15:35 -0700 Subject: [PATCH 595/988] Add 5.11 release notes (#2775) --- docs/release-notes/NuGet-5.11.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docs/release-notes/NuGet-5.11.md b/docs/release-notes/NuGet-5.11.md index a6aa5a591..0a9d61c77 100644 --- a/docs/release-notes/NuGet-5.11.md +++ b/docs/release-notes/NuGet-5.11.md @@ -14,12 +14,17 @@ NuGet distribution vehicles: | NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | |:---|:---|:---| | [**5.11.0**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.11](https://visualstudio.microsoft.com/downloads/) | [5.0.400](https://dotnet.microsoft.com/download/dotnet-core/5.0)1 | +| [**5.11.2**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.11.16](https://visualstudio.microsoft.com/downloads/) | N/A | 1 Installed with Visual Studio 2019 with .NET Core workload > [!NOTE] > Visual Studio 16.11, MSBuild 16.11, and .NET 5.0.400+ requires NuGet.exe 5.11 or later. +## Summary: What's New in 5.11.2 + +* [Security]: Microsoft Security Advisory CVE 2022-30184 | .NET Information Disclosure Vulnerability - [#11883](https://github.com/NuGet/Home/issues/1188 + ## Summary: What's New in 5.11 ### Issues fixed in this release From 22677ce53eee32ff5a8668c344d348f2eb9472c7 Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Thu, 16 Jun 2022 13:15:51 -0700 Subject: [PATCH 596/988] Add 5.7 release notes (#2776) --- docs/release-notes/NuGet-5.7.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docs/release-notes/NuGet-5.7.md b/docs/release-notes/NuGet-5.7.md index cd8cf91bf..76b948a58 100644 --- a/docs/release-notes/NuGet-5.7.md +++ b/docs/release-notes/NuGet-5.7.md @@ -15,9 +15,14 @@ NuGet distribution vehicles: |:---|:---|:---| | [**5.7.0**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.7](https://visualstudio.microsoft.com/downloads/) | [3.1.401](https://dotnet.microsoft.com/download/dotnet-core/3.1)1 | | [**5.7.1**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.7](https://visualstudio.microsoft.com/downloads/) | [3.1.408](https://dotnet.microsoft.com/download/dotnet-core/3.1)1 | +| [**5.7.2**](https://nuget.org/downloads) | N/A | [3.1.420](https://dotnet.microsoft.com/download/dotnet-core/3.1)1 | 1 Installed with Visual Studio 2019 with .NET Core workload +## Summary: What's New in 5.7.2 + +* [Security]: Microsoft Security Advisory CVE 2022-30184 | .NET Information Disclosure Vulnerability - [#11883](https://github.com/NuGet/Home/issues/1188 + ## Summary: What's New in 5.7 ### Features added in this release From b29cc746faedbdad2716640861e64d142d4bdfa4 Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Thu, 16 Jun 2022 13:16:06 -0700 Subject: [PATCH 597/988] Add 4.9 release notes (#2777) --- docs/release-notes/NuGet-4.9-RTM.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/release-notes/NuGet-4.9-RTM.md b/docs/release-notes/NuGet-4.9-RTM.md index c139a7823..0d64ef6c0 100644 --- a/docs/release-notes/NuGet-4.9-RTM.md +++ b/docs/release-notes/NuGet-4.9-RTM.md @@ -17,7 +17,11 @@ NuGet distribution vehicles: | [**4.9.1**](https://nuget.org/downloads) | n/a | n/a | | [**4.9.2**](https://nuget.org/downloads) |[Visual Studio 2017 version 15.9.4](https://visualstudio.microsoft.com/downloads/) | [2.1.502, 2.2.101](https://www.microsoft.com/net/download/visual-studio-sdks) | | [**4.9.3**](https://nuget.org/downloads) |[Visual Studio 2017 version 15.9.6](https://visualstudio.microsoft.com/downloads/) | [2.1.504, 2.2.104](https://www.microsoft.com/net/download/visual-studio-sdks) | +| [**4.9.5**](https://nuget.org/downloads) |n/a| n/a [.NET Core 2.1 is out of support as of August 21, 2021](https://dotnet.microsoft.com/platform/support/policy/dotnet-core) +## Summary: What's New in 4.9.5 + +* [Security]: Microsoft Security Advisory CVE 2022-30184 | .NET Information Disclosure Vulnerability - [#11883](https://github.com/NuGet/Home/issues/11883) ## Summary: What's New in 4.9.0 From 22557cf0e01fc5902beffbf29cbe352139dddfb6 Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Thu, 16 Jun 2022 13:16:21 -0700 Subject: [PATCH 598/988] Add 5.2 release notes (#2778) --- docs/release-notes/NuGet-5.2-RTM.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docs/release-notes/NuGet-5.2-RTM.md b/docs/release-notes/NuGet-5.2-RTM.md index d08c67711..f02714365 100644 --- a/docs/release-notes/NuGet-5.2-RTM.md +++ b/docs/release-notes/NuGet-5.2-RTM.md @@ -14,11 +14,16 @@ NuGet distribution vehicles: | NuGet version | Available in Visual Studio version| Available in .NET SDK(s)| |:---|:---|:---| | [**5.2.0**](https://nuget.org/downloads) | [Visual Studio 2019 version 16.2](https://visualstudio.microsoft.com/downloads/) | [2.1.80X](https://dotnet.microsoft.com/download/dotnet-core/2.1)1, [2.2.40X](https://dotnet.microsoft.com/download/dotnet-core/2.2)2 | +| [**5.2.1**](https://nuget.org/downloads) | n/a | n/a [.NET Core 2.2 is out of support as of December 23, 2019](https://dotnet.microsoft.com/platform/support/policy/dotnet-core) | 1Installed with Visual Studio 2019 with .NET Core workload 2Available as an optional install with Visual Studio 2019 with .NET Core workload +## Summary: What's New in 5.2.1 + +* [Security]: Microsoft Security Advisory CVE 2022-30184 | .NET Information Disclosure Vulnerability - [#11883](https://github.com/NuGet/Home/issues/11883) + ## Summary: What's New in 5.2 * Fixed a critical bug that caused occasional NuGet operation failures due to path issues on Linux & Mac - [#7341](https://github.com/NuGet/Home/issues/7341) From 30729ea658572dd3a4d26d988b62cab8ca56b6be Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Fri, 17 Jun 2022 13:49:20 -0700 Subject: [PATCH 599/988] Update cli-ref-push.md --- docs/reference/cli-reference/cli-ref-push.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/docs/reference/cli-reference/cli-ref-push.md b/docs/reference/cli-reference/cli-ref-push.md index 769566f9d..3abb87310 100644 --- a/docs/reference/cli-reference/cli-ref-push.md +++ b/docs/reference/cli-reference/cli-ref-push.md @@ -30,7 +30,8 @@ where `` identifies the package to push to the server. - **`-ApiKey`** - The API key for the target repository. If not present, the one specified in the config file is used. + The API key for the target repository. If not present, the one specified in the config file is used. + - Azure DevOps Artifacts feeds doesn't accept PAT(personal access tokens) passed directly in cli as apikey. For dev box, you need have the [cred provider](https://github.com/microsoft/artifacts-credprovider) installed and that would work for both push and download. For CI, you need use the NuGet Authenticate task for Azure DevOps. - **`-ConfigFile`** @@ -108,4 +109,7 @@ nuget push foo.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://customsou :: In the example below -SkipDuplicate will skip pushing the package if package "Foo" version "5.0.2" already exists on NuGet.org nuget push Foo.5.0.2.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://api.nuget.org/v3/index.json -SkipDuplicate + +:: In the example below AZ is just random placeholder for ApiKey pushing "Foo" version "5.0.2" to Azure DevOps Artifacts, you need to you need have the [cred provider](https://github.com/microsoft/artifacts-credprovider) installed for authentication to work. +nuget push Foo.5.0.2.nupkg -src https://dev.azure.com/yourAzureDevOpsFeed/nuget/v3/index.json AZ ``` From 37c7832b62f7ad6d3083efd7cc150e9ab28b1250 Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Fri, 17 Jun 2022 14:01:26 -0700 Subject: [PATCH 600/988] Update cli-ref-push.md --- docs/reference/cli-reference/cli-ref-push.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/cli-reference/cli-ref-push.md b/docs/reference/cli-reference/cli-ref-push.md index 3abb87310..a8dcc4f43 100644 --- a/docs/reference/cli-reference/cli-ref-push.md +++ b/docs/reference/cli-reference/cli-ref-push.md @@ -110,6 +110,6 @@ nuget push foo.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://customsou :: In the example below -SkipDuplicate will skip pushing the package if package "Foo" version "5.0.2" already exists on NuGet.org nuget push Foo.5.0.2.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://api.nuget.org/v3/index.json -SkipDuplicate -:: In the example below AZ is just random placeholder for ApiKey pushing "Foo" version "5.0.2" to Azure DevOps Artifacts, you need to you need have the [cred provider](https://github.com/microsoft/artifacts-credprovider) installed for authentication to work. +:: In the example below AZ is just a placeholder for ApiKey when pushing "Foo" version "5.0.2" to Azure DevOps Artifacts, this prevents authentication fail prematurely, also you need have the [cred provider](https://github.com/microsoft/artifacts-credprovider) installed for Azure authentication to work. nuget push Foo.5.0.2.nupkg -src https://dev.azure.com/yourAzureDevOpsFeed/nuget/v3/index.json AZ ``` From f07aa29ff5725ddd5587fc0b951e9ef9c9442c37 Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Fri, 17 Jun 2022 14:02:56 -0700 Subject: [PATCH 601/988] Update cli-ref-push.md --- docs/reference/cli-reference/cli-ref-push.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/reference/cli-reference/cli-ref-push.md b/docs/reference/cli-reference/cli-ref-push.md index a8dcc4f43..5ce62126b 100644 --- a/docs/reference/cli-reference/cli-ref-push.md +++ b/docs/reference/cli-reference/cli-ref-push.md @@ -31,7 +31,7 @@ where `` identifies the package to push to the server. - **`-ApiKey`** The API key for the target repository. If not present, the one specified in the config file is used. - - Azure DevOps Artifacts feeds doesn't accept PAT(personal access tokens) passed directly in cli as apikey. For dev box, you need have the [cred provider](https://github.com/microsoft/artifacts-credprovider) installed and that would work for both push and download. For CI, you need use the NuGet Authenticate task for Azure DevOps. + - Azure DevOps Artifacts feeds doesn't accept PAT(personal access tokens) passed directly in cli as apikey. For dev box, you need have the [cred provider](https://github.com/microsoft/artifacts-credprovider) installed and that would work for both push and download (see example below). For CI, you need use the NuGet Authenticate task for Azure DevOps. - **`-ConfigFile`** @@ -110,6 +110,6 @@ nuget push foo.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://customsou :: In the example below -SkipDuplicate will skip pushing the package if package "Foo" version "5.0.2" already exists on NuGet.org nuget push Foo.5.0.2.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://api.nuget.org/v3/index.json -SkipDuplicate -:: In the example below AZ is just a placeholder for ApiKey when pushing "Foo" version "5.0.2" to Azure DevOps Artifacts, this prevents authentication fail prematurely, also you need have the [cred provider](https://github.com/microsoft/artifacts-credprovider) installed for Azure authentication to work. +:: In the example below AZ is just a placeholder for ApiKey when pushing "Foo" version "5.0.2" to Azure DevOps Artifacts, this prevents authentication fail prematurely, in order to authentication to work you need to install [cred provider](https://github.com/microsoft/artifacts-credprovider). nuget push Foo.5.0.2.nupkg -src https://dev.azure.com/yourAzureDevOpsFeed/nuget/v3/index.json AZ ``` From 3799dd131ce46615b9501c5d496e7b089363a1ba Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Fri, 17 Jun 2022 14:05:31 -0700 Subject: [PATCH 602/988] Update cli-ref-push.md --- docs/reference/cli-reference/cli-ref-push.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/cli-reference/cli-ref-push.md b/docs/reference/cli-reference/cli-ref-push.md index 5ce62126b..2e702de1b 100644 --- a/docs/reference/cli-reference/cli-ref-push.md +++ b/docs/reference/cli-reference/cli-ref-push.md @@ -110,6 +110,6 @@ nuget push foo.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://customsou :: In the example below -SkipDuplicate will skip pushing the package if package "Foo" version "5.0.2" already exists on NuGet.org nuget push Foo.5.0.2.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://api.nuget.org/v3/index.json -SkipDuplicate -:: In the example below AZ is just a placeholder for ApiKey when pushing "Foo" version "5.0.2" to Azure DevOps Artifacts, this prevents authentication fail prematurely, in order to authentication to work you need to install [cred provider](https://github.com/microsoft/artifacts-credprovider). +:: In the example below AZ is just a placeholder for ApiKey when pushing "Foo" version "5.0.2" to Azure DevOps Artifacts, this prevents authentication fail prematurely, in order to authentication to work you need to install [cred provider](https://github.com/microsoft/artifacts-credprovider). Below command trigger open Cred Provider window if authentication is necessary. nuget push Foo.5.0.2.nupkg -src https://dev.azure.com/yourAzureDevOpsFeed/nuget/v3/index.json AZ ``` From 0ec3ed33a7459a0b20b826298d9278eb58e98ebe Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Fri, 17 Jun 2022 14:07:12 -0700 Subject: [PATCH 603/988] Update cli-ref-push.md --- docs/reference/cli-reference/cli-ref-push.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/cli-reference/cli-ref-push.md b/docs/reference/cli-reference/cli-ref-push.md index 2e702de1b..1ba1c4fc9 100644 --- a/docs/reference/cli-reference/cli-ref-push.md +++ b/docs/reference/cli-reference/cli-ref-push.md @@ -110,6 +110,6 @@ nuget push foo.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://customsou :: In the example below -SkipDuplicate will skip pushing the package if package "Foo" version "5.0.2" already exists on NuGet.org nuget push Foo.5.0.2.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://api.nuget.org/v3/index.json -SkipDuplicate -:: In the example below AZ is just a placeholder for ApiKey when pushing "Foo" version "5.0.2" to Azure DevOps Artifacts, this prevents authentication fail prematurely, in order to authentication to work you need to install [cred provider](https://github.com/microsoft/artifacts-credprovider). Below command trigger open Cred Provider window if authentication is necessary. +:: In the example below AZ is just a placeholder for ApiKey when pushing "Foo" version "5.0.2" to Azure DevOps Artifacts, this prevents authentication fail prematurely, in order to authentication to work you need to install [cred provider](https://github.com/microsoft/artifacts-credprovider). Below command trigger open Cred Provider window if authentication is necessary, it's not suitable for CI. nuget push Foo.5.0.2.nupkg -src https://dev.azure.com/yourAzureDevOpsFeed/nuget/v3/index.json AZ ``` From c452afab48e9220476e316fdcfbe8643d2c95da8 Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Fri, 17 Jun 2022 15:32:40 -0700 Subject: [PATCH 604/988] Update cli-ref-push.md --- docs/reference/cli-reference/cli-ref-push.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/reference/cli-reference/cli-ref-push.md b/docs/reference/cli-reference/cli-ref-push.md index 1ba1c4fc9..0dfaf5cb7 100644 --- a/docs/reference/cli-reference/cli-ref-push.md +++ b/docs/reference/cli-reference/cli-ref-push.md @@ -31,7 +31,7 @@ where `` identifies the package to push to the server. - **`-ApiKey`** The API key for the target repository. If not present, the one specified in the config file is used. - - Azure DevOps Artifacts feeds doesn't accept PAT(personal access tokens) passed directly in cli as apikey. For dev box, you need have the [cred provider](https://github.com/microsoft/artifacts-credprovider) installed and that would work for both push and download (see example below). For CI, you need use the NuGet Authenticate task for Azure DevOps. + - Azure DevOps Artifacts feeds doesn't accept PAT(personal access tokens) passed directly in cli as apikey. For dev box, you need have the [cred provider](https://github.com/microsoft/artifacts-credprovider) installed and that would work for both push and download (see example below). For CI, you need use the [NuGet Authenticate](https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/package/nuget-authenticate?view=azure-devops) task with NuGet service connection for both internal and external Azure DevOps Artifacts. - **`-ConfigFile`** @@ -110,6 +110,6 @@ nuget push foo.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://customsou :: In the example below -SkipDuplicate will skip pushing the package if package "Foo" version "5.0.2" already exists on NuGet.org nuget push Foo.5.0.2.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://api.nuget.org/v3/index.json -SkipDuplicate -:: In the example below AZ is just a placeholder for ApiKey when pushing "Foo" version "5.0.2" to Azure DevOps Artifacts, this prevents authentication fail prematurely, in order to authentication to work you need to install [cred provider](https://github.com/microsoft/artifacts-credprovider). Below command trigger open Cred Provider window if authentication is necessary, it's not suitable for CI. +:: In the example below AZ is just a placeholder for ApiKey when pushing "Foo" version "5.0.2" to Azure DevOps Artifacts, this prevents authentication fail prematurely, in order to authentication to work you need to install [cred provider](https://github.com/microsoft/artifacts-credprovider). Below command trigger open Cred Provider window if authentication is necessary, it's not suitable for CI. For CI use [NuGet Authenticate task](https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/package/nuget-authenticate?view=azure-devops) with NuGet service connection. nuget push Foo.5.0.2.nupkg -src https://dev.azure.com/yourAzureDevOpsFeed/nuget/v3/index.json AZ ``` From ff73e0a2cc6941658c5359da620566c613b03553 Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Fri, 17 Jun 2022 15:49:57 -0700 Subject: [PATCH 605/988] Update cli-ref-push.md --- docs/reference/cli-reference/cli-ref-push.md | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/docs/reference/cli-reference/cli-ref-push.md b/docs/reference/cli-reference/cli-ref-push.md index 0dfaf5cb7..019747bf3 100644 --- a/docs/reference/cli-reference/cli-ref-push.md +++ b/docs/reference/cli-reference/cli-ref-push.md @@ -31,7 +31,7 @@ where `` identifies the package to push to the server. - **`-ApiKey`** The API key for the target repository. If not present, the one specified in the config file is used. - - Azure DevOps Artifacts feeds doesn't accept PAT(personal access tokens) passed directly in cli as apikey. For dev box, you need have the [cred provider](https://github.com/microsoft/artifacts-credprovider) installed and that would work for both push and download (see example below). For CI, you need use the [NuGet Authenticate](https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/package/nuget-authenticate?view=azure-devops) task with NuGet service connection for both internal and external Azure DevOps Artifacts. + - Azure DevOps Artifacts feeds doesn't accept PAT(personal access tokens) passed directly in cli as apikey. For dev box, you need have the [cred provider](https://github.com/microsoft/artifacts-credprovider) installed and that would work for both push and download (see examples section). For CI, you need use the [NuGet Authenticate](https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/package/nuget-authenticate?view=azure-devops) task with NuGet service connection for both push to internal and external Azure DevOps Artifacts. - **`-ConfigFile`** @@ -110,6 +110,16 @@ nuget push foo.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://customsou :: In the example below -SkipDuplicate will skip pushing the package if package "Foo" version "5.0.2" already exists on NuGet.org nuget push Foo.5.0.2.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://api.nuget.org/v3/index.json -SkipDuplicate -:: In the example below AZ is just a placeholder for ApiKey when pushing "Foo" version "5.0.2" to Azure DevOps Artifacts, this prevents authentication fail prematurely, in order to authentication to work you need to install [cred provider](https://github.com/microsoft/artifacts-credprovider). Below command trigger open Cred Provider window if authentication is necessary, it's not suitable for CI. For CI use [NuGet Authenticate task](https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/package/nuget-authenticate?view=azure-devops) with NuGet service connection. +:: In the example below pushing "Foo" version "5.0.2" to Azure DevOps Artifacts from dev box, here AZ is just a placeholder for ApiKey, this prevents authentication fail prematurely, in order to authentication to work you need to install [cred provider](https://github.com/microsoft/artifacts-credprovider). Below command trigger open Cred Provider window if authentication is necessary, it's suitable for pushing from dev box, but not for CI. nuget push Foo.5.0.2.nupkg -src https://dev.azure.com/yourAzureDevOpsFeed/nuget/v3/index.json AZ + +:: In the example below pushing "Foo" version "5.0.2" to Azure DevOps Artifacts from CI, here AZ is just a placeholder for ApiKey, this prevents authentication fail prematurely. You need to setup [NuGet Authenticate task](https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/package/nuget-authenticate?view=azure-devops) with NuGet service connection for authenticate with external Azure DevOps Artifacts server. + + - task: NuGetAuthenticate@1 + inputs: + nuGetServiceConnections: MyServiceConnection_ExternalServer + + - powershell: | + nuget push *.nupkg -source https://pkgs.dev.azure.com/{organization}/{project}/_packaging/{feed}/nuget/v3/index.json AZ + displayName: "Push" ``` From 75afcd40b43f90e5bf80e65a5da26b501f2ee137 Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Fri, 17 Jun 2022 15:53:17 -0700 Subject: [PATCH 606/988] Update cli-ref-push.md --- docs/reference/cli-reference/cli-ref-push.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/reference/cli-reference/cli-ref-push.md b/docs/reference/cli-reference/cli-ref-push.md index 019747bf3..fc45ecd26 100644 --- a/docs/reference/cli-reference/cli-ref-push.md +++ b/docs/reference/cli-reference/cli-ref-push.md @@ -31,7 +31,7 @@ where `` identifies the package to push to the server. - **`-ApiKey`** The API key for the target repository. If not present, the one specified in the config file is used. - - Azure DevOps Artifacts feeds doesn't accept PAT(personal access tokens) passed directly in cli as apikey. For dev box, you need have the [cred provider](https://github.com/microsoft/artifacts-credprovider) installed and that would work for both push and download (see examples section). For CI, you need use the [NuGet Authenticate](https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/package/nuget-authenticate?view=azure-devops) task with NuGet service connection for both push to internal and external Azure DevOps Artifacts. + - Azure DevOps Artifacts feeds doesn't accept PAT(personal access tokens) passed directly in cli as apikey. For dev box, you need have the [cred provider](https://github.com/microsoft/artifacts-credprovider) installed and that would work for both push and download (see examples section). For CI, you need use the [NuGet Authenticate](https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/package/nuget-authenticate?view=azure-devops) task with [NuGet service connection](https://docs.microsoft.com/en-us/azure/devops/pipelines/library/service-endpoints?view=azure-devops&tabs=yaml#nuget-service-connection) for pushing to Azure DevOps Artifacts. - **`-ConfigFile`** @@ -113,7 +113,7 @@ nuget push Foo.5.0.2.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://api :: In the example below pushing "Foo" version "5.0.2" to Azure DevOps Artifacts from dev box, here AZ is just a placeholder for ApiKey, this prevents authentication fail prematurely, in order to authentication to work you need to install [cred provider](https://github.com/microsoft/artifacts-credprovider). Below command trigger open Cred Provider window if authentication is necessary, it's suitable for pushing from dev box, but not for CI. nuget push Foo.5.0.2.nupkg -src https://dev.azure.com/yourAzureDevOpsFeed/nuget/v3/index.json AZ -:: In the example below pushing "Foo" version "5.0.2" to Azure DevOps Artifacts from CI, here AZ is just a placeholder for ApiKey, this prevents authentication fail prematurely. You need to setup [NuGet Authenticate task](https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/package/nuget-authenticate?view=azure-devops) with NuGet service connection for authenticate with external Azure DevOps Artifacts server. +:: In the example below pushing "Foo" version "5.0.2" to Azure DevOps Artifacts from CI, here AZ is just a placeholder for ApiKey, this prevents authentication fail prematurely. You need to setup [NuGet Authenticate task](https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/package/nuget-authenticate?view=azure-devops) with [NuGet service connection](https://docs.microsoft.com/en-us/azure/devops/pipelines/library/service-endpoints?view=azure-devops&tabs=yaml#nuget-service-connection) for authenticate with external Azure DevOps Artifacts server. - task: NuGetAuthenticate@1 inputs: From 4a1c9089d776a62763cdcb3abd29e54b51d3077f Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Fri, 17 Jun 2022 16:00:28 -0700 Subject: [PATCH 607/988] Update cli-ref-push.md --- docs/reference/cli-reference/cli-ref-push.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/cli-reference/cli-ref-push.md b/docs/reference/cli-reference/cli-ref-push.md index fc45ecd26..411ae7959 100644 --- a/docs/reference/cli-reference/cli-ref-push.md +++ b/docs/reference/cli-reference/cli-ref-push.md @@ -31,7 +31,7 @@ where `` identifies the package to push to the server. - **`-ApiKey`** The API key for the target repository. If not present, the one specified in the config file is used. - - Azure DevOps Artifacts feeds doesn't accept PAT(personal access tokens) passed directly in cli as apikey. For dev box, you need have the [cred provider](https://github.com/microsoft/artifacts-credprovider) installed and that would work for both push and download (see examples section). For CI, you need use the [NuGet Authenticate](https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/package/nuget-authenticate?view=azure-devops) task with [NuGet service connection](https://docs.microsoft.com/en-us/azure/devops/pipelines/library/service-endpoints?view=azure-devops&tabs=yaml#nuget-service-connection) for pushing to Azure DevOps Artifacts. + - Azure DevOps Artifacts feeds doesn't accept PAT(personal access tokens) passed directly in cli as `-ApiKey`. For dev box, you need have the [cred provider](https://github.com/microsoft/artifacts-credprovider) installed and that would work for both push and download (see examples section). For CI, you need use the [NuGet Authenticate](https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/package/nuget-authenticate?view=azure-devops) task with [NuGet service connection](https://docs.microsoft.com/en-us/azure/devops/pipelines/library/service-endpoints?view=azure-devops&tabs=yaml#nuget-service-connection) for pushing to Azure DevOps Artifacts. - **`-ConfigFile`** From 6f213bd947025ab528c38a583a20985c7c9acba8 Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Fri, 17 Jun 2022 17:05:32 -0700 Subject: [PATCH 608/988] Update cli-ref-push.md --- docs/reference/cli-reference/cli-ref-push.md | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/docs/reference/cli-reference/cli-ref-push.md b/docs/reference/cli-reference/cli-ref-push.md index 411ae7959..437e1d1d8 100644 --- a/docs/reference/cli-reference/cli-ref-push.md +++ b/docs/reference/cli-reference/cli-ref-push.md @@ -111,15 +111,17 @@ nuget push foo.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://customsou nuget push Foo.5.0.2.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://api.nuget.org/v3/index.json -SkipDuplicate :: In the example below pushing "Foo" version "5.0.2" to Azure DevOps Artifacts from dev box, here AZ is just a placeholder for ApiKey, this prevents authentication fail prematurely, in order to authentication to work you need to install [cred provider](https://github.com/microsoft/artifacts-credprovider). Below command trigger open Cred Provider window if authentication is necessary, it's suitable for pushing from dev box, but not for CI. -nuget push Foo.5.0.2.nupkg -src https://dev.azure.com/yourAzureDevOpsFeed/nuget/v3/index.json AZ +nuget push Foo.5.0.2.nupkg -src https://pkgs.dev.azure.com/{organization}/{project}/_packaging/{feed}/nuget/v3/index.json AZ -:: In the example below pushing "Foo" version "5.0.2" to Azure DevOps Artifacts from CI, here AZ is just a placeholder for ApiKey, this prevents authentication fail prematurely. You need to setup [NuGet Authenticate task](https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/package/nuget-authenticate?view=azure-devops) with [NuGet service connection](https://docs.microsoft.com/en-us/azure/devops/pipelines/library/service-endpoints?view=azure-devops&tabs=yaml#nuget-service-connection) for authenticate with external Azure DevOps Artifacts server. +:: In the example below pushing "Foo" version "1.1.6" to Azure DevOps Artifacts from CI, here AZ is just a placeholder for ApiKey, this prevents authentication fail prematurely. You need to setup [NuGet Authenticate task](https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/package/nuget-authenticate?view=azure-devops) with [NuGet service connection](https://docs.microsoft.com/en-us/azure/devops/pipelines/library/service-endpoints?view=azure-devops&tabs=yaml#nuget-service-connection) for authenticate with external Azure DevOps Artifacts server. - - task: NuGetAuthenticate@1 - inputs: - nuGetServiceConnections: MyServiceConnection_ExternalServer - - - powershell: | - nuget push *.nupkg -source https://pkgs.dev.azure.com/{organization}/{project}/_packaging/{feed}/nuget/v3/index.json AZ - displayName: "Push" + - task: NuGetAuthenticate@1 + inputs: + nuGetServiceConnections: MyServiceConnection_ExternalServer + + - bash: | + dotnet build foo/foo.csproj -c Release + dotnet pack foo/foo.csproj /property:PackageVersion=1.1.6 -o nupkgs -c Release + nuget push nupkgs/foo.1.1.6.nupkg -src https://pkgs.dev.azure.com/{organization}/{project}/_packaging/{feed}/nuget/v3/index.json AZ + displayName: "Pack and push" ``` From fe397562aa01660977e54d882992481c0abc96de Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Fri, 17 Jun 2022 17:12:08 -0700 Subject: [PATCH 609/988] Update cli-ref-push.md --- docs/reference/cli-reference/cli-ref-push.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/reference/cli-reference/cli-ref-push.md b/docs/reference/cli-reference/cli-ref-push.md index 437e1d1d8..e9e1f871c 100644 --- a/docs/reference/cli-reference/cli-ref-push.md +++ b/docs/reference/cli-reference/cli-ref-push.md @@ -31,7 +31,7 @@ where `` identifies the package to push to the server. - **`-ApiKey`** The API key for the target repository. If not present, the one specified in the config file is used. - - Azure DevOps Artifacts feeds doesn't accept PAT(personal access tokens) passed directly in cli as `-ApiKey`. For dev box, you need have the [cred provider](https://github.com/microsoft/artifacts-credprovider) installed and that would work for both push and download (see examples section). For CI, you need use the [NuGet Authenticate](https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/package/nuget-authenticate?view=azure-devops) task with [NuGet service connection](https://docs.microsoft.com/en-us/azure/devops/pipelines/library/service-endpoints?view=azure-devops&tabs=yaml#nuget-service-connection) for pushing to Azure DevOps Artifacts. + - Azure DevOps Artifacts feeds doesn't accept PAT(personal access tokens) passed directly in cli as `-ApiKey`. For dev box, you need have the [cred provider](https://github.com/microsoft/artifacts-credprovider) installed and that would work for both push and download (see examples section). For CI, you need use the [NuGet Authenticate](https://docs.microsoft.com/azure/devops/pipelines/tasks/package/nuget-authenticate?view=azure-devops) task with [NuGet service connection](https://docs.microsoft.com/azure/devops/pipelines/library/service-endpoints?view=azure-devops&tabs=yaml#nuget-service-connection) for pushing to Azure DevOps Artifacts. - **`-ConfigFile`** @@ -113,7 +113,7 @@ nuget push Foo.5.0.2.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://api :: In the example below pushing "Foo" version "5.0.2" to Azure DevOps Artifacts from dev box, here AZ is just a placeholder for ApiKey, this prevents authentication fail prematurely, in order to authentication to work you need to install [cred provider](https://github.com/microsoft/artifacts-credprovider). Below command trigger open Cred Provider window if authentication is necessary, it's suitable for pushing from dev box, but not for CI. nuget push Foo.5.0.2.nupkg -src https://pkgs.dev.azure.com/{organization}/{project}/_packaging/{feed}/nuget/v3/index.json AZ -:: In the example below pushing "Foo" version "1.1.6" to Azure DevOps Artifacts from CI, here AZ is just a placeholder for ApiKey, this prevents authentication fail prematurely. You need to setup [NuGet Authenticate task](https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/package/nuget-authenticate?view=azure-devops) with [NuGet service connection](https://docs.microsoft.com/en-us/azure/devops/pipelines/library/service-endpoints?view=azure-devops&tabs=yaml#nuget-service-connection) for authenticate with external Azure DevOps Artifacts server. +:: In the example below pushing "Foo" version "1.1.6" to Azure DevOps Artifacts from CI, here AZ is just a placeholder for ApiKey, this prevents authentication fail prematurely. You need to setup [NuGet Authenticate task](https://docs.microsoft.com/azure/devops/pipelines/tasks/package/nuget-authenticate?view=azure-devops) with [NuGet service connection](https://docs.microsoft.com/azure/devops/pipelines/library/service-endpoints?view=azure-devops&tabs=yaml#nuget-service-connection) for authenticate with external Azure DevOps Artifacts server. - task: NuGetAuthenticate@1 inputs: From 68736f91702a4dbb16b6f3e6b7206cd69cb24a1e Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Tue, 21 Jun 2022 18:09:38 -0700 Subject: [PATCH 610/988] Update cli-ref-push.md --- docs/reference/cli-reference/cli-ref-push.md | 20 ++------------------ 1 file changed, 2 insertions(+), 18 deletions(-) diff --git a/docs/reference/cli-reference/cli-ref-push.md b/docs/reference/cli-reference/cli-ref-push.md index e9e1f871c..ed236c569 100644 --- a/docs/reference/cli-reference/cli-ref-push.md +++ b/docs/reference/cli-reference/cli-ref-push.md @@ -31,7 +31,6 @@ where `` identifies the package to push to the server. - **`-ApiKey`** The API key for the target repository. If not present, the one specified in the config file is used. - - Azure DevOps Artifacts feeds doesn't accept PAT(personal access tokens) passed directly in cli as `-ApiKey`. For dev box, you need have the [cred provider](https://github.com/microsoft/artifacts-credprovider) installed and that would work for both push and download (see examples section). For CI, you need use the [NuGet Authenticate](https://docs.microsoft.com/azure/devops/pipelines/tasks/package/nuget-authenticate?view=azure-devops) task with [NuGet service connection](https://docs.microsoft.com/azure/devops/pipelines/library/service-endpoints?view=azure-devops&tabs=yaml#nuget-service-connection) for pushing to Azure DevOps Artifacts. - **`-ConfigFile`** @@ -107,21 +106,6 @@ nuget push foo.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a nuget push foo.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://customsource/ -:: In the example below -SkipDuplicate will skip pushing the package if package "Foo" version "5.0.2" already exists on NuGet.org -nuget push Foo.5.0.2.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://api.nuget.org/v3/index.json -SkipDuplicate - -:: In the example below pushing "Foo" version "5.0.2" to Azure DevOps Artifacts from dev box, here AZ is just a placeholder for ApiKey, this prevents authentication fail prematurely, in order to authentication to work you need to install [cred provider](https://github.com/microsoft/artifacts-credprovider). Below command trigger open Cred Provider window if authentication is necessary, it's suitable for pushing from dev box, but not for CI. -nuget push Foo.5.0.2.nupkg -src https://pkgs.dev.azure.com/{organization}/{project}/_packaging/{feed}/nuget/v3/index.json AZ - -:: In the example below pushing "Foo" version "1.1.6" to Azure DevOps Artifacts from CI, here AZ is just a placeholder for ApiKey, this prevents authentication fail prematurely. You need to setup [NuGet Authenticate task](https://docs.microsoft.com/azure/devops/pipelines/tasks/package/nuget-authenticate?view=azure-devops) with [NuGet service connection](https://docs.microsoft.com/azure/devops/pipelines/library/service-endpoints?view=azure-devops&tabs=yaml#nuget-service-connection) for authenticate with external Azure DevOps Artifacts server. - - - task: NuGetAuthenticate@1 - inputs: - nuGetServiceConnections: MyServiceConnection_ExternalServer - - - bash: | - dotnet build foo/foo.csproj -c Release - dotnet pack foo/foo.csproj /property:PackageVersion=1.1.6 -o nupkgs -c Release - nuget push nupkgs/foo.1.1.6.nupkg -src https://pkgs.dev.azure.com/{organization}/{project}/_packaging/{feed}/nuget/v3/index.json AZ - displayName: "Pack and push" ``` + +- For Azure DevOps Artifacts push examples, see [Azure Devops examples](https://docs.microsoft.com/en-us/azure/devops/artifacts/nuget/publish?view=azure-devops#examples). From fd451ee02c564be9b2743b31f69b7a698c47a454 Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Tue, 21 Jun 2022 18:10:32 -0700 Subject: [PATCH 611/988] Update cli-ref-push.md --- docs/reference/cli-reference/cli-ref-push.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/reference/cli-reference/cli-ref-push.md b/docs/reference/cli-reference/cli-ref-push.md index ed236c569..bd77831b2 100644 --- a/docs/reference/cli-reference/cli-ref-push.md +++ b/docs/reference/cli-reference/cli-ref-push.md @@ -30,7 +30,7 @@ where `` identifies the package to push to the server. - **`-ApiKey`** - The API key for the target repository. If not present, the one specified in the config file is used. + The API key for the target repository. If not present, the one specified in the config file is used. - **`-ConfigFile`** @@ -106,6 +106,8 @@ nuget push foo.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a nuget push foo.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://customsource/ +:: In the example below -SkipDuplicate will skip pushing the package if package "Foo" version "5.0.2" already exists on NuGet.org +nuget push Foo.5.0.2.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://api.nuget.org/v3/index.json -SkipDuplicate ``` - For Azure DevOps Artifacts push examples, see [Azure Devops examples](https://docs.microsoft.com/en-us/azure/devops/artifacts/nuget/publish?view=azure-devops#examples). From ccce2e3caa5b1aa4c9869fbd95ec8e173fc6fba7 Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Wed, 22 Jun 2022 13:42:28 -0700 Subject: [PATCH 612/988] Address PR comment --- docs/reference/cli-reference/cli-ref-push.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/cli-reference/cli-ref-push.md b/docs/reference/cli-reference/cli-ref-push.md index bd77831b2..0504ddccf 100644 --- a/docs/reference/cli-reference/cli-ref-push.md +++ b/docs/reference/cli-reference/cli-ref-push.md @@ -110,4 +110,4 @@ nuget push foo.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://customsou nuget push Foo.5.0.2.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://api.nuget.org/v3/index.json -SkipDuplicate ``` -- For Azure DevOps Artifacts push examples, see [Azure Devops examples](https://docs.microsoft.com/en-us/azure/devops/artifacts/nuget/publish?view=azure-devops#examples). +- For Azure Artifacts push examples, see [Azure Devops examples](https://docs.microsoft.com/azure/devops/artifacts/nuget/publish?view=azure-devops#examples). From 90831f14f768cab948e6542c1b7ee5801ea528ed Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Wed, 22 Jun 2022 13:46:39 -0700 Subject: [PATCH 613/988] Update cli-ref-push.md --- docs/reference/cli-reference/cli-ref-push.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/cli-reference/cli-ref-push.md b/docs/reference/cli-reference/cli-ref-push.md index 0504ddccf..4c5be7845 100644 --- a/docs/reference/cli-reference/cli-ref-push.md +++ b/docs/reference/cli-reference/cli-ref-push.md @@ -110,4 +110,4 @@ nuget push foo.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://customsou nuget push Foo.5.0.2.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://api.nuget.org/v3/index.json -SkipDuplicate ``` -- For Azure Artifacts push examples, see [Azure Devops examples](https://docs.microsoft.com/azure/devops/artifacts/nuget/publish?view=azure-devops#examples). +- For Azure Artifacts push examples, see [Azure Artifacts' examples](https://docs.microsoft.com/azure/devops/artifacts/nuget/publish?view=azure-devops#examples). From dfedf54d03f96aff53ab23080f14f2d57b9cd1d4 Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Wed, 22 Jun 2022 19:12:20 -0700 Subject: [PATCH 614/988] Take suggestion Co-authored-by: Nikolche Kolev --- docs/reference/cli-reference/cli-ref-push.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/cli-reference/cli-ref-push.md b/docs/reference/cli-reference/cli-ref-push.md index 4c5be7845..3c0bf4488 100644 --- a/docs/reference/cli-reference/cli-ref-push.md +++ b/docs/reference/cli-reference/cli-ref-push.md @@ -110,4 +110,4 @@ nuget push foo.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://customsou nuget push Foo.5.0.2.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://api.nuget.org/v3/index.json -SkipDuplicate ``` -- For Azure Artifacts push examples, see [Azure Artifacts' examples](https://docs.microsoft.com/azure/devops/artifacts/nuget/publish?view=azure-devops#examples). +- For pushing to Azure Artifacts, [see Azure Artifacts' push documentation](https://docs.microsoft.com/azure/devops/artifacts/nuget/publish?view=azure-devops#examples). From c533142698be7436f9d45285cd1e24756e08ac47 Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Wed, 22 Jun 2022 22:00:02 -0700 Subject: [PATCH 615/988] Fix relative path --- docs/reference/cli-reference/cli-ref-push.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/cli-reference/cli-ref-push.md b/docs/reference/cli-reference/cli-ref-push.md index 3c0bf4488..5c6f93c95 100644 --- a/docs/reference/cli-reference/cli-ref-push.md +++ b/docs/reference/cli-reference/cli-ref-push.md @@ -110,4 +110,4 @@ nuget push foo.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://customsou nuget push Foo.5.0.2.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://api.nuget.org/v3/index.json -SkipDuplicate ``` -- For pushing to Azure Artifacts, [see Azure Artifacts' push documentation](https://docs.microsoft.com/azure/devops/artifacts/nuget/publish?view=azure-devops#examples). +- For pushing to Azure Artifacts, [see Azure Artifacts' push documentation](../../../azure/devops/artifacts/nuget/publish?view=azure-devops#examples). From 74d9a5629917dab13090750abcb037be45e2def1 Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Wed, 22 Jun 2022 22:08:14 -0700 Subject: [PATCH 616/988] Update cli-ref-push.md --- docs/reference/cli-reference/cli-ref-push.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/cli-reference/cli-ref-push.md b/docs/reference/cli-reference/cli-ref-push.md index 5c6f93c95..911ea5a03 100644 --- a/docs/reference/cli-reference/cli-ref-push.md +++ b/docs/reference/cli-reference/cli-ref-push.md @@ -110,4 +110,4 @@ nuget push foo.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://customsou nuget push Foo.5.0.2.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://api.nuget.org/v3/index.json -SkipDuplicate ``` -- For pushing to Azure Artifacts, [see Azure Artifacts' push documentation](../../../azure/devops/artifacts/nuget/publish?view=azure-devops#examples). +- For pushing to Azure Artifacts, [see Azure Artifacts' push documentation](../../../azure/devops/artifacts/nuget/publish.md?view=azure-devops#examples). From fe424351807c4b135c0f562c34e2413d8df79b38 Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Wed, 22 Jun 2022 22:18:00 -0700 Subject: [PATCH 617/988] Update cli-ref-push.md --- docs/reference/cli-reference/cli-ref-push.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/cli-reference/cli-ref-push.md b/docs/reference/cli-reference/cli-ref-push.md index 911ea5a03..f55c2ad0f 100644 --- a/docs/reference/cli-reference/cli-ref-push.md +++ b/docs/reference/cli-reference/cli-ref-push.md @@ -110,4 +110,4 @@ nuget push foo.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://customsou nuget push Foo.5.0.2.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://api.nuget.org/v3/index.json -SkipDuplicate ``` -- For pushing to Azure Artifacts, [see Azure Artifacts' push documentation](../../../azure/devops/artifacts/nuget/publish.md?view=azure-devops#examples). +- For pushing to Azure Artifacts, [see Azure Artifacts' push documentation](/azure/devops/artifacts/nuget/publish?view=azure-devops#examples). From f6ed087e50e3f6698b53246dcea63c9c9fa4949b Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Wed, 22 Jun 2022 22:25:10 -0700 Subject: [PATCH 618/988] Update cli-ref-push.md --- docs/reference/cli-reference/cli-ref-push.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/cli-reference/cli-ref-push.md b/docs/reference/cli-reference/cli-ref-push.md index f55c2ad0f..b44386b59 100644 --- a/docs/reference/cli-reference/cli-ref-push.md +++ b/docs/reference/cli-reference/cli-ref-push.md @@ -110,4 +110,4 @@ nuget push foo.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://customsou nuget push Foo.5.0.2.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://api.nuget.org/v3/index.json -SkipDuplicate ``` -- For pushing to Azure Artifacts, [see Azure Artifacts' push documentation](/azure/devops/artifacts/nuget/publish?view=azure-devops#examples). +- For pushing to Azure Artifacts, [see Azure Artifacts' push documentation](/azure/devops/artifacts/nuget/publish#examples). From 095dd9b58fddaf399ef9a0736db51dc302f71931 Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Tue, 28 Jun 2022 08:39:35 -0700 Subject: [PATCH 619/988] Correct path to latest --- docs/reference/cli-reference/cli-ref-push.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/cli-reference/cli-ref-push.md b/docs/reference/cli-reference/cli-ref-push.md index b44386b59..1a547d9e7 100644 --- a/docs/reference/cli-reference/cli-ref-push.md +++ b/docs/reference/cli-reference/cli-ref-push.md @@ -110,4 +110,4 @@ nuget push foo.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://customsou nuget push Foo.5.0.2.nupkg 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -src https://api.nuget.org/v3/index.json -SkipDuplicate ``` -- For pushing to Azure Artifacts, [see Azure Artifacts' push documentation](/azure/devops/artifacts/nuget/publish#examples). +- For pushing to Azure Artifacts, [see Azure Artifacts' push documentation](/azure/devops/artifacts/nuget/publish#publish-packages). From a304771214477f869a0aa404d877866962e1567e Mon Sep 17 00:00:00 2001 From: Simon Cropp Date: Wed, 6 Jul 2022 03:38:16 +1000 Subject: [PATCH 620/988] document The parameter is incorrect behavior (#2800) * document The parameter is incorrect behavior * Add a note/tip instead of bold. Co-authored-by: Jon Douglas --- docs/reference/nuget-config-file.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/reference/nuget-config-file.md b/docs/reference/nuget-config-file.md index ba5751386..5b7335274 100644 --- a/docs/reference/nuget-config-file.md +++ b/docs/reference/nuget-config-file.md @@ -142,6 +142,9 @@ Optionally, valid authentication types can be specified with the `-validauthenti | cleartextpassword | The unencrypted password for the source. Note: environment variables can be used for improved security. | | validauthenticationtypes | Comma-separated list of valid authentication types for this source. Set this to `basic` if the server advertises NTLM or Negotiate and your credentials must be sent using the Basic mechanism, for instance when using a PAT with on-premises Azure DevOps Server. Other valid values include `negotiate`, `kerberos`, `ntlm`, and `digest`, but these values are unlikely to be useful. | +> [!Tip] +> If a non-encrypted password is passed for `password` the error message ["The parameter is incorrect" will occur](https://github.com/NuGet/Home/issues/3245). + **Example:** In the config file, the `` element contains child nodes for each applicable source name (spaces in the name are replaced with `_x0020_`). That is, for sources named "Contoso" and "Test Source", the config file contains the following when using encrypted passwords: From 4cc1364de13a28aa5ee771b61b85084c212aad4d Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Thu, 14 Jul 2022 18:12:48 -0700 Subject: [PATCH 621/988] Add a dedicated page for props and targets (#2807) --- docs/TOC.md | 1 + docs/concepts/MSBuild-props-and-targets.md | 78 +++++++++++++++++++ docs/create-packages/Creating-a-Package.md | 23 +----- .../creating-a-package-dotnet-cli.md | 1 + .../creating-a-package-msbuild.md | 1 + 5 files changed, 85 insertions(+), 19 deletions(-) create mode 100644 docs/concepts/MSBuild-props-and-targets.md diff --git a/docs/TOC.md b/docs/TOC.md index 254b26e93..4c02d9fac 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -73,6 +73,7 @@ ## [Package versioning](concepts/package-versioning.md) ## [Dependency resolution](concepts/dependency-resolution.md) ## [Best practices for a secure software supply chain](concepts/Security-Best-Practices.md) +## [MSBuild .props and .targets](concepts/MSBuild-props-and-targets.md) ## [Troubleshooting Installed Packages](concepts/troubleshooting-installed-packages.md) # Reference ## [.nuspec](reference/nuspec.md) diff --git a/docs/concepts/MSBuild-props-and-targets.md b/docs/concepts/MSBuild-props-and-targets.md new file mode 100644 index 000000000..c806f5523 --- /dev/null +++ b/docs/concepts/MSBuild-props-and-targets.md @@ -0,0 +1,78 @@ +--- +title: MSBuild props and targets in a package +description: Describes MSBuild props and targets in NuGet packages +author: nkolev92 +ms.author: nikolev +ms.date: 07/13/2022 +ms.topic: conceptual +--- + +# MSBuild .props and .targets in a package + +In additional to the more traditional assemblies, NuGet packages may sometimes add custom build targets or properties to projects that consume that package. +This can be achieved by adding a valid MSBuild file, in the form `.targets` or `.props` (such as `Contoso.Utility.UsefulStuff.targets`) within the build folders of the project. + +## Build folders + +As NuGet has evolved, various different folders for build `.props` and `.targets` have been added. + +| Folder | NuGet Version | Use | +|--------|---------------|-----| +| build | 2.5+ | Build logic for every framework of a project. | +| buildMultiTargetting | 4.0+ | Build logic for the `outer build` for projects that target multiple frameworks. PackageReference only. | +| buildTransitive | 5.0+ | Build logic for assets that flow transitively to any consuming project. See the [feature](https://github.com/NuGet/Home/wiki/Allow-package--authors-to-define-build-assets-transitive-behavior) page. PackageReference only. | + +## Framework specific build folder + +All 3 build folder follow the same pattern for deciding the most suitable file based on the project target framework. + +Files in the root build folder, `build/.targets` and `build/.props` are considered suitable for all target frameworks. + +To provide framework-specific files, first place them within appropriate subfolders, such as the following: + +```text + \build + \netstandard1.4 + \Contoso.Utility.UsefulStuff.props + \Contoso.Utility.UsefulStuff.targets + \net462 + \Contoso.Utility.UsefulStuff.props + \Contoso.Utility.UsefulStuff.targets +``` + +Prefer using framework-specific build folders whenever appropriate to avoid false positive installations in projects that may not be supported by your package. + +Note that if a package does not have any files in the `lib` or `ref` folders and only files under a framework specific build folder, that package will be considered compatible with all projects. Up to date versions of the pack tooling, raise the [NU5127](..\reference\errors-and-warnings\NU5127.md) warning when such packages are created. + +## Projects consuming packages with build files + +### PackageReference projects + +`.props` and `.targets` are not added to the project file but are instead made available through `{projectName}.nuget.g.targets` and `{projectName}.nuget.g.props`. These files are automatically generated when restore is run. + +When a project targets more than one framework, the imports to these files are conditioned on the target framework name. + +MSBuild `.props` and `.targets` files for multi-framework targeting can be placed in the `\buildMultiTargeting` folder. +When the imports are generated, a condition that the MSBuild property `$(TargetFramework)` is empty is set. + +### packages.config projects + +When NuGet installs a package with `\build` files, it adds MSBuild `` elements in the project file pointing to the `.targets` and `.props` files. (`.props` is added at the top of the project file; `.targets` is added at the bottom.) A separate conditional MSBuild `` element is added for each target framework. + +## Authoring packages with MSBuild props and targets + +You can use any of the following tools to include MSBuild `.props` and `.targets` in your package. + +- [NuGet.exe pack](..\create-packages\Creating-a-Package.md#include-msbuild-props-and-targets-in-a-package) +- [dotnet.exe pack](..\create-packages\creating-a-package-dotnet-cli.md) +- [MSBuild.exe pack](..\create-packages\creating-a-package-msbuild.md) + +### Guidance for the content of MSBuild props and targets + +NuGet does not limit how you author `.props` and `.targets` as they will vary based on the need of the package author and the target projects themselves. + +There are a few things that must not be done in packages' `.props` and `.targets`, such as not specifying properties and items that affect restore, as those will be automatically excluded. + +- Some examples of properties that must not be added or updated: TargetFramework, TargetFrameworkMoniker, TargetPlatformMoniker, AssetTargetFallback etc. + +- Some examples of items that must not be added or updated: PackageReference, PackageVersion, PackageDownload, etc. diff --git a/docs/create-packages/Creating-a-Package.md b/docs/create-packages/Creating-a-Package.md index 9befb946d..999879fc5 100644 --- a/docs/create-packages/Creating-a-Package.md +++ b/docs/create-packages/Creating-a-Package.md @@ -308,19 +308,10 @@ When you include a file named `readme.txt` in the package root, Visual Studio di ## Include MSBuild props and targets in a package -In some cases, you might want to add custom build targets or properties in projects that consume your package, such as running a custom tool or process during build. You do this by placing files in the form `.targets` or `.props` (such as `Contoso.Utility.UsefulStuff.targets`) within the `\build` folder of the project. +In some cases, you might want to add custom build targets or properties in projects that consume your package, such as running a custom tool or process during build. +You can learn more about [MSBuild props and targets in NuGet packages](..\concepts\MSBuild-props-and-targets.md) -Files in the root `\build` folder are considered suitable for all target frameworks. To provide framework-specific files, first place them within appropriate subfolders, such as the following: - -``` - \build - \netstandard1.4 - \Contoso.Utility.UsefulStuff.props - \Contoso.Utility.UsefulStuff.targets - \net462 - \Contoso.Utility.UsefulStuff.props - \Contoso.Utility.UsefulStuff.targets -``` +Create `.targets` or `.props` (such as `Contoso.Utility.UsefulStuff.targets`) within the build folders of the project. Then in the `.nuspec` file, be sure to refer to these files in the `` node: @@ -340,13 +331,7 @@ Then in the `.nuspec` file, be sure to refer to these files in the `` nod ``` -Including MSBuild props and targets in a package was [introduced with NuGet 2.5](../release-notes/NuGet-2.5.md#automatic-import-of-msbuild-targets-and-props-files), therefore it is recommended to add the `minClientVersion="2.5"` attribute to the `metadata` element, to indicate the minimum NuGet client version required to consume the package. - -When NuGet installs a package with `\build` files, it adds MSBuild `` elements in the project file pointing to the `.targets` and `.props` files. (`.props` is added at the top of the project file; `.targets` is added at the bottom.) A separate conditional MSBuild `` element is added for each target framework. - -MSBuild `.props` and `.targets` files for cross-framework targeting can be placed in the `\buildMultiTargeting` folder. During package installation, NuGet adds the corresponding `` elements to the project file with the condition, that the target framework is not set (the MSBuild property `$(TargetFramework)` must be empty). - -With NuGet 3.x, targets are not added to the project but are instead made available through `{projectName}.nuget.g.targets` and `{projectName}.nuget.g.props`. +When packages are added to a project, NuGet will automatically include these props and targets. ## Run nuget pack to generate the .nupkg file diff --git a/docs/create-packages/creating-a-package-dotnet-cli.md b/docs/create-packages/creating-a-package-dotnet-cli.md index bb1a552a9..e48d0dc7d 100644 --- a/docs/create-packages/creating-a-package-dotnet-cli.md +++ b/docs/create-packages/creating-a-package-dotnet-cli.md @@ -126,6 +126,7 @@ You might also want to extend the capabilities of your package or otherwise supp - [Localization](../create-packages/creating-localized-packages.md) - [Pre-release versions](../create-packages/prerelease-packages.md) - [Set package type](../create-packages/set-package-type.md) +- [MSBuild props and targets](../concepts/MSBuild-props-and-targets.md) - [Create packages with COM interop assemblies](../create-packages/author-packages-with-COM-interop-assemblies.md) Finally, there are additional package types to be aware of: diff --git a/docs/create-packages/creating-a-package-msbuild.md b/docs/create-packages/creating-a-package-msbuild.md index 775e9d68e..dac9bad84 100644 --- a/docs/create-packages/creating-a-package-msbuild.md +++ b/docs/create-packages/creating-a-package-msbuild.md @@ -179,6 +179,7 @@ You might also want to extend the capabilities of your package or otherwise supp - [Localization](../create-packages/creating-localized-packages.md) - [Pre-release versions](../create-packages/prerelease-packages.md) - [Set package type](../create-packages/set-package-type.md) +- [MSBuild props and targets](../concepts/MSBuild-props-and-targets.md) - [Create packages with COM interop assemblies](../create-packages/author-packages-with-COM-interop-assemblies.md) Finally, there are additional package types to be aware of: From 53f580b29aba48a9b67fb4501e00601e0a9f55be Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Fri, 22 Jul 2022 18:01:48 -0700 Subject: [PATCH 622/988] Document NU1802 and NU1803 (#2816) --- docs/TOC.md | 2 ++ docs/reference/Errors-and-Warnings.md | 2 +- docs/reference/errors-and-warnings/NU1802.md | 22 +++++++++++++++++++ docs/reference/errors-and-warnings/NU1803.md | 23 ++++++++++++++++++++ 4 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 docs/reference/errors-and-warnings/NU1802.md create mode 100644 docs/reference/errors-and-warnings/NU1803.md diff --git a/docs/TOC.md b/docs/TOC.md index 4c02d9fac..79e477bc3 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -177,6 +177,8 @@ ### [NU1701](reference/errors-and-warnings/NU1701.md) ### [NU1703](reference/errors-and-warnings/NU1703.md) ### [NU1801](reference/errors-and-warnings/NU1801.md) +### [NU1802](reference/errors-and-warnings/NU1802.md) +### [NU1803](reference/errors-and-warnings/NU1803.md) ### [NU3000](reference/errors-and-warnings/NU3000.md) ### [NU3001](reference/errors-and-warnings/NU3001.md) ### [NU3002](reference/errors-and-warnings/NU3002.md) diff --git a/docs/reference/Errors-and-Warnings.md b/docs/reference/Errors-and-Warnings.md index ab468f76d..06ae566bc 100644 --- a/docs/reference/Errors-and-Warnings.md +++ b/docs/reference/Errors-and-Warnings.md @@ -34,7 +34,7 @@ The errors and warnings listed here are available only with [PackageReference-ba | Unexpected package version warnings | [NU1601](./errors-and-warnings/NU1601.md), [NU1602](./errors-and-warnings/NU1602.md), [NU1603](./errors-and-warnings/NU1603.md), [NU1604](./errors-and-warnings/NU1604.md), [NU1605](./errors-and-warnings/NU1605.md), [NU1606](./errors-and-warnings/NU1108.md), [NU1607](./errors-and-warnings/NU1107.md) | | Resolver conflict warnings | [NU1608](./errors-and-warnings/NU1608.md) | | Package fallback warnings | [NU1701](./errors-and-warnings/NU1701.md) | -| Feed warnings | [NU1801](./errors-and-warnings/NU1801.md) | +| Feed warnings | [NU1801](./errors-and-warnings/NU1801.md), [NU1802](./errors-and-warnings/NU1802.md), [NU1803](./errors-and-warnings/NU1803.md) | | NuGet internal warnings | [NU1500](./errors-and-warnings/NU1500.md) | | Signed packages warnings (creation and verification) | [NU3000](./errors-and-warnings/NU3000.md), [NU3002](./errors-and-warnings/NU3002.md), [NU3003](./errors-and-warnings/NU3003.md), [NU3006](./errors-and-warnings/NU3006.md), [NU3007](./errors-and-warnings/NU3007.md), [NU3009](./errors-and-warnings/NU3009.md), [NU3010](./errors-and-warnings/NU3010.md), [NU3011](./errors-and-warnings/NU3011.md), [NU3012](./errors-and-warnings/NU3012.md), [NU3013](./errors-and-warnings/NU3013.md), [NU3014](./errors-and-warnings/NU3014.md), [NU3015](./errors-and-warnings/NU3015.md), [NU3016](./errors-and-warnings/NU3016.md), [NU3017](./errors-and-warnings/NU3017.md), [NU3018](./errors-and-warnings/NU3018.md), [NU3019](./errors-and-warnings/NU3019.md), [NU3020](./errors-and-warnings/NU3020.md), [NU3021](./errors-and-warnings/NU3021.md), [NU3022](./errors-and-warnings/NU3022.md), [NU3023](./errors-and-warnings/NU3023.md), [NU3024](./errors-and-warnings/NU3024.md), [NU3025](./errors-and-warnings/NU3025.md), [NU3026](./errors-and-warnings/NU3026.md), [NU3027](./errors-and-warnings/NU3027.md), [NU3028](./errors-and-warnings/NU3028.md), [NU3029](./errors-and-warnings/NU3029.md), [NU3030](./errors-and-warnings/NU3030.md), [NU3031](./errors-and-warnings/NU3031.md), [NU3032](./errors-and-warnings/NU3032.md), [NU3033](./errors-and-warnings/NU3033.md), [NU3035](./errors-and-warnings/NU3035.md), [NU3036](./errors-and-warnings/NU3036.md), [NU3037](./errors-and-warnings/NU3037.md), [NU3038](./errors-and-warnings/NU3038.md), [NU3040](./errors-and-warnings/NU3040.md) | | Pack Warnings | [NU5100](./errors-and-warnings/NU5100.md), [NU5101](./errors-and-warnings/NU5101.md), [NU5102](./errors-and-warnings/NU5102.md), [NU5103](./errors-and-warnings/NU5103.md), [NU5104](./errors-and-warnings/NU5104.md), [NU5105](./errors-and-warnings/NU5105.md), [NU5106](./errors-and-warnings/NU5106.md), [NU5107](./errors-and-warnings/NU5107.md), [NU5108](./errors-and-warnings/NU5108.md), [NU5109](./errors-and-warnings/NU5109.md), [NU5110](./errors-and-warnings/NU5110.md), [NU5111](./errors-and-warnings/NU5111.md), [NU5112](./errors-and-warnings/NU5112.md), [NU5114](./errors-and-warnings/NU5114.md), [NU5115](./errors-and-warnings/NU5115.md), [NU5116](./errors-and-warnings/NU5116.md), [NU5117](./errors-and-warnings/NU5117.md), [NU5118](./errors-and-warnings/NU5118.md), [NU5119](./errors-and-warnings/NU5119.md), [NU5120](./errors-and-warnings/NU5120.md), [NU5121](./errors-and-warnings/NU5121.md), [NU5122](./errors-and-warnings/NU5122.md), [NU5123](./errors-and-warnings/NU5123.md), [NU5127](./errors-and-warnings/NU5127.md), [NU5128](./errors-and-warnings/NU5128.md), [NU5129](./errors-and-warnings/NU5129.md), [NU5130](./errors-and-warnings/NU5130.md), [NU5131](./errors-and-warnings/NU5131.md), [NU5500](./errors-and-warnings/NU5500.md), [NU5501](./errors-and-warnings/NU5501.md) diff --git a/docs/reference/errors-and-warnings/NU1802.md b/docs/reference/errors-and-warnings/NU1802.md new file mode 100644 index 000000000..da9738ae8 --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1802.md @@ -0,0 +1,22 @@ +--- +title: NuGet Warning NU1802 +description: NU1802 warning code +author: nkolev92 +ms.author: nikolev +ms.date: 07/22/2022 +ms.topic: reference +f1_keywords: + - "NU1802" +--- + +# NuGet Warning NU1802 + +### Issue + +Updating last access time on file "C:\packages\contoso.library\1.0.0\.nupkg.metadata" failed with _various failure reasons_ + +### Solution + +You have enabled an experimental feature that updates the last access of the .nupkg.metadata file in the NuGet global packages folder. +Failures are likely to be issues with permissions. +The details of the failure reason will be contained in the error message. Consult that information for the exact action. \ No newline at end of file diff --git a/docs/reference/errors-and-warnings/NU1803.md b/docs/reference/errors-and-warnings/NU1803.md new file mode 100644 index 000000000..ef20a05d3 --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1803.md @@ -0,0 +1,23 @@ +--- +title: NuGet Warning NU1803 +description: NU1803 warning code +author: nkolev92 +ms.author: nikolev +ms.date: 07/22/2022 +ms.topic: reference +f1_keywords: + - "NU1803" +--- + +# NuGet Warning NU1803 + +### Issue + +You are running the 'restore' operation with an 'HTTP' source, 'http://api.source/index.json'. Non-HTTPS access will be removed in a future version. Consider migrating to an 'HTTPS' source. + +### Solution + +You may need to do one of the following: + +- Correct the specified url. You may have mistyped the source url. Change the url to explicitly request the `HTTPS` version of the source. +- Work with the owner of the source and ask them to migrate to `HTTPS`. \ No newline at end of file From 111ec8df31b08bb001548867c966116ad8e351da Mon Sep 17 00:00:00 2001 From: andrei Date: Tue, 26 Jul 2022 18:30:37 +0200 Subject: [PATCH 623/988] Add list in Normalized version numbers (#2818) Fix #2817 --- docs/concepts/Package-Versioning.md | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/docs/concepts/Package-Versioning.md b/docs/concepts/Package-Versioning.md index 8aee0a88d..1ce672de6 100644 --- a/docs/concepts/Package-Versioning.md +++ b/docs/concepts/Package-Versioning.md @@ -230,19 +230,16 @@ The `version` attribute in a `` element describes the range versions When obtaining packages from a repository during install, reinstall, or restore operations, NuGet 3.4+ treats version numbers as follows: - Leading zeroes are removed from version numbers: - - 1.00 is treated as 1.0 - 1.01.1 is treated as 1.1.1 - 1.00.0.1 is treated as 1.0.0.1 + - 1.00 is treated as 1.0 + - 1.01.1 is treated as 1.1.1 + - 1.00.0.1 is treated as 1.0.0.1 - A zero in the fourth part of the version number will be omitted - - 1.0.0.0 is treated as 1.0.0 - 1.0.01.0 is treated as 1.0.1 + - 1.0.0.0 is treated as 1.0.0 + - 1.0.01.0 is treated as 1.0.1 - SemVer 2.0.0 build metadata is removed - - 1.0.7+r3456 is treated as 1.0.7 + - 1.0.7+r3456 is treated as 1.0.7 `pack` and `restore` operations normalize versions whenever possible. For packages already built, this normalization does not affect the version numbers in the packages themselves; it affects only how NuGet matches versions when resolving dependencies. From 6f11750a03e0ff3568b2bfc08fe8f76a578d5a19 Mon Sep 17 00:00:00 2001 From: riQQ Date: Wed, 27 Jul 2022 19:02:03 +0200 Subject: [PATCH 624/988] Clarify headline of section about projects without any package dependencies (#2812) --- docs/consume-packages/Package-References-in-Project-Files.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Package-References-in-Project-Files.md b/docs/consume-packages/Package-References-in-Project-Files.md index fd9db94d7..bf4614683 100644 --- a/docs/consume-packages/Package-References-in-Project-Files.md +++ b/docs/consume-packages/Package-References-in-Project-Files.md @@ -45,7 +45,7 @@ The convention for specifying the version of a package is the same as when using In the example above, 3.6.0 means any version that is >=3.6.0 with preference for the lowest version, as described on [Package versioning](../concepts/package-versioning.md#version-ranges). -## Using PackageReference for a project with no PackageReferences +## Using PackageReference for a project with no package dependencies Advanced: If you have no packages installed in a project (no PackageReferences in project file and no packages.config file), but want the project to be restored as PackageReference style, you can set a Project property RestoreProjectStyle to PackageReference in your project file. From 08ef6d78e83a9bb9fcbe216210cfdcffe33bb535 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Wed, 27 Jul 2022 13:55:10 -0700 Subject: [PATCH 625/988] Add issue management bots (#2825) --- .github/fabricbot.json | 410 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 410 insertions(+) create mode 100644 .github/fabricbot.json diff --git a/.github/fabricbot.json b/.github/fabricbot.json new file mode 100644 index 000000000..8dc051bb6 --- /dev/null +++ b/.github/fabricbot.json @@ -0,0 +1,410 @@ +{ + "version": "1.0", + "tasks": [ + { + "taskType": "trigger", + "capabilityId": "IssueResponder", + "subCapability": "IssueCommentResponder", + "version": "1.0", + "config": { + "conditions": { + "operator": "and", + "operands": [ + { + "name": "isAction", + "parameters": { + "action": "created" + } + }, + { + "name": "hasLabel", + "parameters": { + "label": "WaitingForCustomer" + } + }, + { + "name": "isOpen", + "parameters": {} + }, + { + "operator": "or", + "operands": [ + { + "operator": "and", + "operands": [ + { + "name": "hasLabel", + "parameters": { + "label": "Transferred issue" + } + }, + { + "operator": "not", + "operands": [ + { + "name": "activitySenderHasPermissions", + "parameters": { + "permissions": "write" + } + } + ] + } + ] + }, + { + "name": "isActivitySender", + "parameters": { + "user": { + "type": "author" + } + } + } + ] + } + ] + }, + "eventType": "issue", + "eventNames": [ + "issue_comment" + ], + "taskName": "[Manage \"WaitingFor\" labels] Replace tag \"WaitingForCustomer\" with \"WaitingForNuGetTeam\" when the author comments on an issue. Also remove `Status:No recent activity` if it's been set.", + "actions": [ + { + "name": "removeLabel", + "parameters": { + "label": "WaitingForCustomer" + } + }, + { + "name": "addLabel", + "parameters": { + "label": "WaitingForNuGetTeam" + } + }, + { + "name": "removeLabel", + "parameters": { + "label": "Status:No recent activity" + } + } + ] + }, + "disabled": false + }, + { + "taskType": "trigger", + "capabilityId": "IssueResponder", + "subCapability": "IssuesOnlyResponder", + "version": "1.0", + "config": { + "conditions": { + "operator": "and", + "operands": [ + { + "name": "isAction", + "parameters": { + "action": "closed" + } + }, + { + "operator": "or", + "operands": [ + { + "name": "hasLabel", + "parameters": { + "label": "WaitingForNuGetTeam" + } + }, + { + "name": "hasLabel", + "parameters": { + "label": "WaitingForCustomer" + } + } + ] + } + ] + }, + "eventType": "issue", + "eventNames": [ + "issues", + "project_card" + ], + "taskName": "[Manage \"WaitingFor\" labels] Remove any \"WaitingFor\" label when the issue is closed", + "actions": [ + { + "name": "removeLabel", + "parameters": { + "label": "WaitingForNuGetTeam" + } + }, + { + "name": "removeLabel", + "parameters": { + "label": "WaitingForCustomer" + } + } + ] + }, + "disabled": false + }, + { + "taskType": "trigger", + "capabilityId": "IssueResponder", + "subCapability": "IssueCommentResponder", + "version": "1.0", + "config": { + "conditions": { + "operator": "and", + "operands": [ + { + "name": "isAction", + "parameters": { + "action": "created" + } + }, + { + "name": "hasLabel", + "parameters": { + "label": "WaitingForNuGetTeam" + } + }, + { + "name": "isOpen", + "parameters": {} + }, + { + "name": "activitySenderHasPermissions", + "parameters": { + "permissions": "write" + } + } + ] + }, + "eventType": "issue", + "eventNames": [ + "issue_comment" + ], + "taskName": "[Manage \"WaitingFor\" labels] Replace tag \"WaitingForNuGetTeam\" with \"WaitingForCustomer\" when NuGet team comments on an issue.", + "actions": [ + { + "name": "removeLabel", + "parameters": { + "label": "WaitingForNuGetTeam" + } + }, + { + "name": "addLabel", + "parameters": { + "label": "WaitingForCustomer" + } + } + ] + }, + "disabled": false + }, + { + "taskType": "scheduled", + "capabilityId": "ScheduledSearch", + "subCapability": "ScheduledSearch", + "version": "1.0", + "config": { + "frequency": [ + { + "weekDay": 0, + "hours": [ + 6 + ], + "timezoneOffset": -7 + }, + { + "weekDay": 1, + "hours": [ + 6 + ], + "timezoneOffset": -7 + }, + { + "weekDay": 2, + "hours": [ + 6 + ], + "timezoneOffset": -7 + }, + { + "weekDay": 3, + "hours": [ + 6 + ], + "timezoneOffset": -7 + }, + { + "weekDay": 4, + "hours": [ + 6 + ], + "timezoneOffset": -7 + }, + { + "weekDay": 5, + "hours": [ + 6 + ], + "timezoneOffset": -7 + }, + { + "weekDay": 6, + "hours": [ + 6 + ], + "timezoneOffset": -7 + } + ], + "searchTerms": [ + { + "name": "hasLabel", + "parameters": { + "label": "WaitingForCustomer" + } + }, + { + "name": "noActivitySince", + "parameters": { + "days": 14 + } + }, + { + "name": "isIssue", + "parameters": {} + }, + { + "name": "isOpen", + "parameters": {} + }, + { + "name": "noLabel", + "parameters": { + "label": "Status:No recent activity" + } + } + ], + "taskName": "[Manage stale WaitingForCustomer issues] Search for WaitingForCustomer issues with no activity over 14 days and warn.", + "actions": [ + { + "name": "addLabel", + "parameters": { + "label": "Status:No recent activity" + } + }, + { + "name": "addReply", + "parameters": { + "comment": "This issue has been automatically marked as stale because we have not received a response in 14 days. It will be closed if no further activity occurs within another 14 days of this comment." + } + } + ] + } + }, + { + "taskType": "scheduled", + "capabilityId": "ScheduledSearch", + "subCapability": "ScheduledSearch", + "version": "1.0", + "config": { + "frequency": [ + { + "weekDay": 0, + "hours": [ + 6 + ], + "timezoneOffset": -7 + }, + { + "weekDay": 1, + "hours": [ + 6 + ], + "timezoneOffset": -7 + }, + { + "weekDay": 2, + "hours": [ + 6 + ], + "timezoneOffset": -7 + }, + { + "weekDay": 3, + "hours": [ + 6 + ], + "timezoneOffset": -7 + }, + { + "weekDay": 4, + "hours": [ + 6 + ], + "timezoneOffset": -7 + }, + { + "weekDay": 5, + "hours": [ + 6 + ], + "timezoneOffset": -7 + }, + { + "weekDay": 6, + "hours": [ + 6 + ], + "timezoneOffset": -7 + } + ], + "searchTerms": [ + { + "name": "hasLabel", + "parameters": { + "label": "Status:No recent activity" + } + }, + { + "name": "noActivitySince", + "parameters": { + "days": 14 + } + }, + { + "name": "isIssue", + "parameters": {} + }, + { + "name": "isOpen", + "parameters": {} + } + ], + "taskName": "[Close stale WaitingForCustomer issues] Search for stale WaitingForCustomer issues with no activity over 14 days and warn.", + "actions": [ + { + "name": "closeIssue", + "parameters": {} + }, + { + "name": "removeLabel", + "parameters": { + "label": "Status:No recent activity" + } + }, + { + "name": "addLabel", + "parameters": { + "label": "Resolution:NeedMoreInfo" + } + } + ] + } + } + ], + "userGroups": [] + } \ No newline at end of file From e635aed702cd23c7535e3994b528e765bdc6468f Mon Sep 17 00:00:00 2001 From: Drew Noakes Date: Wed, 3 Aug 2022 05:02:44 +1000 Subject: [PATCH 626/988] Fix formatting typo in CPM (#2832) --- docs/consume-packages/Central-Package-Management.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/consume-packages/Central-Package-Management.md b/docs/consume-packages/Central-Package-Management.md index 700cdfebd..b00c913de 100644 --- a/docs/consume-packages/Central-Package-Management.md +++ b/docs/consume-packages/Central-Package-Management.md @@ -54,7 +54,7 @@ version. ``` For each project, you then define a `` but omit the `Version` attribute since the version will be attained from a corresponding -` item. +`` item. ```xml From ed11cfb77610293ac661b22966bca6af7c356522 Mon Sep 17 00:00:00 2001 From: John Olheiser Date: Wed, 3 Aug 2022 09:31:54 -0500 Subject: [PATCH 627/988] Add Gitea to NuGet hosting solutions (#2828) * Add Gitea to NuGet hosting solutions * Use Gitea project URL --- docs/hosting-packages/Overview.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/hosting-packages/Overview.md b/docs/hosting-packages/Overview.md index 4652c8ea8..8eff32015 100644 --- a/docs/hosting-packages/Overview.md +++ b/docs/hosting-packages/Overview.md @@ -35,5 +35,6 @@ There are also several other NuGet hosting products such as [Azure Artifacts](ht - [ProGet](https://inedo.com/proget) from Inedo - [Sleet](https://github.com/emgarten/sleet), an open-source NuGet V3 static feed generator - [TeamCity](https://www.jetbrains.com/teamcity/) from JetBrains. +- [Gitea](https://gitea.io), an open-source, self-hostable Git service supports NuGet as a [package registry](https://docs.gitea.io/en-us/packages/nuget/) Regardless of how packages are hosted, you access them by adding them to the list of available sources in `NuGet.Config`. This can be done in Visual Studio as described in [Package Sources](../consume-packages/install-use-packages-visual-studio.md#package-sources), or from the command line using [`nuget sources`](../reference/cli-reference/cli-ref-sources.md). The path to a source can be a local folder pathname, a network name, or a URL. From bc38abb1b511467fdba711ff73e2389c1d3b981b Mon Sep 17 00:00:00 2001 From: Nestor Waldyd Date: Wed, 3 Aug 2022 09:33:22 -0500 Subject: [PATCH 628/988] Update NU1100.md (#2829) NU1100 may also be caused by the lack of a NuGet configura --- docs/reference/errors-and-warnings/NU1100.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/docs/reference/errors-and-warnings/NU1100.md b/docs/reference/errors-and-warnings/NU1100.md index 8cb4df5ea..1ddd24ab9 100644 --- a/docs/reference/errors-and-warnings/NU1100.md +++ b/docs/reference/errors-and-warnings/NU1100.md @@ -17,11 +17,16 @@ f1_keywords:
    Unable to resolve 'Dependency (>= 1.0.0)' for 'TargetFramework'
    ### Issue -A dependency could not be resolved. This is a generic issue for types that are not packages or projects. +A dependency could not be resolved. This is a generic issue for types that are not packages or projects. + +This issue may also be caused by the lack of a NuGet configuration file. ### Solution Open the project file and examine the list of its dependencies. Check that each dependency exists on the package sources you're using, and that the package supports the project's target framework. +In the case of a NuGet configuration file not being created, issue the following command from the root folder of the project: +`dotnet new nugetconfig` + ## Scenario 2
     Unable to resolve 'Dependency (>= 1.0.0)' for 'TargetFramework'.  PackageSourceMapping is enabled, the following source(s) were not considered: nuget. 
    From 3f1f7528d1ee87a4e75b20475eb99c3625bb2dc5 Mon Sep 17 00:00:00 2001 From: Mike Jones Date: Wed, 3 Aug 2022 07:34:17 -0700 Subject: [PATCH 629/988] Updates to ms.date values based on file history (#2831) * Updates to ms.date values based on file history * edit * fixed year --- docs/consume-packages/Central-Package-Management.md | 2 +- docs/consume-packages/Finding-and-Choosing-Packages.md | 2 +- docs/consume-packages/Package-References-in-Project-Files.md | 2 +- docs/consume-packages/Package-Source-Mapping.md | 2 +- docs/consume-packages/Reinstalling-and-Updating-Packages.md | 2 +- docs/consume-packages/configuring-nuget-behavior.md | 2 +- .../migrate-packages-config-to-package-reference.md | 2 +- docs/create-packages/Creating-a-Package.md | 2 +- docs/create-packages/Package-authoring-best-practices.md | 2 +- docs/create-packages/creating-a-package-dotnet-cli.md | 2 +- docs/create-packages/creating-a-package-msbuild.md | 2 +- docs/hosting-packages/Overview.md | 2 +- docs/reference/msbuild-targets.md | 2 +- docs/resources/NuGet-FAQ.yml | 2 +- docs/what-is-nuget.md | 2 +- 15 files changed, 15 insertions(+), 15 deletions(-) diff --git a/docs/consume-packages/Central-Package-Management.md b/docs/consume-packages/Central-Package-Management.md index b00c913de..c67bfb202 100644 --- a/docs/consume-packages/Central-Package-Management.md +++ b/docs/consume-packages/Central-Package-Management.md @@ -3,7 +3,7 @@ title: Central Package Management description: Manage your dependencies in a central location and how you can get started with central package management. author: jondouglas ms.author: jodou -ms.date: 2/25/2022 +ms.date: 05/09/2022 ms.topic: conceptual --- diff --git a/docs/consume-packages/Finding-and-Choosing-Packages.md b/docs/consume-packages/Finding-and-Choosing-Packages.md index 02d47c558..d15b342b8 100644 --- a/docs/consume-packages/Finding-and-Choosing-Packages.md +++ b/docs/consume-packages/Finding-and-Choosing-Packages.md @@ -3,7 +3,7 @@ title: Finding and Choosing NuGet Packages description: An overview of how to find and choose the best NuGet packages for a project including details on the NuGet search syntax. author: JonDouglas ms.author: jodou -ms.date: 06/04/2018 +ms.date: 11/03/2021 ms.topic: conceptual --- diff --git a/docs/consume-packages/Package-References-in-Project-Files.md b/docs/consume-packages/Package-References-in-Project-Files.md index bf4614683..c243db7e7 100644 --- a/docs/consume-packages/Package-References-in-Project-Files.md +++ b/docs/consume-packages/Package-References-in-Project-Files.md @@ -3,7 +3,7 @@ title: NuGet PackageReference in project files description: Details on NuGet PackageReference in project files as supported by NuGet 4.0+ and VS2017 and .NET Core 2.0 author: nkolev92 ms.author: nikolev -ms.date: 03/16/2018 +ms.date: 4/6/2022 ms.topic: conceptual --- diff --git a/docs/consume-packages/Package-Source-Mapping.md b/docs/consume-packages/Package-Source-Mapping.md index 72dcf082e..fa0f95077 100644 --- a/docs/consume-packages/Package-Source-Mapping.md +++ b/docs/consume-packages/Package-Source-Mapping.md @@ -3,7 +3,7 @@ title: Package Source Mapping description: Describes package source mapping functionality and how to onboard author: nkolev92 ms.author: nikolev -ms.date: 10/15/2021 +ms.date: 03/15/2022 ms.topic: conceptual --- diff --git a/docs/consume-packages/Reinstalling-and-Updating-Packages.md b/docs/consume-packages/Reinstalling-and-Updating-Packages.md index 5ce680cff..08d495522 100644 --- a/docs/consume-packages/Reinstalling-and-Updating-Packages.md +++ b/docs/consume-packages/Reinstalling-and-Updating-Packages.md @@ -3,7 +3,7 @@ title: Reinstalling and Updating NuGet Packages description: Details on when it's necessary to reinstall and update packages, as with broken package references in Visual Studio. author: JonDouglas ms.author: jodou -ms.date: 12/07/2017 +ms.date: 09/03/2021 ms.topic: conceptual --- diff --git a/docs/consume-packages/configuring-nuget-behavior.md b/docs/consume-packages/configuring-nuget-behavior.md index 061979021..936fdf388 100644 --- a/docs/consume-packages/configuring-nuget-behavior.md +++ b/docs/consume-packages/configuring-nuget-behavior.md @@ -3,7 +3,7 @@ title: Common NuGet configurations description: NuGet.Config files control NuGet's behavior both globally and on a per-project basis, and are modified with nuget config command. author: JonDouglas ms.author: jodou -ms.date: 10/25/2017 +ms.date: 01/10/2022 ms.topic: conceptual --- diff --git a/docs/consume-packages/migrate-packages-config-to-package-reference.md b/docs/consume-packages/migrate-packages-config-to-package-reference.md index 93a3f2c6f..ee975de2d 100644 --- a/docs/consume-packages/migrate-packages-config-to-package-reference.md +++ b/docs/consume-packages/migrate-packages-config-to-package-reference.md @@ -3,7 +3,7 @@ title: Migrating from packages.config to PackageReference formats description: Details on how to migrate a project from the packages.config management format to PackageReference as supported by NuGet 4.0+ and VS2017 and .NET Core 2.0 author: JonDouglas ms.author: jodou -ms.date: 05/24/2019 +ms.date: 08/23/2021 ms.topic: conceptual --- diff --git a/docs/create-packages/Creating-a-Package.md b/docs/create-packages/Creating-a-Package.md index 999879fc5..6f55dd936 100644 --- a/docs/create-packages/Creating-a-Package.md +++ b/docs/create-packages/Creating-a-Package.md @@ -3,7 +3,7 @@ title: Create a NuGet package using nuget.exe CLI description: A detailed guide on designing and creating a NuGet package, including files and versioning. author: JonDouglas ms.author: feaguila -ms.date: 07/09/2019 +ms.date: 07/14/2022 ms.topic: conceptual --- diff --git a/docs/create-packages/Package-authoring-best-practices.md b/docs/create-packages/Package-authoring-best-practices.md index 680abd502..a579fc341 100644 --- a/docs/create-packages/Package-authoring-best-practices.md +++ b/docs/create-packages/Package-authoring-best-practices.md @@ -3,7 +3,7 @@ title: Package authoring best practices description: A general guide of best practices for creating high quality NuGet packages. author: chgill-MSFT ms.author: chgill -ms.date: 09/17/2020 +ms.date: 11/15/2021 ms.topic: conceptual --- diff --git a/docs/create-packages/creating-a-package-dotnet-cli.md b/docs/create-packages/creating-a-package-dotnet-cli.md index e48d0dc7d..c341b6568 100644 --- a/docs/create-packages/creating-a-package-dotnet-cli.md +++ b/docs/create-packages/creating-a-package-dotnet-cli.md @@ -3,7 +3,7 @@ title: Create a NuGet package using the dotnet CLI description: A detailed guide to the process of designing and creating a NuGet package, including key decision points like files and versioning. author: JonDouglas ms.author: jodou -ms.date: 02/20/2020 +ms.date: 07/14/2022 ms.topic: conceptual --- diff --git a/docs/create-packages/creating-a-package-msbuild.md b/docs/create-packages/creating-a-package-msbuild.md index dac9bad84..d8b92dee3 100644 --- a/docs/create-packages/creating-a-package-msbuild.md +++ b/docs/create-packages/creating-a-package-msbuild.md @@ -3,7 +3,7 @@ title: Create a NuGet package using MSBuild description: A detailed guide to the process of designing and creating a NuGet package using MSBuild, including key decision points like files and versioning. author: JonDouglas ms.author: jodou -ms.date: 02/20/2020 +ms.date: 07/14/2022 ms.topic: conceptual --- diff --git a/docs/hosting-packages/Overview.md b/docs/hosting-packages/Overview.md index 8eff32015..33c8da07a 100644 --- a/docs/hosting-packages/Overview.md +++ b/docs/hosting-packages/Overview.md @@ -3,7 +3,7 @@ title: Overview of Hosting Your Own NuGet Feeds description: An overview of opens for hosting your own NuGet package feeds or galleries either locally or remotely. author: JonDouglas ms.author: jodou -ms.date: 08/25/2017 +ms.date: 3/2/2022 ms.topic: conceptual ms.reviewer: anangaur --- diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index 4e5fd9c1c..684408de1 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -3,7 +3,7 @@ title: NuGet pack and restore as MSBuild targets description: NuGet pack and restore can work directly as MSBuild targets with NuGet 4.0+. author: nkolev92 ms.author: nikolev -ms.date: 09/02/2021 +ms.date: 2/4/2022 ms.topic: conceptual no-loc: [NuGet, MSBuild, .nuspec, nuspec] --- diff --git a/docs/resources/NuGet-FAQ.yml b/docs/resources/NuGet-FAQ.yml index fef2686ca..7c4bee0ba 100644 --- a/docs/resources/NuGet-FAQ.yml +++ b/docs/resources/NuGet-FAQ.yml @@ -4,7 +4,7 @@ metadata: description: Common questions and answers for using NuGet on the command line and in Visual Studio author: shishirx34 ms.author: shishirh - ms.date: 06/05/2019 + ms.date: 01/31/2022 ms.topic: conceptual title: NuGet frequently-asked questions diff --git a/docs/what-is-nuget.md b/docs/what-is-nuget.md index f4ef55d41..b19341b73 100644 --- a/docs/what-is-nuget.md +++ b/docs/what-is-nuget.md @@ -3,7 +3,7 @@ title: What is NuGet and what does it do? description: A comprehensive introduction to what NuGet is and does author: JonDouglas ms.author: jodou -ms.date: 05/24/2019 +ms.date: 11/30/2021 ms.topic: overview --- From 6a1ac09c7e23a50c5e5c93be1a374a7cb3e0e255 Mon Sep 17 00:00:00 2001 From: John Olheiser Date: Wed, 3 Aug 2022 18:31:50 -0500 Subject: [PATCH 630/988] Alphabetize nuget list (#2837) --- docs/hosting-packages/Overview.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/hosting-packages/Overview.md b/docs/hosting-packages/Overview.md index 33c8da07a..5b6f36169 100644 --- a/docs/hosting-packages/Overview.md +++ b/docs/hosting-packages/Overview.md @@ -25,6 +25,7 @@ There are also several other NuGet hosting products such as [Azure Artifacts](ht - [BaGet](https://github.com/loic-sharma/BaGet), an open-source implementation of NuGet V3 server built on ASP.NET Core - [Bytesafe](https://docs.bytesafe.dev/package-managers/nuget/) A fully managed package and supply chain security platform - [Cloudsmith](https://cloudsmith.io/l/nuget-feed/), a fully managed package management SaaS +- [Gitea](https://gitea.io), an open-source, self-hostable Git service supports NuGet as a [package registry](https://docs.gitea.io/en-us/packages/nuget/) - [GitHub package registry](https://help.github.com/articles/configuring-nuget-for-use-with-github-package-registry) - [GitLab Package Registry](https://docs.gitlab.com/ee/user/packages/nuget_repository/) - [LiGet](https://github.com/ai-traders/liget), an open-source implementation of NuGet V2 server that runs on kestrel in docker @@ -35,6 +36,5 @@ There are also several other NuGet hosting products such as [Azure Artifacts](ht - [ProGet](https://inedo.com/proget) from Inedo - [Sleet](https://github.com/emgarten/sleet), an open-source NuGet V3 static feed generator - [TeamCity](https://www.jetbrains.com/teamcity/) from JetBrains. -- [Gitea](https://gitea.io), an open-source, self-hostable Git service supports NuGet as a [package registry](https://docs.gitea.io/en-us/packages/nuget/) Regardless of how packages are hosted, you access them by adding them to the list of available sources in `NuGet.Config`. This can be done in Visual Studio as described in [Package Sources](../consume-packages/install-use-packages-visual-studio.md#package-sources), or from the command line using [`nuget sources`](../reference/cli-reference/cli-ref-sources.md). The path to a source can be a local folder pathname, a network name, or a URL. From 36dea35516abf7d1edb6778223f3c8d6e691762a Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Wed, 3 Aug 2022 16:45:36 -0700 Subject: [PATCH 631/988] Improve NU1100 (#2838) --- docs/reference/errors-and-warnings/NU1100.md | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/docs/reference/errors-and-warnings/NU1100.md b/docs/reference/errors-and-warnings/NU1100.md index 1ddd24ab9..6e883c627 100644 --- a/docs/reference/errors-and-warnings/NU1100.md +++ b/docs/reference/errors-and-warnings/NU1100.md @@ -17,15 +17,22 @@ f1_keywords:
    Unable to resolve 'Dependency (>= 1.0.0)' for 'TargetFramework'
    ### Issue -A dependency could not be resolved. This is a generic issue for types that are not packages or projects. -This issue may also be caused by the lack of a NuGet configuration file. +A dependency could not be resolved. This is a generic issue for types that are not packages or projects. + +### Solution 1 -### Solution Open the project file and examine the list of its dependencies. Check that each dependency exists on the package sources you're using, and that the package supports the project's target framework. -In the case of a NuGet configuration file not being created, issue the following command from the root folder of the project: -`dotnet new nugetconfig` +### Solution 2 + +This issue may also be caused by the lack of configured NuGet sources. + +Sometimes a configuration may not specify any sources. You can verify this by running [`dotnet nuget list source`](/dotnet/core/tools/dotnet-nuget-list-source) from the project or solution directory. + +Check the content of the [user configuration](../../consume-packages/configuring-nuget-behavior.md#config-file-locations-and-uses) and add a source there. + +Alternatively, you can create a configuration file using [`dotnet new nugetconfig`](/dotnet/core/tools/dotnet-new). We recommend that you create this file at the repository level. ## Scenario 2 From 96ed8897f5424d0ba2f580e623bb94da804f620a Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Wed, 3 Aug 2022 19:01:59 -0700 Subject: [PATCH 632/988] Add CODEOWNERS to docs PRs (#2836) --- .github/CODEOWNERS | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 .github/CODEOWNERS diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS new file mode 100644 index 000000000..a3d68d9cc --- /dev/null +++ b/.github/CODEOWNERS @@ -0,0 +1,13 @@ +# These owners will be the default owners for everything in +# the repo. Unless a later match takes precedence, +# review when someone opens a pull request. +# For more on how to customize the CODEOWNERS file - https://help.github.com/en/articles/about-code-owners +* @NuGet/nuget-client @NuGet/nuget-pm + +# @NuGet/core-team owns any file in the `/docs/nuget-org/` directory +# in the root of your repository and any of its subdirectories. +/docs/nuget-org/ @NuGet/core-team + +# @NuGet/core-team owns any file in the `/docs/policies/` directory +# in the root of your repository and any of its subdirectories. +/docs/policies/ @NuGet/core-team From bda0089f80c87db5367620d69e2d36be4715f216 Mon Sep 17 00:00:00 2001 From: Martin Ruiz Date: Tue, 9 Aug 2022 11:49:12 -0700 Subject: [PATCH 633/988] Release notes for 6.3 (#2834) * release notes for 6.3 --- docs/TOC.md | 1 + docs/release-notes/Index.md | 2 + docs/release-notes/NuGet-6.3.md | 112 ++++++++++++++++++++++++++++++++ 3 files changed, 115 insertions(+) create mode 100644 docs/release-notes/NuGet-6.3.md diff --git a/docs/TOC.md b/docs/TOC.md index 79e477bc3..bd8a35357 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -316,6 +316,7 @@ ### [Known Issues](release-notes/known-issues.md) ### NuGet 6.x +#### [NuGet 6.3](release-notes/NuGet-6.3.md) #### [NuGet 6.2](release-notes/NuGet-6.2.md) #### [NuGet 6.1](release-notes/NuGet-6.1.md) #### [NuGet 6.0](release-notes/NuGet-6.0.md) diff --git a/docs/release-notes/Index.md b/docs/release-notes/Index.md index cc6ba61df..4f75ffbf9 100644 --- a/docs/release-notes/Index.md +++ b/docs/release-notes/Index.md @@ -11,6 +11,8 @@ ms.topic: conceptual [Known Issues](../release-notes/known-issues.md) +[NuGet 6.3](../release-notes/NuGet-6.3.md) + [NuGet 6.2](../release-notes/NuGet-6.2.md) [NuGet 6.1](../release-notes/NuGet-6.1.md) diff --git a/docs/release-notes/NuGet-6.3.md b/docs/release-notes/NuGet-6.3.md new file mode 100644 index 000000000..65b91e65f --- /dev/null +++ b/docs/release-notes/NuGet-6.3.md @@ -0,0 +1,112 @@ +--- +title: NuGet 6.3 Release Notes +description: Release notes for NuGet 6.3 including new features, bug fixes, and DCRs. +author: martinrrm +ms.author: mruizmares +ms.date: 8/2/2022 +ms.topic: conceptual +--- + +# NuGet 6.3 Release Notes + +NuGet distribution vehicles: + +| NuGet version | Available in Visual Studio version | Available in .NET SDK(s) | +|:---|:---|:---| +| [**6.3**](https://nuget.org/downloads) | [Visual Studio 2022 version 17.3](https://visualstudio.microsoft.com/downloads/) | [6.0.400](https://dotnet.microsoft.com/download/dotnet-core/)1 | + +1 Installed with Visual Studio 17.3 with.NET Core workload + +## Summary: What's New in 6.3 + +* [Feature] Allow to user to input custom (floating) versions through the PM UI - [#9829](https://github.com/NuGet/Home/issues/9829) [#3788](https://github.com/NuGet/Home/issues/3788) + +* [Feature] NuGet warns when duplicate PackageReference, PackageVersion or PackageDownload items are specified - [#9467](https://github.com/NuGet/Home/issues/9467) [#9864](https://github.com/NuGet/Home/issues/9864) + +* When using Central Package Management, Visual Studio no longer errors when installing packages and instead the project and central package management file are updated - [#11828](https://github.com/NuGet/Home/issues/11828) + +* NuGet.Common, NuGet.Configuration, NuGet.Frameworks, NuGet.Packaging.Extraction and NuGet.Versioning no longer support net45 or net40 - [#11830](https://github.com/NuGet/Home/issues/11830) + +### Issues fixed in this release + +**DCRs:** + +* [DCR]: Print sources in NU1507 - [#11715](https://github.com/NuGet/Home/issues/11715) + +* [DCR]: Only cancel VS cred provider requests if VS is closing - [#11970](https://github.com/NuGet/Home/issues/11970) + +* For C++/CLI PackageReference projects, NuGet should ignore the TargetPlatformMoniker - [#11808](https://github.com/NuGet/Home/issues/11808) + +* [DCR]: Include caught exceptions as inner exceptions when rethrowing (in MsBuildUtility) - [#11766](https://github.com/NuGet/Home/issues/11766) + +* Specifying both -f ... and -r ... to dotnet build fails to restore if multiple frameworks are present in the project file - [#11653](https://github.com/NuGet/Home/issues/11653) + +* PackageSourceMapping public constructor - [#11609](https://github.com/NuGet/Home/issues/11609) + +* Add support for system and fallback certificate bundles - [#11263](https://github.com/NuGet/Home/issues/11263) + +**Bugs:** + +* [Bug]: X.509 trust store isn't initialized in `dotnet add package` and SDK resolver code paths - [#11956](https://github.com/NuGet/Home/issues/11956) + +* Cache DTE service in VS Solution Manager - [#11902](https://github.com/NuGet/Home/issues/11902) + +* Nuget CPS references reader is forcing all vc projects to be fully loaded - [#11877](https://github.com/NuGet/Home/issues/11877) + +* Make dotnet package verification env var value comparison case insensitive - [#11876](https://github.com/NuGet/Home/issues/11876) + +* Using JsonTextWriter manually in LockFileFormat - [#11870](https://github.com/NuGet/Home/issues/11870) + +* Extra allocations in EqualityUtility - [#11867](https://github.com/NuGet/Home/issues/11867) + +* [Bug]: Boxing of structs to compute hashcode is causing excessive allocations - [#11866](https://github.com/NuGet/Home/issues/11866) + +* When restore raises an NU1301, build might fail with a `project.assets.json doesn't have a target for 'net6.0-windows10.0.19041.0` like error that's a red herring - [#11862](https://github.com/NuGet/Home/issues/11862) + +* [Bug]: Package source option "All" appears unsorted in the in the list when using VS in non-English languages - [#11857](https://github.com/NuGet/Home/issues/11857) + +* [Bug]: [Bug Bash] The “Version” dropdown box is blank in “Consolidate” tab of solution-level PM UI - [#11806](https://github.com/NuGet/Home/issues/11806) + +* PackageDownload multiple versions doesn't work in Visual Studio. - [#11798](https://github.com/NuGet/Home/issues/11798) + +* [Bug]: Visual Studio restore sometimes sets originalTargetFrameworks incorrectly in project.assets.json - [#11795](https://github.com/NuGet/Home/issues/11795) + +* [Bug]: NuGet does not retry some HTTP timeouts - [#11779](https://github.com/NuGet/Home/issues/11779) + +* [Bug]: misspelling in RestoreCommandCannotDeterminePackagesFolder_deu - [#11774](https://github.com/NuGet/Home/issues/11774) + +* Update SPDX licenses to bb0099c - [#11765](https://github.com/NuGet/Home/issues/11765) + +* "Illegal characters in path" (Solution Directory) - [#11764](https://github.com/NuGet/Home/issues/11764) + +* NuGet Package Manager window causes persistent WPF frame rate spike due to a runaway animation - [#11746](https://github.com/NuGet/Home/issues/11746) + +* [Bug]: PM UI version list only shows a single latest version - [#11734](https://github.com/NuGet/Home/issues/11734) + +* Large number of allocations while processing package references - [#11733](https://github.com/NuGet/Home/issues/11733) + +* Unnecessary Allocations in SemanticVersion.ParseSections() - [#11732](https://github.com/NuGet/Home/issues/11732) + +* [Bug]: new warning for package source mappings doesn't pass a value for the resource string placeholder - [#11709](https://github.com/NuGet/Home/issues/11709) + +* [Bug]: Central package management breaks no-op restores - [#11696](https://github.com/NuGet/Home/issues/11696) + +* [Bug]: MsBuild version is not parsed correctly when -MsBuildPath option is passed to nuget.exe restore - [#11689](https://github.com/NuGet/Home/issues/11689) + +* [Bug]: Very slow restore or OOM when using NoWarn - [#11669](https://github.com/NuGet/Home/issues/11669) + +* [Bug]: Automatic credential plugin discovery is broken when 64 bit msbuild.exe is used by nuget.exe - [#11623](https://github.com/NuGet/Home/issues/11623) + +* [Bug]: Reduce memory allocation while detecting cycles or potential degrades in package versions during restore - [#11614](https://github.com/NuGet/Home/issues/11614) + +* Avoid JTF.Run wrapped property retrieval, use async methods instead. - [#11199](https://github.com/NuGet/Home/issues/11199) + +* .nupkg.metadata locked and being used by another process - [#10882](https://github.com/NuGet/Home/issues/10882) + +* Unexpected error “Your project file doesn’t list ‘win’ as a “RuntimeIdentifier”” occurs when building the solution after enabling “RestoreLockedMode” - [#10590](https://github.com/NuGet/Home/issues/10590) + +* NuGet.exe pack issues a warning (NU5128) when packing a project file - [#8713](https://github.com/NuGet/Home/issues/8713) + +* Transitive lock files (with wildcard) result in NU1004 - [#8465](https://github.com/NuGet/Home/issues/8465) + +* Enhance the experimentation infrastructure in NuGet code to support transitive dependencies - [#10758](https://github.com/NuGet/Home/issues/10758) \ No newline at end of file From 5de1ce2870b8785331505bf2fc31e72b9de3e2b3 Mon Sep 17 00:00:00 2001 From: Erick Yondon Date: Tue, 9 Aug 2022 14:27:31 -0700 Subject: [PATCH 634/988] Mention about NuGet.PackageSourcemapper tool for package source mapping feature (#2844) --- docs/consume-packages/Package-Source-Mapping.md | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/docs/consume-packages/Package-Source-Mapping.md b/docs/consume-packages/Package-Source-Mapping.md index fa0f95077..458ec6c2b 100644 --- a/docs/consume-packages/Package-Source-Mapping.md +++ b/docs/consume-packages/Package-Source-Mapping.md @@ -100,7 +100,11 @@ To learn more about how package installation works, see [the conceptual document ### Get started -To fully onboard your repository you may take the following steps: +There are 2 ways you can fully onboard your repository, [manually](#manual-onboarding) or using the [NuGet.PackageSourceMapper tool](#automated-onboarding-using-tool). + +#### Manual onboarding + +For manual onboarding you may take the following steps: 1. Declare a new [global packages folder for your repo](../reference/nuget-config-file.md#config-section). 1. Run [`dotnet list package --include-transitive`](/dotnet/core/tools/dotnet-list-package#synopsis) to view all top-level and transitive packages in your solution. @@ -111,8 +115,15 @@ To fully onboard your repository you may take the following steps: * Simplifying the configuration to fewer declarations by using broader package ID prefixes or [setting a default source](#setting-default-sources) where possible. * Verifying the source each package was restored from by checking the [metadata files in the global packages folder or reviewing the restore logs](https://devblogs.microsoft.com/nuget/performance-and-polish-with-nuget-5-9/). -For an idea of how your source mappings may look like, refer to our [samples repo](https://github.com/NuGet/Samples/tree/main/PackageSourceMappingExample). +#### Automated onboarding using tool + +Many repositories have a large number of packages and doing the work manually can be time consuming. The [NuGet.PackageSourceMapper tool](https://www.nuget.org/packages/NuGet.PackageSourceMapper) can automatically generate a NuGet.config for you, based on your project's known packages and sources. +The package source mapper tool requires you to have completed a successful package restore in which it will read each respective `.nupkg.metadata` file generated as part of your build to best understand how you map your respective packages and sources. Tool not only covers top dependencies it also considers all the transitive dependencies when generating mapping. + +Tool has several option how to generate mapping pattern depending on your need, please check [blog post](https://devblogs.microsoft.com/nuget/quickly-map-your-nuget-packages-to-sources) and tool's [readme instruction](https://www.nuget.org/packages/NuGet.PackageSourceMapper#readme-body-tab) for more details. + +For an idea of how your source mappings may look like, refer to our [samples repo](https://github.com/NuGet/Samples/tree/main/PackageSourceMappingExample). > [!Note] > This feature is in active development. We appreciate you trying it out and providing any feedback you may have at [NuGet/Home](https://github.com/nuget/home/issues). From 0899c7082e55defb0ae7f8886b99d561ee94077c Mon Sep 17 00:00:00 2001 From: Kartheek Penagamuri <52756182+kartheekp-ms@users.noreply.github.com> Date: Wed, 10 Aug 2022 17:45:47 -0700 Subject: [PATCH 635/988] added dotnet restore step and clear global packages folder step while onboarding onto source mapping feature (#2846) --- docs/consume-packages/Package-Source-Mapping.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/consume-packages/Package-Source-Mapping.md b/docs/consume-packages/Package-Source-Mapping.md index 458ec6c2b..9d673f638 100644 --- a/docs/consume-packages/Package-Source-Mapping.md +++ b/docs/consume-packages/Package-Source-Mapping.md @@ -107,9 +107,11 @@ There are 2 ways you can fully onboard your repository, [manually](#manual-onboa For manual onboarding you may take the following steps: 1. Declare a new [global packages folder for your repo](../reference/nuget-config-file.md#config-section). +1. Run [dotnet restore](/dotnet/core/tools/dotnet-restore) to restore dependencies. 1. Run [`dotnet list package --include-transitive`](/dotnet/core/tools/dotnet-list-package#synopsis) to view all top-level and transitive packages in your solution. * For .NET framework projects using [`packages.config`](../reference/packages-config.md), the `packages.config` file will have a flat list of all direct and transitive packages. 1. Define mappings such that every package ID in your solution - *including transitive packages* - matches a pattern for the target source. +1. Run [dotnet nuget locals global-packages -c](/dotnet/core/tools/dotnet-nuget-locals) to clear global-packages directory. 1. Run restore to validate that you have configured your mappings correctly. If your mappings don't fully cover every package ID in your solution, the error messages will help you identify the issue. 1. When restore succeeds, you are done! Optionally consider: * Simplifying the configuration to fewer declarations by using broader package ID prefixes or [setting a default source](#setting-default-sources) where possible. From a8d62dad39219e9f585470d707752df7f06b46cc Mon Sep 17 00:00:00 2001 From: Heng Liu <45407901+heng-liu@users.noreply.github.com> Date: Mon, 15 Aug 2022 17:06:41 -0700 Subject: [PATCH 636/988] Address inconsistency user settings on Mac/Linux (#2826) --- .../configuring-nuget-behavior.md | 21 +++++++++++++++++-- .../reference/cli-reference/cli-ref-config.md | 2 +- .../cli-reference/cli-ref-setapikey.md | 2 +- .../cli-reference/cli-ref-sources.md | 2 +- .../cli-reference/cli-ref-trusted-signers.md | 2 +- 5 files changed, 23 insertions(+), 6 deletions(-) diff --git a/docs/consume-packages/configuring-nuget-behavior.md b/docs/consume-packages/configuring-nuget-behavior.md index 936fdf388..a7b2dcf5b 100644 --- a/docs/consume-packages/configuring-nuget-behavior.md +++ b/docs/consume-packages/configuring-nuget-behavior.md @@ -16,9 +16,26 @@ NuGet's behavior is driven by the accumulated settings in one or more `NuGet.Con | Scope | `NuGet.Config` file location | Description | | --- | --- | --- | | Solution | Current folder (aka Solution folder) or any folder up to the drive root.| In a solution folder, settings apply to all projects in subfolders. Note that if a config file is placed in a project folder, it has no effect on that project. | -| User | **Windows:** `%appdata%\NuGet\NuGet.Config`
    **Mac/Linux:** `~/.config/NuGet/NuGet.Config` or `~/.nuget/NuGet/NuGet.Config` (varies by OS distribution)
    Additional configs are supported on all platforms. These configs cannot be edited by the tooling.
    **Windows:** `%appdata%\NuGet\config\*.Config`
    **Mac/Linux:** `~/.config/NuGet/config/*.config` or `~/.nuget/config/*.config` | Settings apply to all operations, but are overridden by any project-level settings. | +| User | **Windows:** `%appdata%\NuGet\NuGet.Config`
    **Mac/Linux:** `~/.config/NuGet/NuGet.Config` or `~/.nuget/NuGet/NuGet.Config` (varies by tooling)
    Additional configs are supported on all platforms. These configs cannot be edited by the tooling.
    **Windows:** `%appdata%\NuGet\config\*.Config`
    **Mac/Linux:** `~/.config/NuGet/config/*.config` or `~/.nuget/config/*.config` | Settings apply to all operations, but are overridden by any project-level settings. | | Computer | **Windows:** `%ProgramFiles(x86)%\NuGet\Config`
    **Mac/Linux:** `$XDG_DATA_HOME`. If `$XDG_DATA_HOME` is null or empty, `~/.local/share` or `/usr/local/share` will be used (varies by OS distribution) | Settings apply to all operations on the computer, but are overridden by any user- or project-level settings. | +> [!Note] +> On Mac/Linux, the user config file location varies by tooling. .NET CLI uses `~/.nuget/NuGet` folder, while Mono uses `~/.config/NuGet` folder. + +### On Mac/Linux, the user-level config file location varies by tooling +On Mac/Linux, the user config file location varies by tooling. +Majority of users use tools that look for the user config file under the `~/.nuget/NuGet` folder. +These other tools look for the user config file under the `~/.config/NuGet` folder: +* Mono +* NuGet.exe +* Visual Studio 2019 for Mac (and earlier versions) +* Visual Studio 2022 for Mac (and later versions), only when working on classic Mono projects. + +If the tooling you use involves both locations, consider consolidating them by following these steps to allow you to work with only one user-level config file: +1. Check the contents of the two user-level config files and keep the one you want under `~/.nuget/NuGet` folder. +2. Set symbolic link from `~/.nuget/NuGet` to `~/.config/Nuget`. E.g. Run bash command: `ln -s ~/.nuget/NuGet ~/.config/Nuget`. + + Notes for earlier versions of NuGet: - NuGet 3.3 and earlier used a `.nuget` folder for solution-wide settings. This folder is not used in NuGet 3.4+. - For NuGet 2.6 to 3.x, the computer-level config file on Windows was located in `%ProgramData%\NuGet\Config[\{IDE}[\{Version}[\{SKU}]]]\NuGet.Config`, where `{IDE}` can be `VisualStudio`, `{Version}` was the Visual Studio version such as `14.0`, and `{SKU}` is either `Community`, `Pro`, or `Enterprise`. To migrate settings to NuGet 4.0+, simply copy the config file to `%ProgramFiles(x86)%\NuGet\Config`. On Linux, this previous location was `/etc/opt`, and on Mac, `/Library/Application Support`. @@ -28,7 +45,7 @@ Notes for earlier versions of NuGet: A `NuGet.Config` file is a simple XML text file containing key/value pairs as described in the [NuGet Configuration Settings](../reference/nuget-config-file.md) topic. Settings are managed using the NuGet CLI [config command](../reference/cli-reference/cli-ref-config.md): -- By default, changes are made to the user-level config file. +- By default, changes are made to the user-level config file. (On Mac/Linux, the location of user-level config file varies by tooling) - To change settings in a different file, use the `-configFile` switch. In this case files can use any filename. - Keys are always case sensitive. - Elevation is required to change settings in the computer-level settings file. diff --git a/docs/reference/cli-reference/cli-ref-config.md b/docs/reference/cli-reference/cli-ref-config.md index c6a8a726e..229835f85 100644 --- a/docs/reference/cli-reference/cli-ref-config.md +++ b/docs/reference/cli-reference/cli-ref-config.md @@ -35,7 +35,7 @@ In NuGet 3.4+, `` can use [environment variables](cli-ref-environment-var - **`-ConfigFile`** - The NuGet configuration file to apply. If not specified, `%AppData%\NuGet\NuGet.Config` (Windows), or `~/.nuget/NuGet/NuGet.Config` or `~/.config/NuGet/NuGet.Config` (Mac/Linux) is used. + The NuGet configuration file to apply. If not specified, `%AppData%\NuGet\NuGet.Config` (Windows), or `~/.nuget/NuGet/NuGet.Config` or `~/.config/NuGet/NuGet.Config` (Mac/Linux) is used. See [On Mac/Linux, the user-level config file location varies by tooling.](../../consume-packages/configuring-nuget-behavior.md#on-maclinux-the-user-level-config-file-location-varies-by-tooling). - **`-ForceEnglishOutput`** diff --git a/docs/reference/cli-reference/cli-ref-setapikey.md b/docs/reference/cli-reference/cli-ref-setapikey.md index d074f968c..93d1c3734 100644 --- a/docs/reference/cli-reference/cli-ref-setapikey.md +++ b/docs/reference/cli-reference/cli-ref-setapikey.md @@ -29,7 +29,7 @@ where `` identifies the server and `` is the key to save. If `` is one of *List, Add, Remove, Enable, Disable,* or *Update*, - **`-ConfigFile`** - The NuGet configuration file to apply. If not specified, `%AppData%\NuGet\NuGet.Config` (Windows), or `~/.nuget/NuGet/NuGet.Config` or `~/.config/NuGet/NuGet.Config` (Mac/Linux) is used. + The NuGet configuration file to apply. If not specified, `%AppData%\NuGet\NuGet.Config` (Windows), or `~/.nuget/NuGet/NuGet.Config` or `~/.config/NuGet/NuGet.Config` (Mac/Linux) is used. See [On Mac/Linux, the user-level config file location varies by tooling.](../../consume-packages/configuring-nuget-behavior.md#on-maclinux-the-user-level-config-file-location-varies-by-tooling). - **`-ForceEnglishOutput`** diff --git a/docs/reference/cli-reference/cli-ref-trusted-signers.md b/docs/reference/cli-reference/cli-ref-trusted-signers.md index 1aa7da34f..6b22c814a 100644 --- a/docs/reference/cli-reference/cli-ref-trusted-signers.md +++ b/docs/reference/cli-reference/cli-ref-trusted-signers.md @@ -135,7 +135,7 @@ _Note_: This gesture will delete the current list of certificates and replace th - **`-ConfigFile`** - The NuGet configuration file to apply. If not specified, `%AppData%\NuGet\NuGet.Config` (Windows), or `~/.nuget/NuGet/NuGet.Config` or `~/.config/NuGet/NuGet.Config` (Mac/Linux) is used. + The NuGet configuration file to apply. If not specified, `%AppData%\NuGet\NuGet.Config` (Windows), or `~/.nuget/NuGet/NuGet.Config` or `~/.config/NuGet/NuGet.Config` (Mac/Linux) is used. See [On Mac/Linux, the user-level config file location varies by tooling.](../../consume-packages/configuring-nuget-behavior.md#on-maclinux-the-user-level-config-file-location-varies-by-tooling). - **`-ForceEnglishOutput`** From f3aeb20c43e6047fcb1d4e143616d0afcd539cd8 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Mon, 29 Aug 2022 18:29:48 -0700 Subject: [PATCH 637/988] NU1504, NU1505 and NU1506 are warnings not errors (#2854) --- docs/reference/errors-and-warnings/NU1504.md | 8 ++++---- docs/reference/errors-and-warnings/NU1505.md | 8 ++++---- docs/reference/errors-and-warnings/NU1506.md | 8 ++++---- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/docs/reference/errors-and-warnings/NU1504.md b/docs/reference/errors-and-warnings/NU1504.md index 5ee017c3b..368a1e6f6 100644 --- a/docs/reference/errors-and-warnings/NU1504.md +++ b/docs/reference/errors-and-warnings/NU1504.md @@ -1,6 +1,6 @@ --- -title: NuGet Error NU1504 -description: NU1504 error code +title: NuGet Warning NU1504 +description: NU1504 warning code author: nkolev92 ms.author: nikolev ms.date: 03/31/2022 @@ -9,7 +9,7 @@ f1_keywords: - "NU1504" --- -# NuGet Error NU1504 +# NuGet Warning NU1504 ## Scenario 1 @@ -36,7 +36,7 @@ This can cause an inconsistent restore behavior. ### Solution -Consult the recommendations in the error message and do one of the following: +Consult the recommendations in the warning message and do one of the following: - Remove the duplicate items - Use item `Update` instead of item `Include` diff --git a/docs/reference/errors-and-warnings/NU1505.md b/docs/reference/errors-and-warnings/NU1505.md index 09e2634e2..3fe1efb99 100644 --- a/docs/reference/errors-and-warnings/NU1505.md +++ b/docs/reference/errors-and-warnings/NU1505.md @@ -1,6 +1,6 @@ --- -title: NuGet Error NU1505 -description: NU1505 error code +title: NuGet Warning NU1505 +description: NU1505 warning code author: nkolev92 ms.author: nikolev ms.date: 03/31/2022 @@ -9,7 +9,7 @@ f1_keywords: - "NU1505" --- -# NuGet Error NU1505 +# NuGet Warning NU1505 ## Scenario 1 @@ -36,7 +36,7 @@ This can cause an inconsistent restore behavior. ### Solution -Consult the recommendations in the error message and do one of the following: +Consult the recommendations in the warning message and do one of the following: - Remove the duplicate items - Use item `Update` instead of item `Include` diff --git a/docs/reference/errors-and-warnings/NU1506.md b/docs/reference/errors-and-warnings/NU1506.md index 2c1940201..25588baab 100644 --- a/docs/reference/errors-and-warnings/NU1506.md +++ b/docs/reference/errors-and-warnings/NU1506.md @@ -1,6 +1,6 @@ --- -title: NuGet Error NU1506 -description: NU1506 error code +title: NuGet Warning NU1506 +description: NU1506 warning code author: nkolev92 ms.author: nikolev ms.date: 03/31/2022 @@ -9,7 +9,7 @@ f1_keywords: - "NU1506" --- -# NuGet Error NU1506 +# NuGet Warning NU1506 ## Scenario 1 @@ -36,7 +36,7 @@ This can cause an inconsistent restore behavior. ### Solution -Consult the recommendations in the error message and do one of the following: +Consult the recommendations in the warning message and do one of the following: - Remove the duplicate items - Use item `Update` instead of item `Include` From 18d9d6cab3dd993f1bbf3867cef82714963323bf Mon Sep 17 00:00:00 2001 From: Theano Petersen Date: Tue, 30 Aug 2022 14:51:33 -0700 Subject: [PATCH 638/988] Fix author and ms.author (#2866) --- docs/create-packages/Package-authoring-best-practices.md | 4 ++-- docs/nuget-org/package-readme-on-nuget-org.md | 4 ++-- docs/reference/errors-and-warnings/NU5038.md | 4 ++-- docs/reference/errors-and-warnings/NU5039.md | 4 ++-- docs/reference/errors-and-warnings/NU5040.md | 4 ++-- docs/reference/errors-and-warnings/NU5041.md | 4 ++-- docs/release-notes/NuGet-5.6.md | 4 ++-- docs/release-notes/NuGet-5.7.md | 4 ++-- 8 files changed, 16 insertions(+), 16 deletions(-) diff --git a/docs/create-packages/Package-authoring-best-practices.md b/docs/create-packages/Package-authoring-best-practices.md index a579fc341..b44f70071 100644 --- a/docs/create-packages/Package-authoring-best-practices.md +++ b/docs/create-packages/Package-authoring-best-practices.md @@ -1,8 +1,8 @@ --- title: Package authoring best practices description: A general guide of best practices for creating high quality NuGet packages. -author: chgill-MSFT -ms.author: chgill +author: nkolev92 +ms.author: nikolev ms.date: 11/15/2021 ms.topic: conceptual --- diff --git a/docs/nuget-org/package-readme-on-nuget-org.md b/docs/nuget-org/package-readme-on-nuget-org.md index 158bd2ca9..78a276368 100644 --- a/docs/nuget-org/package-readme-on-nuget-org.md +++ b/docs/nuget-org/package-readme-on-nuget-org.md @@ -1,8 +1,8 @@ --- title: Package readme on NuGet.org description: Detailed explanation of how readme files on NuGet.org are rendered and what to do when you run into issues. -author: chgill-MSFT -ms.author: chgill +author: nkolev92 +ms.author: nikolev ms.date: 02/23/2021 ms.topic: conceptual ms.reviewer: anangaur diff --git a/docs/reference/errors-and-warnings/NU5038.md b/docs/reference/errors-and-warnings/NU5038.md index f47a69e1f..27b38557a 100644 --- a/docs/reference/errors-and-warnings/NU5038.md +++ b/docs/reference/errors-and-warnings/NU5038.md @@ -1,8 +1,8 @@ --- title: NuGet Error NU5038 description: NU5038 Error code -author: chgill-MSFT -ms.author: chgill +author: nkolev92 +ms.author: nikolev ms.date: 7/28/2020 ms.topic: reference ms.reviewer: diff --git a/docs/reference/errors-and-warnings/NU5039.md b/docs/reference/errors-and-warnings/NU5039.md index ac8fe6ca2..31b4b9e51 100644 --- a/docs/reference/errors-and-warnings/NU5039.md +++ b/docs/reference/errors-and-warnings/NU5039.md @@ -1,8 +1,8 @@ --- title: NuGet Error NU5039 description: NU5039 Error code -author: chgill-MSFT -ms.author: chgill +author: nkolev92 +ms.author: nikolev ms.date: 7/28/2020 ms.topic: reference ms.reviewer: diff --git a/docs/reference/errors-and-warnings/NU5040.md b/docs/reference/errors-and-warnings/NU5040.md index 5662b368d..f5a37b674 100644 --- a/docs/reference/errors-and-warnings/NU5040.md +++ b/docs/reference/errors-and-warnings/NU5040.md @@ -1,8 +1,8 @@ --- title: NuGet Error NU5040 description: NU5040 Error code -author: chgill-MSFT -ms.author: chgill +author: nkolev92 +ms.author: nikolev ms.date: 7/28/2020 ms.topic: reference ms.reviewer: diff --git a/docs/reference/errors-and-warnings/NU5041.md b/docs/reference/errors-and-warnings/NU5041.md index 5253e56c6..62bef9f20 100644 --- a/docs/reference/errors-and-warnings/NU5041.md +++ b/docs/reference/errors-and-warnings/NU5041.md @@ -1,8 +1,8 @@ --- title: NuGet Error NU5041 description: NU5041 Error code -author: chgill-MSFT -ms.author: chgill +author: nkolev92 +ms.author: nikolev ms.date: 7/28/2020 ms.topic: reference ms.reviewer: diff --git a/docs/release-notes/NuGet-5.6.md b/docs/release-notes/NuGet-5.6.md index ed6e363cf..be2dc0ce2 100644 --- a/docs/release-notes/NuGet-5.6.md +++ b/docs/release-notes/NuGet-5.6.md @@ -1,8 +1,8 @@ --- title: NuGet 5.6 Release Notes description: Release notes for NuGet 5.6 including new features, bug fixes, and DCRs. -author: chgill-msft -ms.author: chgill +author: nkolev92 +ms.author: nikolev ms.date: 05/19/2020 ms.topic: conceptual --- diff --git a/docs/release-notes/NuGet-5.7.md b/docs/release-notes/NuGet-5.7.md index 76b948a58..f6d4ee227 100644 --- a/docs/release-notes/NuGet-5.7.md +++ b/docs/release-notes/NuGet-5.7.md @@ -1,8 +1,8 @@ --- title: NuGet 5.7 Release Notes description: Release notes for NuGet 5.7 including new features, bug fixes, and DCRs. -author: chgill-msft -ms.author: chgill +author: nkolev92 +ms.author: nikolev ms.date: 8/14/2020 ms.topic: conceptual --- From 39f9459dc3628bad62f70988daf93a2d9a514361 Mon Sep 17 00:00:00 2001 From: Anand Gaurav Date: Tue, 30 Aug 2022 15:49:35 -0700 Subject: [PATCH 639/988] Update Symbol-Packages.md (#2855) Removing references to symbolsource --- docs/create-packages/Symbol-Packages.md | 39 +------------------------ 1 file changed, 1 insertion(+), 38 deletions(-) diff --git a/docs/create-packages/Symbol-Packages.md b/docs/create-packages/Symbol-Packages.md index 6a49f689e..3226ec766 100644 --- a/docs/create-packages/Symbol-Packages.md +++ b/docs/create-packages/Symbol-Packages.md @@ -14,9 +14,7 @@ ms.reviewer: anangaur > The new recommended format for symbol packages is .snupkg. See [Creating symbol packages (.snupkg)](Symbol-Packages-snupkg.md).
    > .symbols.nupkg is still supported but only for compatibility reasons. -In addition to building packages for nuget.org or other sources, NuGet also supports creating associated symbol packages that can be published to symbol servers. The legacy symbol package format, .symbols.nupkg, can be pushed to the SymbolSource repository. - -Package consumers can then add `https://nuget.smbsrc.net` to their symbol sources in Visual Studio, which allows stepping into package code in the Visual Studio debugger. See [Specify symbol (.pdb) and source files in the Visual Studio debugger](/visualstudio/debugger/specify-symbol-dot-pdb-and-source-files-in-the-visual-studio-debugger) for details on that process. +In addition to building packages for nuget.org or other sources, NuGet also supports creating associated symbol packages that can be published to symbol servers. ## Creating a legacy symbol package @@ -98,41 +96,6 @@ A legacy symbol package can be built by conventions, from a folder structure as
    ``` -## Publishing a legacy symbol package - -> [!Important] -> To push packages to nuget.org you must use [nuget.exe v4.9.1 or above](https://www.nuget.org/downloads), which implements the required [NuGet protocols](../api/nuget-protocols.md). - -1. For convenience, first save your API key with NuGet (see [publish a package](../nuget-org/publish-a-package.md), which will apply to both nuget.org and symbolsource.org, because symbolsource.org will check with nuget.org to verify that you are the package owner. - - ```cli - nuget SetApiKey Your-API-Key - ``` - -2. After publishing your primary package to nuget.org, push the legacy symbol package as follows, which will automatically use symbolsource.org as the target because of the `.symbols` in the filename: - - ```cli - nuget push MyPackage.symbols.nupkg - ``` - -3. To publish to a different symbol repository, or to push a legacy symbol package that doesn't follow the naming convention, use the `-Source` option: - - ```cli - nuget push MyPackage.symbols.nupkg -source https://nuget.smbsrc.net/ - ``` - -4. You can also push both primary and symbol packages to both repositories at the same time using the following: - - ```cli - nuget push MyPackage.nupkg - ``` - - > [!Note] - > With nuget.exe 4.5.0 or above, the symbols packages are not automatically pushed to symbolsource.org. You would need to push the symbols packages separately as explained in the earlier steps. - -In this case, NuGet will publish `MyPackage.symbols.nupkg`, if present, to https://nuget.smbsrc.net/ (the push URL for symbolsource.org), after it publishes the primary package to nuget.org. - ## See also * [Creating symbol packages (.snupkg)](Symbol-Packages-snupkg.md) - The new recommended format for symbol packages -* [Moving to the new SymbolSource engine](https://tripleemcoder.com/2015/10/04/moving-to-the-new-symbolsource-engine/) (symbolsource.org) From 7bf3a7430c563c44ad062beaf3df7b52a6b4034a Mon Sep 17 00:00:00 2001 From: Dean Simpson <31017587+dksimpson@users.noreply.github.com> Date: Tue, 30 Aug 2022 15:50:15 -0700 Subject: [PATCH 640/988] Refresh NuGet get started articles for VS 2022 #1 (#2850) --- ...tall-and-use-a-package-in-visual-studio.md | 116 ++++++++++-------- .../media/QS_Use-02-ManageNuGetPackages.png | Bin 37199 -> 0 bytes .../media/QS_Use-03-NewtonsoftJson.png | Bin 86838 -> 0 bytes .../media/QS_Use-03b-SelectFormat.png | Bin 7121 -> 0 bytes docs/quickstart/media/QS_Use-06-AppStart.png | Bin 13841 -> 0 bytes docs/quickstart/media/QS_Use-07-AppEnd.png | Bin 21519 -> 0 bytes docs/quickstart/media/QS_Use-08-Console1.png | Bin 39664 -> 0 bytes .../media/qs-use-install-package.png | Bin 0 -> 62904 bytes .../media/qs-use-package-manager-console.png | Bin 0 -> 29729 bytes docs/quickstart/media/qs-use-wpf-app-end.png | Bin 0 -> 23791 bytes .../quickstart/media/qs-use-wpf-app-start.png | Bin 0 -> 16453 bytes 11 files changed, 63 insertions(+), 53 deletions(-) delete mode 100644 docs/quickstart/media/QS_Use-02-ManageNuGetPackages.png delete mode 100644 docs/quickstart/media/QS_Use-03-NewtonsoftJson.png delete mode 100644 docs/quickstart/media/QS_Use-03b-SelectFormat.png delete mode 100644 docs/quickstart/media/QS_Use-06-AppStart.png delete mode 100644 docs/quickstart/media/QS_Use-07-AppEnd.png delete mode 100644 docs/quickstart/media/QS_Use-08-Console1.png create mode 100644 docs/quickstart/media/qs-use-install-package.png create mode 100644 docs/quickstart/media/qs-use-package-manager-console.png create mode 100644 docs/quickstart/media/qs-use-wpf-app-end.png create mode 100644 docs/quickstart/media/qs-use-wpf-app-start.png diff --git a/docs/quickstart/install-and-use-a-package-in-visual-studio.md b/docs/quickstart/install-and-use-a-package-in-visual-studio.md index 0cfd16814..60a6bbf52 100644 --- a/docs/quickstart/install-and-use-a-package-in-visual-studio.md +++ b/docs/quickstart/install-and-use-a-package-in-visual-studio.md @@ -1,78 +1,82 @@ --- -title: Install and use a NuGet package in Visual Studio -description: A walkthrough tutorial on the process of installing and using a NuGet package in a Visual Studio project. +title: "Quickstart: Install and use a NuGet package in Visual Studio (Windows only)" +description: In this quickstart, you learn how to install and use a NuGet package in a Visual Studio project for Windows. author: JonDouglas ms.author: jodou -ms.date: 07/24/2018 +ms.date: 08/22/2022 ms.topic: quickstart --- -# Quickstart: Install and use a package in Visual Studio (Windows only) +# Quickstart: Install and use a NuGet package in Visual Studio (Windows only) -NuGet packages contain reusable code that other developers make available to you for use in your projects. See [What is NuGet?](../What-is-NuGet.md) for background. Packages are installed into a Visual Studio project using the NuGet Package Manager, the [Package Manager Console](../consume-packages/install-use-packages-powershell.md), or the [dotnet CLI](install-and-use-a-package-using-the-dotnet-cli.md). This article demonstrates the process using the popular [Newtonsoft.Json](https://www.nuget.org/packages/Newtonsoft.Json/) package and a Windows Presentation Foundation (WPF) project. The same process applies to any other .NET or .NET Core project. +A *NuGet package* contains reusable code that other developers have made available to you for use in your projects. You can install a NuGet package in a Microsoft Visual Studio project by using the [NuGet Package Manager](../consume-packages/install-use-packages-visual-studio.md), the [Package Manager Console](../consume-packages/install-use-packages-powershell.md), or the [.NET CLI](install-and-use-a-package-using-the-dotnet-cli.md). This article demonstrates how to create a Windows Presentation Foundation (WPF) project with the popular `Newtonsoft.Json` package. The same process applies to any other .NET or .NET Core project. -Once installed, refer to the package in code with `using ` where \ is specific to the package you're using. Once the reference is made, you can call the package through its API. +After you install a NuGet package, you can then make a reference to it in your code with the `using ` statement, where \ is the name of package you're using. After you've made a reference, you can then call the package through its API. -> [!Tip] -> **Start with nuget.org**: Browsing *nuget.org* is how .NET developers typically find components they can reuse in their own applications. You can search *nuget.org* directly or find and install packages within Visual Studio as shown in this article. For general information, see [Find and evaluate NuGet packages](../consume-packages/finding-and-choosing-packages.md). +The article is for Windows users only. If you're using Visual Studio for Mac, see [Install and use a package in Visual Studio for Mac](install-and-use-a-package-in-visual-studio-mac.md). -## Prerequisites +> [!TIP] +> To find a NuGet package, start with *nuget.org*. Browsing nuget.org is how .NET developers typically find components they can reuse in their own applications. You can do a search of nuget.org directly or find and install packages within Visual Studio as shown in this article. For more information, see [Find and evaluate NuGet packages](../consume-packages/finding-and-choosing-packages.md). -- Visual Studio 2019 with the .NET Desktop Development workload. +## Prerequisites -You can install the 2019 Community edition for free from [visualstudio.com](https://www.visualstudio.com/) or use the Professional or Enterprise editions. +- Install Visual Studio 2022 for Windows with the .NET desktop development workload. -If you're using Visual Studio for Mac, see [Install and use a package in Visual Studio for Mac](install-and-use-a-package-in-visual-studio-mac.md). + You can install the 2022 Community edition for free from [visualstudio.microsoft.com](https://visualstudio.microsoft.com/), or use the Professional or Enterprise edition. ## Create a project -NuGet packages can be installed into any .NET project, provided that the package supports the same target framework as the project. +You can install a NuGet package into any .NET project if that package supports the same target framework as the project. However, for this quickstart you'll create a Windows Presentation Foundation (WPF) Application project. -For this walkthrough, use a simple WPF app. Create a project in Visual Studio using **File** > **New Project**, typing **.NET** in the search box, and then selecting the **WPF App (.NET Framework)**. Click **Next**. Accept the default values for **Framework** when prompted. +Follow these steps: -Visual Studio creates the project, which can be found in Solution Explorer. For more information, see [Learn about Solution Explorer](/visualstudio/ide/use-solution-explorer). +1. In Visual Studio, select **File** > **New** > **Project**. -## Add the Newtonsoft.Json NuGet package +1. In the **Create a new project** window, enter *WPF* in the search box and select **C#** and **Windows** in the dropdown lists. In the resulting list of project templates, select **WPF Application**, and then select **Next**. -To install the package, you can use either the NuGet Package Manager or the Package Manager Console. When you install a package, NuGet records the dependency in either your project file or a `packages.config` file (depending on the project format). For more information, see [Package consumption overview and workflow](../consume-packages/Overview-and-Workflow.md). +1. In the **Configure your new project** window, optionally update the **Project name** and the **Solution name**, and then select **Next**. -### NuGet Package Manager +1. In the **Additional information** window, select **.NET 6.0** (or the latest version) for **Framework**, and then select **Create**. -1. In Solution Explorer, right-click **References** and choose **Manage NuGet Packages**. + Visual Studio creates the project, and it appears in [Solution Explorer](/visualstudio/ide/use-solution-explorer). - ![Manage NuGet Packages command for project References](media/QS_Use-02-ManageNuGetPackages.png) +## Add the Newtonsoft.Json NuGet package + +To install a NuGet package in this quickstart, you can use either the NuGet Package Manager or the Package Manager Console. Depending on your project format, the installation of a NuGet package records the dependency in either your project file or a *packages.config* file. For more information, see [Package consumption workflow](../consume-packages/overview-and-workflow.md). -1. Choose "nuget.org" as the **Package source**, select the **Browse** tab, search for **Newtonsoft.Json**, select that package in the list, and select **Install**: +### NuGet Package Manager - ![Locating Newtonsoft.Json package](media/QS_Use-03-NewtonsoftJson.png) +To use the [NuGet Package Manager](../consume-packages/install-use-packages-visual-studio.md) to install the `Newtonsoft.Json` package in Visual Studio, follow these steps: - If you want more information on the NuGet Package Manager, see [Install and manage packages using Visual Studio](../consume-packages/install-use-packages-visual-studio.md). +1. Select **Project** > **Manage NuGet Packages**. -1. Accept any license prompts. +1. In the **NuGet Package Manager** page, choose **nuget.org** as the **Package source**. -1. (Visual Studio 2017 only) If prompted to select a package management format, select **PackageReference in project file**: +1. From the **Browse** tab, search for *Newtonsoft.Json*, select **Newtonsoft.Json** in the list, and then select **Install**. - ![Selecting a package management format](media/QS_Use-03b-SelectFormat.png) + :::image type="content" source="media/qs-use-install-package.png" alt-text="Screenshot showing the NuGet Package Manager window with the Newtonsoft.Json package selected."::: -1. If prompted to review changes, select **OK**. +1. If you're prompted to verify the installation, select **OK**. ### Package Manager Console -1. Select the **Tools** > **NuGet Package Manager** > **Package Manager Console** menu command. +Alternatively, to use the [Package Manager Console](../consume-packages/install-use-packages-powershell.md) in Visual Studio to install the `Newtonsoft.Json` package, follow these steps: + +1. From Visual Studio, select **Tools** > **NuGet Package Manager** > **Package Manager Console**. -1. Once the console opens, check that the **Default project** drop-down list shows the project into which you want to install the package. If you have a single project in the solution, it is already selected. +1. After the **Package Manager Console** pane opens, verify that the **Default project** drop-down list shows the project in which you want to install the package. If you have a single project in the solution, it's preselected. - ![Select a project for the package](media/QS_Use-08-Console1.png) + :::image type="content" source="media/qs-use-package-manager-console.png" alt-text="Screenshot showing the Package Manage Console window with Default project highlighted."::: -1. Enter the command `Install-Package Newtonsoft.Json` (see [Install-Package](../reference/ps-reference/ps-ref-install-package.md)). The console window shows output for the command. Errors typically indicate that the package isn't compatible with the project's target framework. +1. At the console prompt, enter the command `Install-Package Newtonsoft.Json`. For more information about this command, see [Install-Package](../reference/ps-reference/ps-ref-install-package.md). - If you want more information on the Package Manager Console, see [Install and manage packages using Package Manager Console](../consume-packages/install-use-packages-powershell.md). + The console window shows the output for the command. Errors typically indicate that the package isn't compatible with the project's target framework. ## Use the Newtonsoft.Json API in the app -With the Newtonsoft.Json package in the project, you can call its `JsonConvert.SerializeObject` method to convert an object to a human-readable string. +With the `Newtonsoft.Json` package in the project, call its `JsonConvert.SerializeObject` method to convert an object to a human-readable string: -1. Open `MainWindow.xaml` and replace the existing `Grid` element with the following: +1. From **Solution Explorer**, open *MainWindow.xaml* and replace the existing `` element with the following code: ```xaml @@ -83,9 +87,9 @@ With the Newtonsoft.Json package in the project, you can call its `JsonConvert.S ``` -1. Open the `MainWindow.xaml.cs` file (located in Solution Explorer under the `MainWindow.xaml` node), and insert the following code inside the `MainWindow` class: +1. Open the *MainWindow.xaml.cs* file under the *MainWindow.xaml* node, and insert the following code inside the `MainWindow` class after the constructor: - ```cs + ```csharp public class Account { public string Name { get; set; } @@ -106,38 +110,44 @@ With the Newtonsoft.Json package in the project, you can call its `JsonConvert.S } ``` -1. Even though you added the Newtonsoft.Json package to the project, red squiggles appears under `JsonConvert` because you need a `using` statement at the top of the code file: +1. To avoid an error for the `JsonConvert` object in the code (a red squiggle line will appear), add the following statement at the beginning of the code file: - ```cs + ```csharp using Newtonsoft.Json; ``` -1. Build and run the app by pressing F5 or selecting **Debug** > **Start Debugging**: +1. To build and run the app, press F5 or select **Debug** > **Start Debugging**. - ![Initial output of the WPF app](media/QS_Use-06-AppStart.png) + The following window appears: -1. Select on the button to see the contents of the TextBlock replaced with some JSON text: + ![Screenshot showing the initial output of the WPF app.](media/qs-use-wpf-app-start.png) - ![Output of the WPF app after selecting the button](media/QS_Use-07-AppEnd.png) +1. Select the **Click Me** button to see the contents of the `TextBlock` object replaced with JSON text. + + ![Screenshot showing the output of the WPF app after selecting the button.](media/qs-use-wpf-app-end.png) ## Related video -> [!Video https://docs.microsoft.com/shows/NuGet-101/Install-and-Use-a-NuGet-Package-with-Visual-Studio-2-of-5/player] +- [Install and Use a NuGet Package with Visual Studio](/shows/nuget-101/install-and-use-a-nuget-package-with-visual-studio-2-of-5/player) +- Find more NuGet videos on [Channel 9](/shows/nuget-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). + +## See also -Find more NuGet videos on [Channel 9](/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). +For more information about NuGet, see the following articles: + +- [What is NuGet?](../what-is-nuget.md) +- [Package consumption workflow](../consume-packages/overview-and-workflow.md) +- [Find and choose packages](../consume-packages/finding-and-choosing-packages.md) +- [Package references in project files](../consume-packages/package-references-in-project-files.md) +- [Install and use a package using the .NET CLI](install-and-use-a-package-using-the-dotnet-cli.md). +- [Newtonsoft.Json package](https://www.nuget.org/packages/newtonsoft.json) ## Next steps -Congratulations on installing and using your first NuGet package! +Congratulations on installing and using your first NuGet package. Advance to the next article to learn more about installing and managing NuGet packages. > [!div class="nextstepaction"] -> [Install and manage packages using Visual Studio](../consume-packages/install-use-packages-visual-studio.md) +> [Install and manage packages using using the NuGet Package Manager](../consume-packages/install-use-packages-visual-studio.md) > [!div class="nextstepaction"] -> [Install and manage packages using Package Manager Console](../consume-packages/install-use-packages-powershell.md) - -To explore more that NuGet has to offer, select the links below. - -- [Overview and workflow of package consumption](../consume-packages/overview-and-workflow.md) -- [Finding and choosing packages](../consume-packages/finding-and-choosing-packages.md) -- [Package references in project files](../consume-packages/package-references-in-project-files.md) +> [Install and manage packages using the Package Manager Console](../consume-packages/install-use-packages-powershell.md) diff --git a/docs/quickstart/media/QS_Use-02-ManageNuGetPackages.png b/docs/quickstart/media/QS_Use-02-ManageNuGetPackages.png deleted file mode 100644 index 5086d4fecd6c82965b938ab7c9fe140c90b26e91..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37199 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 f5y&b`?zx~_iU~U|X5_$nSa4({6+&_SgL(h(vZ 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 diff --git a/docs/quickstart/media/QS_Use-06-AppStart.png b/docs/quickstart/media/QS_Use-06-AppStart.png deleted file mode 100644 index 4b82ee5ce3ed8ef7adf71182bf9545d4542591d7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13841 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 diff --git a/docs/quickstart/media/QS_Use-08-Console1.png b/docs/quickstart/media/QS_Use-08-Console1.png deleted file mode 100644 index 2450415c3a32b8c8df555e686119fc174f0bd7b8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 39664 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 diff --git a/docs/quickstart/media/qs-use-install-package.png b/docs/quickstart/media/qs-use-install-package.png new file mode 100644 index 0000000000000000000000000000000000000000..253bf15f5a922ca4b15ba1d19b1b8ee38b409e2e GIT binary patch literal 62904 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 KWXVa_U;hb2zGrg) literal 0 HcmV?d00001 diff --git a/docs/quickstart/media/qs-use-wpf-app-start.png b/docs/quickstart/media/qs-use-wpf-app-start.png new file mode 100644 index 0000000000000000000000000000000000000000..3ab0561d564d254185e058db65272570e2b85d74 GIT binary patch literal 16453 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 Date: Tue, 30 Aug 2022 16:07:35 -0700 Subject: [PATCH 641/988] Update and refresh 4 articles: Install and use packages (#2852) --- .../includes/restore-dotnet-cli.md | 12 +- .../includes/restore-nuget-exe-cli.md | 20 +- .../install-use-packages-dotnet-cli.md | 50 ++-- .../install-use-packages-nuget-cli.md | 103 ++++---- .../install-use-packages-powershell.md | 221 ++++++++++-------- .../media/PackageManagerConsoleInstall.png | Bin 11680 -> 13810 bytes ...-and-use-a-package-using-the-dotnet-cli.md | 86 +++---- 7 files changed, 269 insertions(+), 223 deletions(-) diff --git a/docs/consume-packages/includes/restore-dotnet-cli.md b/docs/consume-packages/includes/restore-dotnet-cli.md index 5e765336a..6d3b8bd98 100644 --- a/docs/consume-packages/includes/restore-dotnet-cli.md +++ b/docs/consume-packages/includes/restore-dotnet-cli.md @@ -1,9 +1,9 @@ -Use the [dotnet restore](/dotnet/core/tools/dotnet-restore?tabs=netcore2x) command, which restores packages listed in the project file (see [PackageReference](../../consume-packages/package-references-in-project-files.md)). With .NET Core 2.0 and later, restore is done automatically with `dotnet build` and `dotnet run`. As of NuGet 4.0, this runs the same code as `nuget restore`. +The [dotnet restore](/dotnet/core/tools/dotnet-restore) command restores packages that the project file lists with ``. For more information, see [PackageReference in project files](../../consume-packages/package-references-in-project-files.md). -As with the other `dotnet` CLI commands, first open a command line and switch to the directory that contains your project file. +.NET Core 2.0 and later `dotnet build` and `dotnet run` commands restore packages automatically. As of NuGet 4.0, `dotnet restore` runs the same code as `nuget restore`. -To restore a package using `dotnet restore`: +To restore a package with `dotnet restore`: + +1. Open a command line and switch to the directory that contains your project file. +1. Run `dotnet restore`. -```dotnetcli -dotnet restore -``` \ No newline at end of file diff --git a/docs/consume-packages/includes/restore-nuget-exe-cli.md b/docs/consume-packages/includes/restore-nuget-exe-cli.md index 363dab71e..e3fd938b2 100644 --- a/docs/consume-packages/includes/restore-nuget-exe-cli.md +++ b/docs/consume-packages/includes/restore-nuget-exe-cli.md @@ -1,13 +1,21 @@ -Use the [restore](../../reference/cli-reference/cli-ref-restore.md) command, which downloads and installs any packages missing from the *packages* folder. +The NuGet CLI [restore](../../reference/cli-reference/cli-ref-restore.md) command downloads and installs any missing packages. The command works on projects that use either [PackageReference](/nuget/consume-packages/package-references-in-project-files) or [packages.config](/nuget/reference/packages-config) for package references. -For projects migrated to PackageReference, use [msbuild -t:restore](../package-restore.md#restore-using-msbuild) to restore packages instead. +Like `install`, the `restore` command only adds packages to disk, but doesn't modify the project file or *packages.config*. To add project dependencies, use the Visual Studio Package Manager UI or Console. -`restore` only adds packages to disk but does not change a project's dependencies. To restore project dependencies, modify `packages.config`, then use the `restore` command. +To restore packages, run the following command: -As with the other `nuget.exe` CLI commands, first open a command line and switch to the directory that contains your project file. +```cli +nuget restore +``` + +The `restore` command uses a solution file or a *package.config* file in the specified project path. -To restore a package using `restore`: +For example, to restore all packages for *MySolution.sln* in the current directory, run: ```cli nuget restore MySolution.sln -``` \ No newline at end of file +``` + +> [!NOTE] +> For non-SDK-style projects that use `PackageReference`, use [msbuild -t:restore](../package-restore.md#restore-using-msbuild) to restore packages instead. + diff --git a/docs/consume-packages/install-use-packages-dotnet-cli.md b/docs/consume-packages/install-use-packages-dotnet-cli.md index d0442604f..2858415ba 100644 --- a/docs/consume-packages/install-use-packages-dotnet-cli.md +++ b/docs/consume-packages/install-use-packages-dotnet-cli.md @@ -1,31 +1,31 @@ --- -title: Install and manage NuGet packages using the dotnet CLI -description: Instructions for using the dotnet CLI to work with NuGet packages. +title: Install and manage NuGet packages with the dotnet CLI +description: See how to use the dotnet CLI to install, list, remove, and update NuGet packages. author: mikejo5000 ms.author: mikejo -ms.date: 06/03/2019 +ms.date: 08/29/2022 ms.topic: conceptual --- -# Install and manage packages using the dotnet CLI +# Install and manage NuGet packages with the dotnet CLI -The CLI tool allows you to easily install, uninstall, and update NuGet packages in projects and solutions. It runs on Windows, Mac OS X, and Linux. +You can use the dotnet CLI tool on Windows, macOS, or Linux to easily install, uninstall, and update NuGet packages in .NET projects and solutions. This article describes the most common dotnet CLI commands for managing NuGet packages. -The dotnet CLI is for use in your .NET Core and .NET Standard project (SDK-style project types), and for any other SDK-style projects (for example, an SDK-style project that targets .NET Framework). For more information, see [SDK attribute](/dotnet/core/tools/csproj#additions). +The dotnet CLI runs on .NET, .NET Core, .NET Standard SDK-style projects, and any other SDK-style projects, for example those that target .NET Framework. For more information, see [.NET project SDKs](/dotnet/core/project-sdk/overview). -This article shows you basic usage for a few of the most common dotnet CLI commands. For most of these commands, the CLI tool looks for a project file in the current directory, unless a project file is specified in the command (the project file is an optional switch). For a complete list of commands and the arguments you may use, see the [.NET Core command-line interface (CLI) tools](../reference/dotnet-commands.md). +For most commands, the CLI tool looks for a project file in the current directory, unless a different project file is specified as an optional switch in the command. For a complete list of commands and their arguments, see [dotnet CLI commands](../reference/dotnet-commands.md). ## Prerequisites -- The [.NET Core SDK](https://www.microsoft.com/net/download/), which provides the `dotnet` command-line tool. Starting in Visual Studio 2017, the dotnet CLI is automatically installed with any .NET Core related workloads. +- The [.NET Core SDK](https://www.microsoft.com/net/download/), which provides the `dotnet` command-line tool. Starting in Visual Studio 2017, the dotnet CLI automatically installs with all .NET and .NET Core related workloads. -## Install a package +## Install or update a package -[dotnet add package](/dotnet/core/tools/dotnet-add-package?tabs=netcore2x) adds a package reference to the project file, then runs `dotnet restore` to install the package. +The [dotnet add package](/dotnet/core/tools/dotnet-add-package) command adds a package reference to the project file, and then runs `dotnet restore` to install the package. 1. Open a command line and switch to the directory that contains your project file. -2. Use the following command to install a NuGet package: +1. Use the following command to install a NuGet package: ```dotnetcli dotnet add package @@ -37,22 +37,24 @@ This article shows you basic usage for a few of the most common dotnet CLI comma dotnet add package Newtonsoft.Json ``` -3. After the command completes, look at the project file to make sure the package was installed. +1. After the command completes, you can open the project file to see the package reference. - You can open the `.csproj` file to see the added reference: + For example, open the *.csproj* file to see the added `Newtonsoft.Json` package reference: ```xml - + ``` ## Install a specific version of a package -If the version is not specified, NuGet installs the latest version of the package. You can also use the [dotnet add package](/dotnet/core/tools/dotnet-add-package?tabs=netcore2x) command to install a specific version of a NuGet package: +The `dotnet add package` command installs the latest version of the package unless you specify a different version. + +To install a specific version of a NuGet package, use the optional `-v` or `--version` switch: ```dotnetcli -dotnet add package --version +dotnet add package -v ``` For example, to add version 12.0.1 of the `Newtonsoft.Json` package, use this command: @@ -63,7 +65,7 @@ dotnet add package Newtonsoft.Json --version 12.0.1 ## List package references -You can list the package references for your project using the [dotnet list package](/dotnet/core/tools/dotnet-list-package?tabs=netcore2x) command. +List the package references and versions for your project by using the [dotnet list package](/dotnet/core/tools/dotnet-list-package) command: ```dotnetcli dotnet list package @@ -71,22 +73,24 @@ dotnet list package ## Remove a package -Use the [dotnet remove package](/dotnet/core/tools/dotnet-remove-package?tabs=netcore2x) command to remove a package reference from the project file. +Use the [dotnet remove package](/dotnet/core/tools/dotnet-remove-package) command to remove a package reference from the project file. ```dotnetcli dotnet remove package ``` -For example, to remove the `Newtonsoft.Json` package, use the following command +For example, to remove the `Newtonsoft.Json` package, use the following command: ```dotnetcli dotnet remove package Newtonsoft.Json ``` -## Update a package - -NuGet installs the latest version of the package when you use the `dotnet add package` command unless you specify the package version (`-v` switch). - ## Restore packages [!INCLUDE [restore-dotnet-cli](includes/restore-dotnet-cli.md)] + +## Next steps + +- [.NET CLI overview](/dotnet/core/tools) +- [Install and manage packages in Visual Studio using the NuGet Package Manager](install-use-packages-visual-studio.md) +- [Install and manage packages with the Package Manager Console](install-use-packages-powershell.md) diff --git a/docs/consume-packages/install-use-packages-nuget-cli.md b/docs/consume-packages/install-use-packages-nuget-cli.md index 1067aa7b2..0c12d383e 100644 --- a/docs/consume-packages/install-use-packages-nuget-cli.md +++ b/docs/consume-packages/install-use-packages-nuget-cli.md @@ -1,118 +1,123 @@ --- -title: Manage NuGet packages using the nuget.exe CLI -description: Instructions for using the nuget.exe CLI to work with NuGet packages. +title: Manage NuGet packages with the NuGet CLI +description: Instructions for using the NuGet CLI, nuget.exe, to manage NuGet packages. author: mikejo5000 ms.author: mikejo -ms.date: 06/03/2019 +ms.date: 08/29/2022 ms.topic: conceptual --- -# Manage packages using the nuget.exe CLI +# Manage NuGet packages with the NuGet CLI -The CLI tool allows you to easily update and restore NuGet packages in projects and solutions. This tool provides all NuGet capabilities on Windows, and also provides most features on Mac and Linux when running under Mono. +You can use the `nuget.exe` CLI tool to manage NuGet packages in Visual Studio projects and solutions. This article describes the most common NuGet CLI commands for managing NuGet packages. All these commands work on Windows, and most work on Mac and on Linux with Mono. -The `nuget.exe` CLI is for your .NET Framework project and non-SDK-style projects (for example, a non-SDK style project that targets .NET Standard libraries). If you are using a non-SDK-style project that has been migrated to `PackageReference`, use the `dotnet` CLI instead. The `nuget.exe` CLI requires a [packages.config](../reference/packages-config.md) file for package references. +The NuGet CLI runs on .NET Framework and non-SDK-style projects, for example non-SDK style projects that target .NET Standard libraries. The NuGet CLI commands can use a project [packages.config](../reference/packages-config.md) file that lists package references. For non-SDK-style projects that use `PackageReference` instead of *packages.config* for package references, use the [dotnet CLI](install-use-packages-dotnet-cli.md) instead. > [!NOTE] -> In most scenarios, we recommend [migrating non-SDK-style projects](../consume-packages/migrate-packages-config-to-package-reference.md) that use `packages.config` to PackageReference, and then you can use the `dotnet` CLI instead of the `nuget.exe` CLI. Migration is not currently available for C++ and ASP.NET projects. +> For most non-SDK-style projects that use *packages.config*, it's best to [migrate packages.config to PackageReference](migrate-packages-config-to-package-reference.md), and then use the dotnet CLI instead of the NuGet CLI to manage packages. However, you can't migrate C++ or ASP.NET projects. -This article shows you basic usage for a few of the most common `nuget.exe` CLI commands. For most of these commands, the CLI tool looks for a project file in the current directory, unless a project file is specified in the command. For a complete list of commands and the arguments you may use, see the [nuget.exe CLI reference](../reference/nuget-exe-cli-reference.md). +For most commands, the NuGet CLI tool uses the current directory, unless you specify a different location in the command. To run NuGet CLI commands, open a command line and switch to the directory that contains your project file. + +For a complete list of commands and their arguments, see the [NuGet CLI reference](../reference/nuget-exe-cli-reference.md). ## Prerequisites -- Install the `nuget.exe` CLI by downloading it from [nuget.org](https://dist.nuget.org/win-x86-commandline/latest/nuget.exe), saving that `.exe` file to a suitable folder, and adding that folder to your PATH environment variable. +Download the NuGet CLI from [nuget.org](https://dist.nuget.org/win-x86-commandline/latest/nuget.exe). Save the *nuget.exe* file to a suitable directory, and make sure the directory is in your PATH environment variable. + +> [!NOTE] +> You can also use the [winget](/windows/package-manager/winget) tool for Windows or [Homebrew](https://brew.sh/) for macOS. + +To find out your NuGet CLI version, open a command line and run `nuget help`, or to avoid having to scroll up, use `nuget help | more`. The first line in the help output shows the version. ## Install a package -The [install](../reference/cli-reference/cli-ref-install.md) command downloads and installs a package into a project, defaulting to the current folder, using specified package sources. Install new packages into the *packages* folder in your project root directory. +The NuGet CLI [install](../reference/cli-reference/cli-ref-install.md) command downloads and installs specified NuGet packages. > [!IMPORTANT] -> The `install`command does not modify a project file or *packages.config*; in this way it's similar to `restore` in that it only adds packages to disk but does not change a project's dependencies. To add a dependency, either add a package through the Package Manager UI or Console in Visual Studio, or modify *packages.config* and then run either `install` or `restore`. +> The `install` command doesn't modify the project file or *packages.config* file. The `install` and `restore` commands only add packages to disk, but don't add dependencies to projects. To add project dependencies, add packages through the [Visual Studio Package Manager UI](install-use-packages-visual-studio.md) or [Package Manager Console](install-use-packages-powershell.md), then run `install` or `restore`. -1. Open a command line and switch to the directory that contains your project file. +Use the `-OutputDirectory` option to install packages to a specific directory. If you don't specify an output directory, `install` uses the current directory. -2. Use the following command to install a NuGet package to the *packages* folder. +```cli +nuget install -OutputDirectory +``` - ```cli - nuget install -OutputDirectory packages - ``` +For example, to install the `Newtonsoft.json` package to the *packages* subdirectory, use the following command: - To install the `Newtonsoft.json` package to the *packages* folder, use the following command: +```cli +nuget install Newtonsoft.Json -OutputDirectory packages +``` + +Instead of specifying a package to install, you can specify an existing *packages.config* file in the current or another directory. The `install` command installs all the packages listed in the *packages.config* file. - ```cli - nuget install Newtonsoft.Json -OutputDirectory packages - ``` +```cli +nuget install packages.config +``` -Alternatively, you can use the following command to install a NuGet package using an existing `packages.config` file to the *packages* folder. This does not add the package to your project dependencies, but installs it locally. +For example, the following command installs all the packages listed in *packages.config* in the *config* subdirectory to the *packages* subdirectory: ```cli -nuget install packages.config -OutputDirectory packages +nuget install config\packages.config -OutputDirectory packages + ``` ## Install a specific version of a package -If the version is not specified when you use the [install](../reference/cli-reference/cli-ref-install.md) command, NuGet installs the latest version of the package. You can also install a specific version of a Nuget package: +The `install` command installs the latest version of a package unless you specify a different version. To install a specific version of a package, use the `-Version` option: ```cli nuget install -Version ``` -For example, to add version 12.0.1 of the `Newtonsoft.json` package, use this command: +For example, to install version 12.0.1 of the `Newtonsoft.json` package, use: ```cli nuget install Newtonsoft.Json -Version 12.0.1 ``` -For more information on the limitations and behavior of `install`, see [Install a package](#install-a-package). - -## Remove a package - -To delete one or more packages, delete the packages you want to remove from the *packages* folder. - -If you want to reinstall packages, use the `restore` or `install` command. - ## List packages -You can display a list of packages from a given source using the [list](../reference/cli-reference/cli-ref-list.md) command. Use the `-Source` option to restrict the search. +Use the [list](../reference/cli-reference/cli-ref-list.md) command to display a list of packages installed in the packages folders. Use the `-Source` option to restrict the list. ```cli nuget list -Source ``` -For example, list packages in the *packages* folder. +For example, to list packages in the *packages* subdirectory of *MyProject*, use: ```cli -nuget list -Source C:\Users\username\source\repos\MyProject\packages +nuget list -Source C:\Users\%USERNAME%\source\repos\MyProject\packages ``` -If you use a search term, the search includes names of packages, tags, and package descriptions. +You can also use a search term to search for package names, tags, or descriptions: ```cli -nuget list +nuget list <"search term"> -Source ``` -## Update an individual package - -NuGet installs the latest version of the package when you use the `install` command unless you specify the package version. - ## Update all packages -Use the [update](../reference/cli-reference/cli-ref-update.md) command to update all packages. Updates all packages in a project (using `packages.config`) to their latest available versions. It is recommended to run `restore` before running `update`. +Use the [update](../reference/cli-reference/cli-ref-update.md) command to update all packages in a project *packages.config* file to their latest available versions. It's best to run `restore` before you run `update`. ```cli nuget update ``` +## Remove a package + +To remove a package, delete that package from the project folder. To reinstall packages, use the `restore` or `install` commands. + +Deleting packages from disk doesn't update the project, *packages.config*, or *NuGet.Config* files. The best way to remove packages is through the Visual Studio [Package Manager UI](install-use-packages-visual-studio.md) or [Package Manager Console](install-use-packages-powershell.md). + ## Restore packages [!INCLUDE [restore-nuget-exe-cli](includes/restore-nuget-exe-cli.md)] -## Get the CLI version +For more information, see [Restore packages](package-restore.md). -Use this command: - -```cli -nuget help -``` +## Next steps -The first line in the help output shows the version. To avoid scrolling up, use `nuget help | more` instead. \ No newline at end of file +- [NuGet CLI reference](../reference/nuget-exe-cli-reference.md) +- [Install and manage packages in Visual Studio using the NuGet Package Manager](install-use-packages-visual-studio.md) +- [Migrate from packages.config to PackageReference](migrate-packages-config-to-package-reference.md) +- [Manage packages with the dotnet CLI](install-use-packages-dotnet-cli.md) diff --git a/docs/consume-packages/install-use-packages-powershell.md b/docs/consume-packages/install-use-packages-powershell.md index c165d8b03..02e97c7e2 100644 --- a/docs/consume-packages/install-use-packages-powershell.md +++ b/docs/consume-packages/install-use-packages-powershell.md @@ -1,178 +1,205 @@ --- -title: Install and manage NuGet packages using the console in Visual Studio -description: Instructions for using the NuGet Package Manager Console in Visual Studio for working with packages. +title: Manage NuGet packages with the Visual Studio Package Manager Console +description: See how to work with NuGet packages by using PowerShell commands in the Visual Studio Package Manager Console. author: JonDouglas ms.author: jodou -ms.date: 07/08/2019 +ms.date: 08/29/2022 ms.topic: conceptual f1_keywords: - "vs.nuget.packagemanager.console" --- -# Install and manage packages with the Package Manager Console in Visual Studio (PowerShell) +# Manage packages with the Visual Studio Package Manager Console (PowerShell) -The NuGet Package Manager Console lets you use [NuGet PowerShell commands](../reference/powershell-reference.md) to find, install, uninstall, and update NuGet packages. Using the console is necessary in cases where the Package Manager UI does not provide a way to perform an operation. To use `nuget.exe` CLI commands in the console, see [Using the nuget.exe CLI in the console](#use-the-nugetexe-cli-in-the-console). +The Package Manager Console in Visual Studio uses PowerShell commands to interact with NuGet packages. You can use the console when there's no way to do an operation through the [Package Manager UI](install-use-packages-visual-studio.md). You can also use [dotnet CLI](../reference/dotnet-commands.md) or [NuGet CLI](#use-the-nugetexe-cli-in-the-console) commands in the console. -The console is built into Visual Studio on Windows. It is not included with Visual Studio for Mac or Visual Studio Code. +This article describes how to find, install, update, and uninstall NuGet packages with PowerShell commands in the Package Manager Console. For the complete Package Manager Console PowerShell command reference, see [PowerShell reference](../reference/powershell-reference.md). -> [!Important] -> The commands listed here are specific to the Package Manager Console in Visual Studio, and differ from the [Package Management module commands](/powershell/module/packagemanagement/) that are available in a general PowerShell environment. Specifically, each environment has commands that are not available in the other, and commands with the same name may also differ in their specific arguments. When using the Package Management Console in Visual Studio, the commands and arguments documented in this present topic apply. +> [!IMPORTANT] +> The PowerShell commands and arguments in this article are specific to the Visual Studio Package Manager Console. These commands differ from the [PackageManagement module commands](/powershell/module/packagemanagement) you can use in a general PowerShell environment. Each environment has commands that aren't available in the other, and commands with the same name might differ in their specific arguments. -## Find and install a package +## Console availability -For example, finding and installing a package is done with three easy steps: +Starting in Visual Studio 2017, NuGet and the NuGet Package Manager install automatically when you create any .NET-related workloads in Visual Studio. You can also install the Package Manager by selecting **Individual components** > **Code tools** > **NuGet package manager** in the Visual Studio Installer. -1. Open the project/solution in Visual Studio, and open the console using the **Tools > NuGet Package Manager > Package Manager Console** command. +You can also search for the NuGet Package Manager extension under the **Tools** > **Extensions and Updates** or **Extensions** menus. If you're unable to use the extensions installer in Visual Studio, you can download the extension directly from [https://dist.nuget.org/index.html](https://dist.nuget.org/index.html). -1. Find the package you want to install. If you already know this, skip to step 3. +The Package Manager Console is built into the Package Manager for Visual Studio on Windows. Visual Studio Code and Visual Studio for Mac don't include the console. Visual Studio for Mac has a UI for managing NuGet packages, and the equivalent console commands are available through the [NuGet CLI](../reference/nuget-exe-CLI-reference.md). For more information, see [Install and manage NuGet packages in Visual Studio for Mac](/visualstudio/mac/nuget-walkthrough). - ```ps - # Find packages containing the keyword "elmah" +## Quickly find and install a package + +To use the Package Manager Console to quickly find and install a package: + +1. Open your project or solution in Visual Studio, and select **Tools** > **NuGet Package Manager** > **Package Manager Console** to open the Package Manager Console window. + +1. In the console, enter `Find-Package` with a keyword to find the package you want to install. For example, to find packages that contain the keyword `elmah`, run the following command. If you already know the package name you want, skip this step. + + ```powershell Find-Package elmah ``` -1. Run the install command: +1. Once you find the name, use the `Install-Package` command to install the package. For example, to install the `Elmah.MVC` package, enter: - ```ps - # Install the Elmah package to the project named MyProject. - Install-Package Elmah -ProjectName MyProject + ```powershell + Install-Package Elmah.MVC ``` -> [!Important] -> All operations that are available in the console can also be done with the [NuGet CLI](../reference/nuget-exe-cli-reference.md). However, console commands operate within the context of Visual Studio and a saved project/solution and often accomplish more than their equivalent CLI commands. For example, installing a package through the console adds a reference to the project whereas the CLI command does not. For this reason, developers working in Visual Studio typically prefer using the console to the CLI. +For more details about these commands, see the [Find a package](#find-a-package) and [Install a package](#install-a-package) sections. > [!Tip] -> Many console operations depend on having a solution opened in Visual Studio with a known path name. If you have an unsaved solution, or no solution, you can see the error, "Solution is not opened or not saved. Please ensure you have an open and saved solution." This indicates that the console cannot determine the solution folder. Saving an unsaved solution, or creating and saving a solution if you don't have one open, should correct the error. +> Many console operations depend on having a solution with a known path name open in Visual Studio. If you have an unsaved solution, or no solution, you see the error **Solution is not opened or not saved. Please ensure you have an open and saved solution.** To correct the error, create and save a solution, or save an unsaved solution. -## Opening the console and console controls +## Console controls -1. Open the console in Visual Studio using the **Tools > NuGet Package Manager > Package Manager Console** command. The console is a Visual Studio window that can be arranged and positioned however you like (see [Customize window layouts in Visual Studio](/visualstudio/ide/customizing-window-layouts-in-visual-studio)). +To open the Package Manager Console in Visual Studio, select **Tools** > **NuGet Package Manager** > **Package Manager Console** from the top menu. The console is a Visual Studio window that you can arrange and position as you like. For more information, see [Customize window layouts in Visual Studio](/visualstudio/ide/customizing-window-layouts-in-visual-studio). -1. By default, console commands operate against a specific package source and project as set in the control at the top of the window: +By default, console commands operate against the specific package source and project shown in the controls at the top of the window: - ![Package Manager Console controls for package source and project](media/PackageManagerConsoleControls1.png) +:::image type="content" source="media/PackageManagerConsoleControls1.png" alt-text="Screenshot that shows the Package Manager Console controls for package source and project."::: -1. Selecting a different package source and/or project changes those defaults for subsequent commands. To overrride these settings without changing the defaults, most commands support `-Source` and `-ProjectName` options. +Selecting a different package source or project changes the defaults for subsequent commands. To override these settings for single commands without changing the defaults, most console commands support `-Source` and `-ProjectName` options. -1. To manage package sources, select the gear icon. This is a shortcut to the **Tools > Options > NuGet Package Manager > Package Sources** dialog box as described on the [Package Manager UI](install-use-packages-visual-studio.md#package-sources) page. Also, the control to the right of the project selector clears the console's contents: +To manage package sources, select the gear icon, which opens the **Tools** > **Options** > **NuGet Package Manager** > **Package Sources** dialog box. The control next to the project selector clears the console's contents. - ![Package Manager Console settings and clear controls](media/PackageManagerConsoleControls2.png) +:::image type="content" source="media/PackageManagerConsoleControls2.png" alt-text="Screenshot that shows the Package Manager Console settings and clear controls."::: -1. The rightmost button interrupts a long-running command. For example, running `Get-Package -ListAvailable -PageSize 500` lists the top 500 packages on the default source (such as nuget.org), which could take several minutes to run. +The button on the far right interrupts a long-running command. For example, running `Get-Package -ListAvailable -PageSize 500` lists the top 500 available packages on the default source, such as nuget.org, which could take several minutes. - ![Package Manager Console stop control](media/PackageManagerConsoleControls3.png) +:::image type="content" source="media/PackageManagerConsoleControls3.png" alt-text="Screenshot that shows the Package Manager Console stop control."::: -## Install a package +## Find a package -```ps -# Add the Elmah package to the default project as specified in the console's project selector -Install-Package Elmah +To find a package in the default source, use [Find-Package](../reference/ps-reference/ps-ref-find-package.md). -# Add the Elmah package to a project named UtilitiesLib that is not the default -Install-Package Elmah -ProjectName UtilitiesLib -``` +- To find and list packages that contain certain keywords: -See [Install-Package](../reference/ps-reference/ps-ref-install-package.md). + ```powershell + Find-Package + Find-Package + ``` -Installing a package in the console performs the same steps as described on [What happens when a package is installed](../concepts/package-installation-process.md), with the following additions: +- To find and list packages whose name begins with a string: -- The Console displays applicable license terms in its window with implied agreement. If you do not agree to the terms, you should uninstall the package immediately. -- Also a reference to the package is added to the project file and appears in **Solution Explorer** under the **References** node, you need to save the project to see the changes in the project file directly. + ```powershell + Find-Package -StartWith + ``` -## Uninstall a package +- By default, `Find-Package` returns a list of 20 packages. Use `-First` to show more packages. For example, to show the first 100 packages, use: -```ps -# Uninstalls the Elmah package from the default project -Uninstall-Package Elmah + ```powershell + Find-Package -First 100 + ``` -# Uninstalls the Elmah package and all its unused dependencies -Uninstall-Package Elmah -RemoveDependencies +- To list all versions of a certain package: -# Uninstalls the Elmah package even if another package depends on it -Uninstall-Package Elmah -Force + ```powershell + Find-Package -AllVersions -ExactMatch + ``` + +## Install a package + +To install a package into the default project, use `Install-Package `. The [Install-Package](../reference/ps-reference/ps-ref-install-package.md) console command takes the following actions: + +- Does the steps in [What happens when a NuGet package is installed](../concepts/package-installation-process.md). +- Displays applicable license terms in the console window with implied agreement. If you don't agree to the terms, you should uninstall the package. +- Adds a reference to the package in the project file and in **Solution Explorer** under the **References** node. You must save the project before you can see the changes in the project file. + +By default, `Install-Package` adds the package to the default project the console window specifies. To add the package to a project that isn't the default, use the `-ProjectName` option. For example, to add the `Elmah.MVC` package to the non-default `UtilitiesLib` project, run the following command: + +```powershell +Install-Package Elmah.MVC -ProjectName UtilitiesLib ``` -See [Uninstall-Package](../reference/ps-reference/ps-ref-uninstall-package.md). Use [Get-Package](../reference/ps-reference/ps-ref-get-package.md) to see all packages currently installed in the default project if you need to find an identifier. +## Uninstall a package + +To uninstall a package from the default project, use `Uninstall-Package `. If you need to find the package name, use [Get-Package](../reference/ps-reference/ps-ref-get-package.md) to see all packages installed in the default project. -Uninstalling a package performs the following actions: +[Uninstall-Package](../reference/ps-reference/ps-ref-uninstall-package.md) takes the following actions: -- Removes references to the package from the project (and whatever management format is in use). References no longer appear in **Solution Explorer**. (You might need to rebuild the project to see it removed from the **Bin** folder.) -- Reverses any changes made to `app.config` or `web.config` when the package was installed. +- Removes references to the package from the project and any management formats. References no longer appear in **Solution Explorer**. You might need to rebuild the project to remove the reference in the *bin* folder. +- Reverses any changes that installing the package made to *app.config* or *web.config*. - Removes previously-installed dependencies if no remaining packages use those dependencies. +To uninstall a package and all its unused dependencies, run: + +```powershell +Uninstall-Package -RemoveDependencies +``` + +To uninstall a package even if other packages depend on it, run: + +```powershell +Uninstall-Package -Force +``` + ## Update a package -```ps -# Checks if there are newer versions available for any installed packages -Get-Package -updates +To update a package, use [Get-Package](../reference/ps-reference/ps-ref-get-package.md) and [Update-Package](../reference/ps-reference/ps-ref-update-package.md). You can run the following commands: -# Updates a specific package using its identifier, in this case jQuery -Update-Package jQuery +- To check if there are newer versions available for any installed packages: -# Update all packages in the project named MyProject (as it appears in Solution Explorer) -Update-Package -ProjectName MyProject + ```powershell + Get-Package -updates + ``` -# Update all packages in the solution -Update-Package -``` +- To update a specific package: -See [Get-Package](../reference/ps-reference/ps-ref-get-package.md) and [Update-Package](../reference/ps-reference/ps-ref-update-package.md) + ```powershell + Update-Package + ``` -## Find a package +- To update all packages in a project: -```ps -# Find packages containing keywords -Find-Package elmah -Find-Package logging + ```powershell + Update-Package -ProjectName + ``` -# List packages whose ID begins with Elmah -Find-Package Elmah -StartWith +- To update all packages in the solution: -# By default, Get-Package returns a list of 20 packages; use -First to show more -Find-Package logging -First 100 + ```powershell + Update-Package + ``` -# List all versions of the package with the ID of "jquery" -Find-Package jquery -AllVersions -ExactMatch -``` +
    +## Use the NuGet CLI in the console -See [Find-Package](../reference/ps-reference/ps-ref-find-package.md). In Visual Studio 2013 and earlier, use [Get-Package](../reference/ps-reference/ps-ref-get-package.md) instead. +You can also do most console operations with the [NuGet CLI](../reference/nuget-exe-cli-reference.md). However, the PowerShell console commands operate within the context of Visual Studio saved project and solution, and often do more than their equivalent NuGet CLI commands. For example, installing a package through `Install-Package` adds a reference to the project file, but the NuGet CLI command doesn't. For this reason, developers working in Visual Studio typically prefer to use the console commands rather than the NuGet CLI. -## Availability of the console +To use NuGet CLI commands in the Package Manager Console, install the [NuGet.CommandLine](https://www.nuget.org/packages/NuGet.CommandLine) package. -Starting in Visual Studio 2017, NuGet and the NuGet Package Manager are automatically installed when you select any .NET-related workloads; you can also install it individually by checking the **Individual components > Code tools > NuGet package manager** option in the Visual Studio installer. +```powershell +Install-Package NuGet.CommandLine +``` -Also, if you're missing the NuGet Package Manager in Visual Studio 2015 and earlier, check **Tools > Extensions and Updates...** and search for the NuGet Package Manager extension. If you're unable to use the extensions installer in Visual Studio, you can download the extension directly from [https://dist.nuget.org/index.html](https://dist.nuget.org/index.html). +The preceding command installs the latest version of the NuGet CLI. To install a specific version, use the `-Version` option. For example, to install Version 4.4.1, enter: -The Package Manager Console is not presently available with Visual Studio for Mac. The equivalent commands, however, are available through the [NuGet CLI](../reference/nuget-exe-CLI-reference.md). Visual Studio for Mac does have a UI for managing NuGet packages. See [Including a NuGet package in your project](/visualstudio/mac/nuget-walkthrough). +```powershell +Install-Package NuGet.CommandLine -Version 4.4.1 +``` -The Package Manager Console is not included with Visual Studio Code. +After you install the `NuGet.CommandLine` package, you can run all NuGet CLI commands through the Package Manager Console. ## Extend the Package Manager Console -Some packages install new commands for the console. For example, `MvcScaffolding` creates commands like `Scaffold` shown below, which generates ASP.NET MVC controllers and views: +Some packages install new commands for the console. For example, `MvcScaffolding` creates commands like `Scaffold`, which generates ASP.NET MVC controllers and views: -![Installing and using MvcScaffold](media/PackageManagerConsoleInstall.png) +:::image type="content" source="media/PackageManagerConsoleInstall.png" alt-text="Screenshot that shows NuGet CLI commands available after installing the NuGet.CommandLine package."::: ## Set up a NuGet PowerShell profile -A PowerShell profile lets you make commonly-used commands available wherever you use PowerShell. NuGet supports a NuGet-specific profile typically found at the following location: +You can create a PowerShell profile to make your commonly-used commands available in all PowerShell contexts, so you don't lose your PowerShell settings between sessions. NuGet supports a NuGet-specific profile, usually at *%UserProfile%\Documents\WindowsPowerShell\NuGet_profile.ps1*. -*%UserProfile%\Documents\WindowsPowerShell\NuGet_profile.ps1* +To find your user profile location, enter `$profile` in the console: -To find the profile, type `$profile` in the console: - -```ps +```powershell $profile C:\Users\\Documents\WindowsPowerShell\NuGet_profile.ps1 ``` -For more details, refer to [Windows PowerShell Profiles](/previous-versions//bb613488(v=vs.85)). - -## Use the nuget.exe CLI in the console +To determine whether a profile exists at that location, enter `test-path $profile`. If the command returns `False`, you need to create the profile with the specified name at that location. For more information, see [Windows PowerShell Profiles](/previous-versions//bb613488(v=vs.85)). -To make the [`nuget.exe` CLI](../reference/nuget-exe-cli-reference.md) available in the Package Manager Console, install the [NuGet.CommandLine](https://www.nuget.org/packages/NuGet.CommandLine/) package from the console: +## Next steps -```ps -# Other versions are available, see https://www.nuget.org/packages/NuGet.CommandLine/ -Install-Package NuGet.CommandLine -Version 4.4.1 -``` +- [Install and manage NuGet packages with the dotnet CLI](install-use-packages-dotnet-cli.md) +- [Manage packages using the nuget.exe CLI](install-use-packages-nuget-cli.md) +- [Install and manage packages in Visual Studio using the NuGet Package Manager](install-use-packages-visual-studio.md) diff --git a/docs/consume-packages/media/PackageManagerConsoleInstall.png b/docs/consume-packages/media/PackageManagerConsoleInstall.png index 716e941e00c6a1ebbca8750ff5b845c769a8c6ad..dbb5f979e35a9d619d299991a74d6ce36dd7c4f3 100644 GIT binary patch literal 13810 zcmb`ubzGEP*ET#DAWBFmC7^Oq5(5l5luEaN3P=n}O2-gGmm<<3Lk>unfOK~c3<5)! zG{ex{yo1+$-Ou~p&+qxY-}n8#KbW)kx%RpDUdM5)wFr8pDo1>m_AUSbAXbo<)&Kx* z2;laY@8IKpxgJA#aGP6ZFH~Lt06)X;oxi`0J0`S~*Kq^@NZPLd@V;@7(BV$fKxMR{ znzp7;m-h}P0K4}eZJ^vXCeX+H+&tX8d{Vb8*8u*$O(10FpTl1rbQN70lByGFTiiLtN9ONI}x;6e}Bmp_)4uVUa$_Yn6E<0~=T570WtQKx!@-{J; z_~eZfudtfR+Wh>QwOq3r#OcqA^}gG;aHa#cn@*TcA=i681jHe<1VWweWtG`2JE09Z zJMGr7GzX-cwM3*3m_>)e2rl9qP{;Fw-9IQwCFs}bHP;`)h&S#40QvL07B;KejTux1 zBSM|?=RPeip6tM-_LU80$mJ)tk)2BJW&RYk+)*?Yr-!|b*lxiM%K<`P6l;vG&dXYn zZ0-Yd@JdC}(1wDF+#L^llCKz?X+C`2ak+%%8Ibk8kKvmWc|!@}wdq-|Fw&woq=L1G zS4`%E(;&|o$u5DK(4n+@Ck2tNd9ck-RqvPwmvnBIK-2D9{Xz$#<1OOttJvh2s_M|L z(jS+<0&Td^s;h6&KQi+008OYU?~`0-`Q+s|maOo#By}?f70}MC0R2F;r>Fia(dx`n zh2%q$)29_guCWVor!CriOowp;G1PsD!h(f|hihnh3gQVC3BJG9nQxNNC5tF@f$}+b zj`wLe-^{Z85KvvP0_>SAwG{ zzXc~3&M-&1f6+&|deMNlEF}SeG4)+K0WoGto52Q#20@1MRXgvOqZf_|Ul#rnqnF$u z%59J)STcJ)-5pQ+Bm4%fOMg1adYw|JI)8!?^0t*;JhSiPkVfXxgw$9fXatDWEX>UmU%D$gLA)l$kIepnFgYH&N2ZRV zVTP-sRZ(ozqzY>DcWhQI?*EFnxnp)=!3rH`S{sqcPX6%tY;iuXc98IUq9XeTjEDUo z&rh>ZhyJpkVq6!L80pO?c}ayP9B|ax1StUE3@1uAeQpgRj{&Ni-0x+vD9{m|%6<=D zWm{|f(532kChcA%^Zo{H{7g*+BbM6YOhteq+I_X)r(A6i8T36l)9Uf6h(3bcOlJ&W zuCWy))pet=c74iLZC;5*W=+Ul*2P)mXkwm|u2HpYm5o|XN%KOJ_LkfPU}qG_&!6GT z*+W4qMB~6-ZEZFxMN43&?oQ~BRYtQXRYUC^Wp2K=b4}>?*ImH_063$()j|bY$(|nF zSXJLl#}B2jbrngTWr>tioFM0=pFLkybox*olGtW0#OuecjD3kz`gF{q2^Z7iP~xFg z=P?IzLxlHU%YIJ6dk@?3gikz9P%-BOzb{pA{#igH3{5-8=%lkj527RLWZ%)|h02I` z>Vx~OW(3MNMt*<1o&oQ7fs$MbWsk_Y2n*;1*{W{R=>^&JyAyi}l?sOoJjj29O4Ydwhd zL_Vg~5ECE`w^e@|c8WRMxUYtd3U1sa!kQOYJw#P$!=8%2;|#pZaxWg@+Bb3&0!~47 zVzXb?c>w^$!A&YH+%0D+izSBq!5tvW?6V=gS!28-qU)|`=uGZXxXN#5>0V-)pT84m@QBG6eDzC zT8gfQYKp_th1_pP_t{EcG*|vtzp#*73%40_Ae(UxD}weZn+RpM;Lu zV>CIe;tDzYOb8+=Jxv4-;g1`H3B2U|Ckc=V7m_quFGAKc?sf}l^khbLPB;^KLmHs# zM!5r-HTjR(Ppc(j^m;VLhuPjfOfj%cMp<6z2Lojw(?Zj-q!8ATR>5z#tzvHA-n*#h z_0^k1V!ynt!Ijfn)?R8pZmkvn_TjxKQQ+hdFF`Gpf$w;!=;bT9yem4$)Vqkw@Ta!p zmU3MO_LXEJlISi~#k1BPTdvt(J2OUUNE1<^Nbcp(8mU${#DKJO&B*PuiV{6a&WKk1 zX3x@($vFTaEf+K$P0D*x%CfWF=cc3yp+}Vp(sCs?3e~RmoGwE==J!r^HMb5|mZ*Zf zFQ+ebj?2`3$-T(jYgZuO1UzgENnvYzf{|@fN4bKT^AT^d;y8jR;Q*Mv$~LHU^G%7o zB?nblP3`Yp-A&4nbWvPKId z*8-vf&vZnPQM!`Eg$@(2F>vPRdPDjkY-`Dq*_2ZRm~G*;{;|#gXt=yM zG_)sQAh%Wc07%_KzH3IHY;aLPsCT-|{ zCZ$~D3Cn|GPD`X~ZYQ&S=Vaf4^KgGo4t#uAXSME96IwbQeQKV3hU<0A)u@_Kr-N;v zC4C>KzKW<+-X6nOI|?@MwR(km)-Vyd`UY+(Pbam`QtXpZ|I)5n-mU379sJ!1D-G3Y zFG}SKKb#V#F+V+=DF{3^o#>bnW)W7#;E1CgyR*GL28<=FOPTcuHKjf{ z?#4Sf`Mp@RAV8ND2Pm{O8Kfh z+AK$JZm7Up@#YXh28kKM_KMM;mb?Zlu_|%||1fK~6nvugU2?wTSO3(rjB@uZFE{VR z;20}(4m{G8!V)iEtr|(?I1kj0u?M9YPG#=(x>T$tO}hLQ0;=Cis~mwhEvqY{e^|CJ z))*Ap1WY}u#1sl~S0H;@QyY{Pqv!5w(MMZ}Le|6l7W$qLG-HAs(e)xI-8iK|f4S6kMjFk=@!>{Eqt6`J;anB@)sIZNr z<2M_U){CPgRL?(LtTC|6`6yM^h6yXq$Eto|x43FcAeU4`f-Fu=VaB#8Zu#w(Pn0;zfqTYZ-O&79R%gHNt!PQ#IOuW;3`Gy}`&Z0P~ zw$rNPyXa;R)i#l%H9nT$l6IBQPsXM^Zi)qCQ>91kpKKLC zN$T7-dO=c6<9`N&s@Xj{u+7rZJn!2%#Qz-b4X zl0`QWuJdromJ*-2DX}VcOiM%bJ937;96tT(^!e}l7dPFRXaJ(EQCl|vioQq7#2@I~ z8SnB~RQQfitO+cLj=}u5_|Dv6nwT#W!)Jck)LdPSUniPO%>bLp1fn&OFtCZze}2H z1iR5-$tX>d%STNV#O;JgH+-%&@%+8Nte3e;XJ4zD$~`HC8a$p+IcX&^9IF5ThC40M z=)=UG3-1r_q+tW)61x2i;{LoU4zx6f+3@k`vQvvE-XwK2)ghIUh`*oL+ zw&#rTxAMH8?$SAXm$dbrna(dO)A60KEMZ5Zaq-a)#W9g#`9sA+={`U+jr8bA_Jhrd z0Z?mb3s+6VnRBlb8Odo{09mP-%c*%}n*FuyuEI^oezh?e zKYN)v^`DcI|4>~(`u}AWiGD!iK=QsP9qY2;P;;L>)O%OTr=jZGFO(Ad{&8H%Svrda&_*zpIs26#%?U5i&s>$)I{6D;borfQ8vf_AuL((q(F>Gf_!%4&@C&)8HMDkV{g2M(6A z>RY>n8(0pQJtkYpR6=|Yo7%(*Vq}0l9AVyY=_47h(ao^FC8Wh~ez+PWSd+2hP5bN3 z+Y84`4s8}dlYgf*`b*@DNqCHRc7S&l=W*slmO4MVphS9|{ro50lwUfop3>+F@SLM1 zl*Lc{sY`qOzL-IBR`%lwAa9LZ z(yncC{L%PdDGDRuR?M&(Cyd0M(5^`ew~V5t?>KXwmv@(+XMlalZZB{r7a?upa4Oya zZOW8+cc9k~^JQ61D^K$$*d8*K^%3V6i!G#CVNxs8vV}ScZ`j@*wdK@>#7Bo5PCf#y zrQCIVrnmMp_BXlgiGy1`e!TUAp2wu(Tgc4X=<*G`JaLOILGX0Snz#x`Bbw)u^`Qy@ zV2pToD>stK-hFSHK9>eE5F}P1_d{U9_AA`T0yr0BNxy{Edq!xY?~1lWKC4WW`Wb8|&7d zcYYM=4#!eHZ+m)M(}p3> z&xgqGe%&oxYPiqB%L~4}l&h-8iMkx1q=@)vFk#z))k7;uDR~jt%Es(Jq&t3rqN~=RwSkN zjE_3aMKo^4g5+ozL-iJ{U$qbsL|0zK9@4+u+3;uGvx=v4)vxDr5Rr6OowOMn*T}!!>jY&MIn~TcdyeWTGxidIr&D7+d`|(J) z#pkbJcs2&~-39znvtEzP!c&nucGIrtwAKqk{iFVmPs51sZ9GPJ3w)Vq&h^KIfrl*N zVxHjDVKqVJbseU7GlU6sV?i(`zH8|475BV6H7Q(Vzvj+i?*n9=#QG~WF+R(Oh1U+t zX&Z$O08XPK*2KU_lPNob!3+cqcl&mm0Z1rhR|?`RFB;-Ri(~5C}qeG z=Ex^OJ)h|z_PE$<`HjP01z~@E!rFw_!4V<~&7)qp;44ipOI}-ft0%29`&_2T0Lg_W z(x^sFQpQU)`6!!17vT{5L^#-#a_p=&XXr01K~+@2w3{tcEkKVFw22b+;VEvFIxyT$z2i_8N z=o>6}`Ll*qcE+SP$+&EGBH~PHzqb4{1|$eIDb2Cg2HwFo!kjH zV&u~rKfYEPhXO91*ZwB(!EZ7rBl%HJ-VY>Z1cJ{krY+mHPCj8=#$$0Y*m8$y&yCLX zOFNMqX`QnidX2y~kZoc6l_->Y?T4BqMH_S`+J<b7h4WYR_mWX(0pRh2o>%(uBlR1(V@!Q`lTy10F_9B-2gBU z*_l_9xVE{}s0~dXs0`dJ=G9L5FTaWqn?>URd{or8)oOg{W+1$&zlrdPbDq_Gq;-D- z08A46@vFn1T*rmnshjvNn!{L#Bi;C$8a?QRR?VdiRZ4(!sRb>+B!i_(rDM?CGb1V457PF@8w``7hnpdxx=1!Oi`SrKxJ zR?aVpzke}t-EOF^NuTLDrkw=P4Ker8BB-c6=eD1pJt$75)bpCB%08HnN=FeyT?@p?dG4Pj1rrSA+@mBMVzgx>nl7;`7zJOO)syB{`|N`Jm`nUv7$l zJ`S`GUU~=AWiqv~mK7B(wr2vl<4-20izsfS^m@21euRS%DTB=o+!TRvg{wIEZ;aK5 ztRVZV&Rq#O$Df*CaJr&csTcp6E_Z8Qo^-!tGq{vfmZf?!$5A#p$k{XsO|?6wj>>3nMCl+KGqPAR*GeQd>@ zP6LQ&&P<2`0xz_8U(|i+>sh(p{5j>^#8(!YSEqAjg)r` zhn`^J^h?ZRC{;6JctPov^CW{t_DA>-l~#cD*^jFI8d=uLfx)3NIdornFX3|u2QJB6 zRWs@4Dy0?dV8eJoN1D-nS@)c6N6Q}YRH;2Q(yFhNkHpyuUc~cAGF_4TMjpQSzZOk2-w&a2iM!9{Q7~0-jp&Y2)HY@slyi z)*|u>LA=M^joGqc=No-qvSc#Z2V)iImSsR$`f0R5H^nHpXEeT?8y)UoS8hIiHm_kn z{QkCU+u(g*MFVwxV0t}Kh82?y>PN{o8>@#p3vQ(Mx`*I}(0QiP>dX8vAECQhFy3%X zyd1=XkK>C+Gl{B^yO3)8s*s~U7QEQq-%uJlNKULFZV^6ySpa;wnJjg2{}Nkle?Mh_ zEurwfzz28s>c~nvI+Ny7<~r78S?Xu=U9SU?IQK1}%Uc4~?GuZmNuidgj(J-8#)|_} za;W}Rw5x>Q8g_4RpU9`~3*!f{13lW{ETky6ryS~8KaOo5Nu?T9aqQ@J(&6Bql8R9N z!`X{RFRZ7Ww0oodds?Wn2TGJ+85GqFg?oxUL)>OOUyF{;=BIXhDZjp7zIh zeoz&^`Iz7j{AAeU;HND94q&$ljAo(5WRg35RO8-TJjo)dvONa+6s~qzG~R(c0vJB{ zo8e9#H<7&^uP{ST!Qy%t~a^OfukGE4)D@Nnc-OIpBd(ITq zn0(-WQG5d*W%0=}u>mhbY7otlsGie_1M+Ba_f zi{*2q1|wp$-o`s&Qq@=$N8tZv`326XryTkT+$L#juO_hO`ZdVaqJ`L{Ot(F^w{F2xRDO5pexLlgR#Hk&myL!cE{nVPPy{zc^7yHDC&6I{0r#wwtE++S9uFc)vZ6BUuR{k-Uu!ZemqqWYC#h3R%hCFD*j0J;{=D!*3!PcUv~E z~+1hOjbLF!}gkvxBzAJnQNI z1AX39Y&z7&)ySUk233T98=^AXE{C}3?aV617G|`$Pd-s^j5EluTinwBY+R4m)gh{> zDO&wa(`N`LDXiYG%5q}1SEdq4MlTS;7zM%0+rz$LAFeAk-pSMW9nT9Y1&8_l6bKdn zOMTqqQhz+#dk-RL!K+3R@s@^}NKDFtmXypg9@ zDifhQG??X>$f%#om}1g|vtI=pq$An*eb2@p<BDje{}p?e~^GQCd1CvI1@H! z*fd?tM)@g6UQ}7NcC?Hc_)R>lII3*yTxMH?94B-7?luthRG4n z(8Knww8V+Mztu^>$fwge;=+eqt`NOvh2R1}xFYTR(l8a%zMVAOH^#cHulmhHhVB4h ztF(xxJx&7;{eM&_dIOpA4l4Bqsc(g#e_63@P9X$mh;w6elAj4OI< zne|5`dMpTZVzanxUnC,J&FFkR)U?w+6qn`fiQg9FndDqS-JJ-R*`)=`5WRdy-Q z`9k#{LXuhxCM)en-}9=GJi7ek)Ra{y7p2_YIn8W^u?)4FSoGAq zx`^ZE+H}HUB~PJ8vi0Hz`WkGvW(VtJGj7(PvVjf4EI*RI7R)Nv6o3#bRs<;qth>tN ztjlN+fd3Dm@LvPUsdCFZq3gx+%Zo(jF)>^20TKM*eJA zRR&$voWL61Z8IM8rmWxpAd29vkOXq|S!?qlecPJqaER}8`rn9B@nQv6adHQ#c8w@G zx8idDPJH|$YyJ~i{;x@{|I|hQuN%Ns3Z4ot)^~3WhI{QBdE#$=tG|-rzXF~9Ng;4+ zgeJInuLSOQdd-Kgf$WObFAzKyml+b*X8YXxN1d&IQQvz~e-bY#cR=+<*lkbBGkK>y za}R|bxF~8&2WIW~L(K^^ED1>rFQpxu6c?uFGn(p84 zk7D&$#@b@PJbzCctntJkNk3-0>EsD@YM6+bDXf!9r5 zR};dNA*0C``xu(~qr5fq#;dsi19JM)gUaE8j-$p43D5mf#`Gfz^os4JRUu6{wbie> zb1tw)UP|YjmP96#mOoM{+#q#jzd96Xu;SCs)^cSyXjQhhL)uUbZ`h1}KNwa2+mlkydGtG56t%*BoHfPQx z!9`LQxXKj-=Dn%A?=U0I%y=TR<{h+(1l}`x+)n+W zm02Qs2Z*5nt8x)w9-GCWLE}~PmTHarylMRjWzUj!rGLfY( z4=!xIgJ(Q3GA(UHxYxf*B1&J5GT<#GDNyS9=roxDhaEHHV1g9LW{New+0XEmcMI;Eh8TBgejC!TIc{>Kuu)opvvg2ZAc8Ph@%ZGZJQ zx+_BZla^tL25|gQhf=1=Tgb2(&y-@|b#9AI^>Qhjd2T5UK6}b9ULG41J5Rv)%iTD( z7LiS5aLV9$5*pL^IqFEJZm(kvB+&14s%<#zGspCGI|2ulws6D7G~_97 zi&*4DvU&v>xMQLW*s(?RxHtIFXZYZzx971kBltH>LQ(y;e!^u3aQQ0#sXL(pkjZnO z7}UBa=D8`|}_nT=ZA@a#HKk0LVlq*?OiQPq8{oH30lH+Kb>(4{;o8|qaZ{qb*d`xAj>vf$5 z28{jnPkEXKJY^>Focm%`PIAQT`VwGLE$>fF8({la(=NsJng7a@b4ps{r4Pt6;=M|8 zuKf{?YhK7#z4Ugmx~6mBe(TkFp2UsXCflo-*=uJs1~Wuk;bHkKymlAFJ@NB;NgF3W zT{nFLms91Fyu2Bpf1Pf`nUdG52X(zOO#08!x!j%F`?v#nL-gzTwl9~zv#-D#7j2Lj z-|*<2L?XS<<5m@RA+H|eZi#5h$>pmVGV*`F6@JAGKI=@$KG{+;sXBKNuQ}HBq+A5K68^=^%`x_I z!zf_snyM3qBs^mx`ZP|!IC$K6DP-NWDo!2LbhLgE)JXn0arRu5x^v~i`@odCvvV1& zXymghnP0NU^3h{X0U1gV~Y_z#zBx-w$;~#6iw;N@S8`0;vR0sBMIYJ~K_Zb^s z?p^KCCxl&zmrL%Enjfyaysk6ki|-O{$Ud8Bj2JyhnmYqFoStmYTuh{B*^BHhl`w~k z5YJj7Mz7WyiMM|4$rfJ^?6t9bfsJbW3s-UrvtAJT?11t0n=ngkwD%jtDB^60@;n*- z@vzxj>*x;Rd@y_IXPw;Rp;ciNgaNzP3inoISm_p0&JR~faNFA&oJl#QvAFsH99Y!Z z=ZqG5`Sf2s5H4Twj!Iz6ALyH`JncCIU8SV+=y@F6JAH<`;WvS7ABo*zCM5N6_A;Bd z)%0+VbV-CxJS1oV>wmQ!^DYG(u_D7BRirRdifiHvARtYkKTFh z+pd9LnRp$~c>75y0RZ>^$7+xD-0>SD<=Ob_BxBcV3|CL$=R_@FSm{H8gQR~6HL`!Q zGXEVNO#_96g;VS6#c7URC#$Nf36Y)O*;p7gI~S`-8*Bv=F{Q#dUNJA3neMCQO zM)adlU#`YNTbGtH*VluK!%)e43ym|pONpx4pOBp=+mM^nGtbNtx^e$E02sc7`+nQU zJ4WNVmG8JbKjpm5Z%1v>30frdWl8APdnC=Uz;Lw*scyK5FKopb(rHxW8<7P2*}uWe zQ5w>U#yWu|Bw{-~imE%O%!-HN7rYu75qrF?OA8JOdw+F1@SJ-%_QiY(r{PY4g?XZm zdn}D+;hb80q&FE89dP|0m-KS$X2eu-msHmuR4nC!&AR=rhvZ z!J)(sW&CZ_a26i0Ak5XdBVI93+Sr(qfU72Ga>Kcio7+V4WUk$xLvN3+6B>o!8JXK9 zJihZm_Quxi`(E+Dz`$LIqs=Vx%pl}@^Jn5t`;*WYA6j?1eOE_C!Nfh${Y2&Qf z#N+L`b=0eCTb~&|(g_7GvBP=p_&@LLT}dBct7Ew3dk){KEOO+Db3cZ##0#a+#fk`F zMB?g*ogcx2=fK+{SIA~m=aI66Anatb919Go(bnT5)igLmsFV=W-vIbn6ByJ~0%pv6 zKrRpSSb%fcs;(d1AdD{CA`4ZH1Nt~?Vv`F@58ZyV|aDHVK%6< zF2fkL#|>modH;K%?u2#ANqo}aF34%os6)#Z*U(Y#qbX6_`h!@BXDPS|iCdVbob+#R zHuM{!cA;<2U`C)^MOCM#-azo2s~qde$Ky}`Myho217<#<> zsy%IKSrBFluCf`^HbcgIk)v@YyFy1<--ZnPm#ey-;h@#0?`C?|yxq#Qm7s}SJ!jHe z>W1Ao(aoo@7(#gatr_jQXD%)-r)++q4+LNJI%+#h^l)E4HQ$soj(1#ys7kL0CEu*; z6LFa`U4GJMH`n-l?Z9n+eH`S;>_^Plk+I<6>fG5I72^w&ow*Q_C@d;kYScrO)ysNJ zQ}Zn&_BK|!*y0h zwsGZq%UBNs!6a6Ab4;h0yN+v6SBxV+Ehe8#mc@e<*@ehe$akSJ!FlypB<_v~A%dg3 zE`?Ty4{NISle^%Z9&))k_?a~9E)vKFBzEqC24L?9Qa{vl5s?voo4gLNX DW}SbR literal 11680 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 where \ is specific to the package you're using. You can then use the package's API. +You refer to installed packages in code with a `using ` directive, where `` is often the package name. You can then use the package's API in your project. > [!Tip] -> **Start with nuget.org**: Browsing nuget.org is how .NET developers typically find components they can reuse in their own applications. You can search nuget.org directly or find and install packages within Visual Studio as shown in this article. +> Browse [nuget.org/packages](https://nuget.org/packages) to find packages you can reuse in your own applications. You can search directly at [https://nuget.org](https://nuget.org/packages), or find and install packages from within Visual Studio. For more information, see [Find and evaluate NuGet packages for your project](../consume-packages/finding-and-choosing-packages.md). ## Prerequisites -- The [.NET Core SDK](https://www.microsoft.com/net/download/), which provides the `dotnet` command-line tool. Starting in Visual Studio 2017, the dotnet CLI is automatically installed with any .NET Core related workloads. +- The [.NET SDK](https://www.microsoft.com/net/download), which provides the `dotnet` command-line tool. Starting in Visual Studio 2017, the dotnet CLI automatically installs with any .NET or .NET Core related workloads. ## Create a project -NuGet packages can be installed into a .NET project of some kind. For this walkthrough, create a simple .NET Core console project as follows: +You can install NuGet packages into a .NET project. For this walkthrough, create a simple .NET console project by using the dotnet CLI, as follows: -1. Create a folder for the project. +1. Create a folder named *Nuget.Quickstart* for the project. 1. Open a command prompt and switch to the new folder. -1. Create the project using the following command: +1. Create the project by using the following command: ```dotnetcli dotnet new console ``` -1. Use `dotnet run` to test that the app has been created properly. +1. Use `dotnet run` to test the app. You should see the output `Hello, World!`. ## Add the Newtonsoft.Json NuGet package @@ -44,51 +44,52 @@ NuGet packages can be installed into a .NET project of some kind. For this walkt dotnet add package Newtonsoft.Json ``` -2. After the command completes, open the `.csproj` file to see the added reference: +2. After the command completes, open the *Nuget.Quickstart.csproj* file in Visual Studio to see the added NuGet package reference: ```xml - + ``` ## Use the Newtonsoft.Json API in the app -1. Open the `Program.cs` file and add the following line at the top of the file: +1. In Visual Studio, open the *Program.cs* file and add the following line at the top of the file: ```cs using Newtonsoft.Json; ``` -1. Add the following code before the `class Program` line: +1. Add the following code to replace the `Console.WriteLine("Hello, World!");` statement: ```cs - public class Account + namespace Nuget.Quickstart { - public string Name { get; set; } - public string Email { get; set; } - public DateTime DOB { get; set; } - } - ``` - -1. Replace the `Main` function with the following: - - ```cs - static void Main(string[] args) - { - Account account = new Account + public class Account { - Name = "John Doe", - Email = "john@nuget.org", - DOB = new DateTime(1980, 2, 20, 0, 0, 0, DateTimeKind.Utc), - }; - - string json = JsonConvert.SerializeObject(account, Formatting.Indented); - Console.WriteLine(json); + public string Name { get; set; } + public string Email { get; set; } + public DateTime DOB { get; set; } + } + internal class Program + { + static void Main(string[] args) + { + Account account = new Account + { + Name = "John Doe", + Email = "john@nuget.org", + DOB = new DateTime(1980, 2, 20, 0, 0, 0, DateTimeKind.Utc), + }; + + string json = JsonConvert.SerializeObject(account, Formatting.Indented); + Console.WriteLine(json); + } + } } ``` -1. Build and run the app by using the `dotnet run` command. The output should be the JSON representation of the `Account` object in the code: +1. Save the file, then build and run the app by using the `dotnet run` command. The output is the JSON representation of the `Account` object in the code: ```output { @@ -97,6 +98,9 @@ NuGet packages can be installed into a .NET project of some kind. For this walkt "DOB": "1980-02-20T00:00:00Z" } ``` + +Congratulations on installing and using your first NuGet package! + ## Related video > [!Video https://docs.microsoft.com/shows/NuGet-101/Install-and-Use-a-NuGet-Package-with-the-NET-CLI-3-of-5/player] @@ -105,13 +109,11 @@ Find more NuGet videos on [Channel 9](/shows/NuGet-101/) and [YouTube](https://w ## Next steps -Congratulations on installing and using your first NuGet package! +Learn more about installing and using NuGet packages with the dotnet CLI: > [!div class="nextstepaction"] -> [Install and use packages using the dotnet CLI](../consume-packages/install-use-packages-dotnet-cli.md) - -To explore more that NuGet has to offer, select the links below. +> [Install and use packages by using the dotnet CLI](../consume-packages/install-use-packages-dotnet-cli.md) - [Overview and workflow of package consumption](../consume-packages/overview-and-workflow.md) -- [Finding and choosing packages](../consume-packages/finding-and-choosing-packages.md) +- [Find and choose packages](../consume-packages/finding-and-choosing-packages.md) - [Package references in project files](../consume-packages/package-references-in-project-files.md) From 58b16faa38727b2be956082bb61b9b544e6dec05 Mon Sep 17 00:00:00 2001 From: Theano Petersen Date: Tue, 30 Aug 2022 16:09:40 -0700 Subject: [PATCH 642/988] Update and refresh Find and choose packages (#2859) --- .../Finding-and-Choosing-Packages.md | 217 +++++++++--------- .../media/Finding-01-Popularity.png | Bin 71470 -> 73065 bytes .../media/Finding-02-SearchResults.png | Bin 68372 -> 23603 bytes .../media/Finding-03-Downloads.png | Bin 6452 -> 7442 bytes .../media/Finding-04-VersionHistory.png | Bin 11507 -> 33937 bytes .../media/Used-By-section-Humanizer.png | Bin 85767 -> 70579 bytes .../media/prefix-reserved.png | Bin 0 -> 15562 bytes docs/consume-packages/media/right-column.png | Bin 0 -> 32082 bytes .../media/supported-frameworks.png | Bin 0 -> 39298 bytes 9 files changed, 114 insertions(+), 103 deletions(-) create mode 100644 docs/consume-packages/media/prefix-reserved.png create mode 100644 docs/consume-packages/media/right-column.png create mode 100644 docs/consume-packages/media/supported-frameworks.png diff --git a/docs/consume-packages/Finding-and-Choosing-Packages.md b/docs/consume-packages/Finding-and-Choosing-Packages.md index d15b342b8..0f59472f7 100644 --- a/docs/consume-packages/Finding-and-Choosing-Packages.md +++ b/docs/consume-packages/Finding-and-Choosing-Packages.md @@ -1,171 +1,182 @@ --- -title: Finding and Choosing NuGet Packages -description: An overview of how to find and choose the best NuGet packages for a project including details on the NuGet search syntax. +title: Find and evaluate NuGet packages +description: Find and evaluate publicly available NuGet packages for your project by using advanced nuget.org search filters and syntax. author: JonDouglas ms.author: jodou -ms.date: 11/03/2021 +ms.date: 08/29/2022 ms.topic: conceptual --- -# Finding and evaluating NuGet packages for your project +# Find and evaluate NuGet packages for your project -When starting any .NET project, or whenever you identify a functional need for your app or service, you can save yourself lots of time and trouble by using existing NuGet packages that fulfill that need. These packages can come from the public collection on [nuget.org](https://www.nuget.org/packages/), or a private source that's provided by your organization or another third party. +When you start a .NET project, or identify a functional need in your app or service, you can often install existing NuGet packages to save the time and trouble of [creating your own packages](../create-packages/overview-and-workflow.md). Existing packages can come from the [nuget.org](https://www.nuget.org/packages) public collection, or from private sources that your organization or another party provide. -## Finding packages +## Find packages -When you visit nuget.org or open the Package Manager UI in Visual Studio, you see a list of packages sorted by relevancy. This shows you the most widely used packages across all .NET projects. There's a good chance that some of these packages may be useful for your own projects! +You can find packages directly at [https://nuget.org/packages](https://www.nuget.org/packages), or from the [Visual Studio Package Manager UI](install-use-packages-visual-studio.md) or [Package Manager Console](install-use-packages-powershell.md) with nuget.org as a source. All packages from nuget.org are routinely scanned for viruses. -![Default view of nuget.org/packages showing the most popular packages](media/Finding-01-Popularity.png) +At [nuget.org/packages](https://www.nuget.org/packages), you see a list of NuGet packages with the most popular packages across all .NET projects listed first. Some of these packages might be useful for your projects. -On nuget.org, notice the **Filter** button on the upper right of the page. When clicked, the Advanced Search panel expands to present sorting and filtering options. +![Screenshot that shows the default view of nuget.org/packages with the most popular packages at the top.](media/Finding-01-Popularity.png) -![Search results for 'json' on nuget.org](media/Finding-02-SearchResults.png) +To search for a package, enter the package name or search terms in the Search box at the top of the page. You can use [advanced search syntax](#search-syntax) to filter your search. -You can use the **Package type** filter to show packages of a specific type: -- **`All types`**: This is the default behavior. It shows all packages regardless of their type. -- **`Dependency`**: Regular NuGet packages that can be installed into your project. -- **`.NET tool`**: This filters to [.NET tools](/dotnet/core/tools/global-tools), a NuGet package that contains a console application. -- **`Template`**: This filters to [.NET templates](/dotnet/core/install/templates), which can be used to create new projects using the [`dotnet new`](/dotnet/core/tools/dotnet-new) command. +### Advanced filtering and sorting -You can use the **Sort by** option to sort the search results: -- **`Relevance`**: This is the default behavior. It sorts results according to an internal scoring algorithm. -- **`Downloads`**: Sorts the search results by the total number of downloads, in descending order. -- **`Recently updated`**: Sorts the search results by their latest version's creation date, in descending chronological order. +At nuget.org/packages, you can select the **Filter** button at upper-right to expand advanced sorting and filtering options. -In the **Options** section, we can find the **`Include prerelease`** checkbox. -When checked, nuget.org shows all versions of packages including pre-releases. To show only stable versions, clear the option. +![Screenshot that shows the Advanced Search panel on nuget.org.](media/Finding-02-SearchResults.png) -To apply the search filters, click on the **`Apply`** button. You can always get back to the default behavior by clicking on the **`Reset`** button. +Use the **Package type** filter to show packages of a specific type: -You can also use the [search syntax](#search-syntax) to filter on tags, owners, and package IDs. +- **All types** is the default and shows all packages regardless of type. +- **Dependency** filters to regular NuGet packages that you can install into your project. +- **.NET tool** filters to [.NET tools](/dotnet/core/tools/global-tools) packages that contain console applications. +- **Template** filters to [.NET templates](/dotnet/core/install/templates) that you can use to create new projects with the [dotnet new](/dotnet/core/tools/dotnet-new) command. -### Does the package support my project's target framework? +Use the **Sort by** option to sort the list by several criteria: -NuGet installs a package into a project only if that package's supported frameworks include the project's target framework. If the package is not compatible, NuGet issues an error. +- **Relevance** is the default, and sorts results according to an internal scoring algorithm. +- **Downloads** sorts the search results by the total number of downloads, in descending order. +- **Recently updated** sorts the search results by the latest package version creation date, in descending chronological order. -Some packages list their supported frameworks directly in the nuget.org gallery, but because such data is not required, many packages do not include that list. At present there is no means to search nuget.org for packages that support a specific target framework (the feature is under consideration, see [NuGet Issue 2936](https://github.com/NuGet/NuGetGallery/issues/2936)). +By default, NuGet lists all versions of packages, including prerelease and beta versions. In the **Options** section, deselect the **Include prerelease** checkbox to list only stable, released package versions. -Fortunately, you can determine supported frameworks through two other means: +To apply changes, select **Apply**. To get back to the defaults, select **Reset**. -1. Attempt to install a package into a project using the [`Install-Package`](../reference/ps-reference/ps-ref-install-package.md) command in the NuGet Package Manager Console. If the package is incompatible, this command shows you the package's supported frameworks. +### Search syntax -1. Download the package from its page on nuget.org using the **Manual download** link under **Info**. Change the extension from `.nupkg` to `.zip`, and open the file to examine the content of its `lib` folder. There you see subfolders for each of the supported frameworks, where each subfolder is named with a target framework moniker (TFM; see [Target Frameworks](../reference/target-frameworks.md)). If you see no subfolders under `lib` and only a single DLL, then you must attempt to install the package in your project to discover its compatibility. +Package search queries at nuget.org, from the NuGet CLI, and from within Visual Studio all use the same syntax. Other package sources, like Azure Artifacts or GitHub Package Repository, might use different syntax or might not support advanced filtering. -## Pre-release packages +- You can search the package `id`, `packageid`, `version`, `title`, `tags`, `author`, `description`, `summary`, or `owner` properties by using the syntax `:`. -Many package authors make preview and beta releases available as they continue to make improvements and seek feedback on their latest revisions. +- Search applies to keywords and descriptions, and is case-insensitive. For example, the following strings all search the `id` property for the string `nuget.core`: -By default, nuget.org shows pre-release packages in search results. To search only stable releases, clear the **Include prerelease** option in the Advanced Search panel that is accessible from the **Filter** button on the upper right of the page + `id:NuGet.Core`
    `ID:nuget.core`
    `Id:NUGET.CORE` -![Include prerelease checkbox on nuget.org](media/Finding-06-include-prerelease.png) +- Searches on the `id` property match substrings, while `packageid` and `owner` use exact, case-insensitive matches. For example: -In Visual Studio, and when using the NuGet and dotnet CLI tools, NuGet does not include pre-release versions by default. To change this behavior, do the following steps: + `PackageId:jquery` searches for the exact package ID `jquery`.
    `Id:jquery` searches for all package IDs that contain the string `jquery`. -- **Package Manager UI in Visual Studio**: In the **Manage NuGet Packages** UI, set the **Include prerelease** box. Setting or clearing this box refreshes the Package Manager UI and the list of available versions you can install. +- You can search for multiple values or properties at the same time. For example: - ![The Include prerelease checkbox in Visual Studio](media/Prerelease_02-CheckPrerelease.png) + `id:jquery id:ui` searches for multiple terms in the `id` property.
    `id:jquery tags:validation` searches multiple properties. -- **Package Manager Console**: Use the `-IncludePrerelease` switch with the `Find-Package`, `Get-Package`, `Install-Package`, `Sync-Package`, and `Update-Package` commands. Refer to the [PowerShell Reference](../reference/powershell-reference.md). +- Search ignores unsupported properties, so `invalid:jquery ui` is the same as searching for `ui`, and `invalid:jquery` returns all packages. -- **nuget.exe CLI**: Use the `-prerelease` switch with the `install`, `update`, `delete`, and `mirror` commands. Refer to the [NuGet CLI reference](../reference/nuget-exe-cli-reference.md) +### Determine supported frameworks -- **dotnet.exe CLI**: Specify the exact pre-release version using the `-v` argument. Refer to the [dotnet add package reference](/dotnet/core/tools/dotnet-add-package). +NuGet installs a package into a project only if the package's supported .NET frameworks include the project's target frameworks. If the package isn't compatible, NuGet issues an error. - +There are several ways to determine the frameworks that a package supports: -### Native C++ packages +- On the package's page at nuget.org, supported frameworks appear below the package ID and on the **Frameworks** tab, but not all packages show supported frameworks. + + ![Screenshot of the Frameworks UI and tab on the package page at nuget.org.](media/supported-frameworks.png) + +- Download the package manually by selecting **Download package** under **About**. Change the file extension of the downloaded package from *.nupkg* to *.zip*, open the *.zip* folder, and examine its *lib* folder. There are subfolders for each supported framework, each named with a target framework moniker (TFM). For more information, see [Target Frameworks](../reference/target-frameworks.md). If there aren't any subfolders under *lib* and there's only a single DLL, try to install the package to discover its compatibility. + +- Try to install the package into a project by using [Install-Package](../reference/ps-reference/ps-ref-install-package.md) in the Visual Studio Package Manager Console. If the package is incompatible, the console output shows the package's supported frameworks. + +### Prerelease packages -NuGet supports native C++ packages can that can be used in C++ projects in Visual Studio. This enables the **Manage NuGet Packages** context-menu command for projects, introduces a `native` target framework, and provides MSBuild integration. +Many package authors provide preview and beta releases as they continue to improve and seek feedback on latest revisions. By default, nuget.org shows prerelease packages in its package list and search results. -To find native packages on [nuget.org](https://www.nuget.org/packages), search using `tag:native`. Such packages typically provide `.targets` and `.props` files, which NuGet imports automatically when the package is added to a project. +To list and search only stable releases: -## Evaluating packages + - At nuget.org, deselect the **Include prerelease** checkbox in the advanced search panel. + - In the Visual Studio NuGet Package Manager UI, deselect the **Include prerelease** checkbox next to the Search box. -The best way to evaluate the usefulness of a package is to download it and try it out in your code (all packages on nuget.org are routinely scanned for viruses, by the way). After all, every highly popular package got started with only a few developers using it, and you might be one of the early adopters! +The Visual Studio Package Manager Console, NuGet CLI, and dotnet CLI tools don't include prerelease versions by default. To include prerelease versions: + +- In the Package Manager Console, use the `-IncludePrerelease` switch with the `Find-Package`, `Get-Package`, `Install-Package`, `Sync-Package`, and `Update-Package` commands. For more information, see the [PowerShell Reference](../reference/powershell-reference.md). + +- For the NuGet CLI, use the `-prerelease` switch with the `install`, `update`, `delete`, and `mirror` commands. For more information, see the [NuGet CLI reference](../reference/nuget-exe-cli-reference.md). + +- For the dotnet CLI, specify a prerelease version with the `-v` argument. For more information, see the [dotnet add package reference](/dotnet/core/tools/dotnet-add-package). + + +### Native C++ packages -At the same time, using a NuGet package means taking a dependency on it, so you want to make sure it's robust and reliable. Because installing and directly testing a package is time-consuming, you can also learn a lot about a package's quality by using the information on a package's listing page: +Visual Studio C++ projects can use native C++ NuGet packages. Installing these packages enables the **Manage NuGet Packages** context-menu command, exposes a `native` target framework, and provides MSBuild integration. -- **Downloads statistics**: on the package page on nuget.org, the **Statistics** section shows total downloads, downloads of the most recent version, and average downloads per day. Larger numbers indicate that many other developers have taken a dependency on the package, which means that it has proven itself. +To find native packages on nuget.org/packages, search by using `tag:native`. Such packages typically provide *.targets* and *.props* files, which NuGet imports automatically when adding the packages. - ![Download statistics on a package's listing page](media/Finding-03-Downloads.png) +## Evaluate packages -- **Used By**: on the package page, the **Used By** section lists the top 5 most popular NuGet.org packages and popular GitHub repositories that depend on this package. Packages and repos that depend on this package can be called "dependents" of this package. Dependent packages and repos can be seen as "endorsements" of this package, as package authors have chosen to trust and depend on it. - - A dependent package must depend on *any version* of this package in its *latest stable listed version*. This definition ensures that displayed dependent packages are an up-to-date reflection of package author's decision to trust and depend on this package. Prerelease dependents are not listed as they are not considered whole-hearted endoresements yet. See the following table for examples: +The best way to evaluate a package's usefulness is to try it out. You take a dependency on a package when you use it, so you must make sure it's robust and reliable. However, installing a package and directly testing it is time-consuming. You can learn a lot about a package's quality by using the information on the package's page at nuget.org/packages. - | Package A versions | Package A is a listed as a dependent of Package B? | - |-|-| - | v1.0.0
    v1.1.0 (latest stable) --> Package B
    v1.2.0-preview | TRUE, latest stable version depends on Package B | - | v1.0.0 --> Package B
    v1.1.0 (latest stable)
    v1.2.0-preview | FALSE, latest stable version does not depend on Package B | - | v1.0.0 --> Package B
    v1.1.0 (latest stable)
    v1.2.0-preview --> Package B | FALSE, latest stable version does not depend on Package B | +- The **Prefix Reserved** checkmark next to the package ID on the packages list and the package page means the package owners have applied for and been granted a [reserved package ID prefix](../nuget-org/id-prefix-reservation.md). To meet the [ID prefix reservation criteria](../nuget-org/id-prefix-reservation.md#id-prefix-reservation-criteria), package owners must clearly identify themselves and their packages. - - A GitHub repository's number of stars generally indicates how popular that repository is with GitHub users (more stars usually means more popular). Please visit [GitHub's Getting Started page](https://help.github.com/en/github/getting-started-with-github/saving-repositories-with-stars#about-stars) for more information on GitHub's star and repository ranking system. + ![Screenshot that shows Prefix Reserved on a package's page.](media/prefix-reserved.png) + +- **Downloads** in the package page's right column shows **Total**, **Current version**, and **Per day average** downloads. Large numbers indicate that the package has proven itself among many developers. - ![Used By](media/Used-By-section-Humanizer.png) + ![Screenshot that shows Download statistics on a package's page.](media/Finding-03-Downloads.png) + + Select **Full stats** next to **Downloads** to see a page that shows package downloads for the past six weeks by version number. Versions that more developers are using are typically better choices. - > [!Note] - > A package's Used By section is generated automatically, periodically, without human review of individual repositories, and solely for informational purposes in order to show you NuGet.org packages and popular GitHub repositories that depend on the package. +- The **Used By** tab on the package page shows the top five most popular nuget.org packages and GitHub repositories that depend on this package. Packages and repos that depend on this package are called *dependents*. Dependent packages and repos can be seen as endorsing this package, because they chose to trust and depend on it. -- **Version History**: on the package page, look under **Info** for the date of the most recent update and examine the **Version History**. A well-maintained package has recent updates and a rich version history. Neglected packages have few updates and often haven't been updated in some time. + ![Screenshot that shows the Used By list.](media/Used-By-section-Humanizer.png) + + The *latest stable version* of a dependent package must depend on any version of this package. This definition ensures that listed dependent packages are an up-to-date reflection of package authors' decisions to trust and depend on the package. The dependents list doesn't show prerelease dependents, because they're not considered wholehearted endorsements yet. The following examples show which packages show as dependents: - ![Version history on a package's listing page](media/Finding-04-VersionHistory.png) + | Dependent package version | Dependent package listed as a dependent? | + |-|-| + | v1.0.0
    v1.1.0 (latest stable) depends on this package
    v1.2.0-preview | TRUE, latest stable version depends on this package | + | v1.0.0 depends on this package
    v1.1.0 (latest stable)
    v1.2.0-preview | FALSE, latest stable version doesn't depend on this package | + | v1.0.0 depends on this package
    v1.1.0 (latest stable)
    v1.2.0-preview depends on this package | FALSE, latest stable version doesn't depend on this package | -- **Recent installs**: on the package page under **Statistics**, select **View full stats**. The full stats page shows the package installs over the last six weeks by version number. A package that other developers are actively using is typically a better choice than one that's not. + The number of stars for a GitHub repository indicates its popularity with GitHub users. For more information about the GitHub star and repository ranking system, see [About stars](https://help.github.com/github/getting-started-with-github/saving-repositories-with-stars#about-stars). -- **Support**: on the package page under **Info**, select **Project Site** (if available) to see what support options the author provides. A project with a dedicated site is generally better supported. + > [!Note] + > The **Used By** section is automatically generated periodically, without human review, and solely for informational purposes. -- **Developer history**: on the package page under **Owners**, select an owner to see what other packages they've published. Those with multiple packages are more likely to continue supporting their work in the future. +- The **Versions** tab on the package page shows the **Versions**, **Downloads**, **Last Updated** dates, and serious vulnerabilities of package versions. The version you install shouldn't have any high-severity vulnerabilities. A well-maintained package has recent updates and a long version history. Neglected packages have few and long-ago updates. -- **Open source contributions**: many packages are maintained in open-source repositories, making it possible for developers depending on them to directly contribute bug fixes and feature improvements. The contribution history of any given package is also a good indicator of how many developers are actively involved. + ![Screenshot that shows the Versions list.](media/Finding-04-VersionHistory.png) -- **Interview the owners**: new developers can certainly be equally committed to producing great packages for you to use, and it's good to give them a chance to bring something new to the NuGet ecosystem. With this in mind, reach out directly to the package developers through the **Contact Owners** option under **Info** on the listing page. Chances are, they'll be happy to work with you to serve your needs! +The right column of the package page has other informative links: -- **Reserved Package ID Prefixes**: many package owners have applied for and have been granted a [reserved package ID prefix](../nuget-org/id-prefix-reservation.md). When you see the visual checkmark next to a package ID on [nuget.org](https://www.nuget.org/), or in Visual Studio, that means that the package owner has met our [criteria](../nuget-org/id-prefix-reservation.md#id-prefix-reservation-criteria) for ID prefix reservation. This means the package owner is being clear on identifying themselves and their package. +:::row::: + :::column span=""::: +![Screenshot that shows the right column of the package page.](media/right-column.png) + :::column-end::: + :::column span="2"::: +- Select **Project website**, if available, to see what support options the author provides. A project with a dedicated site is generally well supported. -> [!Note] -> Always be mindful of a package's license terms, which you can see by selecting **License Info** on a package's listing page on nuget.org. If a package does not specify license terms, contact the package owner directly using the **Contact owners** link on the package page. Microsoft does not license any intellectual property to you from third party package providers and is not responsible for information provided by third parties. +- Select **Source repository** to go to the Git source code repository for the package. Many authors maintain their packages in open-source repositories, so users can directly contribute bug fixes and feature improvements. The package's contribution history is a good indicator of how many developers are actively involved. -## License URL deprecation -As we transition from [licenseUrl](../reference/nuspec.md#licenseurl) to [license](../reference/nuspec.md#license), some NuGet clients and NuGet feeds may not yet have the ability to surface licensing information in some cases. To maintain backward compatibility, the license URL points to this document which talks about how to retrieve the license information in such cases. +- Select **\ license** to see the package's MIT or other license. If a package doesn't specify license terms, contact the package owner. -If clicking on the license URL for a package brought you to this page, it implies the package contains a license file and -* You are connected to a feed that does not yet know how to interpret and surface the new license information to the client -**OR** -* You are using a client that does not yet know how to interpret and read the new license information that is potentially provided by the feed -**OR** -* A combination of both +- Select any of the package owners under **Owners** to see other packages they've published. Owners with multiple packages are more likely to continue supporting their work. Select **Contact owners** next to **Owners** to reach out directly to the package developers. -Here is how you could read the information contained in the license file inside the package: -1. Download the NuGet package, and unzip its contents to a folder. -1. Open the `.nuspec` file which would be at the root of that folder. -1. It should have a tag like `license\license.txt`. This implies the license file is named `license.txt` and it is inside a folder called `license` which would also be at the root of that folder. -1. Navigate to the `license` folder and open the `license.txt` file. + :::column-end::: +:::row-end::: -For the MSBuild equivalent to setting the license in the `.nuspec`, take a look at [Packing a license expression or a license file](../reference/msbuild-targets.md#packing-a-license-expression-or-a-license-file). +## Retrieve license information -## Search Syntax +Some NuGet clients and NuGet feeds might not be able to surface licensing information. To maintain backward compatibility in such cases, the license URL points to this document about how to retrieve the license information. -Search queries on nuget.org, from the NuGet CLI, and within the NuGet Package Manager extension in -Visual Studio, all use the same syntax. In general, search is applied to keywords as well as package descriptions. +If selecting the license URL for a package brings you to this page, it implies the package contains a license file and: -- **Advanced Filtering**: You can apply a search term to a specific property by using the syntax `:` where - `` (case-insensitive) can be `id`, `packageid`, `version`, `title`, `tags`, `author`, `description`, - `summary`, and `owner`. You can search for multiple properties at the same time. Searches on the `id` property are - substring matches, whereas `packageid` and `owner` uses an exact, case-insensitive match. Examples: +- You're connected to a feed that doesn't know how to interpret and surface the license information to the client, or +- You're using a client that doesn't know how to interpret and read the license information the feed provides, or +- A combination of both of these scenarios. -``` -PackageId:jquery # Match the package ID in an exact, case-insensitive manner +To read the information in the license file inside the package: -owner:microsoft # Match the owner in an exact, case-insensitive manner +1. Manually download the package, and unzip its contents to a folder. +1. Open the *.nuspec* file at the root of the folder. +1. Examine the `` tag, such as `license\license.txt`. The example tag states that the license file is named *license.txt* and is inside a subfolder called *license*. +1. Navigate to the specified location and open the specified file. -id:NuGet.Core # Match any part of the ID property -Id:"Nuget.Core" -ID:jQuery -id:jquery id:ui # Search for multiple terms in the ID -id:jquery tags:validation # Search multiple properties +For information about the MSBuild equivalent to setting the license in the *.nuspec*, see [Packing a license expression or a license file](../reference/msbuild-targets.md#packing-a-license-expression-or-a-license-file). -invalid:jquery ui # Unsupported properties are ignored, so this - # is the same as searching on ui -``` +## Next steps -> [!Note] -> This advanced filtering syntax is supported by nuget.org. Other package sources, like Azure Artifacts or GitHub Package Repository, may use different syntax or may not support advanced filtering. +- [Ways to install a NuGet package](overview-and-workflow.md#ways-to-install-a-nuget-package) +- [Install and manage packages in Visual Studio using the NuGet Package Manager](install-use-packages-visual-studio.md) +- [Install and manage packages with the Package Manager Console in Visual Studio](install-use-packages-powershell.md) +- [Install and manage packages with the dotnet CLI](install-use-packages-dotnet-cli.md) diff --git a/docs/consume-packages/media/Finding-01-Popularity.png b/docs/consume-packages/media/Finding-01-Popularity.png index 7dfdd56a3fc28d04795b5c7baa72737848b8b746..d50fbecf50f60e3f2525d5833000f7c1893a73c3 100644 GIT binary patch literal 73065 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 diff --git a/docs/consume-packages/media/Finding-02-SearchResults.png b/docs/consume-packages/media/Finding-02-SearchResults.png index c5da6a9a448f2fa2db2164c520bfc36565a42194..8563e48ac93ee4ceab5be13117fb8148f56d9300 100644 GIT binary patch literal 23603 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%0AYXxTg*oOX?#|iSvqqRTgmzQ5Xn*t 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 HW?%mwbye2E diff --git a/docs/consume-packages/media/Finding-03-Downloads.png b/docs/consume-packages/media/Finding-03-Downloads.png index 0bca8f786ffeab991dfd9f6f61ba95f5bbfbaa12..7cdd4b5e9ba050a91e6c96ca3f957b9fb8853478 100644 GIT binary patch literal 7442 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 literal 6452 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 Gi~k0LtfEf< literal 11507 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⋙-jv&iPX+jmAthUO<5nn_=koW3LB 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 X`C*c6=_WC21|aZs^>bP0l+XkKtARx@ diff --git a/docs/consume-packages/media/prefix-reserved.png b/docs/consume-packages/media/prefix-reserved.png new file mode 100644 index 0000000000000000000000000000000000000000..8396d40e00aca1a133ff0b184ca7c91182059be0 GIT binary patch literal 15562 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 literal 0 HcmV?d00001 diff --git a/docs/consume-packages/media/right-column.png b/docs/consume-packages/media/right-column.png new file mode 100644 index 0000000000000000000000000000000000000000..453d7419a59fd9541bbb399c02659c32209a269c GIT binary patch literal 32082 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 literal 0 HcmV?d00001 diff --git a/docs/consume-packages/media/supported-frameworks.png b/docs/consume-packages/media/supported-frameworks.png new file mode 100644 index 0000000000000000000000000000000000000000..22be75e347d3f67e9d870afed765e368182ea69f GIT binary patch literal 39298 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 literal 0 HcmV?d00001 From c4521fcb0eeea5e1d7c82ee3524cf7fd750c0c7e Mon Sep 17 00:00:00 2001 From: Theano Petersen Date: Tue, 30 Aug 2022 16:10:18 -0700 Subject: [PATCH 643/988] Update and refresh Create and publish dotnet quickstart (#2862) --- ...-publish-a-package-using-the-dotnet-cli.md | 99 +++++++++--------- docs/quickstart/includes/publish-api-key.md | 24 +++-- docs/quickstart/includes/publish-dotnet.md | 28 ++--- docs/quickstart/includes/publish-errors.md | 6 +- docs/quickstart/includes/publish-manage.md | 22 ++-- docs/quickstart/includes/publish-notes.md | 4 +- docs/quickstart/media/QS_Create-02-APIKey.png | Bin 14177 -> 21051 bytes .../media/qs_create-vs-03-trash-can.png | Bin 11166 -> 14559 bytes .../media/qs_create-vs-04-unlist.png | Bin 4780 -> 24724 bytes 9 files changed, 96 insertions(+), 87 deletions(-) diff --git a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md index c667da03e..ef85ba98c 100644 --- a/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md +++ b/docs/quickstart/create-and-publish-a-package-using-the-dotnet-cli.md @@ -1,90 +1,86 @@ --- -title: Create and publish a NuGet package using the dotnet CLI -description: A walkthrough tutorial on creating and publishing a NuGet package using the .NET Core CLI, dotnet. +title: Create and publish a NuGet package with the dotnet CLI +description: Walk through quickly creating and publishing a NuGet package by using the dotnet CLI. author: JonDouglas ms.author: jodou -ms.date: 05/24/2019 +ms.date: 08/29/2022 ms.topic: quickstart --- -# Quickstart: Create and publish a package (dotnet CLI) +# Quickstart: Create and publish a package with the dotnet CLI -It's a simple process to create a NuGet package from a .NET Class Library and publish it to nuget.org using the `dotnet` command-line interface (CLI). +This quickstart shows you how to quickly create a NuGet package from a .NET class library and publish it to nuget.org by using the .NET command-line interface, or [dotnet CLI](/dotnet/core/tools). ## Prerequisites -1. Install the [.NET Core SDK](https://www.microsoft.com/net/download/), which includes the `dotnet` CLI. Starting in Visual Studio 2017, the dotnet CLI is automatically installed with any .NET Core related workloads. +- The [.NET SDK](https://www.microsoft.com/net/download), which provides the dotnet command-line tool. Starting in Visual Studio 2017, the dotnet CLI automatically installs with any .NET or .NET Core related workloads. -1. [Register for a free account on nuget.org](https://www.nuget.org/users/account/LogOn?returnUrl=%2F) if you don't have one already. Creating a new account sends a confirmation email. You must confirm the account before you can upload a package. +- A free account on nuget.org. Follow the instructions at [Add a new individual account](../nuget-org/individual-accounts.md#add-a-new-individual-account). ## Create a class library project -You can use an existing .NET Class Library project for the code you want to package, or create a simple one as follows: +You can use an existing .NET Class Library project for the code you want to package, or create a simple project as follows: -1. Create a folder called `AppLogger`. +1. Create a folder named *AppLogger*. +1. Open a command prompt and switch to the *AppLogger* folder. All the dotnet CLI commands in this quickstart run on the current folder by default. +1. Enter `dotnet new classlib`, which creates a project with the current folder name. -1. Open a command prompt and switch to the `AppLogger` folder. - -1. Type `dotnet new classlib`, which uses the name of the current folder for the project. - - This creates the new project. +For more information, see [dotnet new](/dotnet/core/tools/dotnet-new). ## Add package metadata to the project file -Every NuGet package needs a manifest that describes the package's contents and dependencies. In a final package, the manifest is a `.nuspec` file that is generated from the NuGet metadata properties that you include in the project file. +Every NuGet package has a manifest that describes the package's contents and dependencies. In the final package, the manifest is a *.nuspec* file, which uses the NuGet metadata properties you include in the project file. -1. Open your project file (`.csproj`, `.fsproj` or `.vbproj` depending on the language you're using) and add the following minimal properties inside the existing `` tag, changing the values as appropriate: +Open the *.csproj*, *.fproj*, or *.vbproj* project file, and add the following properties inside the existing `` tag. Use your own values for name and company, and replace the package identifier with a unique value. - ```xml - AppLogger - 1.0.0 - your_name - your_company - ``` +```xml +Contoso.08.28.22.001.Test +1.0.0 +your_name +your_company +``` - > [!Important] - > Give the package an identifier that's unique across nuget.org or whatever host you're using. For this walkthrough we recommend including "Sample" or "Test" in the name as the later publishing step does make the package publicly visible (though it's unlikely anyone will actually use it). +> [!Important] +> The package identifier must be unique across nuget.org and other package sources. Publishing makes the package publicly visible, so if you use the example AppLogger library or other test library, use a unique name that includes `Sample` or `Test`. -1. Add any optional properties described on [NuGet metadata properties](/dotnet/core/tools/csproj#nuget-metadata-properties). +You can add any optional properties described in [NuGet metadata properties](/dotnet/core/tools/csproj#nuget-metadata-properties). - > [!Note] - > For packages built for public consumption, pay special attention to the **PackageTags** property, as tags help others find your package and understand what it does. +> [!Note] +> For packages you build for public consumption, pay special attention to the `PackageTags` property. Tags help others find your package and understand what it does. ## Run the pack command -To build a NuGet package (a `.nupkg` file) from the project, run the `dotnet pack` command, which also builds the project automatically: +To build a NuGet package or *.nupkg* file from the project, run the [dotnet pack](/dotnet/core/tools/dotnet-pack) command, which also builds the project automatically. ```dotnetcli -# Uses the project file in the current folder by default dotnet pack ``` -The output shows the path to the `.nupkg` file: +The output shows the path to the *.nupkg* file: ```output -Microsoft (R) Build Engine version 15.5.180.51428 for .NET Core -Copyright (C) Microsoft Corporation. All rights reserved. - - Restore completed in 29.91 ms for D:\proj\AppLoggerNet\AppLogger\AppLogger.csproj. - AppLogger -> D:\proj\AppLoggerNet\AppLogger\bin\Debug\netstandard2.0\AppLogger.dll - Successfully created package 'D:\proj\AppLoggerNet\AppLogger\bin\Debug\AppLogger.1.0.0.nupkg'. -``` +MSBuild version 17.3.0+92e077650 for .NET + Determining projects to restore... + Restored C:\Users\myname\source\repos\AppLogger\AppLogger.csproj (in 64 ms). + AppLogger -> C:\Users\myname\source\repos\AppLogger\bin\Debug\net6.0\AppLogger.dll + Successfully created package 'C:\Users\myname\source\repos\AppLogger\bin\Debug\Contoso.08.28.22.001.Test.1.0.0.nupkg'. + ``` ### Automatically generate package on build -To automatically run `dotnet pack` when you run `dotnet build`, add the following line to your project file within ``: +To automatically run `dotnet pack` whenever you run `dotnet build`, add the following line to your project file within ``: ```xml -true + true ``` ## Publish the package -Once you have a `.nupkg` file, you publish it to nuget.org using the `dotnet nuget push` command along with an API key acquired from nuget.org. +Publish your *.nupkg* file to nuget.org by using the [dotnet nuget push](/dotnet/core/tools/dotnet-nuget-push) command with an API key you get from nuget.org. [!INCLUDE [publish-notes](includes/publish-notes.md)] -### Acquire your API key +### Get your API key [!INCLUDE [publish-api-key](includes/publish-api-key.md)] @@ -100,6 +96,8 @@ Once you have a `.nupkg` file, you publish it to nuget.org using the `dotnet nug [!INCLUDE [publish-manage](includes/publish-manage.md)] +Congratulations on creating and publishing your first NuGet package! + ## Related video > [!Video https://docs.microsoft.com/shows/NuGet-101/Create-and-Publish-a-NuGet-Package-with-the-NET-CLI-5-of-5/player] @@ -108,18 +106,19 @@ Find more NuGet videos on [Channel 9](/shows/NuGet-101/) and [YouTube](https://w ## Next steps -Congratulations on creating your first NuGet package! + +See more details about how to create packages with the dotnet CLI: > [!div class="nextstepaction"] -> [Create a Package](../create-packages/creating-a-package-dotnet-cli.md) +> [Create a NuGet package with the dotnet CLI](../create-packages/creating-a-package-dotnet-cli.md) -To explore more that NuGet has to offer, select the links below. +Get more information about creating and publishing NuGet packages: -- [Publish a Package](../nuget-org/publish-a-package.md) -- [Pre-release Packages](../create-packages/Prerelease-Packages.md) +- [Publish a package](../nuget-org/publish-a-package.md) +- [Prerelease packages](../create-packages/Prerelease-Packages.md) - [Support multiple target frameworks](../create-packages/multiple-target-frameworks-project-file.md) - [Package versioning](../concepts/package-versioning.md) -- [Adding a license expression or file](../reference/msbuild-targets.md#packing-a-license-expression-or-a-license-file) -- [Creating localized packages](../create-packages/creating-localized-packages.md) -- [Creating symbol packages](../create-packages/symbol-packages-snupkg.md) -- [Signing packages](../create-packages/Sign-a-package.md) +- [Add a license expression or file](../reference/msbuild-targets.md#packing-a-license-expression-or-a-license-file) +- [Create localized packages](../create-packages/creating-localized-packages.md) +- [Create symbol packages](../create-packages/symbol-packages-snupkg.md) +- [Sign packages](../create-packages/Sign-a-package.md) diff --git a/docs/quickstart/includes/publish-api-key.md b/docs/quickstart/includes/publish-api-key.md index 30c3fe668..91c853eb9 100644 --- a/docs/quickstart/includes/publish-api-key.md +++ b/docs/quickstart/includes/publish-api-key.md @@ -1,19 +1,23 @@ -1. [Sign into your nuget.org account](https://www.nuget.org/users/account/LogOn?returnUrl=%2F) or create an account if you don't have one already. +1. [Sign into your nuget.org account](https://www.nuget.org/users/account/LogOn?returnUrl=%2F) or [create an account](../../nuget-org/individual-accounts.md#add-a-new-individual-account) if you don't have one already. - For more information on creating your account, see [Individual accounts](../../nuget-org/individual-accounts.md). +1. Select your user name at upper right, and then select **API Keys**. -1. Select your user name (on the upper right), then select **API Keys**. +1. Select **Create**, and provide a name for your key. -1. Select **Create**, provide a name for your key, select **Select Scopes > Push**. Enter * for **Glob pattern**, then select **Create**. (See below for more about scopes.) +1. Under **Select Scopes**, select **Push**. -1. Once the key is created, select **Copy** to retrieve the access key you need in the CLI: +1. Under **Select Packages** > **Glob Pattern**, enter \*. - ![Copying the API key to the clipboard](../media/QS_Create-02-APIKey.png) +1. Select **Create**. -> [!Warning] -> **Always keep your API key a secret!** Treat your API key as a password that allows anyone to manage packages on your behalf. You should delete or regenerate your API key if it is accidentally revealed. +1. Select **Copy** to copy the new key. + + ![Screenshot that shows the new API key with the Copy link.](../media/QS_Create-02-APIKey.png) > [!Important] -> Save your key in a secure location because you cannot copy the key again later on. If you return to the API key page, you need to regenerate the key to copy it. You can also remove the API key if you no longer want to push packages. +> - Always keep your API key a secret. The API key is like a password that allows anyone to manage packages on your behalf. Delete or regenerate your API key if it's accidentally revealed. +> - Save your key in a secure location, because you can't copy the key again later. If you return to the API key page, you need to regenerate the key to copy it. You can also remove the API key if you no longer want to push packages. + +*Scoping* lets you create separate API keys for different purposes. Each key has an expiration timeframe, and you can scope the key to specific packages or glob patterns. You also scope each key to specific operations: Push new packages and package versions, push only new package versions, or unlist. -Scoping allows you to create separate API keys for different purposes. Each key has its expiration timeframe and can be scoped to specific packages (or glob patterns). Each key is also scoped to specific operations: push of new packages and updates, push of updates only, or delisting. Through scoping, you can create API keys for different people who manage packages for your organization such that they have only the permissions they need. For more information, see [scoped API keys](../../nuget-org/scoped-api-keys.md). \ No newline at end of file +Through scoping, you can create API keys for different people who manage packages for your organization so they have only the permissions they need. For more information, see [scoped API keys](../../nuget-org/scoped-api-keys.md). diff --git a/docs/quickstart/includes/publish-dotnet.md b/docs/quickstart/includes/publish-dotnet.md index c0c84beb2..c30407713 100644 --- a/docs/quickstart/includes/publish-dotnet.md +++ b/docs/quickstart/includes/publish-dotnet.md @@ -1,18 +1,20 @@ -1. Change to the folder containing the `.nupkg` file. +From the folder that contains the *.nupkg* file, run the following command. Specify your *.nupkg* filename, and replace the key value with your API key. -1. Run the following command, specifying your package name (unique package ID) and replacing the key value with your API key: +```dotnetcli +dotnet nuget push Contoso.08.28.22.001.Test.1.0.0.nupkg --api-key qz2jga8pl3dvn2akksyquwcs9ygggg4exypy3bhxy6w6x6 --source https://api.nuget.org/v3/index.json +``` - ```dotnetcli - dotnet nuget push AppLogger.1.0.0.nupkg --api-key qz2jga8pl3dvn2akksyquwcs9ygggg4exypy3bhxy6w6x6 --source https://api.nuget.org/v3/index.json - ``` +The output shows the results of the publishing process: -1. dotnet displays the results of the publishing process: +```output +Pushing Contoso.08.28.22.001.Test.1.0.0.nupkg to 'https://www.nuget.org/api/v2/package'... + PUT https://www.nuget.org/api/v2/package/ +warn : All published packages should have license information specified. Learn more: https://aka.ms/nuget/authoring-best-practices#licensing. + Created https://www.nuget.org/api/v2/package/ 1221ms +Your package was pushed. +``` - ```output - info : Pushing AppLogger.1.0.0.nupkg to 'https://www.nuget.org/api/v2/package'... - info : PUT https://www.nuget.org/api/v2/package/ - info : Created https://www.nuget.org/api/v2/package/ 12620ms - info : Your package was pushed. - ``` +For more information, see [dotnet nuget push](/dotnet/core/tools/dotnet-nuget-push). -See [dotnet nuget push](/dotnet/core/tools/dotnet-nuget-push). \ No newline at end of file +> [!NOTE] +> If you want to avoid your test package being live on nuget.org, you can push to the nuget.org test site at [https://int.nugettest.org](https://int.nugettest.org). Note that packages uploaded to int.nugettest.org might not be preserved. diff --git a/docs/quickstart/includes/publish-errors.md b/docs/quickstart/includes/publish-errors.md index cfdb184cc..5b7e2d18e 100644 --- a/docs/quickstart/includes/publish-errors.md +++ b/docs/quickstart/includes/publish-errors.md @@ -1,10 +1,10 @@ -Errors from the `push` command typically indicate the problem. For example, you may have forgotten to update the version number in your project and are therefore trying to publish a package that already exists. +Errors from the `push` command typically indicate the problem. For example, you might have forgotten to update the version number in your project, so you're trying to publish a package that already exists. -You also see errors when trying to publish a package using an identifier that already exists on the host. The name "AppLogger", for example, already exists. In such a case, the `push` command gives the following error: +You also see errors if your API key is invalid or expired, or if you try to publish a package using an identifier that already exists on the host. The identifier `AppLogger-test`, for example, already exists on nuget.org. If you try to publish a package with that identifier, the `push` command gives the following error: ```output Response status code does not indicate success: 403 (The specified API key is invalid, has expired, or does not have permission to access the specified package.). ``` -If you're using a valid API key that you just created, then this message indicates a naming conflict, which isn't entirely clear from the "permission" part of the error. Change the package identifier, rebuild the project, recreate the `.nupkg` file, and retry the `push` command. \ No newline at end of file +If you get this error, check that you're using a valid API key that hasn't expired. If you are, the error indicates the package identifier already exists on the host. To fix the error, change the package identifier to be unique, rebuild the project, recreate the *.nupkg* file, and retry the `push` command. diff --git a/docs/quickstart/includes/publish-manage.md b/docs/quickstart/includes/publish-manage.md index cde7211e3..9ecbfc084 100644 --- a/docs/quickstart/includes/publish-manage.md +++ b/docs/quickstart/includes/publish-manage.md @@ -1,17 +1,21 @@ -From your profile on nuget.org, select **Manage Packages** to see the one you just published. You also receive a confirmation email. Note that it might take a while for your package to be indexed and appear in search results where others can find it. During that time your package page shows the message below: +When your package successfully publishes, you receive a confirmation email. To see the package you just published, on [nuget.org](https://www.nuget.org/), select your user name at upper right, and then select **Manage Packages**. -![This package has not been indexed yet. It will appear in search results and will be available for install/restore after indexing is complete.](../media/QS_Create-03-NotIndexed.png) +> [!NOTE] +> It might take awhile for your package to be indexed and appear in search results where others can find it. During that time, your package appears under **Unlisted Packages**, and the package page shows the following message: +> +> ![This package has not been indexed yet. It will appear in search results and will be available for install/restore after indexing is complete.](../media/QS_Create-03-NotIndexed.png) -And that's it! You've just published your first NuGet package to nuget.org that other developers can use in their own projects. +You've now published a NuGet package to nuget.org that other developers can use in their projects, but the sample package uses an empty class library that isn't useful. To *unlist* this test package and hide it from search results: -If in this walkthrough you created a package that isn't actually useful (such as a package created with an empty class library), you should *unlist* the package to hide it from search results: +1. Once the package appears under **Published Packages** on the **Manage Packages** page, select the pencil icon next to the package listing. -1. On nuget.org, select your user name (upper right of the page), then select **Manage Packages**. + ![Screenshot that shows the Edit icon for a package listing on nuget.org.](../media/qs_create-vs-03-trash-can.png) -1. Locate the package you want to unlist under **Published** and select the trash can icon on the right: +1. On the next page, select **Listing**, deselect the **List in search results** checkbox, and then select **Save**. - ![Trash can icon shown for a package listing on nuget.org](../media/qs_create-vs-03-trash-can.png) + ![Screenshot that shows clearing the List checkbox for a package on nuget.org.](../media/qs_create-vs-04-unlist.png) -1. On the subsequent page, clear the box labeled **List (package-name) in search results** and select **Save**: +The package now appears under **Unlisted Packages** in **Manage Packages** and no longer appears in search results. - ![Clearing the List checkbox for a package on nuget.org](../media/qs_create-vs-04-unlist.png) \ No newline at end of file +> [!NOTE] +> To avoid your test package being live on nuget.org, you can push to the nuget.org test site at [https://int.nugettest.org](https://int.nugettest.org). Note that packages uploaded to int.nugettest.org might not be preserved. diff --git a/docs/quickstart/includes/publish-notes.md b/docs/quickstart/includes/publish-notes.md index 383e4df4b..cc3a3ff2d 100644 --- a/docs/quickstart/includes/publish-notes.md +++ b/docs/quickstart/includes/publish-notes.md @@ -1,4 +1,4 @@ > [!Note] -> **Virus scanning**: All packages uploaded to nuget.org are scanned for viruses and rejected if any viruses are found. All packages listed on nuget.org are also scanned periodically. +> - Nuget.org scans all uploaded packages for viruses and rejects the packages if it finds any viruses. Nuget.org also scans all existing listed packages periodically. > -> Packages published to nuget.org are also publicly visible to other developers unless you unlist them. To host packages privately, see [Hosting packages](../../hosting-packages/overview.md). \ No newline at end of file +> - Packages you publish to nuget.org are publicly visible to other developers unless you unlist them. To host packages privately, see [Host your own NuGet feeds](../../hosting-packages/overview.md). \ No newline at end of file diff --git a/docs/quickstart/media/QS_Create-02-APIKey.png b/docs/quickstart/media/QS_Create-02-APIKey.png index 5e98fc670170aee7bd7757f6c28f153974ea7cea..7dabd6ea0c8f01e7f3171be51a2b6fd05a003bd0 100644 GIT binary patch literal 21051 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 GIQd^VLow9= literal 14177 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 MRQy;fZuIs40>hf5TL1t6 diff --git a/docs/quickstart/media/qs_create-vs-03-trash-can.png b/docs/quickstart/media/qs_create-vs-03-trash-can.png index a2b15fd2601445656f290901d3de3e6ba54127a0..57bab2cb5f3731b10ab28a5c600cbf40f72fe55e 100644 GIT binary patch literal 14559 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 literal 11166 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� zi$`LML)TYY#qL}H31K9f{6($Vf$UATR2wQID|s+4U(8D&V2VLbdaz4krxsmH{02?L zU0itXYZhdhCKEzS-qWd6w@+$s-bo&dwf=2%eN`KlE*|%G68|WVPuBUv2QI<|w9>JlR0-6zbZWD+z9sQ=Z&&spJzd@gi8+mh$F zw9ME8G)?G+>QAfl?Dfx{WNS6a2ukv&kVs2%dH~^m9VL+-e`{n&%UX)89Mp zeg&VsiSv9YX|4D~cC<%gwZo921`OC@b~CqE*vE6V1r5V3TJN;SHu|c+Z}sj>2!F)| zV51>`P6G=>T247Hxq{#7FL^`Fn~)Tnl$@H3r%Ps^_sJTc&I$Pq9z7}sFT2#l;OvWw zo!H*rcmBHAXUeJ_ z-%G#rZSxX6WklOjbvKV!hlagCk?s29g~Eur-zz?BwYMeoPkZ4?2W9oVix)Q(PZnmf zM24rGcYV*Yw25j)LL`ad-^5d+y~A0m(5$)!Qp?QJf>PQQ-^dQRtQ%<>UncrpdOtJX z9zDjOXxhi>TMu?x#9yTDqdg)TvT>ZP3cZVbVIrFDPTz0hgZ_dPS=J8v(aYyF8;aXK z7mBS1=3n>vbBcJzsq)MuEW)659@)bl+hjr~|HP>-?If$lN*`G}bJ09TuCS68eLMY9 zx+SvA1#fjIU1c#M4B;VS_GVV z@|j*1xu28scb-%`J`&7+ffQkk9pvgg;S(G3Z-V0OW>kLk@Z@X>oK8i!v{J8OZy}MFR&%w`=Qm?I6;&IkGaQ z$9JChVjb&+YQuU!k}pY<0CN+;+DruJ7hL9Kw%_;YGh)7G!hsW4kJA2%6Gwx2^9i`e1*rfOC)G;j#_tssR%V5pTo*J=2y zSvK?k0ezw8fv@n6+XY@$>@3^04y`u34xefPk{S5lxbc57KL7iVDyR?Q&AXQw0=Pb+ u6ukbM4)?!F82z8_P~5*w0rBzR<|h#=sPgE$c0ZNBcVr|LCCbGNKmRZKP=2Za diff --git a/docs/quickstart/media/qs_create-vs-04-unlist.png b/docs/quickstart/media/qs_create-vs-04-unlist.png index 656af5877a5add2cda131fc2e059315a1c98ca70..0b2b1e8d798cdf818078f6bb34cc103d273b130b 100644 GIT binary patch literal 24724 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 Xd9(Gn`=e6eGvB2PmgmcjUGM!DzAIcE literal 4780 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 yXlnXue2UpchL$Y)j|=F3iQ+^ut9SY^md Date: Tue, 30 Aug 2022 17:25:35 -0700 Subject: [PATCH 644/988] Update and refresh Restore packages (#2860) --- docs/consume-packages/Package-Restore.md | 276 ++++++++---------- .../media/Restore-01-AutoRestoreOptions.png | Bin 21162 -> 22696 bytes 2 files changed, 125 insertions(+), 151 deletions(-) diff --git a/docs/consume-packages/Package-Restore.md b/docs/consume-packages/Package-Restore.md index f7bc40ff7..567e6f9f8 100644 --- a/docs/consume-packages/Package-Restore.md +++ b/docs/consume-packages/Package-Restore.md @@ -1,242 +1,216 @@ --- title: NuGet Package Restore -description: An overview of how NuGet restores packages a project depends on, including how to disable restore and constrain versions. +description: See an overview of how NuGet restores packages a project depends on, including how to disable restore and constrain versions. author: JonDouglas ms.author: jodou -ms.date: 08/05/2019 +ms.date: 08/29/2022 ms.topic: conceptual --- -# Restore packages using Package Restore +# Restore packages with NuGet Package Restore -To promote a cleaner development environment and to reduce repository size, NuGet **Package Restore** installs all of a project's dependencies listed in either the project file or `packages.config`. The .NET Core 2.0+ `dotnet build` and `dotnet run` commands do an automatic package restore. Visual Studio can restore packages automatically when it builds a project, and you can restore packages at any time through Visual Studio, `nuget restore`, `dotnet restore`, and xbuild on Mono. +NuGet Package Restore restores all of a project's dependencies that are listed in either a project file or a *packages.config* file. You can restore packages manually with `nuget restore`, `dotnet restore`, `msbuild -t:restore`, or through Visual Studio. The `dotnet build` and `dotnet run` commands automatically restore packages, and you can configure Visual Studio to restore packages automatically when it builds a project. -Package Restore makes sure that all a project's dependencies are available, without having to store them in source control. To configure your source control repository to exclude the package binaries, see [Packages and source control](../consume-packages/packages-and-source-control.md). +To promote a cleaner development environment and to reduce repository size, Package Restore makes all of a project's dependencies available without having to store them in source control. To configure your source control repository to exclude package binaries, see [Packages and source control](../consume-packages/packages-and-source-control.md). -## Package Restore overview +## Package Restore behavior -Package Restore first installs the direct dependencies of a project as needed, then installs any dependencies of those packages throughout the entire dependency graph. +Package Restore tries to install all package dependencies to the state that matches the ``s in a project file, such as *.csproj*, or ``s in a *packages.config* file. Package Restore first installs the direct dependencies of a project as needed, then installs any dependencies of those packages throughout the entire dependency graph. -If a package isn't already installed, NuGet first attempts to retrieve it from the [cache](../consume-packages/managing-the-global-packages-and-cache-folders.md). If the package isn't in the cache, NuGet tries to download the package from all enabled sources in the list at **Tools** > **Options** > **NuGet Package Manager** > **Package Sources** in Visual Studio. During restore, NuGet ignores the order of package sources, and uses the package from whichever source is first to respond to requests. For more information about how NuGet behaves, see [Common NuGet configurations](Configuring-NuGet-Behavior.md). +If a needed package isn't already installed, NuGet first attempts to retrieve it from the local [global packages or HTTP cache folders](../consume-packages/managing-the-global-packages-and-cache-folders.md). If the package isn't in the local folders, NuGet tries to download it from all sources configured in Visual Studio at **Tools** > **Options** > **NuGet Package Manager** > **Package Sources**. -> [!Note] -> NuGet doesn't indicate a failure to restore a package until all the sources have been checked. At that time, NuGet reports a failure for only the last source in the list. The error implies that the package wasn't present on *any* of the other sources, even though errors aren't shown for each of those sources individually. - -## Restore packages - -Package Restore tries to install all package dependencies to the correct state matching the package references in your project file (*.csproj*) or your *packages.config* file. (In Visual Studio, the references appear in Solution Explorer under the **Dependencies \ NuGet** or the **References** node.) - -1. If the package references in your project file are correct, use your preferred tool to restore packages. - - - [Visual Studio](#restore-using-visual-studio) ([automatic restore](#restore-packages-automatically-using-visual-studio) or [manual restore](#restore-packages-manually-using-visual-studio)) - - [dotnet CLI](#restore-using-the-dotnet-cli) - - [nuget.exe CLI](#restore-using-the-nugetexe-cli) - - [MSBuild](#restore-using-msbuild) - - [Azure Pipelines](#restore-using-azure-pipelines) - - [Azure DevOps Server](#restore-using-azure-devops-server) +During restore, NuGet ignores the order of package sources, and uses the package from the first source that responds to requests. If restore fails, NuGet doesn't indicate the failure until after it checks all sources. NuGet then reports a failure for only the last source in the list. The error implies that the package wasn't present on any of the sources, even though it doesn't list the other failures individually. - If the package references in your project file (*.csproj*) or your *packages.config* file are incorrect (they do not match your desired state following Package Restore), then you need to either install or update packages instead. +For more information about NuGet behavior, see [Common NuGet configurations](Configuring-NuGet-Behavior.md). - For projects using PackageReference, after a successful restore, the package should be present in the *global-packages* folder and the `obj/project.assets.json` file is recreated. For projects using `packages.config`, the package should appear in the project's `packages` folder. The project should now build successfully. - -2. After running Package Restore, if you still experience missing packages or package-related errors (such as error icons in Solution Explorer in Visual Studio), you may need to follow instructions described in [Troubleshooting Package Restore errors](package-restore-troubleshooting.md) or, alternatively, [reinstall and update packages](../consume-packages/reinstalling-and-updating-packages.md). - - In Visual Studio, the Package Manager Console provides several flexible options for reinstalling packages. See [Using Package-Update](reinstalling-and-updating-packages.md#using-update-package). +## Restore packages -## Restore using Visual Studio +If the package references in your project file or *packages.config* file are correct, use your preferred tool to restore packages: -In Visual Studio on Windows, either: +- [Visual Studio](#restore-using-visual-studio) +- [dotnet CLI](#restore-using-the-dotnet-cli) +- [nuget.exe CLI](#restore-using-the-nugetexe-cli) +- [MSBuild](#restore-using-msbuild) +- [Azure Pipelines or Azure DevOps Server](#restore-using-azure-pipelines) -- Restore packages automatically, or +After a successful restore: -- Restore packages manually +- For projects that use ``, the package is present in the local *global-packages* folder, and the project *obj/project.assets.json* file is recreated. +- For projects that use *packages.config*, the package appears in the project's *packages* folder. +- The project should now build successfully. -### Restore packages automatically using Visual Studio +If the package references in your project file or your *packages.config* file are incorrect and don't match your desired state, install or update the correct packages instead of using Package Restore. -Package Restore happens automatically when you create a project from a template or build a project, subject to the options in [Enable and disable package restore](#enable-and-disable-package-restore-in-visual-studio). In NuGet 4.0+, restore also happens automatically when you make changes to a SDK-style project (typically a .NET Core or .NET Standard project). +If you have missing packages or package-related errors after you run Package Restore, such as error icons in Solution Explorer, follow the instructions in [Troubleshooting Package Restore errors](package-restore-troubleshooting.md), or [reinstall or update](../consume-packages/reinstalling-and-updating-packages.md) the packages. In Visual Studio, the Package Manager Console provides several options for reinstalling packages. For more information, see [Use Package-Update](reinstalling-and-updating-packages.md#using-update-package). -1. Enable automatic package restore by choosing **Tools** > **Options** > **NuGet Package Manager**, and then selecting **Automatically check for missing packages during build in Visual Studio** under **Package Restore**. + +## Restore packages in Visual Studio - For non-SDK-style projects, you first need to select **Allow NuGet to download missing packages** to enable the automatic restore option. +In Visual Studio on Windows, you can restore packages automatically or manually. First, configure Package Restore through **Tools** > **Options** > **NuGet Package Manager**. -1. Build the project. +### Configure Visual Studio Package Restore options - If one or more individual packages still aren't installed properly, **Solution Explorer** shows an error icon. Right-click and select **Manage NuGet Packages**, and use **Package Manager** to uninstall and reinstall the affected packages. For more information, see [Reinstall and update packages](../consume-packages/reinstalling-and-updating-packages.md) +Configure the following Package Restore options at **Tools** > **Options** > **NuGet Package Manager** > **General**. - If you see the error "This project references NuGet package(s) that are missing on this computer," or "One or more NuGet packages need to be restored but couldn't be because consent has not been granted," [enable automatic restore](#enable-and-disable-package-restore-in-visual-studio). For older projects, also see [Migrate to automatic package restore](#migrate-to-automatic-package-restore-visual-studio). Also see [Package Restore troubleshooting](Package-restore-troubleshooting.md). +![Screenshot that shows the NuGet Package Manager options.](media/Restore-01-AutoRestoreOptions.png) -### Restore packages manually using Visual Studio + +#### Allow NuGet to download missing packages -1. Enable package restore by choosing **Tools** > **Options** > **NuGet Package Manager**. Under **Package Restore** options, select **Allow NuGet to download missing packages**. +Select **Allow NuGet to download missing packages** to enable package restore and the **Restore NuGet Packages** command. This selection sets the `packageRestore/enabled` setting to `True` in the [packageRestore section](../reference/nuget-config-file.md#packagerestore-section) of the global *NuGet.Config* file, at *%AppData%\\Roaming\\NuGet* on Windows or *~/.nuget/NuGet/* on Mac or Linux. -1. In **Solution Explorer**, right click the solution and select **Restore NuGet Packages**. +```xml + + + + + +``` - If one or more individual packages still aren't installed properly, **Solution Explorer** shows an error icon. Right-click and select **Manage NuGet Packages**, and then use **Package Manager** to uninstall and reinstall the affected packages. For more information, see [Reinstall and update packages](../consume-packages/reinstalling-and-updating-packages.md) +> [!Note] +> To globally override the `packageRestore/enabled` setting, you can set the environment variable **EnableNuGetPackageRestore** to True or False before you open Visual Studio or start a build. - If you see the error "This project references NuGet package(s) that are missing on this computer," or "One or more NuGet packages need to be restored but couldn't be because consent has not been granted," [enable automatic restore](#enable-and-disable-package-restore-in-visual-studio). For older projects, also see [Migrate to automatic package restore](#migrate-to-automatic-package-restore-visual-studio). Also see [Package Restore troubleshooting](Package-restore-troubleshooting.md). +To enable or disable Package Restore for all users on a computer, you can add the configuration settings to the global *NuGet.Config* file in Windows at *%ProgramData%\NuGet\Config*, sometimes under a specific *\\\\\\\* Visual Studio folder, or in Mac/Linux at *~/.local/share*. Individual users can then selectively enable restore as needed on a project level. For more details on how NuGet prioritizes multiple config files, see [Common NuGet configurations](../consume-packages/configuring-nuget-behavior.md#how-settings-are-applied). -### Enable and disable package restore in Visual Studio +> [!Important] +> If you edit the `packageRestore` settings in *NuGet.Config* directly, restart Visual Studio so that the **Options** show the current values. -In Visual Studio, you control Package Restore primarily through **Tools** > **Options** > **NuGet Package Manager**: +#### Automatically check for missing packages during build -![Control Package Restore through NuGet Package Manager options](media/Restore-01-AutoRestoreOptions.png) +Select **Automatically check for missing packages during build in Visual Studio** to automatically restore any missing packages when you run a build from Visual Studio. This setting doesn't affect builds run from the MSBuild command line. This selection sets the `packageRestore/automatic` setting to `True` in the `packageRestore` section of the *NuGet.Config* file. -- **Allow NuGet to download missing packages** controls all forms of package restore by changing the `packageRestore/enabled` setting in the [packageRestore section](../reference/nuget-config-file.md#packagerestore-section) of the `NuGet.Config` file, at `%AppData%\NuGet\` on Windows, or `~/.nuget/NuGet/` on Mac/Linux. This setting also enables the **Restore NuGet Packages** command on the solution's context menu in Visual Studio, . +```xml + + + + + +``` - ```xml - - - - - - - ``` - - > [!Note] - > To globally override the `packageRestore/enabled` setting, set the environment variable **EnableNuGetPackageRestore** with a value of True or False before launching Visual Studio or starting a build. +For non-SDK-style projects, you must select **Allow NuGet to download missing packages** as well as **Automatically check for missing packages during build in Visual Studio** in **Options** to enable automatic restore. -- **Automatically check for missing packages during build in Visual Studio** controls automatic restore by changing the `packageRestore/automatic` setting in the [packageRestore section](../reference/nuget-config-file.md#packagerestore-section) of the `NuGet.Config` file. When this option is set to True, running a build from Visual Studio automatically restores any missing packages. This setting doesn't affect builds run from the MSBuild command line. + +#### Choose the default package management format - ```xml - ... - - - - - - - ``` +NuGet has two package management formats, [PackageReference](Package-References-in-Project-Files.md) and [packages.config](../reference/packages-config.md). Select the format you want to use from the dropdown list under **Package Management**. You can also select whether to allow format selection on first package install. -To enable or disable Package Restore for all users on a computer, a developer or company can add the configuration settings to the global `nuget.config` file. The global `nuget.config` is in Windows at `%ProgramData%\NuGet\Config`, sometimes under a specific `\{IDE}\{Version}\{SKU}\` Visual Studio folder, or in Mac/Linux at `~/.local/share`. Individual users can then selectively enable restore as needed on a project level. For more details on how NuGet prioritizes multiple config files, see [Common NuGet configurations](../consume-packages/configuring-nuget-behavior.md#how-settings-are-applied). +> [!Note] +> - If a project doesn't support both package management formats, NuGet uses the package management format that's compatible with the project, which might not be the default you set in the options. NuGet then won't prompt for selection on first install, even if you selected that option. +> +> - If you use Package Manager Console to install the first package in a project, NuGet doesn't prompt for format selection, even if that option is selected in **Options**. -> [!Important] -> If you edit the `packageRestore` settings directly in `nuget.config`, restart Visual Studio, so that the **Options** dialog box shows the current values. + + +### Restore packages manually or automatically -### Choose default package management format +After you enable package restore in **Options**, you can right-click the solution in **Solution Explorer** and select **Restore NuGet Packages** to restore packages anytime. -![Control default package management format though NuGet Package Manager options](media/Restore-02-PackageFormatOptions.png) +If you enabled automatic restore in **Options**, Package Restore happens automatically when you create a project from a template or build a project. For NuGet 4.0+, restore also happens automatically when you make changes to a SDK-style project. -NuGet has two formats in which a project may use packages: [`PackageReference`](package-references-in-project-files.md) and [`packages.config`](../reference/packages-config.md). The default format can be selected from the drop-down under the **Package Management** heading. An option to be prompted when the first package is installed in a project is also available. +For projects that use ``, you can see the package references in Visual Studio **Solution Explorer** under **Dependencies** > **Packages**. Packages that don't install properly when you manually restore or run a build display error icons in **Solution Explorer**. Right-click the project, select **Manage NuGet Packages**, and use the **NuGet Package Manager** to uninstall and reinstall the affected packages. For more information, see [Reinstall and update packages](../consume-packages/reinstalling-and-updating-packages.md). -> [!Note] -> If a project does not support both package management formats, the package management format used will be the one that's compatible with the project, and therefore may not be the default set in the options. Additionally, NuGet will not prompt for selection on first package installation, even if the option is selected in the options window. -> -> If Package Manager Console is used to install the first package in a project, NuGet will not prompt for format selection, even if the option is selected in the options window. +If you see the error **This project references NuGet package(s) that are missing on this computer**, or **One or more NuGet packages need to be restored but couldn't be because consent has not been granted**, make sure you enabled automatic restore. For older projects, see [Migrate to automatic package restore](#migrate-to-automatic-package-restore-visual-studio). Also see [Troubleshooting package restore errors](Package-restore-troubleshooting.md). -## Restore using the dotnet CLI + +## Restore by using the dotnet CLI [!INCLUDE [restore-dotnet-cli](includes/restore-dotnet-cli.md)] > [!IMPORTANT] -> To add a missing package reference to the project file, use [dotnet add package](/dotnet/core/tools/dotnet-add-package?tabs=netcore2x), which also runs the `restore` command. +> To add a missing package reference to the project file, use [dotnet add package](/dotnet/core/tools/dotnet-add-package), which also runs `restore`. -## Restore using the nuget.exe CLI + +## Restore by using the NuGet CLI [!INCLUDE [restore-nuget-exe-cli](includes/restore-nuget-exe-cli.md)] -> [!IMPORTANT] -> The `restore` command does not modify a project file or *packages.config*. To add a dependency, either add a package through the Package Manager UI or Console in Visual Studio, or modify *packages.config* and then run either `install` or `restore`. - -## Restore using MSBuild - -Use the [msbuild -t:restore](../reference/msbuild-targets.md#restore-target) command to restore packages listed in the project file (see [PackageReference](package-references-in-project-files.md)) and starting with MSBuild 16.5+, `packages.config` projects. + +## Restore by using MSBuild - This command is available only in NuGet 4.x+ and MSBuild 15.1+, which are included with Visual Studio 2017 and higher versions. - Starting with MSBuild 16.5+, this command can also restore `packages.config` based projects when run with `-p:RestorePackagesConfig=true`. +You can use [msbuild -t:restore](../reference/msbuild-targets.md#restore-target) to restore packages in NuGet 4.x+ and MSBuild 15.1+, which are included with Visual Studio 2017 and higher. -1. Open a Developer command prompt (In the **Search** box, type **Developer command prompt**). +This command restores packages in projects that use [PackageReference](package-references-in-project-files.md) for package references. Starting with MSBuild 16.5+, the command also supports [packages.config](/nuget/reference/packages-config) package references, when used with `-p:RestorePackagesConfig=true`. - You typically want to start the Developer Command Prompt for Visual Studio from the **Start** menu, as it will be configured with all the necessary paths for MSBuild. +To use MSBuild restore: -2. Switch to the folder containing the project file and type the following command. +1. Open a Developer Command Prompt by searching for *developer command prompt* and starting the prompt from the Windows **Start** menu, which configures all the necessary paths for MSBuild. - ```cmd - # Uses the project file in the current folder by default - msbuild -t:restore - ``` +1. Switch to the project folder, and enter `msbuild -t:restore`. -3. Type the following command to rebuild the project. +1. After the restore completes, enter `msbuild` to rebuild the project. Make sure the MSBuild output indicates that the build completed successfully. - ```cmd - msbuild - ``` - - Make sure that the MSBuild output indicates that the build completed successfully. - > [!Note] -> msbuild has a `-restore` switch which will run `Restore`, reload the project, and then build. See [Restoring and building with one MSBuild command](../reference/msbuild-targets.md#restoring-and-building-with-one-msbuild-command). +> You can use `msbuild -restore` to run `restore`, reload the project, and build, since build is the default target. For more information, see [Restore and build with one MSBuild command](../reference/msbuild-targets.md#restoring-and-building-with-one-msbuild-command). -```cmd -# Will restore the project, then build, since build is the default target. -msbuild -restore -``` + + +## Restore with Azure Pipelines or Azure DevOps Server -## Restore using Azure Pipelines +When you create a build definition in Azure Pipelines, you can include the [NuGet CLI restore](/azure/devops/pipelines/tasks/package/nuget#restore-nuget-packages) or [dotnet CLI restore](/azure/devops/pipelines/tasks/build/dotnet-core-cli) task in the definition before any build tasks. Some build templates include the restore task by default. -When you create a build definition in Azure Pipelines, include the NuGet [restore](/azure/devops/pipelines/tasks/package/nuget#restore-nuget-packages) or .NET Core [restore](/azure/devops/pipelines/tasks/build/dotnet-core-cli) task in the definition before any build tasks. Some build templates include the restore task by default. +Azure DevOps Server and TFS 2013 and later automatically restore packages during build, if you use a TFS 2013 or later Team Build template. You can also include a build step to run a command-line restore option, or optionally migrate the build template to a later version. For more information, see [Set up package restore with Team Foundation Build](../consume-packages/team-foundation-build.md). -## Restore using Azure DevOps Server +## Constrain package versions -Azure DevOps Server and TFS 2013 and later automatically restore packages during build, if you're using a TFS 2013 or later Team Build template. For earlier TFS versions, you can include a build step to run a command-line restore option, or optionally migrate the build template to a later version. For more information, see [Set up package restore with Team Foundation Build](../consume-packages/team-foundation-build.md). +NuGet restore through any method honors any version constraints you specify in *packages.config* or the project file. -## Constrain package versions with restore +- In *packages.config*, you can specify an `allowedVersions` range in the dependency. For more information, see [Constrain upgrade versions](../consume-packages/reinstalling-and-updating-packages.md#constraining-upgrade-versions). For example: -When NuGet restores packages through any method, it honors any constraints you specified in `packages.config` or the project file: + ```xml + + ``` -- In `packages.config`, you can specify a version range in the `allowedVersion` property of the dependency. See [Constrain upgrade versions](../consume-packages/reinstalling-and-updating-packages.md#constraining-upgrade-versions) for more information. For example: +- In a project file, you can specify the version range in the `Version` property of the dependency. For example: - ```xml - - ``` + ```xml + + ``` -- In a project file, you can use PackageReference to specify a dependency's range directly. For example: +In both cases, use the notation described in [Package versioning](../concepts/package-versioning.md). - ```xml - - ``` +## Force restore from remote package sources -In all cases, use the notation described in [Package versioning](../concepts/package-versioning.md). +By default, NuGet restore operations use packages from the local *global-packages* and *http-cache* folders, as described in [Manage the global packages and cache folders](managing-the-global-packages-and-cache-folders.md). To avoid using these local packages, use the following options. -## Force restore from package sources +To clear all local caches: -By default, NuGet restore operations use packages from the *global-packages* and *http-cache* folders, which are described in [Manage the global packages and cache folders](managing-the-global-packages-and-cache-folders.md). +- In Visual Studio, select the **Clear All NuGet Cache(s)** button at **Tools** > **Options** > **NuGet Package Manager** > **General**. +- In the dotnet CLI, use `dotnet nuget locals all --clear`. +- In the NuGet CLI, use `nuget locals all -clear`. -To avoid using the *global-packages* folder, do one of the following: +To avoid using the packages in the *global-packages* folder: -- Clear the folder using `nuget locals global-packages -clear` or `dotnet nuget locals global-packages --clear`. -- Temporarily change the location of the *global-packages* folder before the restore operation, using one of the following methods: - - Set the NUGET_PACKAGES environment variable to a different folder. - - Create a `NuGet.Config` file that sets `globalPackagesFolder` (if using PackageReference) or `repositoryPath` (if using `packages.config`) to a different folder. For more information, see [configuration settings](../reference/nuget-config-file.md#config-section). - - MSBuild only: Specify a different folder with the `RestorePackagesPath` property. +- Clear the folder by using `nuget locals global-packages -clear` or `dotnet nuget locals global-packages --clear`. +- Temporarily set the **NUGET_PACKAGES** environment variable to a different folder. +- Create a *NuGet.Config* file that sets `globalPackagesFolder` for `PackageReference`, or `repositoryPath` for *packages.config*, to a different folder. For more information, see [configuration settings](../reference/nuget-config-file.md#config-section). +- For MSBuild only, specify a different folder with the `RestorePackagesPath` property. -To avoid using the cache for HTTP sources, do one of the following: +To avoid using packages in the HTTP cache: -- Use the `-NoCache` option with `nuget restore`, or the `--no-cache` option with `dotnet restore`. These options don't affect restore operations through the Visual Studio Package Manager or console. -- Clear the cache using `nuget locals http-cache -clear` or `dotnet nuget locals http-cache --clear`. -- Temporarily set the NUGET_HTTP_CACHE_PATH environment variable to a different folder. +- Clear the cache by using `nuget locals http-cache -clear` or `dotnet nuget locals http-cache --clear`. +- Temporarily set the **NUGET_HTTP_CACHE_PATH** environment variable to a different folder. +- For `nuget restore`, use the `-NoCache` option, or for `dotnet restore`, use the `--no-cache` option. These options don't affect restore operations through the Visual Studio Package Manager or Console. -## Migrate to automatic package restore (Visual Studio) + +## Migrate to automatic package restore -For NuGet 2.6 and earlier, an MSBuild-integrated package restore was previously supported but that is no longer true. (It was typically enabled by right-clicking a solution in Visual Studio and selecting **Enable NuGet Package Restore**). If your project uses the deprecated MSBuild-integrated package restore, please migrate to automatic package restore. +Earlier versions of NuGet supported an MSBuild-integrated package restore. Projects that use the deprecated MSBuild-integrated package restore should migrate to automatic package restore. -Projects that use MSBuild-Integrated package restore typically contain a *.nuget* folder with three files: *NuGet.config*, *nuget.exe*, and *NuGet.targets*. The presence of a *NuGet.targets* file determines whether NuGet will continue to use the MSBuild-integrated approach, so this file must be removed during the migration. +These projects typically contain a *.nuget* folder with three files: *NuGet.config*, *nuget.exe*, and *NuGet.targets*. The *NuGet.targets* file causes NuGet to use the MSBuild-integrated approach, so it must be removed. To migrate to automatic package restore: +1. Enable automatic package restore. 1. Close Visual Studio. -2. Delete *.nuget/nuget.exe* and *.nuget/NuGet.targets*. -3. For each project file, remove the `` element and remove any reference to *NuGet.targets*. +1. Delete *.nuget/nuget.exe* and *.nuget/NuGet.targets*. +1. For each project file, remove the `` element, and remove any references to *NuGet.targets*. -To test the automatic package restore: +To test automatic package restore: 1. Remove the *packages* folder from the solution. -2. Open the solution in Visual Studio and start a build. - - Automatic package restore should download and install each dependency package, without adding them to source control. +1. Open the solution in Visual Studio and start a build. Automatic package restore should download and install each dependency package, without adding it to source control. -## Troubleshooting +## Next steps -See [Troubleshoot package restore](Package-restore-troubleshooting.md). +- [Troubleshoot package restore](Package-restore-troubleshooting.md) +- [Manage the global packages, cache, and temp folders](managing-the-global-packages-and-cache-folders.md) diff --git a/docs/consume-packages/media/Restore-01-AutoRestoreOptions.png b/docs/consume-packages/media/Restore-01-AutoRestoreOptions.png index 1e5f04321ebe6f5f512fab0b3bdc95160cea81c9..4283c072e21aa2bd4ddf11826fd4ab7bcf369052 100644 GIT binary patch literal 22696 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 F_#ZKMyD0zw literal 21162 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

    mh6}2%|)j>IeR9yH|`mBgsCBtGp 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 Date: Wed, 31 Aug 2022 10:37:52 -0700 Subject: [PATCH 645/988] Update CODEOWNERS (#2867) --- .github/CODEOWNERS | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index a3d68d9cc..00faff511 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -6,8 +6,8 @@ # @NuGet/core-team owns any file in the `/docs/nuget-org/` directory # in the root of your repository and any of its subdirectories. -/docs/nuget-org/ @NuGet/core-team +/docs/nuget-org/ @NuGet/nuget-client @NuGet/nuget-pm @NuGet/gallery-team # @NuGet/core-team owns any file in the `/docs/policies/` directory # in the root of your repository and any of its subdirectories. -/docs/policies/ @NuGet/core-team +/docs/policies/ @NuGet/nuget-client @NuGet/nuget-pm @NuGet/gallery-team From c0c2df3c0390fff08616750ebe8d64d5cb6c747c Mon Sep 17 00:00:00 2001 From: Theano Petersen Date: Wed, 31 Aug 2022 11:36:14 -0700 Subject: [PATCH 646/988] Update and refresh Create package dotnet (#2863) --- .../creating-a-package-dotnet-cli.md | 125 +++++++++--------- .../includes/add-description.md | 4 +- .../includes/choose-package-id.md | 24 ++-- 3 files changed, 78 insertions(+), 75 deletions(-) diff --git a/docs/create-packages/creating-a-package-dotnet-cli.md b/docs/create-packages/creating-a-package-dotnet-cli.md index c341b6568..048cb9cbc 100644 --- a/docs/create-packages/creating-a-package-dotnet-cli.md +++ b/docs/create-packages/creating-a-package-dotnet-cli.md @@ -1,135 +1,134 @@ --- -title: Create a NuGet package using the dotnet CLI -description: A detailed guide to the process of designing and creating a NuGet package, including key decision points like files and versioning. +title: Create a NuGet package with the dotnet CLI +description: Read a detailed guide about the process of designing and creating a NuGet package, including key decision points like files and versioning. author: JonDouglas ms.author: jodou -ms.date: 07/14/2022 +ms.date: 08/29/2022 ms.topic: conceptual --- -# Create a NuGet package using the dotnet CLI +# Create a NuGet package with the dotnet CLI -No matter what your package does or what code it contains, you use one of the CLI tools, either `nuget.exe` or `dotnet.exe`, to package that functionality into a component that can be shared with and used by any number of other developers. This article describes how to create a package using the dotnet CLI. To install the `dotnet` CLI, see [Install NuGet client tools](../install-nuget-client-tools.md). Starting in Visual Studio 2017, the dotnet CLI is included with .NET Core workloads. +NuGet packages contain code that developers can reuse in their projects. No matter what your code does or contains, you use a command-line tool, either `nuget.exe` or `dotnet.exe`, to create the NuGet package. -For .NET Core and .NET Standard projects that use the [SDK-style format](../resources/check-project-format.md), and any other SDK-style projects, NuGet uses information in the project file directly to create a package. For step-by-step tutorials, see [Create .NET Standard Packages with dotnet CLI](../quickstart/create-and-publish-a-package-using-the-dotnet-cli.md) or [Create .NET Standard Packages with Visual Studio](../quickstart/create-and-publish-a-package-using-visual-studio.md). +This article describes how to create a package by using the [dotnet CLI](). Starting in Visual Studio 2017, the dotnet CLI is included with all .NET and .NET Core workloads. If you need to install the dotnet CLI or other NuGet client tools, see [Install NuGet client tools](../install-nuget-client-tools.md). -`msbuild -t:pack` is functionality equivalent to `dotnet pack`. To build with MSBuild, see [Create a NuGet package using MSBuild](creating-a-package-msbuild.md). +This topic applies only to .NET and other projects that use the [SDK-style format](../resources/check-project-format.md). For these projects, NuGet uses information from the project file to create a package. For quickstart tutorials, see [Create packages with the dotnet CLI](../quickstart/create-and-publish-a-package-using-the-dotnet-cli.md) or [Create packages with Visual Studio](../quickstart/create-and-publish-a-package-using-visual-studio.md). -> [!IMPORTANT] -> This topic applies to [SDK-style](../resources/check-project-format.md) projects, typically .NET Core and .NET Standard projects. - -## Set properties +The MSBuild [msbuild -t:pack](creating-a-package-msbuild.md#run-the-msbuild--tpack-command) command is functionally equivalent to [dotnet pack](/dotnet/core/tools/dotnet-pack). For more information about creating a package with MSBuild, see [Create a NuGet package using MSBuild](creating-a-package-msbuild.md). -The following properties are required to create a package. +> [!NOTE] +> - To create and publish packages for non-SDK-style projects, typically .NET Framework projects, see [Create a package using the nuget.exe CLI](Creating-a-Package.md) or [Create and publish a package using Visual Studio (.NET Framework)](../quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md). +> +> - For projects migrated from *packages.config* to [PackageReference](../consume-packages/package-references-in-project-files.md), use `msbuild -t:pack`. For more information, see [Create a package after migration](../consume-packages/migrate-packages-config-to-package-reference.md#create-a-package-after-migration). -- `PackageId`, the package identifier, which must be unique across the gallery that hosts the package. If not specified, the default value is `AssemblyName`. -- `Version`, a specific version number in the form *Major.Minor.Patch[-Suffix]* where *-Suffix* identifies [pre-release versions](prerelease-packages.md). If not specified, the default value is 1.0.0. -- The package title as it should appear on the host (like nuget.org) -- `Authors`, author and owner information. If not specified, the default value is `AssemblyName`. -- `Company`, your company name. If not specified, the default value is `AssemblyName`. +## Set properties -In Visual Studio, you can set these values in the project properties (right-click the project in Solution Explorer, choose **Properties**, and select the **Package** tab). You can also set these properties directly in the project files (`.csproj`). +You can create an example class library project by using the `dotnet new classlib` command, and package the project by using `dotnet pack`. The `dotnet pack` command uses the following properties. If you don't specify values in the project file, the command uses default values. -```xml - - AppLogger - 1.0.0 - your_name - your_company - -``` +- `PackageId`, the package identifier, must be unique across nuget.org and any other targets that host the package. If you don't specify a value, the command uses the `AssemblyName`. +- `Version` is a specific version number in the form `Major.Minor.Patch[-Suffix]`, where `-Suffix` identifies [prerelease versions](prerelease-packages.md). If not specified, the default value is `1.0.0`. +- `Authors` are the authors of the package. If not specified, the default value is the `AssemblyName`. +- `Company` is company information. If not specified, the default value is the `Authors` value. +- `Product` is product information. If not specified, the default value is the `AssemblyName`. -> [!Important] -> Give the package an identifier that's unique across nuget.org or whatever package source you're using. +In Visual Studio, you can set these values in the project properties. Right-click the project in **Solution Explorer**, select **Properties**, and then select the **Package** section. You can also add the properties directly to the *.csproj* or other project file. -The following example shows a simple, complete project file with these properties included. (You can create a new default project using the `dotnet new classlib` command.) +The following example shows a project file with package properties added. ```xml netstandard2.0 - AppLogger + UniqueID 1.0.0 - your_name - your_company + Author Name + Company Name + Product Name ``` -You can also set the optional properties, such as `Title`, `PackageDescription`, and `PackageTags`, as described in [MSBuild pack targets](../reference/msbuild-targets.md#pack-target), [Controlling dependency assets](../consume-packages/package-references-in-project-files.md#controlling-dependency-assets), and [NuGet metadata properties](/dotnet/core/tools/csproj#nuget-metadata-properties). +You can add other optional properties, such as `Title`, `PackageDescription`, and `PackageTags`. -> [!NOTE] -> For packages built for public consumption, pay special attention to the **PackageTags** property, as tags help others find your package and understand what it does. +>[!NOTE] +> For packages you build for public consumption, pay special attention to the `PackageTags` property. Tags help others find your package and understand what it does. -For details on declaring dependencies and specifying version numbers, see [Package references in project files](../consume-packages/package-references-in-project-files.md) and [Package versioning](../concepts/package-versioning.md). It is also possible to surface assets from dependencies directly in the package by using the `` and `` attributes. For more information, see [Controlling dependency assets](../consume-packages/package-references-in-project-files.md#controlling-dependency-assets). +The `dotnet pack` command automatically converts `PackageReference`s in your project files to dependencies in the created package. You can control which assets to include through the `IncludeAssets`, `ExcludeAssets` and `PrivateAssets` tags. For more information, see [Controlling dependency assets](../consume-packages/package-references-in-project-files.md#controlling-dependency-assets). -## Add an optional description field +For more information about dependencies, optional properties, and versioning, see: -[!INCLUDE [add description to package](includes/add-description.md)] +- [Package references in project files](../consume-packages/package-references-in-project-files.md) +- [Package versioning](../concepts/package-versioning.md) +- [NuGet metadata properties](/dotnet/core/tools/csproj#nuget-metadata-properties) +- [MSBuild pack targets](../reference/msbuild-targets.md#pack-target) -## Choose a unique package identifier and set the version number +### Choose a unique package identifier and set the version number [!INCLUDE [choose-package-id](includes/choose-package-id.md)] +### Add an optional description field + +[!INCLUDE [add description to package](includes/add-description.md)] + ## Run the pack command -To build a NuGet package (a `.nupkg` file) from the project, run the `dotnet pack` command, which also builds the project automatically: +To build the NuGet package or *.nupkg* file, run the [dotnet pack](/dotnet/core/tools/dotnet-pack) command from the project folder, which also builds the project automatically. ```dotnetcli -# Uses the project file in the current folder by default dotnet pack ``` -The output shows the path to the `.nupkg` file. +The output shows the path to the *.nupkg* file: ```output -Microsoft (R) Build Engine version 15.5.180.51428 for .NET Core -Copyright (C) Microsoft Corporation. All rights reserved. - - Restore completed in 29.91 ms for D:\proj\AppLoggerNet\AppLogger\AppLogger.csproj. - AppLogger -> D:\proj\AppLoggerNet\AppLogger\bin\Debug\netstandard2.0\AppLogger.dll +MSBuild version 17.3.0+92e077650 for .NET + Determining projects to restore... + Restored D:\proj\AppLoggerNet\AppLogger\AppLogger.csproj (in 97 ms). Successfully created package 'D:\proj\AppLoggerNet\AppLogger\bin\Debug\AppLogger.1.0.0.nupkg'. ``` ### Automatically generate package on build -To automatically run `dotnet pack` when you run `dotnet build`, add the following line to your project file within ``: +To automatically run `dotnet pack` whenever you run `dotnet build`, add the following line to your project file in the `` tag: ```xml true ``` -When you run `dotnet pack` on a solution, this packs all the projects in the solution that are packable ([\](/dotnet/core/tools/csproj#nuget-metadata-properties) property is set to `true`). - > [!NOTE] -> When you automatically generate the package, the time to pack increases the build time for your project. +> When you automatically generate the package, packing increases the build time for your project. + +Running `dotnet pack` on a solution packs all the projects in the solution that are packable, that is, have the `IsPackable` property set to `true`. ### Test package installation -Before publishing a package, you typically want to test the process of installing a package into a project. The tests make sure that the necessary files all end up in their correct places in the project. +Before you publish a package, you should test installing the package into a project. Testing ensures that the necessary files end up in their correct places in the project. -You can test installations manually in Visual Studio or on the command line using the normal [package installation steps](../consume-packages/overview-and-workflow.md#ways-to-install-a-nuget-package). +Test the installation manually in Visual Studio or on the command line by using the normal [package installation process](../consume-packages/overview-and-workflow.md#ways-to-install-a-nuget-package). > [!IMPORTANT] -> Packages are immutable. If you correct a problem, change the contents of the package and pack again, when you retest you will still be using the old version of the package until you [clear your global packages](../consume-packages/managing-the-global-packages-and-cache-folders.md#clearing-local-folders) folder. This is especially relevant when testing packages that don't use a unique prerelease label on every build. +> - You can't change packages once created. If you correct a problem, change the package contents and repack. +> +> - After you recreate the package, retesting still uses the old version of the package until you [clear your global packages folder](../consume-packages/managing-the-global-packages-and-cache-folders.md#clearing-local-folders). Clearing the folder is especially important for packages that don't use a unique prerelease label on every build. + +## Next steps -## Next Steps +Once you create the package, you can publish the *.nupkg* file to the host of your choice. -Once you've created a package, which is a `.nupkg` file, you can publish it to the gallery of your choice as described on [Publishing a Package](../nuget-org/publish-a-package.md). +> [!div class="nextstepaction"] +> [Publish a package](../nuget-org/publish-a-package.md) -You might also want to extend the capabilities of your package or otherwise support other scenarios as described in the following topics: +See the following articles for ways to extend the capabilities of your package or support other scenarios: - [Package versioning](../concepts/package-versioning.md) - [Support multiple target frameworks](../create-packages/multiple-target-frameworks-project-file.md) - [Add a package icon](../reference/nuspec.md#icon) - [Transformations of source and configuration files](../create-packages/source-and-config-file-transformations.md) - [Localization](../create-packages/creating-localized-packages.md) -- [Pre-release versions](../create-packages/prerelease-packages.md) +- [Prerelease versions](../create-packages/prerelease-packages.md) - [Set package type](../create-packages/set-package-type.md) - [MSBuild props and targets](../concepts/MSBuild-props-and-targets.md) - [Create packages with COM interop assemblies](../create-packages/author-packages-with-COM-interop-assemblies.md) - -Finally, there are additional package types to be aware of: - -- [Native Packages](../guides/native-packages.md) -- [Symbol Packages](../create-packages/symbol-packages-snupkg.md) +- [Create native packages](../guides/native-packages.md) +- [Create symbol packages (.snupkg)](symbol-packages-snupkg.md) diff --git a/docs/create-packages/includes/add-description.md b/docs/create-packages/includes/add-description.md index e9905d94e..7d64843f1 100644 --- a/docs/create-packages/includes/add-description.md +++ b/docs/create-packages/includes/add-description.md @@ -1,6 +1,6 @@ -The package's optional description, displayed on the package's NuGet.org page, is either pulled in from the `` used in the `.csproj` file or pulled in via the `$description` in the [.nuspec file](../../reference/nuspec.md). +The package's optional description appears on the **README** tab of the package's nuget.org page. The description pulls from the `` in the project file or the `$description` in the [.nuspec file](../../reference/nuspec.md). -An example of a _description_ field is shown in the following XML text of the `.csproj` file for a .NET package: +The following example shows a `Description` in the *.csproj* file for a .NET package: ```xml diff --git a/docs/create-packages/includes/choose-package-id.md b/docs/create-packages/includes/choose-package-id.md index 21e68f7fb..6e6c5f436 100644 --- a/docs/create-packages/includes/choose-package-id.md +++ b/docs/create-packages/includes/choose-package-id.md @@ -1,18 +1,22 @@ -The package identifier and the version number are the two most important values in the project because they uniquely identify the exact code that's contained in the package. +The package identifier and the version number uniquely identify the exact code that's contained in the package. -**Best practices for the package identifier:** +Follow these best practices to create the package identifier: -- **Uniqueness**: The identifier must be unique across nuget.org or whatever gallery hosts the package. Before deciding on an identifier, search the applicable gallery to check if the name is already in use. To avoid conflicts, a good pattern is to use your company name as the first part of the identifier, such as `Contoso.`. -- **Namespace-like names**: Follow a pattern similar to namespaces in .NET, using dot notation instead of hyphens. For example, use `Contoso.Utility.UsefulStuff` rather than `Contoso-Utility-UsefulStuff` or `Contoso_Utility_UsefulStuff`. Consumers also find it helpful when the package identifier matches the namespaces used in the code. -- **Sample Packages**: If you produce a package of sample code that demonstrates how to use another package, attach `.Sample` as a suffix to the identifier, as in `Contoso.Utility.UsefulStuff.Sample`. (The sample package would of course have a dependency on the other package.) When creating a sample package, use the `contentFiles` value in ``. In the `content` folder, arrange the sample code in a folder called `\Samples\` as in `\Samples\Contoso.Utility.UsefulStuff.Sample`. +- The identifier must be *unique* across nuget.org and all other locations that host the package. To avoid conflicts, a good pattern is to use your company name as the first part of the identifier. +- Follow a *.NET namespace-like naming convention*, using dot notation. For example, use `Contoso.Utility.UsefulStuff` rather than `Contoso-Utility-UsefulStuff` or `Contoso_Utility_UsefulStuff`. It's also helpful for consumers if you match the package identifier to the namespace the code uses. +- If you produce a package of *sample code* that demonstrates how to use another package, append `.Sample` to the identifier, as in `Contoso.Utility.UsefulStuff.Sample`. -**Best practices for the package version:** + The sample package has a dependency on the original package. When you create the sample package, add `` with the `contentFiles` value. In the *content* folder, arrange the sample code in a folder called *\\Samples\\\*, such as *\\Samples\\Contoso.Utility.UsefulStuff.Sample*. -- In general, set the version of the package to match the project (or assembly), though this is not strictly required. This is a simple matter when you limit a package to a single assembly. Overall, remember that NuGet itself deals with package versions when resolving dependencies, not assembly versions. -- When using a non-standard version scheme, be sure to consider the NuGet versioning rules as explained in [Package versioning](../../concepts/package-versioning.md). NuGet is mostly [semver 2 compliant](../../concepts/package-versioning.md#semantic-versioning-200). +Follow these best practices to set the package version: -> For information on dependency resolution, see [Dependency resolution with PackageReference](../../concepts/dependency-resolution.md#dependency-resolution-with-packagereference). For older information that may also be helpful to better understand versioning, see this series of blog posts. +- In general, set the package version to *match the project or assembly version*, although this isn't strictly required. Matching the version is simple when you limit a package to a single assembly. NuGet itself deals with package versions when resolving dependencies, not assembly versions. + +- If you use a non-standard version scheme, be sure to consider the *NuGet versioning rules* as explained in [Package versioning](../../concepts/package-versioning.md). NuGet is mostly [Semantic Versioning 2.0.0](../../concepts/package-versioning.md#semantic-versioning-200)-compliant. + +>[!NOTE] +> For more information about dependency resolution, see [Dependency resolution with PackageReference](../../concepts/dependency-resolution.md#dependency-resolution-with-packagereference). For information that might help you understand versioning, see this series of blog posts: > > - [Part 1: Taking on DLL Hell](https://blog.davidebbo.com/2011/01/nuget-versioning-part-1-taking-on-dll.html) > - [Part 2: The core algorithm](https://blog.davidebbo.com/2011/01/nuget-versioning-part-2-core-algorithm.html) -> - [Part 3: Unification via Binding Redirects](https://blog.davidebbo.com/2011/01/nuget-versioning-part-3-unification-via.html) +> - [Part 3: Unification via binding redirects](https://blog.davidebbo.com/2011/01/nuget-versioning-part-3-unification-via.html) From b46fea1dc241aa4c5c069866bdf5ed593af41679 Mon Sep 17 00:00:00 2001 From: lyndaidaii <64443925+lyndaidaii@users.noreply.github.com> Date: Wed, 31 Aug 2022 12:31:07 -0700 Subject: [PATCH 647/988] Update allowlist (#2864) --- docs/nuget-org/package-readme-on-nuget-org.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/docs/nuget-org/package-readme-on-nuget-org.md b/docs/nuget-org/package-readme-on-nuget-org.md index 78a276368..c49751501 100644 --- a/docs/nuget-org/package-readme-on-nuget-org.md +++ b/docs/nuget-org/package-readme-on-nuget-org.md @@ -3,7 +3,7 @@ title: Package readme on NuGet.org description: Detailed explanation of how readme files on NuGet.org are rendered and what to do when you run into issues. author: nkolev92 ms.author: nikolev -ms.date: 02/23/2021 +ms.date: 08/31/2022 ms.topic: conceptual ms.reviewer: anangaur --- @@ -48,6 +48,8 @@ NuGet.org allows all images, including badges, from the following trusted domain * api.dependabot.com * api.travis-ci.com * api.travis-ci.org +* api.reuse.software +* app.fossa.com * app.fossa.io * badge.fury.io * badgen.net @@ -56,6 +58,7 @@ NuGet.org allows all images, including badges, from the following trusted domain * buildstats.info * camo.githubusercontent.com * cdn.jsdelivr.net +* cdn.syncfusion.com * ci.appveyor.com * circleci.com * codecov.io @@ -72,6 +75,8 @@ NuGet.org allows all images, including badges, from the following trusted domain * raw.githubusercontent.com * snyk.io * sonarcloud.io +* travis-ci.com +* travis-ci.org * user-images.githubusercontent.com If you feel that another domain should be added to the allow-list, please feel free to [file an issue](https://github.com/NuGet/NuGetGallery/issues) and it will be reviewed by our engineering team for privacy and security compliance. Images with relative local paths and images hosted from unsupported domains will not be rendered and will produce a warning on the readme file preview and package details page that is only visible to the package owners. From 495eb1399e7769800757c00040983aec82410aba Mon Sep 17 00:00:00 2001 From: Theano Petersen Date: Wed, 31 Aug 2022 12:41:18 -0700 Subject: [PATCH 648/988] Update and refresh Publish packages (#2865) --- docs/nuget-org/Publish-a-package.md | 119 +++++++++--------- docs/nuget-org/media/publish-nuget-signin.png | Bin 0 -> 6848 bytes .../media/publish-upload-package.png | Bin 0 -> 32087 bytes docs/nuget-org/media/publish_NuGetSignIn.PNG | Bin 5123 -> 0 bytes .../media/publish_UploadYourPackage.PNG | Bin 20610 -> 0 bytes 5 files changed, 61 insertions(+), 58 deletions(-) create mode 100644 docs/nuget-org/media/publish-nuget-signin.png create mode 100644 docs/nuget-org/media/publish-upload-package.png delete mode 100644 docs/nuget-org/media/publish_NuGetSignIn.PNG delete mode 100644 docs/nuget-org/media/publish_UploadYourPackage.PNG diff --git a/docs/nuget-org/Publish-a-package.md b/docs/nuget-org/Publish-a-package.md index e2c89c586..4fbc62825 100644 --- a/docs/nuget-org/Publish-a-package.md +++ b/docs/nuget-org/Publish-a-package.md @@ -1,122 +1,125 @@ --- -title: How to Publish a NuGet Package -description: Detailed instructions for how to publish a NuGet package to nuget.org or private feeds, and how to manage package ownership on nuget.org. +title: How to publish NuGet packages +description: See detailed instructions about how to publish a NuGet package and manage package ownership on nuget.org. author: JonDouglas ms.author: jodou -ms.date: 05/18/2018 +ms.date: 8/29/2022 ms.topic: conceptual ms.reviewer: anangaur --- -# Publishing packages +# Publish NuGet packages -Once you have created a package and have your `.nupkg` file in hand, it's a simple process to make it available to other developers, either publicly or privately: +Once you create a NuGet package and have a *.nupkg* file, you can make the package available to other developers either publicly or privately. This article describes how to share public packages globally through [nuget.org](https://www.nuget.org/packages/manage/upload). -- Public packages are made available to all developers globally through [nuget.org](https://www.nuget.org/packages/manage/upload) as described in this article (requires NuGet 4.1.0+). -- Private packages are available to only a team or organization, by hosting them either a file share, a private NuGet server, [Azure Artifacts](https://www.visualstudio.com/docs/package/nuget/publish), or a third-party repository such as myget, ProGet, Nexus Repository, and Artifactory. For additional details, see [Hosting Packages Overview](../hosting-packages/overview.md). - -This article covers publishing to nuget.org; for publishing to Azure Artifacts, see [Package Management](https://www.visualstudio.com/docs/package/nuget/publish). +You can also make private packages available to only a team or organization by hosting them on a file share, a private NuGet server, or a third-party repository such as myget, ProGet, Nexus Repository, or Artifactory. For more information, see [Host your own NuGet feeds](../hosting-packages/overview.md). For publishing with [Azure Artifacts](https://www.visualstudio.com/docs/package/nuget/publish), see [Publish packages to NuGet.org](/azure/devops/artifacts/nuget/publish-to-nuget-org). ## Publish to nuget.org -For nuget.org, you must sign in with a Microsoft account, with which you'll be asked to register the account with nuget.org. +To publish on nuget.org, sign in to nuget.org with a Microsoft account, and use it to create a free nuget.org account. Follow the instructions at [Add a new individual account](individual-accounts.md#add-a-new-individual-account). + +![Screenshot that shows the NuGet sign in link.](media/publish-nuget-signin.png) + +Once you have an account, you can publish a package to nuget.org by using the nuget.org web portal, the dotnet CLI, or the NuGet CLI version 4.1.0 or above. You can also publish packages through Azure Pipelines. -![NuGet sign in location](media/publish_NuGetSignIn.png) +### Upload to the nuget.org web portal -Next, you can either upload the package through the nuget.org web portal, push to nuget.org from the command line (requires `nuget.exe` 4.1.0+) , or publish as part of a CI/CD process through Azure DevOps Services, as described in the following sections. +To upload a package to the nuget.org website: -### Web portal: use the Upload Package tab on nuget.org +1. Select **Upload** on the top menu at nuget.org, browse to the package on your computer, and select **Open**. -1. Select **Upload** on the top menu of nuget.org and browse to the package location. + ![Screenshot that shows the Upload dialog on nuget.org](media/publish-upload-package.png) - ![Upload a package on nuget.org](media/publish_UploadYourPackage.PNG) + If the package ID already exists on nuget.org, you get an error. Change the package identifier in your project, repack, and try the upload again. -1. nuget.org tells you if the package name is available. If it isn't, change the package identifier in your project, rebuild, and try the upload again. +1. If the package name is available, the **Verify** section opens so you can review the metadata from the package manifest. If you included a [readme file](../nuget-org/package-readme-on-nuget-org.md) in your package, select **Preview** to make sure all content renders properly. -1. If the package name is available, nuget.org opens a **Verify** section in which you can review the metadata from the package manifest. If you included a [readme file](../nuget-org/package-readme-on-nuget-org.md) in your package, check out the preview to ensure all content is being rendered properly. To change any of the metadata, edit your project (project file or `.nuspec` file), rebuild, recreate the package, and upload again. + To change any of the metadata, edit your project file or *.nuspec* file, rebuild, repack, and upload again. -2. When all the information is ready, select the **Submit** button +1. When all the information is ready, select **Submit**. -### Command line +### Push by using a command line -To push packages to nuget.org, you first need an API key, which is created on nuget.org. You must use either dotnet.exe (.NET Core), or nuget.exe v4.1.0 or above, which implement the required NuGet protocols. -For more information, see [.NET Core](/dotnet/core/install/), [nuget.exe](https://www.nuget.org/downloads), and [NuGet protocols](../api/nuget-protocols.md). +To push packages to nuget.org with a command line, you can use either `dotnet.exe` or `nuget.exe` v4.1.0 or above, which implement the required NuGet protocols. For more information, see [NuGet protocols](../api/nuget-protocols.md). -#### Create API keys +To use either command line, you first need to get an API key from nuget.org. + +#### Create an API key [!INCLUDE [publish-api-key](../quickstart/includes/publish-api-key.md)] -#### Publish with dotnet nuget push +#### Use the dotnet CLI [!INCLUDE [publish-dotnet](../quickstart/includes/publish-dotnet.md)] -#### Publish with nuget push +#### Use the NuGet CLI -1. At a command prompt, run the following command, replacing `` with the key obtained from nuget.org: +1. At a command prompt, run the following command, replacing `` with the key you got from nuget.org: ```cli nuget setApiKey ``` - This command stores your API key in your NuGet configuration so that you don't need to repeat this step again on the same computer. + This command stores your API key in your NuGet configuration so you don't need to enter the API key again on the same computer. > [!NOTE] - > API key is not used for authenticating with the private feed. Refer to [`nuget sources` command](../reference/cli-reference/cli-ref-sources.md) to manage credentials for authenticating with the source. - > API keys can be obtained from the individual NuGet servers. To create and manange APIKeys for nuget.org refer to [Create API keys](#create-api-keys). + > This API key isn't used to authenticate with private feeds. To manage credentials for authenticating with these sources, see the [nuget sources command](../reference/cli-reference/cli-ref-sources.md). -1. Push your package to NuGet Gallery using the following command: +1. Push the package by using the following command: ```cli nuget push YourPackage.nupkg -Source https://api.nuget.org/v3/index.json ``` -#### Publish signed packages - -To submit signed packages, you must first [register the certificate](../create-packages/Sign-a-Package.md#register-the-certificate-on-nugetorg) used for signing the packages. +### Publish with Azure Pipelines -> [!Warning] -> nuget.org rejects packages that don't satisfy the [signed package requirements](../reference/Signed-Packages-Reference.md#signature-requirements-on-nugetorg). +You can push packages to nuget.org with Azure Pipelines as part of your continuous integration/continuous deployment (CI/CD) process. For more information, see [Publish NuGet packages with Azure Pipelines](/azure/devops/pipelines/artifacts/nuget). -### Package validation and indexing +### Publish a signed package -Packages pushed to nuget.org undergo several validations, such as virus checks. (All packages on nuget.org are periodically scanned.) +To submit a signed package, you must first [register the certificate](../create-packages/Sign-a-Package.md#register-the-certificate-on-nugetorg) you used to sign the package. If you don't meet the [signed package requirements](../reference/Signed-Packages-Reference.md#signature-requirements-on-nugetorg), nuget.org rejects the package. -When the package has passed all validation checks, it might take a while for it to be indexed and appear in search results. Once indexing is complete, you receive an email confirming that the package was successfully published. If the package fails a validation check, the package details page will update to display the associated error and you also receive an email notifying you about it. +## Package validation and indexing -Package validation and indexing usually takes under 15 minutes. If the package publishing is taking longer than expected, visit [status.nuget.org](https://status.nuget.org/) to check if nuget.org is experiencing any interruptions. If all systems are operational and the package hasn't been successfully published within an hour, please login to nuget.org and contact us using the Contact Support link on the package page. +Packages pushed to nuget.org undergo several validations, such as virus checks, and existing packages are periodically scanned. When the package passes all validation checks, it might take awhile to be indexed and appear in search results. While the package is being indexed, it appears under **Unlisted Packages**, and you see the following message on the package page: -To see the status of a package, select **Manage packages** under your account name on nuget.org. You receive a confirmation email when validation is complete. +![Screenshot of a message indicating that a package isn't yet published.](media/publish_NotYetIndexed.png) -Note that it might take a while for your package to be indexed and appear in search results where others can find it, during which time you see the following message on your package page: +Once validation and indexing are complete, you receive an email that the package was successfully published. If the package fails a validation check, the package page updates to display the associated error, and you receive a notification email. -![Message indicating a package is not yet published](media/publish_NotYetIndexed.png) +Package validation and indexing usually take less than 15 minutes. If package publishing is taking longer than expected, check nuget.org status at [status.nuget.org](https://status.nuget.org/). If all systems are operational and the package isn't successfully published within an hour, contact nuget.org by using the **Contact support** link on the package page. -### Azure DevOps Services (CI/CD) +To see package status, select **Manage packages** under your account name at upper right on nuget.org, and select the package from **Published Packages** or **Unlisted Packages**. -If you push packages to nuget.org using Azure DevOps Services as part of your Continuous Integration/Deployment process, you must use `nuget.exe` 4.1 or above in the NuGet tasks. Details can be found on [Using the latest NuGet in your build](https://blogs.msdn.microsoft.com/devops/2017/09/29/using-the-latest-nuget-in-your-build/) (Microsoft DevOps blog). + +## Manage package owners on nuget.org -## Managing package owners on nuget.org +Package owners have full permissions for the package, including adding and removing other owners and publishing updates. -Although each NuGet package's `.nuspec` file defines the package's authors, the nuget.org gallery does not use that metadata to define ownership. Instead, nuget.org assigns initial ownership to the person who publishes the package. This is either the logged-in user who uploaded the package through the nuget.org UI, or the users whose API key was used with `nuget SetApiKey` or `nuget push`. +Although the NuGet package's *.nuspec* file defines the package's authors, nuget.org doesn't use that metadata to define ownership. Instead, nuget.org assigns ownership to the person who publishes the package, either the signed-in user who uploaded the package, or the user whose API key was used with `dotnet push`, `nuget SetApiKey`, or `nuget push`. -All package owners have full permissions for the package, including adding and removing other owners, and publishing updates. +To change ownership of a package: -To change ownership of a package, do the following: +1. Sign in to nuget.org with the account that currently owns the package. +1. Select your account name at upper right, select **Manage packages**, and expand **Published Packages**. +1. Select the package you want to manage, and on the right side of the package page, select **Manage package**. +1. On the package management page, select **Owners**. +1. Take one of the following actions: -1. Sign in to nuget.org with the account that is the current owner of the package. -1. Select your account name, select **Manage packages**, and expand **Published Packages**. -1. Select on the package you want to manage, then on the right side select **Manage owners**. + - Select **Remove** to remove the current owner. + - Add an owner under **Add owner** by entering their user name and a message, and selecting **Add**. -From here you have several options: + This action sends an email to the new co-owner with a confirmation link. Once confirmed, that person has full permissions to add and remove owners. Until confirmed, the **Current owners** section shows pending approval for that person. -1. Remove any owner listed under **Current Owners**. -1. Add an owner under **Add Owner** by entering their user name, a message, and selecting **Add**. This action sends an email to that new co-owner with a confirmation link. Once confirmed, that person has full permissions to add and remove owners. (Until confirmed, the **Current Owners** section indicates pending approval for that person.) -1. To transfer ownership (as when ownership changes or a package was published under the wrong account), add the new owner, and once they've confirmed ownership they can remove you from the list. +To transfer ownership, as when ownership changes or a package publishes under the wrong account, add the new owner. Once they confirm ownership, they can remove the old owner from the list. -To assign ownership to a company or group, create a nuget.org account using an email alias that is forwarded to the appropriate team members. For example, various Microsoft ASP.NET packages are co-owned by the [microsoft](https://nuget.org/profiles/microsoft) and [aspnet](https://nuget.org/profiles/aspnet) accounts, which simply such aliases. +To assign ownership to a company or group, create a nuget.org account with an email alias that forwards to the appropriate team members. For example, various Microsoft ASP.NET packages are co-owned by the [microsoft](https://nuget.org/profiles/microsoft) and [aspnet](https://nuget.org/profiles/aspnet) accounts. -### Recovering package ownership +Occasionally, a package might not have an active owner. For example, the original owner might have left the company that produced the package. If you're the rightful owner of a package and need to regain ownership, use the [contact form](https://www.nuget.org/policies/Contact) on nuget.org to explain your situation to the NuGet team. The team follows a process to verify your ownership, including trying to locate the existing owner, and can send you a new invitation to become the package owner. -Occasionally, a package may not have an active owner. For example, the original owner may have left the company that produces the package, nuget.org credentials are lost, or earlier bugs in the gallery left a package ownerless. +## Next steps -If you are the rightful owner of a package and need to regain ownership, use the [contact form](https://www.nuget.org/policies/Contact) on nuget.org to explain your situation to the NuGet team. We then follow a process to verify your ownership of the package, including trying to locate the existing owner through the package's Project URL, Twitter, email, or other means. But if all else fails, we can send you a new invite to become an owner. +- [Package readme on NuGet.org](package-readme-on-nuget-org.md) +- [Package ID prefix reservation](id-prefix-reservation.md) +- [Deprecate packages](deprecate-packages.md) +- [Host your own NuGet feeds](../hosting-packages/overview.md) diff --git a/docs/nuget-org/media/publish-nuget-signin.png b/docs/nuget-org/media/publish-nuget-signin.png new file mode 100644 index 0000000000000000000000000000000000000000..3d302e0564a7dd9a148cb4e81dc8be5182c21dcd GIT binary patch literal 6848 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 literal 0 HcmV?d00001 diff --git a/docs/nuget-org/media/publish-upload-package.png b/docs/nuget-org/media/publish-upload-package.png new file mode 100644 index 0000000000000000000000000000000000000000..735e7da6e5ca89960efd806cb0b8527105b8d909 GIT binary patch literal 32087 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 KT=~@I?f(Fpu1Y5W literal 0 HcmV?d00001 diff --git a/docs/nuget-org/media/publish_NuGetSignIn.PNG b/docs/nuget-org/media/publish_NuGetSignIn.PNG deleted file mode 100644 index cb0ae27cca6436feefa2f2fd032d97bc2553d5dd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5123 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 diff --git a/docs/nuget-org/media/publish_UploadYourPackage.PNG b/docs/nuget-org/media/publish_UploadYourPackage.PNG deleted file mode 100644 index 1a75d990b364c5ab1e87b697bdf2ec7ba0160e26..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20610 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 From bfcf0534791283a1f1f23e25c296976e80c61b8c Mon Sep 17 00:00:00 2001 From: Dean Simpson <31017587+dksimpson@users.noreply.github.com> Date: Wed, 31 Aug 2022 15:05:18 -0700 Subject: [PATCH 649/988] Refresh NuGet get started articles for VS 2022 #3 (#2868) --- .../install-use-packages-visual-studio.md | 196 ++++++++++-------- ...ConsolidateTab.png => consolidate-tab.png} | Bin ...I.png => manage-packages-for-solution.png} | Bin .../media/package-manager-install-tab.png | Bin 0 -> 62904 bytes ...ptions.png => package-manager-options.png} | Bin ...opDown.png => package-source-selector.png} | Bin ...ttings.png => package-source-settings.png} | Bin .../{Options.png => package-sources.png} | Bin ...renced.png => package-update-disabled.png} | Bin ...stallPackage.png => uninstall-package.png} | Bin ...{UpdatePackages.png => update-package.png} | Bin 11 files changed, 112 insertions(+), 84 deletions(-) rename docs/consume-packages/media/{ConsolidateTab.png => consolidate-tab.png} (100%) rename docs/consume-packages/media/{SolutionPackagesUI.png => manage-packages-for-solution.png} (100%) create mode 100644 docs/consume-packages/media/package-manager-install-tab.png rename docs/consume-packages/media/{PackageManagerUIOptions.png => package-manager-options.png} (100%) rename docs/consume-packages/media/{PackageSourceDropDown.png => package-source-selector.png} (100%) rename docs/consume-packages/media/{PackageSourceSettings.png => package-source-settings.png} (100%) rename docs/consume-packages/media/{Options.png => package-sources.png} (100%) rename docs/consume-packages/media/{PackageManagerUIAutoReferenced.png => package-update-disabled.png} (100%) rename docs/consume-packages/media/{UninstallPackage.png => uninstall-package.png} (100%) rename docs/consume-packages/media/{UpdatePackages.png => update-package.png} (100%) diff --git a/docs/consume-packages/install-use-packages-visual-studio.md b/docs/consume-packages/install-use-packages-visual-studio.md index c4b8f8269..1671f8604 100644 --- a/docs/consume-packages/install-use-packages-visual-studio.md +++ b/docs/consume-packages/install-use-packages-visual-studio.md @@ -1,9 +1,9 @@ --- -title: Install and manage NuGet packages in Visual Studio -description: Instructions for using the NuGet Package Manager UI in Visual Studio for working with NuGet packages. +title: Install and manage packages in Visual Studio using the NuGet Package Manager +description: Learn how to use the NuGet Package Manager UI in Visual Studio for working with NuGet packages. author: JonDouglas ms.author: jodou -ms.date: 07/08/2019 +ms.date: 08/30/2022 ms.topic: conceptual f1_keywords: - "vs.toolsoptionspages.nuget_package_manager" @@ -14,155 +14,183 @@ f1_keywords: # Install and manage packages in Visual Studio using the NuGet Package Manager -The NuGet Package Manager UI in Visual Studio on Windows allows you to easily install, uninstall, and update NuGet packages in projects and solutions. For the experience in Visual Studio for Mac, see [Including a NuGet package in your project](/visualstudio/mac/nuget-walkthrough?toc=/nuget/toc.json). The Package Manager UI is not included with Visual Studio Code. +The NuGet Package Manager UI in Microsoft Visual Studio for Windows allows you to easily install, uninstall, and update NuGet packages in projects and solutions. -> [!NOTE] -> If you're missing the NuGet Package Manager in Visual Studio 2015, check **Tools > Extensions and Updates...** and search for the *NuGet Package Manager* extension. If you're unable to use the extensions installer in Visual Studio, download the extension directly from [https://dist.nuget.org/index.html](https://dist.nuget.org/index.html). -> -> Starting in Visual Studio 2017, NuGet and the NuGet Package Manager are automatically installed with any .NET-related workloads. Install it individually by selecting the **Individual components > Code tools > NuGet package manager** option in the Visual Studio installer. +The article is for Windows users only. If you're using Visual Studio for Mac, see [Including a NuGet package in your project](/visualstudio/mac/nuget-walkthrough?toc=/nuget/toc.json). + +## Prerequisites + +- Install Visual Studio 2022 for Windows with any .NET-related workload. + + You can install the 2022 Community edition for free from [visualstudio.microsoft.com](https://visualstudio.microsoft.com/), or use the Professional or Enterprise edition. + + Visual Studio 2017 and higher automatically includes NuGet Package Manager when a .NET-related workload is installed. To install it individually in Visual Studio Installer, select the **Individual components** tab, and then select **NuGet package manager** under **Code tools** . + + For Visual Studio 2015, if you're missing the NuGet Package Manager, check **Tools** > **Extensions and Updates** and search for the *NuGet Package Manager* extension. If you're unable to use the extensions installer in Visual Studio, download the extension directly from [https://dist.nuget.org/index.html](https://dist.nuget.org/index.html). + +- [Register for a free account on nuget.org](../nuget-org/individual-accounts.md#add-a-new-individual-account) if you don't have one already. You must register and confirm the account before you can upload a NuGet package. ## Find and install a package -1. In **Solution Explorer**, right-click either **References** or a project and select **Manage NuGet Packages...**. +To find and install a NuGet package with Visual Studio, follow these steps: - ![Manage NuGet Packages menu option](media/ManagePackagesUICommand.png) +1. Load a project in **Solution Explorer**, and then select **Project** > **Manage NuGet Packages**. -1. The **Browse** tab displays packages by popularity from the currently selected source (see [package sources](#package-sources)). Search for a specific package using the search box on the upper left. Select a package from the list to display its information, which also enables the **Install** button along with a version-selection drop-down. + The **Nuget Package Manager** window opens. - ![Manage NuGet Packages Dialog Browse tab](media/Search.png) +1. Select the **Browse** tab to display packages by popularity from the currently selected source (see [Package sources](#package-sources)). To search for a specific package, use the search box on the upper left. Select a package from the list to display its information on the right pane, which enables you to select a version to install. -1. Select the desired version from the drop-down and select **Install**. Visual Studio installs the package and its dependencies into the project. You may be asked to accept license terms. When installation is complete, the added packages appear on the **Installed** tab. Packages are also listed in the **References** node of Solution Explorer, indicating that you can refer to them in the project with `using` statements. + :::image type="content" source="media/package-manager-install-tab.png" alt-text="Screenshot showing the NuGet Package Manager window with the Browse tab selected."::: - ![References in Solution Explorer](media/References.png) +1. In the right pane, select a **Version** from the dropdown list. If you want to include prerelease versions in the **Version** list, select **Include prerelease**. -> [!Tip] -> To include prerelease versions in the search, and to make prerelease versions available in the version drop-down, select the **Include prerelease** option. +1. To install the NuGet package, select **Install**. You might be asked to accept license terms or prompted to verify the installation. -> [!Note] -> NuGet has two formats in which a project may use packages: [`PackageReference`](package-references-in-project-files.md) and [`packages.config`](../reference/packages-config.md). [The default can be set in Visual Studio's options window](Package-Restore.md#choose-default-package-management-format). + Visual Studio installs the package and its dependencies in the project. When installation is complete, the added packages appear on the **Installed** tab. You can also find packages in the **Dependencies** > **Packages** node of your project in **Solution Explorer**. After you install a package, you can refer to it in the project with a `using` statement. + +1. (Optional) NuGet has two formats in which a project can use packages: [PackageReference](package-references-in-project-files.md) and [packages.config](../reference/packages-config.md). To set the default format, select **Tools** > **Options**, expand **NuGet Package Manager**, select **General**, and then choose the **Default package management format**. For more information, see [Choose default package management format](package-restore.md#choose-default-package-management-format). ## Uninstall a package -1. In **Solution Explorer**, right-click either **References** or the desired project, and select **Manage NuGet Packages...**. -1. Select the **Installed** tab. -1. Select the package to uninstall (using search to filter the list if necessary) and select **Uninstall**. +To uninstall a NuGet package, follow these steps: + +1. With your project loaded in **Solution Explorer**, select **Manage NuGet Packages** and select the **Installed** tab. - ![Uninstalling a package](media/UninstallPackage.png) +1. Select the package to uninstall in the left pane (use the **Search** box to find it, if necessary) and select **Uninstall** from the right pane. -1. Note that the **Include prerelease** and **Package source** controls have no effect when uninstalling packages. + ![Screenshot showing the NuGet Package Manager with a package selected and its Uninstall button highlighted.](media/uninstall-package.png) ## Update a package -1. In **Solution Explorer**, right-click either **References** or the desired project, and select **Manage NuGet Packages...**. (In web site projects, right-click the **Bin** folder.) -1. Select the **Updates** tab to see packages that have available updates from the selected package sources. Select **Include prerelease** to include prerelease packages in the update list. -1. Select the package to update, select the desired version from the drop-down on the right, and select **Update**. +To update a NuGet package, follow these steps: - ![Updating a package](media/UpdatePackages.png) +1. With your project loaded in **Solution Explorer**, select **Manage NuGet Packages**. For website projects, select the **Bin** folder first. -1. For some packages, the **Update** button is disabled and a message appears saying that it's "Implicitly referenced by an SDK" (or "AutoReferenced"). This message indicates that the package is part of a larger framework or SDK and should not be updated independently. (Such packages are internally marked with `True`.) For example, `Microsoft.NETCore.App` is part of the .NET Core SDK, and the package version is not the same as the version of the runtime framework used by the application. You need to [update your .NET Core installation](https://aka.ms/dotnet-download) to get new versions of the ASP.NET Core and .NET Core runtime. [See this document for more details on .NET Core metapackages and versioning](/dotnet/core/packages). This applies to the following commonly used packages: - * Microsoft.AspNetCore.All - * Microsoft.AspNetCore.App - * Microsoft.NETCore.App - * NETStandard.Library +1. Select the **Updates** tab to see packages that have available updates from the selected **Package source**. Select **Include prerelease** to include prerelease packages in the update list. - ![Example package marked as Implicitly references or AutoReferenced](media/PackageManagerUIAutoReferenced.png) +1. Select the package to update. On the right pane, select the desired **Version** from the dropdown list, and then select **Update**. -1. To update multiple packages to their newest versions, select them in the list and select the **Update** button above the list. -1. You can also update an individual package from the **Installed** tab. In this case, the details for the package include a version selector (subject to the **Include prerelease** option) and an **Update** button. + ![Screenshot showing the NuGet Package Manager with a package selected and its Update button highlighted.](media/update-package.png) -## Manage packages for the solution +1. For some packages, the **Update** button is disabled and the following message appears: *Implicitly referenced by an SDK. To update the package, update the SDK to which it belongs.* This message indicates that the package is part of a larger framework or SDK and can't be updated independently. Such packages are internally marked with `True`. For example, `Microsoft.NETCore.App` is part of the .NET Core SDK, and the package version is different than the version of the runtime framework used by the application. To download a new version of the .NET Core, [update your .NET Core installation](https://aka.ms/dotnet-download). For more information, see [.NET Core metapackages and versioning](/dotnet/core/packages). This scenario applies to the following commonly used packages: + - Microsoft.AspNetCore.All + - Microsoft.AspNetCore.App + - Microsoft.NETCore.App + - NETStandard.Library + + ![Screenshot showing a NuGet package with the Update button disabled.](media/package-update-disabled.png) + +1. To update multiple packages to their latest versions, choose them in the NuGet package list, and then select **Update**. + +1. You can also update an individual package from the **Installed** tab. For this case, you can also select a **Version** and the **Include prerelease** option. -Managing packages for a solution is a convenient means to work with multiple projects simultaneously. +## Manage packages for the solution -1. Select the **Tools > NuGet Package Manager > Manage NuGet Packages for Solution...** menu command, or right-click the solution and select **Manage NuGet Packages...**: +Managing packages for a solution is a convenient means to work with multiple projects simultaneously: - ![Manage NuGet packages for the solution](media/ManagePackagesSolutionUICommand.png) +1. Select a solution in **Solution Manager**, and then select **Tools** > **NuGet Package Manager** > **Manage NuGet Packages for Solution**. -1. When managing packages for the solution, the UI lets you select the projects that are affected by the operations: +1. In the **Manage NuGet Packages for Solution** window, select the projects that are affected by the operations. - ![Project selector when managing packages for the solution](media/SolutionPackagesUI.png) + ![Screenshot showing the Manage Packages for Solution window with multiple projects selected.](media/manage-packages-for-solution.png) ### Consolidate tab -Developers typically consider it bad practice to use different versions of the same NuGet package across different projects in the same solution. When you choose to manage packages for a solution, the Package Manager UI provides a **Consolidate** tab on which you can easily see where packages with distinct version numbers are used by different projects in the solution: +Developers typically consider it bad practice to use different versions of the same NuGet package across different projects in the same solution. Visual Studio allows you to use a common version for your NuGet packages. To do so, use the **Consolidate** tab of the **NuGet Package Manager** window to discover where packages with distinct version numbers are used by different projects in the solution. + +![Screenshot showing the Manage Packages for Solution window with the Consolidate tab selected.](media/consolidate-tab.png) + +In this example, the ClassLibrary1 project is using EntityFramework 6.2.0, whereas ConsoleApp1 is using EntityFramework 6.1.0. To consolidate package versions, follow these steps: -![Package Manager UI Consolidate tab](media/ConsolidateTab.png) +1. From the **Consolidate** tab, select the projects to update in the project list. -In this example, the ClassLibrary1 project is using EntityFramework 6.2.0, whereas ConsoleApp1 is using EntityFramework 6.1.0. To consolidate package versions, do the following: +1. Select the version to use for all these projects in the **Version** list. -- Select the projects to update in the project list. -- Select the version to use in all those projects in the **Version** control, such as EntityFramework 6.2.0. -- Select the **Install** button. +1. Select **Install**. -The Package Manager installs the selected package version into all selected projects, after which the package no longer appears on the **Consolidate** tab. + The NuGet Package Manager installs the selected package version into all the selected projects, after which the package no longer appears on the **Consolidate** tab. ## Package sources -To change the source from which Visual Studio obtains packages, select one from the source selector: +To manage NuGet package sources, follow these steps: -![Package source selector in the package manager UI](media/PackageSourceDropDown.png) +1. To change the source from which Visual Studio obtains packages, select a source from the **Package source** selector. -To manage package sources: + ![Screenshot showing the Package source selector highlighted.](media/package-source-selector.png) -1. Select the **Settings** icon in the Package Manager UI outlined below or use the **Tools > Options** command and scroll to **NuGet Package Manager**: +1. To change the package source options, select the **Settings** icon or select **Tools** > **Options**. - ![Package manager UI settings icon](media/PackageSourceSettings.png) + ![Screenshot showing the Package source settings icon highlighted.](media/package-source-settings.png) -1. Select the **Package Sources** node: +1. In the **Options** window, expand the **NuGet Package Manager** node and select **Package Sources**. - ![Package Sources options](media/options.png) + ![Screenshot showing the Options window with Package Sources selected.](media/package-sources.png) + +1. To add a source, select **+**, edit the **Name**, enter the URL or path in **Source**, and then select **Update**. + + The source now appears in the **Package source** dropdown list. -1. To add a source, select **+**, edit the name, enter the URL or path in the **Source** control, and select **Update**. The source now appears in the selector drop-down. 1. To change a package source, select it, make edits in the **Name** and **Source** boxes, and select **Update**. -1. To disable a package source, clear the box to the left of the name in the list. -1. To remove a package source, select it and then select the **X** button. -1. Using the up and down arrow buttons does not change the priority order of the package sources. Visual Studio ignores the order of package sources, using the package from whichever source is first to respond to requests. For more information, see [Package restore](../consume-packages/package-restore.md). -> [!Tip] -> If a package source reappears after deleting it, it may be listed in a computer-level or user-level `NuGet.Config` files. See [Common NuGet configurations](../consume-packages/configuring-nuget-behavior.md) for the location of these files, then remove the source by editing the files manually or using the [nuget sources command](../reference/nuget-exe-CLI-reference.md). +1. To disable a package source, clear the box to the left of the name in the list. -## Package manager Options control +1. To remove a package source, select it, and then select the **X** button. -When a package is selected, the Package Manager UI displays a small, expandable **Options** control below the version selector (shown here both collapsed and expanded). Note that for some project types, only the **Show preview window** option is provided. + If a package source reappears after you delete it, it might be listed in a computer-level or user-level *NuGet.config* file. For the location of these files, see [Common NuGet configurations](../consume-packages/configuring-nuget-behavior.md). Remove the package source in the files by editing them manually or using the [nuget sources command](../reference/nuget-exe-CLI-reference.md). -![Package manager options](media/PackageManagerUIOptions.png) +Using the up and down arrow buttons doesn't change the priority order of the package sources. Visual Studio ignores the order of package sources, and uses the package from whichever source is the first to respond to a request. For more information, see [Restore packages](../consume-packages/package-restore.md). -The following sections explain these options. +## NuGet Package Manager Options control -### Show preview window +When you select a package, the NuGet Package Manager displays an expandable **Options** control below the **Version** selector. For most project types, only the **Show preview window** option is provided. -When selected, a modal window displays which the dependencies of a chosen package before the package is installed: +![Screenshot showing the NuGet Package manager Options control expanded.](media/package-manager-options.png) -![Example Preview Dialog](media/InstallPreviewDialog.png) +The following sections explain the available options. -### Install and Update Options +### Install and update options -(Not available for all project types.) +These options are available only for certain project types: -**Dependency behavior** configures how NuGet decides which versions of dependent packages to install: +- **Dependency behavior**: This option configures how NuGet decides which versions of dependent packages to install. It has the following settings: -- *Ignore dependencies* skips installing any dependencies, which typically breaks the package being installed. -- *Lowest* [Default] installs the dependency with the minimal version number that meets the requirements of the primary chosen package. -- *Highest Patch* installs the version with the same major and minor version numbers, but the highest patch number. For example, if version 1.2.2 is specified then the highest version that starts with 1.2 will be installed -- *Highest Minor* installs the version with the same major version number but the highest minor number and patch number. If version 1.2.2 is specified, then the highest version that starts with 1 will be installed -- *Highest* installs the highest available version of the package. + - **Ignore dependencies** skips the installation of dependencies, which typically breaks the package being installed. + - **Lowest** [Default] installs the dependency with the minimal version number that meets the requirements of the primary chosen package. + - **Highest Patch** installs the version with the same major and minor version numbers, but the highest patch number. For example, if version 1.2.2 is specified then the highest version that starts with 1.2 will be installed + - **Highest Minor** installs the version with the same major version number but the highest minor number and patch number. If version 1.2.2 is specified, then the highest version that starts with 1 will be installed + - **Highest** installs the highest available version of the package. -**File conflict action** specifies how NuGet should handle packages that already exist in the project or local machine: +- **File conflict action**: This option specifies how NuGet should handle packages that already exist in the project or local machine. It has the following settings: -- *Prompt* instructs NuGet to ask whether to keep or overwrite existing packages. -- *Ignore All* instructs NuGet to skip overwriting any existing packages. -- *Overwrite All* instructs NuGet to overwrite any existing packages. + - **Prompt** instructs NuGet to ask whether to keep or overwrite existing packages. + - **Ignore All** instructs NuGet to skip overwriting any existing packages. + - **Overwrite All** instructs NuGet to overwrite any existing packages. -### Uninstall Options +### Uninstall options + +These options are available only for certain project types: + +- **Remove dependencies**: When selected, removes any dependent packages if they're not referenced elsewhere in the project. + +- **Force uninstall even if there are dependencies on it**: When selected, uninstalls a package even if it's still being referenced in the project. This option is typically used in combination with **Remove dependencies** to remove a package and whatever dependencies it installed. Using this option may, however, lead to broken references in the project. In such a case, you might need to [reinstall those other packages](../consume-packages/reinstalling-and-updating-packages.md). + +## Related video + +- [Install and Use a NuGet Package with Visual Studio](/shows/nuget-101/install-and-use-a-nuget-package-with-visual-studio-2-of-5/player) +- Find more NuGet videos on [Channel 9](/shows/nuget-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). -(Not available for all project types.) +## See also -**Remove dependencies**: when selected, removes any dependent packages if they're not referenced elsewhere in the project. +For more information about NuGet, see the following articles: -**Force uninstall even if there are dependencies on it**: when selected, uninstalls a package even if it's still being referenced in the project. This is typically used in combination with **Remove dependencies** to remove a package and whatever dependencies it installed. Using this option may, however, lead to broken references in the project. In such cases, you may need to [reinstall those other packages](../consume-packages/reinstalling-and-updating-packages.md). +- [What is NuGet?](../what-is-nuget.md) +- [Package consumption workflow](overview-and-workflow.md) +- [Find and choose packages](finding-and-choosing-packages.md) +- [Package references in project files](package-references-in-project-files.md) +- [Install and use a package using the .NET CLI](../quickstart/install-and-use-a-package-using-the-dotnet-cli.md). diff --git a/docs/consume-packages/media/ConsolidateTab.png b/docs/consume-packages/media/consolidate-tab.png similarity index 100% rename from docs/consume-packages/media/ConsolidateTab.png rename to docs/consume-packages/media/consolidate-tab.png diff --git a/docs/consume-packages/media/SolutionPackagesUI.png b/docs/consume-packages/media/manage-packages-for-solution.png similarity index 100% rename from docs/consume-packages/media/SolutionPackagesUI.png rename to docs/consume-packages/media/manage-packages-for-solution.png diff --git a/docs/consume-packages/media/package-manager-install-tab.png b/docs/consume-packages/media/package-manager-install-tab.png new file mode 100644 index 0000000000000000000000000000000000000000..253bf15f5a922ca4b15ba1d19b1b8ee38b409e2e GIT binary patch literal 62904 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 Date: Wed, 31 Aug 2022 16:24:44 -0700 Subject: [PATCH 650/988] Refresh NuGet get started articles for VS 2022 #2 (#2861) --- docs/TOC.md | 2 +- ...ckage-using-visual-studio-net-framework.md | 150 ++++++------ ...d-publish-a-package-using-visual-studio.md | 223 +++++++++++------- docs/quickstart/includes/publish-api-key.md | 5 +- docs/quickstart/includes/publish-dotnet.md | 2 +- docs/quickstart/includes/publish-errors.md | 10 +- docs/quickstart/includes/publish-manage.md | 14 +- docs/quickstart/includes/publish-notes.md | 5 +- docs/quickstart/media/QS_Create-02-APIKey.png | Bin 21051 -> 0 bytes .../QS_Create-vs-01b-project-properties.png | Bin 9095 -> 0 bytes docs/quickstart/media/qs-create-api-key.png | Bin 0 -> 49727 bytes ...tIndexed.png => qs-create-not-indexed.png} | Bin .../qs-create-vs-assembly-information.png | Bin 0 -> 25947 bytes ...-can.png => qs-create-vs-edit-package.png} | Bin .../media/qs-create-vs-generate-on-build.png | Bin 0 -> 55176 bytes .../media/qs-create-vs-project-properties.png | Bin 0 -> 55103 bytes ...st.png => qs-create-vs-unlist-package.png} | Bin .../qs_create-vs-01-package-properties.png | Bin 56370 -> 0 bytes .../media/qs_create-vs-02-pack-command.png | Bin 9794 -> 0 bytes .../qs_create-vs-05-generate-on-build.png | Bin 23355 -> 0 bytes 20 files changed, 237 insertions(+), 174 deletions(-) delete mode 100644 docs/quickstart/media/QS_Create-02-APIKey.png delete mode 100644 docs/quickstart/media/QS_Create-vs-01b-project-properties.png create mode 100644 docs/quickstart/media/qs-create-api-key.png rename docs/quickstart/media/{QS_Create-03-NotIndexed.png => qs-create-not-indexed.png} (100%) create mode 100644 docs/quickstart/media/qs-create-vs-assembly-information.png rename docs/quickstart/media/{qs_create-vs-03-trash-can.png => qs-create-vs-edit-package.png} (100%) create mode 100644 docs/quickstart/media/qs-create-vs-generate-on-build.png create mode 100644 docs/quickstart/media/qs-create-vs-project-properties.png rename docs/quickstart/media/{qs_create-vs-04-unlist.png => qs-create-vs-unlist-package.png} (100%) delete mode 100644 docs/quickstart/media/qs_create-vs-01-package-properties.png delete mode 100644 docs/quickstart/media/qs_create-vs-02-pack-command.png delete mode 100644 docs/quickstart/media/qs_create-vs-05-generate-on-build.png diff --git a/docs/TOC.md b/docs/TOC.md index bd8a35357..9d7b23d18 100644 --- a/docs/TOC.md +++ b/docs/TOC.md @@ -5,7 +5,7 @@ ## [Install and use a package (Visual Studio)](quickstart/install-and-use-a-package-in-visual-studio.md) ## [Install and use a package (Visual Studio for Mac)](quickstart/install-and-use-a-package-in-visual-studio-mac.md) ## [Create and publish a NET Standard package (dotnet CLI)](quickstart/create-and-publish-a-package-using-the-dotnet-cli.md) -## [Create and publish a NET Standard package (Visual Studio)](quickstart/create-and-publish-a-package-using-visual-studio.md) +## [Create and publish a NET NuGet package (Visual Studio)](quickstart/create-and-publish-a-package-using-visual-studio.md) ## [Create and publish a NET Framework package (Visual Studio)](quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md) # Consume packages ## [Overview and workflow](consume-packages/overview-and-workflow.md) diff --git a/docs/quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md b/docs/quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md index 0711b66e2..c4ab0ba07 100644 --- a/docs/quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md +++ b/docs/quickstart/create-and-publish-a-package-using-visual-studio-net-framework.md @@ -1,89 +1,95 @@ --- -title: Create and publish a .NET Framework NuGet package using Visual Studio on Windows -description: A walkthrough tutorial on creating and publishing a .NET Framework NuGet package using Visual Studio on Windows. +title: "Quickstart: Create and publish a package using Visual Studio (.NET Framework, Windows)" +description: A quickstart that shows how to create and publish a .NET Framework NuGet package using Visual Studio on Windows. author: JonDouglas ms.author: jodou -ms.date: 05/13/2018 +ms.date: 08/29/2022 ms.topic: quickstart --- # Quickstart: Create and publish a package using Visual Studio (.NET Framework, Windows) -Creating a NuGet package from a .NET Framework Class Library involves creating the DLL in Visual Studio on Windows, then using the nuget.exe command line tool to create and publish the package. +With Microsoft Visual Studio, you can create a NuGet package from a .NET Framework class library, and then publish it to nuget.org using the NuGet CLI tool. -> [!Note] -> This Quickstart applies to Visual Studio 2017 and higher versions for Windows only. Visual Studio for Mac does not include the capabilities described here. Use the [dotnet CLI tools](create-and-publish-a-package-using-the-dotnet-cli.md) instead. +The quickstart is for Windows users only. If you're using Visual Studio for Mac, see [dotnet CLI tools](create-and-publish-a-package-using-the-dotnet-cli.md) instead. ## Prerequisites -1. Install any edition of Visual Studio 2017 or higher from [visualstudio.com](https://www.visualstudio.com/) with any .NET-related workload. Visual Studio 2017 automatically includes NuGet capabilities when a .NET workload is installed. +- Install Visual Studio 2022 for Windows with any .NET-related workload. -1. Install the `nuget.exe` CLI by downloading it from [nuget.org](https://dist.nuget.org/win-x86-commandline/latest/nuget.exe), saving that `.exe` file to a suitable folder, and adding that folder to your PATH environment variable. + You can install the 2022 Community edition for free from [visualstudio.microsoft.com](https://visualstudio.microsoft.com/), or use the Professional or Enterprise edition. -1. [Register for a free account on nuget.org](https://www.nuget.org/users/account/LogOn?returnUrl=%2F) if you don't have one already. Creating a new account sends a confirmation email. You must confirm the account before you can upload a package. + Visual Studio 2017 and higher automatically includes NuGet capabilities when a .NET workload is installed. + +- [Register for a free account on nuget.org](../nuget-org/individual-accounts.md#add-a-new-individual-account) if you don't have one already. You must register and confirm the account before you can upload a NuGet package. + +- Install the NuGet CLI by downloading it from [nuget.org](https://dist.nuget.org/win-x86-commandline/latest/nuget.exe). Add the *nuget.exe* file to a suitable folder, and add that folder to your PATH environment variable. ## Create a class library project -You can use an existing .NET Framework Class Library project for the code you want to package, or create a simple one as follows: +To create a class library project, follow these steps: + +1. In Visual Studio, select **File** > **New** > **Project**. -1. In Visual Studio, choose **File > New > Project**, select the **Visual C#** node, select the "Class Library (.NET Framework)" template, name the project AppLogger, and click **OK**. +1. In the **Create a new project** window, select **C#**, **Windows**, and **Library** in the dropdown lists. -1. Right-click on the resulting project file and select **Build** to make sure the project was created properly. The DLL is found within the Debug folder (or Release if you build that configuration instead). +1. In the resulting list of project templates, select **Class Library (.NET Framework)**, and then select **Next**. -Within a real NuGet package, of course, you implement many useful features with which others can build applications. You can also set the target frameworks however you like. For example, see the guides for [UWP](../guides/create-uwp-packages.md) and [Xamarin](../guides/create-packages-for-xamarin.md). +1. In the **Configure your new project** window, enter *AppLogger* for the **Project name**, and then select **Create**. -For this walkthrough, however, you won't write any additional code because a class library from the template is sufficient to create a package. Still, if you'd like some functional code for the package, use the following: +1. To ensure the project was created properly, select **Build** > **Build Solution**. The DLL is found within the Debug folder (or Release if you build that configuration instead). -```cs -using System; +1. (Optional) For this quickstart, you don't need to write any additional code for the NuGet package because the template class library is sufficient to create a package. However, if you'd like some functional code for this sample package, include the following code: -namespace AppLogger -{ - public class Logger - { - public void Log(string text) - { - Console.WriteLine(text); - } - } -} -``` + ```csharp + namespace AppLogger + { + public class Logger + { + public void Log(string text) + { + Console.WriteLine(text); + } + } + } + ``` -> [!Tip] -> Unless you have a reason to choose otherwise, .NET Standard is the preferred target for NuGet packages, as it provides compatibility with the widest range of consuming projects. See [Create and publish a package using Visual Studio (.NET Standard)](create-and-publish-a-package-using-visual-studio.md). + Within a real-world NuGet package, you'd likely implement many useful features with which others can build applications. You can also set the target frameworks. For examples, see [UWP](../guides/create-uwp-packages.md) and [Xamarin](../guides/create-packages-for-xamarin.md). ## Configure project properties for the package -A NuGet package contains a manifest (a `.nuspec` file), that contains relevant metadata such as the package identifier, version number, description, and more. Some of these can be drawn from the project properties directly, which avoids having to separately update them in both the project and the manifest. This section describes where to set the applicable properties. +A NuGet package includes a manifest (a `.nuspec` file), that contains relevant metadata such as the package identifier, version number, description, and more. Some of this metadata can be drawn from the project properties directly, which avoids having to separately update them in both the project and the manifest. The following steps describe how to set the applicable properties: -1. Select the **Project > Properties** menu command, then select the **Application** tab. +1. Select **Project > Properties**, and then select the **Application** tab. -1. In the **Assembly name** field, give your package a unique identifier. +1. For **Assembly name**, give your package a unique identifier. If you attempt to publish a package with a name that already exists, you see an error. - > [!Important] - > You must give the package an identifier that's unique across nuget.org or whatever host you're using. For this walkthrough we recommend including "Sample" or "Test" in the name as the later publishing step does make the package publicly visible (though it's unlikely anyone will actually use it). - > - > If you attempt to publish a package with a name that already exists, you see an error. + > [!IMPORTANT] + > You must give the package an identifier that's unique across nuget.org or whatever host you're using. Otherwise, an error occurs. For this quickstart we recommend including *Sample* or *Test* in the name because the publishing step makes the package publicly visible. -1. Select the **Assembly Information...** button, which brings up a dialog box in which you can enter other properties that carry into the manifest (see [.nuspec file reference - replacement tokens](../reference/nuspec.md#replacement-tokens)). The most commonly used fields are **Title**, **Description**, **Company**, **Copyright**, and **Assembly version**. These properties ultimately appear with your package on a host like nuget.org, so make sure they're fully descriptive. +1. Select **Assembly Information**, which displays a dialog box in which you can enter other properties that carry into the manifest (see [Replacement tokens](../reference/nuspec.md#replacement-tokens)). The most commonly used fields are **Title**, **Description**, **Company**, **Copyright**, and **Assembly version**. Because these properties appear with your package on a host like nuget.org after you publish it, make sure they're fully descriptive. - ![Assembly information in a .NET Framework project in Visual Studio](media/qs_create-vs-01b-project-properties.png) + :::image type="content" source="media/qs-create-vs-assembly-information.png" alt-text="Screenshot showing the Assembly Information page in a .NET Framework project in Visual Studio."::: -1. Optional: to see and edit the properties directly, open the `Properties/AssemblyInfo.cs` file in the project. +1. (Optional) To see and edit the properties directly, open the *Properties/AssemblyInfo.cs* file in the project by selecting select **Project** > **Edit Project File**. -1. When the properties are set, set the project configuration to **Release** and rebuild the project to generate the updated DLL. +1. After you've set these properties, set the **Active solution configuration** in **Build** > **Configuration Manager** to **Release** and rebuild the project to generate the updated DLL. ## Generate the initial manifest -With a DLL in hand and project properties set, you now use the `nuget spec` command to generate an initial `.nuspec` file from the project. This step includes the relevant replacement tokens to draw information from the project file. +After you've set the project properties and created the DLL, you can now generate an initial *.nuspec* file from the project. This step includes the relevant replacement tokens to draw information from the project file. + +Run `nuget spec` only once to generate the initial manifest. If you update the package, either change values in your project, or edit the manifest directly: + +1. With your project open in **Solution Explorer**, open a command prompt by selecting **Tools** > **Command Line** > **Developer Command Prompt**. -You run `nuget spec` only once to generate the initial manifest. When updating the package, you either change values in your project or edit the manifest directly. + The command prompt opens in your project directory where the `AppLogger.csproj` file is located. -1. Open a command prompt and navigate to the project folder containing `AppLogger.csproj` file. +1. Run the following command: `nuget spec AppLogger.csproj`. -1. Run the following command: `nuget spec AppLogger.csproj`. By specifying a project, NuGet creates a manifest that matches the name of the project, in this case `AppLogger.nuspec`. It also include replacement tokens in the manifest. + NuGet creates a manifest that matches the name of the project, in this case `AppLogger.nuspec`. It also includes replacement tokens in the manifest. -1. Open `AppLogger.nuspec` in a text editor to examine its contents, which should appear as follows: +1. Open `AppLogger.nuspec` in a text editor to examine its contents, which will be similar to the following code: ```xml @@ -91,15 +97,14 @@ You run `nuget spec` only once to generate the initial manifest. When updating t Package 1.0.0 - YourUsername - YourUsername + Your username + Your username MIT http://PROJECT_URL_HERE_OR_DELETE_THIS_LINE - http://ICON_URL_HERE_OR_DELETE_THIS_LINE false Package description Summary of changes made in this release of the package. - Copyright 2019 + Copyright 2022 Tag1 Tag2 @@ -107,29 +112,34 @@ You run `nuget spec` only once to generate the initial manifest. When updating t ## Edit the manifest -1. NuGet produces an error if you try to create a package with default values in your `.nuspec` file, so you must edit the following fields before proceeding. See [.nuspec file reference - optional metadata elements](../reference/nuspec.md#optional-metadata-elements) for a description of how these are used. +1. Edit the following properties before proceeding. Otherwise, if you try to create a NuGet package with the default values in your `.nuspec` file, an error occurs. For information about these properties, see [Optional metadata elements](../reference/nuspec.md#optional-metadata-elements): - licenseUrl - projectUrl - - iconUrl - releaseNotes - tags -1. For packages built for public consumption, pay special attention to the **Tags** property, as tags help others find your package on sources like nuget.org and understand what it does. +1. For packages built for public consumption, pay special attention to the **Tags** property, as tags help others find your package and understand what it does. -1. You can also add any other elements to the manifest at this time, as described on [.nuspec file reference](../reference/nuspec.md). +1. You can also add any other elements to the manifest at this time, as described in [.nuspec file reference](../reference/nuspec.md). 1. Save the file before proceeding. ## Run the pack command -1. From a command prompt in the folder containing your `.nuspec` file, run the command `nuget pack`. +1. With your project open in **Solution Explorer**, open a command prompt by selecting **Tools** > **Command Line** > **Developer Command Prompt**. -1. NuGet generates a `.nupkg` file in the form of *identifier-version.nupkg*, which you'll find in the current folder. + The command prompt opens in your project directory. + +1. Run the following command: `nuget pack`. + + NuGet generates a *.nupkg* file in the form of *identifier.version.nupkg* in the current folder. ## Publish the package -Once you have a `.nupkg` file, you publish it to nuget.org using `nuget.exe` with an API key acquired from nuget.org. For nuget.org you must use `nuget.exe` 4.1.0 or higher. +After you've created a *.nupkg* file, publish it to nuget.org by using the NuGet CLI with an API key acquired from nuget.org. For nuget.org, you must use `nuget.exe` 4.1.0 or higher. + +If you'd like to test and validate your package before publishing it a public gallery, you can upload it to a test environment like [int.nugettest.org](https://int.nugettest.org) instead of nuget.org. Note that packages uploaded to int.nugettest.org may not be preserved. [!INCLUDE [publish-notes](includes/publish-notes.md)] @@ -137,26 +147,28 @@ Once you have a `.nupkg` file, you publish it to nuget.org using `nuget.exe` wit [!INCLUDE [publish-api-key](includes/publish-api-key.md)] -### Publish with nuget push +### Publish with the NuGet CLI + +Using the NuGet CLI (*nuget.exe*) is an alternative to using the .NET CLI: -1. Open a command line and change to the folder containing the `.nupkg` file. +1. Open a command prompt and change to the folder containing the *.nupkg* file. -1. Run the following command, specifying your package name and replacing the key value with your API key: +1. Run the following command. Replace \ with the file name of your package and replace \ with your API key. The package filename is a concatenation of your package ID and version number with a *.nupkg* extension. For example, *AppLogger.1.0.0.nupkg*: ```cli - nuget push AppLogger.1.0.0.nupkg qz2jga8pl3dvn2akksyquwcs9ygggg4exypy3bhxy6w6x6 -Source https://api.nuget.org/v3/index.json + nuget push -Source https://api.nuget.org/v3/index.json ``` -1. nuget.exe displays the results of the publishing process: + The result of the publishing process is displayed as follows: ```output - Pushing AppLogger.1.0.0.nupkg to 'https://www.nuget.org/api/v2/package'... + Pushing to 'https://www.nuget.org/api/v2/package'... PUT https://www.nuget.org/api/v2/package/ Created https://www.nuget.org/api/v2/package/ 6829ms Your package was pushed. ``` -See [nuget push](../reference/cli-reference/cli-ref-push.md). +For more information, see [nuget push](../reference/cli-reference/cli-ref-push.md). ### Publish errors @@ -168,15 +180,15 @@ See [nuget push](../reference/cli-reference/cli-ref-push.md). ## Next steps -Congratulations on creating your first NuGet package! +Congratulations on creating a NuGet package by using the Visual Studio .NET Framework. Advance to the next article to learn how to create a NuGet package with the NuGet CLI. > [!div class="nextstepaction"] -> [Create a Package](../create-packages/creating-a-package.md) +> [Create a package using the NuGet CLI](../create-packages/creating-a-package.md) -To explore more that NuGet has to offer, select the links below. +To explore more that NuGet has to offer, see the following articles: -- [Publish a Package](../nuget-org/publish-a-package.md) -- [Pre-release Packages](../create-packages/Prerelease-Packages.md) +- [Publish a package](../nuget-org/publish-a-package.md) +- [Build a prerelease package](../create-packages/Prerelease-Packages.md) - [Support multiple target frameworks](../create-packages/supporting-multiple-target-frameworks.md) - [Package versioning](../concepts/package-versioning.md) -- [Creating localized packages](../create-packages/creating-localized-packages.md) +- [Creating a localized package](../create-packages/creating-localized-packages.md) diff --git a/docs/quickstart/create-and-publish-a-package-using-visual-studio.md b/docs/quickstart/create-and-publish-a-package-using-visual-studio.md index 643f315da..3d05c7796 100644 --- a/docs/quickstart/create-and-publish-a-package-using-visual-studio.md +++ b/docs/quickstart/create-and-publish-a-package-using-visual-studio.md @@ -1,162 +1,187 @@ --- -title: Create and publish a .NET Standard NuGet package - Visual Studio on Windows -description: A walkthrough tutorial on creating and publishing a .NET Standard NuGet package using Visual Studio on Windows. +title: "Quickstart: Create and publish a NuGet package using Visual Studio (Windows only)" +description: A quickstart that shows how to create and publish a .NET NuGet package using Visual Studio for Windows. author: JonDouglas ms.author: jodou -ms.date: 08/16/2019 +ms.date: 08/29/2022 ms.topic: quickstart --- -# Quickstart: Create and publish a NuGet package using Visual Studio (.NET Standard, Windows only) +# Quickstart: Create and publish a NuGet package using Visual Studio (Windows only) -It's a simple process to create a NuGet package from a .NET Standard Class Library in Visual Studio on Windows, and then publish it to nuget.org using a CLI tool. +With Microsoft Visual Studio, you can create a NuGet package from a .NET class library, and then publish it to nuget.org using a CLI tool. -> [!Note] -> If you are using Visual Studio for Mac, refer to [this information](/xamarin/cross-platform/app-fundamentals/nuget-multiplatform-libraries/existing-library) on creating a NuGet package, or use the [dotnet CLI tools](create-and-publish-a-package-using-the-dotnet-cli.md). +The quickstart is for Windows users only. If you're using Visual Studio for Mac, see [Create a NuGet package from existing library projects](/xamarin/cross-platform/app-fundamentals/nuget-multiplatform-libraries/existing-library) or use the [.NET CLI](create-and-publish-a-package-using-the-dotnet-cli.md). ## Prerequisites -1. Install any edition of Visual Studio 2019 from [visualstudio.com](https://www.visualstudio.com/) with a .NET Core related workload. +- Install Visual Studio 2022 for Windows with a .NET Core-related workload. -1. If it's not already installed, install the `dotnet` CLI. + You can install the 2022 Community edition for free from [visualstudio.microsoft.com](https://visualstudio.microsoft.com/), or use the Professional or Enterprise edition. - For the `dotnet` CLI, starting in Visual Studio 2017, the `dotnet` CLI is automatically installed with any .NET Core related workloads. Otherwise, install the [.NET Core SDK](https://www.microsoft.com/net/download/) to get the `dotnet` CLI. The `dotnet` CLI is required for .NET Standard projects that use the [SDK-style format](../resources/check-project-format.md) (SDK attribute). The default .NET Standard class library template in Visual Studio 2017 and higher, which is used in this article, uses the SDK attribute. - - > [!Important] - > If you are working with a non-SDK-style project, follow the procedures in [Create and publish a .NET Framework package (Visual Studio)](create-and-publish-a-package-using-visual-studio-net-framework.md) to create and publish the package instead. For this article, the `dotnet` CLI is recommended. Although you can publish any NuGet package using the `nuget.exe` CLI, some of the steps in this article are specific to SDK-style projects and the dotnet CLI. The nuget.exe CLI is used for [non-SDK-style projects](../resources/check-project-format.md) (typically .NET Framework). + Visual Studio 2017 and later automatically includes NuGet capabilities when you install a .NET-related workload. -1. [Register for a free account on nuget.org](../nuget-org/individual-accounts.md#add-a-new-individual-account) if you don't have one already. Creating a new account sends a confirmation email. You must confirm the account before you can upload a package. +- Install the .NET CLI, if it's not already installed. + + For Visual Studio 2017 and later, the .NET CLI is automatically installed with any .NET Core-related workload. Otherwise, install the [.NET Core SDK](https://www.microsoft.com/net/download/) to get the .NET CLI. The .NET CLI is required for .NET projects that use the [SDK-style format](../resources/check-project-format.md) (SDK attribute). The default .NET class library template in Visual Studio 2017 and later uses the SDK attribute. + + > [!IMPORTANT] + > If you're working with a non-SDK-style project, follow the procedures in [Create and publish a .NET Framework package (Visual Studio)](create-and-publish-a-package-using-visual-studio-net-framework.md) instead to create and publish the package. For this article, the .NET CLI is recommended. Although you can publish any NuGet package using the NuGet CLI, some of the steps in this article are specific to SDK-style projects and the .NET CLI. The NuGet CLI is used for [non-SDK-style projects](../resources/check-project-format.md) (typically .NET Framework). + +- [Register for a free account on nuget.org](../nuget-org/individual-accounts.md#add-a-new-individual-account) if you don't have one already. You must register and confirm the account before you can upload a NuGet package. + +- Install the NuGet CLI by downloading it from [nuget.org](https://dist.nuget.org/win-x86-commandline/latest/nuget.exe). Add the *nuget.exe* file to a suitable folder, and add that folder to your PATH environment variable. ## Create a class library project -You can use an existing .NET Standard Class Library project for the code you want to package, or create a simple one as follows: +You can use an existing .NET Class Library project for the code you want to package, or create one as follows: -1. In Visual Studio, choose **File > New > Project**, expand the **Visual C# > .NET Standard** node, select the "Class Library (.NET Standard)" template, name the project AppLogger, and click **OK**. +1. In Visual Studio, select **File** > **New** > **Project**. - > [!Tip] - > Unless you have a reason to choose otherwise, .NET Standard is the preferred target for NuGet packages, as it provides compatibility with the widest range of consuming projects. +1. In the **Create a new project** window, select **C#**, **Windows**, and **Library** in the dropdown lists. -1. Right-click on the resulting project file and select **Build** to make sure the project was created properly. The DLL is found within the Debug folder (or Release if you build that configuration instead). +1. In the resulting list of project templates, select **Class Library** (with the description, *A project for creating a class library that targets .NET or .NET Standard*), and then select **Next**. -Within a real NuGet package, of course, you implement many useful features with which others can build applications. For this walkthrough, however, you won't write any additional code because a class library from the template is sufficient to create a package. Still, if you'd like some functional code for the package, use the following: +1. In the **Configure your new project** window, enter *AppLogger* for the **Project name**, and then select **Next**. -```cs -namespace AppLogger -{ - public class Logger - { - public void Log(string text) - { - Console.WriteLine(text); - } - } -} -``` +1. In the **Additional information** window, select an appropriate **Framework**, and then select **Create**. + + If you're unsure which framework to select, the latest is a good choice, and can be easily changed later. For information about which framework to use, see [When to target .NET 5.0 or .NET 6.0 vs. .NET Standard](/dotnet/standard/net-standard#when-to-target-net50-or-net60-vs-netstandard). + +1. To ensure the project was created properly, select **Build** > **Build Solution**. The DLL is found within the Debug folder (or Release if you build that configuration instead). + +1. (Optional) For this quickstart, you don't need to write any additional code for the NuGet package because the template class library is sufficient to create a package. However, if you'd like some functional code for the package, include the following code: + + ```csharp + namespace AppLogger + { + public class Logger + { + public void Log(string text) + { + Console.WriteLine(text); + } + } + } + ``` ## Configure package properties -1. Right-click the project in Solution Explorer, and choose **Properties** menu command, then select the **Package** tab. +After you've created your project, you can configure the NuGet package properties by following these steps: + +1. Select your project in **Solution Explorer**, and then select **Project** > **\ Properties**, where \ is the name of your project. + +1. Expand the **Package** node, and then select **General**. + + The **Package** node appears only for SDK-style projects in Visual Studio. If you're' targeting a non-SDK style project (typically .NET Framework), either [migrate the project](../consume-packages/migrate-packages-config-to-package-reference.md), or see [Create and publish a .NET Framework package](create-and-publish-a-package-using-visual-studio-net-framework.md) for step-by-step instructions. - The **Package** tab appears only for SDK-style projects in Visual Studio, typically .NET Standard or .NET Core class library projects; if you are targeting a non-SDK style project (typically .NET Framework), either [migrate the project](../consume-packages/migrate-packages-config-to-package-reference.md) or see [Create and publish a .NET Framework package](create-and-publish-a-package-using-visual-studio-net-framework.md) instead for step-by-step instructions. + :::image type="content" source="media/qs-create-vs-project-properties.png" alt-text="Screenshot showing NuGet package properties in a Visual Studio project."::: - ![NuGet package properties in a Visual Studio project](media/qs_create-vs-01-package-properties.png) +1. For packages built for public consumption, pay special attention to the **Tags** property, as tags help others find your package and understand what it does. - > [!Note] - > For packages built for public consumption, pay special attention to the **Tags** property, as tags help others find your package and understand what it does. +1. Give your package a unique **Package ID** and fill out any other desired properties. For a table that shows how MSBuild properties (SDK-style projects) map to *.nuspec* file properties, see [pack targets](../reference/msbuild-targets.md#pack-target). For a description of *.nuspec* file properties, see the [.nuspec file reference](../reference/nuspec.md). All of these properties go into the `.nuspec` manifest that Visual Studio creates for the project. -1. Give your package a unique identifier and fill out any other desired properties. For a mapping of MSBuild properties (SDK-style project) to properties in a *.nuspec*, see [pack targets](../reference/msbuild-targets.md#pack-target). For descriptions of properties, see the [.nuspec file reference](../reference/nuspec.md). All of the properties here go into the `.nuspec` manifest that Visual Studio creates for the project. + > [!IMPORTANT] + > You must give the package an identifier that's unique across nuget.org or whatever host you're using. Otherwise, an error occurs. For this quickstart we recommend including *Sample* or *Test* in the name because the publishing step makes the package publicly visible. - > [!Important] - > You must give the package an identifier that's unique across nuget.org or whatever host you're using. For this walkthrough we recommend including "Sample" or "Test" in the name as the later publishing step does make the package publicly visible (though it's unlikely anyone will actually use it). - > - > If you attempt to publish a package with a name that already exists, you see an error. +1. (Optional) To see the properties directly in the *AppLogger.csproj* project file, select **Project** > **Edit Project File**. -1. (Optional) To see the properties directly in the project file, right-click the project in Solution Explorer and select **Edit AppLogger.csproj**. + The **AppLogger.csproj** tab loads. - This option is only available starting in Visual Studio 2017 for projects that use the SDK-style attribute. Otherwise, right-click the project and choose **Unload Project**. Then right-click the unloaded project and choose **Edit AppLogger.csproj**. + This option is available starting in Visual Studio 2017 for projects that use the SDK-style attribute. For earlier Visual Studio versions, you must select **Project** > **Unload Project** before you can edit the project file. ## Run the pack command -1. Set the configuration to **Release**. +To create a NuGet package from your project, follow these steps: -1. Right click the project in **Solution Explorer** and select the **Pack** command: +1. Select **Build** > **Configuration Manager**, and then set the **Active solution configuration** to **Release**. - ![NuGet pack command on the Visual Studio project context menu](media/qs_create-vs-02-pack-command.png) +1. Select the AppLogger project in **Solution Explorer**, and then select **Build** > **Pack**. - If you don't see the **Pack** command, your project is probably not an SDK-style project and you need to use the `nuget.exe` CLI. Either [migrate the project](../consume-packages/migrate-packages-config-to-package-reference.md) and use `dotnet` CLI, or see [Create and publish a .NET Framework package](create-and-publish-a-package-using-visual-studio-net-framework.md) instead for step-by-step instructions. + Visual Studio builds the project and creates the *.nupkg* file. -1. Visual Studio builds the project and creates the `.nupkg` file. Examine the **Output** window for details (similar to the following), which contains the path to the package file. Note also that the built assembly is in `bin\Release\netstandard2.0` as befits the .NET Standard 2.0 target. +1. Examine the **Output** window for details, which contains the path to the package file. In this example, the built assembly is in *bin\Release\net6.0* as befits a .NET 6.0 target: ```output 1>------ Build started: Project: AppLogger, Configuration: Release Any CPU ------ - 1>AppLogger -> d:\proj\AppLogger\AppLogger\bin\Release\netstandard2.0\AppLogger.dll + 1>AppLogger -> d:\proj\AppLogger\AppLogger\bin\Release\net6.0\AppLogger.dll 1>Successfully created package 'd:\proj\AppLogger\AppLogger\bin\Release\AppLogger.1.0.0.nupkg'. ========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ========== ``` +1. If you don't see the **Pack** command on the menu, your project is probably not an SDK-style project, and you need to use the NuGet CLI. Either [migrate the project](../consume-packages/migrate-packages-config-to-package-reference.md) and use .NET CLI, or see [Create and publish a .NET Framework package](create-and-publish-a-package-using-visual-studio-net-framework.md) for step-by-step instructions. + ### (Optional) Generate package on build -You can configure Visual Studio to automatically generate the NuGet package when you build the project. +You can configure Visual Studio to automatically generate the NuGet package when you build the project: -1. In Solution Explorer, right-click the project and choose **Properties**. +1. Select your project in **Solution Explorer**, and then select **Project** > **\ Properties**, where \ is the name of your project (AppLogger in this case). -2. In the **Package** tab, select **Generate NuGet package on build**. +1. Expand the **Package** node, select **General**, and then select **Generate NuGet package on build**. - ![Automatically generate package on build](media/qs_create-vs-05-generate-on-build.png) + :::image type="content" source="media/qs-create-vs-generate-on-build.png" alt-text="Screenshot showing package properties with Generate NuGet package on build selected."::: > [!NOTE] -> When you automatically generate the package, the time to pack increases the build time for your project. +> When you automatically generate the package, the extra time to pack increases the overall build time for your project. + +### (Optional) Pack with MSBuild + +As an alternative to using the **Pack** menu command, NuGet 4.x+ and MSBuild 15.1+ supports a `pack` target when the project contains the necessary package data: -### (Optional) pack with MSBuild +1. With your project open in **Solution Explorer**, open a command prompt by selecting **Tools** > **Command Line** > **Developer Command Prompt**. -As an alternate to using the **Pack** menu command, NuGet 4.x+ and MSBuild 15.1+ supports a `pack` target when the project contains the necessary package data. Open a command prompt, navigate to your project folder and run the following command. (You typically want to start the "Developer Command Prompt for Visual Studio" from the Start menu, as it will be configured with all the necessary paths for MSBuild.) + The command prompt opens in your project directory. + +1. Run the following command: `msbuild -t:pack`. For more information, see [Create a package using MSBuild](../create-packages/creating-a-package-msbuild.md). ## Publish the package -Once you have a `.nupkg` file, you publish it to nuget.org using either the `nuget.exe` CLI or the `dotnet.exe` CLI along with an API key acquired from nuget.org. +After you've created a *.nupkg* file, publish it to nuget.org by using either the .NET CLI or the NuGet CLI, along with an API key acquired from nuget.org. [!INCLUDE [publish-notes](includes/publish-notes.md)] ### Acquire your API key -[!INCLUDE [publish-api-key](includes/publish-api-key.md)] +Before you publish your NuGet package, create an API key: -### Publish with the dotnet CLI or nuget.exe CLI +[!INCLUDE [publish-api-key](includes/publish-api-key.md)] -Select the tab for your CLI tool, either **.NET Core CLI** (dotnet CLI) or **NuGet** (nuget.exe CLI). +### Publish with the .NET CLI or NuGet CLI -# [.NET Core CLI](#tab/netcore-cli) +Each of the following CLI tools allows you to push a package to the server and publish it. Select the tab for your CLI tool, either **.NET CLI** or **NuGet CLI**. -This step is the recommended alternative to using `nuget.exe`. +#### [.NET CLI](#tab/netcore-cli) -Before you can publish the package, you must first open a command line. +Using the .NET CLI (*dotnet.exe*) is the recommended alternative to using the NuGet CLI. [!INCLUDE [publish-dotnet](includes/publish-dotnet.md)] -# [NuGet](#tab/nuget) +#### [NuGet CLI](#tab/nuget) -This step is an alternative to using `dotnet.exe`. +Using the NuGet CLI (*nuget.exe*) is an alternative to using the .NET CLI: -1. Open a command line and change to the folder containing the `.nupkg` file. +1. Open a command prompt and change to the folder containing the *.nupkg* file. -1. Run the following command, specifying your package name (unique package ID) and replacing the key value with your API key: +1. Run the following command. Replace \ with the file name of your package and replace \ with your API key. - ```cli - nuget push AppLogger.1.0.0.nupkg qz2jga8pl3dvn2akksyquwcs9ygggg4exypy3bhxy6w6x6 -Source https://api.nuget.org/v3/index.json + The NuGet CLI generates a *.nupkg* file in the form of *package ID-version.nupkg*. For example, *AppLogger.1.0.0.nupkg*: + + ```nuget + nuget push -Source https://api.nuget.org/v3/index.json ``` -1. nuget.exe displays the results of the publishing process: + The result of the publishing process is displayed as follows: ```output - Pushing AppLogger.1.0.0.nupkg to 'https://www.nuget.org/api/v2/package'... + Pushing to 'https://www.nuget.org/api/v2/package'... PUT https://www.nuget.org/api/v2/package/ Created https://www.nuget.org/api/v2/package/ 6829ms Your package was pushed. ``` -See [nuget push](../reference/cli-reference/cli-ref-push.md). +For more information, see [nuget push](../reference/cli-reference/cli-ref-push.md). --- @@ -168,9 +193,9 @@ See [nuget push](../reference/cli-reference/cli-ref-push.md). [!INCLUDE [publish-manage](includes/publish-manage.md)] -## Adding a readme and other files +## Add a readme or another file -To directly specify files to include in the package, edit the project file and use the `content` property: +To directly specify files to include in the package, edit the project file and add the `content` property: ```xml @@ -181,26 +206,48 @@ To directly specify files to include in the package, edit the project file and u ``` -This will include a file named `readme.txt` in the package root. Visual Studio displays the contents of that file as plain text immediately after installing the package directly. (Readme files are not displayed for packages installed as dependencies). For example, here's how the readme for the HtmlAgilityPack package appears: - -![The display of a readme file for a NuGet package upon installation](../create-packages/media/Create_01-ShowReadme.png) +In this example, the property specifies a file named *readme.txt* in the project root. Visual Studio displays the contents of that file as plain text immediately after it installs the package. Readme files aren't displayed for packages installed as dependencies. For example, here's the readme for the HtmlAgilityPack package: + +```output +1 ---------------------------------------------------- +2 ---------- Html Agility Pack Nuget Readme ---------- +3 ---------------------------------------------------- +4 +5 ----Silverlight 4 and Windows Phone 7.1+ projects----- +6 To use XPATH features: System.Xml.Xpath.dll from the 3 Silverlight 4 SDK must be referenced. +7 This is normally found at +8 %ProgramFiles(x86)%\Microsoft SDKs\Microsoft SDKs\Silverlight\v4.0\Libraries\Client +9 or +10 %ProgramFiles%\Microsoft SDKs\Microsoft SDKs\Silverlight\v4.0\Libraries\Client +11 +12 ----Silverlight 5 projects----- +13 To use XPATH features: System.Xml.Xpath.dll from the Silverlight 5 SDK must be referenced. +14 This is normally found at +15 %ProgramFiles(x86)%\Microsoft SDKs\Microsoft SDKs\Silverlight\v5.0\Libraries\Client +16 or +17 %ProgramFiles%\Microsoft SDKs\Microsoft SDKs\Silverlight\v5.0\Libraries\Client +``` -> [!Note] -> Merely adding the readme.txt at the project root will not result in it being included in the resulting package. +> [!NOTE] +> If you only add *readme.txt* at the project root without including it in the `content` property of the project file, it won't be included in the package. ## Related video -> [!Video https://docs.microsoft.com/shows/NuGet-101/Create-and-Publish-a-NuGet-Package-with-Visual-Studio-4-of-5/player] +> [!VIDEO https://docs.microsoft.com/shows/NuGet-101/Create-and-Publish-a-NuGet-Package-with-Visual-Studio-4-of-5/player] Find more NuGet videos on [Channel 9](/shows/NuGet-101/) and [YouTube](https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVLvfkFk8O9h6v2Dcdh2bh_). -## Related topics +Congratulations on creating a NuGet package by using a Visual Studio .NET class library. Advance to the next article to learn how to create a NuGet package with the Visual Studio .NET Framework. + +> [!div class="nextstepaction"] +> [Create a package using the NuGet CLI](../create-packages/creating-a-package.md) + +To explore more that NuGet has to offer, see the following articles: -- [Create a Package](../create-packages/creating-a-package-dotnet-cli.md) -- [Publish a Package](../nuget-org/publish-a-package.md) -- [Pre-release Packages](../create-packages/Prerelease-Packages.md) -- [Support multiple target frameworks](../create-packages/multiple-target-frameworks-project-file.md) +- [Create a NuGet package](../create-packages/creating-a-package-dotnet-cli.md) +- [Publish a package](../nuget-org/publish-a-package.md) +- [Build a prerelease package](../create-packages/Prerelease-Packages.md) +- [Support multiple .NET Framework versions](../create-packages/multiple-target-frameworks-project-file.md) - [Package versioning](../concepts/package-versioning.md) -- [Creating localized packages](../create-packages/creating-localized-packages.md) -- [.NET Standard Library documentation](/dotnet/articles/standard/library) +- [Create localized NuGet packages](../create-packages/creating-localized-packages.md) - [Porting to .NET Core from .NET Framework](/dotnet/articles/core/porting/index) diff --git a/docs/quickstart/includes/publish-api-key.md b/docs/quickstart/includes/publish-api-key.md index 91c853eb9..399959ae9 100644 --- a/docs/quickstart/includes/publish-api-key.md +++ b/docs/quickstart/includes/publish-api-key.md @@ -12,9 +12,10 @@ 1. Select **Copy** to copy the new key. - ![Screenshot that shows the new API key with the Copy link.](../media/QS_Create-02-APIKey.png) + ![Screenshot that shows the new API key with the Copy link.](../media/qs-create-api-key.png) -> [!Important] +> [!IMPORTANT] +> > - Always keep your API key a secret. The API key is like a password that allows anyone to manage packages on your behalf. Delete or regenerate your API key if it's accidentally revealed. > - Save your key in a secure location, because you can't copy the key again later. If you return to the API key page, you need to regenerate the key to copy it. You can also remove the API key if you no longer want to push packages. diff --git a/docs/quickstart/includes/publish-dotnet.md b/docs/quickstart/includes/publish-dotnet.md index c30407713..eead5986d 100644 --- a/docs/quickstart/includes/publish-dotnet.md +++ b/docs/quickstart/includes/publish-dotnet.md @@ -17,4 +17,4 @@ Your package was pushed. For more information, see [dotnet nuget push](/dotnet/core/tools/dotnet-nuget-push). > [!NOTE] -> If you want to avoid your test package being live on nuget.org, you can push to the nuget.org test site at [https://int.nugettest.org](https://int.nugettest.org). Note that packages uploaded to int.nugettest.org might not be preserved. +> If you want to avoid your test package being live on nuget.org, you can push to the nuget.org test site at [https://int.nugettest.org](https://int.nugettest.org). Note that packages uploaded to int.nugettest.org might not be preserved. \ No newline at end of file diff --git a/docs/quickstart/includes/publish-errors.md b/docs/quickstart/includes/publish-errors.md index 5b7e2d18e..a6afe8686 100644 --- a/docs/quickstart/includes/publish-errors.md +++ b/docs/quickstart/includes/publish-errors.md @@ -1,10 +1,10 @@ Errors from the `push` command typically indicate the problem. For example, you might have forgotten to update the version number in your project, so you're trying to publish a package that already exists. -You also see errors if your API key is invalid or expired, or if you try to publish a package using an identifier that already exists on the host. The identifier `AppLogger-test`, for example, already exists on nuget.org. If you try to publish a package with that identifier, the `push` command gives the following error: +You also see errors if your API key is invalid or expired, or if you try to publish a package using an identifier that already exists on the host. Suppose, for example, the identifier `AppLogger-test` already exists on nuget.org. If you try to publish a package with that identifier, the `push` command gives the following error: -```output -Response status code does not indicate success: 403 (The specified API key is invalid, -has expired, or does not have permission to access the specified package.). -``` + ```output + Response status code does not indicate success: 403 (The specified API key is invalid, + has expired, or does not have permission to access the specified package.). + ``` If you get this error, check that you're using a valid API key that hasn't expired. If you are, the error indicates the package identifier already exists on the host. To fix the error, change the package identifier to be unique, rebuild the project, recreate the *.nupkg* file, and retry the `push` command. diff --git a/docs/quickstart/includes/publish-manage.md b/docs/quickstart/includes/publish-manage.md index 9ecbfc084..bf1b8c8e6 100644 --- a/docs/quickstart/includes/publish-manage.md +++ b/docs/quickstart/includes/publish-manage.md @@ -2,18 +2,20 @@ When your package successfully publishes, you receive a confirmation email. To s > [!NOTE] > It might take awhile for your package to be indexed and appear in search results where others can find it. During that time, your package appears under **Unlisted Packages**, and the package page shows the following message: -> -> ![This package has not been indexed yet. It will appear in search results and will be available for install/restore after indexing is complete.](../media/QS_Create-03-NotIndexed.png) +> +> ![Screenshot showing the publishing message that's displayed when you upload a package to nuget.org.](../media/qs-create-not-indexed.png) -You've now published a NuGet package to nuget.org that other developers can use in their projects, but the sample package uses an empty class library that isn't useful. To *unlist* this test package and hide it from search results: +You've now published a NuGet package to nuget.org that other developers can use in their projects. -1. Once the package appears under **Published Packages** on the **Manage Packages** page, select the pencil icon next to the package listing. +If you've created a package that isn't useful (such as this sample package that was created with an empty class library), or you decide you don't want the package to be visible, you can *unlist* the package to hide it from search results: - ![Screenshot that shows the Edit icon for a package listing on nuget.org.](../media/qs_create-vs-03-trash-can.png) +1. After the package appears under **Published Packages** on the **Manage Packages** page, select the pencil icon next to the package listing. + + ![Screenshot that shows the Edit icon for a package listing on nuget.org.](../media/qs-create-vs-edit-package.png) 1. On the next page, select **Listing**, deselect the **List in search results** checkbox, and then select **Save**. - ![Screenshot that shows clearing the List checkbox for a package on nuget.org.](../media/qs_create-vs-04-unlist.png) + ![Screenshot that shows clearing the List checkbox for a package on nuget.org.](../media/qs-create-vs-unlist-package.png) The package now appears under **Unlisted Packages** in **Manage Packages** and no longer appears in search results. diff --git a/docs/quickstart/includes/publish-notes.md b/docs/quickstart/includes/publish-notes.md index cc3a3ff2d..78007281b 100644 --- a/docs/quickstart/includes/publish-notes.md +++ b/docs/quickstart/includes/publish-notes.md @@ -1,4 +1,5 @@ -> [!Note] +> [!NOTE] +> > - Nuget.org scans all uploaded packages for viruses and rejects the packages if it finds any viruses. Nuget.org also scans all existing listed packages periodically. > -> - Packages you publish to nuget.org are publicly visible to other developers unless you unlist them. To host packages privately, see [Host your own NuGet feeds](../../hosting-packages/overview.md). \ No newline at end of file +> - Packages you publish to nuget.org are publicly visible to other developers unless you unlist them. To host packages privately, see [Host your own NuGet feeds](../../hosting-packages/overview.md). diff --git a/docs/quickstart/media/QS_Create-02-APIKey.png b/docs/quickstart/media/QS_Create-02-APIKey.png deleted file mode 100644 index 7dabd6ea0c8f01e7f3171be51a2b6fd05a003bd0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21051 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 GIQd^VLow9= diff --git a/docs/quickstart/media/QS_Create-vs-01b-project-properties.png b/docs/quickstart/media/QS_Create-vs-01b-project-properties.png deleted file mode 100644 index 349f4fa60b7c47de22b045f02018dbd9bf3a8320..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9095 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 diff --git a/docs/quickstart/media/qs-create-api-key.png b/docs/quickstart/media/qs-create-api-key.png new file mode 100644 index 0000000000000000000000000000000000000000..9e0d1045be9414ff04062aec188ac5c00b8784cc GIT binary patch literal 49727 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 Zq1=%hLWG*H@4!;IeDTVKigVW={15tDkZ1q^ literal 0 HcmV?d00001 diff --git a/docs/quickstart/media/qs_create-vs-03-trash-can.png b/docs/quickstart/media/qs-create-vs-edit-package.png similarity index 100% rename from docs/quickstart/media/qs_create-vs-03-trash-can.png rename to docs/quickstart/media/qs-create-vs-edit-package.png diff --git a/docs/quickstart/media/qs-create-vs-generate-on-build.png b/docs/quickstart/media/qs-create-vs-generate-on-build.png new file mode 100644 index 0000000000000000000000000000000000000000..f0b741899618022177259d40d80831b6d348cdb3 GIT binary patch literal 55176 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 RuRrY}s*f}tqLp5}`Cl2$A?pAD literal 0 HcmV?d00001 diff --git a/docs/quickstart/media/qs_create-vs-04-unlist.png b/docs/quickstart/media/qs-create-vs-unlist-package.png similarity index 100% rename from docs/quickstart/media/qs_create-vs-04-unlist.png rename to docs/quickstart/media/qs-create-vs-unlist-package.png diff --git a/docs/quickstart/media/qs_create-vs-01-package-properties.png b/docs/quickstart/media/qs_create-vs-01-package-properties.png deleted file mode 100644 index bcb8f159a78c15a60ec15fa266ac3c29cc9dd9e7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 56370 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 Db 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 diff --git a/docs/quickstart/media/qs_create-vs-02-pack-command.png b/docs/quickstart/media/qs_create-vs-02-pack-command.png deleted file mode 100644 index 9d358915eacc850e0b6657877f0d8719fa2bc27f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9794 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 Date: Thu, 1 Sep 2022 16:51:38 -0400 Subject: [PATCH 651/988] Update CODEOWNERS (#2874) --- .github/CODEOWNERS | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 00faff511..a8838bc78 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -7,6 +7,7 @@ # @NuGet/core-team owns any file in the `/docs/nuget-org/` directory # in the root of your repository and any of its subdirectories. /docs/nuget-org/ @NuGet/nuget-client @NuGet/nuget-pm @NuGet/gallery-team +/docs/api/ @NuGet/nuget-client @NuGet/nuget-pm @NuGet/gallery-team # @NuGet/core-team owns any file in the `/docs/policies/` directory # in the root of your repository and any of its subdirectories. From 5b137163b10a278a38b534c9dc12941b96935da0 Mon Sep 17 00:00:00 2001 From: Jeff Kluge Date: Fri, 2 Sep 2022 09:59:33 -0700 Subject: [PATCH 652/988] Document NU1507 (#2873) --- docs/reference/errors-and-warnings/NU1507.md | 32 ++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 docs/reference/errors-and-warnings/NU1507.md diff --git a/docs/reference/errors-and-warnings/NU1507.md b/docs/reference/errors-and-warnings/NU1507.md new file mode 100644 index 000000000..ca093e17b --- /dev/null +++ b/docs/reference/errors-and-warnings/NU1507.md @@ -0,0 +1,32 @@ +--- +title: NuGet Warning NU1507 +description: NU1507 warning code +author: jeffkl +ms.author: jeffkl +ms.date: 09/01/2022 +ms.topic: reference +f1_keywords: + - "NU1507" +--- + +# NuGet Warning NU1507 + +## Scenario 1 + +

    There are 2 package sources defined in your configuration. When using central package management, please map your package sources with package source mapping (https://aka.ms/nuget-package-source-mapping) or specify a single package source. The following sources are defined: https://api.nuget.org/v3/index.json,  https://contoso.myget.org/F/development/.
    + +### Issue + +When using NuGet's central package management (CPM), it is highly recommended that you also use Package Source Mapping. This can help safeguard your software supply chain is crucial if you use a mix of public and private package sources. Visit https://aka.ms/nuget-package-source-mapping to learn more about how package source mapping works. + +### Solution + +Onboard to Package Source Mapping if you have more than one NuGet feed configured when using central package management. You can visit https://aka.ms/nuget-package-source-mapping for more details. + +If you are unable to onboard to Package Source Mapping but want to use central package management, can suppress the warning: + +```xml + + $(NoWarn);NU1507 + +``` From f45c13ea6c9c51c0d558c2dccb43454a4ca7fde6 Mon Sep 17 00:00:00 2001 From: Dean Simpson <31017587+dksimpson@users.noreply.github.com> Date: Mon, 5 Sep 2022 14:04:58 -0700 Subject: [PATCH 653/988] Address review comments from merged PR (#2871) --- .../install-use-packages-visual-studio.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/docs/consume-packages/install-use-packages-visual-studio.md b/docs/consume-packages/install-use-packages-visual-studio.md index 1671f8604..ff2f5ced7 100644 --- a/docs/consume-packages/install-use-packages-visual-studio.md +++ b/docs/consume-packages/install-use-packages-visual-studio.md @@ -36,7 +36,7 @@ To find and install a NuGet package with Visual Studio, follow these steps: 1. Load a project in **Solution Explorer**, and then select **Project** > **Manage NuGet Packages**. - The **Nuget Package Manager** window opens. + The **NuGet Package Manager** window opens. 1. Select the **Browse** tab to display packages by popularity from the currently selected source (see [Package sources](#package-sources)). To search for a specific package, use the search box on the upper left. Select a package from the list to display its information on the right pane, which enables you to select a version to install. @@ -54,9 +54,9 @@ To find and install a NuGet package with Visual Studio, follow these steps: To uninstall a NuGet package, follow these steps: -1. With your project loaded in **Solution Explorer**, select **Manage NuGet Packages** and select the **Installed** tab. +1. Load a project in **Solution Explorer**, select **Project** > **Manage NuGet Packages**, and then select the **Installed** tab. -1. Select the package to uninstall in the left pane (use the **Search** box to find it, if necessary) and select **Uninstall** from the right pane. +1. Select the package to uninstall in the left pane (use the **Search** box to find it, if necessary), and then select **Uninstall** from the right pane. ![Screenshot showing the NuGet Package Manager with a package selected and its Uninstall button highlighted.](media/uninstall-package.png) @@ -64,7 +64,7 @@ To uninstall a NuGet package, follow these steps: To update a NuGet package, follow these steps: -1. With your project loaded in **Solution Explorer**, select **Manage NuGet Packages**. For website projects, select the **Bin** folder first. +1. Load a project in **Solution Explorer**, and then select **Project** > **Manage NuGet Packages**. For website projects, select the **Bin** folder first. 1. Select the **Updates** tab to see packages that have available updates from the selected **Package source**. Select **Include prerelease** to include prerelease packages in the update list. @@ -112,13 +112,15 @@ In this example, the ClassLibrary1 project is using EntityFramework 6.2.0, where ## Package sources +Visual Studio ignores the order of package sources, and uses the package from whichever source is the first to respond to a request. For more information, see [Restore packages](package-restore.md). For information about how to load a package from a specific source, see [Package source mapping](package-source-mapping.md). + To manage NuGet package sources, follow these steps: -1. To change the source from which Visual Studio obtains packages, select a source from the **Package source** selector. +1. To change the source from which Visual Studio loads package metadata, select a source from the **Package source** selector. ![Screenshot showing the Package source selector highlighted.](media/package-source-selector.png) -1. To change the package source options, select the **Settings** icon or select **Tools** > **Options**. +1. To manage your package sources, select the **Settings** icon or select **Tools** > **Options**. ![Screenshot showing the Package source settings icon highlighted.](media/package-source-settings.png) @@ -138,8 +140,6 @@ To manage NuGet package sources, follow these steps: If a package source reappears after you delete it, it might be listed in a computer-level or user-level *NuGet.config* file. For the location of these files, see [Common NuGet configurations](../consume-packages/configuring-nuget-behavior.md). Remove the package source in the files by editing them manually or using the [nuget sources command](../reference/nuget-exe-CLI-reference.md). -Using the up and down arrow buttons doesn't change the priority order of the package sources. Visual Studio ignores the order of package sources, and uses the package from whichever source is the first to respond to a request. For more information, see [Restore packages](../consume-packages/package-restore.md). - ## NuGet Package Manager Options control When you select a package, the NuGet Package Manager displays an expandable **Options** control below the **Version** selector. For most project types, only the **Show preview window** option is provided. From b594ca713c8aa13e936fbff67f2ac511025b17c9 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Thu, 8 Sep 2022 09:18:52 -0700 Subject: [PATCH 654/988] Improve the dependency resolution doc - Add better examples, rename the nearest wins rule to direct dependency wins (#2870) --- docs/concepts/Dependency-Resolution.md | 64 +++++++++++------- docs/concepts/media/cousin-dependencies-1.png | Bin 0 -> 25296 bytes docs/concepts/media/cousin-dependencies-2.png | Bin 0 -> 30243 bytes docs/concepts/media/cousin-dependencies-3.png | Bin 0 -> 25961 bytes docs/concepts/media/direct-dependency-1.png | Bin 0 -> 20777 bytes docs/concepts/media/direct-dependency-2.png | Bin 0 -> 27136 bytes docs/concepts/media/direct-dependency-3.png | Bin 0 -> 28816 bytes docs/concepts/media/direct-dependency-4.png | Bin 0 -> 35869 bytes docs/concepts/media/floating-versions-1.png | Bin 0 -> 26447 bytes .../media/lowest-applicable-version-1.png | Bin 0 -> 36524 bytes .../media/lowest-applicable-version-2.png | Bin 0 -> 32971 bytes .../media/lowest-applicable-version-3.png | Bin 0 -> 33910 bytes .../media/projectJson-dependency-1.png | Bin 4925 -> 0 bytes .../media/projectJson-dependency-2.png | Bin 4671 -> 0 bytes .../media/projectJson-dependency-3.png | Bin 5169 -> 0 bytes .../media/projectJson-dependency-4.png | Bin 4835 -> 0 bytes .../media/projectJson-dependency-5.png | Bin 4526 -> 0 bytes .../media/projectJson-dependency-6.png | Bin 4781 -> 0 bytes .../media/projectJson-dependency-7.png | Bin 4846 -> 0 bytes .../media/projectJson-dependency-8.png | Bin 5676 -> 0 bytes docs/reference/errors-and-warnings/NU1605.md | 6 +- 21 files changed, 41 insertions(+), 29 deletions(-) create mode 100644 docs/concepts/media/cousin-dependencies-1.png create mode 100644 docs/concepts/media/cousin-dependencies-2.png create mode 100644 docs/concepts/media/cousin-dependencies-3.png create mode 100644 docs/concepts/media/direct-dependency-1.png create mode 100644 docs/concepts/media/direct-dependency-2.png create mode 100644 docs/concepts/media/direct-dependency-3.png create mode 100644 docs/concepts/media/direct-dependency-4.png create mode 100644 docs/concepts/media/floating-versions-1.png create mode 100644 docs/concepts/media/lowest-applicable-version-1.png create mode 100644 docs/concepts/media/lowest-applicable-version-2.png create mode 100644 docs/concepts/media/lowest-applicable-version-3.png delete mode 100644 docs/concepts/media/projectJson-dependency-1.png delete mode 100644 docs/concepts/media/projectJson-dependency-2.png delete mode 100644 docs/concepts/media/projectJson-dependency-3.png delete mode 100644 docs/concepts/media/projectJson-dependency-4.png delete mode 100644 docs/concepts/media/projectJson-dependency-5.png delete mode 100644 docs/concepts/media/projectJson-dependency-6.png delete mode 100644 docs/concepts/media/projectJson-dependency-7.png delete mode 100644 docs/concepts/media/projectJson-dependency-8.png diff --git a/docs/concepts/Dependency-Resolution.md b/docs/concepts/Dependency-Resolution.md index 97869c755..bdbd205e6 100644 --- a/docs/concepts/Dependency-Resolution.md +++ b/docs/concepts/Dependency-Resolution.md @@ -17,19 +17,20 @@ When multiple packages have the same dependency, then the same package ID can ap ## Dependency resolution with PackageReference -When installing packages into projects using the PackageReference format, NuGet adds references to a flat package graph in the appropriate file and resolves conflicts ahead of time. This process is referred to as *transitive restore*. Reinstalling or restoring packages is then a process of downloading the packages listed in the graph, resulting in faster and more predictable builds. You can also take advantage of floating versions, such as 2.8.\*, to avoid modifying the project to use the latest version of a package. +When installing packages into projects using the PackageReference format, NuGet adds references to a flat package graph in the appropriate file and resolves conflicts ahead of time. This process is referred to as *transitive restore*. Reinstalling or restoring packages is then a process of downloading the packages listed in the graph, resulting in faster and more predictable builds. -When the NuGet restore process runs prior to a build, it resolves dependencies first in memory, then writes the resulting graph to a file called `project.assets.json`. It also writes the resolved dependencies to a lock file named `packages.lock.json`, if the [lock file functionality is enabled](../consume-packages/package-references-in-project-files.md#locking-dependencies). -The assets file is located at `MSBuildProjectExtensionsPath`, which defaults to the project's 'obj' folder. +You can also take advantage of floating versions, such as 2.8.\*, to avoid modifying the project to use the latest version of a package. When using floating versions, we recommend enabling the [lock file functionality](../consume-packages/package-references-in-project-files.md#locking-dependencies) to ensure repeatability. + +When the NuGet restore process runs prior to a build, it resolves dependencies first in memory, then writes the resulting graph to a file called `project.assets.json`. + +The assets file is located at `MSBuildProjectExtensionsPath`, which defaults to the project's 'obj' folder. MSBuild then reads this file and translates it into a set of folders where potential references can be found, and then adds them to the project tree in memory. The `project.assets.json` file is temporary and should not be added to source control. It's listed by default in both `.gitignore` and `.tfignore`. See [Packages and source control](../consume-packages/packages-and-source-control.md). ### Dependency resolution rules -Transitive restore applies four main rules to resolve dependencies: lowest applicable version, floating versions, nearest-wins, and cousin dependencies. - - +Transitive restore applies four main rules to resolve dependencies: [lowest applicable version](#lowest-applicable-version), [floating versions](#floating-versions), [direct-dependency-wins](#direct-dependency-wins), and [cousin dependencies](#cousin-dependencies). #### Lowest applicable version @@ -37,60 +38,71 @@ The lowest applicable version rule restores the lowest possible version of a pac In the following figure, for example, 1.0-beta is considered lower than 1.0 so NuGet chooses the 1.0 version: -![Choosing the lowest applicable version](media/projectJson-dependency-1.png) +![Choosing the lowest applicable version](media/lowest-applicable-version-1.png) In the next figure, version 2.1 is not available on the feed but because the version constraint is >= 2.1 NuGet picks the next lowest version it can find, in this case 2.2: -![Choosing the next lowest version available on the feed](media/projectJson-dependency-2.png) +![Choosing the next lowest version available on the feed](media/lowest-applicable-version-2.png) When an application specifies an exact version number, such as 1.2, that is not available on the feed, NuGet fails with an error when attempting to install or restore the package: -![NuGet generates an error when an exact package version is not available](media/projectJson-dependency-3.png) - - +![NuGet generates an error when an exact package version is not available](media/lowest-applicable-version-3.png) #### Floating versions A floating dependency version is specified with the \* character. For example, `6.0.*`. This version specification says "use the latest 6.0.x version"; `4.*` means "use the latest 4.x version." Using a floating version reduces changes to the project file, while keeping up to date with the latest version of a dependency. +Floating versions can only be specified at the project level. When using a floating version, NuGet resolves the highest version of a package that matches the version pattern, for example `6.0.*` gets the highest version of a package that starts with 6.0: -![Choosing version 6.0.1 when a floating version 6.0.* is requested](media/projectJson-dependency-4.png) +![Choosing version 6.0.1 when a floating version 6.0.* is requested](media/floating-versions-1.png) > [!Note] > For information on the behavior of floating versions and pre-release versions, see [Package versioning](package-versioning.md#version-ranges). +#### Direct dependency wins + +When the package graph for an application contains different versions of a package in the same subgraph, and one of those versions is a direct dependency in that subgraph, that version would be chosen for that subgraph and the rest will be ignored. +This behavior allows an application to override any particular package version in the dependency graph. - +In the example below, the application depends directly on Package B with a version constraint of >=2.0. The application also depends on Package A which in turn also depends on Package B, but with a >=1.0 constraint. Because the dependency on Package B 2.0 is direct dependency to the application in the graph, that version is used: -#### Nearest wins +![Application using the Direct dependency wins rule](media/direct-dependency-1.png) -When the package graph for an application contains different versions of the same package, NuGet chooses the package that's closest to the application in the graph and ignores all others. This behavior allows an application to override any particular package version in the dependency graph. +>[!Warning] +> The Direct dependency wins rule can result in a downgrade of the package version, thus potentially breaking other dependencies in the graph. When a package is downgraded, NuGet adds a [warning to alert the user](..\reference\errors-and-warnings\NU1605.md). -In the example below, the application depends directly on Package B with a version constraint of >=2.0. The application also depends on Package A which in turn also depends on Package B, but with a >=1.0 constraint. Because the dependency on Package B 2.0 is nearer to the application in the graph, that version is used: +This rule also results in greater efficiency with a large dependency graph. +When a closer dependency in the same subgraph has a higher version than a further one, then NuGet ignores that dependency, NuGet also ignores all remaining dependencies on that branch of the graph. -![Application using the Nearest Wins rule](media/projectJson-dependency-5.png) +In the diagram below, for example, because Package C 2.0 is used, NuGet ignores any branches in that subgraph that refer to an earlier version of Package C: ->[!Warning] -> The Nearest Wins rule can result in a downgrade of the package version, thus potentially breaking other dependencies in the graph. Hence this rule is applied with a warning to alert the user. +![When NuGet ignores a package in the graph, it ignores that entire branch](media/direct-dependency-2.png) + +Through this rule, NuGet tries to honor the intent of the package author. +In the diagram below, the author of Package A has explicitly downgraded to Package C 1.0.0 from Package B 2.0.0. -This rule also results in greater efficiency with a large dependency graph (such as those with the BCL packages) because once a given dependency is ignored, NuGet also ignores all remaining dependencies on that branch of the graph. In the diagram below, for example, because Package C 2.0 is used, NuGet ignores any branches in the graph that refer to an older version of Package C: +![When a package author explicitly downgrades, NuGet honors that.](media/direct-dependency-3.png) -![When NuGet ignores a package in the graph, it ignores that entire branch](media/projectJson-dependency-6.png) +The application owner can choose to upgrade Package C to a version higher than 2.0.0, thus no further downgrading the version for Package C. In this case, no warning is raised. - +![When an application honor adds a direct dependency for a downgraded package, NuGet honors that.](media/direct-dependency-4.png) #### Cousin dependencies -When different package versions are referred to at the same distance in the graph from the application, NuGet uses the lowest version that satisfies all version requirements (as with the [lowest applicable version](#lowest-applicable-version) and [floating versions](#floating-versions) rules). In the image below, for example, version 2.0 of Package B satisfies the other >=1.0 constraint, and is thus used: +When different package versions are referred in different subgraphs in the graph from the application, NuGet uses the lowest version that satisfies all version requirements (as with the [lowest applicable version](#lowest-applicable-version) and [floating versions](#floating-versions) rules). In the image below, for example, version 2.0 of Package B satisfies the other >=1.0 constraint, and is thus used: + +![Resolving cousin dependencies using the lower version that satisfies all constraints](media/cousin-dependencies-1.png) + +Note that the packages do not need to be on the same distance for the cousin dependencies rule to apply. In the diagram below, Package D 2.0.0 is chosen in the Package C subgraph and Package D 3.0.0 is chosen in the subgraph of Package A. In the Application subgraph, there is no direct dependency to Package D, so the the [lowest applicable version](#lowest-applicable-version) rule is applied and version 3.0.0 is chosen. -![Resolving cousin dependencies using the lower version that satisfies all constraints](media/projectJson-dependency-7.png) +![Resolving cousin dependencies using the lower version that satisfies all constraints at different distances](media/cousin-dependencies-2.png) In some cases, it's not possible to meet all version requirements. As shown below, if Package A requires exactly Package B 1.0 and Package C requires Package B >=2.0, then NuGet cannot resolve the dependencies and gives an error. -![Unresolvable dependencies due to an exact version requirement](media/projectJson-dependency-8.png) +![Unresolvable dependencies due to an exact version requirement](media/cousin-dependencies-3.png) -In these situations, the top-level consumer (the application or package) should add its own direct dependency on Package B so that the [Nearest Wins](#nearest-wins) rule applies. +In these situations, the top-level consumer (the application or package) should add its own direct dependency on Package B so that the [Direct dependency wins](#direct-dependency-wins) rule applies. ## Dependency resolution with packages.config diff --git a/docs/concepts/media/cousin-dependencies-1.png b/docs/concepts/media/cousin-dependencies-1.png new file mode 100644 index 0000000000000000000000000000000000000000..fc228e49eea527aa489aedd6618ef647ccfb7c69 GIT binary patch literal 25296 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�(%jCuoT-TqA@5)-#IE?sXA;`0Hrpfd4d=qKOd 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 B_RjzS literal 0 HcmV?d00001 diff --git a/docs/concepts/media/cousin-dependencies-3.png b/docs/concepts/media/cousin-dependencies-3.png new file mode 100644 index 0000000000000000000000000000000000000000..807623a38f1bb5657c029fae482644756555c9f7 GIT binary patch literal 25961 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�)ynxRcnli( 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

    3B>!2)_u^U=_y`+g{1 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 Szv(B|8*+oemH+Qg=zjp7pIDv% literal 0 HcmV?d00001 diff --git a/docs/concepts/media/direct-dependency-3.png b/docs/concepts/media/direct-dependency-3.png new file mode 100644 index 0000000000000000000000000000000000000000..f4f38b64b5bb38541fef7b88c192f13b63b5a228 GIT binary patch literal 28816 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 R;>9i5ujj0wX#ZVA{V&&>V;2Ab literal 0 HcmV?d00001 diff --git a/docs/concepts/media/direct-dependency-4.png b/docs/concepts/media/direct-dependency-4.png new file mode 100644 index 0000000000000000000000000000000000000000..596475c18aff4a340351fa709b75aa08ee8530ec GIT binary patch literal 35869 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 OZ&Y~=9`Qf>)Bg)f)Yg>% literal 0 HcmV?d00001 diff --git a/docs/concepts/media/floating-versions-1.png b/docs/concepts/media/floating-versions-1.png new file mode 100644 index 0000000000000000000000000000000000000000..b809a5c96404ab4a69398c06cd7c7aed097497da GIT binary patch literal 26447 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 RJZ~ILuUpZMrvKRn{2%2cujT*% literal 0 HcmV?d00001 diff --git a/docs/concepts/media/lowest-applicable-version-1.png b/docs/concepts/media/lowest-applicable-version-1.png new file mode 100644 index 0000000000000000000000000000000000000000..c0fec1d6031ab1ac8fe93a39f6d738da58f28dc9 GIT binary patch literal 36524 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

    YBsYG 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 literal 0 HcmV?d00001 diff --git a/docs/concepts/media/lowest-applicable-version-3.png b/docs/concepts/media/lowest-applicable-version-3.png new file mode 100644 index 0000000000000000000000000000000000000000..92079bfcf0fe591d2d00be10f44e9a3b9c236285 GIT binary patch literal 33910 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 diff --git a/docs/concepts/media/projectJson-dependency-2.png b/docs/concepts/media/projectJson-dependency-2.png deleted file mode 100644 index badc8fef0652e9e4f0c8d48760c81f00cb11f1fb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4671 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 G$Ugun)%qX+ diff --git a/docs/concepts/media/projectJson-dependency-3.png b/docs/concepts/media/projectJson-dependency-3.png deleted file mode 100644 index 8f5c85f67d5ee0ae9393e58d6f5abfb9c02d4be0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5169 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 diff --git a/docs/concepts/media/projectJson-dependency-4.png b/docs/concepts/media/projectJson-dependency-4.png deleted file mode 100644 index d17973c52b4deb304e7867992fbc7ec521537d4e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4835 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 diff --git a/docs/concepts/media/projectJson-dependency-6.png b/docs/concepts/media/projectJson-dependency-6.png deleted file mode 100644 index 5925eebd072ca808af2f3b611a9068bff5d6b633..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4781 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 diff --git a/docs/reference/errors-and-warnings/NU1605.md b/docs/reference/errors-and-warnings/NU1605.md index f394c1f89..104470ac4 100644 --- a/docs/reference/errors-and-warnings/NU1605.md +++ b/docs/reference/errors-and-warnings/NU1605.md @@ -17,7 +17,7 @@ f1_keywords:

    Detected package downgrade: 'PackageB' from 4.0.0 to 3.5.0. Reference the package directly from the project to select a different version.
    'PackageA' 3.5.0 -> 'PackageB' 3.5.0
    'PackageC' 4.0.0 -> 'PackageD' 4.0.0 -> 'PackageB' 4.0.0
    ### Issue -A dependency package specified a version constraint on a higher version of a package than restore ultimately resolved. That is because of the [nearest-wins](../../concepts/dependency-resolution.md#nearest-wins) rule - when resolving packages, the version of the nearer package in the graph will override that of the distant package with the same ID. +A dependency package specified a version constraint on a higher version of a package than restore ultimately resolved. That is because of the [direct-dependency-wins](../../concepts/dependency-resolution.md#direct-dependency-wins) rule - when resolving packages, the version of the nearer package in the graph will override that of the distant package with the same ID. ### Solution To the project exhibiting the restore error, add a package reference to the higher version of the package. @@ -30,7 +30,7 @@ In the example above, you would add a package reference to Package B version 4.0 'PackageB' 4.0.0

    1;|SaaKSg&}=F1g1i= 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 BsnGxc literal 0 HcmV?d00001 diff --git a/docs/concepts/media/direct-dependency-1.png b/docs/concepts/media/direct-dependency-1.png new file mode 100644 index 0000000000000000000000000000000000000000..3004ef451cce8df5480705e69a582351d2b9803d GIT binary patch literal 20777 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 literal 0 HcmV?d00001 diff --git a/docs/concepts/media/direct-dependency-2.png b/docs/concepts/media/direct-dependency-2.png new file mode 100644 index 0000000000000000000000000000000000000000..98290bc38f1a7550b9da5a269ab3e80530b2ad14 GIT binary patch literal 27136 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 WCSiw={#4V;q3?XYtv>L>zy1>wmdMrs literal 0 HcmV?d00001 diff --git a/docs/nuget-org/package-readme-on-nuget-org.md b/docs/nuget-org/package-readme-on-nuget-org.md new file mode 100644 index 000000000..3a4d8304f --- /dev/null +++ b/docs/nuget-org/package-readme-on-nuget-org.md @@ -0,0 +1,39 @@ +--- +title: How to Publish a NuGet Package +description: Detailed explanation of how Readme files on NuGet.org are rendered and what to do when you run into issues. +author: chgill-MSFT +ms.author: chgill +ms.date: 02/23/2021 +ms.topic: conceptual +ms.reviewer: anangaur +--- + +# Readme files on NuGet.org + +[Include a Readme file in your NuGet package](https://docs.microsoft.com/nuget/reference/msbuild-targets#packagereadmefile) to make your package details richer and more informative for your users! + +This is likely one of the first elements users will see when they view your package details page on NuGet.org and is essential to making a good impression! + +## What should be in my Readme + +The information you include in your Readme will vary depending on the type, purpose, and scope of your package. It doesn't need be a single comprehensive document for how to use your package, but it should contain the following items at minimum: +* An introduction to what your package is and what it does. What problems does it solve? +* How to get started with your package. Are there any specific requirements (framework, project type, OS)? +* A link to comprehensive documentation if applicable. +* Code snippets/samples or example images/screenshots. +* Where and how to leave feedback such as link to the project issues, Twitter, bug tracker, or other platform. +* How to contribute, if applicable. + +## Preview your Readme + +To preview your Readme file before it's live on NuGet.org, upload your package using the [Upload Package web portal on NuGet.org](https://docs.microsoft.com/nuget/nuget-org/publish-a-package#web-portal-use-the-upload-package-tab-on-nugetorg) and scroll down to the "Readme File" section of the metadata preview. It should look something like this: + +![Readme File preview](../media) + + + +## Domain allow-list for images and badges + +Due to security and privacy concerns, NuGet.org restricts the domains from which images and badges (SVGs) can be rendered to trusted hosts. + +NuGet.org allows badges from the following trusted domains to be rendered: From cac9998459c57d56dfab1508b5317ba100c2b2ac Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Tue, 23 Feb 2021 18:26:03 -0500 Subject: [PATCH 335/988] Added to REadme doc draft --- docs/nuget-org/package-readme-on-nuget-org.md | 42 ++++++++++++++++--- 1 file changed, 37 insertions(+), 5 deletions(-) diff --git a/docs/nuget-org/package-readme-on-nuget-org.md b/docs/nuget-org/package-readme-on-nuget-org.md index 3a4d8304f..dce844558 100644 --- a/docs/nuget-org/package-readme-on-nuget-org.md +++ b/docs/nuget-org/package-readme-on-nuget-org.md @@ -14,7 +14,7 @@ ms.reviewer: anangaur This is likely one of the first elements users will see when they view your package details page on NuGet.org and is essential to making a good impression! -## What should be in my Readme +## What should my Readme include? The information you include in your Readme will vary depending on the type, purpose, and scope of your package. It doesn't need be a single comprehensive document for how to use your package, but it should contain the following items at minimum: * An introduction to what your package is and what it does. What problems does it solve? @@ -28,12 +28,44 @@ The information you include in your Readme will vary depending on the type, purp To preview your Readme file before it's live on NuGet.org, upload your package using the [Upload Package web portal on NuGet.org](https://docs.microsoft.com/nuget/nuget-org/publish-a-package#web-portal-use-the-upload-package-tab-on-nugetorg) and scroll down to the "Readme File" section of the metadata preview. It should look something like this: -![Readme File preview](../media) +![Readme File preview](media\readme-upload-preview.PNG) +## Domain allow-list for images and badges +Due to security and privacy concerns, NuGet.org restricts the domains from which images and badges can be rendered to trusted hosts. -## Domain allow-list for images and badges +TODO: Reorder the allow-list by popularity + +NuGet.org allows all images (including badges) from the following trusted domains to be rendered: +* api.bintray.com +* api.codacy.com +* api.codeclimate.com +* api.dependabot.com +* api.travis-ci.com +* api.travis-ci.org +* app.fossa.io +* badge.fury.io +* badgen.net +* badges.gitter.im +* bettercodehub.com +* buildstats.info +* ci.appveyor.com +* circleci.com +* codecov.io +* codefactor.io +* coveralls.io +* dev.azure.com +* gitlab.com +* img.shields.io +* isitmaintained.com +* opencollective.com +* snyk.io +* sonarcloud.io +* raw.github.com +* raw.githubusercontent.com +* user-images.githubusercontent.com +* camo.githubusercontent.com -Due to security and privacy concerns, NuGet.org restricts the domains from which images and badges (SVGs) can be rendered to trusted hosts. +If you feel that a another domain should be added to the allow-list, please feel free to [file an issue](https://github.com/NuGet/NuGetGallery/issues) and it will be reviewed by our engineering team. -NuGet.org allows badges from the following trusted domains to be rendered: +Images with relative local paths and images hosted from unsupported domains will not be rendered and will produce a warning on the Readme file preview and package details page. From adfd6973b039be55c4c73a3ef1dd01b51a2a7ddd Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Tue, 23 Feb 2021 18:30:47 -0500 Subject: [PATCH 336/988] Changed title of doc and added to TOC --- docs/nuget-org/TOC.md | 1 + docs/nuget-org/package-readme-on-nuget-org.md | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/nuget-org/TOC.md b/docs/nuget-org/TOC.md index b3ce19bca..d726d159b 100644 --- a/docs/nuget-org/TOC.md +++ b/docs/nuget-org/TOC.md @@ -7,6 +7,7 @@ ## [Publish a package](publish-a-package.md) ## [Package ID prefix reservation](id-prefix-reservation.md) ## [Package deprecation](deprecate-packages.md) +## [Package Readme](package-readme-on-nuget-org.md) # Policies ## [Data Requests](policies/Data-requests.md) ## [Dispute resolution](policies/dispute-resolution.md) diff --git a/docs/nuget-org/package-readme-on-nuget-org.md b/docs/nuget-org/package-readme-on-nuget-org.md index dce844558..6b850147c 100644 --- a/docs/nuget-org/package-readme-on-nuget-org.md +++ b/docs/nuget-org/package-readme-on-nuget-org.md @@ -1,5 +1,5 @@ --- -title: How to Publish a NuGet Package +title: Package Readme description: Detailed explanation of how Readme files on NuGet.org are rendered and what to do when you run into issues. author: chgill-MSFT ms.author: chgill From 650cc0f779879d11a3a78bd77766802ec7d32eeb Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Tue, 23 Feb 2021 18:35:41 -0500 Subject: [PATCH 337/988] Change of title --- docs/nuget-org/package-readme-on-nuget-org.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/nuget-org/package-readme-on-nuget-org.md b/docs/nuget-org/package-readme-on-nuget-org.md index 6b850147c..4e3a0cd84 100644 --- a/docs/nuget-org/package-readme-on-nuget-org.md +++ b/docs/nuget-org/package-readme-on-nuget-org.md @@ -1,5 +1,5 @@ --- -title: Package Readme +title: Package Readme on NuGet.org description: Detailed explanation of how Readme files on NuGet.org are rendered and what to do when you run into issues. author: chgill-MSFT ms.author: chgill @@ -8,7 +8,7 @@ ms.topic: conceptual ms.reviewer: anangaur --- -# Readme files on NuGet.org +# Package Readme on NuGet.org [Include a Readme file in your NuGet package](https://docs.microsoft.com/nuget/reference/msbuild-targets#packagereadmefile) to make your package details richer and more informative for your users! From 4cdded378894fd59dcadb3f2e83c837d5ec9535e Mon Sep 17 00:00:00 2001 From: "Christopher R. Gill" Date: Tue, 23 Feb 2021 18:42:26 -0500 Subject: [PATCH 338/988] Remove TODOs and moving them to PR comments --- docs/nuget-org/package-readme-on-nuget-org.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/docs/nuget-org/package-readme-on-nuget-org.md b/docs/nuget-org/package-readme-on-nuget-org.md index 4e3a0cd84..9cf52db87 100644 --- a/docs/nuget-org/package-readme-on-nuget-org.md +++ b/docs/nuget-org/package-readme-on-nuget-org.md @@ -34,8 +34,6 @@ To preview your Readme file before it's live on NuGet.org, upload your package u Due to security and privacy concerns, NuGet.org restricts the domains from which images and badges can be rendered to trusted hosts. -TODO: Reorder the allow-list by popularity - NuGet.org allows all images (including badges) from the following trusted domains to be rendered: * api.bintray.com * api.codacy.com From e70a68e766c94afc83d9ad7e9c9564c3b78fb9e3 Mon Sep 17 00:00:00 2001 From: Fernando Aguilar Date: Wed, 24 Feb 2021 14:27:44 -0800 Subject: [PATCH 339/988] Feedback 1 --- docs/reference/msbuild-targets.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index 01dc193f6..ad79c7c6d 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -34,7 +34,7 @@ Similarly, you can write an MSBuild task, write your own target and consume NuGe > [!NOTE] > `$(OutputPath)` is relative and expects that you are running the command from the project root. -## NuGet pack target +## pack target For .NET projects that use the `PackageReference` format, using `msbuild -t:pack` draws inputs from the project file to use in creating a NuGet package. @@ -70,7 +70,7 @@ The following table describes the MSBuild properties that can be added to a proj | `PackageType` | `DotNetCliTool, 1.0.0.0;Dependency, 2.0.0.0` | | | | `Summary` | Not supported | | | -### NuGet pack target inputs +### pack target inputs | Property | Description | | - | - | @@ -111,7 +111,7 @@ The following table describes the MSBuild properties that can be added to a proj | `NuspecBasePath` | Base path for the *.nuspec* file. For more information, see [Packing using a .nuspec](#packing-using-a-nuspec). | | `NuspecProperties` | Semicolon separated list of key=value pairs. For more information, see [Packing using a .nuspec](#packing-using-a-nuspec). | -## NuGet pack scenarios +## pack scenarios ### Suppressing dependencies @@ -373,7 +373,7 @@ An example: ``` -## NuGet restore target +## restore target `MSBuild -t:restore` (which `nuget restore` and `dotnet restore` use with .NET Core projects), restores packages referenced in the project file as follows: From a9e8d0d380662b2a6b1f310a098fc6b72a66b391 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Thu, 25 Feb 2021 08:28:22 -0600 Subject: [PATCH 340/988] Add a note to the modern doc on this. --- docs/reference/target-frameworks.md | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/docs/reference/target-frameworks.md b/docs/reference/target-frameworks.md index 06a8ede6e..49168c843 100644 --- a/docs/reference/target-frameworks.md +++ b/docs/reference/target-frameworks.md @@ -18,14 +18,18 @@ NuGet uses target framework references in a variety of places to specifically id - [packages.config](../reference/packages-config.md): The `targetframework` attribute of a dependency specifies the variant of a package to install. > [!Note] -> The NuGet client source code that calculates the tables below is found in the following locations: -> - Supported framework names: [FrameworkConstants.cs](https://github.com/NuGet/NuGet.Client/blob/dev/src/NuGet.Core/NuGet.Frameworks/FrameworkConstants.cs) -> - Framework precedence and mapping: [DefaultFrameworkMappings.cs](https://github.com/NuGet/NuGet.Client/blob/dev/src/NuGet.Core/NuGet.Frameworks/DefaultFrameworkMappings.cs) +> NuGet supports all of the modern .NET target frameworks: +> - For a list of the latest target frameworks, see the [Target frameworks in SDK-style projects](https://docs.microsoft.com/dotnet/standard/frameworks) documentation. ## Supported frameworks A framework is typically referenced by a short target framework moniker or TFM. In .NET Standard this is also generalized to *TxM* to allow a single reference to multiple frameworks. +> [!Note] +> The NuGet client source code that calculates the tables below is found in the following locations: +> - Supported framework names: [FrameworkConstants.cs](https://github.com/NuGet/NuGet.Client/blob/dev/src/NuGet.Core/NuGet.Frameworks/FrameworkConstants.cs) +> - Framework precedence and mapping: [DefaultFrameworkMappings.cs](https://github.com/NuGet/NuGet.Client/blob/dev/src/NuGet.Core/NuGet.Frameworks/DefaultFrameworkMappings.cs) + The NuGet clients support the frameworks in the table below. Equivalents are shown within brackets []. Note that some tools, such as `dotnet`, might use variations of canonical TFMs in some files. For example, `dotnet pack` uses `.NETCoreApp2.0` in a `.nuspec` file rather than `netcoreapp2.0`. The various NuGet client tools handle these variations properly, but you should always use canonical TFMs when editing files directly. | Name | Abbreviation | TFMs/TxMs | From 78caa35b6b3928fa721d1e51d93174807de2eaa9 Mon Sep 17 00:00:00 2001 From: Fernando Aguilar Date: Fri, 5 Mar 2021 19:05:32 -0800 Subject: [PATCH 341/988] Feedback 1 --- docs/reference/msbuild-targets.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index ad79c7c6d..737e50b58 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -107,9 +107,9 @@ The following table describes the MSBuild properties that can be added to a proj | `IncludeContentInPack` | This Boolean value specifies whether any items that have a type of `Content` are included in the resulting package automatically. The default is `true`. | | `BuildOutputTargetFolder` | Specifies the folder where to place the output assemblies. The output assemblies (and other output files) are copied into their respective framework folders. For more information, see [Output assemblies](#output-assemblies). | | `ContentTargetFolders` | Specifies the default location of where all the content files should go if `PackagePath` is not specified for them. The default value is "content;contentFiles". For more information, see [Including content in a package](#including-content-in-a-package). | -| `NuspecFile` | Relative or absolute path to the *.nuspec* file being used for packing. If specified, it's used **exclusively** for packaging information, and any information in the projects is not used. For more information, see [Packing using a .nuspec](#packing-using-a-nuspec). | -| `NuspecBasePath` | Base path for the *.nuspec* file. For more information, see [Packing using a .nuspec](#packing-using-a-nuspec). | -| `NuspecProperties` | Semicolon separated list of key=value pairs. For more information, see [Packing using a .nuspec](#packing-using-a-nuspec). | +| `NuspecFile` | Relative or absolute path to the *.nuspec* file being used for packing. If specified, it's used **exclusively** for packaging information, and any information in the projects is not used. For more information, see [Packing using a .nuspec](#packing-using-a-nuspec-file). | +| `NuspecBasePath` | Base path for the *.nuspec* file. For more information, see [Packing using a .nuspec](#packing-using-a-nuspec-file). | +| `NuspecProperties` | Semicolon separated list of key=value pairs. For more information, see [Packing using a .nuspec](#packing-using-a-nuspec-file). | ## pack scenarios @@ -279,7 +279,7 @@ For historical reasons, NuGet & MSBuild treat paths without an extension as dire When using `MSBuild -t:pack -p:IsTool=true`, all output files, as specified in the [Output Assemblies](#output-assemblies) scenario, are copied to the `tools` folder instead of the `lib` folder. Note that this is different from a `DotNetCliTool` which is specified by setting the `PackageType` in `.csproj` file. -### Packing using a :::no-loc text=".nuspec"::: file +### Packing using a `.nuspec` file Although it is recommended that you [include all the properties](../reference/msbuild-targets.md#pack-target) that are usually in the `.nuspec` file in the project file instead, you can choose to use a `.nuspec` file to pack your project. For a non-SDK-style project that uses `PackageReference`, you must import `NuGet.Build.Tasks.Pack.targets` so that the pack task can be executed. You still need to restore the project before you can pack a nuspec file. (An SDK-style project includes the pack targets by default.) @@ -385,7 +385,7 @@ An example: 1. Write assets file, targets, and props The `restore` target works for projects using the PackageReference format. -`MSBuild 16.5+` also has [opt-in support](#restoring-packagereference-and-packagesconfig-with-msbuild) for the `packages.config` format. +`MSBuild 16.5+` also has [opt-in support](#restoring-packagereference-and-packagesconfig-projects-with-msbuild) for the `packages.config` format. > [!NOTE] > The `restore` target [should not be run](#restoring-and-building-with-one-msbuild-command) in combination with the `build` target. From 33bf7d36ca1e7cfa0da46e916894b86fbefeb237 Mon Sep 17 00:00:00 2001 From: Fernando Aguilar Date: Fri, 5 Mar 2021 19:21:20 -0800 Subject: [PATCH 342/988] Fixing warnings --- docs/concepts/Security-Best-Practices.md | 2 +- docs/consume-packages/Package-References-in-Project-Files.md | 2 +- docs/reference/nuspec.md | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 9d9582b4a..660ae3d5b 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -135,7 +135,7 @@ To configure client trust policies, [see the following documentation](../consume Lock files store the hash of your package’s content. If the content hash of a package you want to install matches with the lock file, it will ensure package repeatability. -To enable lock files, [see the following documentation](../consume-packages/package-references-in-project-files#locking-dependencies). +To enable lock files, [see the following documentation](../consume-packages/package-references-packagereference-in-project-files#locking-dependencies). ## Monitor your supply chain diff --git a/docs/consume-packages/Package-References-in-Project-Files.md b/docs/consume-packages/Package-References-in-Project-Files.md index ca21f71f3..3ed42b500 100644 --- a/docs/consume-packages/Package-References-in-Project-Files.md +++ b/docs/consume-packages/Package-References-in-Project-Files.md @@ -7,7 +7,7 @@ ms.date: 03/16/2018 ms.topic: conceptual --- -# Package references (PackageReference) in project files +# Package references (`PackageReference`) in project files Package references, using the `PackageReference` node, manage NuGet dependencies directly within project files (as opposed to a separate `packages.config` file). Using PackageReference, as it's called, doesn't affect other aspects of NuGet; for example, settings in `NuGet.config` files (including package sources) are still applied as explained in [Common NuGet configurations](configuring-nuget-behavior.md). diff --git a/docs/reference/nuspec.md b/docs/reference/nuspec.md index 9314f696f..7071ec80d 100644 --- a/docs/reference/nuspec.md +++ b/docs/reference/nuspec.md @@ -29,7 +29,7 @@ In this topic: - A `.nuspec` file is not required to create packages for [SDK-style projects](../resources/check-project-format.md) (typically .NET Core and .NET Standard projects that use the [SDK attribute](/dotnet/core/tools/csproj#additions)). (Note that a `.nuspec` is generated when you create the package.) - If you are creating a package using `dotnet.exe pack` or `msbuild pack target`, we recommend that you [include all the properties](../reference/msbuild-targets.md#pack-target) that are usually in the `.nuspec` file in the project file instead. However, you can instead choose to [use a `.nuspec` file to pack using `dotnet.exe` or `msbuild pack target`](../reference/msbuild-targets.md#packing-using-a-nuspec). + If you are creating a package using `dotnet.exe pack` or `msbuild pack target`, we recommend that you [include all the properties](../reference/msbuild-targets.md#pack-target) that are usually in the `.nuspec` file in the project file instead. However, you can instead choose to [use a `.nuspec` file to pack using `dotnet.exe` or `msbuild pack target`](../reference/msbuild-targets.md#packing-using-a-nuspec-file). - For projects migrated from `packages.config` to [PackageReference](../consume-packages/package-references-in-project-files.md), a `.nuspec` file is not required to create the package. Instead, use [msbuild -t:pack](../consume-packages/migrate-packages-config-to-package-reference.md#create-a-package-after-migration). From 85ac519d50155c9d6ca68770408096c41dd23310 Mon Sep 17 00:00:00 2001 From: Fernando Aguilar Date: Fri, 5 Mar 2021 19:38:21 -0800 Subject: [PATCH 343/988] Fixing warnings and broken links --- docs/concepts/Security-Best-Practices.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/concepts/Security-Best-Practices.md b/docs/concepts/Security-Best-Practices.md index 660ae3d5b..3db11969a 100644 --- a/docs/concepts/Security-Best-Practices.md +++ b/docs/concepts/Security-Best-Practices.md @@ -70,7 +70,7 @@ This is typically found in one of two places: - [`packages.config`](../reference/packages-config.md) – Located in the project root. - [``](../consume-packages/package-references-in-project-files.md) – Located in the project file. -Depending on what method you use to manage your NuGet dependencies, you can also use Visual Studio to view your dependencies directly in [Solution Explorer](/visualstudio/ide/solutions-and-projects-in-visual-studio?view=vs-2019#solution-explorer) or [NuGet Package Manager](../consume-packages/install-use-packages-visual-studio.md). +Depending on what method you use to manage your NuGet dependencies, you can also use Visual Studio to view your dependencies directly in [Solution Explorer](/visualstudio/ide/solutions-and-projects-in-visual-studio#solution-explorer) or [NuGet Package Manager](../consume-packages/install-use-packages-visual-studio.md). For CLI environments, you can use the [`dotnet list package`](/dotnet/core/tools/dotnet-list-package) command to list out your project or solution’s dependencies. @@ -135,7 +135,7 @@ To configure client trust policies, [see the following documentation](../consume Lock files store the hash of your package’s content. If the content hash of a package you want to install matches with the lock file, it will ensure package repeatability. -To enable lock files, [see the following documentation](../consume-packages/package-references-packagereference-in-project-files#locking-dependencies). +To enable lock files, [see the following documentation](../consume-packages/package-references-in-project-files.md#locking-dependencies). ## Monitor your supply chain From 6ce04b1732484b36c257e48130db50785f62205a Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Sat, 6 Mar 2021 09:19:16 -0600 Subject: [PATCH 344/988] Update docs/reference/target-frameworks.md Co-authored-by: Andy Zivkovic --- docs/reference/target-frameworks.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/target-frameworks.md b/docs/reference/target-frameworks.md index 49168c843..287f52b7a 100644 --- a/docs/reference/target-frameworks.md +++ b/docs/reference/target-frameworks.md @@ -19,7 +19,7 @@ NuGet uses target framework references in a variety of places to specifically id > [!Note] > NuGet supports all of the modern .NET target frameworks: -> - For a list of the latest target frameworks, see the [Target frameworks in SDK-style projects](https://docs.microsoft.com/dotnet/standard/frameworks) documentation. +> - For a list of the latest target frameworks, see the [Target frameworks in SDK-style projects](/dotnet/standard/frameworks) documentation. ## Supported frameworks From b47c6fc491b1d4a812fa487c36f0af7cc7962384 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Mon, 8 Mar 2021 10:54:47 -0600 Subject: [PATCH 345/988] Add contributing --- CONTRIBUTING.md | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 CONTRIBUTING.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 000000000..f96bdcdda --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,34 @@ +No contribution is too big or too small. + +1. Visit the page to edit on [docs.microsoft.com/nuget](https://docs.microsoft.com/nuget/), then click the **Edit** button on the top right. This brings you to the appropriate markdown page in the repo. +1. Edit the markdown: + 1. If you're including images (use PNGs, generally), place them in the media folder that's in the topic's folder. Links are then `media/.png`. + 1. Relative links to other pages in this docset should be in the form `..//.md` including the training `.md`. If you're linking to another topic in the same folder, then `..//` can be omitted. When using anchors, always remember to include the `.md` before the `#`. + 1. When using external links, especially to docs.microsoft.com (or msdn.microsoft.com for any older content), omit any language tag like "en-us" so that a reader in another language lands on a target page in that same language if it's available. +1. When you're done, enter a commit message below, and click **Propose file change**. +1. Send a pull request for your change. We review PRs on a regular basis. +1. Thank you! + +If you're creating a new topic, keep the following in mind as well: + +1. Always place the new topic in an appropriate subfolder, and follow the conventions for filenames as you see them used here. +1. You must include a metadata block as you see on other topics. Typical defaults (such as for ms.workload and ms.reviewer) are set within docs/docjx.json, so you need only change the following: + + - title: The title that appears in search results. For SEO, this ideally isn't the same as the top-level # (H1) of the article. + - description: The abstract of the article that appears in search results. + - author: the author's GitHub ID, to which issues files for this article are assigned. + - ms.author: if the author is a Microsoft employee, this is the Microsoft alias. Used for reporting and forwarding feedback from other channels. + - manager: Microsoft alias of the author's manager, if applicable. + - ms.date: the date of the last revision or review of the article in mm/dd/yyyy format (use leading zeros). This is a communication to the reader about freshness, so it's not updated for minor changes, only for more significant revisions OR when the article has reverified even if there are no changes. + - ms.topic: used to categorize the article in reports. See table below. Most articles are "conceptual". +1. In addition to adding your page, edit docs/TOC.md to add a link to that page. +1. If you're adding a top-level node to the TOC, also make an entry for it in docs/index.md. + +| ms.topic category | Description | +| --- | --- | +| conceptual | Use for any content that doesn't fall into another. This is set as the default in docfx.json. | +| overview | Use for any overview or user-guide articles, typically only those that live under an "Overview" node in the TOC. | +| quickstart | Anything under the "Quickstart" node in the TOC that's authored according to Quickstart guidelines. | +| tutorial | Anything under the "Tutorial" node in the TOC that's authored according to Tutorial guidelines. | +| reference | Any reference-type article that isn't auto-generated. | +| article | Use for community-contributed content (that is, anything from outside the engineering team or the docs team at Microsoft. | From 3da8efcd5ac400e26c9986af8c8406ea41e6c111 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Sharma?= <737941+loic-sharma@users.noreply.github.com> Date: Mon, 8 Mar 2021 09:47:12 -0800 Subject: [PATCH 346/988] Add column for each client's supported platform (#2318) --- docs/consume-packages/Overview-and-Workflow.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/consume-packages/Overview-and-Workflow.md b/docs/consume-packages/Overview-and-Workflow.md index b0a8f263c..956c13519 100644 --- a/docs/consume-packages/Overview-and-Workflow.md +++ b/docs/consume-packages/Overview-and-Workflow.md @@ -40,9 +40,9 @@ Finally, NuGet's behavior is driven by `Nuget.Config` files. Multiple files can NuGet packages are downloaded and installed using any of the methods in the following table. -| Tool | Description | -| --- | --- | -| [dotnet.exe CLI](install-use-packages-dotnet-cli.md) | (All platforms) CLI tool for .NET Core and .NET Standard libraries, and for SDK-style projects that target .NET Framework (see [SDK attribute](/dotnet/core/tools/csproj#additions)). Retrieves the package identified by \ and adds a reference to the project file. Also retrieves and installs dependencies. | -| Visual Studio | (Windows and Mac) Provides a UI through which you can browse, select, and install packages and their dependencies into a project from a specified package source. Adds references to installed packages to the project file.

    hN@Pi%ncyB(oifW8vrSk0k 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 B%jy6C literal 33156 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 Date: Mon, 3 Aug 2020 14:46:40 -0400 Subject: [PATCH 070/988] Changed some of the phrasing for packing examples --- docs/reference/msbuild-targets.md | 2 +- docs/reference/nuspec.md | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index b76e05855..7fd516a70 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -150,7 +150,7 @@ For the nuspec equivalent, take a look at [nuspec reference for icon](nuspec.md# ### PackageReadmeFile -When packing a readme file, you need to use the `PackageReadmeFile` property to specify the package path, relative to the root of the package. In addition, you need to make sure that the file is included in the package. Readme file size is limited to 1 MB. Supported file formats include only Markdown (*.md*). +When packing a readme file, you need to use the `PackageReadmeFile` property to specify the package path, relative to the root of the package. In addition to this, you need to make sure that the file is included in the package. Readme file size is limited to 1 MB. Supported file formats include only Markdown (*.md*). For example: diff --git a/docs/reference/nuspec.md b/docs/reference/nuspec.md index 35cd12431..a97a2f409 100644 --- a/docs/reference/nuspec.md +++ b/docs/reference/nuspec.md @@ -175,9 +175,9 @@ For the MSBuild equivalent, take a look at [Packing an icon image file](msbuild- #### readme -When packing a readme file, you need to use the `readme` element to specify the package path, relative to the root of the package. In addition, you need to make sure that the file is included in the package. Readme file size is limited to 1 MB. Supported file formats include only Markdown (*.md*). +When packing a readme file, you need to use the `readme` element to specify the package path, relative to the root of the package. In addition to this, you need to make sure that the file is included in the package. Readme file size is limited to 1 MB. Supported file formats include only Markdown (*.md*). -For example, you would add the following to your nuspec when creating a package using nuget.exe: +For example, you would add the following to your nuspec in order to pack a readme file with your project: ```xml From a49ffee4b615158568b5b9f4361e532663ee02af Mon Sep 17 00:00:00 2001 From: "Mike Jones (DEVUE)" Date: Wed, 12 Aug 2020 17:01:35 -0700 Subject: [PATCH 071/988] Removing global header ID per guidance --- docs/docfx.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/docfx.json b/docs/docfx.json index 24199a516..6e24399e9 100644 --- a/docs/docfx.json +++ b/docs/docfx.json @@ -54,7 +54,7 @@ "searchScope": [ "NuGet" ], - "uhfHeaderId": "MSDocsHeader-NuGet" + "uhfHeaderId": [] }, "fileMetadata": {}, "template": [], From 40e839f1280a6b01b613fbd69870039f19c92f35 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Delaporte?= <12201973+fredericDelaporte@users.noreply.github.com> Date: Thu, 13 Aug 2020 18:21:03 +0200 Subject: [PATCH 072/988] Fix `PackageVersion` link (#2024) Including the `.md` extension for an absolute link seems to be unsupported, the `.md` stay in the resulting html link, causing it to be invalid. --- docs/create-packages/Prerelease-Packages.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/create-packages/Prerelease-Packages.md b/docs/create-packages/Prerelease-Packages.md index 8c391114d..388ad2e41 100644 --- a/docs/create-packages/Prerelease-Packages.md +++ b/docs/create-packages/Prerelease-Packages.md @@ -19,7 +19,7 @@ To support the software release lifecycle, NuGet 1.6 and later allows for the di You can specify such versions using one of the following ways: -- **If your project uses [`PackageReference`](../consume-packages/package-references-in-project-files.md)**: include the semantic version suffix in the `.csproj` file's [`PackageVersion`](/dotnet/core/tools/csproj.md#packageversion) element: +- **If your project uses [`PackageReference`](../consume-packages/package-references-in-project-files.md)**: include the semantic version suffix in the `.csproj` file's [`PackageVersion`](/dotnet/core/tools/csproj#packageversion) element: ```xml From fced6bc844df37383d8d6ffe3f3258bd704d2e1f Mon Sep 17 00:00:00 2001 From: Tom Dykstra Date: Thu, 13 Aug 2020 09:21:40 -0700 Subject: [PATCH 073/988] Don't escape quotation marks in NuspecProperties example (#2012) See https://github.com/dotnet/docs/issues/13281#issuecomment-593575180 --- docs/reference/msbuild-targets.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/msbuild-targets.md b/docs/reference/msbuild-targets.md index fc4ae633a..d42113633 100644 --- a/docs/reference/msbuild-targets.md +++ b/docs/reference/msbuild-targets.md @@ -262,7 +262,7 @@ Although it is recommended that you [include all the properties](../reference/ms The target framework of the project file is irrelevant and not used when packing a nuspec. The following three MSBuild properties are relevant to packing using a `.nuspec`: 1. `NuspecFile`: relative or absolute path to the `.nuspec` file being used for packing. -1. `NuspecProperties`: a semicolon-separated list of key=value pairs. Due to the way MSBuild command-line parsing works, multiple properties must be specified as follows: `-p:NuspecProperties=\"key1=value1;key2=value2\"`. +1. `NuspecProperties`: a semicolon-separated list of key=value pairs. Due to the way MSBuild command-line parsing works, multiple properties must be specified as follows: `-p:NuspecProperties="key1=value1;key2=value2"`. 1. `NuspecBasePath`: Base path for the `.nuspec` file. If using `dotnet.exe` to pack your project, use a command like the following: From 0666f950a6bbc6c71cb931c340ba496a1e5a14b2 Mon Sep 17 00:00:00 2001 From: Nikolche Kolev Date: Thu, 13 Aug 2020 09:25:16 -0700 Subject: [PATCH 074/988] Update docs/reference/cli-reference/cli-ref-list.md Co-authored-by: Andy Zivkovic --- docs/reference/cli-reference/cli-ref-list.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/docs/reference/cli-reference/cli-ref-list.md b/docs/reference/cli-reference/cli-ref-list.md index 6f89a71df..fd814e002 100644 --- a/docs/reference/cli-reference/cli-ref-list.md +++ b/docs/reference/cli-reference/cli-ref-list.md @@ -19,7 +19,7 @@ Displays a list of packages from a given source. If no sources are specified, al nuget list [search terms] [options] ``` -where the optional search terms will filter the displayed list. [Search terms](https://docs.microsoft.com/en-us/nuget/consume-packages/finding-and-choosing-packages#search-syntax) are applied to the names of packages, tags, and package descriptions just as they are when using them on nuget.org. +where the optional search terms will filter the displayed list. [Search terms](../../consume-packages/finding-and-choosing-packages#search-syntax) are applied to the names of packages, tags, and package descriptions just as they are when using them on nuget.org. ## Options @@ -59,4 +59,3 @@ List JSON-related packages from multiple sources/feeds: ``` nuget list JSON -Source "https://nuget.org/api/v2" -Source "https://other-feed-url-goes-here/" ``` - From 79c35a19a27aedffb7b399809240285891078b37 Mon Sep 17 00:00:00 2001 From: Anand Gaurav Date: Thu, 13 Aug 2020 09:31:20 -0700 Subject: [PATCH 075/988] Update NuGet-FAQ.md Removing the reference to Solution level package management as per https://github.com/NuGet/docs.microsoft.com-nuget/issues/2117 --- docs/resources/NuGet-FAQ.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/docs/resources/NuGet-FAQ.md b/docs/resources/NuGet-FAQ.md index fe380a7e2..f9a7069cb 100644 --- a/docs/resources/NuGet-FAQ.md +++ b/docs/resources/NuGet-FAQ.md @@ -114,10 +114,6 @@ See [Bulk publishing NuGet packages](http://jeffhandley.com/archive/2012/12/13/B ## Working with packages -**What is the difference between a project-level package and a solution-level package?** - -A solution-level package (NuGet 3.x+) is installed only once in a solution and is then available for all projects in the solution. A project-level package is installed in each project that uses it. A solution-level package might also install new commands that can be called from within the Package Manager Console. - **Is it possible to install NuGet packages without Internet connectivity?** Yes, see Scott Hanselman's Blog post [How to access NuGet when nuget.org is down (or you're on a plane)](http://www.hanselman.com/blog/HowToAccessNuGetWhenNuGetorgIsDownOrYoureOnAPlane.aspx) (hanselman.com). From e9a0d3f5184a0e0bc09388bb566d03facc5b91fb Mon Sep 17 00:00:00 2001 From: Justin Johnson Date: Thu, 13 Aug 2020 10:32:52 -0600 Subject: [PATCH 076/988] Clarified use case for Add-BindingRedirect --- docs/reference/ps-reference/ps-ref-add-bindingredirect.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/docs/reference/ps-reference/ps-ref-add-bindingredirect.md b/docs/reference/ps-reference/ps-ref-add-bindingredirect.md index 820f4bc9f..0d02fd24a 100644 --- a/docs/reference/ps-reference/ps-ref-add-bindingredirect.md +++ b/docs/reference/ps-reference/ps-ref-add-bindingredirect.md @@ -13,6 +13,9 @@ ms.topic: reference Examines all assemblies within the output path for a project and adds binding redirects to the application or web configuration file where necessary. This command is run automatically when installing a package. +> [!NOTE] +> This only applies to scenarios using a packages.config file. For more information, see [NuGet packages.config file reference](~/reference/packages-config.md). + For details on binding redirects and why they are used, see [Redirecting Assembly Versions](/dotnet/framework/configure-apps/redirect-assembly-versions) in the .NET documentation. ## Syntax @@ -39,4 +42,4 @@ None of these parameters accept pipeline input or wildcard characters. Add-BindingRedirect MyProject Add-BindingRedirect -ProjectName MyProject -``` \ No newline at end of file +``` From 493cc6c6bbeda892c4b83fa638d4f0e675cf6160 Mon Sep 17 00:00:00 2001 From: Thiago Grandesso Date: Thu, 13 Aug 2020 18:34:29 +0200 Subject: [PATCH 077/988] Fix a small word typo: seee is now see - Update creating-a-package-dotnet-cli.md (#2034) --- docs/create-packages/creating-a-package-dotnet-cli.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/create-packages/creating-a-package-dotnet-cli.md b/docs/create-packages/creating-a-package-dotnet-cli.md index c0be34491..c4a62b387 100644 --- a/docs/create-packages/creating-a-package-dotnet-cli.md +++ b/docs/create-packages/creating-a-package-dotnet-cli.md @@ -61,7 +61,7 @@ You can also set the optional properties, such as `Title`, `PackageDescription`, > [!NOTE] > For packages built for public consumption, pay special attention to the **PackageTags** property, as tags help others find your package and understand what it does. -For details on declaring dependencies and specifying version numbers, see [Package references in project files](../consume-packages/package-references-in-project-files.md) and [Package versioning](../concepts/package-versioning.md). It is also possible to surface assets from dependencies directly in the package by using the `` and `` attributes. For more information, seee [Controlling dependency assets](../consume-packages/package-references-in-project-files.md#controlling-dependency-assets). +For details on declaring dependencies and specifying version numbers, see [Package references in project files](../consume-packages/package-references-in-project-files.md) and [Package versioning](../concepts/package-versioning.md). It is also possible to surface assets from dependencies directly in the package by using the `` and `` attributes. For more information, see [Controlling dependency assets](../consume-packages/package-references-in-project-files.md#controlling-dependency-assets). ## Add an optional description field From 8a5a156ee597b12a9db1c3da1d7074539f810f06 Mon Sep 17 00:00:00 2001 From: Joel Verhagen Date: Thu, 13 Aug 2020 10:02:05 -0700 Subject: [PATCH 078/988] Add note about nuspec elements being case sensitive Address https://github.com/NuGet/docs.microsoft.com-nuget/issues/2039 --- docs/reference/nuspec.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/reference/nuspec.md b/docs/reference/nuspec.md index b9b179c92..9b3a921df 100644 --- a/docs/reference/nuspec.md +++ b/docs/reference/nuspec.md @@ -60,6 +60,10 @@ For a clear visual representation of the schema, open the schema file in Visual ![Visual Studio Schema Explorer with nuspec.xsd open](media/SchemaExplorer.png) +All XML element names in the .nuspec file are case-sensitive, as is the case for XML in general. For example, using the +metadata element `` is correct and `` is not correct. The proper casing for each element name +is documented below. + ### Required metadata elements Although the following elements are the minimum requirements for a package, you should consider adding the [optional metadata elements](#optional-metadata-elements) to improve the overall experience developers have with your package. From f3444674edfa0289b406aad2f818b96f83e9d943 Mon Sep 17 00:00:00 2001 From: Heng Liu Date: Thu, 13 Aug 2020 12:06:29 -0700 Subject: [PATCH 079/988] add certificate to sign command examples --- docs/reference/cli-reference/cli-ref-sign.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/reference/cli-reference/cli-ref-sign.md b/docs/reference/cli-reference/cli-ref-sign.md index b0af62c6b..710b9d0a2 100644 --- a/docs/reference/cli-reference/cli-ref-sign.md +++ b/docs/reference/cli-reference/cli-ref-sign.md @@ -49,7 +49,7 @@ where `` is one or more `.nupkg` files. ## Examples ```cli -nuget sign MyPackage.nupkg -Timestamper http://timestamp.test +nuget sign MyPackage.nupkg -CertificatePath .\..\certificate.pfx -Timestamper http://timestamp.test -nuget sign .\..\MyPackage.nupkg -Timestamper http://timestamp.test -OutputDirectory .\..\Signed +nuget sign .\..\MyPackage.nupkg -CertificateStoreLocation CurrentUser -CertificateStoreName My -CertificateSubjectName 'subject name' -Timestamper http://timestamp.test -OutputDirectory .\..\Signed ``` From 4e80d7be9f449ee7cab4047cdd1401de82ba9358 Mon Sep 17 00:00:00 2001 From: Jon Douglas Date: Thu, 13 Aug 2020 14:51:35 -0500 Subject: [PATCH 080/988] Update to NU5500 to be consistent. --- docs/reference/errors-and-warnings/NU5500.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/errors-and-warnings/NU5500.md b/docs/reference/errors-and-warnings/NU5500.md index 5259bd4cf..5c94787c9 100644 --- a/docs/reference/errors-and-warnings/NU5500.md +++ b/docs/reference/errors-and-warnings/NU5500.md @@ -14,7 +14,7 @@ f1_keywords: ### Issue -The NuGet pack operation had a problem. NU5000 is used when we haven't yet assigned a unique warning code for that issue. So we can improve, please feel free to file the issue with details of your error. +The NuGet pack operation had a problem. NU5500 is used when we haven't yet assigned a unique warning code for that issue. So we can improve, please feel free to file the issue with details of your error. ### Solution From 6718eb4ccb126c299fc466c793f88e8a417d86de Mon Sep 17 00:00:00 2001 From: Advay Tandon Date: Thu, 13 Aug 2020 16:05:56 -0400 Subject: [PATCH 081/988] Updated error codes/files to reflect removal of 1 MB size limit check on pack from implementation --- docs/reference/errors-and-warnings/NU5040.md | 8 +-- docs/reference/errors-and-warnings/NU5041.md | 47 +++++++++++++-- docs/reference/errors-and-warnings/NU5042.md | 62 -------------------- 3 files changed, 46 insertions(+), 71 deletions(-) delete mode 100644 docs/reference/errors-and-warnings/NU5042.md diff --git a/docs/reference/errors-and-warnings/NU5040.md b/docs/reference/errors-and-warnings/NU5040.md index 80d0d802a..3bffbcd5f 100644 --- a/docs/reference/errors-and-warnings/NU5040.md +++ b/docs/reference/errors-and-warnings/NU5040.md @@ -10,16 +10,16 @@ f1_keywords: - NU5040 --- -# NuGet Error NU5040 +# NuGet Error NU5041 -