Created attachment 1561038 [details] Full log from Copr asv-0.3.1-8.fc31 fails to build from sources with test failures caused by: LookupError: unknown encoding: unicode-internal (full log attached) unicode_internal codec was deprecated since Python 3.3 and removed from Python 3.8: https://bugs.python.org/issue36297
This is fixed upstream, though the PR is pretty big, so I'm hoping there'll be a release I can build soon instead of backporting.
Should be fixed in the latest release.
Thanks! I cannot test this yet, as it is blocked by scipy. I will close this BZ once I can verify the fix.
_____________________________ test_web_regressions _____________________________ browser = <selenium.webdriver.chrome.webdriver.WebDriver (session="8d7999ad0827d8a9741999e4bdbd2bf9")> basic_html = ('/builddir/build/BUILD/asv-0.4.1/.pytest_cache/d/asv-test_web-basic_html/cache/cached/html', <test.tools.Git object at 0x7f1f79027070>) @pytest.mark.flaky(reruns=1, reruns_delay=5) def test_web_regressions(browser, basic_html): html_dir, dvcs = basic_html bad_commit_hash = dvcs.get_hash('master~9') browser.set_window_size(1200, 900) with tools.preview(html_dir) as base_url: get_with_retry(browser, base_url) regressions_btn = browser.find_element_by_link_text('Regressions') regressions_btn.click() # Wait for element to appear in the table WebDriverWait(browser, WAIT_TIME).until(EC.text_to_be_present_in_element( ('xpath', '//table[1]/tbody/tr[2]/td[1]'), 'params_examples.track_find_test' )) # Check that the expected links appear in the table regression_1 = browser.find_element_by_link_text('params_examples.track_find_test(1)') regression_2 = browser.find_element_by_link_text('params_examples.track_find_test(2)') bad_hash_link = browser.find_element_by_link_text(bad_commit_hash[:8]) href = regression_1.get_attribute('href') assert '/#params_examples.track_find_test?' in href assert 'commits=' in href # Sort the tables vs. benchmark name (PhantomJS doesn't allow doing it via actionchains) browser.execute_script("$('thead th').eq(0).stupidsort('asc')") WebDriverWait(browser, WAIT_TIME).until(EC.text_to_be_present_in_element( ('xpath', '//table[1]/tbody/tr[1]/td[1]'), 'params_examples.track_find_test(1)' )) # Check the contents of the table table_rows = browser.find_elements_by_xpath('//table[1]/tbody/tr') assert len(table_rows) == 2 cols1 = [td.text for td in table_rows[0].find_elements_by_xpath('td')] cols2 = [td.text for td in table_rows[1].find_elements_by_xpath('td')] assert cols1[0] == 'params_examples.track_find_test(1)' assert cols2[0] == 'params_examples.track_find_test(2)' assert re.match(r'^\d\d\d\d-\d\d-\d\d \d\d:\d\d$', cols1[1]) assert re.match(r'^\d\d\d\d-\d\d-\d\d \d\d:\d\d$', cols2[1]) assert cols1[2:] == [bad_commit_hash[:8], '2.00x', '1.00', '2.00', 'Ignore'] assert cols2[2:] == [bad_commit_hash[:8], '2.00x', '1.00', '2.00', 'Ignore'] # Check that the ignore buttons work as expected buttons = [button for button in browser.find_elements_by_xpath('//button') if button.text == 'Ignore'] buttons[0].click() # The button should disappear, together with the link > WebDriverWait(browser, WAIT_TIME).until_not(EC.visibility_of(buttons[0])) /builddir/build/BUILD/asv-0.4.1/test/test_web.py:220: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3.8/site-packages/selenium/webdriver/support/wait.py:88: in until_not value = method(self._driver) /usr/lib/python3.8/site-packages/selenium/webdriver/support/expected_conditions.py:143: in __call__ return _element_if_visible(self.element) /usr/lib/python3.8/site-packages/selenium/webdriver/support/expected_conditions.py:147: in _element_if_visible return element if element.is_displayed() == visibility else False /usr/lib/python3.8/site-packages/selenium/webdriver/remote/webelement.py:490: in is_displayed return self._execute(Command.IS_ELEMENT_DISPLAYED)['value'] /usr/lib/python3.8/site-packages/selenium/webdriver/remote/webelement.py:628: in _execute return self._parent.execute(command, params) /usr/lib/python3.8/site-packages/selenium/webdriver/remote/webdriver.py:314: in execute self.error_handler.check_response(response) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <selenium.webdriver.remote.errorhandler.ErrorHandler object at 0x7f1f78fd6be0> response = {'status': 404, 'value': '{"value":{"error":"unknown command","message":"unknown command: Cannot call non W3C standard...4 base::(anonymous namespace)::ThreadFunc()\\n#13 0x7fc33b1c74e2 start_thread\\n#14 0x7fc33ac48623 __GI___clone\\n"}}'} def check_response(self, response): """ Checks that a JSON response from the WebDriver does not have an error. :Args: - response - The JSON response from the WebDriver server as a dictionary object. :Raises: If the response contains an error message. """ status = response.get('status', None) if status is None or status == ErrorCode.SUCCESS: return value = None message = response.get("message", "") screen = response.get("screen", "") stacktrace = None if isinstance(status, int): value_json = response.get('value', None) if value_json and isinstance(value_json, basestring): import json try: value = json.loads(value_json) if len(value.keys()) == 1: value = value['value'] status = value.get('error', None) if status is None: status = value["status"] message = value["value"] if not isinstance(message, basestring): value = message message = message.get('message') else: message = value.get('message', None) except ValueError: pass exception_class = ErrorInResponseException if status in ErrorCode.NO_SUCH_ELEMENT: exception_class = NoSuchElementException elif status in ErrorCode.NO_SUCH_FRAME: exception_class = NoSuchFrameException elif status in ErrorCode.NO_SUCH_WINDOW: exception_class = NoSuchWindowException elif status in ErrorCode.STALE_ELEMENT_REFERENCE: exception_class = StaleElementReferenceException elif status in ErrorCode.ELEMENT_NOT_VISIBLE: exception_class = ElementNotVisibleException elif status in ErrorCode.INVALID_ELEMENT_STATE: exception_class = InvalidElementStateException elif status in ErrorCode.INVALID_SELECTOR \ or status in ErrorCode.INVALID_XPATH_SELECTOR \ or status in ErrorCode.INVALID_XPATH_SELECTOR_RETURN_TYPER: exception_class = InvalidSelectorException elif status in ErrorCode.ELEMENT_IS_NOT_SELECTABLE: exception_class = ElementNotSelectableException elif status in ErrorCode.ELEMENT_NOT_INTERACTABLE: exception_class = ElementNotInteractableException elif status in ErrorCode.INVALID_COOKIE_DOMAIN: exception_class = InvalidCookieDomainException elif status in ErrorCode.UNABLE_TO_SET_COOKIE: exception_class = UnableToSetCookieException elif status in ErrorCode.TIMEOUT: exception_class = TimeoutException elif status in ErrorCode.SCRIPT_TIMEOUT: exception_class = TimeoutException elif status in ErrorCode.UNKNOWN_ERROR: exception_class = WebDriverException elif status in ErrorCode.UNEXPECTED_ALERT_OPEN: exception_class = UnexpectedAlertPresentException elif status in ErrorCode.NO_ALERT_OPEN: exception_class = NoAlertPresentException elif status in ErrorCode.IME_NOT_AVAILABLE: exception_class = ImeNotAvailableException elif status in ErrorCode.IME_ENGINE_ACTIVATION_FAILED: exception_class = ImeActivationFailedException elif status in ErrorCode.MOVE_TARGET_OUT_OF_BOUNDS: exception_class = MoveTargetOutOfBoundsException elif status in ErrorCode.JAVASCRIPT_ERROR: exception_class = JavascriptException elif status in ErrorCode.SESSION_NOT_CREATED: exception_class = SessionNotCreatedException elif status in ErrorCode.INVALID_ARGUMENT: exception_class = InvalidArgumentException elif status in ErrorCode.NO_SUCH_COOKIE: exception_class = NoSuchCookieException elif status in ErrorCode.UNABLE_TO_CAPTURE_SCREEN: exception_class = ScreenshotException elif status in ErrorCode.ELEMENT_CLICK_INTERCEPTED: exception_class = ElementClickInterceptedException elif status in ErrorCode.INSECURE_CERTIFICATE: exception_class = InsecureCertificateException elif status in ErrorCode.INVALID_COORDINATES: exception_class = InvalidCoordinatesException elif status in ErrorCode.INVALID_SESSION_ID: exception_class = InvalidSessionIdException elif status in ErrorCode.UNKNOWN_METHOD: exception_class = UnknownMethodException else: exception_class = WebDriverException if value == '' or value is None: value = response['value'] if isinstance(value, basestring): if exception_class == ErrorInResponseException: raise exception_class(response, value) raise exception_class(value) if message == "" and 'message' in value: message = value['message'] screen = None if 'screen' in value: screen = value['screen'] stacktrace = None if 'stackTrace' in value and value['stackTrace']: stacktrace = [] try: for frame in value['stackTrace']: line = self._value_or_default(frame, 'lineNumber', '') file = self._value_or_default(frame, 'fileName', '<anonymous>') if line: file = "%s:%s" % (file, line) meth = self._value_or_default(frame, 'methodName', '<anonymous>') if 'className' in frame: meth = "%s.%s" % (frame['className'], meth) msg = " at %s (%s)" msg = msg % (meth, file) stacktrace.append(msg) except TypeError: pass if exception_class == ErrorInResponseException: raise exception_class(response, message) elif exception_class == UnexpectedAlertPresentException: alert_text = None if 'data' in value: alert_text = value['data'].get('text') elif 'alert' in value: alert_text = value['alert'].get('text') raise exception_class(message, screen, stacktrace, alert_text) > raise exception_class(message, screen, stacktrace) E selenium.common.exceptions.WebDriverException: Message: unknown command: Cannot call non W3C standard command while in W3C mode /usr/lib/python3.8/site-packages/selenium/webdriver/remote/errorhandler.py:242: WebDriverException ----------------------------- Captured stderr call ----------------------------- 127.0.0.1 - - [08/Jul/2019 15:38:18] "GET /info.json?_=1562600298768 HTTP/1.1" 200 - 127.0.0.1 - - [08/Jul/2019 15:38:18] "GET /index.json?timestamp=1562600294840 HTTP/1.1" 304 - 127.0.0.1 - - [08/Jul/2019 15:38:18] code 404, message File not found 127.0.0.1 - - [08/Jul/2019 15:38:18] "GET /graphs/summary/cache_examples.ClassLevelCacheTimeout.track_fail.json?timestamp=1562600294840 HTTP/1.1" 404 - 127.0.0.1 - - [08/Jul/2019 15:38:18] code 404, message File not found 127.0.0.1 - - [08/Jul/2019 15:38:18] "GET /graphs/summary/cache_examples.ClassLevelCacheTimeoutSuccess.track_success.json?timestamp=1562600294840 HTTP/1.1" 404 - 127.0.0.1 - - [08/Jul/2019 15:38:18] code 404, message File not found 127.0.0.1 - - [08/Jul/2019 15:38:18] "GET /graphs/summary/cache_examples.ClassLevelSetup.track_example.json?timestamp=1562600294840 HTTP/1.1" 404 - 127.0.0.1 - - [08/Jul/2019 15:38:18] code 404, message File not found 127.0.0.1 - - [08/Jul/2019 15:38:18] "GET /graphs/summary/cache_examples.ClassLevelSetup.track_example2.json?timestamp=1562600294840 HTTP/1.1" 404 - 127.0.0.1 - - [08/Jul/2019 15:38:18] code 404, message File not found 127.0.0.1 - - [08/Jul/2019 15:38:18] "GET /graphs/summary/cache_examples.ClassLevelSetupFail.track_fail.json?timestamp=1562600294840 HTTP/1.1" 404 - 127.0.0.1 - - [08/Jul/2019 15:38:18] code 404, message File not found 127.0.0.1 - - [08/Jul/2019 15:38:18] "GET /graphs/summary/cache_examples.time_fail_second_run.json?timestamp=1562600294840 HTTP/1.1" 404 - 127.0.0.1 - - [08/Jul/2019 15:38:18] code 404, message File not found 127.0.0.1 - - [08/Jul/2019 15:38:18] "GET /graphs/summary/cache_examples.track_cache_bar.json?timestamp=1562600294840 HTTP/1.1" 404 - 127.0.0.1 - - [08/Jul/2019 15:38:18] code 404, message File not found 127.0.0.1 - - [08/Jul/2019 15:38:18] "GET /graphs/summary/cache_examples.track_cache_foo.json?timestamp=1562600294840 HTTP/1.1" 404 - 127.0.0.1 - - [08/Jul/2019 15:38:18] code 404, message File not found 127.0.0.1 - - [08/Jul/2019 15:38:18] "GET /graphs/summary/cache_examples.track_my_cache_foo.json?timestamp=1562600294840 HTTP/1.1" 404 - 127.0.0.1 - - [08/Jul/2019 15:38:18] code 404, message File not found 127.0.0.1 - - [08/Jul/2019 15:38:18] "GET /graphs/summary/code_extraction.MyClass.track_test.json?timestamp=1562600294840 HTTP/1.1" 404 - 127.0.0.1 - - [08/Jul/2019 15:38:18] code 404, message File not found 127.0.0.1 - - [08/Jul/2019 15:38:18] "GET /graphs/summary/code_extraction.track_pretty_source_test.json?timestamp=1562600294840 HTTP/1.1" 404 - 127.0.0.1 - - [08/Jul/2019 15:38:18] code 404, message File not found 127.0.0.1 - - [08/Jul/2019 15:38:18] "GET /graphs/summary/code_extraction.track_test.json?timestamp=1562600294840 HTTP/1.1" 404 - 127.0.0.1 - - [08/Jul/2019 15:38:18] code 404, message File not found 127.0.0.1 - - [08/Jul/2019 15:38:18] "GET /graphs/summary/custom.time_function.json?timestamp=1562600294840 HTTP/1.1" 404 - 127.0.0.1 - - [08/Jul/2019 15:38:18] code 404, message File not found 127.0.0.1 - - [08/Jul/2019 15:38:18] "GET /graphs/summary/custom.track_method.json?timestamp=1562600294840 HTTP/1.1" 404 - 127.0.0.1 - - [08/Jul/2019 15:38:19] "GET /regressions.json?timestamp=1562600294840 HTTP/1.1" 200 - _____________________________ test_web_summarylist _____________________________ browser = <selenium.webdriver.chrome.webdriver.WebDriver (session="8d7999ad0827d8a9741999e4bdbd2bf9")> basic_html = ('/builddir/build/BUILD/asv-0.4.1/.pytest_cache/d/asv-test_web-basic_html/cache/cached/html', <test.tools.Git object at 0x7f1f79027070>) @pytest.mark.flaky(reruns=1, reruns_delay=5) def test_web_summarylist(browser, basic_html): ignore_exc = (NoSuchElementException, StaleElementReferenceException) html_dir, dvcs = basic_html last_change_hash = dvcs.get_hash('master~4') browser.set_window_size(1200, 900) with tools.preview(html_dir) as base_url: get_with_retry(browser, base_url) summarylist_btn = browser.find_element_by_link_text('Benchmark list') summarylist_btn.click() # Check text content in the table base_link = browser.find_element_by_link_text('params_examples.track_find_test') cur_row = base_link.find_element_by_xpath('../..') m = re.match('params_examples.track_find_test \\([12]\\) 2.00 \u221233.3% \\(-1.00\\).*' + last_change_hash[:8], cur_row.text) assert m, cur_row.text # Check units in row base_link2 = browser.find_element_by_link_text('params_examples.track_bytes') cur_row2 = base_link2.find_element_by_xpath('../..') m = re.match(r'params_examples.track_bytes\s*1.000M', cur_row2.text) assert m, cur_row2.text # Check link base_href, qs = splitquery(base_link.get_attribute('href')) base_url, tag = splittag(base_href) assert parse_qs(qs) == {'ram': ['128GB'], 'cpu': ['Blazingly fast'], 'NUL': ['[none]']} assert tag == 'params_examples.track_find_test' # Change table sort (sorting is async, so needs waits) sort_th = browser.find_element_by_xpath('//th[text()="Recent change"]') sort_th.click() WebDriverWait(browser, WAIT_TIME).until( EC.text_to_be_present_in_element(('xpath', '//tbody/tr[1]'), 'params_examples.track_find_test')) # Try to click cpu selector link in the panel cpu_select = browser.find_element_by_link_text('Not /really/ <fast>') cpu_select.click() # For the other CPU, there is no recent change recorded, only # the latest result is available def check(*args): links = browser.find_elements_by_link_text('params_examples.track_find_test') visible_links = [item for item in links if item.is_displayed()] row_texts = [link.find_element_by_xpath('../..').text for link in visible_links] row_texts.sort() if len(row_texts) != 2: return False ok = (re.match(r'^params_examples\.track_find_test \(1\) 2\.00 .*\(-1\.00\).*$', row_texts[0]) and re.match(r'^params_examples\.track_find_test \(2\) 2\.00 .*\(-1\.00\).*$', row_texts[1])) return ok > WebDriverWait(browser, WAIT_TIME, ignored_exceptions=ignore_exc).until(check) /builddir/build/BUILD/asv-0.4.1/test/test_web.py:333: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3.8/site-packages/selenium/webdriver/support/wait.py:71: in until value = method(self._driver) /builddir/build/BUILD/asv-0.4.1/test/test_web.py:320: in check visible_links = [item for item in links if item.is_displayed()] /builddir/build/BUILD/asv-0.4.1/test/test_web.py:320: in <listcomp> visible_links = [item for item in links if item.is_displayed()] /usr/lib/python3.8/site-packages/selenium/webdriver/remote/webelement.py:490: in is_displayed return self._execute(Command.IS_ELEMENT_DISPLAYED)['value'] /usr/lib/python3.8/site-packages/selenium/webdriver/remote/webelement.py:628: in _execute return self._parent.execute(command, params) /usr/lib/python3.8/site-packages/selenium/webdriver/remote/webdriver.py:314: in execute self.error_handler.check_response(response) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <selenium.webdriver.remote.errorhandler.ErrorHandler object at 0x7f1f78fd6be0> response = {'status': 404, 'value': '{"value":{"error":"unknown command","message":"unknown command: Cannot call non W3C standard...4 base::(anonymous namespace)::ThreadFunc()\\n#13 0x7fc33b1c74e2 start_thread\\n#14 0x7fc33ac48623 __GI___clone\\n"}}'} def check_response(self, response): """ Checks that a JSON response from the WebDriver does not have an error. :Args: - response - The JSON response from the WebDriver server as a dictionary object. :Raises: If the response contains an error message. """ status = response.get('status', None) if status is None or status == ErrorCode.SUCCESS: return value = None message = response.get("message", "") screen = response.get("screen", "") stacktrace = None if isinstance(status, int): value_json = response.get('value', None) if value_json and isinstance(value_json, basestring): import json try: value = json.loads(value_json) if len(value.keys()) == 1: value = value['value'] status = value.get('error', None) if status is None: status = value["status"] message = value["value"] if not isinstance(message, basestring): value = message message = message.get('message') else: message = value.get('message', None) except ValueError: pass exception_class = ErrorInResponseException if status in ErrorCode.NO_SUCH_ELEMENT: exception_class = NoSuchElementException elif status in ErrorCode.NO_SUCH_FRAME: exception_class = NoSuchFrameException elif status in ErrorCode.NO_SUCH_WINDOW: exception_class = NoSuchWindowException elif status in ErrorCode.STALE_ELEMENT_REFERENCE: exception_class = StaleElementReferenceException elif status in ErrorCode.ELEMENT_NOT_VISIBLE: exception_class = ElementNotVisibleException elif status in ErrorCode.INVALID_ELEMENT_STATE: exception_class = InvalidElementStateException elif status in ErrorCode.INVALID_SELECTOR \ or status in ErrorCode.INVALID_XPATH_SELECTOR \ or status in ErrorCode.INVALID_XPATH_SELECTOR_RETURN_TYPER: exception_class = InvalidSelectorException elif status in ErrorCode.ELEMENT_IS_NOT_SELECTABLE: exception_class = ElementNotSelectableException elif status in ErrorCode.ELEMENT_NOT_INTERACTABLE: exception_class = ElementNotInteractableException elif status in ErrorCode.INVALID_COOKIE_DOMAIN: exception_class = InvalidCookieDomainException elif status in ErrorCode.UNABLE_TO_SET_COOKIE: exception_class = UnableToSetCookieException elif status in ErrorCode.TIMEOUT: exception_class = TimeoutException elif status in ErrorCode.SCRIPT_TIMEOUT: exception_class = TimeoutException elif status in ErrorCode.UNKNOWN_ERROR: exception_class = WebDriverException elif status in ErrorCode.UNEXPECTED_ALERT_OPEN: exception_class = UnexpectedAlertPresentException elif status in ErrorCode.NO_ALERT_OPEN: exception_class = NoAlertPresentException elif status in ErrorCode.IME_NOT_AVAILABLE: exception_class = ImeNotAvailableException elif status in ErrorCode.IME_ENGINE_ACTIVATION_FAILED: exception_class = ImeActivationFailedException elif status in ErrorCode.MOVE_TARGET_OUT_OF_BOUNDS: exception_class = MoveTargetOutOfBoundsException elif status in ErrorCode.JAVASCRIPT_ERROR: exception_class = JavascriptException elif status in ErrorCode.SESSION_NOT_CREATED: exception_class = SessionNotCreatedException elif status in ErrorCode.INVALID_ARGUMENT: exception_class = InvalidArgumentException elif status in ErrorCode.NO_SUCH_COOKIE: exception_class = NoSuchCookieException elif status in ErrorCode.UNABLE_TO_CAPTURE_SCREEN: exception_class = ScreenshotException elif status in ErrorCode.ELEMENT_CLICK_INTERCEPTED: exception_class = ElementClickInterceptedException elif status in ErrorCode.INSECURE_CERTIFICATE: exception_class = InsecureCertificateException elif status in ErrorCode.INVALID_COORDINATES: exception_class = InvalidCoordinatesException elif status in ErrorCode.INVALID_SESSION_ID: exception_class = InvalidSessionIdException elif status in ErrorCode.UNKNOWN_METHOD: exception_class = UnknownMethodException else: exception_class = WebDriverException if value == '' or value is None: value = response['value'] if isinstance(value, basestring): if exception_class == ErrorInResponseException: raise exception_class(response, value) raise exception_class(value) if message == "" and 'message' in value: message = value['message'] screen = None if 'screen' in value: screen = value['screen'] stacktrace = None if 'stackTrace' in value and value['stackTrace']: stacktrace = [] try: for frame in value['stackTrace']: line = self._value_or_default(frame, 'lineNumber', '') file = self._value_or_default(frame, 'fileName', '<anonymous>') if line: file = "%s:%s" % (file, line) meth = self._value_or_default(frame, 'methodName', '<anonymous>') if 'className' in frame: meth = "%s.%s" % (frame['className'], meth) msg = " at %s (%s)" msg = msg % (meth, file) stacktrace.append(msg) except TypeError: pass if exception_class == ErrorInResponseException: raise exception_class(response, message) elif exception_class == UnexpectedAlertPresentException: alert_text = None if 'data' in value: alert_text = value['data'].get('text') elif 'alert' in value: alert_text = value['alert'].get('text') raise exception_class(message, screen, stacktrace, alert_text) > raise exception_class(message, screen, stacktrace) E selenium.common.exceptions.WebDriverException: Message: unknown command: Cannot call non W3C standard command while in W3C mode /usr/lib/python3.8/site-packages/selenium/webdriver/remote/errorhandler.py:242: WebDriverException ----------------------------- Captured stderr call ----------------------------- 127.0.0.1 - - [08/Jul/2019 15:38:21] "GET /info.json?_=1562600301307 HTTP/1.1" 200 - 127.0.0.1 - - [08/Jul/2019 15:38:21] "GET /index.json?timestamp=1562600294840 HTTP/1.1" 304 - 127.0.0.1 - - [08/Jul/2019 15:38:21] code 404, message File not found 127.0.0.1 - - [08/Jul/2019 15:38:21] "GET /graphs/summary/cache_examples.ClassLevelCacheTimeout.track_fail.json?timestamp=1562600294840 HTTP/1.1" 404 - 127.0.0.1 - - [08/Jul/2019 15:38:21] code 404, message File not found 127.0.0.1 - - [08/Jul/2019 15:38:21] "GET /graphs/summary/cache_examples.ClassLevelCacheTimeoutSuccess.track_success.json?timestamp=1562600294840 HTTP/1.1" 404 - 127.0.0.1 - - [08/Jul/2019 15:38:21] code 404, message File not found 127.0.0.1 - - [08/Jul/2019 15:38:21] "GET /graphs/summary/cache_examples.ClassLevelSetup.track_example.json?timestamp=1562600294840 HTTP/1.1" 404 - 127.0.0.1 - - [08/Jul/2019 15:38:21] code 404, message File not found 127.0.0.1 - - [08/Jul/2019 15:38:21] "GET /graphs/summary/cache_examples.ClassLevelSetup.track_example2.json?timestamp=1562600294840 HTTP/1.1" 404 - 127.0.0.1 - - [08/Jul/2019 15:38:21] code 404, message File not found 127.0.0.1 - - [08/Jul/2019 15:38:21] "GET /graphs/summary/cache_examples.ClassLevelSetupFail.track_fail.json?timestamp=1562600294840 HTTP/1.1" 404 - 127.0.0.1 - - [08/Jul/2019 15:38:21] code 404, message File not found 127.0.0.1 - - [08/Jul/2019 15:38:21] "GET /graphs/summary/cache_examples.time_fail_second_run.json?timestamp=1562600294840 HTTP/1.1" 404 - 127.0.0.1 - - [08/Jul/2019 15:38:21] code 404, message File not found 127.0.0.1 - - [08/error: Bad exit status from /var/tmp/rpm-tmp.gvGUJu (%check) Jul/2019 15:38:21] "GET /graphs/summary/cache_examples.track_cache_bar.json?timestamp=1562600294840 HTTP/1.1" 404 - 127.0.0.1 - - [08/Jul/2019 15:38:21] code 404, message File not found 127.0.0.1 - - [08/Jul/2019 15:38:21] "GET /graphs/summary/cache_examples.track_cache_foo.json?timestamp=1562600294840 HTTP/1.1" 404 - 127.0.0.1 - - [08/Jul/2019 15:38:21] code 404, message File not found 127.0.0.1 - - [08/Jul/2019 15:38:21] "GET /graphs/summary/cache_examples.track_my_cache_foo.json?timestamp=1562600294840 HTTP/1.1" 404 - 127.0.0.1 - - [08/Jul/2019 15:38:21] code 404, message File not found 127.0.0.1 - - [08/Jul/2019 15:38:21] "GET /graphs/summary/code_extraction.MyClass.track_test.json?timestamp=1562600294840 HTTP/1.1" 404 - 127.0.0.1 - - [08/Jul/2019 15:38:21] code 404, message File not found 127.0.0.1 - - [08/Jul/2019 15:38:21] "GET /graphs/summary/code_extraction.track_pretty_source_test.json?timestamp=1562600294840 HTTP/1.1" 404 - 127.0.0.1 - - [08/Jul/2019 15:38:21] code 404, message File not found 127.0.0.1 - - [08/Jul/2019 15:38:21] "GET /graphs/summary/code_extraction.track_test.json?timestamp=1562600294840 HTTP/1.1" 404 - 127.0.0.1 - - [08/Jul/2019 15:38:21] code 404, message File not found 127.0.0.1 - - [08/Jul/2019 15:38:21] "GET /graphs/summary/custom.time_function.json?timestamp=1562600294840 HTTP/1.1" 404 - 127.0.0.1 - - [08/Jul/2019 15:38:21] code 404, message File not found 127.0.0.1 - - [08/Jul/2019 15:38:21] "GET /graphs/summary/custom.track_method.json?timestamp=1562600294840 HTTP/1.1" 404 - 127.0.0.1 - - [08/Jul/2019 15:38:21] "GET /graphs/NUL-null/arch-x86_64/branch-master/cpu-Blazingly%20fast/machine-orangutan/os-GNU_Linux/python-3.8/ram-128GB/summary.json?timestamp=1562600294840 HTTP/1.1" 200 - 127.0.0.1 - - [08/Jul/2019 15:38:22] "GET /graphs/NUL_/arch-x86_64/branch-master/cpu-Not%20_really_%20_fast_/machine-orangutan/os-GNU_Linux/python-3.8/ram-_/summary.json?timestamp=1562600294840 HTTP/1.1" 200 - Full logs: https://copr-be.cloud.fedoraproject.org/results/@python/python3.8/fedora-rawhide-x86_64/00964708-asv/ All attempts: https://copr.fedorainfracloud.org/coprs/g/python/python3.8/package/asv/
This should be fixed now.
https://copr.fedorainfracloud.org/coprs/g/python/python3.8/build/976636/ failed: DEBUG util.py:585: BUILDSTDERR: Problem: package python3-rpy-3.0.5-1.fc31.noarch requires python(abi) = 3.7, but none of the providers can be installed https://copr-be.cloud.fedoraproject.org/results/@python/python3.8/fedora-rawhide-x86_64/00962450-rpy has python3-rpy-3.0.4-2.fc31.noarch.rpm which has lower version. So rpy needs to be rebuilt in copr, and then asv again.
https://copr.fedorainfracloud.org/coprs/g/python/python3.8/build/976799/