Commit Graph

3520 Commits

Author SHA1 Message Date
Valentin Lorentz 9d084e2e70 Allow network-specific username and ident. Closes GH-589. 2014-05-08 08:33:01 +00:00
Valentin Lorentz 9210aa1a33 utils.web.getUrl: add the 'timeout' argument (and fix the doc of getUrlFd). 2014-04-26 12:43:45 +00:00
Valentin Lorentz 5461785ee2 cdb: Remove debug output. 2014-04-19 10:18:34 +02:00
Valentin Lorentz 28536f0528 Fix utils.gen.safeEval to work with instances of ast.NameConstant (introduced in Pythn 3.4). 2014-04-19 10:17:14 +02:00
Valentin Lorentz 65aed8f7ed Fix previous commit. 2014-04-18 07:16:02 +00:00
Valentin Lorentz cab4cb5059 Copy the reply_env when copying an IrcMsg object. 2014-04-18 07:08:14 +00:00
Valentin Lorentz 30cc4804eb Add 'reply_env' attribute to IrcMsg. 2014-04-18 06:53:52 +00:00
Valentin Lorentz 90a1208e9e httpserver: Fix crash if supybot.servers.http.favicon has not been set. 2014-04-15 18:39:44 +00:00
Valentin Lorentz 5f306a8c74 Fix neutral pronouns. 2014-04-11 21:56:42 +00:00
nyuszika7h 822e6449f9 irclib: Add support for additional SASL numerics 2014-04-10 15:03:20 +02:00
nyuszika7h 6be8204805 irclib: Remove some useless SASL debug messages 2014-04-10 14:57:20 +02:00
nyuszika7h 14e51f6193 irclib: Make SASL messages easier to understand
The logs are meant to be understandable by humans, and not everyone
might know AUTHENTICATE is a SASL command.

[ci skip]
2014-04-10 14:53:17 +02:00
Valentin Lorentz f569af6230 remove generated src/version.py. 2014-04-05 23:08:33 +02:00
Valentin Lorentz d89e4b5635 Fix previous merge. 2014-04-05 22:56:40 +02:00
Valentin Lorentz 8885a813c5 Merge remote-tracking branch 'supybot/master' into merge-supybot
Conflicts:
	INSTALL
	plugins/Misc/plugin.py
	plugins/Seen/test.py
	setup.py
	src/commands.py
	src/version.py
2014-04-05 22:54:51 +02:00
Valentin Lorentz 4d9a8a1408 httpserver: Open icon in binary mode. 2014-04-02 17:34:04 +00:00
Valentin Lorentz 048c1e77f4 httpserver: Fix favicon handling. 2014-04-02 17:18:45 +00:00
Sergio Conde ad3deb7c21 Fix AttributeError exception in log.py with python3.4 2014-04-01 20:16:20 +02:00
Valentin Lorentz 0da8ab759e Fix doc (again). 2014-03-21 15:34:14 +00:00
Valentin Lorentz 5f8e45aaa8 Fix doc of NestedCommandsIrcProxy.reply. 2014-03-21 15:31:48 +00:00
Valentin Lorentz bfb305e2b8 Utilities: Use number comparison for integers and floats in @sort. 2014-03-20 21:17:18 +00:00
Valentin Lorentz c6cb4fa394 i18n: Prevent untranslated strings from having empty translations 2014-03-10 16:26:26 +01:00
Valentin Lorentz 77e6de6bba Fix errors detected by PyLint. 2014-03-05 14:14:36 +01:00
Valentin Lorentz 2601f33b19 src/conf.py: Remove unicode characters from the source code. 2014-03-04 11:29:22 +01:00
Valentin Lorentz b4ad8c228d Remove invisible character in src/test.py. 2014-03-02 00:43:58 +01:00
Valentin Lorentz dcb25db6e5 Add support for SRV records in domain name resolution. 2014-03-01 09:22:14 +01:00
Valentin Lorentz 108b0de0d1 Add support of IP-binding in non-IRC connections. 2014-03-01 09:06:21 +01:00
Valentin Lorentz 59ae6f987d ircdb: Honor ignoreDefaultAllow for unknown users too. 2014-02-27 19:05:19 +00:00
Valentin Lorentz 8fd834beb7 Fix precedence of commands by removing Utilities from the list of important plugins. 2014-02-22 00:03:58 +00:00
Valentin Lorentz d1aa36126d Add Utilities as a default plugin. 2014-02-21 23:55:41 +00:00
Valentin Lorentz 5d301b653f Merge remote-tracking branch 'origin/speed-up-2to3' into testing
Conflicts:
	locales/fr.po
	plugins/Misc/plugin.py
	sandbox/check_trans.py
	src/i18n.py
2014-02-02 22:28:19 +01:00
Valentin Lorentz 4fe74ed397 Merge branch 'aka-sqlite3' into speed-up-2to3 2014-02-02 22:15:43 +01:00
Valentin Lorentz 0d4784cf4a Fix compatibility with Python 2.6 (does not support the set syntax). 2014-01-26 21:49:28 +01:00
Valentin Lorentz aea86d432f Fix previous commit. 2014-01-26 21:34:24 +01:00
Valentin Lorentz c872cd793f Fix compatibility with Pypy (does not support __closure__ attribute for functions). 2014-01-26 21:19:28 +01:00
Valentin Lorentz a7f750d273 Fix compatibility with Python 2.6 (does not support the set syntax). 2014-01-26 21:14:21 +01:00
Valentin Lorentz eaed281de7 Fix compatibility with Python 2.6 (does not support the set syntax). 2014-01-26 21:13:06 +01:00
Valentin Lorentz 121991eff9 Fix case of i18n.InternationalizedFunction. 2014-01-26 20:45:28 +01:00
Valentin Lorentz 9b365d1ed8 Fix case of i18n.InternationalizedString. 2014-01-26 20:45:28 +01:00
Valentin Lorentz f3e292d518 Fix memory leak in i18n by using weak references to plugin classes and methods. 2014-01-26 20:45:28 +01:00
Valentin Lorentz 489ec1b065 i18n: Move the pot files parsing to a separate function. 2014-01-26 20:45:27 +01:00
Valentin Lorentz 6a8b7889ea Remove unnecessary call to i18n.reloadLocalesIfRequired. 2014-01-26 20:45:27 +01:00
Valentin Lorentz 3e35113e02 Fix internationalization of docstrings of wrap()ed commands. 2014-01-26 20:45:27 +01:00
Valentin Lorentz e1f9d68870 Switch comments of callbacks.PluginRegexp's attributes to docstrings (for Sphinx). 2014-01-26 20:45:27 +01:00
Valentin Lorentz a5e06e1b57 Update documentation of ircdb.checkCapability (used in the Sphinx doc). 2014-01-26 20:45:27 +01:00
Valentin Lorentz 8d1201aa43 Fix case of i18n.InternationalizedFunction. 2014-01-22 11:04:08 +01:00
Valentin Lorentz 5c08281543 Fix case of i18n.InternationalizedString. 2014-01-22 10:54:40 +01:00
Valentin Lorentz 974a64de44 Fix memory leak in i18n by using weak references to plugin classes and methods. 2014-01-22 10:51:01 +01:00
Valentin Lorentz 80aa419035 Add file minisix.py (forgot to add it in previous commits). 2014-01-21 22:41:50 +01:00
Valentin Lorentz 1874440cc8 i18n: Move the pot files parsing to a separate function. 2014-01-21 22:39:48 +01:00
Valentin Lorentz 35c7b52e14 Remove unnecessary call to i18n.reloadLocalesIfRequired. 2014-01-21 16:36:45 +01:00
Valentin Lorentz 3af1e3f42d Fix internationalization of docstrings of wrap()ed commands. 2014-01-21 16:33:35 +01:00
Valentin Lorentz f27484d2bb Switch comments of callbacks.PluginRegexp's attributes to docstrings (for Sphinx). 2014-01-21 13:43:52 +01:00
Valentin Lorentz 06fdaa792f Continue accelerating the 2to3 step (remove fix_map). 2014-01-21 10:57:38 +01:00
Valentin Lorentz 1fbdedc7e0 Continue accelerating the 2to3 step (remove fix_funcattrs, fix_itertools, and fix_itertools_imports). 2014-01-21 10:50:55 +01:00
Valentin Lorentz 35a62b4e77 Continue accelerating the 2to3 step (remove fix_ws_comma, fix_xreadlines, and fix_zip). 2014-01-21 10:40:18 +01:00
Valentin Lorentz ca419f6485 Continue accelerating the 2to3 step (remove fix_reduce, fix_renames, fix_repr, fix_set_literal, fix_standarderror, fix_sys_exc, fix_throw, and fix_tuple_params). 2014-01-20 16:04:53 +01:00
Valentin Lorentz bb7db3ab21 Continue accelerating the 2to3 step (remove fix_except). 2014-01-20 15:49:15 +01:00
Valentin Lorentz 2fda69b4d6 Continue accelerating the 2to3 step (remove fix_raise). 2014-01-20 15:43:55 +01:00
Valentin Lorentz c1c23f66f4 Continue accelerating the 2to3 step (remove fix_print). 2014-01-20 15:31:09 +01:00
Valentin Lorentz 529b8f8d99 Continue accelerating the 2to3 step (remove fix_nonzero, fix_operator, and fix_paren). 2014-01-20 15:19:06 +01:00
Valentin Lorentz d1649a44ac Continue accelerating the 2to3 step (remove fix_idioms, fix_imports2, fix_input, fix_intern, fix_isinstance, fix_ne, fix_next, and fix_raw_input). 2014-01-20 15:13:01 +01:00
Valentin Lorentz 4652c9ce51 Start accelerating the 2to3 step (remove fix_apply, fix_buffer, fix_callable, fix_exec, fix_execfile, fix_exitfunc, fix_filter, fix_funcattrs, fix_future, fix_getcwdu, and fix_has_key). 2014-01-20 14:49:47 +01:00
Valentin Lorentz 566e841977 Update documentation of ircdb.checkCapability (used in the Sphinx doc). 2014-01-20 11:35:28 +01:00
Valentin Lorentz 26dbe5ce81 Merge branch 'master' into testing 2014-01-07 09:37:13 +00:00
Valentin Lorentz caba0d388e Merge pull request #536 from ddan39/addshortopts
add short options to getopts. single letter options will work with both - or --
2014-01-07 01:36:05 -08:00
Dan 54196be509 add short options to getopts. single letter options will work with both - or -- 2014-01-06 23:03:25 +01:00
Valentin Lorentz 5694f2499d Merge pull request #535 from bnrubin/master
log: Add support for Logging's 'extra' keyword argument
2014-01-06 07:54:11 -08:00
Benjamin Rubin 1093cfb01f log: Add support for Logging's 'extra' keyword argument 2014-01-05 17:15:00 -05:00
Valentin Lorentz b44a08d2bd Fix previous merge (again). 2014-01-03 17:48:30 +00:00
Valentin Lorentz 4a9d3ccd3e Fix previous merge. 2014-01-03 17:15:32 +00:00
nyuszika7h 0934f1075b Merge branch 'testing' into fix/fd-leak 2014-01-03 17:45:53 +01:00
nyuszika7h 0e480b4e52 Fix file descriptor leaks 2014-01-03 17:44:01 +01:00
Valentin Lorentz 38d78a4213 httpserver: add method 'doHook' to callbacks. 2014-01-02 17:20:15 +00:00
Valentin Lorentz 233571e4b5 Add arguments ignoreChannelOp and ignoreDefaultAllow to ircdb.checkCapability. 2013-12-27 15:04:32 +00:00
Valentin Lorentz 0ecdb87aef Fix crash in sending queued messages if SocketDriver.irc is None. 2013-12-27 13:15:45 +00:00
Valentin Lorentz 89fb4fb3b2 Fix stack frames display for objects without __dict__ attribute. 2013-12-25 16:08:07 +00:00
Valentin Lorentz 84cad71cf5 Fix inspection of the stack if the 'self' object has no __dict__. 2013-12-15 19:30:20 +00:00
Valentin Lorentz 01278dc56c Aka: Fix 'factorial-complexity' recursion and command overriding. 2013-12-11 16:01:01 +00:00
Valentin Lorentz c774013e1f Socket: Only call self.irc.feedMsg if self.irc is not None (ie. a reconnect is not in progress). 2013-12-05 12:37:00 +00:00
Valentin Lorentz f894983b55 Add inspection of self.* in debug locals dump. 2013-12-05 12:35:56 +00:00
Valentin Lorentz 583b1baf64 Socket: Fix commit 4c24f30. 2013-12-03 05:44:50 +00:00
Valentin Lorentz 9a83b741ea Socket: Only display the missing cert file warning if a cert file path is given. 2013-11-27 16:44:15 +00:00
Valentin Lorentz 4c24f30504 Socket: Check if certertificate file exists before using it. 2013-11-27 07:26:09 +00:00
Valentin Lorentz b673cdb037 Merge branch 'testing' of github.com:ProgVal/Limnoria into testing 2013-11-26 16:59:05 +01:00
Valentin Lorentz aea77d64e7 callbacks.py: Pass a reference to the plugin to pre-command callbacks. 2013-11-26 16:57:33 +01:00
Valentin Lorentz 42b8a0676c utils/web.py: Attempt to fix handling of RSS feeds using broken entity references. 2013-11-26 15:15:07 +00:00
Valentin Lorentz ff5d83e7e6 ircutils: Add 'I' to _plusRequireArguments and _minusRequireArguments. 2013-11-25 20:44:52 +00:00
Valentin Lorentz e65a722b2f Add certfp support. Closes GH-468. 2013-11-10 11:45:01 +01:00
Valentin Lorentz 9d2c43d2f4 Socket: Trigger reconnect if socket file number has been set to -1. 2013-11-09 15:47:36 +00:00
Valentin Lorentz 0876bb345c Fix import of supybot.gpg if gnupg is not available. 2013-11-02 06:17:51 +00:00
Valentin Lorentz 3f150e12e7 gpg: Disable use of incompatible library 'gnupg'. 2013-10-29 17:09:41 +01:00
James McCoy bf48d521f2 Use generic setuptools instead of requiring distribute
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2013-10-10 20:37:12 -04:00
James McCoy 56a6799deb commands: Consolidate state.channel checks into getChannel
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2013-10-10 18:54:50 -04:00
Valentin Lorentz 677f7fdd6f irclib: Prevent crash if 324 or 329 is not received after any other post-join messages. 2013-10-10 14:10:06 +00:00
Valentin Lorentz 359d3c633d registry: Make subvalues inherit privacy. Closes GH-519. 2013-10-06 14:26:03 +00:00
Valentin Lorentz 657b76d174 Fix merge. 2013-09-22 20:29:52 +02:00
Valentin Lorentz 990b911c06 Merge remote-tracking branch 'supybot/master' into testing
Conflicts:
	src/callbacks.py
	src/ircdb.py
2013-09-22 20:16:20 +02:00
James McCoy 6361b1e856 ircdb: Deduplicate hostmasks in IrcUser.addAuth
If addAuth is called with a hostmask that already exists (exactly, not
just equivalent patterns) in self.auth, remove the entry for the old
authentication.  This essentially updates the timeout for the hostmask.

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2013-09-22 11:13:52 -04:00
Valentin Lorentz 4e2962b39e Fix error when writing hostmask-collision error message. 2013-09-17 13:32:52 +00:00
James McCoy 4bc549c1ed Prevent exception when replying with a genericNoCapability error
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2013-08-31 23:04:38 -04:00
Valentin Lorentz 01a6ed6540 Fix use of rsplit for IPv6 addresses.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2013-08-26 21:37:12 -04:00
Valentin Lorentz 40675ffdfa Merge remote-tracking branch 'supybot/master' into testing
Conflicts:
	plugins/Admin/plugin.py
	plugins/BadWords/config.py
	plugins/Filter/plugin.py
	plugins/Google/plugin.py
	plugins/Math/plugin.py
	plugins/Misc/plugin.py
	plugins/Note/plugin.py
	plugins/RSS/plugin.py
	plugins/Seen/test.py
	plugins/ShrinkUrl/config.py
	plugins/ShrinkUrl/plugin.py
	plugins/ShrinkUrl/test.py
	plugins/Status/plugin.py
	plugins/String/config.py
	plugins/String/plugin.py
	plugins/Time/plugin.py
	plugins/Todo/plugin.py
	plugins/Web/plugin.py
	plugins/__init__.py
	scripts/supybot-botchk
	setup.py
	src/__init__.py
	src/callbacks.py
	src/commands.py
	src/conf.py
	src/drivers/Socket.py
	src/ircdb.py
	src/irclib.py
	src/ircutils.py
	src/questions.py
	src/registry.py
	src/schedule.py
	src/test.py
	src/utils/file.py
	src/utils/gen.py
	src/utils/net.py
	src/utils/web.py
	src/world.py
2013-08-24 11:28:29 +02:00
James McCoy ea7f1f8419 Socket: Match the expected API of reconnect
driver.reconnect(wait=True) should flag a driver to reconnect, but not
immediately.  The Socket driver lost its handling of this flag in
8730832e.

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2013-08-24 00:29:16 -04:00
James McCoy e7d0bfd2d0 commands: Handle OverflowError in _int
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2013-08-23 23:36:44 -04:00
James McCoy 333067c151 Provide a default help message for commands without help.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2013-08-23 22:57:13 -04:00
James McCoy e421722960 Fix crash if a custom error message is provided to somethingWithoutSpaces
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2013-08-23 22:06:07 -04:00
Valentin Lorentz 960e1da61c commands.py: Fix error message of getSomethingWithoutSpaces.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2013-08-23 00:29:11 -04:00
James McCoy 5b329df6f0 Socket: Try all resolved addresses before scheduling a reconnect
Instead of assuming the first address returned from getaddrinfo can be
reached, try each one in turn until a connection is established.

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2013-08-22 23:43:09 -04:00
James McCoy 88e4f73777 getSocket: Use returned family to create the socket
The existing code was parsing the passed in host to determine what type
of socket family to create.  getaddrinfo already provides this for us,
so there's no need to perform our own, potentially buggy, parsing.

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2013-08-22 23:40:28 -04:00
Valentin Lorentz e3acc03fd6 Another fix for b46a0dd6a2. 2013-08-17 19:27:52 +02:00
Valentin Lorentz f3ecc33678 Fix commit b46a0dd (breaks tests for Alias and Aka). 2013-08-17 17:08:55 +02:00
Kill Your TV b46a0dd6a2 Unicode fixes for python 2.x
These changes have been tested with Python 3.2.3 and Python 2.7.5.
2013-08-17 14:12:10 +00:00
Valentin Lorentz dd37f8dd3f Socket: Forward DNS queries via the socks proxy (if any). 2013-08-17 15:47:39 +02:00
Valentin Lorentz b375e7dfb2 commands.py: Fix crash if a custom error message is provided to somethingWithoutSpaces (bug introduced in 29dc1438a0). 2013-08-15 22:25:36 +02:00
Valentin Lorentz 8d7b06efd1 utils.str.format: Replace %u with '' instead of '<>' if URL is empty. 2013-08-13 19:19:54 +00:00
Valentin Lorentz 3a5c4c3ddd Add class attribute callbacks.Commands.pre_command_callbacks. 2013-08-12 21:48:56 +02:00
Valentin Lorentz ebde072f39 Add explicit/helpful error message about how to solve the multiprocessing 'Permission denied' issue. 2013-08-12 19:08:31 +02:00
Valentin Lorentz 1e050d7fa8 utils/str.py: Use already existing function utils.gen.timeElapsed instead of redundant one. 2013-08-11 12:08:01 +02:00
Valentin Lorentz 8b4b45ecf0 utils/str.py: Add the %T (Time delta) argument type. 2013-08-11 12:03:41 +02:00
Valentin Lorentz 1ee8bc3480 Fix bug that caused commands like '@google google google google translate' to be valid. Closes GH-19. 2013-08-10 15:22:47 +02:00
Valentin Lorentz c23f25545f Fix core tests for Python 3 (actually imported + fixes). 2013-08-10 15:18:04 +02:00
Valentin Lorentz 536ec37037 commands.py: raise the exception instead of returning is if --disable-multiprocessing is given. 2013-08-09 17:48:53 +02:00
Valentin Lorentz 573d4a0158 Silence errors in Socket driver if connecting failed (name resolution, ...). 2013-08-09 12:59:42 +02:00
Valentin Lorentz 9288b16cd2 Fix 918b8a3c01 on Windows. 2013-08-09 12:21:24 +02:00
Valentin Lorentz 918b8a3c01 commands.py: Add heap_size argument to process(). 2013-08-09 12:16:24 +02:00
Valentin Lorentz 6a4750015e schedule: Add the 'count' argument. 2013-08-04 09:16:07 +02:00
Valentin Lorentz 7c30936ee1 Merge branch 'aka' into testing 2013-08-01 10:48:42 +02:00
Valentin Lorentz b4eb4bfd65 Remove randomly failing assertions (race condition with environnements cleaning?) 2013-07-28 16:56:22 +02:00
Valentin Lorentz eb15e1934c Fix typo in conf.py. 2013-07-26 09:23:57 +00:00
Valentin Lorentz 329187c78c Add sqlalchemy as a valid database backend. 2013-07-23 20:58:43 +02:00
Valentin Lorentz 29dc1438a0 commands.py: Fix error message of getSomethingWithoutSpaces. 2013-07-16 20:20:08 +00:00
Valentin Lorentz 21144f7c9c Don't send JOIN on connection if there is no channels to join. 2013-07-14 09:44:34 +02:00
Valentin Lorentz 38bab185a9 Remove Python2.4-specific code. 2013-07-13 17:28:21 +02:00
Valentin Lorentz 9bfec720f5 Fix traceback if bot is kicked immediately after joining a channel. 2013-07-13 12:01:53 +02:00
Valentin Lorentz 4a265a6ce9 Enhance representation of InsensitivePreservingDict objects. 2013-07-13 11:20:02 +02:00
Valentin Lorentz f22f0bb4b6 Make log.firewall display the callback name in any case. 2013-07-11 10:07:11 +02:00
Valentin Lorentz 771b739af7 utils.web.getEncoding: use <meta charset /> if available. 2013-07-09 12:40:42 +00:00
Valentin Lorentz b4402b28ed utils.web: Rename get_encoding to getEncoding for consistency. 2013-07-09 12:05:51 +00:00
Valentin Lorentz d4df5de91d utils.web: Add function get_encoding. 2013-07-09 12:02:25 +00:00
Valentin Lorentz addb754c68 registry.py: Use %r instead of %s in for formating __nonExistentEntry errors. 2013-07-08 22:51:16 +02:00
Valentin Lorentz 4fffdbccd2 httpserver: Firewall do* methods. 2013-07-07 13:26:13 +02:00
Valentin Lorentz eff7d5e671 Fix httpserver for Python 3. 2013-07-07 13:24:26 +02:00
Valentin Lorentz 0514a64209 Fix use of rsplit for IPv6 addresses. 2013-07-02 13:18:57 +02:00
Valentin Lorentz ed193e7cc7 io.StringIO has no attribute 'reset'. 2013-06-29 23:19:38 +02:00
Valentin Lorentz 46b89cfc0e Fix crash when --daemon is given (Python 3). 2013-06-29 13:58:41 +02:00
Valentin Lorentz dce3c97fe4 Socket: Only catch select.error if it is an interupted system call. 2013-06-29 13:44:42 +02:00
Valentin Lorentz 75654a4544 Socket: Prevent crash caused when a signal is received while using select. Closes GH-477. 2013-06-29 12:40:45 +02:00
Carsten Teibes 7129dc2697 Switch to charade, which is better maintained and works under 2 and 3 2013-06-27 19:36:44 +02:00
Milos Petkovic be6116f958 Reset network uptime on reconnection as well 2013-06-17 08:09:16 +02:00