commercialhaskell / commercialhaskell/stack

--file-watch and -jN stops neither at first error nor at last buildable

Open
#5,316 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Haskell
Stars
4.1k
Forks
850
Avg merge
10h 37m
Merged PRs (30d)
4

Description

In a larger project (100 dependencies) I am observing this while
`stack install --file-watch -j8`

* when there is some error in some package, some red lines appear but scroll by, since other packages are still being built
* when the build stops (a prompt appears), I "Press enter to force a rebuild.", and then some more packages are built (among them, the broken package, showing the error again, but some others are built successfully)

So my method is to "press enter" repeatedly (sometimes it takes 10 iterations) until all buildable packages are built, and the error becomes clearly visible (unburied).

It would be nicer if either stack
* stops at the first error, or
* builds all buildable packages

Just a wild guess - could it be that there is some breadth-first traversal (of the dependency graph of packages) and it stops when the layer with the first error is done completely?

[EDIT] in fact I don't put any `-j` option but stack builds in parallel by default, and picks the number of cores of my machine (?) which may appear as 16.

The same thing happens when I do `stack install`: it breaks somewhere, and keeps building, but when I re-do the command, it does build some more.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.