dotnet / dotnet/msbuild

Enable MSBuild Language forward compatibility for Property[Group] language elements

Open
#14,512 0 comments 0 reactions 1 assignee Claimed by @baronfel View on GitHub
Area: Language Partner request
Dominant language
C#
Stars
5.5k
Forks
1.5k
Avg merge
1d 8h
Merged PRs (30d)
141

Description

### Summary

To support exploration of future ways to process MSBuild files, we want to support grammar elements like metadata on language elements that do not support them today:

* PropertyGroup
* Property

### Background and Motivation

We want to allow for experimentation in how MSBuild language files are processed, but do so in a way where the language files remain usable in 'base' MSBuild as well. To support this, we'd like to support metadata on most/all language nodes that would participate in this alternate processing so that experimentation can happen without changes being required in the MSBuild core. As findings solidify, we can promote these metadata to first-class items.

### Proposed Feature

Enable the parsing and transport of Metadata on PropertyGroups and Properties like is done for Items today.

In addition, we would like to support some kind of guardrails to help prevent against typos, like is possible with the known MSBuild Item metadata, so defining a mechanism for that that is forward-compatible and malleable as experiments are run would be good.

### Alternative Designs

_No response_

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.