json.dump() ignores its 'default' option when serializing dictionary keys

Offen
#63,020 11 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

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

Rechercherichtung

Start with the json.dump() and encoder implementation, then review the linked PR gh-119984 and the proposed json-default-dict-keys.diff and json-default-tests.diff files. Check how dictionary keys are serialized in both the default and C implementations. Done means the default option is honored for dictionary keys and regression coverage passes for both paths.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

3.10 3.11 3.9 (EOL) stdlib type-bug
BPO 18820
Nosy @rhettinger, @etrepum, @pitrou, @ezio-melotti, @tifv, @berkerpeksag, @serhiy-storchaka, @iritkatriel
Files
  • json-default-dict-keys.diff: applies to default, does not fix C implementation
  • json-default-tests.diff: proposed tests (for default)
  • Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.

    Show more details

    GitHub fields:

    assignee = None
    closed_at = None
    created_at = <Date 2013-08-23.10:30:29.980>
    labels = ['type-bug', 'library', '3.9', '3.10', '3.11']
    title = "json.dump() ignores its 'default' option when serializing dictionary keys"
    updated_at = <Date 2022-03-13.20:16:36.622>
    user = 'https://github.com/tifv'
    

    bugs.python.org fields:

    activity = <Date 2022-03-13.20:16:36.622>
    actor = 'iritkatriel'
    assignee = 'none'
    closed = False
    closed_date = None
    closer = None
    components = ['Library (Lib)']
    creation = <Date 2013-08-23.10:30:29.980>
    creator = 'july'
    dependencies = []
    files = ['31437', '31450']
    hgrepos = []
    issue_num = 18820
    keywords = ['patch']
    message_count = 8.0
    messages = ['195957', '195958', '196022', '196036', '263013', '263019', '263025', '415093']
    nosy_count = 11.0
    nosy_names = ['rhettinger', 'bob.ippolito', 'pitrou', 'ezio.melotti', 'cvrebert', 'july', 'docs@python', 'berker.peksag', 'serhiy.storchaka', 'Erwin Mayer', 'iritkatriel']
    pr_nums = []
    priority = 'normal'
    resolution = None
    stage = 'patch review'
    status = 'open'
    superseder = None
    type = 'behavior'
    url = 'https://bugs.python.org/issue18820'
    versions = ['Python 3.9', 'Python 3.10', 'Python 3.11']
    

    Linked PRs
    • gh-119984
    Vorherrschende Sprache
    Python
    Sterne
    77.2k
    Forks
    36k
    Ø Merge
    1 T. 9 Std.
    Gemergte PRs (30 T.)
    558

    Beitragsleitfaden

    Beitragsleitfaden öffnen

    Erste Schritte

    1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
    2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
    3. Forken Sie das Repository und arbeiten Sie in einem Branch.
    4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

    Mehr aus python/cpython

    Alle Issues in python/cpython

    Ähnliche Issues

    Weitere Issues zu Python

    Neue Issues direkt in Ihr Postfach

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