Thu, 23 Mar 2023 09:54:45 +0000 Matthew Wild squishy: Add missing servercontact plugin default tip changeset | files
Wed, 15 Mar 2023 17:38:56 +0000 Matthew Wild rtbl_guard: New plugin to subscribe to RTBLs and act on them in MUCs changeset | files
Wed, 15 Mar 2023 12:19:39 +0000 Matthew Wild riddim: exit with non-zero code (1) on disconnect changeset | files
Wed, 15 Mar 2023 12:11:29 +0000 Matthew Wild rtbl_admin: Allow reason and text annotations when adding/updated an entry changeset | files
Wed, 15 Mar 2023 12:11:01 +0000 Matthew Wild riddim: Exit when disconnected from server changeset | files
Wed, 15 Mar 2023 12:10:00 +0000 Matthew Wild Dockerfile: update to bullseye changeset | files
Mon, 06 Dec 2021 11:27:36 +0000 Matthew Wild rtbl_admin: Add access control around commands changeset | files
Mon, 06 Dec 2021 11:27:16 +0000 Matthew Wild rtbl_admin: Notify subscribers on item removal (requires verse 98dc1750584d) changeset | files
Mon, 06 Dec 2021 11:26:37 +0000 Matthew Wild rtbl_admin: Fix reason string (abuse is defined to be the most generic) changeset | files
Sun, 05 Dec 2021 18:35:39 +0000 Matthew Wild Add rtbl_admin plugin changeset | files
Sun, 05 Dec 2021 18:35:18 +0000 Matthew Wild Import util.hashes from Prosody changeset | files
Tue, 24 Aug 2021 11:31:38 +0100 Matthew Wild plugins.eliza: Strip all trailing whitespace from responses changeset | files
Tue, 24 Aug 2021 10:54:46 +0100 Matthew Wild plugins.eliza: Don't append \n to output changeset | files
Thu, 22 Oct 2020 15:37:43 +0100 Matthew Wild config.docker.lua: Require RIDDIM_DEBUG=1 to enable debug mode changeset | files
Fri, 02 Oct 2020 17:02:37 +0200 Seve Ferrer plugins/groupchat.lua: Add support for muc passwords changeset | files
Tue, 22 Sep 2020 14:59:25 +0200 Seve Ferrer plugins/commands.lua: The default command_prefix value is set on config.docker.lua. changeset | files
Tue, 22 Sep 2020 14:51:42 +0200 Seve Ferrer config.docker.lua: Expose more settings as environment variables changeset | files
Fri, 07 Aug 2020 13:16:33 +0100 Matthew Wild Add eliza plugin changeset | files
Fri, 07 Aug 2020 12:26:15 +0100 Matthew Wild config.docker.lua: Add to repo, used by default for Docker images changeset | files
Fri, 07 Aug 2020 12:24:46 +0100 Matthew Wild Dockerfile: include util.interpolation in build changeset | files
Thu, 11 Jun 2020 15:30:08 +0100 Matthew Wild Dockerfile: Update (now works) changeset | files
Thu, 11 Jun 2020 15:28:18 +0100 Matthew Wild xeps: Update URLs (but still doesn't work) changeset | files
Thu, 11 Jun 2020 15:27:55 +0100 Matthew Wild init.lua: Initialize net.http with an SSL configuration changeset | files
Mon, 17 Sep 2018 14:46:47 +0100 Matthew Wild Dockerfile: Switch to alpine for final image changeset | files
Mon, 17 Sep 2018 14:26:46 +0100 Matthew Wild Add Dockerfile changeset | files
Mon, 17 Sep 2018 14:26:35 +0100 Matthew Wild init.lua: Allow override of default config path changeset | files
Mon, 17 Sep 2018 14:14:58 +0100 Matthew Wild init.lua: Update for Lua 5.2 (only) changeset | files
Thu, 31 May 2018 01:03:21 +0200 Kim Alvefur plugins.issues: Avoid triggering on #number at the end of a word (eg URLs) changeset | files
Thu, 31 May 2018 00:59:20 +0200 Kim Alvefur riddim.plugins.pubsub2room: Add support for extracting data from JSON Containers (XEP-0335) changeset | files
Thu, 31 May 2018 00:59:08 +0200 Kim Alvefur riddim.plugins.pubsub2room: Trim trailing whitespace changeset | files
Sun, 27 May 2018 17:34:33 +0200 Kim Alvefur riddim.plugins.ping: Handle JID being unknown after "resolving" changeset | files
Sun, 27 May 2018 17:30:37 +0200 Kim Alvefur riddim.plugins.groupchat: Change numeric stanza attribute to string to comply with util.stanza strict mode changeset | files
Sun, 20 May 2018 03:14:32 +0200 Kim Alvefur riddim.plugins.pubsub2room: Don't create an invalid stanza with an empty name changeset | files
Sun, 20 May 2018 03:13:23 +0200 Kim Alvefur riddim.plugins.pubsub2room: Return early in case of unconfigured pubsub event changeset | files
Sun, 20 May 2018 02:16:48 +0200 Kim Alvefur riddim.plugins.servercontact: Query for XEP-0157: Contact Addresses for XMPP Services changeset | files
Sun, 20 May 2018 02:06:16 +0200 Kim Alvefur plugins.pubsub2room: Import verse (no longer global) changeset | files
Sun, 20 May 2018 01:57:58 +0200 Kim Alvefur riddim.plugins.pubsub2room: Return early from extractor if no stanza given changeset | files
Sun, 20 May 2018 01:49:58 +0200 Kim Alvefur riddim.plugins.factoids: Import and use util.stanza instead of relying on now non-existant verse global changeset | files
Fri, 30 Jun 2017 16:59:21 +0200 Kim Alvefur plugins.groupchat: Import util.jid (thanks johan) changeset | files
Sat, 23 Jan 2016 15:16:36 +0100 Kim Alvefur plugins.ietf: Include a link in reply if an RFC number was given but no match found changeset | files
Tue, 12 Jan 2016 22:28:31 +0100 Kim Alvefur Merge with MattJ changeset | files
Tue, 18 Aug 2015 17:05:30 +0200 Kim Alvefur plugins.github: Add comment with example config changeset | files
Tue, 18 Aug 2015 15:22:52 +0100 Matthew Wild Merge changeset | files
Tue, 18 Aug 2015 15:53:48 +0200 Kim Alvefur plugins.issues: Add plugin for issue-tracker changeset | files
Fri, 07 Aug 2015 22:01:41 +0200 Kim Alvefur plugins.github: Fix argument order changeset | files
Fri, 07 Aug 2015 21:47:50 +0200 Kim Alvefur plugins.github: Fix syntax error and wrong name changeset | files
Fri, 07 Aug 2015 21:45:02 +0200 Kim Alvefur plugins.github: Support per-room configuration changeset | files
Fri, 07 Aug 2015 21:44:21 +0200 Kim Alvefur plugins.github: Don't check for #issuenumber in direct messages changeset | files
Thu, 09 Jul 2015 22:52:22 +0200 Kim Alvefur plugins.version: Don't include unknown version or platform in reply changeset | files
Thu, 09 Jul 2015 22:48:55 +0200 Kim Alvefur plugins.version: Put friendly errors in a table changeset | files
Thu, 09 Jul 2015 14:39:10 +0200 Kim Alvefur plugins.xkcd2: Attempt to load list of strips at startup changeset | files
Thu, 09 Jul 2015 14:38:47 +0200 Kim Alvefur plugins.xkcd2: Use table.maxn as there may be holes in the list changeset | files
Thu, 09 Jul 2015 14:38:17 +0200 Kim Alvefur plugins.xkcd2: Allow negative numbers in pattern changeset | files
Thu, 09 Jul 2015 14:34:36 +0200 Kim Alvefur plugins.factoids: Remove debug output changeset | files
Sat, 27 Jun 2015 23:19:32 +0200 Kim Alvefur plugins.github: Remove debug prints changeset | files
Sat, 27 Jun 2015 22:32:23 +0200 Kim Alvefur Add plugin for fetching issue info from GitHub changeset | files
Tue, 09 Jun 2015 17:12:27 +0200 Kim Alvefur squishy: Add all plugins in current hg manifest changeset | files
Tue, 09 Jun 2015 17:10:19 +0200 Kim Alvefur squishy: Less verbose syntax for listing plugins changeset | files
Wed, 13 May 2015 13:23:33 +0100 Matthew Wild Add COPYING changeset | files
Tue, 21 Oct 2014 19:27:57 +0200 Kim Alvefur plugins.{trac,urltitle,xeps,xkcd,xkcd2,youtube}: Remove net.httpclient_listener, no longer required since verse:8e9f44ecb95b changeset | files
Tue, 21 Oct 2014 17:53:04 +0200 Kim Alvefur plugins.ietf: HTTPS URLs (thanks darkrain) changeset | files
Sun, 06 Jul 2014 15:36:18 +0200 Kim Alvefur plugins.version: example.com doesn't support *version* requests, not feature requests changeset | files
Tue, 25 Mar 2014 18:23:58 +0100 Kim Alvefur plugins.xkcd2: I accidentally another XKCD plugin from scratch changeset | files
Sun, 23 Mar 2014 15:41:40 +0100 Kim Alvefur plugins.ietf: Update patterns changeset | files
Sun, 23 Mar 2014 15:41:07 +0100 Kim Alvefur plugins.ietf: Report number of matches changeset | files
Sun, 23 Mar 2014 15:35:57 +0100 Kim Alvefur plugins.xkcd: Change list of comics to have both map of number to name and name to number, allowing some optimizations changeset | files
Sun, 23 Mar 2014 15:32:21 +0100 Kim Alvefur plugins.xkcd: Remove old comment changeset | files
Sun, 23 Mar 2014 15:02:39 +0100 Kim Alvefur plugins.xkcd: Forward-declare handle_xkcd_command() changeset | files
Sun, 11 Aug 2013 19:49:39 +0200 Kim Alvefur uptime: s/version/uptime/ changeset | files
Fri, 31 May 2013 19:01:32 +0200 Kim Alvefur plugins.{ping,version,resolvejid}: Break nickname/jid resolving into a common plugin changeset | files
Sat, 25 May 2013 23:21:30 +0200 Kim Alvefur plugins.pubsub2room: Remove old debug print changeset | files
Sat, 25 May 2013 21:46:21 +0200 Kim Alvefur plugins.tell: Adjust format of delivered tells (fixes issues with some linkifiers) changeset | files
Sat, 25 May 2013 21:35:27 +0200 Kim Alvefur plugins.commands: If a message with a [command] was directed at someone, remember their nickname. changeset | files
Sat, 25 May 2013 21:35:27 +0200 Kim Alvefur plugins.groupchat: Allow prefixes on replies to be overriden changeset | files
Tue, 30 Apr 2013 18:19:00 +0200 Kim Alvefur plugins.slap: Fix the grammar, once and for all! changeset | files
Mon, 11 Feb 2013 18:30:03 +0100 Kim Alvefur plugins.pubsub2room: Use new PubSub API changeset | files
Mon, 11 Feb 2013 18:29:06 +0100 Kim Alvefur plugins.xkcd: Make really sure that strip numbers are numbers changeset | files
Mon, 11 Feb 2013 18:28:28 +0100 Kim Alvefur plugins.xkcd: If no argument is given, return the latest strip changeset | files
Mon, 04 Jun 2012 17:38:26 +0200 Kim Alvefur init.lua: Print 'info', 'warn', and 'error' loglevels by default. changeset | files
Mon, 04 Jun 2012 17:37:27 +0200 Kim Alvefur init.lua: Print outgoing stanzas and all log messages when debug logging enabled changeset | files
Tue, 07 Feb 2012 17:38:10 +0100 Kim Alvefur plugins.urltitle: Use correct method to send a message to a room. Thanks ruskie changeset | files
Tue, 31 Jan 2012 19:41:46 +0100 Kim Alvefur Import ietf, RFC and ID lookup plugin. changeset | files
Tue, 31 Jan 2012 19:29:02 +0100 Kim Alvefur Import urltitle plugin (thanks ruskie) changeset | files
Tue, 31 Jan 2012 18:10:01 +0000 Matthew Wild Import youtube plugin changeset | files
Fri, 02 Sep 2011 00:15:06 +0200 Kim Alvefur plugins.factoids: Add plugin for storing text snippets, with multiple backends changeset | files
Thu, 25 Aug 2011 02:30:26 +0200 Kim Alvefur Merge changeset | files
Wed, 24 Aug 2011 12:58:39 +0200 Kim Alvefur plugins.pubsub2room: Fix to use pubsub on stream instead of bot changeset | files
Sun, 21 Aug 2011 02:50:20 +0200 Kim Alvefur plugins.pubsub: Remove changeset | files
Sun, 21 Aug 2011 02:50:10 +0200 Kim Alvefur plugins.pubsub2room: Hook pubsub events directly on the stream. changeset | files
Wed, 20 Jul 2011 01:16:34 +0200 Kim Alvefur plugins.xeps: Fix previous commit (it was wrong side of the loopy loops) changeset | files
Wed, 20 Jul 2011 01:11:11 +0200 Kim Alvefur plugins.xeps: Check for exact matches on shortnames. changeset | files
Wed, 20 Jul 2011 01:04:31 +0200 Kim Alvefur plugins.xeps: Re-indent changeset | files
Tue, 12 Jul 2011 15:39:25 +0200 Kim Alvefur plugins.invited: Move xmlns-es to variables. changeset | files
Thu, 07 Apr 2011 02:20:48 +0200 Kim Alvefur Merge changeset | files
Thu, 07 Apr 2011 02:20:28 +0200 Kim Alvefur pubsub2room: Access to attributes in templates changeset | files
Sun, 20 Mar 2011 21:49:22 +0100 Kim Alvefur plugins.topic: Lets anyone (no ACL yet) change topic changeset | files
Sun, 17 Jul 2011 02:03:21 +0200 God of Dice plugins.xkcd: reformat code changeset | files
Sun, 17 Jul 2011 02:03:21 +0200 God of Dice plugins.xkcd: Microsoft apparently hates %T (crashes on Windows) changeset | files
Sun, 24 Jul 2011 19:16:40 +0700 mva plugins/version improvements changeset | files
Fri, 25 Mar 2011 19:20:14 +0100 Florian Zeitz plugins.xeps: Fix pattern used to determine whether the user requested an example changeset | files
Thu, 17 Mar 2011 18:11:34 +0100 Kim Alvefur init.lua: Add config option to load verse plugins directly changeset | files
Mon, 14 Mar 2011 15:38:20 +0000 Matthew Wild uptime: Refactor reply text generation changeset | files
Mon, 14 Mar 2011 14:18:16 +0000 Marco Cirillo Added uptime plugin, also included an entry for it into the squishy file. changeset | files
Sat, 12 Mar 2011 10:36:06 +0000 Matthew Wild plugins.pubsub2room: Throttle messages to the room when a batch of notifications arrives at once changeset | files
Sat, 12 Mar 2011 10:35:40 +0000 Matthew Wild plugins.pubsub2room: Fix reliance on Atom payloads, and add an extra 'data' parameter for additional non-payload data changeset | files
Fri, 11 Mar 2011 22:37:06 +0100 Kim Alvefur plugins.pubsub2room: Send pubsub events to rooms. changeset | files
Fri, 11 Mar 2011 22:30:21 +0100 Kim Alvefur plugins.pubsub: Re-send verse pubsub events on the bot changeset | files
Wed, 09 Mar 2011 18:27:52 +0100 Kim Alvefur plugins.groupchat: Optimize reply nick prefixing and prevent a traceback changeset | files
Wed, 09 Mar 2011 18:18:41 +0100 Kim Alvefur plugins.xkcd: Do exact match comparison with original, but lowercased, parameter changeset | files
Wed, 09 Mar 2011 18:04:36 +0100 Kim Alvefur plugins.xkcd: Exact matches takes priority over others changeset | files
Mon, 21 Feb 2011 16:50:03 +0100 Kim Alvefur plugins.xkcd: Don't pad with spaces changeset | files
Mon, 21 Feb 2011 16:30:31 +0100 Kim Alvefur plugins.xkcd: Escape non-balanced non-empty square brackets in search queries changeset | files
Mon, 21 Feb 2011 16:12:13 +0100 Kim Alvefur plugins.xkcd: Escape parentheses in search queries changeset | files
Mon, 21 Feb 2011 01:22:42 +0100 Kim Alvefur plugins.slap: Remove special handling for actions changeset | files
Mon, 21 Feb 2011 01:22:08 +0100 Kim Alvefur plugins.groupchat: Don't prepend replies with the senders nickname if it's an action changeset | files
Mon, 21 Feb 2011 01:05:48 +0100 Kim Alvefur plugins.bookmarks: Remove redundant config reference changeset | files
Sat, 22 Jan 2011 17:12:20 +0000 Matthew Wild plugin.commands: Fire unhandled-command event changeset | files
Tue, 11 Jan 2011 23:35:42 +0100 Kim Alvefur plugins.xkcd: New plugin, guess what it does ;) changeset | files
Tue, 11 Jan 2011 23:19:51 +0100 Kim Alvefur plugins.groupchat: Update to use groupchat code in Verse changeset | files
Tue, 11 Jan 2011 13:42:07 +0100 Kim Alvefur Merge with MattJ changeset | files
Tue, 11 Jan 2011 10:40:12 +0100 Kim Alvefur plugins.msgforward: Clone messages, not just the body. changeset | files
Sat, 08 Jan 2011 11:58:39 +0100 Kim Alvefur plugins.msgforward: New plugin that forwards messages to rooms based on sender. changeset | files
Sat, 08 Jan 2011 18:00:50 +0000 Matthew Wild Merge with ciarang changeset | files
Fri, 19 Nov 2010 10:17:53 +0000 Ciaran Gultnieks Bugzilla plugin changeset | files
Fri, 10 Dec 2010 17:14:41 +0100 Kim Alvefur plugins.bookmarks: Remove unused require, thanks TJA changeset | files
Sun, 21 Nov 2010 00:37:29 +0100 Kim Alvefur plugins.bookmarks: Don't allow to bookmark the same room twice changeset | files
Sat, 20 Nov 2010 18:51:56 +0100 Kim Alvefur plugins.bookmarks: New plugin that makes the bot autojoin bookmarked rooms. changeset | files
Sat, 20 Nov 2010 18:42:42 +0100 Kim Alvefur plugins.opdown: New plugin that gives configurable room administrative commands. changeset | files
Sat, 13 Nov 2010 21:27:01 +0100 Kim Alvefur plugins.groupchat: Keep track of real jid, affiliation and role. changeset | files
Sat, 13 Nov 2010 20:24:45 +0100 Kim Alvefur plugins.groupchat: Add methods for changing affiliation and role changeset | files
Thu, 11 Nov 2010 03:09:06 +0100 Kim Alvefur plugins.groupchat: Set a to attribute on stanzas to rooms if there isn't one changeset | files
Tue, 09 Nov 2010 17:57:44 +0100 Kim Alvefur plugins.trac: Remove curl hack changeset | files
Tue, 09 Nov 2010 03:19:19 +0100 Kim Alvefur plugins.groupchat: Cleanup properly when leaving a room, even if kicked. changeset | files
Tue, 09 Nov 2010 03:01:30 +0100 Kim Alvefur plugins.tell: Optinally store !tells in iq:private for persistence (requires json) changeset | files
Tue, 09 Nov 2010 01:53:26 +0100 Kim Alvefur plugins.tell: Optinally deliver !tells only in the same room. changeset | files
Mon, 08 Nov 2010 23:34:15 +0100 Kim Alvefur plugins.trac: New plugin to fetch ticket info from trac changeset | files
Mon, 08 Nov 2010 23:31:49 +0100 Kim Alvefur plugins.invited: New plugin to join rooms when invited changeset | files
Mon, 08 Nov 2010 23:19:57 +0100 Kim Alvefur plugins.version: Report own version in first person, and don't crash if it's not in a room changeset | files
Mon, 08 Nov 2010 23:06:48 +0100 Kim Alvefur plugins.groupchat: Request zero history changeset | files
Mon, 08 Nov 2010 22:41:24 +0100 Kim Alvefur plugins.commands: Enable commands to be directed to the bots nick changeset | files
Mon, 08 Nov 2010 21:27:44 +0100 Kim Alvefur plugins.xeps: Limit matches to 5 changeset | files
Thu, 14 Oct 2010 13:21:55 +0100 Matthew Wild plugins.version, plugins.command: Remove obsolete require 'util.xstanza' changeset | files
Mon, 30 Aug 2010 00:18:14 +0200 Florian Zeitz plugins.xeps: Use net.http changeset | files
Mon, 26 Jul 2010 11:34:13 +0100 Matthew Wild plugins.groupchat: Assume our own nick when receiving presence from the room's bare JID changeset | files
Thu, 24 Jun 2010 17:51:36 +0100 Thomas Mangin plugins.tell: Add !untell <nick> and !untell <nick> <id> to remove tells changeset | files
Thu, 24 Jun 2010 17:49:08 +0100 Thomas Mangin plugins.tell: More validation on inputs, to prevent crashes changeset | files
Tue, 22 Jun 2010 14:52:53 +0100 Matthew Wild init.lua: Don't tostring() stanzas before passing to Verse, in case we ever support filters. Also add send_iq() to bot object. changeset | files
Mon, 21 Jun 2010 14:39:19 +0100 Matthew Wild plugins.xeps: Add 'xep' command for looking up XMPP extensions by name or number changeset | files
Fri, 11 Jun 2010 01:12:01 +0100 Hubert Chathi plugins.simple_commands: Plugin for making simple commands changeset | files
Fri, 11 Jun 2010 01:11:09 +0100 Hubert Chathi plugins.slap: Can't have a bot without this! changeset | files
Sun, 30 May 2010 02:55:31 +0100 Matthew Wild riddim: Hook Verse's new 'ready' event instead of 'binding-success' changeset | files
Fri, 21 May 2010 02:03:18 +0100 Matthew Wild squishy: presence->autosubscribe changeset | files
Fri, 21 May 2010 00:47:04 +0100 Matthew Wild squishy: Rename presence->autosubscribe changeset | files
Thu, 20 May 2010 17:36:47 +0100 Matthew Wild plugins.tell: Remove excess quote (thanks Florob) changeset | files
Thu, 20 May 2010 15:44:53 +0100 Matthew Wild Merge with Chris changeset | files
Thu, 20 May 2010 14:37:28 +0100 Matthew Wild Rename plugins.presence to plugins.autosubscribe changeset | files
Thu, 20 May 2010 14:36:14 +0100 Chris Rudimentary presence plugin to auto-accept subscription requests changeset | files
Thu, 20 May 2010 14:34:22 +0100 Chris Fire started event at the end of startup routine changeset | files
Thu, 20 May 2010 14:33:41 +0100 Chris Formatting, indentation and cleanup changeset | files
Thu, 20 May 2010 14:33:09 +0100 Chris Reply to messages with the same (the incoming) message type changeset | files
Thu, 20 May 2010 14:32:21 +0100 Chris Decouple plugins from base implementation (in particular no plugins are now loaded by default) changeset | files
Thu, 20 May 2010 13:57:56 +0100 Matthew Wild Remove tellings after someone comes online (thanks Florob) changeset | files
Thu, 20 May 2010 13:45:53 +0100 Matthew Wild plugins.tell: Change responses (thanks Flo) changeset | files
Fri, 14 May 2010 14:23:03 +0100 Hubert Chathi Fix to send initial presence again changeset | files
Fri, 14 May 2010 14:18:23 +0100 Thilo Cestonaro tell.lua: prevent executing the command in a non-groupchat environment. changeset | files
Thu, 18 Mar 2010 14:16:05 +0100 Thilo Cestonaro groupchat.lua: make the occupant-left event work changeset | files
Thu, 18 Mar 2010 12:51:48 +0100 Thilo Cestonaro add basic command tell support changeset | files
Thu, 29 Apr 2010 22:11:35 +0100 Matthew Wild plugins.version: Friendly message for feature-not-implemented changeset | files
Fri, 09 Apr 2010 21:01:12 -0400 Hubert Chathi initial implementation of disco responses (XEP-0030) and entity caps sending (XEP-0115) changeset | files
Mon, 22 Mar 2010 10:50:55 -0400 Hubert Chathi allow specifying connect host and port in config file changeset | files
Wed, 23 Dec 2009 01:00:13 +0000 Matthew Wild plugins.ping: Update to handle errors passed from Verse changeset | files
Tue, 22 Dec 2009 05:10:08 +0000 Matthew Wild Don't allow loading the same plugin more than once changeset | files
Tue, 22 Dec 2009 05:06:29 +0000 Matthew Wild Add configured plugins to the bot instead of the stream changeset | files
Mon, 21 Dec 2009 22:09:14 +0000 Matthew Wild Fix to fetch autojoin list from the config (thanks Maranda) changeset | files
Mon, 21 Dec 2009 19:27:08 +0000 Matthew Wild Initial commit, hello world! changeset | files
(0) tip

mercurial