Closed Bug 1874602 Opened 1 year ago Closed 1 year ago

mach wpt - AttributeError: module 'ssl' has no attribute wrap_socket in Python 3.12

Categories

(Testing :: web-platform-tests, defect)

Firefox 121
defect

Tracking

(firefox124 fixed)

RESOLVED FIXED
124 Branch
Tracking Status
firefox124 --- fixed

People

(Reporter: jameshendry05, Assigned: longsonr)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

Steps to reproduce:

Upgrade to Python 3.12 (e.g. use Fedora 39)

Add logging within wpt in wptserver/server.py:845 (Otherwise you just get generic errors)
self.logger.error("Error occured while trying to start HTTP server: ", exc_info=True)

Actual results:

0:00.01 INFO Skipping manifest download because existing file is recent
 0:02.19 mozversion INFO application_buildid: 20240114101341
 0:02.19 mozversion INFO application_display_name: Nightly
 0:02.19 mozversion INFO application_id: {ec8030f7-c20a-464f-9b0e-13a3a9e97384}
 0:02.19 mozversion INFO application_name: Firefox
 0:02.19 mozversion INFO application_remotingname: firefox-default
 0:02.19 mozversion INFO application_vendor: Mozilla
 0:02.19 mozversion INFO application_version: 123.0a1
 0:02.19 mozversion INFO platform_buildid: 20240113143240
 0:02.19 mozversion INFO platform_version: 123.0a1
 0:44.48 INFO Installed font: Ahem.ttf
 0:44.79 wptserve INFO Starting http server on http://127.0.0.1:8002
 0:44.80 wptserve INFO Starting http server on http://127.0.0.1:8001
 0:44.81 wptserve CRITICAL Failed to start HTTP server on port 8443; is something already using that port?
 0:44.81 wptserve WARNING Error occured while trying to start HTTP server:
Traceback (most recent call last):
  File "/home/james/git-projects/mozilla-firefox/mozilla-unified/testing/web-platform/tests/tools/wptserve/wptserve/server.py", line 826, in __init__
    self.httpd = server_cls((host, port),
                 ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/james/git-projects/mozilla-firefox/mozilla-unified/testing/web-platform/tests/tools/wptserve/wptserve/server.py", line 220, in __init__
    self.socket = ssl.wrap_socket(self.socket,
                  ^^^^^^^^^^^^^^^
AttributeError: module 'ssl' has no attribute 'wrap_socket'
 0:44.81 wptserve CRITICAL Please ensure all the necessary WPT subdomains are mapped to a loopback device in /etc/hosts.
See https://web-platform-tests.org/running-tests/from-local-system.html#system-setup for instructions.
 0:44.87 wptserve CRITICAL Failed to start HTTP server on port 8446; is something already using that port?
 0:44.87 wptserve WARNING Error occured while trying to start HTTP server:
Traceback (most recent call last):
  File "/home/james/git-projects/mozilla-firefox/mozilla-unified/testing/web-platform/tests/tools/wptserve/wptserve/server.py", line 826, in __init__
    self.httpd = server_cls((host, port),
                 ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/james/git-projects/mozilla-firefox/mozilla-unified/testing/web-platform/tests/tools/wptserve/wptserve/server.py", line 220, in __init__
    self.socket = ssl.wrap_socket(self.socket,
                  ^^^^^^^^^^^^^^^
AttributeError: module 'ssl' has no attribute 'wrap_socket'
 0:44.87 wptserve CRITICAL Please ensure all the necessary WPT subdomains are mapped to a loopback device in /etc/hosts.
See https://web-platform-tests.org/running-tests/from-local-system.html#system-setup for instructions.
 0:44.91 wptserve INFO Starting http server on http://127.0.0.1:8000
 0:44.91 wptserve INFO Starting http server on http://127.0.0.1:8003
 0:44.92 wptserve INFO Create socket on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8888))
 0:44.92 wptserve INFO Bind on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8888))
 0:44.92 wptserve INFO Listen on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8888))
 0:44.92 wptserve INFO Create socket on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8889))
 0:44.92 wptserve CRITICAL Please ensure all the necessary WPT subdomains are mapped to a loopback device in /etc/hosts.
See https://web-platform-tests.org/running-tests/from-local-system.html#system-setup for instructions.
 0:44.93 wptserve CRITICAL Failed to start HTTP server on port 8445; is something already using that port?
 0:44.94 wptserve CRITICAL Failed to start HTTP server on port 8444; is something already using that port?
 0:44.94 wptserve WARNING Error occured while trying to start HTTP server:
Traceback (most recent call last):
  File "/home/james/git-projects/mozilla-firefox/mozilla-unified/testing/web-platform/tests/tools/wptserve/wptserve/server.py", line 826, in __init__
    self.httpd = server_cls((host, port),
                 ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/james/git-projects/mozilla-firefox/mozilla-unified/testing/web-platform/tests/tools/wptserve/wptserve/server.py", line 220, in __init__
    self.socket = ssl.wrap_socket(self.socket,
                  ^^^^^^^^^^^^^^^
AttributeError: module 'ssl' has no attribute 'wrap_socket'
 0:44.94 wptserve CRITICAL Please ensure all the necessary WPT subdomains are mapped to a loopback device in /etc/hosts.
See https://web-platform-tests.org/running-tests/from-local-system.html#system-setup for instructions.
 0:44.94 wptserve WARNING Error occured while trying to start HTTP server:
Traceback (most recent call last):
  File "/home/james/git-projects/mozilla-firefox/mozilla-unified/testing/web-platform/tests/tools/wptserve/wptserve/server.py", line 826, in __init__
    self.httpd = server_cls((host, port),
                 ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/james/git-projects/mozilla-firefox/mozilla-unified/testing/web-platform/tests/tools/wptserve/wptserve/server.py", line 220, in __init__
    self.socket = ssl.wrap_socket(self.socket,
                  ^^^^^^^^^^^^^^^
AttributeError: module 'ssl' has no attribute 'wrap_socket'
 0:44.94 wptserve CRITICAL Please ensure all the necessary WPT subdomains are mapped to a loopback device in /etc/hosts.
See https://web-platform-tests.org/running-tests/from-local-system.html#system-setup for instructions.
 0:44.94 wptserve INFO Starting http2 server on https://127.0.0.1:9000
 0:45.04 wptserve INFO Starting WebTransport over HTTP/3 server on 127.0.0.1:11000
 0:45.28 INFO STDERR: Exception ignored in:
 0:45.28 INFO STDERR: <function StreamWriter.__del__ at 0x7fd290d5e980>
 0:45.28 INFO STDERR: Traceback (most recent call last):
 0:45.28 INFO STDERR:   File "/usr/lib64/python3.12/asyncio/streams.py", line 408, in __del__
 0:45.28 INFO STDERR:
 0:45.28 INFO STDERR: if not self._transport.is_closing():
 0:45.28 INFO STDERR:
-- snip -
 0:45.28 INFO STDERR: ^
 0:45.28 INFO STDERR:   File "/usr/lib64/python3.12/asyncio/transports.py", line 25, in is_closing
 0:45.28 INFO STDERR:
 0:45.28 INFO STDERR: raise NotImplementedError
 0:45.28 INFO STDERR: NotImplementedError
 0:45.28 INFO STDERR: :
 0:45.28 INFO STDERR: Exception ignored in:
 0:45.28 INFO STDERR: <function StreamWriter.__del__ at 0x7fd290d5e980>
 0:45.28 INFO STDERR: Traceback (most recent call last):
 0:45.28 INFO STDERR:   File "/usr/lib64/python3.12/asyncio/streams.py", line 408, in __del__
 0:45.28 INFO STDERR:
 0:45.28 INFO STDERR: if not self._transport.is_closing():
 0:45.28 INFO STDERR:
-- snip --
 0:45.29 INFO STDERR: ^
 0:45.29 INFO STDERR:   File "/usr/lib64/python3.12/asyncio/transports.py", line 25, in is_closing
 0:45.29 INFO STDERR:
 0:45.29 INFO STDERR: raise NotImplementedError
 0:45.29 INFO STDERR: NotImplementedError
 0:45.29 INFO STDERR: :
 0:45.29 INFO STDERR: Exception ignored in:
 0:45.29 INFO STDERR: <function StreamWriter.__del__ at 0x7fd290d5e980>
 0:45.29 INFO STDERR: Traceback (most recent call last):
 0:45.29 INFO STDERR:   File "/usr/lib64/python3.12/asyncio/streams.py", line 408, in __del__
 0:45.29 INFO STDERR:
 0:45.29 INFO STDERR: if not self._transport.is_closing():
 0:45.29 INFO STDERR:
-- snip --
 0:45.29 INFO STDERR: ^
 0:45.29 INFO STDERR:   File "/usr/lib64/python3.12/asyncio/transports.py", line 25, in is_closing
 0:45.29 INFO STDERR:
 0:45.29 INFO STDERR: raise NotImplementedError
 0:45.29 INFO STDERR: NotImplementedError
 0:45.29 INFO STDERR: :
 0:45.90 wptserve INFO Stopped WebTransport over HTTP/3 server on 127.0.0.1:11000
 0:45.91 wptserve INFO Stopped http server on 127.0.0.1:8000
 0:45.91 wptserve INFO Stopped http server on 127.0.0.1:8003
 0:45.92 wptserve INFO Close on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8888))
 0:45.94 wptserve INFO Stopped http server on 127.0.0.1:9000
 0:46.29 wptserve INFO Stopped http server on 127.0.0.1:8002
 0:46.30 wptserve INFO Stopped http server on 127.0.0.1:8001
 0:46.41 INFO Removed font: Ahem.ttf
 0:46.45 INFO Closing logging queue
 0:46.45 INFO queue closed
Error running mach:

    mach wpt

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 wpt`` 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:

OSError: Servers failed to start: https:8443, https:8444, https-private:8445, https-public:8446, wss:8889

  File "/home/james/git-projects/mozilla-firefox/mozilla-unified/testing/web-platform/mach_commands.py", line 557, in run_wpt
    return run_web_platform_tests(command_context, **params)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/james/git-projects/mozilla-firefox/mozilla-unified/testing/web-platform/mach_commands.py", line 545, in run_web_platform_tests
    return wpt_runner.run(logger, **params)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/james/git-projects/mozilla-firefox/mozilla-unified/testing/web-platform/mach_commands_base.py", line 59, in run
    result = wptrunner.start(**kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/james/git-projects/mozilla-firefox/mozilla-unified/testing/web-platform/tests/tools/wptrunner/wptrunner/wptrunner.py", line 556, in start
    rv = not run_tests(**kwargs)[0] or logged_critical.has_log
             ^^^^^^^^^^^^^^^^^^^
  File "/home/james/git-projects/mozilla-firefox/mozilla-unified/testing/web-platform/tests/tools/wptrunner/wptrunner/wptrunner.py", line 453, in run_tests
    test_environment.ensure_started()
  File "/home/james/git-projects/mozilla-firefox/mozilla-unified/testing/web-platform/tests/tools/wptrunner/wptrunner/environment.py", line 283, in ensure_started
    raise OSError(msg)

Expected results:

Web platform tests should have run.
This is due to the Python 3.12 removal of the wrap_socket(): https://docs.python.org/3/whatsnew/3.12.html#ssl

Remove the ssl.wrap_socket() function, deprecated in Python 3.7: instead, create a ssl.SSLContext object and call its ssl.SSLContext.wrap_socket method. Any package that still uses ssl.wrap_socket() is broken and insecure. The function neither sends a SNI TLS extension nor validates server hostname. Code is subject to CWE-295: Improper Certificate Validation. (Contributed by Victor Stinner in gh-94199.)

Assignee: nobody → longsonr
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true
Component: General → web-platform-tests
Product: Firefox Build System → Testing

I am running into this issue as well (also using the current fedora release). After applying the attached patch, I'm get another error:

 0:02.30 mozversion INFO application_buildid: 20240130103146
 0:02.30 mozversion INFO application_changeset: 49f49182fc503c7ebfff0af484b8f21c9a6ac29f
 0:02.30 mozversion INFO application_display_name: Nightly
 0:02.30 mozversion INFO application_id: {ec8030f7-c20a-464f-9b0e-13a3a9e97384}
 0:02.30 mozversion INFO application_name: Firefox
 0:02.30 mozversion INFO application_remotingname: firefox-default
 0:02.30 mozversion INFO application_vendor: Mozilla
 0:02.30 mozversion INFO application_version: 124.0a1
 0:02.30 mozversion INFO platform_buildid: 20240130103146
 0:02.30 mozversion INFO platform_changeset: 49f49182fc503c7ebfff0af484b8f21c9a6ac29f
 0:02.30 mozversion INFO platform_version: 124.0a1
 0:03.92 INFO Installed font: Ahem.ttf
 0:04.36 wptserve INFO Starting http server on http://127.0.0.1:8003
 0:04.36 wptserve INFO Starting https server on https://127.0.0.1:8445
 0:04.37 wptserve INFO Starting https server on https://127.0.0.1:8443
 0:04.37 wptserve INFO Create socket on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8888))
 0:04.37 wptserve INFO Bind on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8888))
 0:04.37 wptserve INFO Listen on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8888))
 0:04.37 wptserve INFO Starting https server on https://127.0.0.1:8444
 0:04.38 wptserve INFO Starting http server on http://127.0.0.1:8002
 0:04.38 wptserve INFO Starting http server on http://127.0.0.1:8001
 0:04.39 wptserve INFO Starting http server on http://127.0.0.1:8000
 0:04.39 wptserve INFO Starting https server on https://127.0.0.1:8446
 0:04.39 wptserve INFO Create socket on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8889))
 0:04.39 wptserve CRITICAL Please ensure all the necessary WPT subdomains are mapped to a loopback device in /etc/hosts.
See https://web-platform-tests.org/running-tests/from-local-system.html#system-setup for instructions.
 0:04.39 wptserve INFO Starting http2 server on https://127.0.0.1:9000
 0:04.44 wptserve INFO Starting WebTransport over HTTP/3 server on 127.0.0.1:11000
 0:04.72 INFO STDERR: Exception ignored in: 
 0:04.73 INFO STDERR: <function StreamWriter.__del__ at 0x7f1b0bb8aa20>
 0:04.73 INFO STDERR: Traceback (most recent call last):
 0:04.73 INFO STDERR:   File "/usr/lib64/python3.12/asyncio/streams.py", line 408, in __del__
 0:04.73 INFO STDERR:     
 0:04.73 INFO STDERR: if not self._transport.is_closing():
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR:   File "/usr/lib64/python3.12/asyncio/transports.py", line 25, in is_closing
 0:04.73 INFO STDERR:     
 0:04.73 INFO STDERR: raise NotImplementedError
 0:04.73 INFO STDERR: NotImplementedError
 0:04.73 INFO STDERR: : 
 0:04.73 INFO STDERR: Exception ignored in: 
 0:04.73 INFO STDERR: <function StreamWriter.__del__ at 0x7f1b0bb8aa20>
 0:04.73 INFO STDERR: Traceback (most recent call last):
 0:04.73 INFO STDERR:   File "/usr/lib64/python3.12/asyncio/streams.py", line 408, in __del__
 0:04.73 INFO STDERR:     
 0:04.73 INFO STDERR: if not self._transport.is_closing():
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR:   File "/usr/lib64/python3.12/asyncio/transports.py", line 25, in is_closing
 0:04.73 INFO STDERR:     
 0:04.73 INFO STDERR: raise NotImplementedError
 0:04.73 INFO STDERR: NotImplementedError
 0:04.73 INFO STDERR: : 
 0:04.73 INFO STDERR: Exception ignored in: 
 0:04.73 INFO STDERR: <function StreamWriter.__del__ at 0x7f1b0bb8aa20>
 0:04.73 INFO STDERR: Traceback (most recent call last):
 0:04.73 INFO STDERR:   File "/usr/lib64/python3.12/asyncio/streams.py", line 408, in __del__
 0:04.73 INFO STDERR:     
 0:04.73 INFO STDERR: if not self._transport.is_closing():
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR:  
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR: ^
 0:04.73 INFO STDERR:   File "/usr/lib64/python3.12/asyncio/transports.py", line 25, in is_closing
 0:04.73 INFO STDERR:     
 0:04.73 INFO STDERR: raise NotImplementedError
 0:04.73 INFO STDERR: NotImplementedError
 0:04.73 INFO STDERR: : 
 0:05.34 wptserve INFO Stopped WebTransport over HTTP/3 server on 127.0.0.1:11000
 0:05.36 wptserve INFO Stopped http server on 127.0.0.1:8003
 0:05.36 wptserve INFO Stopped http server on 127.0.0.1:8445
 0:05.37 wptserve INFO Stopped http server on 127.0.0.1:8443
 0:05.37 wptserve INFO Close on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8888))
 0:05.37 wptserve INFO Stopped http server on 127.0.0.1:8444
 0:05.39 wptserve INFO Stopped http server on 127.0.0.1:8002
 0:05.39 wptserve INFO Stopped http server on 127.0.0.1:8001
 0:05.39 wptserve INFO Stopped http server on 127.0.0.1:8000
 0:05.39 wptserve INFO Stopped http server on 127.0.0.1:8446
 0:05.39 wptserve INFO Stopped http server on 127.0.0.1:9000
 0:05.51 INFO Removed font: Ahem.ttf
 0:05.54 INFO Closing logging queue
 0:05.54 INFO queue closed
Error running mach:

    mach wpt /_mozilla/webgpu/cts/webgpu/api/validation/capability_checks/limits/maxSamplersPerShaderStage/cts.https.html?q=webgpu:api,validation,capability_checks,limits,maxSamplersPerShaderStage:createPipelineLayout,at_over:*

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 wpt`` 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:

OSError: Servers failed to start: wss:8889

  File "/home/nical/dev/mozilla/unified/testing/web-platform/mach_commands.py", line 557, in run_wpt
    return run_web_platform_tests(command_context, **params)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/nical/dev/mozilla/unified/testing/web-platform/mach_commands.py", line 545, in run_web_platform_tests
    return wpt_runner.run(logger, **params)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/nical/dev/mozilla/unified/testing/web-platform/mach_commands_base.py", line 59, in run
    result = wptrunner.start(**kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/nical/dev/mozilla/unified/testing/web-platform/tests/tools/wptrunner/wptrunner/wptrunner.py", line 556, in start
    rv = not run_tests(**kwargs)[0] or logged_critical.has_log
             ^^^^^^^^^^^^^^^^^^^
  File "/home/nical/dev/mozilla/unified/testing/web-platform/tests/tools/wptrunner/wptrunner/wptrunner.py", line 453, in run_tests
    test_environment.ensure_started()
  File "/home/nical/dev/mozilla/unified/testing/web-platform/tests/tools/wptrunner/wptrunner/environment.py", line 283, in ensure_started
    raise OSError(msg)

As a temporary workaround, I was able to get mach to run tests by installing python 3.11 and forcing mach to use it. Open mach and replace the first line with:

#!/usr/bin/env python3.11
Pushed by longsonr@gmail.com: https://hg.mozilla.org/integration/autoland/rev/dff36b78052b use ssl.SSLContext.wrap_socket rather than the deprecated ssl.wrap_socket r=jgraham,jmaher
Created web-platform-tests PR https://github.com/web-platform-tests/wpt/pull/44447 for changes under testing/web-platform/tests
Status: ASSIGNED → RESOLVED
Closed: 1 year ago
Resolution: --- → FIXED
Target Milestone: --- → 124 Branch
Upstream PR was closed without merging
Upstream PR merged by moz-wptsync-bot
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: