Some of our builds are reliably failing with
requests.exceptions.HTTPError: 404 Client Error: Not Found for url: https://github.com/scikit-image/scikit-image/raw/master/skimage/feature/tests/data/OriginalX75Y75.png
Full error:
=================================== FAILURES ===================================
____________________ test_masked_registration_padfield_data ____________________
def test_masked_registration_padfield_data():
""" Masked translation registration should behave like in the original
publication """
# Test translated from MATLABimplementation `MaskedFFTRegistrationTest`
# file. You can find the source code here:
# http://www.dirkpadfield.com/Home/MaskedFFTRegistrationCode.zip
shifts = [(75, 75), (-130, 130), (130, 130)]
for xi, yi in shifts:
fixed_image = imread(
fetch('feature/tests/data/OriginalX{:d}Y{:d}.png'
> ''.format(xi, yi)))
scikit-image/skimage/registration/tests/test_masked_phase_cross_correlation.py:107:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
scikit-image/skimage/_shared/testing.py:216: in fetch
return data._fetch(data_filename)
scikit-image/skimage/data/__init__.py:155: in _fetch
resolved_path = image_fetcher.fetch(data_filename)
../../venv/lib/python3.7/site-packages/pooch/core.py:563: in fetch
stream_download(url, full_path, known_hash, downloader, pooch=self)
../../venv/lib/python3.7/site-packages/pooch/core.py:731: in stream_download
downloader(url, tmp, pooch)
../../venv/lib/python3.7/site-packages/pooch/downloaders.py:168: in __call__
response.raise_for_status()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <Response [404]>
def raise_for_status(self):
"""Raises stored :class:`HTTPError`, if one occurred."""
http_error_msg = ''
if isinstance(self.reason, bytes):
# We attempt to decode utf-8 first because some servers
# choose to localize their reason strings. If the string
# isn't utf-8, we fall back to iso-8859-1 for all other
# encodings. (See PR #3538)
try:
reason = self.reason.decode('utf-8')
except UnicodeDecodeError:
reason = self.reason.decode('iso-8859-1')
else:
reason = self.reason
if 400 <= self.status_code < 500:
http_error_msg = u'%s Client Error: %s for url: %s' % (self.status_code, reason, self.url)
elif 500 <= self.status_code < 600:
http_error_msg = u'%s Server Error: %s for url: %s' % (self.status_code, reason, self.url)
if http_error_msg:
> raise HTTPError(http_error_msg, response=self)
E requests.exceptions.HTTPError: 404 Client Error: Not Found for url: https://github.com/scikit-image/scikit-image/raw/master/skimage/feature/tests/data/OriginalX75Y75.png
../../venv/lib/python3.7/site-packages/requests/models.py:941: HTTPError
----------------------------- Captured stderr call -----------------------------
Downloading file 'feature/tests/data/OriginalX75Y75.png' from 'https://github.com/scikit-image/scikit-image/raw/master/skimage/feature/tests/data/OriginalX75Y75.png' to '/home/travis/.cache/scikit-image/master'.
Indeed, the file is not there anymore. I think this is caused by #4503. Additionally, pooch urls should point to a stable blob rather than to master.
I think this issue may need to be reopened and reframed.
As a failure of our test system to catch these sorts of integration challenges.
I fully agree with Mark
Most helpful comment
I think this issue may need to be reopened and reframed.
As a failure of our test system to catch these sorts of integration challenges.