summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRaymond Hettinger <python@rcn.com>2009-03-02 23:06:00 (GMT)
committerRaymond Hettinger <python@rcn.com>2009-03-02 23:06:00 (GMT)
commit0663a1ed793c164fb11d3dd62bebc677e260891e (patch)
tree1f56f1dcc13dc07301c7d0c32d2d04d49b6f1afb
parent6accb988a1822dc2927346ae4819aff8cc876b98 (diff)
downloadcpython-0663a1ed793c164fb11d3dd62bebc677e260891e.zip
cpython-0663a1ed793c164fb11d3dd62bebc677e260891e.tar.gz
cpython-0663a1ed793c164fb11d3dd62bebc677e260891e.tar.bz2
Let configparser use ordered dicts by default.
-rw-r--r--Doc/library/configparser.rst9
-rw-r--r--Lib/configparser.py3
-rw-r--r--Misc/NEWS2
3 files changed, 13 insertions, 1 deletions
diff --git a/Doc/library/configparser.rst b/Doc/library/configparser.rst
index e833e23..9439d0d 100644
--- a/Doc/library/configparser.rst
+++ b/Doc/library/configparser.rst
@@ -64,6 +64,9 @@ write-back, as will be the keys within each section.
options within a section, and for the default values. This class does not
support the magical interpolation behavior.
+ .. versionchanged 3.1
+ The default *dict_type* is :class:`collections.OrderedDict`.
+
.. class:: ConfigParser([defaults[, dict_type]])
@@ -80,6 +83,9 @@ write-back, as will be the keys within each section.
option names to lower case), the values ``foo %(bar)s`` and ``foo %(BAR)s`` are
equivalent.
+ .. versionchanged 3.1
+ The default *dict_type* is :class:`collections.OrderedDict`.
+
.. class:: SafeConfigParser([defaults[, dict_type]])
@@ -90,6 +96,9 @@ write-back, as will be the keys within each section.
.. XXX Need to explain what's safer/more predictable about it.
+ .. versionchanged 3.1
+ The default *dict_type* is :class:`collections.OrderedDict`.
+
.. exception:: NoSectionError
diff --git a/Lib/configparser.py b/Lib/configparser.py
index 5e36cc9..f2e644c 100644
--- a/Lib/configparser.py
+++ b/Lib/configparser.py
@@ -88,6 +88,7 @@ ConfigParser -- responsible for parsing a list of
"""
import re
+from collections import OrderedDict
__all__ = ["NoSectionError", "DuplicateSectionError", "NoOptionError",
"InterpolationError", "InterpolationDepthError",
@@ -215,7 +216,7 @@ class MissingSectionHeaderError(ParsingError):
class RawConfigParser:
- def __init__(self, defaults=None, dict_type=dict):
+ def __init__(self, defaults=None, dict_type=OrderedDict):
self._dict = dict_type
self._sections = self._dict()
self._defaults = self._dict()
diff --git a/Misc/NEWS b/Misc/NEWS
index 7a3c96f..91c94ff 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -179,6 +179,8 @@ Library
- The _asdict() for method for namedtuples now returns an OrderedDict().
+- configparser now defaults to using an ordered dictionary.
+
- Issue #1733986: Fixed mmap crash in accessing elements of second map object
with same tagname but larger size than first map. (Windows)