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

Ouverte
#63,020 11 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
25/100
Type d'issue
Bug
Clarté
Plutôt claire
Activité
À l'abandon
Stack technique
python
Domaine
backend

Piste de recherche

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.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

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
    Langage dominant
    Python
    Étoiles
    77.2k
    Forks
    36k
    Merge moyen
    1 j 9 h
    PR mergées (30 j)
    558

    Guide de contribution

    Ouvrir le guide de contribution

    Par où commencer

    1. Lisez l'issue en entier, puis le guide de contribution du projet.
    2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
    3. Forkez le dépôt et travaillez sur une branche.
    4. Ouvrez une pull request qui référence le numéro de l'issue.

    Autres issues de python/cpython

    Toutes les issues de python/cpython

    Issues similaires

    Plus d'issues Python

    Recevez les nouvelles issues par e-mail

    Un résumé court des issues GitHub adaptées aux débutants.