python / python/mypy

EncodingWarning when running under PyPy

Offen
#17,057 3 Kommentare 1 Reaktion 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

bug
Vorherrschende Sprache
Python
Sterne
20.6k
Forks
3.3k
PR-Merge-Kennzahlen
PR-Kennzahlen ausstehend

Beschreibung

Bug Report

In this comment, I describe the warnings that I see when enabling mypy checks in PyPy.

To Reproduce

Grab jaraco/keyring@e9285df and run tox -e pypy (or tox -e pypy3 if pypy is aliased to Python 2). Note the tests run with PYTHONWARNDEFAULTENCODING=true.

Expected Behavior

There should be no warnings.

Actual Behavior

Warnings are emitted, three directly implicating mypy code and one implicated in configparser for mypy checks. I just ran the tests again and got even more warnings.

conftest.py::mypy
  /opt/homebrew/Cellar/pypy3.10/7.3.15/libexec/lib/pypy3.10/configparser.py:694: EncodingWarning: 'encoding' argument not specified.
    encoding = io.text_encoding(encoding)

conftest.py::mypy
  /Users/jaraco/code/jaraco/keyring/.tox/pypy/lib/pypy3.10/site-packages/mypy/modulefinder.py:851: EncodingWarning: 'encoding' argument not specified.
    with open(versions_path) as f:

conftest.py::mypy
  /Users/jaraco/code/jaraco/keyring/.tox/pypy/lib/pypy3.10/site-packages/mypy/metastore.py:108: EncodingWarning: 'encoding' argument not specified.
    with open(tmp_filename, "w") as f:

conftest.py::mypy
  /Users/jaraco/code/jaraco/keyring/.tox/pypy/lib/pypy3.10/site-packages/mypy/build.py:1187: EncodingWarning: 'encoding' argument not specified.
    with open(gitignore, "x") as f:

conftest.py::mypy
  /Users/jaraco/code/jaraco/keyring/.tox/pypy/lib/pypy3.10/site-packages/mypy/build.py:1201: EncodingWarning: 'encoding' argument not specified.
    with open(cachedir_tag, "x") as f:

conftest.py::mypy
  /Users/jaraco/code/jaraco/keyring/.tox/pypy/lib/pypy3.10/site-packages/mypy/build.py:3526: EncodingWarning: 'encoding' argument not specified.
    with open(fnam, "w") as f:

Your Environment

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

Reproduziere den Bericht mit tox -e pypy und PYTHONWARNDEFAULTENCODING=true. Untersuche die in mypy/modulefinder.py, mypy/metastore.py und mypy/build.py genannten Warnstellen und beachte dabei die separate Warnung in configparser.py. Als erledigt gilt, wenn der relevante PyPy-Lauf ohne diese EncodingWarning-Meldungen abgeschlossen wird.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

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

Neue Issues direkt in Ihr Postfach

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