PowerShell / PowerShell/PowerShellEditorServices

Add support for source maps

Offen
#617 3 Kommentare 1 Reaktion 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Area-Debugging Issue-Enhancement
Vorherrschende Sprache
C#
Sterne
767
Forks
266
Ø Merge
3 T. 16 Std.
Gemergte PRs (30 T.)
1

Beschreibung

One of the most common project layouts is to have every function in it's own ps1 file. When one of those projects gets at a certain size (very large, like dbatools) that can begin to affect the load time of the module. As a workaround, some of these modules will "compile" the ps1 files into a single psm1.

I think it would be a good idea to come up with a source map system so if we break somewhere in the compiled psm1 we could show the original source file instead.

This could also be useful for other projects who test against the "fully built" version of their module in a Release folder. I do this in a lot of my projects and often end up editing the temporary version of a file in Release because that's where the debugger put me.

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Das Issue nennt keine Dateien, Tests oder Einstiegspunkte. Beginne damit, die Modulkompilierung und die Behandlung von Quellpositionen im Debugger zu finden, und bestimme dann, wie eine source map kompilierte psm1-Positionen mit den ursprünglichen ps1-Dateien verbinden sollte. Der Abschluss sollte ein definiertes Mapping-Format und ein definiertes Debugger-Verhalten umfassen, einschließlich einer Abdeckung für Module, die in einen Release-Ordner integriert werden.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Bereich
devtools
Issue-Typ
Feature
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.