Formation
Module
Ce module vous guide tout au long de l’implémentation d’indicateurs de fonctionnalités dans une application de microservices ASP.NET Core avec Azure App Configuration.
Ce navigateur n’est plus pris en charge.
Effectuez une mise à niveau vers Microsoft Edge pour tirer parti des dernières fonctionnalités, des mises à jour de sécurité et du support technique.
Une vague de modifications est un ensemble de changements de comportement dans MSBuild que vous pouvez refuser en spécifiant un indicateur particulier en tant que variable d’environnement. L’objectif de cette opération est de vous avertir des changements potentiellement perturbants afin que vous ayez la flexibilité nécessaire pour s’adapter à ces modifications avant qu’elles ne deviennent des fonctionnalités standard. Toutes les fonctionnalités d’une vague de modification spécifique peuvent uniquement être activées ou désactivées ensemble, et non individuellement.
Lorsqu'on effectue une mise à niveau vers une nouvelle version de MSBuild, les modifications potentiellement cassantes sont activées par défaut ; mais si une fonctionnalité affecte votre compilation négativement, vous pouvez facilement désactiver cette vague de modifications. Chaque vague de modification est identifiée par un numéro de version MSBuild (par exemple, 16.8), mais la définition de la vague de modification contrôle uniquement certaines fonctionnalités susceptibles d’affecter le processus de génération, pas toutes les modifications apportées à cette version DE MSBuild. Une liste des fonctionnalités de chaque vague de modification apparaît plus loin dans cet article. La désactivation d’une vague de modification désactive également les vagues de modification des versions ultérieures.
Pour désactiver les fonctionnalités d’une vague de modification, définissez la variable d’environnement MSBuildDisableFeaturesFromVersion
sur la vague de modification (ou la version MSBuild) qui contient la fonctionnalité que vous souhaitez désactivée. Il s’agit de la version de MSBuild pour laquelle les fonctionnalités ont été développées. Consultez le mappage des vagues de modifications aux fonctionnalités ci-dessous.
Vous recevrez un avertissement et/ou serez assigné par défaut à une vague spécifique si vous ne définissez pas MSBuildDisableFeaturesFromVersion
sur une vague de modification valide. Le tableau suivant présente les paramètres possibles :
Valeur MSBuildDisableFeaturesFromVersion |
Résultat | Recevoir un avertissement ? |
---|---|---|
Annuler | Activez toutes les ondes de modification, ce qui signifie que toutes les fonctionnalités derrière chaque vague de modification sont activées. | Non |
Toute vague de modification valide et actuelle (par exemple, 16.8 ) |
Désactivez toutes les fonctionnalités derrière la vague de modifications 16.8 et les versions ultérieures. |
Non |
Valeur non valide (par exemple, 16.9 lorsque les vagues valides sont 16.8 et 16.10 ) |
Par défaut, la valeur valide la plus proche (ordre croissant). Par exemple, le réglage de 16.9 vous orientera par défaut vers 16.10 . |
Non |
Hors rotation (par exemple, 17.1 lorsque la vague la plus élevée est 17.0 ) |
Limiter à la valeur valide la plus proche. Par exemple, 17.1 se fixe à 17.0 , et 16.5 se fixe à 16.8 . |
Oui |
Format non valide (par exemple, 16x8 , 17_0 , garbage ) |
Activez toutes les ondes de modification, ce qui signifie que toutes les fonctionnalités derrière chaque vague de modification sont activées. | Oui |
MSBuild.runtimeconfig.json
MSBuild.runtimeconfig.json
Platform
comme valeur par défaut lors de la négociation de plateformebin
par défaut (changement annulé ici et rétabli ici)Pourquoi cibler toutes les autres versions pour la rotation des vagues de modifications ?
Nous pensons que c’est assez de temps pour avoir des discussions avec les personnes concernées et aider à s’adapter aux changements.
Pourquoi une variable d’environnement et non une propriété de projet ?
Il existe des scénarios où nous voulons placer une fonctionnalité sous une vague de modifications avant que MSBuild n’ait chargé le projet. Pour cette raison, les vagues de modification nécessitent l’utilisation de variables d’environnement.
Pourquoi l’activation par défaut ?
L’opt-out est une meilleure approche pour nous, sinon nous obtiendrons probablement des commentaires limités lorsqu’une fonctionnalité a un impact sur les builds des clients.
Formation
Module
Ce module vous guide tout au long de l’implémentation d’indicateurs de fonctionnalités dans une application de microservices ASP.NET Core avec Azure App Configuration.