82d458e | Valentin Lorentz | 14 April 2021, 13:02:51 UTC | pyodide: add README. | 14 April 2021, 13:47:20 UTC |
5852404 | Valentin Lorentz | 14 April 2021, 12:54:14 UTC | drivers.PyodideWebsocket: Actually log errors | 14 April 2021, 13:47:20 UTC |
653d9f7 | Valentin Lorentz | 14 April 2021, 12:50:16 UTC | Add option to disable threads. | 14 April 2021, 13:47:20 UTC |
b000f87 | Valentin Lorentz | 14 April 2021, 12:32:04 UTC | pyodide: load some standard plugins | 14 April 2021, 12:49:49 UTC |
ca422d0 | Valentin Lorentz | 14 April 2021, 11:47:16 UTC | Add script to run with Pyodide | 14 April 2021, 11:47:16 UTC |
ed4d5d6 | Valentin Lorentz | 14 April 2021, 11:39:14 UTC | Add PyodideWebsocket driver | 14 April 2021, 11:44:18 UTC |
0ae05f6 | Valentin Lorentz | 14 April 2021, 11:30:17 UTC | Move most of scripts/supybot's code to src/_main.py + add support for running a single loop iteration So it can be ran without the main script, by an external program that imports it. Motivation: I'll use it with Pyoxide | 14 April 2021, 11:39:38 UTC |
e895444 | Valentin Lorentz | 14 April 2021, 11:30:53 UTC | setup: Add support for building wheels Required to run the code on Pyodide. | 14 April 2021, 11:39:32 UTC |
daad2d4 | Valentin Lorentz | 14 April 2021, 11:30:27 UTC | utils/net: Don't crash if 'ssl' is not available. | 14 April 2021, 11:39:32 UTC |
6b1460e | Valentin Lorentz | 11 April 2021, 14:35:39 UTC | Log loading times for each plugin It makes it easier to debug long startup times. | 11 April 2021, 14:35:42 UTC |
fd873fa | Valentin Lorentz | 11 April 2021, 11:24:10 UTC | httpserver: Don't serve_forever when documenting 1. it binds the port, which is useless while documenting 2. in some circumstances, it prevents supybot-plugin-doc from exiting (because the server threads are still running) | 11 April 2021, 11:24:10 UTC |
9869136 | Valentin Lorentz | 11 April 2021, 08:37:36 UTC | src/setup: Add support for ReST readmes by default | 11 April 2021, 08:38:05 UTC |
cd02444 | Valentin Lorentz | 05 April 2021, 20:56:40 UTC | supybot-plugin-doc: Add labels for all command and config variables So they can be referenced from elsewhere in the doc. | 05 April 2021, 22:33:07 UTC |
4fc6580 | Valentin Lorentz | 05 April 2021, 19:32:43 UTC | callbacks: Document replySuccess() and error() | 05 April 2021, 20:47:44 UTC |
f11684a | Valentin Lorentz | 05 April 2021, 18:34:49 UTC | callbacks: Add/improve method docstrings | 05 April 2021, 18:34:49 UTC |
66ba7cb | Valentin Lorentz | 05 April 2021, 15:32:26 UTC | Plugin: Only show the first paragraph; as the whole help can be very long. | 05 April 2021, 15:42:40 UTC |
833af36 | Valentin Lorentz | 05 April 2021, 15:29:49 UTC | all plugins: auto-generate READMEs Starting with this commit, there should be no "original" text in READMEs. Instead, the entire text should be in docstrings, and READMEs should be automatically generated from these docstrings. Motivation: * The same help is available both via IRC and in the README (although the README can be more detailed, as only the first paragraph will be shown on IRC) * This will allow auto-generating plugin help on docs.limnoria.net using the same content as the README, as it's sourced from the docstrings Additionally, this converts all READMEs from Markdown to ReST, because the documentation already uses ReST, and other docstrings in the codebase are in ReST for this reason. | 05 April 2021, 15:42:31 UTC |
76b6c56 | Valentin Lorentz | 05 April 2021, 15:33:37 UTC | supybot-plugin-doc: Fix various edge case issues in the ReST output | 05 April 2021, 15:40:57 UTC |
113fc74 | Valentin Lorentz | 05 April 2021, 13:54:13 UTC | Relay: Mention other plugins in the README. | 05 April 2021, 13:54:13 UTC |
21657f3 | Valentin Lorentz | 05 April 2021, 12:50:30 UTC | Aka, Alias: Remove mentions of Alias in the Aka documentation, and explain Alias is deprecated | 05 April 2021, 13:00:02 UTC |
49eef1c | Valentin Lorentz | 05 April 2021, 12:39:41 UTC | Misc: Make @help mention '@plugin help' when relevant. | 05 April 2021, 12:39:41 UTC |
9323302 | Valentin Lorentz | 05 April 2021, 11:41:29 UTC | Socket: Recover from socks.GeneralProxyError exceptions. | 05 April 2021, 11:41:29 UTC |
16fc2ae | Valentin Lorentz | 05 April 2021, 10:27:31 UTC | supybot-plugin-doc: Add option --output-filename It can be used like this to generate README.rst files: ``` supybot-plugin-doc --plugins-dir plugins/ --format rst --output-filename='plugins/$name/README.$format' ``` | 05 April 2021, 10:27:33 UTC |
524e409 | Valentin Lorentz | 05 April 2021, 10:25:44 UTC | supybot-plugin-doc: Fix bugs with --plugins-dir | 05 April 2021, 10:26:47 UTC |
6b9de3d | Valentin Lorentz | 05 April 2021, 10:25:17 UTC | supybot-plugin-doc: Add explicit target for each plugin reference It can be useful to reference it from elsewhere in the doc | 05 April 2021, 10:26:47 UTC |
5b98503 | Valentin Lorentz | 05 April 2021, 09:32:09 UTC | supybot-plugin-doc: Add config option for the page title | 05 April 2021, 09:32:09 UTC |
a7fb46f | Valentin Lorentz | 05 April 2021, 09:31:27 UTC | supybot-plugin-doc: Update value of supybot.databases Required for Aka, etc. | 05 April 2021, 09:31:43 UTC |
24f20dc | Valentin Lorentz | 05 April 2021, 09:30:59 UTC | Factoids, Services: Fix crash when imported by supybot-plugin-doc | 05 April 2021, 09:30:59 UTC |
c28d517 | Valentin Lorentz | 02 April 2021, 18:53:38 UTC | irclib: Copy messages before altering them at all Fixes a bug triggered by Relay when it relays to a network that supports labeled-response and an other that doesn't | 02 April 2021, 18:54:21 UTC |
b030a7b | Valentin Lorentz | 31 March 2021, 18:26:41 UTC | callbacks: Fix py 3.4 support | 01 April 2021, 18:10:17 UTC |
d452a70 | Valentin Lorentz | 31 March 2021, 17:35:16 UTC | callbacks: Don't write nick prefixes in the middle of multiline messages. | 01 April 2021, 18:10:17 UTC |
911f875 | Richard | 29 March 2021, 13:37:07 UTC | PluginDownloader: Change default branch from master to HEAD Many people are renaming their default branches from master to main or something else (I just renamed mine). Using HEAD works no matter what the default branch is named. | 01 April 2021, 18:10:17 UTC |
a003eff | Valentin Lorentz | 26 March 2021, 19:47:55 UTC | Config: Document network-specific variables in @list output | 01 April 2021, 18:10:17 UTC |
41c5589 | Valentin Lorentz | 25 March 2021, 22:44:57 UTC | utils.str: Rely only on the documented methods of textwrap.TextWrapper. '_split_chunks()' should be fine, but '_wrap_chunks()' is the only one explicitly documented as overridable, so it's probably safer to use. | 01 April 2021, 18:10:17 UTC |
91a4083 | Valentin Lorentz | 13 March 2021, 18:49:05 UTC | Misc: Clamp the number of lines returned by @more to the draft/multiline max-lines value, if any. | 01 April 2021, 18:10:17 UTC |
bbc2e9d | Valentin Lorentz | 13 March 2021, 18:00:41 UTC | irclib: 'lift' message tags to the batch when sending a multiline batch | 01 April 2021, 18:10:17 UTC |
92399bb | Valentin Lorentz | 13 March 2021, 17:32:36 UTC | drivers: Don't strip all whitespaces before parsing messages. They matter in multiline messages, and there isn't much point to stripping them anyway. | 01 April 2021, 18:10:17 UTC |
7cb3ae1 | Valentin Lorentz | 13 March 2021, 17:11:52 UTC | Misc: Make @more reply in batches when possible. | 01 April 2021, 18:10:17 UTC |
bf90a7c | Valentin Lorentz | 13 March 2021, 16:30:25 UTC | callbacks: Make reply() send multiline batches when supybot.reply.mores.instant > 1 | 01 April 2021, 18:10:17 UTC |
d5d2298 | Valentin Lorentz | 13 March 2021, 14:14:33 UTC | irclib: Remove special-casing of the last instant message in _sendReply There is no reason for it to be special; and this special-casing would be annoying when we add support for outgoing multiline batches. | 01 April 2021, 18:10:17 UTC |
de29218 | Valentin Lorentz | 13 March 2021, 14:05:15 UTC | irclib: Make NestedCommandsIrcProxy._replyOverhead count in bytes instead of chars It was, once again, a bug to count characters, because they might contain multi-byte characters, and truncation happens after the 512th byte. | 01 April 2021, 18:10:17 UTC |
8a3efe4 | Valentin Lorentz | 13 March 2021, 14:03:56 UTC | irclib: Split _sendReply from NestedCommandsIrcProxy.reply This function was getting uncomfortably big. | 01 April 2021, 18:10:17 UTC |
5676183 | Valentin Lorentz | 13 March 2021, 12:03:26 UTC | Add tests + fix bugs | 01 April 2021, 18:10:17 UTC |
99a6a7c | Valentin Lorentz | 13 March 2021, 11:22:39 UTC | raise exceptions instead of logging, so we get a helpful traceback | 01 April 2021, 18:10:16 UTC |
c7939d3 | Valentin Lorentz | 13 March 2021, 11:16:19 UTC | [wip] typo | 01 April 2021, 18:10:16 UTC |
26f2d9a | Valentin Lorentz | 13 March 2021, 11:15:21 UTC | [wip] idea for ordering batches in Irc.queue | 01 April 2021, 18:10:16 UTC |
e19436a | Valentin Lorentz | 13 March 2021, 11:12:03 UTC | [wip] support outgoing batches | 01 April 2021, 18:10:16 UTC |
8b90884 | Valentin Lorentz | 01 April 2021, 17:08:54 UTC | irclib: Copy messages before echoing them Fixes a bug triggered by Relay when it relays between three or more networks. | 01 April 2021, 18:09:28 UTC |
f390ade | Valentin Lorentz | 18 March 2021, 19:25:50 UTC | Anonymous: Add CLIENTTAGDENY test | 18 March 2021, 19:28:15 UTC |
ac0d795 | Valentin Lorentz | 18 March 2021, 19:20:05 UTC | Anonymous: Add @react command Gated behind supybot.protocols.irc.experimentalExtensions, as usual. Spec: https://ircv3.net/specs/client-tags/react | 18 March 2021, 19:20:09 UTC |
d60cc5c | Valentin Lorentz | 18 March 2021, 18:53:35 UTC | irclib: add method getClientTagDenied To allow plugins to check if they should send a tag or not. | 18 March 2021, 18:56:30 UTC |
544f137 | Valentin Lorentz | 18 March 2021, 18:56:10 UTC | Anonymous: Simplify/modernize @internationalizeDocstring and var setting in test. | 18 March 2021, 18:56:30 UTC |
7861040 | Valentin Lorentz | 17 March 2021, 20:22:29 UTC | Merge branch 'logtoirc' into testing | 17 March 2021, 20:22:29 UTC |
2990fcd | Valentin Lorentz | 13 March 2021, 12:15:41 UTC | README+setup: Update supported Python versions | 13 March 2021, 12:15:41 UTC |
f1a5ab4 | Valentin Lorentz | 11 March 2021, 21:49:13 UTC | String: Add unicodename and unicodesearch commands. | 11 March 2021, 21:49:13 UTC |
5434276 | Valentin Lorentz | 11 March 2021, 19:20:53 UTC | LogToIrc: Make variables channel- and network-specific when relevant | 11 March 2021, 19:20:53 UTC |
0919b9f | Valentin Lorentz | 11 March 2021, 18:46:05 UTC | ircmsgs: Fix function docstrings. | 11 March 2021, 18:46:05 UTC |
cb7a395 | Valentin Lorentz | 11 March 2021, 18:02:55 UTC | irclib: truncate outgoing messages to 512 bytes, not 512 chars | 11 March 2021, 18:02:55 UTC |
7359ddc | Valentin Lorentz | 10 March 2021, 23:40:28 UTC | LogToIrc: better error handling | 10 March 2021, 23:40:43 UTC |
f0b4332 | Valentin Lorentz | 10 March 2021, 23:39:50 UTC | LogToIrc: Update __init__/die signatures. | 10 March 2021, 23:40:43 UTC |
6d880c9 | Valentin Lorentz | 10 March 2021, 23:38:37 UTC | LogToIrc: Move IrcHandler to its own module, it shouldn't be reloaded. | 10 March 2021, 23:40:43 UTC |
436277a | Valentin Lorentz | 10 March 2021, 21:35:59 UTC | LogToIrc: Run 2to3 | 10 March 2021, 23:40:43 UTC |
e9ef8b2 | Valentin Lorentz | 10 March 2021, 21:35:35 UTC | LogToIrc: Split into modules, like modern plugins | 10 March 2021, 23:40:43 UTC |
d08dd24 | Valentin Lorentz | 10 March 2021, 21:24:12 UTC | LogToIrc: Resurect from from before the Darcs migration. Last commit: da614f55615f5afbda54df378825de12a420eece | 10 March 2021, 21:24:12 UTC |
c0527b6 | Valentin Lorentz | 10 March 2021, 21:19:35 UTC | String: update docstrings of ord/chr, we're using unicode now | 10 March 2021, 21:19:35 UTC |
9bfa145 | Valentin Lorentz | 09 March 2021, 22:14:23 UTC | httpserver: improve error handling when binding ports 1. better error messages 2. try binding other ports even if one fails | 09 March 2021, 22:14:23 UTC |
ce03729 | Valentin Lorentz | 09 March 2021, 22:13:16 UTC | ShrinkUrl: Improve error messages when opening the database. | 09 March 2021, 22:13:16 UTC |
36800ed | Valentin Lorentz | 09 March 2021, 22:12:54 UTC | ShrinkUrl: Fix tinyurl.com test | 09 March 2021, 22:12:54 UTC |
11e79e4 | Valentin Lorentz | 05 March 2021, 20:19:02 UTC | Remove the '(XX more messages)' when the next message is sent immediately after It's pointless and looks stupid. It will look even more stupid when we enable multiline, because the suffixes will be in the middle of the concatenated message. | 05 March 2021, 20:19:02 UTC |
f98542e | Valentin Lorentz | 05 March 2021, 20:11:37 UTC | Add testReplyInstant I'm going to mess with instant replies to add support for multiline, so it's good to have a safety net. | 05 March 2021, 20:11:43 UTC |
4aca6e3 | Valentin Lorentz | 04 March 2021, 20:30:48 UTC | Add support for receiving commands from draft/multiline batches. | 04 March 2021, 20:34:25 UTC |
975a910 | Valentin Lorentz | 04 March 2021, 20:30:07 UTC | Services: Fix conditional on supybot.protocols.irc.experimentalExtensions It was always true-ish because we tested the variable itself instead of its value. | 04 March 2021, 20:30:07 UTC |
f8c5221 | Valentin Lorentz | 04 March 2021, 20:29:23 UTC | do43x: add the current nick to the list of tried nicks. The original nick was never added to the list... | 04 March 2021, 20:29:23 UTC |
af5364b | Valentin Lorentz | 04 March 2021, 19:33:35 UTC | .travis.yml: Disable optional dependencies on py3.6, python-cryptography no longer supports it. | 04 March 2021, 19:33:35 UTC |
de9b518 | Valentin Lorentz | 04 March 2021, 19:09:37 UTC | .travis.yml: try to fix irctest run | 04 March 2021, 19:09:37 UTC |
8b497af | Valentin Lorentz | 04 March 2021, 17:48:15 UTC | Services: Add support for REGISTER responses in nested batches. | 04 March 2021, 17:48:15 UTC |
6f6dad8 | Valentin Lorentz | 03 March 2021, 22:32:00 UTC | Add proper support for nested batches. | 03 March 2021, 22:32:00 UTC |
9719bb7 | Valentin Lorentz | 27 February 2021, 17:07:23 UTC | irclib: Send the bot user mode when advertized by the server It is enabld by default in order to be a good netizen, but can be overridden by admins if needed. References: * * https://github.com/ircv3/ircv3-specifications/pull/439 | 28 February 2021, 10:11:29 UTC |
78dc45e | Valentin Lorentz | 20 February 2021, 23:18:01 UTC | Aka: eliminate race condition in tests? Sometimes (very rarely), the test errors with: ``` ====================================================================== FAIL: testHistsearch (Aka.test.AkaChannelTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/usr/lib/python3/dist-packages/supybot/test.py", line 214, in runTest originalRunTest() File "/usr/lib/python3/dist-packages/supybot/plugins/Aka/test.py", line 67, in testHistsearch self.assertResponse('histsearch .*', '@echo foo') File "/usr/lib/python3/dist-packages/supybot/test.py", line 402, in assertResponse self.assertEqual(m.args[1], expectedResponse, AssertionError: '@aka add histsearch "last --from [cif true[80 chars]"]]"' != '@echo foo' - @aka add histsearch "last --from [cif true \"echo test\" \"echo test\"] --regexp [concat \"m/$1/\" [re s/g// \"@2\"]]" + @echo foo : '@echo foo' != '@aka add histsearch "last --from [cif true \\"echo test\\" \\"echo test\\"] --regexp [concat \\"m/$1/\\" [re s/g// \\"@2\\"]]"' ``` ie. histsearch returns the 'aka add' message instead of the 'echo foo' one. My guess is that if they happen too closely to each other, they get added to the history in the wrong order (how? it's not threaded) So this commit works around the issue by making the regexp unambiguous. | 20 February 2021, 23:18:03 UTC |
85549bf | Valentin Lorentz | 30 January 2021, 18:41:26 UTC | Services: Fix typo in docstring | 30 January 2021, 18:41:26 UTC |
18baff9 | Valentin Lorentz | 27 January 2021, 17:19:23 UTC | .travis.yml: Add use releases for python 3.8 and 3.9 | 27 January 2021, 17:19:23 UTC |
c016ed5 | Valentin Lorentz | 25 January 2021, 21:00:51 UTC | Services: Add support for batches as reply to REGISTER/VERIFY. Oragono uses them. | 25 January 2021, 21:03:08 UTC |
1c6c1cb | Valentin Lorentz | 25 January 2021, 20:57:12 UTC | Services: Add initial implementation of the @register and @verify commands. Using this early draft specification: https://gist.github.com/edk0/bf3b50fc219fd1bed1aa15d98bfb6495 | 25 January 2021, 20:57:12 UTC |
e54751f | Valentin Lorentz | 25 January 2021, 18:49:03 UTC | Make the email regexp less strict. The former one disallowed too many valid address, eg. those containing quotes or square brackets. | 25 January 2021, 18:49:08 UTC |
7110b8f | Valentin Lorentz | 15 January 2021, 20:24:23 UTC | Relay: Set msg.channel before passing it to _sendToOthers. _sendToOthers expects msg.channel to be 'in otherIrc.state.channels', but IrcMsg objects don't have their 'channel' attribute set until they are passed through irclib, so it was left unset, which means messages were never sent at all. Regression introduced in c1ae3f5c81cc8cf4effc7670e99c9270e31a1c9c. | 15 January 2021, 20:25:02 UTC |
aceb7ba | Valentin Lorentz | 11 January 2021, 23:55:48 UTC | .travis.yml: Allow failures for pypy3 + opt deps. 'cryptography' can't be installed because of errors thrown by gcc. | 11 January 2021, 23:55:48 UTC |
772ec8d | Valentin Lorentz | 11 January 2021, 22:22:21 UTC | When getting STS policy over insecure connection, reuse the exact same IP address Otherwise, if some IP addresses don't work (eg. all odd ones), the bot will consecutively fail because it can't connect, then connect + get STS + reconnect, then fail again, then connect + get STS, etc. | 11 January 2021, 22:22:21 UTC |
ba77de0 | Valentin Lorentz | 05 December 2020, 13:26:50 UTC | Try all IP addresses of a hostname. Fixes a regression in ecc2c32950efd0389d9d2c6b37ea7fb2728ab1d1 that caused Socket.py to ignore the IP address entirely after computing it, and to call getSocket() and connect() with the hostname instead. | 05 December 2020, 13:26:52 UTC |
771c05c | Valentin Lorentz | 10 November 2020, 08:47:36 UTC | irclib: Fix test failure FAIL: testMoreIsCaseInsensitive (Misc.test.MiscTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File /home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/supybot/test.py, line 214, in runTest originalRunTest() File ./plugins/Misc/test.py, line 260, in testMoreIsCaseInsensitive self.assertNotError('more %s' % nick.upper()) File /home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/supybot/test.py, line 355, in assertNotError m = self._feedMsg(query, **kwargs) File /home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/supybot/test.py, line 526, in _feedMsg response = self.irc.takeMsg() File /home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/supybot/log.py, line 368, in m return f(self, *args, **kwargs) File /home/travis/virtualenv/python3.8-dev/lib/python3.8/site-packages/supybot/irclib.py, line 1308, in takeMsg assert not msg.tagged('emulatedEcho') AssertionError I don't understand why it's happening or why it's only that specific test, but there we go. | 10 November 2020, 08:47:36 UTC |
81a7530 | Valentin Lorentz | 09 November 2020, 20:45:01 UTC | Network: add @capabilities command. | 09 November 2020, 20:45:01 UTC |
c062787 | Valentin Lorentz | 04 November 2020, 10:32:09 UTC | irclib: use a dedicated tag to detect emulated echo-messages, instead of receivedAt. Plugins implementing inFilter do not set receivedAt, so incoming messages rewritten by inFilter would be detected as echo messages, and ignored by most plugins. | 04 November 2020, 10:32:20 UTC |
903ecee | Valentin Lorentz | 29 October 2020, 18:47:28 UTC | Simplify checkIgnored code from previous commit | 04 November 2020, 10:32:20 UTC |
d24130f | Lars Kellogg-Stedman | 29 October 2020, 19:22:34 UTC | resolve warnings about 'is not' and integer comparisons (#1435) running supybot-adduser (or supybot-reset-password) with a recent python would result in the warning: > ``` > /usr/local/bin/supybot-adduser:59: SyntaxWarning: "is not" with a literal. Did you mean "!="? > if len(args) is not 1: > ``` This commits corrects the syntax. ` | 29 October 2020, 19:22:34 UTC |
76b5a42 | Valentin Lorentz | 25 October 2020, 23:06:56 UTC | supybot.defaultIgnore shouldn't ignore registered users. Even if they are not trusted. This fixes a regression in 97016b9c55e144ce234fdf67880b57dffc12aac3. This happens because 'user._checkCapability' raises a KeyError when the user has neither this cap or the anticap; which was mistakenly caught here by the 'except KeyError' expecting to catch non-existing users. (And that why 'try' blocks should be limited to as few lines as possible.) | 25 October 2020, 23:19:57 UTC |
160bcc8 | Valentin Lorentz | 22 October 2020, 18:01:30 UTC | Revert "irclib: Fill the nick and prefix of simulated echo messages." This reverts commit 1fe414764c0c2fa291b7d10d663b52c069013058. I initially wrote that commit so that plugins with echoMessage=True can get the nick/prefix from the message (eg. the SkypeRelay plugin in my personal repo). Unfortunately, this breaks any test that does equality comparison on between the result of getMsg()/takeMsg() and an IrcMsg object they crafted themselves. Additionally, the filled in nick and prefix might be inaccurate if the bot changes nick/host at the same time. So instead plugins should check for the None value. (Also, editing IrcMsgs on the fly like this isn't great, and the commit forgot to reset the `_str` attribute.) | 22 October 2020, 18:04:23 UTC |
5ee63eb | James Lu | 18 October 2020, 20:42:12 UTC | SedRegex: test "nick, " prefix for explicit reference as well as "nick: " | 18 October 2020, 20:44:05 UTC |
6c138d6 | James Lu | 18 October 2020, 20:40:20 UTC | SedRegex: follow config preference for strictRfc checking Also add some tests to check that nicks containing the sed separator character are handled correctly. | 18 October 2020, 20:44:05 UTC |
1fe4147 | Valentin Lorentz | 17 October 2020, 12:22:48 UTC | irclib: Fill the nick and prefix of simulated echo messages. | 17 October 2020, 12:22:48 UTC |
5195ff8 | Valentin Lorentz | 13 October 2020, 20:28:52 UTC | Web: Add new @location command, to follow HTTP redirects. Useful to un-tinify URLs. | 13 October 2020, 20:28:52 UTC |
d52e2aa | James Lu | 13 October 2020, 02:50:53 UTC | SedRegex: rename SearchNotFound -> SearchNotFoundError | 13 October 2020, 02:50:53 UTC |