watches an RSS/Atom feed and writes it to an IRC channel

Latest on Hackage:1.2

This package is not currently in any snapshots. If you're interested in using it, we recommend adding it to Stackage Nightly. Doing so will make builds more reliable, and allow to host generated Haddocks.

BSD-3-Clause licensed by Don Stewart, Simon Michael
Maintained by Simon Michael

rss2irc is an IRC bot that polls an RSS or Atom feed and announces updates to an IRC channel, with options for customizing output and behavior. It aims to be an easy-to-use, reliable, well-behaved bot.



$ rss2irc

Known limitations:

  • If the feed goes down for a while and then comes back up, the bot may re-announce all items.

  • Memory is leaked on each poll, causing rss2irc bots to consume more memory over time. This will be more noticeable when feeds have large content and are polled frequently. Restarting rss2irc bots daily is recommended.


1.2 (2018/06/29)

* build with latest stackage LTS, feed (#4)

1.1 (2016/11/1)

* update for GHC 8, stackage lts-7
* allow latest http-client, http-conduit, resourcet, network, transformers, text; drop cabal-file-th
* update to irc 0.6 (warning: probably not unicode-safe)
* use STM's TChan, fixing warnings and possibly hangs
* use safer MSampleVar, possibly fixing hangs

1.0.6 (2014/4/13)

* minimal changes to build with feed 0.3.9.* and other libs in current Debian unstable (sid)

1.0.5 (2014/2/27)

* avoid feed which has changed its API

1.0.4 (2013/9/5)

* fix compilation with GHC 7.4 (Fabien Andre)

1.0.3 (2013/2/22)

* fix http-conduit usage so the feed poller doesn't die within hours

1.0.2 (2013/2/18)

* `--use-actions` works again

1.0.1 (2013/2/15)

* fix release notes formatting on hackage

1.0 (2013/2/15)


* more robust item detection and duplicate announcement protection, with simpler options
* easier irc address syntax, drop -p/--port option
* can poll https feeds
* can poll from stdin (-)
* can poll a file containing multiple copies of a feed (eg for testing)
* `--cache-control` option sets a HTTP Cache-Control header
* `--use-actions` announces with CTCP ACTIONs (like the /me command)


* updated for GHC 7.6 & current libs
* initialises http properly on microsoft windows
* builds threaded and optimised by default
* thread and error handling is more robust, eg don't ignore exceptions in the irc writer thread
* can poll urls with semicolon parameter separator (eg darcsweb's)
* can announce item urls containing percent
* no longer adds stray "upload:" to IRC messages
* renamed --dupe-descriptions to `--allow-duplicates`
* dropped --debug flag
* new item detection and announcing is more robust
* announcements on console are clearer
* a simulated irc connection is not logged unless --debug-irc is used
comments powered byDisqus