Skip to content
Snippets Groups Projects
Commit 5b1eca08 authored by Duncan Coutts's avatar Duncan Coutts
Browse files

elaborate impl of findProjectRoot

Take an extra arg to control where to start searching, not just process
current directory. This is mainly to make it easier to test without
having to mutate the cwd but is potentially useful generally for
cwd-independence.

Return more detailed info: not just the directory but return if it's an
implicit or an explict project root with a cabal.project file. In the
latter case also return the cabal.project file since its name can be
overridden. Then also adjust defaultDistDirLayout to take this more
detailed ProjectRoot type, thus avoiding having to duplicate the logic
about the location of the cabal.project file.

Change the behaviour so that if an explicit cabal.project file name is
given and it is not found then fail, rather than falling back to an
implicit project root style. This would seem to make most sense: if the
user specifies an explict cabal.project file then it'd be odd if we
silently ignore that if the user misspells it or something. The implicit
root default is really for the really simple case, not when users are
explicitly specifying stuff.

Also add a couple simple tests for findProjectRoot.
parent 2b26e75b
No related branches found
No related tags found
No related merge requests found
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment