A development platform is a server system which hosts (mostly software)
projects, version controlled repositories and often provides feature like
issue tracking, merge requests, project search, project wikis and more.
Some development platforms can report various events using web hooks, i.e.
send HTTP requests containing structured data (e.g. JSON or XML) to a
specified URL. Then you can run a server which receives these messages and
reports them to IRC or a mailing list (or anything else you like).
This package collects development platform specific types, and functions
which parse the HTTP message bodies into values of these types. Then an
actual web hook handler can be written using them.
Why have a single package which handles the various platforms? First, because
parsing some JSON or XML structures is a simple task requiring very little
code (thanks to awesome Haskell libraries), sometimes hardly worth having its
own dedicated package. Second, having them all here may allow sharing types
and perhaps even developing some common web hook formats in the future.
This package handles only free-as-in-freedom development platforms. In
particular, it means g1thub won't be supported (until it becomes free too),
while support for all free platforms (DarcsDen, Gogs, Kallithea, GitLab's
"community edition", etc.) is very welcome.