Python Package

Refactoring & Komplexitaet reduzieren

Refactoring-Hotspots messen, Komplexitaet senken und Umbauten gegen Baselines absichern.

Früher Zugriff: Bis 2026-12-31

mgpy begleitet Refactorings als messbaren Umbaupfad: Hotspots sollen sichtbar, priorisiert und nach jedem Schritt gegen Baselines pruefbar bleiben.

Kernpunkte

  • CLI: Unter Windows zeigen die Beispiele den empfohlenen Aufruf via py -3.12 -m <modul> ... (z.B. py -3.12 -m manifestguard ...). Auf Linux/macOS entspricht das in der Regel python3.12 -m ....
  • Der eingebaute AST-Analyzer ist der Default und liefert stabile Verlaufsdaten.
  • Fruehe Returns, kleinere Helferfunktionen und klarere Verantwortungen senken Verstosszahlen schneller als reine Umformatierung.
  • Vor groesseren Refactorings und strukturellen Umbauten immer einen Baseline-Punkt speichern.

Empfohlener MG-Python-Workflow

  1. Zuerst Komplexitaets-Hotspots mit festem Threshold erfassen.
  2. Die schlimmsten Funktionen in kleine, testbare Refactoring-Schritte zerlegen statt den ganzen Modulbaum gleichzeitig zu bewegen.
  3. Nach jedem Refactoring den Vergleich gegen die gespeicherte Baseline laufen lassen.

Schnellstart

py -3.12 -m manifestguard complexity --threshold 12
py -3.12 -m manifestguard baseline --save-label pre-refactor
py -3.12 -m manifestguard baseline --compare pre-refactor

Voraussetzungen

Spalten
Installation interpreter
Python 3.12 + pip
Recommended default path for installation and CLI calls.
Project target versions
Python 3.8 to 3.12
These are the project/runtime targets mgpy can analyze.
mgpy runtime
Validated on Python 3.10 to 3.13
The tool runtime itself is covered for this range.
CLI invocation
Windows: py -3.12 -m manifestguard
Linux/macOS usually maps to python3.12 -m manifestguard.
Runtime packages
tomlkit, click, pydantic, packaging, watchdog, PyNaCl, rfc8785
tomli is only added for Python below 3.11.
Offline / wheel install
Optional via pip --no-index or wheel
Useful for air-gapped or approved bundle distribution paths.