Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Issues with preprocessed nuget contentFile handling #1898

Open
nguerrera opened this issue Jan 25, 2018 · 3 comments
Open

Issues with preprocessed nuget contentFile handling #1898

nguerrera opened this issue Jan 25, 2018 · 3 comments
Milestone

Comments

@nguerrera
Copy link
Contributor

nguerrera commented Jan 25, 2018

Found by code inspection while implementing #1857:

  1. We only add preprocessed content with CopyToOutput=true to ReferenceCopyLocalPaths when CopyLocalLockFileAssemblies is true, but they should be copied irrespective of that setting.

  2. We set TargetPath based on the OutputPath of the item, but ReferenceCopyLocalPaths only respect DestinationSubDirectory: https://github.com/Microsoft/msbuild/blob/c81a2935b54d7a5fac075d472e09e72ac198b893/src/Tasks/Microsoft.Common.CurrentVersion.targets#L4297

  3. Every other incremental build will recompile if there is a preprocessed compile item.

    • This is because we only add to FileWrites if we produced the file and then IncrementalClean comes along and deletes it.

I suspect (1) and (2) haven't been noticed because a contentFile item that is both preprocessed and copied to output is rare. I started to fix these inline with #1857, but found it hard to find package assets to stress these cases so I'm punting it to this bug since this behavior has always been like this.

@nguerrera
Copy link
Contributor Author

I'm also leaving in place code that handles non-preprocessed files in the task even though we are only responsible for the preprocessed items as nuget puts the others directly in generated props. We set a bool to trigger this behavior, but there is dead code that we should eliminate.

@livarcocc livarcocc added this to the Unknown milestone Jan 27, 2018
@livarcocc livarcocc modified the milestones: Backlog, 3.0.1xx Mar 7, 2019
@livarcocc
Copy link
Contributor

Pulling this into 3.0 so that we can remove our usage of SHA1.

@nguerrera nguerrera modified the milestones: 3.0.1xx, 3.1.1xx Aug 20, 2019
@nguerrera
Copy link
Contributor Author

FYI, @sfoslund, @dsplaisted Looks like your fix will also fix issue 1 of 3 here

@nguerrera nguerrera assigned sfoslund and unassigned nguerrera and sfoslund Mar 7, 2020
@nguerrera nguerrera modified the milestones: 3.1.1xx, Backlog Mar 7, 2020
GangWang01 pushed a commit to GangWang01/sdk that referenced this issue Jun 7, 2022
* Join macro

* Make default format for the GUID macro overridable

Fixes dotnet#1737

* Add links to the different template content repos in the readme

* Convert repo list to bullets

* Adding netstandard2.1 to the list of TFMs for 3.0

* Releases the original source location mount point

* Change Build pool for internal builds (dotnet#1823)

* Removing the SourceLink packages since it is provided by Arcade

* Lowercase the content include path in the template pack csproj files

* Add gitignore template

* Update azure-pipelines.yml

* Update web.config item template

This updates the web.config item template to align with what `dotnet publish` produces when publishing

* Update template_feed/Microsoft.DotNet.Common.ItemTemplates/content/WebConfig/web.config

Co-Authored-By: Justin Kotalik <jukotali@microsoft.com>

* Merge master into stabilize (dotnet#1905)

* Update dependencies from https://github.com/dotnet/arcade build 20190418.7 (dotnet#1867)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19218.7

* Update dependencies from https://github.com/dotnet/arcade build 20190422.2 (dotnet#1870)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19222.2

* Update dependencies from https://github.com/dotnet/arcade build 20190423.2 (dotnet#1871)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19223.2

* Update dependencies from https://github.com/dotnet/arcade build 20190424.9 (dotnet#1873)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19224.9

* Update dependencies from https://github.com/dotnet/arcade build 20190425.5 (dotnet#1874)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19225.5

* Update dependencies from https://github.com/dotnet/arcade build 20190426.3 (dotnet#1875)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19226.3

* Update dependencies from https://github.com/dotnet/arcade build 20190429.8 (dotnet#1876)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19229.8

* Update dependencies from https://github.com/dotnet/arcade build 20190430.6 (dotnet#1877)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19230.6

* [master] Update dependencies from dotnet/arcade (dotnet#1879)

* Update dependencies from https://github.com/dotnet/arcade build 20190501.6

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19251.6

* Update dependencies from https://github.com/dotnet/arcade build 20190502.2

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19252.2

* Update dependencies from https://github.com/dotnet/arcade build 20190503.8 (dotnet#1881)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19253.8

* Update dependencies from https://github.com/dotnet/arcade build 20190504.1 (dotnet#1882)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19254.1

* Update dependencies from https://github.com/dotnet/arcade build 20190505.2 (dotnet#1883)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19255.2

* Update dependencies from https://github.com/dotnet/arcade build 20190506.12 (dotnet#1886)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19256.12

* [master] Update dependencies from dotnet/arcade (dotnet#1888)

* Update dependencies from https://github.com/dotnet/arcade build 20190507.7

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19257.7

* Update dependencies from https://github.com/dotnet/arcade build 20190508.5

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19258.5

* Update dependencies from https://github.com/dotnet/arcade build 20190509.9 (dotnet#1889)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19259.9

* Update dependencies from https://github.com/dotnet/arcade build 20190510.2 (dotnet#1890)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19260.2

* Update dependencies from https://github.com/dotnet/arcade build 20190511.1 (dotnet#1891)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19261.1

* Update dependencies from https://github.com/dotnet/arcade build 20190512.1 (dotnet#1892)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19262.1

* Update dependencies from https://github.com/dotnet/arcade build 20190513.3 (dotnet#1893)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19263.3

* [master] Update dependencies from dotnet/arcade (dotnet#1895)

* Update dependencies from https://github.com/dotnet/arcade build 20190514.13

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19264.13

* Update dependencies from https://github.com/dotnet/arcade build 20190516.2

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19266.2

* Update dependencies from https://github.com/dotnet/arcade build 20190516.4

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19266.4

* Update dependencies from https://github.com/dotnet/arcade build 20190517.7

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19267.7

* Update dependencies from https://github.com/dotnet/arcade build 20190518.2

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19268.2

* Update dependencies from https://github.com/dotnet/arcade build 20190520.1

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19270.1

* Update dependencies from https://github.com/dotnet/arcade build 20190520.2

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19270.2

* Updating the glob.json to include the 2.1.x version

* Update dependencies from https://github.com/dotnet/arcade build 20190521.7 (dotnet#1897)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19271.7

* Update dependencies from https://github.com/dotnet/arcade build 20190522.13 (dotnet#1898)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19272.13

* Update dependencies from https://github.com/dotnet/arcade build 20190523.11 (dotnet#1899)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19273.11

* Update dependencies from https://github.com/dotnet/arcade build 20190524.6 (dotnet#1901)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19274.6

* Update dependencies from https://github.com/dotnet/arcade build 20190528.1 (dotnet#1903)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19278.1

* Merging stabilize into master (dotnet#1904)

* Join macro

* Make default format for the GUID macro overridable

Fixes dotnet#1737

* Add links to the different template content repos in the readme

* Convert repo list to bullets

* Adding netstandard2.1 to the list of TFMs for 3.0

* Releases the original source location mount point

* Change Build pool for internal builds (dotnet#1823)

* Removing the SourceLink packages since it is provided by Arcade

* Lowercase the content include path in the template pack csproj files

* Add gitignore template

* Update azure-pipelines.yml

* Update web.config item template

This updates the web.config item template to align with what `dotnet publish` produces when publishing

* Update template_feed/Microsoft.DotNet.Common.ItemTemplates/content/WebConfig/web.config

Co-Authored-By: Justin Kotalik <jukotali@microsoft.com>

* Update --langVersion option's description

* Removing Microsoft.Extensions.CommandLineUtils references from the repo
GangWang01 pushed a commit to GangWang01/sdk that referenced this issue Jul 11, 2022
* Join macro

* Make default format for the GUID macro overridable

Fixes dotnet#1737

* Add links to the different template content repos in the readme

* Convert repo list to bullets

* Adding netstandard2.1 to the list of TFMs for 3.0

* Releases the original source location mount point

* Change Build pool for internal builds (dotnet#1823)

* Removing the SourceLink packages since it is provided by Arcade

* Lowercase the content include path in the template pack csproj files

* Add gitignore template

* Update azure-pipelines.yml

* Update web.config item template

This updates the web.config item template to align with what `dotnet publish` produces when publishing

* Update template_feed/Microsoft.DotNet.Common.ItemTemplates/content/WebConfig/web.config

Co-Authored-By: Justin Kotalik <jukotali@microsoft.com>

* Merge master into stabilize (dotnet#1905)

* Update dependencies from https://github.com/dotnet/arcade build 20190418.7 (dotnet#1867)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19218.7

* Update dependencies from https://github.com/dotnet/arcade build 20190422.2 (dotnet#1870)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19222.2

* Update dependencies from https://github.com/dotnet/arcade build 20190423.2 (dotnet#1871)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19223.2

* Update dependencies from https://github.com/dotnet/arcade build 20190424.9 (dotnet#1873)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19224.9

* Update dependencies from https://github.com/dotnet/arcade build 20190425.5 (dotnet#1874)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19225.5

* Update dependencies from https://github.com/dotnet/arcade build 20190426.3 (dotnet#1875)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19226.3

* Update dependencies from https://github.com/dotnet/arcade build 20190429.8 (dotnet#1876)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19229.8

* Update dependencies from https://github.com/dotnet/arcade build 20190430.6 (dotnet#1877)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19230.6

* [master] Update dependencies from dotnet/arcade (dotnet#1879)

* Update dependencies from https://github.com/dotnet/arcade build 20190501.6

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19251.6

* Update dependencies from https://github.com/dotnet/arcade build 20190502.2

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19252.2

* Update dependencies from https://github.com/dotnet/arcade build 20190503.8 (dotnet#1881)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19253.8

* Update dependencies from https://github.com/dotnet/arcade build 20190504.1 (dotnet#1882)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19254.1

* Update dependencies from https://github.com/dotnet/arcade build 20190505.2 (dotnet#1883)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19255.2

* Update dependencies from https://github.com/dotnet/arcade build 20190506.12 (dotnet#1886)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19256.12

* [master] Update dependencies from dotnet/arcade (dotnet#1888)

* Update dependencies from https://github.com/dotnet/arcade build 20190507.7

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19257.7

* Update dependencies from https://github.com/dotnet/arcade build 20190508.5

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19258.5

* Update dependencies from https://github.com/dotnet/arcade build 20190509.9 (dotnet#1889)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19259.9

* Update dependencies from https://github.com/dotnet/arcade build 20190510.2 (dotnet#1890)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19260.2

* Update dependencies from https://github.com/dotnet/arcade build 20190511.1 (dotnet#1891)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19261.1

* Update dependencies from https://github.com/dotnet/arcade build 20190512.1 (dotnet#1892)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19262.1

* Update dependencies from https://github.com/dotnet/arcade build 20190513.3 (dotnet#1893)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19263.3

* [master] Update dependencies from dotnet/arcade (dotnet#1895)

* Update dependencies from https://github.com/dotnet/arcade build 20190514.13

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19264.13

* Update dependencies from https://github.com/dotnet/arcade build 20190516.2

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19266.2

* Update dependencies from https://github.com/dotnet/arcade build 20190516.4

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19266.4

* Update dependencies from https://github.com/dotnet/arcade build 20190517.7

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19267.7

* Update dependencies from https://github.com/dotnet/arcade build 20190518.2

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19268.2

* Update dependencies from https://github.com/dotnet/arcade build 20190520.1

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19270.1

* Update dependencies from https://github.com/dotnet/arcade build 20190520.2

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19270.2

* Updating the glob.json to include the 2.1.x version

* Update dependencies from https://github.com/dotnet/arcade build 20190521.7 (dotnet#1897)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19271.7

* Update dependencies from https://github.com/dotnet/arcade build 20190522.13 (dotnet#1898)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19272.13

* Update dependencies from https://github.com/dotnet/arcade build 20190523.11 (dotnet#1899)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19273.11

* Update dependencies from https://github.com/dotnet/arcade build 20190524.6 (dotnet#1901)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19274.6

* Update dependencies from https://github.com/dotnet/arcade build 20190528.1 (dotnet#1903)

- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19278.1

* Merging stabilize into master (dotnet#1904)

* Join macro

* Make default format for the GUID macro overridable

Fixes dotnet#1737

* Add links to the different template content repos in the readme

* Convert repo list to bullets

* Adding netstandard2.1 to the list of TFMs for 3.0

* Releases the original source location mount point

* Change Build pool for internal builds (dotnet#1823)

* Removing the SourceLink packages since it is provided by Arcade

* Lowercase the content include path in the template pack csproj files

* Add gitignore template

* Update azure-pipelines.yml

* Update web.config item template

This updates the web.config item template to align with what `dotnet publish` produces when publishing

* Update template_feed/Microsoft.DotNet.Common.ItemTemplates/content/WebConfig/web.config

Co-Authored-By: Justin Kotalik <jukotali@microsoft.com>

* Update --langVersion option's description

* Removing Microsoft.Extensions.CommandLineUtils references from the repo
JL03-Yue pushed a commit that referenced this issue Mar 19, 2024
…e/6.0.3xx

Merge release/6.0.1xx to release/6.0.3xx
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants