Valentin Lorentz
2f4644f7b3
Config: Prevent accidental leak of private values on public channels.
2019-08-25 10:24:57 +02:00
Valentin Lorentz
633eea0730
Config: Fix test failure when another test set this value before.
2019-08-24 23:35:46 +02:00
Valentin Lorentz
c1ae3f5c81
all plugins: Use msg.channel instead of msg.args[0] + give network name to self.registryValue.
2019-08-24 23:35:01 +02:00
Valentin Lorentz
9326331c60
Merge branch 'ircmsg-channel' into netconf-and-ircmsgs-channel
2019-08-24 15:39:17 +02:00
Valentin Lorentz
8bb31a54e7
Strip statusmsg chars in core to determine the actual channel.
...
Use msg.channel if relevant, otherwise strip them locally.
2019-08-24 14:52:59 +02:00
Valentin Lorentz
4f024cb0b2
Add network-specific config values.
2019-08-15 12:22:43 +02:00
Valentin Lorentz
696254ff1b
Use irc.isChannel instead of ircutils.isChannel when possible.
...
It's aware of the network's 'chantypes'.
2019-08-04 21:52:40 +02:00
Valentin Lorentz
dba0ae3771
Google: update scraping regexp
2019-07-22 21:39:41 +02:00
Valentin Lorentz
540b827213
Google: Update for Google's new HTML layout.
...
Closes GH-1365
2019-05-28 19:37:52 +02:00
James Lu
f0e75679fe
PluginDownloader: update my repo name
2019-03-19 21:35:03 -07:00
Valentin Lorentz
6b213f0686
Later: Add option senderHostname.
2019-03-06 15:29:09 +01:00
Gordon Shumway
61f03ff0ed
Add oddluck's repo
2019-02-14 20:55:10 +01:00
Valentin Lorentz
0f82f89eec
Web: Fix encoding issue on Python 2. Closes GH-1359.
2019-02-01 21:02:57 +01:00
Valentin Lorentz
fcf30a5601
Fix FutureWarning related to nested sets.
...
See https://bugs.python.org/issue30349
2018-12-29 23:36:57 +01:00
Valentin Lorentz
2c7c83b07d
Success: Declare __slots__
...
Required since 1ac7812d7a
.
2018-12-19 09:38:07 +01:00
James Lu
c7716de887
RSS: add a quick test for a malformed feed that has no entries
...
(Only both of these combined gives new output so far.)
2018-10-14 12:42:15 -07:00
James Lu
2fdc433cb3
RSS: show soft errors set by feedparser when no entries are found
...
Hopefully this will ease debugging - e.g. a bad TLS certificate will now show
"Error: Couldn't get RSS feed. Parser error: <urlopen error
[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:720)>"
instead of only a generic message.
2018-10-14 12:41:22 -07:00
James Lu
9ba21a1cad
Unix: fix a typo in sysuname & sysuptime's command descriptions
...
runnning -> running
2018-09-30 18:03:29 -07:00
Valentin Lorentz
be36591760
Fix test.
2018-09-11 07:33:16 +02:00
Valentin Lorentz
1f400e4020
Fix Python 3.7 support, and run Travis tests on 3.7.
...
Travis' "nightly" python is actually older than 3.7.0 (3.7.0a4+)
2018-09-10 00:57:04 +02:00
Laurent Kislaire
fb3c8978b5
Small fix on french translation ( #1344 )
2018-08-31 17:50:14 -07:00
James Lu
2242aadde9
Web: add trailing space for snarferPrefix at runtime
...
Before, the trailing space in the default snarferPrefix value disappears after a reload because spaces at the end of config lines are ignored.
2018-07-22 04:01:21 +00:00
Valentin Lorentz
00b8b6b51e
Later: Add support for hostmasks.
2018-07-05 19:48:43 +02:00
Valentin Lorentz
50c41f5862
Fix previous commit on python 2.
2018-06-27 11:10:14 +02:00
Valentin Lorentz
1840b94453
Later: load the db with utf8 encoding (the default for AtomicFile).
2018-06-27 00:54:58 +02:00
Valentin Lorentz
01e4427057
Config: Fix previous commit.
2018-05-29 22:46:56 +02:00
Valentin Lorentz
c2b6305c46
Config: Support arbitrarily many channels for '@config channel'.
2018-05-29 22:17:28 +02:00
Valentin Lorentz
2d084f4deb
Math: Convert the output of factorial() to a float.
2018-05-10 06:20:55 +02:00
Valentin Lorentz
cd479717b8
Web: Add supybot.plugins.snarfMultipleUrls. Also, fix Web's test cases.
2018-04-14 21:50:32 +02:00
Tasos Sahanidis
b900a369a4
RSS: Fix feeds with missing description or title
...
An AttributeError would be raised when a blacklist or a whitelist
would be set on feeds that miss either a title or a description.
2018-03-13 23:50:47 +01:00
Valentin Lorentz
e2180a1e08
Add variable supybot.plugins.Web.snarferPrefix.
2018-03-02 01:26:00 +01:00
Valentin Lorentz
9c1d46d151
Add channel-specific config variables that are only settable by the owner.
2018-02-06 14:20:37 +01:00
Valentin Lorentz
030ce5e6d4
Fix previous commit.
2018-02-01 22:37:24 +01:00
James Lu
55723c2161
Services: fix rejoin-on-kickban with atheme 7.x
...
- Adjust _chanRe to only match channels, as atheme also puts the target nick in bold
- Look for "unbanned <botnick>" messages in ChanServ notices (after stripping formatting)
This likely fixes GH-166. atheme has been using this format since at least 2005[1],
so it's possible that Supybot's rejoin-on-ban had never worked with it.
[1]: 4017c0da85 (diff-ba2bdc02ba7b29fd7e4931cafe63baa0R218)
2018-01-27 13:22:21 -08:00
James Lu
add3ceb4e7
Services: do not send the bot's nick in ChanServ commands
...
On Atheme, Anope, and oftc-ircservices, /cs unban, invite, op, and voice
implicitly assume the caller if no nick is given. However, certain combinations
such as /cs invite *with* a nick are not supported on atheme per
https://github.com/atheme/atheme/issues/568 , and cause rejoin-on-kick to +i
channels to fail.
This fixes one part of GH-1118.
2018-01-27 13:22:15 -08:00
James Lu
eb1cb9bd76
Services: don't mangle the case of NickServ notices in logging
...
This might be confusing if you're dealing with password changes, etc.
2018-01-27 12:33:36 -08:00
Valentin Lorentz
5daaa14825
NickAuth: Fix NameError caused by e732931688
.
2018-01-25 14:09:19 +01:00
Nicolas Coevoet
e732931688
Modified NickAuth to match the new WHOX
2018-01-23 19:37:19 +01:00
Valentin Lorentz
d656db454d
User: if '@hostmask add' detects a conflict and the caller is the owner, tell them who the conflicting user is.
2017-12-30 18:47:09 +01:00
Valentin Lorentz
bd39debb48
User: Simplify owner-checking logic, and fix crash when @hostmask remove is called by an unregistered user.
2017-12-30 17:12:35 +01:00
Valentin Lorentz
8cfb841f3b
BadWords: better tests.
2017-12-26 05:46:46 +01:00
James Lu
289c894dc5
Services: log all messages from NickServ to info
...
Closes GH-1016.
2017-12-10 11:03:30 -08:00
Valentin Lorentz
3ab226c129
RSS: Only defer feed loading at plugin load while the bot is starting.
...
Defering it if the plugin is (re)loaded while already running is useless.
Closes GH-922.
2017-12-10 09:39:20 +01:00
James Lu
bdd0adfef5
RSS: add missing configuration help for feed URL options
...
This fixes confusing "That configuration group exists, but seems to have no help." errors on the URL
options for feeds, when these options are actually relevant and settable.
2017-12-09 23:03:42 -08:00
James Lu
c78aff24e8
Hashes: fix copyright year format
...
[skip ci]
2017-11-09 09:08:41 -08:00
James Lu
fffe1efa9b
Hashes: remove duplicate check for hashlib.algorithms_available
...
This code is never wrap()'ed if the attribute is unavailable, so it isn't necessary to check for it in runtime twice.
2017-11-09 09:05:58 -08:00
James Lu
287610b776
Hashes: simplify test suites
...
- Use hasattr instead of assigning the import availability to a variable
- Use a simple if statement instead of redefining skipIf
2017-11-09 09:04:21 -08:00
James Lu
41830a46aa
String, Hashes: remove links describing hashing methods
...
These are either dead or don't accurately describe the state of these methods
today. For example, the SHA1 site still describes SHA-1 and MD5 as "trusted"
despite widely reported collision attacks already being possible[1][2][3].
[1]: https://www.computerworld.com/article/3173616/security/the-sha1-hash-function-is-now-completely-unsafe.html
[2]: https://arstechnica.com/information-technology/2017/02/at-deaths-door-for-years-widely-used-sha1-function-is-now-dead/
[3]: https://techcrunch.com/2017/02/23/security-researchers-announce-first-practical-sha-1-collision-attack/
2017-11-09 09:01:29 -08:00
Ken Spencer
b84ce3e43f
Add hashes plugin ( #1315 )
...
* add plugin Hashes, containing hash and encryption related commands
* Hashes: make the default plugin Hashes when the commands are used by themselves
* Hashes: add supybot.conf because of registerDefaultPlugin
* Hashes: import registry to help with registerDefaultPlugin
* Hashes: add in nicks for test
* actually use hashlib instead of crypt, also s/'String'/'Hashes'
* Hashes/test: add group in for testing
* Hashes: add in changes per @GLolol
* Hashes: remove xor
* Hashes: make plugins = ('Hashes',) instead of ('Hashes') because python is weird
* Hashes: fix sha512 calling sha256, use utils.str.format on 'algorithms'
* Hashes: just use the variable instead of substitution per @GLolol
* Hashes: follow through with not using substitution
* Hashes: disable the 'algorithms' and 'mkhash' commands if the underlying 'hashlib.algorithms_available' isn't available
* Hashes: don't use registerDefaultPlugin its for core plugins
* Hashes: also somehow I didn't change the copyright
* Hashes/test: fix copyright in file
2017-11-09 17:56:43 +01:00
James Lu
fd59612002
Time: tweak 'ddate missing' error message
...
Fix grammar and use a consistent URL format.
2017-10-29 16:24:45 -07:00