MyNixOS website logo
Description

Parse development platform web hook messages.

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.

See the .cabal file for more info and link to project website the version control.

The official download location is Hackage:

http://hackage.haskell.org/package/vcs-web-hook-parse

This library is free software, and is committed to software freedom. It is released to the public domain using the CC0 Public Domain Dedication. For the boring "legal" details see the file 'COPYING'.

See the file 'INSTALL' for hints on installation. The file 'ChangeLog' explains how to see the history log of the changes done in the code. 'NEWS' provides a friendly overview of the changes for each release.

Metadata

Version

0.2.0.0

License

publicDomain

Platforms (75)

    Darwin
    FreeBSD
    Genode
    GHCJS
    Linux
    MMIXware
    NetBSD
    none
    OpenBSD
    Redox
    Solaris
    WASI
    Windows
Show all
  • aarch64-darwin
  • aarch64-genode
  • aarch64-linux
  • aarch64-netbsd
  • aarch64-none
  • aarch64_be-none
  • arm-none
  • armv5tel-linux
  • armv6l-linux
  • armv6l-netbsd
  • armv6l-none
  • armv7a-darwin
  • armv7a-linux
  • armv7a-netbsd
  • armv7l-linux
  • armv7l-netbsd
  • avr-none
  • i686-cygwin
  • i686-darwin
  • i686-freebsd
  • i686-genode
  • i686-linux
  • i686-netbsd
  • i686-none
  • i686-openbsd
  • i686-windows
  • javascript-ghcjs
  • loongarch64-linux
  • m68k-linux
  • m68k-netbsd
  • m68k-none
  • microblaze-linux
  • microblaze-none
  • microblazeel-linux
  • microblazeel-none
  • mips-linux
  • mips-none
  • mips64-linux
  • mips64-none
  • mips64el-linux
  • mipsel-linux
  • mipsel-netbsd
  • mmix-mmixware
  • msp430-none
  • or1k-none
  • powerpc-netbsd
  • powerpc-none
  • powerpc64-linux
  • powerpc64le-linux
  • powerpcle-none
  • riscv32-linux
  • riscv32-netbsd
  • riscv32-none
  • riscv64-linux
  • riscv64-netbsd
  • riscv64-none
  • rx-none
  • s390-linux
  • s390-none
  • s390x-linux
  • s390x-none
  • vc4-none
  • wasm32-wasi
  • wasm64-wasi
  • x86_64-cygwin
  • x86_64-darwin
  • x86_64-freebsd
  • x86_64-genode
  • x86_64-linux
  • x86_64-netbsd
  • x86_64-none
  • x86_64-openbsd
  • x86_64-redox
  • x86_64-solaris
  • x86_64-windows