[Python-checkins] r54825 - in python/trunk: Lib/test/test_descr.py Misc/NEWS Objects/typeobject.c (original) (raw)
neal.norwitz python-checkins at python.org
Sat Apr 14 07:25:58 CEST 2007
- Previous message: [Python-checkins] r54824 - sandbox/trunk/pep0/TODO sandbox/trunk/pep0/pep0.py
- Next message: [Python-checkins] buildbot warnings in x86 XP trunk
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Author: neal.norwitz Date: Sat Apr 14 07:25:50 2007 New Revision: 54825
Modified: python/trunk/Lib/test/test_descr.py python/trunk/Misc/NEWS python/trunk/Objects/typeobject.c Log: When slots are set to a unicode string, make it work the same as setting a plain string, ie don't expand to single letter identifiers.
Modified: python/trunk/Lib/test/test_descr.py
--- python/trunk/Lib/test/test_descr.py (original) +++ python/trunk/Lib/test/test_descr.py Sat Apr 14 07:25:50 2007 @@ -1225,13 +1225,29 @@ raise TestFailed, "[''] slots not caught" class C(object): slots = ["a", "a_b", "_a", "A0123456789Z"]
XXX(nnorwitz): was there supposed to be something tested
from the class above?
Test a single string is not expanded as a sequence.
class C(object):
__slots__ = "abc"
c = C()
c.abc = 5
vereq(c.abc, 5)
Test unicode slot names
try:
unichr
except NameError: pass else:unicode
# Test a single unicode string is not expanded as a sequence.
class C(object):
__slots__ = unicode("abc")
c = C()
c.abc = 5
vereq(c.abc, 5)
# _unicode_to_string used to modify slots in certain circumstances slots = (unicode("foo"), unicode("bar")) class C(object):
Modified: python/trunk/Misc/NEWS
--- python/trunk/Misc/NEWS (original) +++ python/trunk/Misc/NEWS Sat Apr 14 07:25:50 2007 @@ -12,6 +12,9 @@ Core and builtins
+- When slots are set to a unicode string, make it work the same as
- setting a plain string, ie don't expand to single letter identifiers.
Request #1191699: Slices can now be pickled.
Request #1193128: str.translate() now allows a None argument for
Modified: python/trunk/Objects/typeobject.c
--- python/trunk/Objects/typeobject.c (original) +++ python/trunk/Objects/typeobject.c Sat Apr 14 07:25:50 2007 @@ -1816,7 +1816,7 @@ /* Have slots */
/* Make it into a tuple */
if (PyString_Check(slots))
if (PyString_Check(slots) || PyUnicode_Check(slots)) slots = PyTuple_Pack(1, slots); else slots = PySequence_Tuple(slots);
- Previous message: [Python-checkins] r54824 - sandbox/trunk/pep0/TODO sandbox/trunk/pep0/pep0.py
- Next message: [Python-checkins] buildbot warnings in x86 XP trunk
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]