summaryrefslogtreecommitdiffstats
path: root/Lib/ntpath.py
Commit message (Collapse)AuthorAgeFilesLines
* GH-44626, GH-105476: Fix `ntpath.isabs()` handling of part-absolute paths ↵Barney Gale2024-01-131-10/+3
| | | | | | | | | | | | | (#113829) On Windows, `os.path.isabs()` now returns `False` when given a path that starts with exactly one (back)slash. This is more compatible with other functions in `os.path`, and with Microsoft's own documentation. Also adjust `pathlib.PureWindowsPath.is_absolute()` to call `ntpath.isabs()`, which corrects its handling of partial UNC/device paths like `//foo`. Co-authored-by: Jon Foster <jon@jon-foster.co.uk>
* gh-82367: Use `FindFirstFile` Win32 API in `ntpath.realpath()` (GH-110298)박문식2023-10-051-6/+10
| | | | | | | * Use `FindFirstFile` Win32 API to fix a bug where `ntpath.realpath()` breaks out of traversing a series of paths where a (handled) `ERROR_ACCESS_DENIED` or `ERROR_SHARING_VIOLATION` occurs. * Update docs to reflect that `ntpath.realpath()` eliminates MS-DOS style names.
* gh-106242: Make ntpath.realpath errors consistent with abspath when there ↵Steve Dower2023-08-221-0/+12
| | | | | | | | | | | | | are embedded nulls (GH-108248) * gh-106242: Make ntpath.realpath errors consistent with abspath when there are embedded nulls * Update 2023-08-22-00-36-57.gh-issue-106242.q24ITw.rst mention Windows and the former incorrect ValueError. --------- Co-authored-by: Gregory P. Smith <greg@krypto.org>
* gh-104803: Implement ntpath.isdevdrive for checking whether a path is on a ↵Steve Dower2023-05-291-0/+16
| | | | Windows Dev Drive (GH-104805)
* GH-103220: Fix `ntpath.join()` of partial UNC drive with trailing slash ↵Barney Gale2023-04-111-1/+1
| | | | (GH-103221)
* GH-88013: Fix TypeError raised by ntpath.realpath in some cases (GH-102813)AN Long2023-04-071-1/+1
|
* gh-101196: Make isdir/isfile/exists faster on Windows (GH-101324)Michael Droettboom2023-02-081-19/+8
| | | Co-authored-by: Eryk Sun <eryksun@gmail.com>
* gh-101000: Add os.path.splitroot() (#101002)Barney Gale2023-01-271-54/+72
| | | | Co-authored-by: Eryk Sun <eryksun@gmail.com> Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
* gh-96290: Support partial/invalid UNC drives in ntpath.normpath() and ↵Barney Gale2023-01-121-34/+21
| | | | | | | splitdrive() (GH-100351) This brings the Python implementation of `ntpath.normpath()` in line with the C implementation added in 99fcf15 Co-authored-by: Eryk Sun <eryksun@gmail.com>
* bpo-44817: Ignore additional errors in ntpath.realpath (GH-27574)Michael Förderer2022-12-051-1/+4
|
* gh-99547: Add isjunction methods for checking if a path is a junction (GH-99548)Charles Machalow2022-11-221-1/+19
|
* gh-89545: Updates platform module to use new internal _wmi module on Windows ↵Steve Dower2022-09-071-3/+2
| | | | to directly query OS properties (GH-96289)
* gh-81790: support "UNC" device paths in `ntpath.splitdrive()` (GH-91882)Barney Gale2022-06-101-1/+7
|
* bpo-42658: Use LCMapStringEx in ntpath.normcase to match OS behaviour for ↵AN Long2022-06-061-8/+34
| | | | case-folding (GH-32010)
* bpo-46362: Ensure ntpath.abspath() uses the Windows API correctly (GH-30571)neonene2022-01-131-1/+1
| | | This makes ntpath.abspath()/getpath_abspath() follow normpath(), since some WinAPIs such as PathCchSkipRoot() require backslashed paths.
* bpo-45582: Port getpath[p].c to Python (GH-29041)Steve Dower2021-12-031-49/+63
| | | | | The getpath.py file is frozen at build time and executed as code over a namespace. It is never imported, nor is it meant to be importable or reusable. However, it should be easier to read, modify, and patch than the previous code. This commit attempts to preserve every previously tested quirk, but these may be changed in the future to better align platforms.
* bpo-43757: Make pathlib use os.path.realpath() to resolve symlinks in a path ↵Barney Gale2021-04-281-1/+3
| | | | | (GH-25264) Also adds a new "strict" argument to realpath() to avoid changing the default behaviour of pathlib while sharing the implementation.
* bpo-39899: Don't double-check directory name if we're requesting the current ↵Barney Gale2021-04-091-8/+9
| | | | user's home directory in ntpath.expanduser() (GH-25277)
* bpo-39899: os.path.expanduser(): don't guess other Windows users' home ↵Barney Gale2021-04-071-3/+15
| | | | | | | directories if the basename of the current user's home directory doesn't match their username. (GH-18841) This makes `ntpath.expanduser()` match `pathlib.Path.expanduser()` in this regard, and is more in line with `posixpath.expanduser()`'s cautious approach. Also remove the near-duplicate implementation of `expanduser()` in pathlib, and by doing so fix a bug where KeyError could be raised when expanding another user's home directory.
* bpo-38453: Ensure ntpath.realpath correctly resolves relative paths (GH-16967)Steve Dower2019-11-151-8/+41
| | | | | Ensure isabs() is always True for \\?\ prefixed paths Avoid unnecessary usage of readlink() to avoid resolving broken links incorrectly Ensure shutil tests run in test directory
* bpo-38355: Fix ntpath.realpath failing on sys.executable (GH-16551)Steve Dower2019-10-031-11/+9
|
* bpo-38081: Add more non-fatal error codes for ntpath.realpath (GH-16156)Steve Dower2019-09-161-7/+34
|
* bpo-38081: Fixes ntpath.realpath('NUL') (GH-15899)Steve Dower2019-09-111-6/+7
|
* bpo-9949: Call normpath() in realpath() and avoid unnecessary prefixes ↵Steve Dower2019-08-211-3/+8
| | | | (GH-15369)
* bpo-9949: Enable symlink traversal for ntpath.realpath (GH-15287)Steve Dower2019-08-211-19/+88
|
* bpo-30427: eliminate redundant type checks in os.path.normcase() (GH-1712)Wolfgang Maier2019-03-281-10/+4
| | | https://bugs.python.org/issue30427
* bpo-36264: Don't honor POSIX HOME in os.path.expanduser on Windows (GH-12282)Anthony Sottile2019-03-121-3/+1
|
* bpo-31047: Fix ntpath.abspath to trim ending separator (GH-10082)Tim Graham2018-10-251-1/+1
| | | Regression in b0bf51b32240369ccb736dc32ff82bb96f375402.
* bpo-33721: Make some os.path functions and pathlib.Path methods be tolerant ↵Serhiy Storchaka2018-09-181-3/+3
| | | | | | | | | | to invalid paths. (#7695) Such functions as os.path.exists(), os.path.lexists(), os.path.isdir(), os.path.isfile(), os.path.islink(), and os.path.ismount() now return False instead of raising ValueError or its subclasses UnicodeEncodeError and UnicodeDecodeError for paths that contain characters or bytes unrepresentative at the OS level.
* bpo-31047: Fix ntpath.abspath for invalid paths (GH-8544)Franz Wöllert2018-07-291-22/+20
|
* bpo-31802: Fix importing native path module before importing os. (#4017)Serhiy Storchaka2018-01-071-11/+12
|
* Issue #29197: Removed deprecated function ntpath.splitunc().Serhiy Storchaka2017-01-131-23/+1
|
* Issue #27355: Removed support for Windows CE. It was never finished,Larry Hastings2016-09-051-2/+0
| | | | and Windows CE is no longer a relevant platform for Python.
* Issue #26027, #27524: Add PEP 519/__fspath__() support to os andBrett Cannon2016-08-261-2/+16
| | | | | | os.path. Thanks to Jelle Zijlstra for the initial patch against posixmodule.c.
* Correct “an” → “a” with “Unicode”, “user”, “UTF”, etcMartin Panter2016-04-151-1/+1
| | | | This affects documentation, code comments, and a debugging messages.
* Issue #23780: Improved error message in os.path.join() with single argument.Serhiy Storchaka2015-05-191-0/+2
| | | | Idea by R. David Murray.
* Issue #10395: Added os.path.commonpath(). Implemented in posixpath and ntpath.Serhiy Storchaka2015-03-311-1/+62
| | | | Based on patch by Rafik Draoui.
* Issue #23742: ntpath.expandvars() no longer loses unbalanced single quotes.Serhiy Storchaka2015-03-251-1/+1
|\
| * Issue #23742: ntpath.expandvars() no longer loses unbalanced single quotes.Serhiy Storchaka2015-03-251-1/+1
| |
* | Fixed tests on Windows for issue #21883.Serhiy Storchaka2014-10-041-1/+1
| |
* | Issue #21883: os.path.join() and os.path.relpath() now raise a TypeError withSerhiy Storchaka2014-10-041-44/+52
| | | | | | | | more helpful error message for unsupported or mismatched types of arguments.
* | Issue #15275: Clean up and speed up the ntpath module.Serhiy Storchaka2014-07-231-93/+77
|/
* Issue #6815: os.path.expandvars() now supports non-ASCII environmentSerhiy Storchaka2014-02-131-29/+31
|\ | | | | | | variables names and values.
| * Issue #6815: os.path.expandvars() now supports non-ASCII environmentSerhiy Storchaka2014-02-131-29/+31
| | | | | | | | variables names and values.
* | Issue #19456: ntpath.join() now joins relative paths correctly when a driveSerhiy Storchaka2014-01-271-76/+30
|\ \ | |/ | | | | is present.
| * Issue #19456: ntpath.join() now joins relative paths correctly when a driveSerhiy Storchaka2014-01-271-76/+30
| | | | | | | | is present.
* | Issue #19912: Fixed numerous bugs in ntpath.splitunc().Serhiy Storchaka2013-12-161-20/+6
|\ \ | |/ | | | | | | | | | | | | * splitunc() no more return illegal result for paths with redundant slashes. * splitunc() now correctly processes the 'İ' character (U+0130, LATIN CAPITAL LETTER I WITH DOT ABOVE). * Deprecation warnings now emitted for every use of splitunc(). * Added tests for splitunc().
| * Issue #19912: Fixed numerous bugs in ntpath.splitunc().Serhiy Storchaka2013-12-161-20/+6
| | | | | | | | | | | | | | | | * splitunc() no more return illegal result for paths with redundant slashes. * splitunc() now correctly processes the 'İ' character (U+0130, LATIN CAPITAL LETTER I WITH DOT ABOVE). * Deprecation warnings now emitted for every use of splitunc(). * Added tests for splitunc().
* | Issue #19911: ntpath.splitdrive() now correctly processes the 'İ' characterSerhiy Storchaka2013-12-161-1/+1
|\ \ | |/ | | | | (U+0130, LATIN CAPITAL LETTER I WITH DOT ABOVE).
| * Issue #19911: ntpath.splitdrive() now correctly processes the 'İ' characterSerhiy Storchaka2013-12-161-1/+1
| | | | | | | | (U+0130, LATIN CAPITAL LETTER I WITH DOT ABOVE).