From 9ed707eb4c56506a0e20072a0f5e43f8e5dbdeb8 Mon Sep 17 00:00:00 2001 From: Serhiy Storchaka Date: Fri, 13 Jan 2017 20:55:05 +0200 Subject: Issue #29197: Removed deprecated function ntpath.splitunc(). --- Doc/library/os.path.rst | 13 ------------- Doc/whatsnew/3.7.rst | 4 ++++ Lib/ntpath.py | 24 +----------------------- Lib/test/test_ntpath.py | 25 +------------------------ Misc/NEWS | 4 +++- 5 files changed, 9 insertions(+), 61 deletions(-) diff --git a/Doc/library/os.path.rst b/Doc/library/os.path.rst index 406054e..38a9331 100644 --- a/Doc/library/os.path.rst +++ b/Doc/library/os.path.rst @@ -453,19 +453,6 @@ the :mod:`glob` module.) Accepts a :term:`path-like object`. -.. function:: splitunc(path) - - .. deprecated:: 3.1 - Use *splitdrive* instead. - - Split the pathname *path* into a pair ``(unc, rest)`` so that *unc* is the UNC - mount point (such as ``r'\\host\mount'``), if present, and *rest* the rest of - the path (such as ``r'\path\file.ext'``). For paths containing drive letters, - *unc* will always be the empty string. - - Availability: Windows. - - .. data:: supports_unicode_filenames ``True`` if arbitrary Unicode strings can be used as file names (within limitations diff --git a/Doc/whatsnew/3.7.rst b/Doc/whatsnew/3.7.rst index e6dd5a1..56545b8 100644 --- a/Doc/whatsnew/3.7.rst +++ b/Doc/whatsnew/3.7.rst @@ -142,6 +142,10 @@ API and Feature Removals * Removed support of the *exclude* argument in :meth:`tarfile.TarFile.add`. Use the *filter* argument instead. +* The ``splitunc()`` function in the :mod:`ntpath` module was deprecated in + Python 3.1, and has now been removed. Use the :func:`~os.path.splitdrive` + function instead. + Porting to Python 3.7 ===================== diff --git a/Lib/ntpath.py b/Lib/ntpath.py index a8f4b37..10d3f2d 100644 --- a/Lib/ntpath.py +++ b/Lib/ntpath.py @@ -15,7 +15,7 @@ __all__ = ["normcase","isabs","join","splitdrive","split","splitext", "basename","dirname","commonprefix","getsize","getmtime", "getatime","getctime", "islink","exists","lexists","isdir","isfile", "ismount", "expanduser","expandvars","normpath","abspath", - "splitunc","curdir","pardir","sep","pathsep","defpath","altsep", + "curdir","pardir","sep","pathsep","defpath","altsep", "extsep","devnull","realpath","supports_unicode_filenames","relpath", "samefile", "sameopenfile", "samestat", "commonpath"] @@ -169,28 +169,6 @@ def splitdrive(p): return p[:0], p -# Parse UNC paths -def splitunc(p): - """Deprecated since Python 3.1. Please use splitdrive() instead; - it now handles UNC paths. - - Split a pathname into UNC mount point and relative path specifiers. - - Return a 2-tuple (unc, rest); either part may be empty. - If unc is not empty, it has the form '//host/mount' (or similar - using backslashes). unc+rest is always the input path. - Paths containing drive letters never have a UNC part. - """ - import warnings - warnings.warn("ntpath.splitunc is deprecated, use ntpath.splitdrive instead", - DeprecationWarning, 2) - drive, path = splitdrive(p) - if len(drive) == 2: - # Drive letter present - return p[:0], p - return drive, path - - # Split a path in head (everything up to the last '/') and tail (the # rest). After the trailing '/' is stripped, the invariant # join(head, tail) == p holds. diff --git a/Lib/test/test_ntpath.py b/Lib/test/test_ntpath.py index 90edb6d..15215e4 100644 --- a/Lib/test/test_ntpath.py +++ b/Lib/test/test_ntpath.py @@ -72,29 +72,6 @@ class TestNtpath(unittest.TestCase): self.assertEqual(ntpath.splitdrive('//conky/MOUNTPOİNT/foo/bar'), ('//conky/MOUNTPOİNT', '/foo/bar')) - def test_splitunc(self): - with self.assertWarns(DeprecationWarning): - ntpath.splitunc('') - with support.check_warnings(('', DeprecationWarning)): - tester('ntpath.splitunc("c:\\foo\\bar")', - ('', 'c:\\foo\\bar')) - tester('ntpath.splitunc("c:/foo/bar")', - ('', 'c:/foo/bar')) - tester('ntpath.splitunc("\\\\conky\\mountpoint\\foo\\bar")', - ('\\\\conky\\mountpoint', '\\foo\\bar')) - tester('ntpath.splitunc("//conky/mountpoint/foo/bar")', - ('//conky/mountpoint', '/foo/bar')) - tester('ntpath.splitunc("\\\\\\conky\\mountpoint\\foo\\bar")', - ('', '\\\\\\conky\\mountpoint\\foo\\bar')) - tester('ntpath.splitunc("///conky/mountpoint/foo/bar")', - ('', '///conky/mountpoint/foo/bar')) - tester('ntpath.splitunc("\\\\conky\\\\mountpoint\\foo\\bar")', - ('', '\\\\conky\\\\mountpoint\\foo\\bar')) - tester('ntpath.splitunc("//conky//mountpoint/foo/bar")', - ('', '//conky//mountpoint/foo/bar')) - self.assertEqual(ntpath.splitunc('//conky/MOUNTPOİNT/foo/bar'), - ('//conky/MOUNTPOİNT', '/foo/bar')) - def test_split(self): tester('ntpath.split("c:\\foo\\bar")', ('c:\\foo', 'bar')) tester('ntpath.split("\\\\conky\\mountpoint\\foo\\bar")', @@ -449,7 +426,7 @@ class TestNtpath(unittest.TestCase): class NtCommonTest(test_genericpath.CommonTest, unittest.TestCase): pathmodule = ntpath - attributes = ['relpath', 'splitunc'] + attributes = ['relpath'] class PathLikeTests(unittest.TestCase): diff --git a/Misc/NEWS b/Misc/NEWS index cad523a..10f93ba 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -212,7 +212,9 @@ Core and Builtins Library ------- -- Issue #29210: Removed support of deprecated argument "exclude" in +- Issue #29197: Removed deprecated function ntpath.splitunc(). + +- Issue #29210: Removed support of deprecated argument "exclude" in tarfile.TarFile.add(). - Issue #29219: Fixed infinite recursion in the repr of uninitialized -- cgit v0.12