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

Add support for Python 3.13 #49970

Merged
merged 16 commits into from
Mar 4, 2025

Update assert_png to check for magic bytes directly

5d65e02
Select commit
Loading
Failed to load commit list.
Merged

Add support for Python 3.13 #49970

Update assert_png to check for magic bytes directly
5d65e02
Select commit
Loading
Failed to load commit list.
Community-TC Integration / wpt-chrome-dev-results succeeded Feb 24, 2025 in 36m 36s

Community-TC (pull_request)

Collect results for all tests affected by a pull request in chrome.

Details

View task in Taskcluster | View logs in Taskcluster | View task group in Taskcluster

Task Status

Started: 2025-02-24T14:43:13.560Z
Resolved: 2025-02-24T15:08:45.600Z
Task Execution Time: 25 minutes, 32 seconds, 40 milliseconds
Task Status: completed
Reason Resolved: completed
RunId: 0

Artifacts

- public/logs/live_backing.log
- public/logs/live.log
- public/results/checkrun.md
- public/results/wpt_report.json.gz
- public/results/wpt_screenshot.txt.gz

WPT Command: python3 ./wpt run --channel=dev --no-fail-on-unexpected --log-wptreport=../artifacts/wpt_report.json --log-wptscreenshot=../artifacts/wpt_screenshot.txt --affected base_head --log-mach-level=info --log-mach=- -y --no-pause --no-restart-on-unexpected --install-fonts --verify-log-full --no-headless --enable-swiftshader --install-browser --install-webdriver chrome


[taskcluster 2025-02-24 14:43:13.605Z] Task ID: JyPRb2VARveV2mb5gQ13nw
[taskcluster 2025-02-24 14:43:13.605Z] Worker ID: 6241300672102383717
[taskcluster 2025-02-24 14:43:13.605Z] Worker Group: us-central1-b
[taskcluster 2025-02-24 14:43:13.605Z] Worker Node Type: projects/757942385826/machineTypes/n2-standard-4
[taskcluster 2025-02-24 14:43:13.605Z] Worker Pool: proj-wpt/ci
[taskcluster 2025-02-24 14:43:13.605Z] Worker Version: 46.1.0
[taskcluster 2025-02-24 14:43:13.605Z] Public IP: 34.132.220.57
[taskcluster 2025-02-24 14:43:13.605Z] Hostname: proj-wpt-ci-ogclang0rv-fo43on5jcka

[taskcluster 2025-02-24 14:43:14.393Z] === Task Starting ===
+ '[' '' ']'
+ '[' -d /etc/profile.d ']'
+ for i in /etc/profile.d/*.sh
+ '[' -r /etc/profile.d/01-locale-fix.sh ']'
+ . /etc/profile.d/01-locale-fix.sh
+++ /usr/bin/locale-check C.UTF-8
++ eval
+ for i in /etc/profile.d/*.sh
+ '[' -r /etc/profile.d/libvirt-uri.sh ']'
+ . /etc/profile.d/libvirt-uri.sh

...(139419 lines hidden)...

webdriver/tests/interop/beforeunload_prompt.py:63: in check_beforeunload_not_implicitly_accepted
    await bidi_session.browsing_context.handle_user_prompt(
        accept     = False
        bidi_session = <webdriver.bidi.client.BidiSession object at 0x7f0a9d224fd0>
        current_session = <Session e87e8d70c8c92156630d87a1cfec7e75>
        execute_as_async = <function execute_as_async.<locals>.execute_as_async at 0x7f0a9c9c4e50>
        new_tab    = {'context': '8B3D07557CFC97EDFA14543FA1884A05'}
        on_prompt_closed = <Future finished result={'accepted': False, 'context': '8B3D07557CFC...4543FA1884A05', 'type': 'beforeunload'}>
        on_prompt_opened = <Future finished result={'context': '8B3D07557CFC...4543FA1884A05', 'handler': 'dismiss', 'message': '', 'type': 'beforeunload'}>
        opened_event = {'context': '8B3D07557CFC97EDFA14543FA1884A05',
 'handler': 'dismiss',
 'message': '',
 'type': 'beforeunload'}
        page_beforeunload = 'https://web-platform.test:8443/webdriver/tests/support/html/beforeunload.html'
        page_target = 'https://web-platform.test:8443/webdriver/tests/support/html/default.html'
        setup_beforeunload_page = <function setup_beforeunload_page.<locals>.setup_beforeunload_page at 0x7f0a9c9c45e0>
        subscribe_events = <function subscribe_events.<locals>.subscribe_events at 0x7f0a9c9c4310>
        sync_navigate = <function check_beforeunload_not_implicitly_accepted.<locals>.check_beforeunload_not_implicitly_accepted.<locals>.sync_navigate at 0x7f0a9c9ee1f0>
        task_navigate = <Task finished name='Task-84423' coro=<execute_as_async.<locals>.execute_as_async() done, defined at /home/test/web-platform-tests/webdriver/tests/support/fixtures_bidi.py:56> result=None>
        url        = <function url.<locals>.url at 0x7f0a9c9c93a0>
        wait_for_event = <function wait_for_event.<locals>.wait_for_event at 0x7f0a9c9c4550>
        wait_for_future_safe = <function wait_for_future_safe.<locals>.wait_for_future_safe at 0x7f0a9c9c49d0>
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <webdriver.bidi.modules.browsing_context.BrowsingContext object at 0x7f0a9d224fa0>
kwargs = {'accept': False, 'context': '8B3D07557CFC97EDFA14543FA1884A05'}
raw_result = False
params = {'accept': False, 'context': '8B3D07557CFC97EDFA14543FA1884A05'}
mod_name = 'browsingContext', cmd_name = 'browsingContext.handleUserPrompt'
future = <Future finished exception=NoSuchAlertException(no such alert, No dialog is showing, None)>

    @functools.wraps(params_fn)
    async def inner(self: Any, **kwargs: Any) -> Any:
        raw_result = kwargs.pop("raw_result", False)
        params = remove_undefined(params_fn(self, **kwargs))
    
        # Convert the classname and the method name to a bidi command name
        mod_name = owner.__name__[0].lower() + owner.__name__[1:]
        if hasattr(owner, "prefix"):
            mod_name = f"{owner.prefix}:{mod_name}"
        cmd_name = f"{mod_name}.{to_camelcase(name)}"
    
        future = await self.session.send_command(cmd_name, params)
>       result = await future
E       webdriver.bidi.error.NoSuchAlertException: no such alert (No dialog is showing)

cmd_name   = 'browsingContext.handleUserPrompt'
future     = <Future finished exception=NoSuchAlertException(no such alert, No dialog is showing, None)>
kwargs     = {'accept': False, 'context': '8B3D07557CFC97EDFA14543FA1884A05'}
mod_name   = 'browsingContext'
name       = 'handle_user_prompt'
owner      = <class 'webdriver.bidi.modules.browsing_context.BrowsingContext'>
params     = {'accept': False, 'context': '8B3D07557CFC97EDFA14543FA1884A05'}
params_fn  = <function BrowsingContext.handle_user_prompt at 0x7f0ab73faca0>
raw_result = False
result_fn  = None
self       = <webdriver.bidi.modules.browsing_context.BrowsingContext object at 0x7f0a9d224fa0>

tools/webdriver/webdriver/bidi/modules/_module.py:76: NoSuchAlertException
  FAIL test_dismiss_and_notify[capabilities0-True] - webdriver.bidi.error.NoSuchAlertException: no such alert (No dialog is showing)
check_beforeunload_not_implicitly_accepted = <function check_beforeunload_not_implicitly_accepted.<locals>.check_beforeunload_not_implicitly_accepted at 0x7f0a9c9c43a0>
accept = True

    @pytest.mark.capabilities({"unhandledPromptBehavior": "dismiss and notify"})
    @pytest.mark.parametrize("accept", [False, True])
    async def test_dismiss_and_notify(check_beforeunload_not_implicitly_accepted, accept):
>       await check_beforeunload_not_implicitly_accepted(accept)

accept     = True
check_beforeunload_not_implicitly_accepted = <function check_beforeunload_not_implicitly_accepted.<locals>.check_beforeunload_not_implicitly_accepted at 0x7f0a9c9c43a0>

webdriver/tests/interop/beforeunload_prompt.py:111: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
webdriver/tests/interop/beforeunload_prompt.py:63: in check_beforeunload_not_implicitly_accepted
    await bidi_session.browsing_context.handle_user_prompt(
        accept     = True
        bidi_session = <webdriver.bidi.client.BidiSession object at 0x7f0a9d224fd0>
        current_session = <Session e87e8d70c8c92156630d87a1cfec7e75>
        execute_as_async = <function execute_as_async.<locals>.execute_as_async at 0x7f0a9c9c4040>
        new_tab    = {'context': 'FC788389D9B0251308EF789ABCDC207D'}
        on_prompt_closed = <Future finished result={'accepted': False, 'context': 'FC788389D9B0...F789ABCDC207D', 'type': 'beforeunload'}>
        on_prompt_opened = <Future finished result={'context': 'FC788389D9B0...F789ABCDC207D', 'handler': 'dismiss', 'message': '', 'type': 'beforeunload'}>
        opened_event = {'context': 'FC788389D9B0251308EF789ABCDC207D',
 'handler': 'dismiss',
 'message': '',
 'type': 'beforeunload'}
        page_beforeunload = 'https://web-platform.test:8443/webdriver/tests/support/html/beforeunload.html'
        page_target = 'https://web-platform.test:8443/webdriver/tests/support/html/default.html'
        setup_beforeunload_page = <function setup_beforeunload_page.<locals>.setup_beforeunload_page at 0x7f0a9c9c4b80>
        subscribe_events = <function subscribe_events.<locals>.subscribe_events at 0x7f0a9c9c4670>
        sync_navigate = <function check_beforeunload_not_implicitly_accepted.<locals>.check_beforeunload_not_implicitly_accepted.<locals>.sync_navigate at 0x7f0a9c9c9310>
        task_navigate = <Task finished name='Task-84440' coro=<execute_as_async.<locals>.execute_as_async() done, defined at /home/test/web-platform-tests/webdriver/tests/support/fixtures_bidi.py:56> result=None>
        url        = <function url.<locals>.url at 0x7f0a9d229310>
        wait_for_event = <function wait_for_event.<locals>.wait_for_event at 0x7f0a9c9c44c0>
        wait_for_future_safe = <function wait_for_future_safe.<locals>.wait_for_future_safe at 0x7f0a9c9c4d30>
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <webdriver.bidi.modules.browsing_context.BrowsingContext object at 0x7f0a9d224fa0>
kwargs = {'accept': True, 'context': 'FC788389D9B0251308EF789ABCDC207D'}
raw_result = False
params = {'accept': True, 'context': 'FC788389D9B0251308EF789ABCDC207D'}
mod_name = 'browsingContext', cmd_name = 'browsingContext.handleUserPrompt'
future = <Future finished exception=NoSuchAlertException(no such alert, No dialog is showing, None)>

    @functools.wraps(params_fn)
    async def inner(self: Any, **kwargs: Any) -> Any:
        raw_result = kwargs.pop("raw_result", False)
        params = remove_undefined(params_fn(self, **kwargs))
    
        # Convert the classname and the method name to a bidi command name
        mod_name = owner.__name__[0].lower() + owner.__name__[1:]
        if hasattr(owner, "prefix"):
            mod_name = f"{owner.prefix}:{mod_name}"
        cmd_name = f"{mod_name}.{to_camelcase(name)}"
    
        future = await self.session.send_command(cmd_name, params)
>       result = await future
E       webdriver.bidi.error.NoSuchAlertException: no such alert (No dialog is showing)

cmd_name   = 'browsingContext.handleUserPrompt'
future     = <Future finished exception=NoSuchAlertException(no such alert, No dialog is showing, None)>
kwargs     = {'accept': True, 'context': 'FC788389D9B0251308EF789ABCDC207D'}
mod_name   = 'browsingContext'
name       = 'handle_user_prompt'
owner      = <class 'webdriver.bidi.modules.browsing_context.BrowsingContext'>
params     = {'accept': True, 'context': 'FC788389D9B0251308EF789ABCDC207D'}
params_fn  = <function BrowsingContext.handle_user_prompt at 0x7f0ab73faca0>
raw_result = False
result_fn  = None
self       = <webdriver.bidi.modules.browsing_context.BrowsingContext object at 0x7f0a9d224fa0>

tools/webdriver/webdriver/bidi/modules/_module.py:76: NoSuchAlertException
/webdriver/tests/interop/frames.py
  FAIL test_classic_switch_to_parent_no_browsing_context - Failed: DID NOT RAISE <class 'webdriver.error.NoSuchWindowException'>
bidi_session = <webdriver.bidi.client.BidiSession object at 0x7f0a9c999700>
current_session = <Session 371b66945a208335c1d34f9eb8896a18>
url = <function url.<locals>.url at 0x7f0a9c9eea60>

    async def test_classic_switch_to_parent_no_browsing_context(bidi_session, current_session, url):
        # With WebDriver classic it cannot be checked if the parent frame is already
        # gone before switching to it. To prevent race conditions such a check needs
        # to be done via WebDriver BiDi.
        current_session.url = url("/webdriver/tests/support/html/frames.html")
    
        subframe = current_session.find.css("#sub-frame", all=False)
        current_session.switch_frame(subframe)
    
        deleteframe = current_session.find.css("#delete-frame", all=False)
        current_session.switch_frame(deleteframe)
    
        button = current_session.find.css("#remove-top", all=False)
        button.click()
    
        async def is_frame_removed(_):
            contexts = await bidi_session.browsing_context.get_tree(root=current_session.window_handle)
            return not contexts[0]["children"]
    
        # Wait until IFrame is gone.
        wait = AsyncPoll(
            current_session,
            timeout=5,
            message="IFrame that should be closed is still open",
        )
        await wait.until(is_frame_removed)
    
        with pytest.raises(NoSuchWindowException):
>           current_session.switch_frame("parent")
E           Failed: DID NOT RAISE <class 'webdriver.error.NoSuchWindowException'>

bidi_session = <webdriver.bidi.client.BidiSession object at 0x7f0a9c999700>
button     = <WebElement f.A6B2DD16A33BEF933230F5F93491BCEC.d.43F05407B64A5C4CB00FA97443E5BE56.e.9>
current_session = <Session 371b66945a208335c1d34f9eb8896a18>
deleteframe = <WebElement f.E469EF666D97BDCBF4A5CD93AF7576BE.d.D1BA5C831B76FFF0AE925B77185AA903.e.8>
is_frame_removed = <function test_classic_switch_to_parent_no_browsing_context.<locals>.is_frame_removed at 0x7f0a9c9ee820>
subframe   = <WebElement f.F73B4754FB2317E0BE266419B151A283.d.8684F548BD3D309787C898F77D9C4846.e.7>
url        = <function url.<locals>.url at 0x7f0a9c9eea60>
wait       = <tests.support.sync.AsyncPoll object at 0x7f0a9c9da5e0>

webdriver/tests/interop/frames.py:37: Failed
23:18.42 INFO Got 94 unexpected results, with 0 unexpected passes
23:18.42 wptserve INFO Stopped WebTransport over HTTP/3 server on 127.0.0.1:11000
23:18.43 wptserve INFO Stopped http server on 127.0.0.1:8000
23:18.71 wptserve INFO Stopped http server on 127.0.0.1:8443
23:18.80 wptserve INFO Stopped http server on 127.0.0.1:8001
23:18.81 wptserve INFO Close on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8889))
23:18.82 wptserve INFO Stopped http server on 127.0.0.1:8444
23:18.82 wptserve INFO Stopped http server on 127.0.0.1:9000
23:18.82 wptserve INFO Stopped http server on 127.0.0.1:8446
23:18.83 wptserve INFO Close on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8888))
23:18.84 wptserve INFO Stopped http server on 127.0.0.1:8445
23:18.85 wptserve INFO Stopped http server on 127.0.0.1:8003
23:18.86 wptserve INFO Stopped http server on 127.0.0.1:8002
23:18.91 INFO Removed font: Ahem.ttf
23:18.93 INFO Closing logging queue
23:18.94 INFO queue closed
23:18.94 INFO Tolerating 94 unexpected results
X connection to :99.0 broken (explicit kill or server shutdown).

[taskcluster 2025-02-24 15:08:44.409Z] === Task Finished ===
[taskcluster 2025-02-24 15:08:45.047Z] Successful task run with exit code: 0 completed in 1531.443 seconds