From ddd0e28b4ff2982238ad3a29cb01ce657b8a5762 Mon Sep 17 00:00:00 2001 From: Mahmoud Al-Qudsi Date: Fri, 5 Mar 2021 22:40:40 -0600 Subject: [PATCH] Speed up check-all-fish-files when executed locally Only check fish files that have been modified since the last time they were checked. (This continues with the assumption that we are testing for broken /usr/share fish scripts and not breakage of the fish parser, which is covered by all the other tests.) This saves 8 seconds on an NVMe disk under WSL. Won't affect integrity of CI runs, which start with a blank slate each time. --- tests/checks/check-all-fish-files.fish | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/tests/checks/check-all-fish-files.fish b/tests/checks/check-all-fish-files.fish index 5d4beb423..f9cda13a4 100644 --- a/tests/checks/check-all-fish-files.fish +++ b/tests/checks/check-all-fish-files.fish @@ -2,7 +2,13 @@ # Test ALL THE FISH FILES # in share/, that is - the tests are exempt because they contain syntax errors, on purpose -for file in $__fish_data_dir/**.fish +set timestamp_file ./last_check_all_files +set -l find_args +if test -f $timestamp_file + set find_args -mnewer $timestamp_file +end +for file in (find $__fish_data_dir/ -name "*.fish" $find_args) $fish -n $file end +touch $timestamp_file # No output is good output