Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | GH-118289: Fix handling of non-directories in `posixpath.realpath()` (#120127) | Barney Gale | 2024-11-13 | 1 | -4/+14 |
| | | | | | | | In strict mode, raise `NotADirectoryError` if we encounter a non-directory while we still have path parts left to process. We use a `part_count` variable rather than `len(rest)` because the `rest` stack also contains markers for unresolved symlinks. | ||||
* | pathlib ABCs: remove duplicate `realpath()` implementation. (#119178) | Barney Gale | 2024-06-05 | 1 | -11/+29 |
| | | | | | | | | | Add private `posixpath._realpath()` function, which is a generic version of `realpath()` that can be parameterised with string tokens (`sep`, `curdir`, `pardir`) and query functions (`getcwd`, `lstat`, `readlink`). Also add support for limiting the number of symlink traversals. In the private `pathlib._abc.PathBase` class, call `posixpath._realpath()` and remove our re-implementation of the same algorithm. No change to any public APIs, either in `posixpath` or `pathlib`. Co-authored-by: Nice Zombies <nineteendo19d0@gmail.com> | ||||
* | gh-118263: Add additional arguments to path_t (Argument Clinic type) in ↵ | Nice Zombies | 2024-05-24 | 1 | -36/+5 |
| | | | | posixmodule (GH-118355) | ||||
* | GH-118447: Fix handling of unreadable symlinks in `os.path.realpath()` (#118489) | Barney Gale | 2024-05-18 | 1 | -13/+13 |
| | | | Co-authored-by: Nice Zombies <nineteendo19d0@gmail.com> | ||||
* | gh-118119: Re-use `sep` in `posixpath.expanduser()` (GH-118120) | Nice Zombies | 2024-05-07 | 1 | -5/+2 |
| | |||||
* | gh-117607: Speedup os.path.relpath() (GH-117608) | Nice Zombies | 2024-05-01 | 1 | -3/+5 |
| | |||||
* | gh-102511: Speed up os.path.splitroot() with native helpers (GH-118089) | Nice Zombies | 2024-04-25 | 1 | -27/+47 |
| | |||||
* | gh-117641: Improve the perfornance of posixpath.commonpath() (#117652) | Nice Zombies | 2024-04-18 | 1 | -1/+1 |
| | |||||
* | gh-117394: Speed up os.path.ismount() on Posix (GH-117447) | Serhiy Storchaka | 2024-04-17 | 1 | -3/+6 |
| | | | | It is now 2-3 times faster if the user has permissions. | ||||
* | gh-117503: Fix support of non-ASCII user names in posixpath.expanduser() ↵ | Serhiy Storchaka | 2024-04-17 | 1 | -1/+1 |
| | | | | | (GH-117504) They are now supported in bytes paths as well as in string paths. | ||||
* | gh-117636: Remove redundant type check in `os.path.join()` (#117638) | Nice Zombies | 2024-04-14 | 1 | -4/+2 |
| | |||||
* | GH-117546: Fix symlink resolution in `os.path.realpath('loop/../link')` ↵ | Barney Gale | 2024-04-10 | 1 | -13/+2 |
| | | | | | | (#117568) Continue resolving symlink targets after encountering a symlink loop, which matches coreutils `realpath` behaviour. | ||||
* | gh-117648: Improve performance of os.join (#117654) | Nice Zombies | 2024-04-09 | 1 | -1/+2 |
| | | | | | Replace map() with a method call in the loop body. Co-authored-by: Pieter Eendebak <pieter.eendebak@gmail.com> | ||||
* | gh-117584: Raise TypeError for non-paths in posixpath.relpath() (GH-117585) | Nice Zombies | 2024-04-07 | 1 | -1/+1 |
| | |||||
* | GH-114847: Speed up `posixpath.realpath()` (#114848) | Barney Gale | 2024-04-05 | 1 | -34/+54 |
| | | | | | | | | | | | Apply the following optimizations to `posixpath.realpath()`: - Remove use of recursion - Construct child paths directly rather than using `join()` - Use `os.getcwd[b]()` rather than `abspath()` - Use `startswith(sep)` rather than `isabs()` - Use slicing rather than `split()` Co-authored-by: Petr Viktorin <encukou@gmail.com> | ||||
* | gh-117349: Micro-optimize a few `os.path` functions (#117350) | Nice Zombies | 2024-04-02 | 1 | -23/+20 |
| | | | | | Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com> Co-authored-by: Barney Gale <barney.gale@gmail.com> Co-authored-by: Pieter Eendebak <pieter.eendebak@gmail.com> | ||||
* | gh-117114: Make os.path.isdevdrive available on all platforms (GH-117115) | Nice Zombies | 2024-03-25 | 1 | -21/+1 |
| | |||||
* | gh-114709: Fix exceptions raised by posixpath.commonpath (#114710) | Sebastian Rittau | 2024-02-18 | 1 | -1/+2 |
| | | | | | | Fix the exceptions raised by posixpath.commonpath Raise ValueError, not IndexError when passed an empty iterable. Raise TypeError, not ValueError when passed None. | ||||
* | gh-101196: Make isdir/isfile/exists faster on Windows (GH-101324) | Michael Droettboom | 2023-02-08 | 1 | -12/+0 |
| | | | Co-authored-by: Eryk Sun <eryksun@gmail.com> | ||||
* | gh-101000: Add os.path.splitroot() (#101002) | Barney Gale | 2023-01-27 | 1 | -11/+32 |
| | | | | Co-authored-by: Eryk Sun <eryksun@gmail.com> Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com> | ||||
* | gh-99547: Add isjunction methods for checking if a path is a junction (GH-99548) | Charles Machalow | 2022-11-22 | 1 | -1/+11 |
| | |||||
* | gh-96192: fix os.ismount() to use a path that is str or bytes (#96194) | Christoph Anton Mitterer | 2022-11-14 | 1 | -0/+1 |
| | | | | | Signed-off-by: Christoph Anton Mitterer <mail@christoph.anton.mitterer.name> Co-authored-by: Eryk Sun <eryksun@gmail.com> Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com> | ||||
* | gh-91838: Resolve more HTTP links which redirect to HTTPS (GH-95650) | Serhiy Storchaka | 2022-08-08 | 1 | -1/+1 |
| | |||||
* | bpo-46933: Make pwd module optional (GH-31700) | Christian Heimes | 2022-03-07 | 1 | -2/+10 |
| | | | Co-authored-by: Erlend Egeberg Aasland <erlend.aasland@innova.no> | ||||
* | bpo-45582: Port getpath[p].c to Python (GH-29041) | Steve Dower | 2021-12-03 | 1 | -37/+49 |
| | | | | | 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-26329: update os.path.normpath documentation (GH-20138) | Furkan Onder | 2021-07-12 | 1 | -0/+1 |
| | | | | | | | | | * bpo-26329: update os.path.normpath documentation * Update os.path.rst * Update posixpath.py * update Pathname Resolution note | ||||
* | bpo-43757: Make pathlib use os.path.realpath() to resolve symlinks in a path ↵ | Barney Gale | 2021-04-28 | 1 | -7/+19 |
| | | | | | (GH-25264) Also adds a new "strict" argument to realpath() to avoid changing the default behaviour of pathlib while sharing the implementation. | ||||
* | bpo-31904: posixpath.expanduser() handles None user home on VxWorks (GH-23530) | pxinwr | 2020-12-17 | 1 | -0/+3 |
| | |||||
* | bpo-35755: Remove current directory from posixpath.defpath (GH-11586) | Victor Stinner | 2019-04-17 | 1 | -1/+1 |
| | | | Document the change in a NEWS entry of the Security category. | ||||
* | bpo-30427: eliminate redundant type checks in os.path.normcase() (GH-1712) | Wolfgang Maier | 2019-03-28 | 1 | -5/+1 |
| | | | https://bugs.python.org/issue30427 | ||||
* | bpo-35471: Remove the macpath module (GH-11129) | Victor Stinner | 2018-12-14 | 1 | -2/+2 |
| | | | | Python 2.4 dropped MacOS 9 support. The macpath module was deprecated in Python 3.7. This change removes it. | ||||
* | bpo-10496: posixpath.expanduser() catchs pwd.getpwuid() error (GH-10919) | Victor Stinner | 2018-12-05 | 1 | -1/+8 |
| | | | | | | | * posixpath.expanduser() now returns the input path unchanged if the HOME environment variable is not set and pwd.getpwuid() raises KeyError (the current user identifier doesn't exist in the password database). * Add test_no_home_directory() to test_site. | ||||
* | bpo-33721: Make some os.path functions and pathlib.Path methods be tolerant ↵ | Serhiy Storchaka | 2018-09-18 | 1 | -4/+4 |
| | | | | | | | | | | 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-31802: Fix importing native path module before importing os. (#4017) | Serhiy Storchaka | 2018-01-07 | 1 | -10/+12 |
| | |||||
* | Issue #26027, #27524: Add PEP 519/__fspath__() support to os and | Brett Cannon | 2016-08-26 | 1 | -1/+18 |
| | | | | | | os.path. Thanks to Jelle Zijlstra for the initial patch against posixmodule.c. | ||||
* | #2466: ismount now recognizes mount points user can't access. | R David Murray | 2016-08-19 | 1 | -0/+1 |
| | | | | | Patch by Robin Roth, reviewed by Serhiy Storchaka, comment wording tweaked by me. | ||||
* | Fix typos in code comments and documentation | Martin Panter | 2016-04-16 | 1 | -1/+1 |
| | |||||
* | Issue #23780: Improved error message in os.path.join() with single argument. | Serhiy Storchaka | 2015-05-19 | 1 | -0/+2 |
| | | | | Idea by R. David Murray. | ||||
* | Issue #10395: Added os.path.commonpath(). Implemented in posixpath and ntpath. | Serhiy Storchaka | 2015-03-31 | 1 | -1/+44 |
| | | | | Based on patch by Rafik Draoui. | ||||
* | Fixed tests on Windows for issue #21883. | Serhiy Storchaka | 2014-10-04 | 1 | -1/+1 |
| | |||||
* | Issue #21883: os.path.join() and os.path.relpath() now raise a TypeError with | Serhiy Storchaka | 2014-10-04 | 1 | -17/+16 |
| | | | | more helpful error message for unsupported or mismatched types of arguments. | ||||
* | Issue #22034: Improve handling of wrong argument types in posixpath.join(). | Serhiy Storchaka | 2014-08-24 | 1 | -8/+7 |
|\ | |||||
| * | Issue #22034: Got rid of misleading error message for bytearray arguments in | Serhiy Storchaka | 2014-08-24 | 1 | -4/+2 |
|/ | | | | posixpath.join(). | ||||
* | Issue #3485: remove misleading comment | Ned Deily | 2014-06-18 | 1 | -1/+0 |
| | |||||
* | Fixed typo in previous commit (issue #6815). | Serhiy Storchaka | 2014-02-13 | 1 | -1/+1 |
|\ | |||||
| * | Fixed typo in previous commit (issue #6815). | Serhiy Storchaka | 2014-02-13 | 1 | -1/+1 |
| | | |||||
* | | Issue #6815: os.path.expandvars() now supports non-ASCII environment | Serhiy Storchaka | 2014-02-13 | 1 | -8/+10 |
|\ \ | |/ | | | | | variables names and values. | ||||
| * | Issue #6815: os.path.expandvars() now supports non-ASCII environment | Serhiy Storchaka | 2014-02-13 | 1 | -8/+10 |
| | | | | | | | | variables names and values. | ||||
* | | Add in a comment that was removed in 240adc564539 (requested by Victor Stinner) | Brian Curtin | 2013-07-23 | 1 | -0/+1 |
| | | |||||
* | | Fix #18530. Remove extra stat call from posixpath.ismount | Brian Curtin | 2013-07-22 | 1 | -8/+14 |
| | |