@@ -30,11 +30,28 @@ const TEST_ZS = collect(range(-4.0, 6.0, length = 100))
3030const TEST_PS = collect (range (0.05 , 0.95 , length = 20 ))
3131
3232# Include benchmark definitions.
33- include (" src/baseline.jl" )
34- include (" src/convolved.jl" )
35- include (" src/difference.jl" )
36- include (" src/product.jl" )
37- include (" src/ratio.jl" )
38- include (" src/timeseries.jl" )
39- include (" src/quantile.jl" )
40- include (" src/ad_gradients.jl" )
33+ #
34+ # `benchmark-history` replays THIS suite against older commits, where a
35+ # member or verb the suite exercises may not exist yet. Loading such a
36+ # file raises at include time and would abort the whole run, losing every
37+ # other group's numbers along with it. Skip the group instead and carry
38+ # on, so the history keeps reporting for everything that does exist at
39+ # that commit -- the same trade-off the AD group already makes when its
40+ # scenarios cannot be constructed.
41+ function _include_group (path)
42+ try
43+ include (path)
44+ catch err
45+ @warn " Skipping benchmark group: it needs an API this commit " *
46+ " does not have" path err
47+ end
48+ return nothing
49+ end
50+
51+ for group in (
52+ " src/baseline.jl" , " src/convolved.jl" , " src/difference.jl" ,
53+ " src/product.jl" , " src/ratio.jl" , " src/timeseries.jl" ,
54+ " src/quantile.jl" , " src/ad_gradients.jl" ,
55+ )
56+ _include_group (group)
57+ end
0 commit comments