Small cleanup to 'putTree'.
In 'treeToStanza', treat the input as a root node.
Treat strings retrieved from libXML as UTF8.
Better error handling for unexpected EOF in 'hGetChar'.
When authenticating, do not include resources in the JID.
Use lazy instead of strict bytestrings.
Migrate 'Handle' to a more modern TLS binding.
Add error handling hooks to 'Handle' computation signatures, to simplify the migration to a better GNU TLS binding.
Expose enough of the 'XMPP' monad internals for clients to interleave it with other IO.
Export 'Error' in the public API.
Make 'JID' an instance of 'IsString'.
Define the 'XMPP' monad, so clients don't have to pass a stream around.
Use more specific license version in Cabal file.
Fix a few stylistic issues found by HLint.
Moved client-related modules into a subpackage.
Merged public API into a single exposed module, 'Network.Protocol.XMPP'.
Update authentication for public release of gsasl 0.3.
Fix bytestring dependency maximum version.
Quick-n-dirty conversion to version 0.3 of the GNU SASL bindings.