Skip to content

Optimize graph traversal by using a more appropriate algorithm

338c4f9
Select commit
Loading
Failed to load commit list.
Merged

Optimize graph traversal by using a more appropriate algorithm #823

Optimize graph traversal by using a more appropriate algorithm
338c4f9
Select commit
Loading
Failed to load commit list.
firefoxci-taskcluster / test-unit-py310 succeeded Oct 17, 2025 in 3m 7s

FirefoxCI (pull_request)

Run unit tests with py310 (Treeherder push)

Details

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

Task Status

Started: 2025-10-17T13:34:10.660Z
Resolved: 2025-10-17T13:34:51.402Z
Task Execution Time: 40 seconds, 742 milliseconds
Task Status: completed
Reason Resolved: completed
RunId: 0

Artifacts

- public/coverage.py310
- public/logs/live_backing.log
- public/logs/live.log


[taskcluster 2025-10-17 13:34:10.788Z] Task ID: U8lQ70fsTYmJMZXal50avw
[taskcluster 2025-10-17 13:34:10.788Z] Worker ID: 8208772482516122550
[taskcluster 2025-10-17 13:34:10.788Z] Worker Group: us-west1-b
[taskcluster 2025-10-17 13:34:10.788Z] Worker Node Type: projects/887720501152/machineTypes/c2-standard-4
[taskcluster 2025-10-17 13:34:10.788Z] Worker Pool: taskgraph-t/linux-gcp
[taskcluster 2025-10-17 13:34:10.788Z] Worker Version: 38.0.5
[taskcluster 2025-10-17 13:34:10.788Z] Public IP: 34.105.18.247
[taskcluster 2025-10-17 13:34:10.788Z] Hostname: taskgraph-t-linux-gcp-wdsutcjxsgm0kqfm7u2cng
[taskcluster 2025-10-17 13:34:10.788Z] using cache "taskgraph-level-1-uv-v3-26529e177a382bde07b2-VDYT3xlFRRWEiuuxW6__jw" -> /builds/worker/.task-cache/uv
[taskcluster 2025-10-17 13:34:10.788Z] using cache "taskgraph-level-1-checkouts-v3-26529e177a382bde07b2-VDYT3xlFRRWEiuuxW6__jw" -> /builds/worker/checkouts

[taskcluster 2025-10-17 13:34:11.223Z] Image 'public/image.tar.zst' from task 'VDYT3xlFRRWEiuuxW6__jw' loaded.  Using image ID sha256:a4917f5b7fcd8e5242f16f8b0d33554ed25b3d8e5f5290c5c5f36e1e612cee5e.
[taskcluster 2025-10-17 13:34:11.290Z] === Task Starting ===
[setup 2025-10-17T13:34:11.573+00:00] run-task started in /
[setup 2025-10-17T13:34:11.573+00:00] Invoked by command: --ci-checkout=/builds/worker/checkouts/vcs/ --task-cwd /builds/worker/checkouts/vcs -- bash -cx uv run coverage run --data-file /builds/worker/artifacts/coverage --context=py310 -m pytest -vv
[setup 2025-10-17T13:34:11.573+00:00] Python version: 3.11.2
[setup 2025-10-17T13:34:11.573+00:00] Subprocess python version: 
cpython-3.13.2-linux-x86_64-gnu     /builds/worker/.local/share/uv/python/cpython-3.13.2-linux-x86_64-gnu/bin/python3.13
cpython-3.12.9-linux-x86_64-gnu     /builds/worker/.local/share/uv/python/cpython-3.12.9-linux-x86_64-gnu/bin/python3.12
cpython-3.11.11-linux-x86_64-gnu    /builds/worker/.local/share/uv/python/cpython-3.11.11-linux-x86_64-gnu/bin/python3.11

...(409 lines hidden)...

[task 2025-10-17T13:34:28.739+00:00] 'orjson': No module named 'orjson')                                      [ 66%]
[task 2025-10-17T13:34:28.741+00:00] test/test_util_keyed_by.py::test_iter_dot_paths[simple case] PASSED      [ 66%]
[task 2025-10-17T13:34:28.743+00:00] test/test_util_keyed_by.py::test_iter_dot_paths[list case] PASSED        [ 66%]
[task 2025-10-17T13:34:28.744+00:00] test/test_util_keyed_by.py::test_iter_dot_paths[list partial match case] PASSED [ 66%]
[task 2025-10-17T13:34:28.746+00:00] test/test_util_keyed_by.py::test_iter_dot_paths[deep list case] PASSED   [ 66%]
[task 2025-10-17T13:34:28.748+00:00] test/test_util_parameterization.py::test_timestamps_no_change PASSED     [ 67%]
[task 2025-10-17T13:34:28.749+00:00] test/test_util_parameterization.py::test_timestamps_buried_replacement PASSED [ 67%]
[task 2025-10-17T13:34:28.751+00:00] test/test_util_parameterization.py::test_timestamps_appears_with_other_keys PASSED [ 67%]
[task 2025-10-17T13:34:28.752+00:00] test/test_util_parameterization.py::test_task_refs_no_change PASSED      [ 67%]
[task 2025-10-17T13:34:28.754+00:00] test/test_util_parameterization.py::test_task_refs_in_list PASSED        [ 67%]
[task 2025-10-17T13:34:28.755+00:00] test/test_util_parameterization.py::test_task_refs_in_dict PASSED        [ 67%]
[task 2025-10-17T13:34:28.757+00:00] test/test_util_parameterization.py::test_task_refs_multiple PASSED       [ 68%]
[task 2025-10-17T13:34:28.758+00:00] test/test_util_parameterization.py::test_task_refs_embedded PASSED       [ 68%]
[task 2025-10-17T13:34:28.760+00:00] test/test_util_parameterization.py::test_task_refs_escaping PASSED       [ 68%]
[task 2025-10-17T13:34:28.761+00:00] test/test_util_parameterization.py::test_task_refs_multikey PASSED       [ 68%]
[task 2025-10-17T13:34:28.763+00:00] test/test_util_parameterization.py::test_task_refs_self PASSED           [ 68%]
[task 2025-10-17T13:34:28.764+00:00] test/test_util_parameterization.py::test_task_refs_decision PASSED       [ 69%]
[task 2025-10-17T13:34:28.766+00:00] test/test_util_parameterization.py::test_task_refs_key PASSED            [ 69%]
[task 2025-10-17T13:34:28.767+00:00] test/test_util_parameterization.py::test_task_refs_invalid PASSED        [ 69%]
[task 2025-10-17T13:34:28.769+00:00] test/test_util_parameterization.py::test_artifact_refs_in_list PASSED    [ 69%]
[task 2025-10-17T13:34:28.771+00:00] test/test_util_parameterization.py::test_artifact_refs_in_dict PASSED    [ 69%]
[task 2025-10-17T13:34:28.772+00:00] test/test_util_parameterization.py::test_artifact_refs_in_string PASSED  [ 69%]
[task 2025-10-17T13:34:28.774+00:00] test/test_util_parameterization.py::test_artifact_refs_private PASSED    [ 70%]
[task 2025-10-17T13:34:28.775+00:00] test/test_util_parameterization.py::test_artifact_refs_self PASSED       [ 70%]
[task 2025-10-17T13:34:28.777+00:00] test/test_util_parameterization.py::test_artifact_refs_decision PASSED   [ 70%]
[task 2025-10-17T13:34:28.779+00:00] test/test_util_parameterization.py::test_artifact_refs_invalid PASSED    [ 70%]
[task 2025-10-17T13:34:28.780+00:00] test/test_util_parameterization.py::test_artifact_refs_badly_formed PASSED [ 70%]
[task 2025-10-17T13:34:28.782+00:00] test/test_util_path.py::TestPath::test_basedir PASSED                    [ 71%]
[task 2025-10-17T13:34:28.783+00:00] test/test_util_path.py::TestPath::test_basename PASSED                   [ 71%]
[task 2025-10-17T13:34:28.785+00:00] test/test_util_path.py::TestPath::test_commonprefix PASSED               [ 71%]
[task 2025-10-17T13:34:28.786+00:00] test/test_util_path.py::TestPath::test_dirname PASSED                    [ 71%]
[task 2025-10-17T13:34:28.787+00:00] test/test_util_path.py::TestPath::test_join PASSED                       [ 71%]
[task 2025-10-17T13:34:28.795+00:00] test/test_util_path.py::TestPath::test_match PASSED                      [ 72%]
[task 2025-10-17T13:34:28.796+00:00] test/test_util_path.py::TestPath::test_normpath PASSED                   [ 72%]
[task 2025-10-17T13:34:28.798+00:00] test/test_util_path.py::TestPath::test_rebase PASSED                     [ 72%]
[task 2025-10-17T13:34:28.800+00:00] test/test_util_path.py::TestPath::test_relpath PASSED                    [ 72%]
[task 2025-10-17T13:34:28.801+00:00] test/test_util_path.py::TestPath::test_split PASSED                      [ 72%]
[task 2025-10-17T13:34:28.803+00:00] test/test_util_path.py::TestPath::test_splitext PASSED                   [ 72%]
[task 2025-10-17T13:34:28.805+00:00] test/test_util_python_path.py::test_find_object_no_such_module PASSED    [ 73%]
[task 2025-10-17T13:34:28.807+00:00] test/test_util_python_path.py::test_find_object_no_such_object PASSED    [ 73%]
[task 2025-10-17T13:34:28.809+00:00] test/test_util_python_path.py::test_find_object_exists PASSED            [ 73%]
[task 2025-10-17T13:34:28.811+00:00] test/test_util_readonlydict.py::test_basic PASSED                        [ 73%]
[task 2025-10-17T13:34:28.812+00:00] test/test_util_readonlydict.py::test_update PASSED                       [ 73%]
[task 2025-10-17T13:34:28.813+00:00] test/test_util_readonlydict.py::test_del PASSED                          [ 74%]
[task 2025-10-17T13:34:28.815+00:00] test/test_util_readonlydict.py::test_copy PASSED                         [ 74%]
[task 2025-10-17T13:34:28.816+00:00] test/test_util_readonlydict.py::test_pickle PASSED                       [ 74%]
[task 2025-10-17T13:34:28.818+00:00] test/test_util_schema.py::TestValidateSchema::test_invalid PASSED        [ 74%]
[task 2025-10-17T13:34:28.819+00:00] test/test_util_schema.py::TestValidateSchema::test_valid PASSED          [ 74%]
[task 2025-10-17T13:34:28.821+00:00] test/test_util_schema.py::TestCheckSchema::test_extend_schema PASSED     [ 74%]
[task 2025-10-17T13:34:28.823+00:00] test/test_util_schema.py::TestCheckSchema::test_extend_schema_twice PASSED [ 75%]
[task 2025-10-17T13:34:28.825+00:00] test/test_util_schema.py::TestCheckSchema::test_schema PASSED            [ 75%]
[task 2025-10-17T13:34:28.827+00:00] test/test_util_schema.py::test_check_skipped PASSED                      [ 75%]
[task 2025-10-17T13:34:28.828+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_list PASSED           [ 75%]
[task 2025-10-17T13:34:28.830+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_match_default PASSED  [ 75%]
[task 2025-10-17T13:34:28.831+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_match_extra_value PASSED [ 76%]
[task 2025-10-17T13:34:28.833+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_match_nested_exact PASSED [ 76%]
[task 2025-10-17T13:34:28.834+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_match_partial_regexp PASSED [ 76%]
[task 2025-10-17T13:34:28.836+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_match_regexp PASSED   [ 76%]
[task 2025-10-17T13:34:28.838+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_multiple_matches PASSED [ 76%]
[task 2025-10-17T13:34:28.839+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_nested PASSED         [ 76%]
[task 2025-10-17T13:34:28.841+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_no_by PASSED          [ 77%]
[task 2025-10-17T13:34:28.842+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_no_by_dotted PASSED   [ 77%]
[task 2025-10-17T13:34:28.844+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_no_by_empty_dict PASSED [ 77%]
[task 2025-10-17T13:34:28.845+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_no_by_not_by PASSED   [ 77%]
[task 2025-10-17T13:34:28.847+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_no_by_not_dict PASSED [ 77%]
[task 2025-10-17T13:34:28.848+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_no_by_not_only_by PASSED [ 78%]
[task 2025-10-17T13:34:28.850+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_no_key PASSED         [ 78%]
[task 2025-10-17T13:34:28.852+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_no_key_no_default PASSED [ 78%]
[task 2025-10-17T13:34:28.853+00:00] test/test_util_schema.py::TestResolveKeyedBy::test_no_match PASSED       [ 78%]
[task 2025-10-17T13:34:28.855+00:00] test/test_util_schema.py::test_optionally_keyed_by PASSED                [ 78%]
[task 2025-10-17T13:34:28.857+00:00] test/test_util_schema.py::test_optionally_keyed_by_mulitple_keys PASSED  [ 79%]
[task 2025-10-17T13:34:28.859+00:00] test/test_util_taskcluster.py::test_get_root_url PASSED                  [ 79%]
[task 2025-10-17T13:34:28.860+00:00] test/test_util_taskcluster.py::test_get_artifact_url PASSED              [ 79%]
[task 2025-10-17T13:34:28.871+00:00] test/test_util_taskcluster.py::test_get_artifact PASSED                  [ 79%]
[task 2025-10-17T13:34:28.875+00:00] test/test_util_taskcluster.py::test_list_artifact PASSED                 [ 79%]
[task 2025-10-17T13:34:28.877+00:00] test/test_util_taskcluster.py::test_get_artifact_path PASSED             [ 79%]
[task 2025-10-17T13:34:28.879+00:00] test/test_util_taskcluster.py::test_get_index_url PASSED                 [ 80%]
[task 2025-10-17T13:34:28.882+00:00] test/test_util_taskcluster.py::test_find_task_id PASSED                  [ 80%]
[task 2025-10-17T13:34:28.886+00:00] test/test_util_taskcluster.py::test_find_task_id_batched PASSED          [ 80%]
[task 2025-10-17T13:34:28.889+00:00] test/test_util_taskcluster.py::test_get_artifact_from_index PASSED       [ 80%]
[task 2025-10-17T13:34:28.894+00:00] test/test_util_taskcluster.py::test_list_tasks PASSED                    [ 80%]
[task 2025-10-17T13:34:28.896+00:00] test/test_util_taskcluster.py::test_parse_time PASSED                    [ 81%]
[task 2025-10-17T13:34:28.897+00:00] test/test_util_taskcluster.py::test_get_task_url PASSED                  [ 81%]
[task 2025-10-17T13:34:28.901+00:00] test/test_util_taskcluster.py::test_get_task_definition PASSED           [ 81%]
[task 2025-10-17T13:34:28.904+00:00] test/test_util_taskcluster.py::test_cancel_task PASSED                   [ 81%]
[task 2025-10-17T13:34:28.907+00:00] test/test_util_taskcluster.py::test_status_task PASSED                   [ 81%]
[task 2025-10-17T13:34:28.911+00:00] test/test_util_taskcluster.py::test_status_task_batched PASSED           [ 81%]
[task 2025-10-17T13:34:28.914+00:00] test/test_util_taskcluster.py::test_state_task PASSED                    [ 82%]
[task 2025-10-17T13:34:28.917+00:00] test/test_util_taskcluster.py::test_rerun_task PASSED                    [ 82%]
[task 2025-10-17T13:34:28.921+00:00] test/test_util_taskcluster.py::test_get_current_scopes PASSED            [ 82%]
[task 2025-10-17T13:34:28.924+00:00] test/test_util_taskcluster.py::test_purge_cache PASSED                   [ 82%]
[task 2025-10-17T13:34:28.927+00:00] test/test_util_taskcluster.py::test_send_email PASSED                    [ 82%]
[task 2025-10-17T13:34:28.933+00:00] test/test_util_taskcluster.py::test_list_task_group_incomplete_tasks PASSED [ 83%]
[task 2025-10-17T13:34:28.944+00:00] test/test_util_taskcluster.py::test_get_ancestors PASSED                 [ 83%]
[task 2025-10-17T13:34:28.955+00:00] test/test_util_taskcluster.py::test_get_ancestors_string PASSED          [ 83%]
[task 2025-10-17T13:34:28.957+00:00] test/test_util_templates.py::MergeTest::test_merge PASSED                [ 83%]
[task 2025-10-17T13:34:28.959+00:00] test/test_util_templates.py::MergeTest::test_merge_by PASSED             [ 83%]
[task 2025-10-17T13:34:28.960+00:00] test/test_util_templates.py::MergeTest::test_merge_diff_types PASSED     [ 83%]
[task 2025-10-17T13:34:28.962+00:00] test/test_util_templates.py::MergeTest::test_merge_multiple_by PASSED    [ 84%]
[task 2025-10-17T13:34:28.963+00:00] test/test_util_templates.py::MergeTest::test_merge_to_dicts PASSED       [ 84%]
[task 2025-10-17T13:34:28.965+00:00] test/test_util_templates.py::MergeTest::test_merge_to_lists PASSED       [ 84%]
[task 2025-10-17T13:34:28.967+00:00] test/test_util_time.py::FromNowTest::test_current_json_time PASSED       [ 84%]
[task 2025-10-17T13:34:28.969+00:00] test/test_util_time.py::FromNowTest::test_invalid_str PASSED             [ 84%]
[task 2025-10-17T13:34:28.970+00:00] test/test_util_time.py::FromNowTest::test_json_from_now PASSED           [ 85%]
[task 2025-10-17T13:34:28.972+00:00] test/test_util_time.py::FromNowTest::test_json_from_now_tzinfo PASSED    [ 85%]
[task 2025-10-17T13:34:28.973+00:00] test/test_util_time.py::FromNowTest::test_json_from_now_utc_now PASSED   [ 85%]
[task 2025-10-17T13:34:28.975+00:00] test/test_util_time.py::FromNowTest::test_missing_unit PASSED            [ 85%]
[task 2025-10-17T13:34:28.976+00:00] test/test_util_time.py::FromNowTest::test_missing_unknown_unit PASSED    [ 85%]
[task 2025-10-17T13:34:28.978+00:00] test/test_util_time.py::FromNowTest::test_value_of PASSED                [ 86%]
[task 2025-10-17T13:34:28.979+00:00] test/test_util_treeherder.py::TestSymbols::test_add_suffix_no_group PASSED [ 86%]
[task 2025-10-17T13:34:28.981+00:00] test/test_util_treeherder.py::TestSymbols::test_add_suffix_with_group PASSED [ 86%]
[task 2025-10-17T13:34:28.983+00:00] test/test_util_treeherder.py::TestSymbols::test_join_no_group PASSED     [ 86%]
[task 2025-10-17T13:34:28.984+00:00] test/test_util_treeherder.py::TestSymbols::test_join_with_group PASSED   [ 86%]
[task 2025-10-17T13:34:28.986+00:00] test/test_util_treeherder.py::TestSymbols::test_split_no_group PASSED    [ 86%]
[task 2025-10-17T13:34:28.987+00:00] test/test_util_treeherder.py::TestSymbols::test_split_with_group PASSED  [ 87%]
[task 2025-10-17T13:34:28.994+00:00] test/test_util_vcs.py::test_get_repository[git] PASSED                   [ 87%]
[task 2025-10-17T13:34:29.000+00:00] test/test_util_vcs.py::test_get_repository[hg] PASSED                    [ 87%]
[task 2025-10-17T13:34:29.006+00:00] test/test_util_vcs.py::test_get_repository_type[git] PASSED              [ 87%]
[task 2025-10-17T13:34:29.012+00:00] test/test_util_vcs.py::test_get_repository_type[hg] PASSED               [ 87%]
[task 2025-10-17T13:34:29.014+00:00] test/test_util_vcs.py::test_get_repository_type_failure PASSED           [ 88%]
[task 2025-10-17T13:34:29.016+00:00] test/test_util_vcs.py::test_hgplain PASSED                               [ 88%]
[task 2025-10-17T13:34:29.029+00:00] test/test_util_vcs.py::test_get_commit_message[git-commit message in\u2026 pure utf8] PASSED [ 88%]
[task 2025-10-17T13:34:29.042+00:00] test/test_util_vcs.py::test_get_commit_message[git-commit message in... ascii] PASSED [ 88%]
[task 2025-10-17T13:34:29.461+00:00] test/test_util_vcs.py::test_get_commit_message[hg-commit message in\u2026 pure utf8] PASSED [ 88%]
[task 2025-10-17T13:34:29.872+00:00] test/test_util_vcs.py::test_get_commit_message[hg-commit message in... ascii] PASSED [ 88%]
[task 2025-10-17T13:34:29.880+00:00] test/test_util_vcs.py::test_calculate_head_rev[git] PASSED               [ 89%]
[task 2025-10-17T13:34:30.021+00:00] test/test_util_vcs.py::test_calculate_head_rev[hg] PASSED                [ 89%]
[task 2025-10-17T13:34:30.034+00:00] test/test_util_vcs.py::test_get_repo_path[git] PASSED                    [ 89%]
[task 2025-10-17T13:34:30.280+00:00] test/test_util_vcs.py::test_get_repo_path[hg] PASSED                     [ 89%]
[task 2025-10-17T13:34:30.303+00:00] test/test_util_vcs.py::test_update[git] PASSED                           [ 89%]
[task 2025-10-17T13:34:31.425+00:00] test/test_util_vcs.py::test_update[hg] PASSED                            [ 90%]
[task 2025-10-17T13:34:31.452+00:00] test/test_util_vcs.py::test_branch[git] PASSED                           [ 90%]
[task 2025-10-17T13:34:32.301+00:00] test/test_util_vcs.py::test_branch[hg] PASSED                            [ 90%]
[task 2025-10-17T13:34:32.312+00:00] test/test_util_vcs.py::test_remote_name_no_remote[git] PASSED            [ 90%]
[task 2025-10-17T13:34:32.433+00:00] test/test_util_vcs.py::test_remote_name_no_remote[hg] PASSED             [ 90%]
[task 2025-10-17T13:34:32.460+00:00] test/test_util_vcs.py::test_remote_name[git] PASSED                      [ 90%]
[task 2025-10-17T13:34:32.731+00:00] test/test_util_vcs.py::test_remote_name[hg] PASSED                       [ 91%]
[task 2025-10-17T13:34:32.770+00:00] test/test_util_vcs.py::test_all_remote_names[git] PASSED                 [ 91%]
[task 2025-10-17T13:34:33.289+00:00] test/test_util_vcs.py::test_all_remote_names[hg] PASSED                  [ 91%]
[task 2025-10-17T13:34:33.332+00:00] test/test_util_vcs.py::test_remote_name_many_remotes[git] PASSED         [ 91%]
[task 2025-10-17T13:34:33.752+00:00] test/test_util_vcs.py::test_remote_name_many_remotes[hg] PASSED          [ 91%]
[task 2025-10-17T13:34:33.797+00:00] test/test_util_vcs.py::test_remote_name_default_and_origin[git] PASSED   [ 92%]
[task 2025-10-17T13:34:34.184+00:00] test/test_util_vcs.py::test_remote_name_default_and_origin[hg] PASSED    [ 92%]
[task 2025-10-17T13:34:34.197+00:00] test/test_util_vcs.py::test_default_branch_guess[git] PASSED             [ 92%]
[task 2025-10-17T13:34:34.203+00:00] test/test_util_vcs.py::test_default_branch_guess[hg] PASSED              [ 92%]
[task 2025-10-17T13:34:34.231+00:00] test/test_util_vcs.py::test_default_branch_remote_query[git] PASSED      [ 92%]
[task 2025-10-17T13:34:34.373+00:00] test/test_util_vcs.py::test_default_branch_remote_query[hg] PASSED       [ 93%]
[task 2025-10-17T13:34:34.391+00:00] test/test_util_vcs.py::test_default_branch_cloned_metadata[git] PASSED   [ 93%]
[task 2025-10-17T13:34:34.396+00:00] test/test_util_vcs.py::test_default_branch_cloned_metadata[hg] PASSED    [ 93%]
[task 2025-10-17T13:34:34.418+00:00] test/test_util_vcs.py::test_get_tracked_files[git] PASSED                [ 93%]
[task 2025-10-17T13:34:35.685+00:00] test/test_util_vcs.py::test_get_tracked_files[hg] PASSED                 [ 93%]
[task 2025-10-17T13:34:35.698+00:00] test/test_util_vcs.py::test_get_changed_files_no_changes[git] PASSED     [ 93%]
[task 2025-10-17T13:34:36.224+00:00] test/test_util_vcs.py::test_get_changed_files_no_changes[hg] PASSED      [ 94%]
[task 2025-10-17T13:34:36.250+00:00] test/test_util_vcs.py::test_get_changed_files_one_modified_file[git] PASSED [ 94%]
[task 2025-10-17T13:34:37.224+00:00] test/test_util_vcs.py::test_get_changed_files_one_modified_file[hg] PASSED [ 94%]
[task 2025-10-17T13:34:37.244+00:00] test/test_util_vcs.py::test_get_changed_files_one_deleted_file[git] PASSED [ 94%]
[task 2025-10-17T13:34:38.186+00:00] test/test_util_vcs.py::test_get_changed_files_one_deleted_file[hg] PASSED [ 94%]
[task 2025-10-17T13:34:38.208+00:00] test/test_util_vcs.py::test_get_changed_files_one_added_file[git] PASSED [ 95%]
[task 2025-10-17T13:34:39.270+00:00] test/test_util_vcs.py::test_get_changed_files_one_added_file[hg] PASSED  [ 95%]
[task 2025-10-17T13:34:39.309+00:00] test/test_util_vcs.py::test_get_changed_files_two_revisions[git] PASSED  [ 95%]
[task 2025-10-17T13:34:41.839+00:00] test/test_util_vcs.py::test_get_changed_files_two_revisions[hg] PASSED   [ 95%]
[task 2025-10-17T13:34:41.903+00:00] test/test_util_vcs.py::test_workdir_outgoing[git] PASSED                 [ 95%]
[task 2025-10-17T13:34:45.514+00:00] test/test_util_vcs.py::test_workdir_outgoing[hg] PASSED                  [ 95%]
[task 2025-10-17T13:34:45.544+00:00] test/test_util_vcs.py::test_working_directory_clean[git] PASSED          [ 96%]
[task 2025-10-17T13:34:47.099+00:00] test/test_util_vcs.py::test_working_directory_clean[hg] PASSED           [ 96%]
[task 2025-10-17T13:34:47.141+00:00] test/test_util_vcs.py::test_find_latest_common_revision[git] PASSED      [ 96%]
[task 2025-10-17T13:34:48.843+00:00] test/test_util_vcs.py::test_find_latest_common_revision[hg] PASSED       [ 96%]
[task 2025-10-17T13:34:48.862+00:00] test/test_util_vcs.py::test_does_revision_exist_locally[git] PASSED      [ 96%]
[task 2025-10-17T13:34:49.850+00:00] test/test_util_vcs.py::test_does_revision_exist_locally[hg] PASSED       [ 97%]
[task 2025-10-17T13:34:49.852+00:00] test/test_util_verify.py::test_verification_types[GraphVerification] PASSED [ 97%]
[task 2025-10-17T13:34:49.854+00:00] test/test_util_verify.py::test_verification_types[InitialVerification] PASSED [ 97%]
[task 2025-10-17T13:34:49.856+00:00] test/test_util_verify.py::test_verification_types[KindsVerification] PASSED [ 97%]
[task 2025-10-17T13:34:49.857+00:00] test/test_util_verify.py::test_verification_types[ParametersVerification] PASSED [ 97%]
[task 2025-10-17T13:34:49.859+00:00] test/test_util_verify.py::test_verification[task_graph_symbol: valid] PASSED [ 97%]
[task 2025-10-17T13:34:49.862+00:00] test/test_util_verify.py::test_verification[task_graph_symbol: conflicting symbol] PASSED [ 98%]
[task 2025-10-17T13:34:49.864+00:00] test/test_util_verify.py::test_verification[task_graph_symbol: too many collections] PASSED [ 98%]
[task 2025-10-17T13:34:49.866+00:00] test/test_util_verify.py::test_verification[routes_notfication_filter: valid] PASSED [ 98%]
[task 2025-10-17T13:34:49.868+00:00] test/test_util_verify.py::test_verification[routes_notfication_filter: invalid] PASSED [ 98%]
[task 2025-10-17T13:34:49.870+00:00] test/test_util_verify.py::test_verification[routes_notfication_filter: deprecated] PASSED [ 98%]
[task 2025-10-17T13:34:49.872+00:00] test/test_util_verify.py::test_verification[verify_index_route: invalid slash in route] PASSED [ 99%]
[task 2025-10-17T13:34:49.874+00:00] test/test_util_workertypes.py::test_get_worker_type[linux-1-Exception] PASSED [ 99%]
[task 2025-10-17T13:34:49.876+00:00] test/test_util_workertypes.py::test_get_worker_type[b-linux-3-test-domain-3/b-linux-gcp] PASSED [ 99%]
[task 2025-10-17T13:34:49.878+00:00] test/test_util_workertypes.py::test_get_worker_type[t-linux-1-test-domain-1/t-linux-gcp] PASSED [ 99%]
[task 2025-10-17T13:34:49.880+00:00] test/test_util_yaml.py::test_load PASSED                                 [ 99%]
[task 2025-10-17T13:34:50.051+00:00] test/test_util_yaml.py::test_key_order PASSED                            [100%]
[task 2025-10-17T13:34:50.051+00:00] 
[task 2025-10-17T13:34:50.051+00:00] =============================== warnings summary ===============================
[task 2025-10-17T13:34:50.051+00:00] test/test_config.py::test_vcs_root_fallback
[task 2025-10-17T13:34:50.051+00:00]   /builds/worker/checkouts/vcs/test/test_config.py:57: PytestMockWarning: Mocks returned by pytest-mock do not need to be used as context managers. The mocker fixture automatically undoes mocking at the end of a test. This warning can be ignored if it was triggered by mocking a context manager. https://pytest-mock.readthedocs.io/en/latest/usage.html#usage-as-context-manager
[task 2025-10-17T13:34:50.051+00:00]     with mocker.patch("taskgraph.config.get_repository", side_effect=RuntimeError):
[task 2025-10-17T13:34:50.051+00:00] 
[task 2025-10-17T13:34:50.051+00:00] test/test_config.py::test_vcs_root_fallback
[task 2025-10-17T13:34:50.051+00:00]   /builds/worker/checkouts/vcs/test/test_config.py:60: PytestMockWarning: Mocks returned by pytest-mock do not need to be used as context managers. The mocker fixture automatically undoes mocking at the end of a test. This warning can be ignored if it was triggered by mocking a context manager. https://pytest-mock.readthedocs.io/en/latest/usage.html#usage-as-context-manager
[task 2025-10-17T13:34:50.051+00:00]     with mocker.patch("taskgraph.config.get_repository", side_effect=RuntimeError):
[task 2025-10-17T13:34:50.051+00:00] 
[task 2025-10-17T13:34:50.051+00:00] -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
[task 2025-10-17T13:34:50.051+00:00] ============ 535 passed, 6 skipped, 2 xfailed, 2 warnings in 33.22s ============
[taskcluster 2025-10-17 13:34:50.566Z] === Task Finished ===
[taskcluster 2025-10-17 13:34:50.841Z] Successful task run with exit code: 0 completed in 40.055 seconds