-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
Set Version for Windows #15238
Set Version for Windows #15238
Conversation
Backported to #15240 |
<PropertyGroup Condition=" '$([MSBuild]::GetTargetPlatformIdentifier($(TargetFramework)))' == 'windows' and '$(OutputType)' == 'WinExe' "> | ||
<Version Condition=" $([System.Version]::TryParse ('$(ApplicationDisplayVersion)', $([System.Version]::Parse('1.0')))) ">$(ApplicationDisplayVersion)</Version> | ||
</PropertyGroup> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This used to be in WinUI targets:
But I guess that won't work, because this would only work after a restore now:
There are 2 things different with this change than before:
- This is in a
*.Before.targets
and it used to be*.After.targets
. Is the ordering right? - The condition is a little different than what imported
WinUI.targets
:
<Import Project="WinUI.targets" Condition=" '$(TargetPlatformIdentifier)' == 'windows' and '$(WindowsAppSDKWinUI)' == 'true'" /> |
If this was moved to some *.After.targets
would be be able to use the same Condition
as before? $(TargetPlatformIdentifier)
is probably blank at the point you have this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think using GetTargetPlatformIdentifier
is the most correct way. I believe? Order does not really matter as it all comes after the workload targets - and ios/android seems to be in this spot.
'$(WindowsAppSDKWinUI)' == 'true'
This is the real issue actually. when you did a PR back in the day, this was not there. I added it at some point and it broke. So now I am moving this out - and to be consistent with android and ios I am using the Before spot - which is a bad name really - it is just immediate. No idea why it is "before"...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/rebase |
5edda72
to
66bd240
Compare
This reverts commit 130f788.
* Set Version for Windows * moved
Description of Change
This PR fixes an issue where setting
<ApplicationDisplayVersion>
to anything other than1.0
caused the IDE to fail to restore NuGets. There was a fix before #6628 however, it appears this was before another fix landed which effectively disabled the change until after the NuGet restore completed: #6767As a result, the fix was "lost". This PR moves the fix out of the NuGet (where it is too late) and directly into the workload.
Issues Fixed
Workaround
For now the easiest workaround is to add
<Version>$(ApplicationVersion)</Version>
in your project directly after your<ApplicationVersion>1.0</ApplicationVersion>
property.