Valentin Lorentz
ef081746b1
commands: Silence noisy logging of command evaluation
2022-07-29 10:29:48 +02:00
Valentin Lorentz
ee60431396
Add debug logging when skipping SASL mechanisms
...
It is useful to figure out what you forgot to configure
2022-07-29 10:03:39 +02:00
Valentin Lorentz
f549ec12c6
Add debug logging of SASL mechanisms
2022-07-29 09:45:09 +02:00
Valentin Lorentz
96b7f51e71
callbacks: Ignore chathistory batches in PluginRegexp
...
This is consistent with what we already do with commands; and generally
makes sense, as we don't want to re-send titles and others when cycling
on UnrealIRCd (which includes a chathistory batch when joining when
chmode +H is set, despite umode +B)
2022-07-06 22:07:37 +02:00
Valentin Lorentz
b3443a5a4c
setup: Fix install of subpackages when pip-installed from git repositories
...
It seems setuptools needs to be explicitly told to include subpackages
in this case.
2022-06-22 20:31:59 +02:00
Valentin Lorentz
fd04fccaec
i18n: Validate value of supybot.language
2022-06-17 00:29:38 +02:00
Valentin Lorentz
93370b6f0e
utils: Rewrite i18n initialization
...
The previous implementation was messy and needlessly complicated
This simplifies the logic and removes hackiness by making utils/str.py
handle internationalization logic itself, instead of bending over
backwards to load logic from the parent package at import time.
2022-06-17 00:05:51 +02:00
Valentin Lorentz
4a620bf7f0
Socket: Use the right variable to initialize the reconnect delay
2022-06-16 22:35:08 +02:00
Valentin Lorentz
94d669ebec
Make the minimum reconnect delay configurable
2022-05-28 13:53:05 +02:00
Valentin Lorentz
32198d42c2
i18n: Skip fuzzy strings
...
The German translation currently has at least one fuzzy string
with a missing %s; and several translations are completely wrong.
2022-04-27 22:15:43 +02:00
Valentin Lorentz
109f938b0c
Implement +draft/channel-context
2022-04-22 18:30:31 +02:00
Valentin Lorentz
9ec4eb9563
irclib: Fix assertion failure on InspIRCd when Sigyn plugin is loaded
2022-04-08 12:44:42 +02:00
Valentin Lorentz
088d0f54dd
irclib: Catch exception from outFilter, as with inFilter
2022-03-17 22:29:10 +01:00
Valentin Lorentz
862fca1602
conf: Use imports instead of sys.modules to detect module availability
...
`conf.supybot.databases()` may be called without any plugin supporting
sqlite3 being loaded yet, which causes `sqlite3` to be missing from
`sys.modules`; so it wouldn't be used by plugins loaded afterward.
2022-03-06 13:39:47 +01:00
Valentin Lorentz
d58d8d4a71
conf: Prioritize sqlite3 over sqlalchemy in supybot.databases
...
It's usually a better choice for plugins that implement both
2022-03-06 13:39:41 +01:00
Valentin Lorentz
9e995d8ac2
conf: Remove 'sqlite' module from supybot.databases
...
It is wholy replaced by 'sqlite3', now
2022-03-06 13:39:19 +01:00
PeGaSuS
80b26c013d
Fix typo in conf.py ( #1501 )
...
Fixed typo that lead to a wrong variable name being pointed out
2022-03-06 12:30:02 +01:00
Valentin Lorentz
66d986e820
Web: Add overrides to support Youtube and Reddit; remove Twitter from tests.
2022-03-03 22:16:53 +01:00
Valentin Lorentz
78bdc469e4
htmlToText: Don't replace inline element tags with spaces
...
They are not meant to be displayed like this, so they look weird sometimes.
For example, Mastodon splits long links between spans, so the Fediverse plugin
always displayed them broken.
2022-02-19 21:00:51 +01:00
Valentin Lorentz
bc76f7ead4
Fix utils.time.iana_timezone on python < 3.9
2022-02-17 12:18:13 +01:00
Valentin Lorentz
1643cb1b09
registry.Regexp: Better safeguard against misuses of _setValue()
2022-01-11 20:38:44 +01:00
Valentin Lorentz
dcca9f9637
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.
2022-01-11 20:13:39 +01:00
Valentin Lorentz
40155ede22
Fix syntax DeprecationWarning.
2022-01-09 14:10:15 +01:00
Valentin Lorentz
74f86654b1
Remove fallbacks for old Python versions.
2022-01-01 18:11:36 +01:00
Valentin Lorentz
3f77c53ed5
utils/structures: Fix typos, remove unused code
2021-12-19 20:53:11 +01:00
Valentin Lorentz
e223b507dd
utils.time: Add support for timezones without a slash.
...
eg. UTC, CET, ...
2021-12-07 23:30:16 +01:00
Valentin Lorentz
ef0cd48bd1
registry: Better explain String.__str__
2021-12-03 18:03:27 +01:00
Valentin Lorentz
fba5ed5fa4
Fix crash caused by registry.Json.__str__ returning non-str objects
2021-12-03 18:02:14 +01:00
Valentin Lorentz
baa8cda814
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__()`.
2021-12-03 16:56:06 +01:00
Valentin Lorentz
2236c7552a
irclib: Request draft/account-registration
...
Servers might reject the REGISTER command if it's not ACKed.
2021-11-17 23:26:06 +01:00
Valentin Lorentz
feaa02ab6d
Add docstring to supybot.utils.time.iana_timezone
2021-11-08 23:20:28 +01:00
Valentin Lorentz
12c526bc1c
Update default user agent to mention Limnoria
2021-11-08 23:20:13 +01:00
Valentin Lorentz
abe59022b4
irclib: Remove broken + useless code
...
This function does not exist anymore
2021-11-08 21:59:05 +01:00
Valentin Lorentz
8b26b675ba
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.
2021-11-08 21:46:48 +01:00
Valentin Lorentz
1f618b9773
log: Fix support of 'supybot-test --clean'
...
Broken in dff394df64
.
2021-10-18 10:08:41 +02:00
Valentin Lorentz
63eb6672ea
Revert generic 'The Limnoria Contributors' in copyright notices
...
This commit reverts db7ef3f025
(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 db7ef3f025
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.
2021-10-17 09:57:55 +02:00
Valentin Lorentz
dff394df64
log: Add support for rotating messages.log.
2021-10-14 23:52:16 +02:00
Valentin Lorentz
666acd9f1f
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.
2021-10-14 23:47:32 +02:00
Valentin Lorentz
ebaa346619
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.
2021-09-22 21:48:59 +02:00
Valentin Lorentz
de277edb42
irclib: Make requestCapabilities a public method
...
So it can be used by plugins like Sigyn.
2021-09-22 18:54:47 +02:00
Valentin Lorentz
dc79ab193a
Update capitalization of my Github username
2021-09-14 20:30:47 +02:00
Valentin Lorentz
76bd1c89bf
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)
2021-09-13 18:45:49 +02:00
Valentin Lorentz
ee9f0dc1bf
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
2021-09-03 20:15:18 +02:00
Valentin Lorentz
74073b2736
irclib: Log the server's error message on SASL failure.
2021-09-01 18:25:54 +02:00
Valentin Lorentz
d593f84a66
Socket: disable charset heuristics when the server advertizes UTF8ONLY.
2021-08-27 19:03:18 +02:00
Valentin Lorentz
db05081ff6
commands: fix _checkUrl
2021-08-25 23:28:25 +02:00
Valentin Lorentz
0131cd0691
commands: Add converters for IRIs
...
Since the 'url' and 'httpUrl' converters no longer support them...
2021-08-25 21:55:31 +02:00
Valentin Lorentz
be88530fa4
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.
2021-08-25 21:54:55 +02:00
Valentin Lorentz
62db3a92fc
callbacks: Print unexpected commands
2021-08-25 21:29:19 +02:00
James Lu
09392478e6
getUrlFd: chain the original exception so that plugins can handle them further ( #1487 )
2021-08-01 13:35:45 -07:00