]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
bpo-43564: preserve original exception in args of FTP URLError (#24938)
authorCarl Meyer <carl@oddbird.net>
Mon, 10 Oct 2022 01:59:07 +0000 (03:59 +0200)
committerGitHub <noreply@github.com>
Mon, 10 Oct 2022 01:59:07 +0000 (18:59 -0700)
* bpo-43564: preserve original error in args of FTP URLError

* Add NEWS blurb

Co-authored-by: Carl Meyer <carljm@instagram.com>
Lib/urllib/request.py
Misc/NEWS.d/next/Library/2022-10-09-12-12-38.gh-issue-87730.ClgP3f.rst [new file with mode: 0644]

index e2d5b8c5c59a3c9e1123a67794cc9a9462d146bc..278aa3a14bfeea00d051d081e4af11d1f1fc2af3 100644 (file)
@@ -1582,7 +1582,7 @@ class FTPHandler(BaseHandler):
             headers = email.message_from_string(headers)
             return addinfourl(fp, headers, req.full_url)
         except ftplib.all_errors as exp:
-            raise URLError(f'ftp error: {exp}') from exp
+            raise URLError(exp) from exp
 
     def connect_ftp(self, user, passwd, host, port, dirs, timeout):
         return ftpwrapper(user, passwd, host, port, dirs, timeout,
diff --git a/Misc/NEWS.d/next/Library/2022-10-09-12-12-38.gh-issue-87730.ClgP3f.rst b/Misc/NEWS.d/next/Library/2022-10-09-12-12-38.gh-issue-87730.ClgP3f.rst
new file mode 100644 (file)
index 0000000..6c63fa4
--- /dev/null
@@ -0,0 +1,3 @@
+Wrap network errors consistently in urllib FTP support, so the test suite
+doesn't fail when a network is available but the public internet is not
+reachable.