From 6b4a2dad4bce7cbd06a057b5760165ed9ac6157c Mon Sep 17 00:00:00 2001 From: Anton Curmanschii <39066090+AntonC9018@users.noreply.github.com> Date: Mon, 6 Dec 2021 21:40:28 +0000 Subject: [PATCH 1/2] Fix typo --- readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/readme.md b/readme.md index abcec3fc..e267c59f 100644 --- a/readme.md +++ b/readme.md @@ -123,7 +123,7 @@ b. **FrameworkSpecific**: *true*/*false*, determines whether the project's targe c. **TargetPath**: optional PackFolder-relative path for the item. If not provided, the relative path of the item in the project (or its *Link* metadata) is used. -When an item specifies *FrameworkSpecific=true*, the project's target framework is added to the final package path, such as `lib\netstandard2.0\My.dll`. Since the package folder itself typically determines whether it contains framework-specific files or not, the *FrameworkSpecific* value has sensible defaults so you don't have to specify it unless you wnat to override it. The [default values from NuGetizer.props](src/NuGetizer.Tasks/NuGetizer.props) are: +When an item specifies *FrameworkSpecific=true*, the project's target framework is added to the final package path, such as `lib\netstandard2.0\My.dll`. Since the package folder itself typically determines whether it contains framework-specific files or not, the *FrameworkSpecific* value has sensible defaults so you don't have to specify it unless you want to override it. The [default values from NuGetizer.props](src/NuGetizer.Tasks/NuGetizer.props) are: | PackFolder | FrameworkSpecific | |------------------|-------------------| From ce4557ee623bf860f6fead74b09363ad4a71b9aa Mon Sep 17 00:00:00 2001 From: Anton Curmanschii <39066090+AntonC9018@users.noreply.github.com> Date: Thu, 9 Dec 2021 16:35:58 +0000 Subject: [PATCH 2/2] Update readme.md --- readme.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/readme.md b/readme.md index e267c59f..32812c84 100644 --- a/readme.md +++ b/readme.md @@ -208,13 +208,13 @@ When copying items to the output directory, you're implicitly saying that those Given this common scenario, NuGetizer changes the default `PackFolder` metadata for packable items (i.e. those with explicit `Pack=true` metadata or defaulted to *true*, such as `Content` items) to match the `PackFolder` property defined for the project's built output, whenever `CopyToOutputDirectory` is not empty or *Never*. -Like other default inference behaviors, you can always opt out of it by specifying an explicit *PackFolder` item metadata. +Like other default inference behaviors, you can always opt out of it by specifying an explicit `PackFolder` item metadata. In addition, the resulting `PackageFile` items for these items point to the location in the project's output folder, rather than the source location. This makes it easier to have custom behavior that might modify the item after copying to the output directory. ### PackageReference -Package references are turned into package dependencies by default (essentially converting `` to ``), unless `PackDependencies` property is `false`. If the package reference specifies `PrivateAssets="all"`, however, it's not added as a dependency. Instead, in that case, all the contributed files to the compilation are placed in the same `PackFolder` as the project's build output (if packable, depending on `PackBuildOutput` property). +Package references are turned into package dependencies by default (essentially converting `` to ``), unless `PackDependencies` property is `false`. If the package reference specifies `PrivateAssets="all"`, however, it's not added as a dependency. Instead, in that case, all the files contributed to the compilation are placed in the same `PackFolder` as the project's build output (if packable, depending on `PackBuildOutput` property). Build-only dependencies that don't contribute assemblies to the output (i.e. analyzers or things like [GitInfo](https://github.com/kzu/GitInfo) or [ThisAssembly](https://github.com/kzu/ThisAssembly) won't cause any extra items. @@ -283,7 +283,7 @@ Finally, you can focedly turn a project reference build output into a private as ## Advanced Features -This section contains miscelaneous useful features that are typically used in advanced scenarios and +This section contains miscellaneous useful features that are typically used in advanced scenarios and are not necessarily mainstream. ### Dynamically Extending Package Contents @@ -305,7 +305,7 @@ place them all under the `docs` folder in the `.nupkg`, preserving their origina ### Packing arbitrary files from referenced packages If you want to pack files from referenced packages, you can simply add `PackageReference` attribute -to `PackageFile`. Say we want to resuse the awesome icon from the +to `PackageFile`. Say we want to reuse the awesome icon from the [ThisAssembly](https://nuget.org/packages/ThisAssembly) package, we can just bring it in with: ```xml