Valentin Lorentz
b8dce0d7db
Time: Skip new assertions on Python 3.6 so testSeconds passes
2022-08-02 13:16:21 +02:00
Valentin Lorentz
8f837a676d
Time: Add support for omitting space in @seconds
2022-08-02 13:01:08 +02:00
Valentin Lorentz
cd0f9f2628
Polls: Make nick matching case-insensitive
...
This prevents the same nick from voting twice by changing
the capitalization
2022-07-31 09:04:27 +02:00
Valentin Lorentz
28c52c2818
Poll: Add @poll list command
2022-07-30 21:25:47 +02:00
Valentin Lorentz
2afa3c49a1
Fediverse: run black
2022-07-30 21:23:10 +02:00
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
796f717d09
requirements.txt: Classify and provide a rationale for each dependency
2022-07-20 18:31:24 +02:00
Valentin Lorentz
7b9a944603
Remove dependency on 'mock'
...
It is a backport of unittest.mock for Python versions before 3.3,
which we do not support anymore.
2022-07-20 18:25:27 +02:00
Valentin Lorentz
461c091b94
Fediverse: Hide channel actor on PeerTube
2022-07-20 18:15:51 +02:00
Valentin Lorentz
34f8842273
Fediverse: Add support for descriptions with line breaks
2022-07-20 18:10:14 +02:00
Valentin Lorentz
2df2bc28d0
Fediverse: Add support for videos
2022-07-20 17:57:29 +02:00
Valentin Lorentz
d67fb2a8b2
Autocomplete, Fediverse, Geography, Poll: Run Black
2022-07-20 17:53:09 +02:00
pratyushd
5d8f59bf80
add conditional to respond acc to kick being true or not ( #1512 )
...
Co-authored-by: Pratyush Desai <pratyush.desai@liberta.casa>
2022-07-13 21:02:28 +02:00
964acac058
for #1490 extend usage examples
2022-07-13 08:56:30 +02:00
James Lu
65d88440c2
supybot-plugin-doc: default to RST
...
None of the current maintainers are sure what stx is??
2022-07-09 14:24:13 -07:00
James Lu
95f6b1698e
Aka, Alias: replace obsolete LastFM example
2022-07-09 14:15:57 -07:00
James Lu
988fe08945
.gitignore: add doc-* paths from supybot-plugin-doc
2022-07-09 14:15:33 -07: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
3ecb37de10
test_callbacks: Add PluginRegexpTestCase.testReply to check basic behavior
2022-07-06 22:05:30 +02:00
Valentin Lorentz
6a943b8342
test_callbacks: Fix PluginRegexpTestCase to actually check regexp callbacks
2022-07-06 22:04:33 +02:00
James Lu
d00113e92d
PluginDownloader: replace automatic 2to3 step with a simple warning
...
The previous heuristic runs into false positives when imports are merged in __init__.py
More broadly though, it's unlikely automatic 2to3 is particularly useful in 2022 - plugins that were written ~10 years ago are unlikely to work even if syntax errors are fixed.
2022-06-23 22:31:17 +02:00
James Lu
8ccf2c7175
PluginDownloader: drop legacy Python 2-only repos
...
Most of these haven't been updated in ~10 years and are unlikely to work out of the box today (obsolete web APIs, etc.)
2022-06-23 22:31:17 +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
SamStrongTalks
d04e8161d5
Add ability to exclude channel from self censoring ( #1508 )
2022-06-17 16:44:12 +02:00
Valentin Lorentz
6379a9d43a
supybot-reset-password: Update help string to match the man page
2022-06-17 09:11:35 +02:00
Valentin Lorentz
a65960bfdf
Add missing man page for supybot-reset-password.
2022-06-17 09:09:20 +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
1d4a43ed1b
AutoMode: Fix crash on servers without ISUPPORT PREFIX
2022-04-16 12:05:43 +02:00
Valentin Lorentz
94c7c7dfa3
supybot-plugin-create: Remove fallback for missing supybot.i18n
...
It is unlikely new plugins will be used on stock Supybot or Gribble.
2022-04-08 13:02: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
eb6fc932d9
Web: Fix matching for youtube
2022-04-04 23:29:47 +02:00
Valentin Lorentz
21ea999e3c
Time: Add support for UTC offsets as tztime arguments.
2022-04-04 22:07:06 +02:00
Valentin Lorentz
4f3d6fc39f
Geograpy: Fix formatting of negative non-integral offsets (and improve others)
2022-04-04 22:06:19 +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
76f7eced5d
Fediverse: Update tests broken by previous commit
2022-02-19 21:18:24 +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
4e60d8812d
Misc: Make @last handle --regexp in a single process for all messages
...
Spawning one process for each message was a little silly, considering
there can be thousands of messages.
Plus, some instances do reach the timeout after running for a few weeks,
so we really need to fix this.
Ideally, `regexp_wrapper` should also be removed from other plugins
(Todo, Notes, ...) as they have the same issues, but this will do for
now.
2022-02-16 21:27:28 +01:00