cabal-fmt icon indicating copy to clipboard operation
cabal-fmt copied to clipboard

Confusing Error: getDirectoryContents:openDirStream: does not exist

Open bitc opened this issue 4 years ago • 2 comments

If the cabal file has a line such as:

  hs-source-dirs:   src

but the src directory does not exist, then cabal-fmt gives the error message:

cabal-fmt: ./src: getDirectoryContents:openDirStream: does not exist (No such file or directory)

This error message is confusing for the user, because it is not clear what the reason for it is. A better error message would be to tell the user the relevant line of code in the .cabal file, with a clearer explanation that the directory does not exist (or is not readable). Even better would be to just treat non-existent directory as empty, and proceed to format the file.

Thank you

bitc avatar Oct 21 '21 21:10 bitc

I cannot reproduce this. cabal-fmt doesn't look into hs-source-dirs, i'm confused.

phadej avatar Oct 22 '21 08:10 phadej

Oops, I got confused a little bit. The error happens as a result of a cabal-fmt expand annotation, such as:

-- cabal-fmt: expand src

I still believe a better error message should be produced (or possibly just a warning, while still formatting the file)

bitc avatar Oct 22 '21 12:10 bitc