Branch: refs/heads/webkitglib/2.52
Home: https://github.com/WebKit/WebKit
Commit: e8a37c849176d115699c2e4e618d61a5d6eaf37b
https://github.com/WebKit/WebKit/commit/e8a37c849176d115699c2e4e618d61a5d6eaf37b
Author: Carlos Alberto Lopez Perez <[email protected]>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M Tools/Scripts/webkitpy/__init__.py
M Tools/Scripts/webkitpy/layout_tests/run_webkit_tests.py
M Tools/Scripts/webkitpy/port/glib.py
M Tools/Scripts/webkitpy/port/linux_get_crash_log.py
M Tools/Scripts/webkitpy/port/linux_get_crash_log_unittest.py
M Tools/glib/dependencies/apt
M Tools/glib/dependencies/dnf
M Tools/glib/dependencies/pacman
Log Message:
-----------
Cherry-pick 313530@main (aaa99edbf8c0).
https://bugs.webkit.org/show_bug.cgi?id=315073
[Tools] linux_get_crash_log: Revamp crash log generation for Linux layout
tests
https://bugs.webkit.org/show_bug.cgi?id=315073
Reviewed by Nikolas Zimmermann.
Rewrite the Linux crash log tooling to be more reliable and informative.
The coredump location is now determined by reading
/proc/sys/kernel/core_pattern
directly instead of relying on a hardcoded WEBKIT_CORE_DUMPS_DIRECTORY
environment
variable. Both raw coredump files (abspath method) and systemd-coredump via
coredumpctl are supported, with automatic detection of which one is
configured.
Coredump files are now matched to the crashing process by PID when possible,
using the %p format specifier from core_pattern. A fallback matching by
program
name and timestamp is available but disabled by default since it is
unreliable
when several test workers run in parallel. This can be tuned via environment
variables documented in the help message shown on missing coredumps.
A new inotify-based background thread captures thread names from
/proc/<pid>/task
the moment the kernel creates the coredump file, before the process fully
exits.
This information is included in the crash log to help identify the crashing
thread.
The thread runs as a singleton across concurrent test runner instances
using a
lockfile to avoid races when writing the thread name data.
GDB backtraces now use "bt full" to include local variables, and optionally
wrap
the GDB invocation with GNU time to report memory and CPU usage. Parallel
GDB
execution can be rate-limited via
WEBKIT_CRASHLOG_GDB_CONCURRENT_EXECUTION_LIMIT
to avoid memory exhaustion during runs with many simultaneous crashes.
Running
inside a PID namespace (e.g. containers) is detected and warned about,
since it
prevents reliable coredump attribution when using the coredumpctl method.
* Tools/Scripts/webkitpy/__init__.py:
* Tools/Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(run):
* Tools/Scripts/webkitpy/port/glib.py:
(GLibPort.setup_environ_for_server):
* Tools/Scripts/webkitpy/port/linux_get_crash_log.py:
(StrEnum):
(StrEnum.__str__):
(PrefixAdapter):
(PrefixAdapter.process):
(PrefixAdapter.log):
(LockFile):
(LockFile.__init__):
(LockFile.acquire):
(LockFile._try_claim):
(LockFile._acquire_single):
(LockFile._acquire_multi):
(LockFile.release):
(LockFile._log_waiter):
(LockFile.__enter__):
(LockFile.__exit__):
(CoreDumpMethod):
(CrashLogEnvVars):
(CrashLogUtils):
(CrashLogUtils.get_gdb_concurrent_execution_limit):
(CrashLogUtils._get_gdb_lock_configuration):
(CrashLogUtils.get_gdb_lock):
(CrashLogUtils.get_thread_info_file_name):
(CrashLogUtils.get_thread_data_dir):
(CrashLogUtils.get_temp_dir_for_coredumpctl_dumps):
(CrashLogUtils.get_temp_dir_for_coredumpctl_dumps.is_tmpfs):
(CrashLogUtils.get_temp_dir_for_coredumpctl_dumps.check_and_return_subdir):
(CrashLogUtils.allow_unreliable_fallback_to_latest_coredump):
(CrashLogUtils.expand_core_pattern_and_detect_variable_specifiers):
(CrashLogUtils.determine_coredump_method_and_dir):
(CrashLogUtils.core_pattern_to_regex):
(CrashLogUtils.are_coredumps_enabled):
(CrashLogUtils.are_coredumps_enabled_and_unlimited):
(CrashLogUtils.human_readable_size):
(CrashLogUtils.human_readable_size.fmt):
(CrashLogUtils.make_temp_path):
(CrashLogUtils.in_host_pid_namespace):
(CrashLogUtils.core_pattern_has_pid_format_string):
(ThreadNamesCrashLogCapturer):
(ThreadNamesCrashLogCapturer.__init__):
(ThreadNamesCrashLogCapturer._get_regex_for_core_pattern_pid_match):
(ThreadNamesCrashLogCapturer.watch_coredump_dir):
(ThreadNamesCrashLogCapturer.read_thread_info):
(ThreadNamesCrashLogCapturer.handle_coredump):
(GDBCrashLogStartupHandler):
(GDBCrashLogStartupHandler.__init__):
(GDBCrashLogStartupHandler._maybe_remove_file_if_old):
(GDBCrashLogStartupHandler._is_debuginfod_server_available):
(GDBCrashLogStartupHandler._check_debuginfod_servers):
(GDBCrashLogStartupHandler.clean_old_coredumps):
(GDBCrashLogStartupHandler.clean_old_thread_info_files):
(GDBCrashLogGenerator):
(GDBCrashLogGenerator.__init__):
(GDBCrashLogGenerator._get_gdb_output):
(GDBCrashLogGenerator._coredump_pattern_has_pid_format_string):
(GDBCrashLogGenerator._pid_is_valid):
(GDBCrashLogGenerator._build_warning_msg):
(GDBCrashLogGenerator._pick_most_recent):
(GDBCrashLogGenerator._get_coredump_path_with_core_pattern_method):
(GDBCrashLogGenerator._coredumpctl_dump_core_for_pid):
(GDBCrashLogGenerator._get_coredump_path_with_coredumpctl_method):
(GDBCrashLogGenerator._get_coredump_path):
(GDBCrashLogGenerator._get_help_message):
(GDBCrashLogGenerator._get_thread_info_for_effective_pid):
(GDBCrashLogGenerator._pid_representation):
(GDBCrashLogGenerator._filter_with_cppfilt):
(GDBCrashLogGenerator._underscore_header):
(GDBCrashLogGenerator.generate_crash_log):
(GDBCrashLogGenerator._get_trace_from_systemd): Deleted.
(GDBCrashLogGenerator.generate_crash_log.match_filename): Deleted.
* Tools/Scripts/webkitpy/port/linux_get_crash_log_unittest.py:
(_make_generator):
(AreCoredumpsEnabledTest):
(AreCoredumpsEnabledTest.test_coredumpctl_always_enabled):
(AreCoredumpsEnabledTest.test_abspath_checks_rlimit):
(CorePatternToRegexTest):
(CorePatternToRegexTest.test_literal_string_passes_through):
(CorePatternToRegexTest.test_specifier_becomes_wildcard):
(CorePatternToRegexTest.test_named_pid_capture_group):
(CorePatternToRegexTest.test_pid_capture_only_when_requested):
(CorePatternToRegexTest.test_double_percent_is_literal_percent):
(CorePatternToRegexTest.test_trailing_lone_percent_is_dropped):
(CorePatternToRegexTest.test_invalid_specifier_is_dropped):
(CorePatternToRegexTest.test_regex_metacharacters_are_escaped):
(CorePatternToRegexTest.test_full_path_with_multiple_specifiers):
(ExpandCorePatternTest):
(ExpandCorePatternTest.test_no_specifiers):
(ExpandCorePatternTest.test_fixed_specifier_uid_is_expanded):
(ExpandCorePatternTest.test_variable_specifier_pid_is_detected):
(ExpandCorePatternTest.test_double_percent_preserved_as_literal):
(ExpandCorePatternTest.test_trailing_lone_percent_is_dropped):
(HumanReadableSizeTest):
(HumanReadableSizeTest._file_of_size):
(HumanReadableSizeTest.test_small_file_reports_bytes):
(HumanReadableSizeTest.test_few_kilobyte_file_reports_kb):
(HumanReadableSizeTest.test_empty_file):
(MakeTempPathTest):
(MakeTempPathTest.test_creates_a_real_empty_file):
(MakeTempPathTest.test_respects_suffix):
(MakeTempPathTest.test_respects_dir):
(MakeTempPathTest.test_paths_are_unique):
(LockFileTest):
(LockFileTest.setUp):
(LockFileTest.test_acquire_creates_and_release_removes_lockfile):
(LockFileTest.test_context_manager):
(LockFileTest.test_release_when_not_acquired_is_noop):
(LockFileTest.test_lockfile_contains_pid):
(LockFileTest.test_single_slot_serializes_two_threads):
(LockFileTest.test_single_slot_serializes_two_threads.worker):
(LockFileTest.test_multi_slot_allows_concurrent_holders):
(LockFileTest.test_get_gdb_lock_returns_distinct_lock_instances):
(GDBCrashLogGeneratorHelpersTest):
(GDBCrashLogGeneratorHelpersTest.setUp):
(GDBCrashLogGeneratorHelpersTest.test_pid_representation_known):
(GDBCrashLogGeneratorHelpersTest.test_pid_representation_none):
(GDBCrashLogGeneratorHelpersTest.test_pid_is_valid_when_numeric):
(GDBCrashLogGeneratorHelpersTest.test_pid_is_invalid_when_none):
(GDBCrashLogGeneratorHelpersTest.test_pid_is_invalid_when_non_numeric_string):
(GDBCrashLogGeneratorHelpersTest.test_pattern_with_pid_specifier):
(GDBCrashLogGeneratorHelpersTest.test_pattern_without_pid_specifier):
(GDBCrashLogGeneratorHelpersTest.test_underscore_header_basic):
(GDBCrashLogGeneratorHelpersTest.test_underscore_header_first_omits_leading_newlines):
(BuildWarningMsgTest):
(BuildWarningMsgTest.setUp):
(BuildWarningMsgTest.test_pid_found_returns_none):
(BuildWarningMsgTest.test_name_found_mentions_program_name):
(BuildWarningMsgTest.test_last_found_warns_high_risk):
(BuildWarningMsgTest.test_nothing_found_default_path_suggests_env_var):
(BuildWarningMsgTest.test_no_flag_set_raises):
(PickMostRecentTest):
(PickMostRecentTest.setUp):
(PickMostRecentTest._touch):
(PickMostRecentTest.test_empty_candidates_returns_none):
(PickMostRecentTest.test_no_pattern_match_returns_none):
(PickMostRecentTest.test_picks_newest_and_extracts_pid):
(PickMostRecentTest.test_warning_kwargs_passed_through):
(GenerateCrashLogTest):
(GenerateCrashLogTest.test_no_coredump_emits_help_message_and_sections):
(GenerateCrashLogTest.test_stderr_section_skipped_when_no_stderr):
(DetermineCoredumpMethodAndDirTest):
(DetermineCoredumpMethodAndDirTest._run_with_core_pattern):
(DetermineCoredumpMethodAndDirTest.test_abspath_method_simple):
(DetermineCoredumpMethodAndDirTest.test_abspath_with_fixed_specifier_in_dir):
(DetermineCoredumpMethodAndDirTest.test_abspath_with_variable_specifier_in_dir):
(DetermineCoredumpMethodAndDirTest.test_systemd_pipe_with_coredumpctl_present):
(DetermineCoredumpMethodAndDirTest.test_systemd_pipe_without_coredumpctl_program):
(DetermineCoredumpMethodAndDirTest.test_pipe_to_non_systemd_program):
(DetermineCoredumpMethodAndDirTest.test_unknown_when_pattern_is_relative):
(GetTempDirForCoredumpctlDumpsTest):
(GetTempDirForCoredumpctlDumpsTest.setUp):
(GetTempDirForCoredumpctlDumpsTest._run):
(GetTempDirForCoredumpctlDumpsTest._run.fake_open):
(GetTempDirForCoredumpctlDumpsTest.test_picks_tmp_when_only_tmp_writable):
(GetTempDirForCoredumpctlDumpsTest.test_picks_var_tmp_when_only_var_tmp_writable):
(GetTempDirForCoredumpctlDumpsTest.test_picks_tmp_when_free_space_is_similar):
(GetTempDirForCoredumpctlDumpsTest.test_picks_var_tmp_when_substantially_more_free):
(GetTempDirForCoredumpctlDumpsTest.test_skips_tmpfs_mount):
(GetTempDirForCoredumpctlDumpsTest.test_falls_back_to_tmp_when_nothing_usable):
(ThreadNamesCrashLogCapturerTest):
(ThreadNamesCrashLogCapturerTest.setUp):
(ThreadNamesCrashLogCapturerTest._read_output):
(ThreadNamesCrashLogCapturerTest.test_capturer_is_disabled_when_pattern_only_contains_literal_percent_p):
(ThreadNamesCrashLogCapturerTest.test_repeated_pid_specifiers_reuse_the_same_pid_capture):
(ThreadNamesCrashLogCapturerTest.test_writes_thread_table_when_threads_present):
(ThreadNamesCrashLogCapturerTest.test_writes_error_when_process_already_gone):
(ThreadNamesCrashLogCapturerTest.test_writes_warning_when_no_threads_found):
(ThreadNamesCrashLogCapturerTest.test_full_path_through_fake_proc_task):
(ThreadNamesCrashLogCapturerTest.test_full_path_through_fake_proc_task.fake_listdir):
(ThreadNamesCrashLogCapturerTest.test_full_path_through_fake_proc_task.fake_open):
(GetCoredumpPathTest):
(GetCoredumpPathTest.setUp):
(GetCoredumpPathTest._touch):
(GetCoredumpPathTest.test_matches_by_pid_when_available):
(GetCoredumpPathTest.test_matches_by_pid_when_pattern_contains_literal_percent_p):
(GetCoredumpPathTest.test_does_not_fall_back_to_name_when_pid_match_is_possible_and_fallback_is_disabled):
(GetCoredumpPathTest.test_falls_back_to_name_when_pid_match_is_possible_and_fallback_is_enabled):
(GetCoredumpPathTest.test_falls_back_to_name_when_pid_is_invalid_and_fallback_is_disabled):
(GetCoredumpPathTest.test_falls_back_to_name_when_core_pattern_cannot_match_pid_and_fallback_is_disabled):
(GetCoredumpPathTest.test_pid_match_on_second_attempt_wins_over_existing_name_match):
(GetCoredumpPathTest.test_pid_match_on_second_attempt_wins_over_existing_name_match.create_pid_match):
(GetCoredumpPathTest.test_pattern_with_literal_percent_p_has_no_pid_specifier):
(GetCoredumpPathTest.test_pid_lookup_ignores_filename_with_extra_suffix):
(GetCoredumpPathTest.test_returns_none_without_unreliable_fallback):
(GetCoredumpPathTest.test_filters_by_newer_than):
(GetCoredumpPathWithCoredumpctlTest):
(GetCoredumpPathWithCoredumpctlTest.setUp):
(GetCoredumpPathWithCoredumpctlTest._entries_json):
(GetCoredumpPathWithCoredumpctlTest._entry):
(GetCoredumpPathWithCoredumpctlTest._dump_core_side_effect):
(GetCoredumpPathWithCoredumpctlTest.test_matches_by_pid_when_pid_is_valid_and_in_host_namespace):
(GetCoredumpPathWithCoredumpctlTest.test_does_not_fall_back_to_name_when_pid_match_is_possible_and_fallback_is_disabled):
(GetCoredumpPathWithCoredumpctlTest.test_falls_back_to_name_when_pid_match_is_possible_but_fallback_is_enabled):
(GetCoredumpPathWithCoredumpctlTest.test_falls_back_to_name_without_env_var_when_running_in_pid_namespace):
(GetCoredumpPathWithCoredumpctlTest.test_falls_back_to_name_without_env_var_when_pid_is_invalid):
(GetCoredumpPathWithCoredumpctlTest.test_falls_back_to_latest_only_when_unreliable_fallback_is_enabled):
(GDBCrashLogGeneratorTest): Deleted.
(GDBCrashLogGeneratorTest.test_generate_crash_log): Deleted.
* Tools/glib/dependencies/apt:
* Tools/glib/dependencies/dnf:
* Tools/glib/dependencies/pacman:
Canonical link: https://commits.webkit.org/313530@main
Canonical link: https://commits.webkit.org/305877.830@webkitglib/2.52
Commit: b7a0c4b5817ea67fabaa795648f557b73594cfd0
https://github.com/WebKit/WebKit/commit/b7a0c4b5817ea67fabaa795648f557b73594cfd0
Author: Carlos Alberto Lopez Perez <[email protected]>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M Tools/Scripts/webkitpy/port/linux_get_crash_log.py
M Tools/Scripts/webkitpy/port/linux_get_crash_log_unittest.py
Log Message:
-----------
Cherry-pick 313631@main (a1c451bcd17c).
https://bugs.webkit.org/show_bug.cgi?id=315195
[Tools] linux_get_crash_log: add a simplified backtrace report.
https://bugs.webkit.org/show_bug.cgi?id=315195
Reviewed by Fujii Hironori.
The new gdb full backtrace added in 313530@main is too verbose
and a bit hard to read. However, this extra info can be useful.
So to support a quick overview, this patch adds a simplified
backtrace report at the top just for the thread that crashed.
This also pass now -ascending to GDB, so the thread that crashes
appears first and is not needed to scroll to the bottom to see it.
* Tools/Scripts/webkitpy/port/linux_get_crash_log.py:
(GDBCrashLogGenerator._get_gdb_output):
(GDBCrashLogGenerator._generate_simplified_backtrace):
(GDBCrashLogGenerator.generate_crash_log):
* Tools/Scripts/webkitpy/port/linux_get_crash_log_unittest.py:
(GetCoredumpPathWithCoredumpctlTest.test_falls_back_to_latest_only_when_unreliable_fallback_is_enabled):
(GenerateSimplifiedBacktraceTest):
(setUp):
(_assert_main_thread_crash_output):
(test_main_thread_crash_ascending_order):
(test_main_thread_crash_descending_order):
(test_worker_thread_crash_is_marked_as_not_main):
(test_thread_name_with_spaces_is_preserved):
(test_thread_10_is_not_treated_as_thread_1):
(test_no_thread_info_data):
(test_thread_info_data_without_matching_tid):
(test_thread_1_line_without_lwp_falls_back_to_bare_header):
(test_returns_none_when_no_relevant_lines_present):
(test_preamble_frame_before_thread_1_block_is_ignored):
Canonical link: https://commits.webkit.org/313631@main
Canonical link: https://commits.webkit.org/305877.831@webkitglib/2.52
Commit: 575c1d716081ebdc3d36735ec46cfdcb7af0ffa6
https://github.com/WebKit/WebKit/commit/575c1d716081ebdc3d36735ec46cfdcb7af0ffa6
Author: Carlos Alberto Lopez Perez <[email protected]>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M Tools/Scripts/webkitpy/port/linux_get_crash_log.py
Log Message:
-----------
Cherry-pick 314103@main (4e83330bcf3a).
https://bugs.webkit.org/show_bug.cgi?id=315195
[Tools] linux_get_crash_log: cosmetic improvement for the column header at
thread naming info.
https://bugs.webkit.org/show_bug.cgi?id=315195
Unreviewed follow-up.
Name the column "LWP/TID" instead of only "TID" to make obvious that TID
(Thread ID) is the same than what GDB calls LWP (Light Weight Process).
* Tools/Scripts/webkitpy/port/linux_get_crash_log.py:
(ThreadNamesCrashLogCapturer.handle_coredump):
Canonical link: https://commits.webkit.org/314103@main
Canonical link: https://commits.webkit.org/305877.832@webkitglib/2.52
Commit: 8d3dd40138947cebabf90c3544d68496d72bc70e
https://github.com/WebKit/WebKit/commit/8d3dd40138947cebabf90c3544d68496d72bc70e
Author: Carlos Alberto Lopez Perez <[email protected]>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M Tools/Scripts/webkitpy/port/linux_get_crash_log.py
M Tools/Scripts/webkitpy/port/linux_get_crash_log_unittest.py
Log Message:
-----------
Cherry-pick 314414@main (471b695cde8e).
https://bugs.webkit.org/show_bug.cgi?id=315195
[Tools] linux_get_crash_log: avoid python crashes when the coredumps are
auto-deleted with multiple concurrent workers.
https://bugs.webkit.org/show_bug.cgi?id=315195
Unreviewed follow-up after 313530@main
With multiple parallel workers and the auto-delete feature enabled (which
is enabled on the bots),
it can happen that two workers select the same coredump (one matching by
pid and another matching
by program name because it couldn't match by pid). Then it can happen that
one worker deletes the
coredump meanwhile the other is trying to process it. This causes a
FileNotFoundError fatal python
crash that interrupts the whole test suite.
Avoid this by guarding against these race conditions. Also do not delete
the coredumps when
matching by pid was not possible. This may allow the real owner of that
coredump to find it later.
And in the case of matching by pid, when autodeletion is enabled, rename
the file as soon as
possible so no other worker matching by name can pick that one.
Those will be cleaned in the next run at clean_old_coredumps() /
clean_old_thread_info_files().
On top of that improve a bit the info displayed on the debug logs when
capturing the thread names,
which may be useful for checking later issues with the crash log generator
not capturing specific
crashes.
This has been observed on the EWS bots:
https://ews-build.webkit.org/#/builders/1/builds/137321
https://ews-build.webkit.org/#/builders/34/builds/128982
* Tools/Scripts/webkitpy/port/linux_get_crash_log.py:
(CrashLogUtils):
(CrashLogUtils.safe_getmtime):
(CrashLogUtils.most_recent_existing):
(ThreadNamesCrashLogCapturer.handle_coredump):
(GDBCrashLogStartupHandler._maybe_remove_file_if_old):
(GDBCrashLogStartupHandler.clean_old_coredumps):
(GDBCrashLogGenerator._pick_most_recent):
(GDBCrashLogGenerator._get_coredump_path_with_core_pattern_method):
(GDBCrashLogGenerator._get_thread_info_for_effective_pid):
(GDBCrashLogGenerator.generate_crash_log):
* Tools/Scripts/webkitpy/port/linux_get_crash_log_unittest.py:
(SafeGetmtimeMostRecentExistingTest):
(SafeGetmtimeMostRecentExistingTest.setUp):
(SafeGetmtimeMostRecentExistingTest.test_returns_mtime_for_existing_file):
(SafeGetmtimeMostRecentExistingTest.test_returns_none_for_missing_file):
(SafeGetmtimeMostRecentExistingTest._touch):
(SafeGetmtimeMostRecentExistingTest.test_empty_returns_none):
(SafeGetmtimeMostRecentExistingTest.test_picks_newest):
(SafeGetmtimeMostRecentExistingTest.test_skips_vanished_path):
(SafeGetmtimeMostRecentExistingTest.test_newest_vanished_falls_back_to_next):
(SafeGetmtimeMostRecentExistingTest.test_all_vanished_returns_none):
(GenerateCrashLogTest.test_no_coredump_emits_help_message_and_sections):
(GenerateCrashLogTest.test_stderr_section_skipped_when_no_stderr):
(CorePatternScanRaceTest):
(CorePatternScanRaceTest.setUp):
(CorePatternScanRaceTest._touch):
(CorePatternScanRaceTest.test_candidate_deleted_between_listdir_and_stat_does_not_crash):
(CorePatternScanRaceTest.test_candidate_deleted_between_listdir_and_stat_does_not_crash.flaky_getmtime):
(CoredumpDeletionGatingTest):
(CoredumpDeletionGatingTest.setUp):
(CoredumpDeletionGatingTest._setup):
(CoredumpDeletionGatingTest.test_pid_match_deletes_coredump_and_thread_info):
(CoredumpDeletionGatingTest.test_name_match_keeps_coredump_and_thread_info):
(CoredumpDeletionGatingTest.test_no_autodelete_keeps_coredump_even_on_pid_match):
(CoredumpDeletionGatingTest.test_pid_match_claims_coredump_by_rename_before_gdb):
(CoredumpDeletionGatingTest.test_pid_match_claims_coredump_by_rename_before_gdb.fake_gdb):
(CoredumpDeletionGatingTest.test_name_match_is_not_claimed_by_rename):
(CoredumpDeletionGatingTest.test_name_match_is_not_claimed_by_rename.fake_gdb):
(CoredumpDeletionGatingTest.test_coredump_gone_at_stat_time_skips_rename_and_gdb):
(CoredumpDeletionGatingTest.test_coredump_gone_at_stat_time_skips_rename_and_gdb.fake_gdb):
(CleanOldCoredumpsTest):
(CleanOldCoredumpsTest.setUp):
(CleanOldCoredumpsTest._touch):
(CleanOldCoredumpsTest.test_reaps_old_pattern_and_claimed_keeps_fresh_and_unrelated):
(GetCoredumpPathTest.test_selection_ignores_claimed_prefixed_files):
Canonical link: https://commits.webkit.org/314414@main
Canonical link: https://commits.webkit.org/305877.833@webkitglib/2.52
Compare: https://github.com/WebKit/WebKit/compare/a7a45186ece2...8d3dd4013894
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications