Hi guys,
I'm fully getting into haskell thanks to the yesod framework. I've been pulling my hair with a bug as silly as they come, and for so long that I cannot tell it without feeling embarrassed. (I'm working on the haskellers.com website code, just to give you some extra context)
I was getting a 500 in one of my controllers, and I first though there was some non existing id being referenced from a model, I set up the haskell interactive debugger and launched my yesod project from ghci, single stepped and everything looked just fine.
The actual error displayed was:"Internal Server Error" "A LineSingle must have nested content"
The issue was finally that a cassius file had some trailing garbage (that went unnoticed by me, probably added accidentally when passing out over my keyboard).
My main issue with this is that I think of cassius files as just css, I wouldn't expect to get an error in my page just for a broken css file. I would expect seeing broken styles, or even better, the program not compiling at all. I searched for the LineSingle error message and seems to be related to hamlet, I interpreted that as a pointer but was in the wrong direction.
I know this won't happen to me again, but just wanted to throw it out here to see if you consider it a gotcha.
cheers :)
----nubis :)