-m trace --count missing lines
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Python
- Sterne
- 77.2k
- Forks
- 35.9k
- PR-Merge-Kennzahlen
- PR-Kennzahlen ausstehend
Beschreibung
Bug report
Bug description:
def x() -> tuple[
int,
]:
return (1, 'fred')
x()
python 3.13 (good):
xju@xjutv:~/tmp$ python3 --version
Python 3.13.1
xju@xjutv:~/tmp$ rm -f xxx.cover
xju@xjutv:~/tmp$ python3 -m trace --count -m xxx.py
xju@xjutv:~/tmp$ cat xxx.cover
2: def x() -> tuple[
1: int,
]:
1: return (1, 'fred')
1: x()
python 3.14 (bad):
xju@xjutv:~/tmp$ python3 --version
Python 3.14.2
xju@xjutv:~/tmp$ rm -f xxx.cover
xju@xjutv:~/tmp$ python3 -m trace --count -m xxx.py
xju@xjutv:~/tmp$ cat xxx.cover
1: def x() -> tuple[
>>>>>> int,
]:
1: return (1, 'fred')
1: x()
... trace._get_executable_linenos returns the same in both 3.13 and 3.14; seems that Trace.run does not see that the type hint is "executed"? Could equally have trace._get_executable_linenos not report the type hint... they just need to agree.
Above is about the simplest example I came up with, but similar disagreement with class attribute hints like:
class X:
a: int
... a: int is reported as "not covered".
CPython versions tested on:
3.14
Operating systems tested on:
Linux
Linked PRs
- gh-143161
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Reproduzieren Sie die Abweichung mit dem Python-Snippet und vergleichen Sie die Coverage-Ausgabe von 3.13 und 3.14. Untersuchen Sie trace.Trace.run und trace._get_executable_linenos, bei denen der Bericht feststellt, dass sie hinsichtlich ausgeführter Annotationen nicht übereinstimmen. Als erledigt gilt die Aufgabe, wenn beide Pfade übereinstimmen und Zeilen mit Type Hints, einschließlich Hints für Klassenattribute, konsistente Coverage-Ergebnisse erhalten.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- python
- Bereich
- tooling
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 25/100