[Python-modules-team] Bug#972516: dask: fsspec API changes / new aiohttp dependency
Rebecca N. Palmer
rebecca_palmer at zoho.com
Mon Oct 19 19:49:06 BST 2020
Package: python3-dask
Version: 2.11.0+dfsg-1
Some of fsspec's functionality now requires python3-aiohttp, including
parts used in dask autopkgtests:
https://ci.debian.net/data/autopkgtest/testing/amd64/d/dask/7549002/log.gz
Some of these work if I add a test-dependency, but 2 continue to fail.
Upstream fixes:
https://github.com/dask/dask/commit/024f690b6d269c11a496db088c4ddd8d5de12a49
https://github.com/dask/dask/commit/416d348f7174a302815758cb87dbf6983226ddc5
_________________________________ test_errors
__________________________________
dir_server = '/tmp/tmpt3k96rrg'
def test_errors(dir_server):
f = open_files("http://localhost:8999/doesnotexist")[0]
with pytest.raises(requests.exceptions.RequestException):
with f as f:
> f.read()
/usr/lib/python3/dist-packages/dask/bytes/tests/test_http.py:117:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _
/usr/lib/python3/dist-packages/fsspec/implementations/http.py:343: in read
self._fetch_all()
/usr/lib/python3/dist-packages/fsspec/asyn.py:121: in wrapper
return maybe_sync(func, self, *args, **kwargs)
/usr/lib/python3/dist-packages/fsspec/asyn.py:100: in maybe_sync
return sync(loop, func, *args, **kwargs)
/usr/lib/python3/dist-packages/fsspec/asyn.py:71: in sync
raise exc.with_traceback(tb)
/usr/lib/python3/dist-packages/fsspec/asyn.py:55: in f
result[0] = await future
/usr/lib/python3/dist-packages/fsspec/implementations/http.py:360: in
async_fetch_all
r.raise_for_status()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _
self = <ClientResponse(http://localhost:8999/doesnotexist) [404 File not
found]>
<CIMultiDictProxy('Server': 'SimpleHTTP/0.6 ...19 Oct 2020 18:05:00
GMT', 'Connection': 'close', 'Content-Type': 'text/html;charset=utf-8',
'Content-Length': '469')>
def raise_for_status(self) -> None:
if 400 <= self.status:
# reason should always be not None for a started response
assert self.reason is not None
self.release()
> raise ClientResponseError(
self.request_info,
self.history,
status=self.status,
message=self.reason,
headers=self.headers)
E aiohttp.client_exceptions.ClientResponseError: 404,
message='File not found', url=URL('http://localhost:8999/doesnotexist')
/usr/lib/python3/dist-packages/aiohttp/client_reqrep.py:941:
ClientResponseError
----------------------------- Captured stderr call
-----------------------------
127.0.0.1 - - [19/Oct/2020 18:05:00] code 404, message File not found
127.0.0.1 - - [19/Oct/2020 18:05:00] "HEAD /doesnotexist HTTP/1.1" 404 -
127.0.0.1 - - [19/Oct/2020 18:05:00] code 404, message File not found
127.0.0.1 - - [19/Oct/2020 18:05:00] "GET /doesnotexist HTTP/1.1" 404 -
________________________ test_urlpath_inference_errors
_________________________
def test_urlpath_inference_errors():
# Empty list
with pytest.raises(ValueError, match="empty"):
get_fs_token_paths([])
# Protocols differ
with pytest.raises(ValueError, match="the same protocol"):
get_fs_token_paths(["s3://test/path.csv", "/other/path.csv"])
# Options differ
with pytest.raises(ValueError, match="the same file-system
options"):
get_fs_token_paths(
[
"ftp://myuser@node.com/test/path.csv",
"ftp://otheruser@node.com/other/path.csv",
]
)
# Unknown type
with pytest.raises(TypeError):
> get_fs_token_paths(
{
"sets/are.csv",
"unordered/so/they.csv",
"should/not/be.csv",
"allowed.csv",
}
)
E Failed: DID NOT RAISE <class 'TypeError'>
/usr/lib/python3/dist-packages/dask/bytes/tests/test_local.py:86: Failed
More information about the Python-modules-team
mailing list