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-without-changes succeeded Feb 24, 2025 in 45m 53s

Community-TC (pull_request)

Collect results for all tests affected by a pull request in chrome but without the changes in the PR.

Details

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

Task Status

Started: 2025-02-24T14:44:15.924Z
Resolved: 2025-02-24T15:18:03.132Z
Task Execution Time: 33 minutes, 47 seconds, 208 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 task_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:44:15.981Z] Task ID: ZjZ8M9DgTwmUI4-HyV0cHQ
[taskcluster 2025-02-24 14:44:15.981Z] Worker ID: 8087028679618708156
[taskcluster 2025-02-24 14:44:15.981Z] Worker Group: us-east1-c
[taskcluster 2025-02-24 14:44:15.981Z] Worker Node Type: projects/757942385826/machineTypes/n2-standard-4
[taskcluster 2025-02-24 14:44:15.981Z] Worker Pool: proj-wpt/ci
[taskcluster 2025-02-24 14:44:15.982Z] Worker Version: 46.1.0
[taskcluster 2025-02-24 14:44:15.982Z] Public IP: 34.75.87.15
[taskcluster 2025-02-24 14:44:15.982Z] Hostname: proj-wpt-ci-edqiasxkqigpinmnc0hdgw

[taskcluster 2025-02-24 14:44:17.780Z] === 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

...(139840 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 0x7f417328cbe0>
        current_session = <Session 323d5a1ee9b812c74c87350072681aba>
        execute_as_async = <function execute_as_async.<locals>.execute_as_async at 0x7f41732a0700>
        new_tab    = {'context': '49008AFFFB21A3284B59753CFF4486BB'}
        on_prompt_closed = <Future finished result={'accepted': False, 'context': '49008AFFFB21...9753CFF4486BB', 'type': 'beforeunload'}>
        on_prompt_opened = <Future finished result={'context': '49008AFFFB21...9753CFF4486BB', 'handler': 'dismiss', 'message': '', 'type': 'beforeunload'}>
        opened_event = {'context': '49008AFFFB21A3284B59753CFF4486BB',
 '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 0x7f41732a0160>
        subscribe_events = <function subscribe_events.<locals>.subscribe_events at 0x7f41732a0310>
        sync_navigate = <function check_beforeunload_not_implicitly_accepted.<locals>.check_beforeunload_not_implicitly_accepted.<locals>.sync_navigate at 0x7f41732a0a60>
        task_navigate = <Task finished name='Task-84419' 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 0x7f41732b2700>
        wait_for_event = <function wait_for_event.<locals>.wait_for_event at 0x7f41732a01f0>
        wait_for_future_safe = <function wait_for_future_safe.<locals>.wait_for_future_safe at 0x7f41732a03a0>
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <webdriver.bidi.modules.browsing_context.BrowsingContext object at 0x7f417328c550>
kwargs = {'accept': False, 'context': '49008AFFFB21A3284B59753CFF4486BB'}
raw_result = False
params = {'accept': False, 'context': '49008AFFFB21A3284B59753CFF4486BB'}
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': '49008AFFFB21A3284B59753CFF4486BB'}
mod_name   = 'browsingContext'
name       = 'handle_user_prompt'
owner      = <class 'webdriver.bidi.modules.browsing_context.BrowsingContext'>
params     = {'accept': False, 'context': '49008AFFFB21A3284B59753CFF4486BB'}
params_fn  = <function BrowsingContext.handle_user_prompt at 0x7f4195c508b0>
raw_result = False
result_fn  = None
self       = <webdriver.bidi.modules.browsing_context.BrowsingContext object at 0x7f417328c550>

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 0x7f41732ab3a0>
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 0x7f41732ab3a0>

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 0x7f417328cbe0>
        current_session = <Session 323d5a1ee9b812c74c87350072681aba>
        execute_as_async = <function execute_as_async.<locals>.execute_as_async at 0x7f41732ab310>
        new_tab    = {'context': '0A57C1A75AE478DF36E0CE8082E2E626'}
        on_prompt_closed = <Future finished result={'accepted': False, 'context': '0A57C1A75AE4...0CE8082E2E626', 'type': 'beforeunload'}>
        on_prompt_opened = <Future finished result={'context': '0A57C1A75AE4...0CE8082E2E626', 'handler': 'dismiss', 'message': '', 'type': 'beforeunload'}>
        opened_event = {'context': '0A57C1A75AE478DF36E0CE8082E2E626',
 '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 0x7f41732a0820>
        subscribe_events = <function subscribe_events.<locals>.subscribe_events at 0x7f41732a0670>
        sync_navigate = <function check_beforeunload_not_implicitly_accepted.<locals>.check_beforeunload_not_implicitly_accepted.<locals>.sync_navigate at 0x7f41732ab670>
        task_navigate = <Task finished name='Task-84436' 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 0x7f41732d3c10>
        wait_for_event = <function wait_for_event.<locals>.wait_for_event at 0x7f41732a0040>
        wait_for_future_safe = <function wait_for_future_safe.<locals>.wait_for_future_safe at 0x7f41732a0f70>
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <webdriver.bidi.modules.browsing_context.BrowsingContext object at 0x7f417328c550>
kwargs = {'accept': True, 'context': '0A57C1A75AE478DF36E0CE8082E2E626'}
raw_result = False
params = {'accept': True, 'context': '0A57C1A75AE478DF36E0CE8082E2E626'}
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': '0A57C1A75AE478DF36E0CE8082E2E626'}
mod_name   = 'browsingContext'
name       = 'handle_user_prompt'
owner      = <class 'webdriver.bidi.modules.browsing_context.BrowsingContext'>
params     = {'accept': True, 'context': '0A57C1A75AE478DF36E0CE8082E2E626'}
params_fn  = <function BrowsingContext.handle_user_prompt at 0x7f4195c508b0>
raw_result = False
result_fn  = None
self       = <webdriver.bidi.modules.browsing_context.BrowsingContext object at 0x7f417328c550>

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 0x7f4173204730>
current_session = <Session ddc61017de5d8a131a6f1369e8c83b2c>
url = <function url.<locals>.url at 0x7f41732b2af0>

    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 0x7f4173204730>
button     = <WebElement f.EEF3F583F462092FCD62284452B96194.d.CC50D88C8C82CBFBED7C439E54095D88.e.9>
current_session = <Session ddc61017de5d8a131a6f1369e8c83b2c>
deleteframe = <WebElement f.6B7824DA5D9A8387B44F311C8240C74D.d.43B554330B4E241BB746263B23350CC8.e.8>
is_frame_removed = <function test_classic_switch_to_parent_no_browsing_context.<locals>.is_frame_removed at 0x7f41732d39d0>
subframe   = <WebElement f.9A41961D7259BB575E6848D7C418C880.d.C82C732F3CD68A0C466C5E4922AEC6D4.e.7>
url        = <function url.<locals>.url at 0x7f41732b2af0>
wait       = <tests.support.sync.AsyncPoll object at 0x7f417327d3d0>

webdriver/tests/interop/frames.py:37: Failed
30:31.91 INFO Got 93 unexpected results, with 0 unexpected passes
30:31.91 wptserve INFO Stopped http server on 127.0.0.1:8002
30:31.91 wptserve INFO Stopped WebTransport over HTTP/3 server on 127.0.0.1:11000
30:31.92 wptserve INFO Stopped http server on 127.0.0.1:8446
30:32.08 wptserve INFO Stopped http server on 127.0.0.1:8443
30:32.34 wptserve INFO Stopped http server on 127.0.0.1:8003
30:32.34 wptserve INFO Stopped http server on 127.0.0.1:8445
30:32.36 wptserve INFO Stopped http server on 127.0.0.1:8444
30:32.38 wptserve INFO Close on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8888))
30:32.39 wptserve INFO Stopped http server on 127.0.0.1:9000
30:32.40 wptserve INFO Close on: (<AddressFamily.AF_INET: 2>, <SocketKind.SOCK_STREAM: 1>, 6, '', ('127.0.0.1', 8889))
30:32.40 wptserve INFO Stopped http server on 127.0.0.1:8000
30:32.41 wptserve INFO Stopped http server on 127.0.0.1:8001
30:32.61 INFO Removed font: Ahem.ttf
30:32.68 INFO Closing logging queue
30:32.68 INFO queue closed
30:32.68 INFO Tolerating 93 unexpected results
X connection to :99.0 broken (explicit kill or server shutdown).

[taskcluster 2025-02-24 15:18:01.205Z] === Task Finished ===
[taskcluster 2025-02-24 15:18:02.299Z] Successful task run with exit code: 0 completed in 2026.319 seconds