5845bc3 | Valentin Lorentz | 31 July 2021, 13:37:59 UTC | drivers: Fix Python 3.10 support. the 'loop' argument is no longer allowed, so we have to work around it by creating a coroutine. | 29 January 2022, 11:47:30 UTC |
f164ac7 | Valentin Lorentz | 31 July 2021, 12:31:12 UTC | Use asyncio to manage the driver loop This allows us to remove the custom shoehorned select() handling without changing the driver design too much. | 29 January 2022, 11:47:29 UTC |
0ed743b | James Lu | 29 January 2022, 01:47:58 UTC | Format: allow empty substrings in 'replace' This allows for easy substring removal without having to use regex. | 29 January 2022, 01:50:31 UTC |
c7fa33b | Valentin Lorentz | 26 January 2022, 18:03:13 UTC | setup.py: Use the website's URL instead of the repo's | 26 January 2022, 18:03:47 UTC |
da549e4 | Valentin Lorentz | 16 January 2022, 19:45:41 UTC | Geography: Print current UTC offset next to timezones. | 16 January 2022, 19:45:41 UTC |
880efbb | Valentin Lorentz | 16 January 2022, 18:44:22 UTC | Merge branch 'geography' into testing | 16 January 2022, 18:44:22 UTC |
1643cb1 | Valentin Lorentz | 11 January 2022, 19:38:44 UTC | registry.Regexp: Better safeguard against misuses of _setValue() | 11 January 2022, 19:38:44 UTC |
28b28fe | Valentin Lorentz | 11 January 2022, 19:38:14 UTC | Config: Fix crash happening since the previous commit | 11 January 2022, 19:38:14 UTC |
dcca9f9 | Valentin Lorentz | 11 January 2022, 19:13:39 UTC | RSS: Make feed announces actually network-specific .getSpecific() always returned the channel-specific but non-network-specific var, unless the channel-specific and network-specific one was manually set. | 11 January 2022, 19:13:39 UTC |
40155ed | Valentin Lorentz | 09 January 2022, 13:10:15 UTC | Fix syntax DeprecationWarning. | 09 January 2022, 13:10:15 UTC |
74f8665 | Valentin Lorentz | 01 January 2022, 17:11:36 UTC | Remove fallbacks for old Python versions. | 01 January 2022, 17:11:36 UTC |
181e34b | Valentin Lorentz | 01 January 2022, 16:44:17 UTC | setup.py + CI: Remove support for Python 3.4 and 3.5 | 01 January 2022, 16:49:12 UTC |
7fade19 | Valentin Lorentz | 23 December 2021, 19:09:49 UTC | Google: Update suggestions in the deprecation warning 1. DDG is now built-in 2. GoogleCSE is actually limited to site-specific search | 23 December 2021, 19:09:49 UTC |
caa5aa3 | Valentin Lorentz | 19 December 2021, 20:11:26 UTC | Config: Replace inconsistent terminology | 19 December 2021, 20:11:26 UTC |
3f77c53 | Valentin Lorentz | 19 December 2021, 19:53:08 UTC | utils/structures: Fix typos, remove unused code | 19 December 2021, 19:53:11 UTC |
8053d74 | Valentin Lorentz | 18 December 2021, 18:38:49 UTC | setup.py: Fix typo | 18 December 2021, 18:38:49 UTC |
ac379eb | Valentin Lorentz | 18 December 2021, 17:37:46 UTC | supybot-wizard: Ask for SASL username and password | 18 December 2021, 17:37:46 UTC |
d1191d1 | Valentin Lorentz | 18 December 2021, 17:37:26 UTC | setup.py: Remove 3.4 and 4.5 from the classifiers | 18 December 2021, 17:37:26 UTC |
49c7c30 | Valentin Lorentz | 18 December 2021, 17:36:48 UTC | setup.py: Remove reference to supybot from the short description | 18 December 2021, 17:36:48 UTC |
e223b50 | Valentin Lorentz | 07 December 2021, 22:30:16 UTC | utils.time: Add support for timezones without a slash. eg. UTC, CET, ... | 07 December 2021, 22:30:16 UTC |
ed9dffd | Valentin Lorentz | 04 December 2021, 02:19:12 UTC | supybot-plugin-doc: Remove extra space + regenerate all READMEs. | 04 December 2021, 02:19:12 UTC |
2d22417 | Valentin Lorentz | 04 December 2021, 02:08:09 UTC | supybot-plugin-doc: Fix exceptions raised while exiting the script. | 04 December 2021, 02:08:09 UTC |
828fff9 | Valentin Lorentz | 04 December 2021, 01:50:28 UTC | supybot-plugin-doc: Add missing newlines + regenerate all READMEs. | 04 December 2021, 01:50:28 UTC |
ef0cd48 | Valentin Lorentz | 03 December 2021, 17:03:27 UTC | registry: Better explain String.__str__ | 03 December 2021, 17:03:27 UTC |
fba5ed5 | Valentin Lorentz | 03 December 2021, 16:59:53 UTC | Fix crash caused by registry.Json.__str__ returning non-str objects | 03 December 2021, 17:02:14 UTC |
f1824fc | Valentin Lorentz | 03 December 2021, 16:28:05 UTC | Config: Fix crash when reseting registry.Pattern | 03 December 2021, 16:28:05 UTC |
baa8cda | Valentin Lorentz | 03 December 2021, 15:51:15 UTC | Fix bypassed cache invalidation checks, causing '@config reload' to be partially ignored `registry.Value.__call__()` is a wrapper around access to `registry.Value.value`, that checks if the value was set before the latest call to `registry.open_registry`; and updates the `value` if needed. When accessing `registry.Value.value` directly, this cache can't be invalidated, causing the old value to still be used, until the next call to `registry.Value.__call__()`. | 03 December 2021, 15:56:06 UTC |
c0d033f | Valentin Lorentz | 28 November 2021, 16:59:59 UTC | Math: Fix crash in @convert on small/large single-digit numbers str() converts them to the exponent notation, which makes split('.')[1] crash, since there is no decimal part in the exponent notation when there is a single significant digit. | 28 November 2021, 17:00:58 UTC |
2d5c807 | Valentin Lorentz | 25 November 2021, 23:55:31 UTC | MessageParser: Fix crash (and unexpected behavior) when matching backslashes Closes GH-1497. | 25 November 2021, 23:55:44 UTC |
068488c | Valentin Lorentz | 20 November 2021, 13:41:42 UTC | Fix sdists created by newer setuptools versions. This caused the PyPI package to be broken since I upgraded my computer from Debian bullseye | 20 November 2021, 13:41:42 UTC |
dd3678e | Valentin Lorentz | 19 November 2021, 08:53:31 UTC | Remove Travis badges | 19 November 2021, 08:53:31 UTC |
63a97fc | Valentin Lorentz | 18 November 2021, 12:17:39 UTC | Owner: Ignore commands when they are in a chathistory batch. | 18 November 2021, 12:17:39 UTC |
2236c75 | Valentin Lorentz | 17 November 2021, 22:26:06 UTC | irclib: Request draft/account-registration Servers might reject the REGISTER command if it's not ACKed. | 17 November 2021, 22:26:06 UTC |
d2091e8 | Valentin Lorentz | 11 November 2021, 18:07:31 UTC | Geography: Always prefer IANA timezones over UTC offsets Even if the UTC offsets are given on a more specific entity, they are usually worthless to us (eg. DST). | 11 November 2021, 18:07:36 UTC |
76b9d6f | Valentin Lorentz | 09 November 2021, 22:38:31 UTC | Geography: Properly handle missing timezones | 09 November 2021, 22:38:31 UTC |
93a407a | Valentin Lorentz | 09 November 2021, 22:10:55 UTC | Geography: Add 'localtime' command | 09 November 2021, 22:10:59 UTC |
36ade18 | Valentin Lorentz | 09 November 2021, 21:32:29 UTC | Geography: Add 'timezone' command | 09 November 2021, 21:41:40 UTC |
696d82c | Valentin Lorentz | 09 November 2021, 21:01:59 UTC | Geography: Fix crash in nominatim.py when some results are not OSM objects | 09 November 2021, 21:41:40 UTC |
162e974 | Valentin Lorentz | 09 November 2021, 19:42:42 UTC | Geography: Implement search for OSM IDs using Nominatim. | 09 November 2021, 21:41:40 UTC |
35c1407 | Valentin Lorentz | 09 November 2021, 19:41:38 UTC | Geography: Add support for querying Wikidata from an OSM ID. | 09 November 2021, 21:41:40 UTC |
1a72a7d | Valentin Lorentz | 09 November 2021, 19:40:35 UTC | Geography: run Black | 09 November 2021, 21:41:40 UTC |
849acb2 | Valentin Lorentz | 08 November 2021, 22:46:51 UTC | Geography: Clean up the SPARQL statement. | 09 November 2021, 21:41:40 UTC |
3b7379e | Valentin Lorentz | 08 November 2021, 22:42:55 UTC | Geography: Fix typo, preventing exclusion of non-constant offset statements on timezones eg. it did not exclude the offsets from Q941023 (Eastern Time Zone) | 09 November 2021, 21:41:40 UTC |
0a6f598 | Valentin Lorentz | 08 November 2021, 22:41:26 UTC | Geography: Set a better user-agent to access Wikidata | 09 November 2021, 21:41:40 UTC |
27c5131 | Valentin Lorentz | 08 November 2021, 22:22:17 UTC | Geography: Early draft, with buggy implementation of timezone_from_qid. | 09 November 2021, 21:41:40 UTC |
5aefd63 | Valentin Lorentz | 09 November 2021, 21:33:23 UTC | Time: Fix error handling in @tztime. | 09 November 2021, 21:33:23 UTC |
8326d6e | Valentin Lorentz | 09 November 2021, 21:33:12 UTC | Fediverse and Poll: Run Black | 09 November 2021, 21:33:12 UTC |
feaa02a | Valentin Lorentz | 08 November 2021, 22:20:28 UTC | Add docstring to supybot.utils.time.iana_timezone | 08 November 2021, 22:20:28 UTC |
12c526b | Valentin Lorentz | 08 November 2021, 22:20:13 UTC | Update default user agent to mention Limnoria | 08 November 2021, 22:20:13 UTC |
abe5902 | Valentin Lorentz | 08 November 2021, 20:59:05 UTC | irclib: Remove broken + useless code This function does not exist anymore | 08 November 2021, 20:59:05 UTC |
8b26b67 | Valentin Lorentz | 08 November 2021, 19:24:50 UTC | Use stdlib instead of pytz on Python >= 3.9 Python 3.9 introduced the zoneinfo module, which provides the only feature we used pytz for (getting a datetime.tzinfo object from an IANA timezone id); so let's use it instead of a third-party dependency. | 08 November 2021, 20:46:48 UTC |
a5cd930 | Valentin Lorentz | 08 November 2021, 19:33:45 UTC | Update CI/setup.py/README: Python 3.10 is now released. | 08 November 2021, 20:30:00 UTC |
ce7e4b7 | Valentin Lorentz | 08 November 2021, 20:10:51 UTC | Replace deprecated unittest function calls. | 08 November 2021, 20:29:59 UTC |
93c6309 | Valentin Lorentz | 08 November 2021, 19:42:29 UTC | Remove SQLAlchemy from the dependencies. It's only used by Aka when sqlite3 is not available, so basically never. And SQLAlchemy probably can't work without sqlite3 anyway. Plus, SQLAlchemy depends on greenlet, which does not support Python 3.11a2 yet: https://github.com/python-greenlet/greenlet/issues/273 | 08 November 2021, 20:29:59 UTC |
417cd7d | James Lu | 21 October 2021, 00:39:50 UTC | LogToIrc: add missing import | 21 October 2021, 00:39:50 UTC |
1f618b9 | Valentin Lorentz | 18 October 2021, 08:08:31 UTC | log: Fix support of 'supybot-test --clean' Broken in dff394df64b275833eba3b12f253f1e66c80db27. | 18 October 2021, 08:08:41 UTC |
63eb667 | Valentin Lorentz | 17 October 2021, 07:54:06 UTC | Revert generic 'The Limnoria Contributors' in copyright notices This commit reverts db7ef3f02517f9f2a3c56829a22b9fad3c36e374 (though it keeps the year updates) After discussion with several people, it seems better to mention copyright owners explicitly. eg. https://reuse.software/faq/#vcs-copyright explains the issue of using VCSs to track copyright. As db7ef3f02517f9f2a3c56829a22b9fad3c36e374 only replaced mentions of my name with 'The Limnoria Contributors', this commit only needs to undo that + add one person who contributed to setup.py. | 17 October 2021, 07:57:55 UTC |
dff394d | Valentin Lorentz | 14 October 2021, 21:52:16 UTC | log: Add support for rotating messages.log. | 14 October 2021, 21:52:16 UTC |
666acd9 | Valentin Lorentz | 14 October 2021, 21:45:28 UTC | log: Simplify encoding in BetterFileHandler. I don't think any these cases are useful anymore. Let's keep the last one anyway, just in case I'm wrong. | 14 October 2021, 21:47:32 UTC |
e972894 | Valentin Lorentz | 14 October 2021, 21:43:40 UTC | supybot-wizard: Fix variable shadowing. | 14 October 2021, 21:43:40 UTC |
f31e5c4 | PeGaSuS | 09 October 2021, 20:08:31 UTC | LogToIrc: Synchronize README with config.py Better document the format of the 'target' config var | 09 October 2021, 20:53:13 UTC |
3f27c03 | Valentin Lorentz | 09 October 2021, 19:08:48 UTC | LogToIrc: better document the format of the 'target' config var | 09 October 2021, 19:08:48 UTC |
163e717 | Valentin Lorentz | 07 October 2021, 23:03:31 UTC | Fediverse: increase again to fix failures on the CI... | 07 October 2021, 23:03:31 UTC |
d844243 | Valentin Lorentz | 07 October 2021, 22:15:45 UTC | Fediverse: increase max heap size to mitigate crashes on pypy | 07 October 2021, 22:15:45 UTC |
bc0c5bd | Valentin Lorentz | 07 October 2021, 19:34:04 UTC | ChannelLogger: Log away messages | 07 October 2021, 19:34:04 UTC |
ebaa346 | Valentin Lorentz | 22 September 2021, 19:48:59 UTC | callbacks: Don't raise AssertionError when addressd() is called with a NOTICE Some plugins (like LinkRelay) share code between NOTICE and PRIVMSG and they might call it unconditionally. | 22 September 2021, 19:48:59 UTC |
de277ed | Valentin Lorentz | 22 September 2021, 16:54:45 UTC | irclib: Make requestCapabilities a public method So it can be used by plugins like Sigyn. | 22 September 2021, 16:54:47 UTC |
4d97486 | Valentin Lorentz | 21 September 2021, 19:41:25 UTC | String: Fix TypeError. | 21 September 2021, 19:41:25 UTC |
f468557 | Valentin Lorentz | 21 September 2021, 19:21:21 UTC | Channel: Fix capability check in alertOps, to check the target instead of sender. | 21 September 2021, 19:21:21 UTC |
c934939 | Valentin Lorentz | 21 September 2021, 19:19:03 UTC | Fediverse & String: Increase test timeouts, they can be flaky on CIs | 21 September 2021, 19:19:03 UTC |
749b8e1 | Valentin Lorentz | 14 September 2021, 19:03:15 UTC | fix test | 14 September 2021, 19:03:15 UTC |
dc79ab1 | Valentin Lorentz | 14 September 2021, 18:30:47 UTC | Update capitalization of my Github username | 14 September 2021, 18:30:47 UTC |
5b9ec4f | Valentin Lorentz | 13 September 2021, 17:07:34 UTC | LogToIrc: Prevent loop when sending to non-existing channels When the target is a channel it is not in, it would treat it as a user; which, if userCapabilityRequired is empty, would unconditionally send it to a channel. This would usually result in an error, that would be logged, hence the loop. | 13 September 2021, 17:07:34 UTC |
070090f | Valentin Lorentz | 13 September 2021, 17:01:46 UTC | LogToIrc: Honor the configured log level | 13 September 2021, 17:05:42 UTC |
76bd1c8 | Valentin Lorentz | 13 September 2021, 16:45:49 UTC | Socket: Gracefully handle invalid lines with UTF8ONLY Just skip the line, instead of crashing the whole loop (which contains the next lines from the same server too) | 13 September 2021, 16:45:49 UTC |
ee9f0dc | Valentin Lorentz | 03 September 2021, 18:15:18 UTC | STS: When persisting STS keys, use the actual port instead of the one from the policy 'Servers MAY send this key to securely connected clients, but it will be ignored.' -- https://ircv3.net/specs/extensions/sts\#the-port-key | 03 September 2021, 18:15:18 UTC |
74073b2 | Valentin Lorentz | 01 September 2021, 16:25:54 UTC | irclib: Log the server's error message on SASL failure. | 01 September 2021, 16:25:54 UTC |
e638586 | Valentin Lorentz | 28 August 2021, 21:48:19 UTC | Fediverse: Better assertionerror messages | 28 August 2021, 21:48:19 UTC |
52a5cef | Valentin Lorentz | 28 August 2021, 21:36:05 UTC | Move stripformatting from Format to Filter, for consistency | 28 August 2021, 21:37:21 UTC |
d593f84 | Valentin Lorentz | 27 August 2021, 17:03:18 UTC | Socket: disable charset heuristics when the server advertizes UTF8ONLY. | 27 August 2021, 17:03:18 UTC |
db05081 | Valentin Lorentz | 25 August 2021, 21:28:25 UTC | commands: fix _checkUrl | 25 August 2021, 21:28:25 UTC |
0131cd0 | Valentin Lorentz | 25 August 2021, 19:55:31 UTC | commands: Add converters for IRIs Since the 'url' and 'httpUrl' converters no longer support them... | 25 August 2021, 19:55:31 UTC |
be88530 | Valentin Lorentz | 25 August 2021, 19:53:05 UTC | commands: Disallow IRIs from 'url' and 'httpUrl' converters. urllib doesn't support IRIs, and gives out a cryptic 'UnicodeEncodeError: 'ascii' codec can't encode character ...' if we don't validate it. | 25 August 2021, 19:54:55 UTC |
62db3a9 | Valentin Lorentz | 25 August 2021, 19:29:19 UTC | callbacks: Print unexpected commands | 25 August 2021, 19:29:19 UTC |
ca624d7 | Valentin Lorentz | 22 August 2021, 17:23:05 UTC | RSS: Fix nondeterministic test failures Caused by 'rss announce add' triggering headline announces, that would delay the execution of the 'remove' commands. Thanks to @mapreri and @Unit193 for help in reproducing the issue and confirming the patch. | 22 August 2021, 17:23:05 UTC |
0c8e455 | Valentin Lorentz | 22 August 2021, 17:21:28 UTC | RSS: When deleting a named feed, preserve anonymous feed of the same URL. | 22 August 2021, 17:21:28 UTC |
cbd2b31 | Valentin Lorentz | 12 August 2021, 19:28:50 UTC | Add error message in case setuptools is not installed. | 12 August 2021, 19:32:24 UTC |
37ba0ef | Ian Wienand | 31 May 2021, 00:24:06 UTC | setup.py: switch import to setuptools Switch to standard setuptools import, add suggested entries to pyproject.toml. Remove the --clean argument. As the comment suggests I'm sure there is history here, but having setup.py remove parts of the package does not seem like something required at this point. Also clean up the imports to remove unused and group them together at the top. | 12 August 2021, 19:23:48 UTC |
49b9a9a | Valentin Lorentz | 12 August 2021, 18:00:25 UTC | Add missing (optional) dependency, pyxmpp2-scram | 12 August 2021, 18:00:25 UTC |
0939247 | James Lu | 01 August 2021, 20:35:45 UTC | getUrlFd: chain the original exception so that plugins can handle them further (#1487) | 01 August 2021, 20:35:45 UTC |
db7ef3f | Valentin Lorentz | 01 August 2021, 19:47:37 UTC | all: Add generic 'The Limnoria Contributors' to copyright notices. No need to bother with details (that are all outdated / out of sync anyway), just look up the git history. | 01 August 2021, 19:54:49 UTC |
a86b2a6 | Valentin Lorentz | 31 July 2021, 15:57:53 UTC | More verbose irctest logging. trying to figure out why it freezes on the CI... | 31 July 2021, 15:57:53 UTC |
747ef77 | Valentin Lorentz | 31 July 2021, 12:40:44 UTC | Fix tests when pyxmpp2_scram is not installed. | 31 July 2021, 12:40:44 UTC |
c008d11 | Valentin Lorentz | 31 July 2021, 12:33:34 UTC | RSS: Fix crashes when the set of channels changed while iterating. | 31 July 2021, 12:33:34 UTC |
ade5a02 | Valentin Lorentz | 31 July 2021, 11:05:36 UTC | Fix/update SASL tests, broken by the previous commit. | 31 July 2021, 11:05:39 UTC |
5e2c212 | Valentin Lorentz | 31 July 2021, 09:40:28 UTC | Add as scram-sha-256 prefered SASL mechanism. | 31 July 2021, 09:40:28 UTC |
406369d | Valentin Lorentz | 21 July 2021, 07:45:28 UTC | Expose standardSubstitute's var dictionary So it can be reused by plugins if they want to use a different templating engine. | 21 July 2021, 07:45:28 UTC |
8fe517f | Valentin Lorentz | 16 July 2021, 20:53:38 UTC | irclib: Fix previous commits so RPL_NAMREPLY actually works Turns out irclib parses ISUPPORT PREFIX properly, so it's not just a raw string; but I didn't test the change live... | 16 July 2021, 20:53:38 UTC |
45c7615 | Valentin Lorentz | 16 July 2021, 17:53:25 UTC | irclib: Properly populate nickToHostmasks on RPL_NAMREPLY It used to set the nick instead of the hostmask as values... | 16 July 2021, 17:53:25 UTC |
d308329 | Valentin Lorentz | 16 July 2021, 17:50:12 UTC | irclib: Fix support of power prefix chars in RPL_NAMREPLY nickFromHostmask now (legitimately) complains when it's getting @ or ! at the beginning of a hostmask; so we need to strip them before passing it to nickFromHostmask. Then re-add them before calling c.addUser, because it uses them to sort users in the right sets (ops/halfops/voices). Additionally, this commit replaces the hardcoded set of prefix chars (`@%+&~!`) with the one advertised in ISUPPORT when possible. | 16 July 2021, 17:50:13 UTC |