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.
This commit is contained in:
Mahmoud Al-Qudsi 2021-03-05 22:40:40 -06:00
parent 11951a245f
commit ddd0e28b4f

View File

@ -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