Delen via


Golven veranderen

Een wijzigingsgolf is een reeks gedragswijzigingen in MSBuild die u kunt uitschakelen door een bepaalde vlag op te geven als een omgevingsvariabele. Het doel hiervan is om u te waarschuwen voor potentieel verstorende wijzigingen, zodat u flexibiliteit hebt bij het aanpassen aan deze wijzigingen voordat ze standaardfunctionaliteit worden. Alle functies in een specifieke wijzigingsgolf kunnen alleen worden ingeschakeld of uitgeschakeld, niet afzonderlijk.

Wanneer u een upgrade uitvoert naar een nieuwe versie van MSBuild, worden wijzigingen die mogelijk fouten veroorzaken standaard ingeschakeld, maar als een functie negatief van invloed is op uw build, kunt u deze golf van wijzigingen eenvoudig uitschakelen. Elke wijzigingsgolf wordt geïdentificeerd door een MSBuild-versienummer (bijvoorbeeld 16.8), maar het instellen van de wijzigingsgolf bepaalt alleen bepaalde functies die het buildproces kunnen beïnvloeden, niet alle wijzigingen in die MSBuild-versie. Een lijst met de functies in elke wijzigingsgolf wordt verderop in dit artikelweergegeven. Als u een wijzigingsgolf uitschakelt, worden ook wijzigingsgolven van hogere versies uitgeschakeld.

Afmelden voor wijzigingsgolffuncties

Als u de functies in een wijzigingsgolf wilt uitschakelen, stelt u de omgevingsvariabele MSBuildDisableFeaturesFromVersion in op de wijzigingsgolf (of MSBuild-versie) die de functie bevat die u wilt uitgeschakeld. Dit is de versie van MSBuild waarvoor de functies zijn ontwikkeld. Zie hieronder de koppeling van wijzigingsgolven aan functies.

De waarden van MSBuildDisableFeaturesFromVersion

U ontvangt een waarschuwing en/of wordt automatisch toegewezen aan een specifieke golf als u MSBuildDisableFeaturesFromVersion niet instelt op een geldige wijzigingsgolf. In de volgende tabel ziet u de mogelijke instellingen:

MSBuildDisableFeaturesFromVersion waarde Resultaat Waarschuwing ontvangen?
Ongedefinieerd Schakel alle wijzigingsgolven in, wat betekent dat alle functies achter elke wijzigingsgolf zijn ingeschakeld. Nee
Elke geldige en huidige wijzigingsgolf (bijvoorbeeld 16.8) Schakel alle functies achter wijzigingsgolven 16.8en hogeruit. Nee
Ongeldige waarde (bijvoorbeeld 16.9 wanneer geldige golven zijn 16.8 en 16.10) Standaard ingesteld op de dichtstbijzijnde geldige waarde (oplopend). Als u bijvoorbeeld 16.9 instelt, wordt u standaard 16.10. Nee
Uit de volgorde (bijvoorbeeld 17.1, wanneer de hoogste golf 17.0is) Klem op de dichtstbijzijnde geldige waarde. Bijvoorbeeld 17.1 klemmen aan 17.0en 16.5 klemmen aan 16.8 Ja
Ongeldige indeling (bijvoorbeeld 16x8, 17_0, garbage) Schakel alle wijzigingsgolven in, wat betekent dat alle functies achter elke wijzigingsgolf zijn ingeschakeld. Ja

Golven en bijbehorende functies wijzigen

17.10

17.8

17.6

17.4

17.0

Wijzigingsgolven niet meer in omloop

16.8

16.10

FAQ

Waarom richt u zich op elke tweede release om veranderingsgolven af te wisselen?

We zijn van mening dat dit voldoende tijd is om gesprekken te voeren met de getroffen personen en om ons aan te passen aan de wijzigingen.

Waarom een omgevingsvariabele en geen projecteigenschap?

Er zijn scenario's waarin we een functie onder een wijzigingsgolf willen plaatsen voordat MSBuild het project heeft geladen. Daarom vereisen wijzigingsgolven het gebruik van omgevingsvariabelen.

Waarom afmelden bij opt-in?

Opt-out is een betere benadering voor ons, anders krijgen we waarschijnlijk beperkte feedback wanneer een functie van invloed is op de builds van klanten.