<p dir="ltr">My preferred solution is to put all the implementation inĀ Mylib.Internal.Foo modules that export everything, with the convention that it's not subject to versioning policies (so testing is really the only legitimate use), and reexport the public stuff in Mylib.Foo.</p>
<p dir="ltr">Li-yao</p>
<br><div class="gmail_quote"><div dir="ltr">On 09:08, Mon, Jan 7, 2019 Georgi Lyubenov <<a href="mailto:godzbanebane@gmail.com">godzbanebane@gmail.com</a> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Greetings,<br><br>I want to have internal modules which I do not expose at all. I also want to be able to test them.<br><br>This however also hides these modules from my tests.<br><br>The best way I have found to work around this is to include my entire source directory in the test suite (source-dirs). This however means that I can't reuse builds that didn't include the tests.<br><br>Is there some obvious and "best" solution that I am missing here? For reference I use Stack.<br><br>Thanks in advance!<br><br>=======<br>Georgi</div>
_______________________________________________<br>
Haskell-Cafe mailing list<br>
To (un)subscribe, modify options or view archives go to:<br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe" rel="noreferrer noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe</a><br>
Only members subscribed via the mailman list are allowed to post.</blockquote></div>