Add check for duplicate SQL build items #574
Merged
+73
−3
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.
The SDK's implicit globbing pattern (**/*.sql) may conflict with any explicit includes with metadata in the project file. Normally MSBuild is smart enough to resolve the duplicates, but the additional metadata makes it think that the items are different, which may result in a significant performance impact during the build process.
I'm adding a check similar to the CheckForDuplicateItems target that will fail the build if any explicit includes are already covered by the default globbing pattern. Project authors would either need to remove the explicit includes or disable the default globbing pattern by setting
EnableDefaultSqlItems
tofalse
. Additional metadata should be attached using Update instead: