Ich habe folgende Build-SystemWarum ist Shakes Fortschrittsschätzung für dieses einfache Build-System sehr falsch?
module Main where
import Development.Shake
main :: IO()
main = shakeArgs shakeOptions $ do
"a" %> \out -> do
need ["a.in"]
cmd_ "sleep" "10"
cmd "touch" [out]
, die ich mit stack build
bauen und laufen mit stack exec myShake -- --progress a
.
Wenn ich einen sauberen Build und als touch a.in
und wieder ausführen, zeigt mir Shake sehr falsche Fortschrittsvorhersagen. Manchmal sagt es 1000 Minuten und mehr voraus.
(Da ich alle 5 Sekunden eine Fortschrittsvorhersage in der Titelleiste meines Terminals erhalte, wenn ich das richtig verstanden habe, rede ich hier nur über die erste Fortschrittsvorhersage, da dies die einzige ist, die ich mit diesem Buildsystem bekomme Beispiel.)
Ich benutze lts-9.6 mit Stapel und schütteln Version 0.16 (via Git + einen Eintrag in Paketen in stack.yaml).
Ich habe ein Ticket zur Untersuchung erhoben: https://github.com/ndmitchell/shake/issues/537 –