Automatic MSBuild Registration via Module Initializer
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 30/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- csharp
- Ambito
- build-system
Direzione di ricerca
Inizia esaminando il MSBuildLocator.RegisterDefaults() esistente e gli altri punti di ingresso Register*, quindi analizza come un inizializzatore di modulo e la proprietà MSBuildLocatorGenerateDefaultInitialization potrebbero controllare l'inizializzazione generata. Il lavoro è completato quando un'istanza di MSBuild viene registrata automaticamente per impostazione predefinita, mentre impostare la proprietà su false mantiene il controllo sulla registrazione esplicita.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Summary
Add a zero-configuration option for MSBuildLocator that automatically registers a default MSBuild instance without requiring an explicit call to MSBuildLocator.RegisterDefaults().
Motivation
Currently, every consumer of MSBuildLocator must explicitly call MSBuildLocator.RegisterDefaults() (or one of the other Register* methods) before using any MSBuild APIs. For users who don't need to customize which MSBuild instance is used, this is unnecessary ceremony.
A common question from new users: "Why do I need to call RegisterDefaults() if I never customize the MSBuild location?"
For the majority use case where the default behavior is acceptable, requiring explicit initialization adds friction without providing value.
Proposed Solution
Use a module initializer to automatically register a default MSBuild instance when the assembly loads.
Opt-out mechanism
Introduce an MSBuild property to control this behavior:
<MSBuildLocatorGenerateDefaultInitialization>false</MSBuildLocatorGenerateDefaultInitialization>
When set to false, the automatic initialization file would not be generated, allowing users to retain full control over registration timing and configuration.
- Lingua principale
- C#
- Stelle
- 262
- Fork
- 91
- Merge medio
- 11g 22h
- PR unite (30g)
- 3
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di microsoft/MSBuildLocator
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 52/100
microsoft/MSBuildLocator#390 · 1 reazione ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 64/100
microsoft/MSBuildLocator#389 ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
microsoft/MSBuildLocator#380 ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 48/100
microsoft/MSBuildLocator#377 ·
-
microsoft/MSBuildLocator#368 · 2 commenti · 4 reazioni · 1 assegnatario ·
Tutte le issue di microsoft/MSBuildLocator
Issue simili
-
effort:S P3 refactor
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
nightscout/nocturne#1532 ·
-
core dependencies
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 80/100
-
documentation
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
C#/.NET Roslyn LSP Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
-
Suspicious code fragments Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
DotNetNext/SqlSugar#1458 ·