A double hyphen in an XML comment made the targets file unloadable - #23
Merged
Conversation
MSB4024: The imported project file ... could not be loaded XML forbids "--" inside a comment, and line 42 had one. A targets file that does not parse is not skipped, it stops the import, so every consumer of the package failed on every platform. The last CD run lost all eight smoke legs to it, including the five that had nothing to do with the change. The comment now says the same thing without the hyphens. Nothing in CI could have caught this. The common workflow builds the binding project and packs it; the targets file is only read by a consumer, so a malformed one passes every check in the repository and breaks downstream, with an error naming the consumer rather than the file. Five repositories in the fleet ship one of these. A parse check in the toolbox is the follow-up, and it is worth more than this fix.
Contributor
API gate: additiveEvery symbol that existed still exists, unchanged. Nothing that compiled before stops compiling.
Enum and constant values are part of the measured surface: a renumbering keeps compiling and sends the wrong number to the driver, so it counts as a removal. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
XML forbids
--inside a comment, and line 42 had one. A targets file that does not parse is not skipped — it stops the import, so every consumer failed on every platform. The last CD run lost all eight smoke legs to it, including the five that had nothing to do with the change.The comment now says the same thing without the hyphens.
Nothing in CI could have caught it
The common workflow builds the binding project and packs it. The targets file is only read by a consumer, so a malformed one passes every check in the repository and breaks downstream, with an error naming the consumer rather than the file.
Five repositories in the fleet ship one of these: Cesium.NET, JoltPhysics.NET, Vuforia.NET, ImGui.Net, KTX.NET and WebGPU.NET. A parse check in
binding-common-ci.ymlis the follow-up, and it is worth considerably more than this one-line fix.