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

LockFile with ATF has false NU1004 due to a bad target framework equality check #8187

Closed
nkolev92 opened this issue Jun 4, 2019 · 15 comments · Fixed by NuGet/NuGet.Client#2874
Assignees
Labels
Area:RestoreRepeatableBuild The lock file features Functionality:Restore RegressionFromPreviousRTM A regression from the last RTM. Example: worked in 6.2, doesn't work in 6.3 Type:Bug
Milestone

Comments

@nkolev92
Copy link
Member Author

nkolev92 commented Jun 4, 2019

Note that this could be intentional as one of the models is used for Package and the other one for Project references.

Need to understand that before making any sort of change.

@nkolev92 nkolev92 self-assigned this Jun 4, 2019
@nkolev92 nkolev92 added this to the 5.2 milestone Jun 4, 2019
@nkolev92 nkolev92 changed the title Bad target framework equality check causes NU1004 LockFile with ATF has false NU1004 due to a bad target framework equality check Jun 4, 2019
@nkolev92
Copy link
Member Author

nkolev92 commented Jun 4, 2019

The investigation as to why one of the models has ATF but the other doesn't can be handled separately.
This specific scenario is not affected since GetNearest will only consider the root framework.

FallbackFramework is a different concern however, but it's broken by design and it should not be used, so it might be to let that one be.

@nkolev92
Copy link
Member Author

nkolev92 commented Jun 4, 2019

Initial work is in dev-nkolev92-lockFileATF.

@bergbria
Copy link

bergbria commented Jun 4, 2019

It's worth noting that this is a significant regression that will probably break most people who use lock files.

@nkolev92 - how long would you guess it will take to release a patched .net sdk version once you make the fix? My team is effectively blocked from updating to 2.2.300+ until then.

@nkolev92
Copy link
Member Author

nkolev92 commented Jun 4, 2019

I don't know if this is going to go in a patch release.
There were other issues fixed that customers would've been likely to hit. (most of them affect the lock file regeneration scenarios).

//cc @rrelyea can comment on that.

@nkolev92 nkolev92 added the RegressionFromPreviousRTM A regression from the last RTM. Example: worked in 6.2, doesn't work in 6.3 label Jun 4, 2019
@rrelyea
Copy link
Contributor

rrelyea commented Jun 4, 2019

@bergbria - what sdk version are you on now?
Regresssion in 2.2.300??
Would waiting for 2.2.400 be unacceptable?

@bergbria
Copy link

bergbria commented Jun 5, 2019

@rrelyea - sorry, my original comment listed the sdk version but I didn't mirror that here.

AFAIK, the issue was introduced in 2.2.300. I know for a fact it didn't exist in 2.2.103 but I haven't tried the intervening versions.

How long until 2.2.400 is released?

We have no raging fires that can only be extinguished by taking a new sdk version. The most impactful issue is the one linked to this thread (the name of the .csproj must match the assemblyname) and there are various quality-of-life fixes (like not spewing tons of spurious warnings when using a lock file).

Effectively, we want a number of fixes and have been waiting quite a while, but we can keep waiting if needed.

@nkolev92
Copy link
Member Author

nkolev92 commented Jun 5, 2019

@bergbria 2.2.400 will be out in early to mid July.

@nkolev92
Copy link
Member Author

nkolev92 commented Jun 5, 2019

@bergbria Any other lock file specific fix that you are blocked on, or have we covered the bases already?

@bergbria
Copy link

bergbria commented Jun 6, 2019

@nkolev92 - I don't think I have any other unresolved lock-file-centric issues at this time.

Thanks for the fix! Any chance of this making it into a patch release or do we need to wait for 2.2.400?

@bergbria
Copy link

@rrelyea / @nkolev92 - ping on whether there's any chance of a patch version or if we'll need to wait another month for 2.2.400.

@rrelyea
Copy link
Contributor

rrelyea commented Jun 17, 2019

shipping a patch version of nuget.exe is all within our teams control. dotnet sdk patch versions aren't totally within our control.
if we shipped a patch nuget.exe, would that be usable for you? or do you only use dotnet.exe?

@daniel-white
Copy link

is this going to land in 2.1? i'd appreciate a fix there.

@nkolev92
Copy link
Member Author

Per https://docs.microsoft.com/en-us/nuget/release-notes/nuget-5.2-rtm, it's available in 2.1.800

@daniel-white
Copy link

@nkolev92 thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area:RestoreRepeatableBuild The lock file features Functionality:Restore RegressionFromPreviousRTM A regression from the last RTM. Example: worked in 6.2, doesn't work in 6.3 Type:Bug
Projects
None yet
4 participants