makefile: move ghc-options from the cabal file into the makefile.
We shouldn't be hard-coding user preferences into the cabal file that
everyone uses. Instead, GHC should support a variable like CFLAGS that
lets users and developers specify what warnings and optimizations
they would like to use. Instead, we have to fake it: I've standardized
the Gentoo HCFLAGS variable within the makefile, so that a few warnings
will be appended to the (exported) environment variable but otherwise
no flags will be forced by the cabal file.
This should work for me when I'm developing, because the warnings will
be appended to the HCFLAGS="-O2" that I have set in my environment. It
will work on Gentoo, because HCFLAGS are already passed to the cabal
build system in Gentoo. It will work(ish) everywhere else, because
nothing will get passed to the cabal build system, and that's okay.
Cabal tells me that "cabal hscolour" is deprecated in favor of "cabal
haddock --hyperlink-source", which we already do. Things look okay after
simply deleting the hscolour pass, so whatever.
Rename shelltest files because Cabal doesn't know how globs work.
While trying to add my shelltest files to the release tarball, I am
informed that the glob syntax within my cabal file is not the same
fifty-year-old glob syntax that everyone else uses. This commit
renames the test files to not contain more than one period, in order
to make Cabal's globbing match them. You are all assholes. A heartfelt
fuck-you for making me do this.
Sort output to fix random breakage in the test suite.
The results that we get back from DNS are returned in an arbitrary
order. Technically that's fine, because all we want to see is the
set-difference between the actual/expected results. However, it breaks
our test suite which needs to know what certain examples will
output. This commit sorts the results, so that the output is a little
bit more deterministic (subject to network issues and changes).
doc: use POSIX shell syntax in the man page examples.
The shell examples given in the man page use the "haeredes <<< foo"
syntax to feed the string "foo" into haeredes on stdin. That's a
Bash-only shortcut for "echo foo | haeredes", however, and the latter
works in all POSIX-compatible shells. So, this commit updates the
documentation to use the more reliable syntax.
src/Main.hs: fix handling of "domain not found" errors.
The "not delegated" example in the man page is now failing, because
we're getting back a NameError (failure result) instead of an empty
success result. I'm not sure when this changed -- and my fix is
probably backwards-incompatible -- but I've updated haeredes to look
for the NameError rather than an empty result. The documented example
works again, but I've only tested with v3.0.2 of the "dns" library.
haeredes.cabal: add Paths_haeredes to other-modules to silence a warning.
If Cabal is happy, I'm happy. This appears to not do the wrong thing.
In other words, nothing is changed by including Paths_haeredes in the
list of other-modules.
test/Doctests.hs: support new Cabal autogen path in doctests.
Since the last haeredes release, Cabal has moved its auto-generated
modules from dist/build/autogen to dist/build/$component/autogen,
breaking our doctests which need to load the Paths_haeredes module.
These paths are passed to the doctest runner as a list, so it's easy
to support both: we now just pass both paths.
Michael Orlitzky [Sun, 22 Jun 2014 23:10:33 +0000 (19:10 -0400)]
Version bump to v0.4.1.
Remove the tasty test dependencies.
Remove the tasty test suite (it only tested the normalization functions).
Require dns >= 1.4.
Use the normalize* functions moved upstream to Network.DNS.Utils in v1.4.0.