Skip to content

Fix CaseInsensitiveDict.copy() regression, setup.py spacing, and Python 3 py2exe imports #10492

Description

@imohitpatel

Hey guys,

Just ran into a couple of annoying bugs while messing with the build files and running tests locally.

  1. tests/init.py — Broken CaseInsensitiveDict.copy() & Typo
  • The copy() method on CaseInsensitiveDict returns self._store.values() directly, which passes a raw dict-values view. This fails on modern Python 3 runtimes. Wrap it in dict() first: CaseInsensitiveDict(dict(self._store.values())).
  • Fixed spelling typo: serializble -> serializable.
  1. setup.py — Spacing Regex & Py2exe Python 3 Imports
  • The version parser regex is too rigid and fails if code formatters change the spacing around the '='. Updated to use \s*=\s*.
  • Updated legacy py2exe packages (httplib, HTMLParser, ConfigParser) to their Python 3 equivalents (http.client, html.parser, configparser).

Metadata

Metadata

Assignees

No one assigned

    Labels

    needs-triageThis issue or PR still needs to be triaged.

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions