getappmap / getappmap/appmap-python

Arguments could be captured even when signature is unknown

Offen
#124 3 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Vorherrschende Sprache
Python
Sterne
104
Forks
17
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Consider functools.lru_cache; this is a built-in, so signature is not available. However, we still get args and kwargs if we trace the call (as happens often when the decorator is used on a traced class). Currently in the absence of a signature parameters end up being []. I think it's worthwhile to record arguments anyway.

Requires applandinc/appmap#22

For all intents and purposes blocked by #126 -- in CPython native functions are, to my knowledge, the only case where a function signature cannot be obtained. While it might be possible to implement and even test this without that, but it would be pretty useless.

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

Beginne damit, den Argumenterfassungspfad für getrackte Aufrufe zu überprüfen, die functools.lru_cache betreffen, und prüfe anschließend die Abhängigkeit in applandinc/appmap#22 sowie das blockierende Issue #126. Als erledigt gilt die Aufgabe, wenn args und kwargs auch dann aufgezeichnet werden, wenn keine Funktionssignatur verfügbar ist, anstatt die parameters leer zu lassen.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python
Bereich
devtools
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

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