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

Sync XSD "IntelliSense" with VS repo automatically on insertion #5531

Merged
merged 5 commits into from
Jul 20, 2020

Conversation

rainersigwald
Copy link
Member

We've been manually managing this and naturally forgotten it a few times. That's not cool. Let's let a robot do it.

This requires change to the releases: https://dev.azure.com/devdiv/DevDiv/_releaseProgress?releaseId=749728&_a=release-history but it will be harmless to do this first and then change them.

Example internal PR: https://dev.azure.com/devdiv/DevDiv/_git/VS/pullrequest/262150?_a=files

* Publish a new artifact `xsd` that has the XSDs and
* A new script to copy those XSDs to the right place in VS
  when inserting MSBuild.
@rainersigwald rainersigwald added the Area: Our Own Build Problems affecting the build or build infrastructure of the MSBuild repo itself. label Jul 20, 2020
@rainersigwald rainersigwald requested a review from Forgind July 20, 2020 15:29
@@ -5624,7 +5624,7 @@ elementFormDefault="qualified">
</xs:complexContent>
</xs:complexType>
</xs:element>

<!-- a change made on GitHub that should flow -->
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I should of course revert this proof that it worked.

@@ -0,0 +1,9 @@
$ErrorActionPreference = 'Stop'

cmd /c set
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

remove

Copy link
Member

@Forgind Forgind left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! (After resolving your comments)

</None>
<None Include="Microsoft.Build.xsd">
<SubType>Designer</SubType>
<XsdsForVS Include="**\*.xsd" Exclude="$(DefaultItemExcludes);$(DefaultExcludesInProjectFolder)" />
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There are two "Default exclude" items here, so presumably "DefaultItemExcludes" doesn't include the "DefaultExcludesInProjectFolder". How does one know or find out how many default exclude items there are?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's probably a better way, but I build a project that excludes those, catch it in a debugger, break on the code that handles that in Project.cs, and inspect what it gets turned into.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@rainersigwald rainersigwald merged commit 14c8cac into master Jul 20, 2020
@ghost ghost added this to the current-release milestone Jul 20, 2020
@rainersigwald rainersigwald deleted the exp/sync-xsd branch July 20, 2020 20:13
rainersigwald added a commit that referenced this pull request Aug 13, 2021
As of #5531, the manual XSD sync is no longer required.
rokonec pushed a commit that referenced this pull request Aug 16, 2021
As of #5531, the manual XSD sync is no longer required.
@maridematte maridematte mentioned this pull request Oct 17, 2024
3 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area: Our Own Build Problems affecting the build or build infrastructure of the MSBuild repo itself.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants