This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: nturl2path: drive definition
Type: behavior Stage: patch review
Components: Windows Versions: Python 3.11
process
Status: open Resolution:
Dependencies: Superseder:
Assigned To: Nosy List: NickVeld, paul.moore, steve.dower, tim.golden, zach.ware
Priority: normal Keywords: patch

Created on 2021-08-02 12:24 by NickVeld, last changed 2022-04-11 14:59 by admin.

Pull Requests
URL Status Linked Edit
PR 27552 closed NickVeld, 2021-08-02 13:06
Messages (2)
msg398761 - (view) Author: Nick (NickVeld) Date: 2021-08-02 12:24
Due some problem in a third-party package the `url2path` function from `nturl2path` got `a/"https://b"` (without `, `a`,`b` are just masks ) as the first and only argument.

In the function there is the following code ( https://github.com/python/cpython/blob/414dcb13aaa4fd42f264fdee47782dede5c83d6c/Lib/nturl2path.py#L30 ; current state of the `main` branch):
```
comp = url.split('|')
if len(comp) != 2 or comp[0][-1] not in string.ascii_letters:
    error = 'Bad URL: ' + url
    raise OSError(error)
drive = comp[0][-1].upper()
```

As a result, the function decided that the file was located on the `S:` drive and returned the `S:\b` path without a warning.
To my mind, it is not right to take just the last letter as a drive letter because the returned path must be only for the specified URL and the unsupported ones must be marked as "bad" without any silent transformations.
msg398764 - (view) Author: Nick (NickVeld) Date: 2021-08-02 13:12
For the visualization I created a PR with a possible fix. (The link is set into the corresponding field.)

If everything is OK, I will perform all the required things like the CLA, news entry...
History
Date User Action Args
2022-04-11 14:59:48adminsetgithub: 88973
2021-08-02 13:12:06NickVeldsetmessages: + msg398764
2021-08-02 13:06:15NickVeldsetkeywords: + patch
stage: patch review
pull_requests: + pull_request26058
2021-08-02 12:24:05NickVeldcreate