Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WPT nightly sync is busted #26768

Closed
jdm opened this issue Jun 3, 2020 · 5 comments
Closed

WPT nightly sync is busted #26768

jdm opened this issue Jun 3, 2020 · 5 comments
Assignees

Comments

@jdm
Copy link
Member

@jdm jdm commented Jun 3, 2020

Error running mach:
    ['test-wpt', '--release', '--processes', '12', '--log-raw', 'test-wpt.log', '--always-succeed']
The error occurred in code that was called by the mach command. This is either
a bug in the called code itself or in the way that mach is calling it.
You can invoke |./mach busted| to check if this issue is already on file. If it
isn't, please use |./mach busted file| to report it. If |./mach busted| is
misbehaving, you can also inspect the dependencies of bug 1543241.
If filing a bug, please include the full output of mach, including this error
message.
The details of the failure are as follows:
AssertionError
  File "/repo/python/servo/testing_commands.py", line 398, in test_wpt
    ret = self.run_test_list_or_dispatch(kwargs["test_list"], "wpt", self._test_wpt, **kwargs)
  File "/repo/python/servo/testing_commands.py", line 429, in run_test_list_or_dispatch
    return correct_function(**kwargs)
  File "/repo/python/servo/testing_commands.py", line 424, in _test_wpt
    return self.wptrunner(run_file, **kwargs)
  File "/repo/python/servo/testing_commands.py", line 468, in wptrunner
    return run_globals["run_tests"](**kwargs)
  File "/repo/tests/wpt/run.py", line 52, in run_tests
    success = wptrunner.run_tests(**kwargs)
  File "/repo/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/wptrunner.py", line 183, in run_tests
    **kwargs)
  File "/repo/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/wptrunner.py", line 84, in get_loader
    chunker_kwargs=chunker_kwargs)
  File "/repo/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/testloader.py", line 205, in __init__
    self._load_tests()
  File "/repo/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/testloader.py", line 268, in _load_tests
    for test_path, test_type, test in self.iter_tests():
  File "/repo/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/testloader.py", line 261, in iter_tests
    yield test_path, test_type, self.get_test(manifest_file, test, inherit_metadata, test_metadata)
  File "/repo/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/testloader.py", line 221, in get_test
    return wpttest.from_manifest(manifest_file, manifest_test, inherit_metadata, test_metadata)
  File "/repo/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/wpttest.py", line 628, in from_manifest
    return test_cls.from_manifest(manifest_file, manifest_test, inherit_metadata, test_metadata)
  File "/repo/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/wpttest.py", line 492, in from_manifest
    quic=quic)
  File "/repo/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/wpttest.py", line 465, in __init__
    self.viewport_size = self.get_viewport_size(viewport_size)
  File "/repo/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/wpttest.py", line 559, in get_viewport_size
    assert override is None
@jdm
Copy link
Member Author

@jdm jdm commented Jun 3, 2020

This is triggered by our existing tests like https://github.com/servo/servo/blob/master/tests/wpt/mozilla/tests/css/pixel_snapping_border_a.html#L7 which have a viewport-size override.

@jdm
Copy link
Member Author

@jdm jdm commented Jun 3, 2020

This will be fixed by a combination of #26772 and web-platform-tests/wpt#23956.

@jdm jdm self-assigned this Jun 3, 2020
@jdm
Copy link
Member Author

@jdm jdm commented Jun 8, 2020

Latest bustage before the previous fix could be verified:

Error running mach:
    ['test-wpt', '--release', '--processes', '20', '--log-raw', 'test-wpt-py3.log', '--log-errorsummary', 'wpt-py3-errorsummary.log', 'url']
The error occurred in code that was called by the mach command. This is either
a bug in the called code itself or in the way that mach is calling it.
You can invoke |./mach busted| to check if this issue is already on file. If it
isn't, please use |./mach busted file| to report it. If |./mach busted| is
misbehaving, you can also inspect the dependencies of bug 1543241.
If filing a bug, please include the full output of mach, including this error
message.
The details of the failure are as follows:
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc2 in position 45840: ordinal not in range(128)
  File "/repo/python/servo/testing_commands.py", line 400, in test_wpt
    ret = self.run_test_list_or_dispatch(kwargs["test_list"], "wpt", self._test_wpt, **kwargs)
  File "/repo/python/servo/testing_commands.py", line 440, in run_test_list_or_dispatch
    return correct_function(**kwargs)
  File "/repo/python/servo/testing_commands.py", line 426, in _test_wpt
    return self.wptrunner(run_file, **kwargs)
  File "/repo/python/servo/testing_commands.py", line 478, in wptrunner
    return run_globals["run_tests"](**kwargs)
  File "/repo/tests/wpt/run.py", line 52, in run_tests
    success = wptrunner.run_tests(**kwargs)
  File "/repo/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/wptrunner.py", line 216, in run_tests
    kwargs["enable_quic"]) as test_environment:
  File "/repo/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/environment.py", line 97, in __enter__
    self.get_routes())
  File "/repo/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/environment.py", line 201, in get_routes
    headers=headers)
  File "/repo/tests/wpt/web-platform-tests/tools/serve/serve.py", line 354, in add_static
    handler = handlers.StaticHandler(path, format_args, content_type, **headers)
  File "/repo/tests/wpt/web-platform-tests/tools/wptserve/wptserve/handlers.py", line 470, in __init__
    data = f.read()
  File "/usr/lib/python3.6/encodings/ascii.py", line 26, in decode
    return codecs.ascii_decode(input, self.errors)[0]
@jdm
Copy link
Member Author

@jdm jdm commented Jun 9, 2020

I can reproduce this in a VM by running the following python script:

import sys
with open(sys.argv[1]) as f:
	f.read()

And running it with LANG=C python3 a.py tests/wpt/web-platform-tests/tools/third_party/pdf_js/pdf.js

@jdm
Copy link
Member Author

@jdm jdm commented Jun 10, 2020

Fixed by 604b565.

@jdm jdm closed this Jun 10, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
1 participant
You can’t perform that action at this time.