Skip to content

Referenced RCL project is built even though there are no recent changes to it #5069

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

Closed
kichalla opened this issue May 1, 2018 · 4 comments
Closed
Labels
affected-medium This issue impacts approximately half of our customers area-mvc Includes: MVC, Actions and Controllers, Localization, CORS, most templates bug This issue describes a behavior which is not expected - a bug. feature-razor-pages reevaluate We need to reevaluate the issue and make a decision about it severity-nice-to-have This label is used by an internal tool
Milestone

Comments

@kichalla
Copy link
Contributor

kichalla commented May 1, 2018

Repro:

  • Create a RP web application
  • Add a RCL project to the solution | reference this RCL project from the RP application
  • Build RP application
  • Update the RCL project's Page1.cshtml's title to something else
  • Build RP application (this is expected)
  • Build RP application again (you see that the RCL project is being built again even though there aren't any changes)

Build output (in sequence...check the title for more info):
https://gist.github.com/kichalla/6a099b89d4aad043a3971f3b43b4f157
https://gist.github.com/kichalla/a9e9a5eb952f7adde54e568ef79b57c1
https://gist.github.com/kichalla/d0f4337bad4137934362566cd436888b

When I enabled Info level logging, I see the following output:

1>FastUpToDate: Latest write timestamp on input is 5/1/2018 11:18:25 AM on 'C:\Users\kichalla\source\repos\WebApplication28\RCL\Areas\MyFeature\Pages\Page1.cshtml'. (RCL)
1>FastUpToDate: Earliest write timestamp on output is 5/1/2018 11:16:45 AM on 'C:\Users\kichalla\source\repos\WebApplication28\RCL\bin\Debug\netstandard2.0\RCL.dll'. (RCL)
1>FastUpToDate: Output is newer than input, not up to date. (RCL)
1>FastUpToDate: Project is not up to date. (RCL)
1>------ Build started: Project: RCL, Configuration: Debug Any CPU ------
1>You are working with a preview version of the .NET Core SDK. You can define the SDK version via a global.json file in the current project. More at https://go.microsoft.com/fwlink/?linkid=869452
1>RCL -> C:\Users\kichalla\source\repos\WebApplication28\RCL\bin\Debug\netstandard2.0\RCL.dll
1>RCL -> C:\Users\kichalla\source\repos\WebApplication28\RCL\bin\Debug\netstandard2.0\RCL.Views.dll
2>FastUpToDate: Latest write timestamp on input is 5/1/2018 11:16:45 AM on 'C:\Users\kichalla\source\repos\WebApplication28\RCL\bin\Debug\netstandard2.0\RCL.dll'. (WebApplication28)
2>FastUpToDate: Earliest write timestamp on output is 5/1/2018 11:16:52 AM on 'C:\Users\kichalla\source\repos\WebApplication28\WebApplication28\bin\Debug\netcoreapp2.1\WebApplication28.dll'. (WebApplication28)
2>FastUpToDate: Latest write timestamp on input marker is 5/1/2018 11:18:30 AM on 'C:\Users\kichalla\source\repos\WebApplication28\RCL\obj\Debug\netstandard2.0\RCL.csproj.CopyComplete'. (WebApplication28)
2>FastUpToDate: Write timestamp on output marker is 5/1/2018 11:16:57 AM on 'C:\Users\kichalla\source\repos\WebApplication28\WebApplication28\obj\Debug\netcoreapp2.1\WebApplication28.csproj.CopyComplete'. (WebApplication28)
2>FastUpToDate: Input marker is newer than output marker, not up to date. (WebApplication28)
2>FastUpToDate: Project is not up to date. (WebApplication28)
2>------ Build started: Project: WebApplication28, Configuration: Debug Any CPU ------
2>WebApplication28 -> C:\Users\kichalla\source\repos\WebApplication28\WebApplication28\bin\Debug\netcoreapp2.1\WebApplication28.dll
2>WebApplication28 -> C:\Users\kichalla\source\repos\WebApplication28\WebApplication28\bin\Debug\netcoreapp2.1\WebApplication28.Views.dll
========== Build: 2 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========

Notice the following block...can it say 'Latest write timestamp' on both these lines? and also it should be input is newer than output?
1>FastUpToDate: Latest write timestamp on input is 5/1/2018 11:18:25 AM on 'C:\Users\kichalla\source\repos\WebApplication28\RCL\Areas\MyFeature\Pages\Page1.cshtml'. (RCL)
1>FastUpToDate: Earliest write timestamp on output is 5/1/2018 11:16:45 AM on 'C:\Users\kichalla\source\repos\WebApplication28\RCL\bin\Debug\netstandard2.0\RCL.dll'. (RCL)
1>FastUpToDate: Output is newer than input, not up to date. (RCL)
1>FastUpToDate: Project is not up to date. (RCL)

cc @pranavkm

@pranavkm
Copy link
Contributor

pranavkm commented May 1, 2018

To note, we're still doing an incremental noop build in MSBuild, it's just that we miss doing a FastUpToDate build where basically VS does not launch MSBuild. Possible fix might include touching the outputs of the class library.

@mkArtakMSFT
Copy link
Contributor

@pranavkm, is the fix for this super cheap?

@pranavkm
Copy link
Contributor

pranavkm commented May 2, 2018

@pranavkm, is the fix for this super cheap?

The fix is likely cheap, but I'm concerned about testing this. I'd feel hesitant to consider this for 2.1.0-rtm.

@aspnet-hello aspnet-hello transferred this issue from aspnet/Razor Dec 14, 2018
@aspnet-hello aspnet-hello assigned pranavkm and unassigned pranavkm Dec 14, 2018
@aspnet-hello aspnet-hello added this to the Backlog milestone Dec 14, 2018
@aspnet-hello aspnet-hello added 1 - Ready area-mvc Includes: MVC, Actions and Controllers, Localization, CORS, most templates bug This issue describes a behavior which is not expected - a bug. feature-razor-pages labels Dec 14, 2018
@javiercn javiercn added affected-medium This issue impacts approximately half of our customers severity-nice-to-have This label is used by an internal tool labels Feb 19, 2021 — with ASP.NET Core Issue Ranking
@javiercn javiercn added the reevaluate We need to reevaluate the issue and make a decision about it label Apr 18, 2021
@pranavkm
Copy link
Contributor

Closing this as we think we addressed this as part of .NET 3 (when we started using sets in Fast UpToDateCheck).

@ghost ghost locked as resolved and limited conversation to collaborators Nov 18, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
affected-medium This issue impacts approximately half of our customers area-mvc Includes: MVC, Actions and Controllers, Localization, CORS, most templates bug This issue describes a behavior which is not expected - a bug. feature-razor-pages reevaluate We need to reevaluate the issue and make a decision about it severity-nice-to-have This label is used by an internal tool
Projects
None yet
Development

No branches or pull requests

5 participants