[Python-checkins] r83429 - in python/branches/release27-maint: Doc/library/sys.rst Lib/ntpath.py Lib/test/data/README Lib/test/test_ntpath.py Lib/test/test_optparse.py Misc/NEWS Python/getversion.c
georg.brandl
python-checkins at python.org
Sun Aug 1 21:14:56 CEST 2010
Author: georg.brandl
Date: Sun Aug 1 21:14:56 2010
New Revision: 83429
Log:
Merged revisions 83352,83356-83358,83362,83366,83368-83369 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k
........
r83352 | georg.brandl | 2010-07-31 20:11:07 +0200 (Sa, 31 Jul 2010) | 1 line
#9440: Remove borderline test case that fails based on unpredictable conditions such as compiler flags.
........
r83356 | georg.brandl | 2010-07-31 21:29:15 +0200 (Sa, 31 Jul 2010) | 1 line
Remove trailing whitespace.
........
r83357 | georg.brandl | 2010-07-31 21:59:55 +0200 (Sa, 31 Jul 2010) | 1 line
#5778: document that sys.version can contain a newline.
........
r83358 | georg.brandl | 2010-07-31 22:05:31 +0200 (Sa, 31 Jul 2010) | 1 line
#9442: do not document a specific format for sys.version; rather refer to version_info and the platform module.
........
r83362 | georg.brandl | 2010-07-31 23:12:15 +0200 (Sa, 31 Jul 2010) | 1 line
#8910: add a file explaining why Lib/test/data is there.
........
r83366 | georg.brandl | 2010-07-31 23:26:40 +0200 (Sa, 31 Jul 2010) | 1 line
There always is a False and True now.
........
r83368 | georg.brandl | 2010-07-31 23:40:15 +0200 (Sa, 31 Jul 2010) | 1 line
#7909: the prefixes \\.\ and \\?\ indicate special Windows paths, do not try to manipulate them. See http://msdn.microsoft.com/en-us/library/aa365247%28VS.85%29.aspx for details.
........
r83369 | georg.brandl | 2010-07-31 23:41:42 +0200 (Sa, 31 Jul 2010) | 1 line
Fix "Berkeley" name.
........
Added:
python/branches/release27-maint/Lib/test/data/README
- copied unchanged from r83369, /python/branches/py3k/Lib/test/data/README
Modified:
python/branches/release27-maint/ (props changed)
python/branches/release27-maint/Doc/library/sys.rst
python/branches/release27-maint/Lib/ntpath.py
python/branches/release27-maint/Lib/test/test_ntpath.py
python/branches/release27-maint/Lib/test/test_optparse.py
python/branches/release27-maint/Misc/NEWS
python/branches/release27-maint/Python/getversion.c
Modified: python/branches/release27-maint/Doc/library/sys.rst
==============================================================================
--- python/branches/release27-maint/Doc/library/sys.rst (original)
+++ python/branches/release27-maint/Doc/library/sys.rst Sun Aug 1 21:14:56 2010
@@ -967,14 +967,10 @@
.. data:: version
A string containing the version number of the Python interpreter plus additional
- information on the build number and compiler used. It has a value of the form
- ``'version (#build_number, build_date, build_time) [compiler]'``. The first
- three characters are used to identify the version in the installation
- directories (where appropriate on each platform). An example::
-
- >>> import sys
- >>> sys.version
- '1.5.2 (#0 Apr 13 1999, 10:51:12) [MSC 32 bit (Intel)]'
+ information on the build number and compiler used. This string is displayed
+ when the interactive interpreter is started. Do not extract version information
+ out of it, rather, use :data:`version_info` and the functions provided by the
+ :mod:`platform` module.
.. data:: api_version
Modified: python/branches/release27-maint/Lib/ntpath.py
==============================================================================
--- python/branches/release27-maint/Lib/ntpath.py (original)
+++ python/branches/release27-maint/Lib/ntpath.py Sun Aug 1 21:14:56 2010
@@ -399,6 +399,12 @@
"""Normalize path, eliminating double slashes, etc."""
# Preserve unicode (if path is unicode)
backslash, dot = (u'\\', u'.') if isinstance(path, unicode) else ('\\', '.')
+ if path.startswith(('\\\\.\\', '\\\\?\\')):
+ # in the case of paths with these prefixes:
+ # \\.\ -> device names
+ # \\?\ -> literal paths
+ # do not do any normalization, but return the path unchanged
+ return path
path = path.replace("/", "\\")
prefix, path = splitdrive(path)
# We need to be careful here. If the prefix is empty, and the path starts
Modified: python/branches/release27-maint/Lib/test/test_ntpath.py
==============================================================================
--- python/branches/release27-maint/Lib/test/test_ntpath.py (original)
+++ python/branches/release27-maint/Lib/test/test_ntpath.py Sun Aug 1 21:14:56 2010
@@ -123,6 +123,9 @@
tester("ntpath.normpath('C:////a/b')", r'C:\a\b')
tester("ntpath.normpath('//machine/share//a/b')", r'\\machine\share\a\b')
+ tester("ntpath.normpath('\\\\.\\NUL')", r'\\.\NUL')
+ tester("ntpath.normpath('\\\\?\\D:/XY\\Z')", r'\\?\D:/XY\Z')
+
def test_expandvars(self):
with test_support.EnvironmentVarGuard() as env:
env.clear()
Modified: python/branches/release27-maint/Lib/test/test_optparse.py
==============================================================================
--- python/branches/release27-maint/Lib/test/test_optparse.py (original)
+++ python/branches/release27-maint/Lib/test/test_optparse.py Sun Aug 1 21:14:56 2010
@@ -791,15 +791,13 @@
(options, args) = self.assertParseOK(["-q"],
{'verbose': 0},
[])
- if hasattr(__builtins__, 'False'):
- self.assertTrue(options.verbose is False)
+ self.assertTrue(options.verbose is False)
def test_bool_true(self):
(options, args) = self.assertParseOK(["-v"],
{'verbose': 1},
[])
- if hasattr(__builtins__, 'True'):
- self.assertTrue(options.verbose is True)
+ self.assertTrue(options.verbose is True)
def test_bool_flicker_on_and_off(self):
self.assertParseOK(["-qvq", "-q", "-v"],
Modified: python/branches/release27-maint/Misc/NEWS
==============================================================================
--- python/branches/release27-maint/Misc/NEWS (original)
+++ python/branches/release27-maint/Misc/NEWS Sun Aug 1 21:14:56 2010
@@ -27,6 +27,9 @@
- Issue #9448: Fix a leak of OS resources (mutexes or semaphores) when
re-initializing a buffered IO object by calling its ``__init__`` method.
+- Issue #7909: Do not touch paths with the special prefixes ``\\.\``
+ or ``\\?\`` in ntpath.normpath().
+
- Issue #5146: Handle UID THREAD command correctly in imaplib.
- Issue #5147: Fix the header generated for cookie files written by
Modified: python/branches/release27-maint/Python/getversion.c
==============================================================================
--- python/branches/release27-maint/Python/getversion.c (original)
+++ python/branches/release27-maint/Python/getversion.c Sun Aug 1 21:14:56 2010
@@ -9,7 +9,7 @@
Py_GetVersion(void)
{
static char version[250];
- PyOS_snprintf(version, sizeof(version), "%.80s (%.80s) %.80s",
+ PyOS_snprintf(version, sizeof(version), "%.80s (%.80s) %.80s",
PY_VERSION, Py_GetBuildInfo(), Py_GetCompiler());
return version;
}
More information about the Python-checkins
mailing list