summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuido van Rossum <guido@python.org>2016-05-19 20:10:20 (GMT)
committerGuido van Rossum <guido@python.org>2016-05-19 20:10:20 (GMT)
commit387e6e38175b853741c4f35e08791f0990bc0845 (patch)
treed869c7273239c3991c3e5a54ae6966462260ac3c
parentd8bf09c6cd1137b148a06a0283c060e3e1e6cc46 (diff)
parent3d4d01f614d894327bbdc1feadebd50b2d3621ff (diff)
downloadcpython-387e6e38175b853741c4f35e08791f0990bc0845.zip
cpython-387e6e38175b853741c4f35e08791f0990bc0845.tar.gz
cpython-387e6e38175b853741c4f35e08791f0990bc0845.tar.bz2
Back out pathlib.Path.path attr. (Merge 3.4->3.5)
-rw-r--r--Doc/library/pathlib.rst22
-rw-r--r--Lib/pathlib.py7
-rw-r--r--Lib/test/test_pathlib.py27
-rw-r--r--Misc/NEWS6
4 files changed, 0 insertions, 62 deletions
diff --git a/Doc/library/pathlib.rst b/Doc/library/pathlib.rst
index a7ce18d..2f06544 100644
--- a/Doc/library/pathlib.rst
+++ b/Doc/library/pathlib.rst
@@ -365,28 +365,6 @@ Pure paths provide the following methods and properties:
''
-.. data:: PurePath.path
-
- A string representing the full path::
-
- >>> PurePosixPath('my/library/setup.py').path
- 'my/library/setup.py'
-
- This always returns the same value as ``str(p)``; it is included to
- serve as a one-off protocol. Code that wants to support both
- strings and ``pathlib.Path`` objects as filenames can write
- ``arg = getattr(arg, 'path', arg)`` to get the path as a string.
- This can then be passed to various system calls or library
- functions that expect a string. Unlike the alternative
- ``arg = str(arg)``, this will still raise an exception if an object
- of some other type is given by accident.
-
- A nice advantage is that this protocol is also supported by
- :class:`os.DirEntry` objects returned by :func:`os.scandir`.
-
- .. versionadded:: 3.4.5
- .. versionadded:: 3.5.2
-
.. data:: PurePath.suffix
The file extension of the final component, if any::
diff --git a/Lib/pathlib.py b/Lib/pathlib.py
index ed31ddb..caf685e 100644
--- a/Lib/pathlib.py
+++ b/Lib/pathlib.py
@@ -693,13 +693,6 @@ class PurePath(object):
self._parts) or '.'
return self._str
- @property
- def path(self):
- try:
- return self._str
- except AttributeError:
- return str(self)
-
def as_posix(self):
"""Return the string representation of the path with forward (/)
slashes."""
diff --git a/Lib/test/test_pathlib.py b/Lib/test/test_pathlib.py
index 0ea4aef..fa96d9f 100644
--- a/Lib/test/test_pathlib.py
+++ b/Lib/test/test_pathlib.py
@@ -477,22 +477,6 @@ class _BasePurePathTest(object):
self.assertEqual(P('a/b.py').name, 'b.py')
self.assertEqual(P('/a/b.py').name, 'b.py')
- def test_path_common(self):
- P = self.cls
- def check(arg, expected=None):
- if expected is None:
- expected = arg
- self.assertEqual(P(arg).path, expected.replace('/', self.sep))
- check('', '.')
- check('.')
- check('/')
- check('a/b')
- check('/a/b')
- check('/a/b/', '/a/b')
- check('/a/b/.', '/a/b')
- check('a/b.py')
- check('/a/b.py')
-
def test_suffix_common(self):
P = self.cls
self.assertEqual(P('').suffix, '')
@@ -915,17 +899,6 @@ class PureWindowsPathTest(_BasePurePathTest, unittest.TestCase):
self.assertEqual(P('//My.py/Share.php').name, '')
self.assertEqual(P('//My.py/Share.php/a/b').name, 'b')
- def test_path(self):
- P = self.cls
- self.assertEqual(P('c:').path, 'c:')
- self.assertEqual(P('c:/').path, 'c:\\')
- self.assertEqual(P('c:a/b').path, 'c:a\\b')
- self.assertEqual(P('c:/a/b').path, 'c:\\a\\b')
- self.assertEqual(P('c:a/b.py').path, 'c:a\\b.py')
- self.assertEqual(P('c:/a/b.py').path, 'c:\\a\\b.py')
- self.assertEqual(P('//My.py/Share.php').path, '\\\\My.py\\Share.php\\')
- self.assertEqual(P('//My.py/Share.php/a/b').path, '\\\\My.py\\Share.php\\a\\b')
-
def test_suffix(self):
P = self.cls
self.assertEqual(P('c:').suffix, '')
diff --git a/Misc/NEWS b/Misc/NEWS
index d42f1e8..303563f 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -370,12 +370,6 @@ Library
- Issue #25672: In the ssl module, enable the SSL_MODE_RELEASE_BUFFERS mode
option if it is safe to do so.
-- Issue #22570: Add 'path' attribute to pathlib.Path objects,
- returning the same as str(), to make it more similar to DirEntry.
- Library code can now write getattr(p, 'path', p) to get the path as
- a string from a Path, a DirEntry, or a plain string. This is
- essentially a small one-off protocol.
-
- Issue #26012: Don't traverse into symlinks for ** pattern in
pathlib.Path.[r]glob().