Skip to content

Releases: sopel-irc/sopel

4.6.1

16 Dec 12:31
Compare
Choose a tag to compare

Changes between 4.6.0 and 4.6.1

This release starts preparations for Willie 5. See http://willie.dftba.net/willie_5.html
for more information.

Module changes (for users):

  • Fix regression in table creations and erroneously changed column names

Core changes (for users):

  • Fix regression in db update function

API changes (for developers):

  • Correctly print out deprecation warnings

4.6.0

14 Dec 15:11
Compare
Choose a tag to compare

Changes between 4.5.1 and 4.6.0

This release starts preparations for Willie 5. See http://willie.dftba.net/willie_5.html for more information.

Module Changes (for users):

  • The ^ operator in .calc is now equivalent to **
  • .dice, .tr, and .addtrace give meaningful errors when no argument is given
  • A number of database issues were fixed (more will be fixed in Willie 5)
  • A number of Python 3-related issues were fixed.
  • Malicious URLs are now detected with VirusTotal and malwaredomains
  • .weather no longer shows pressure

Core changes (for users):

  • The config wizard no longer configures the database, instead automatically creating a sqlite db
  • MySQL and Postgres databases are deprecated; only sqlite will be supported in Willie 5
  • Logging channel and level can be configured with logging_channel and logging_level in the config
  • A --version switch was added to the willie command, to show the version in use
  • Corrupt PID files will no longer prevent the bot from starting
  • Non-ASCII values no longer crash the config wizard

API changes (for developers):

  • Numerous functions were added to the db to ease the transition to Willie 5
  • tools.Nick has been renamed tools.Identifier. Nick will be removed in Willie 5
  • willie.web functions now specify a meaningful default user agent
  • web.post now supports dicts as the payload, and can optionally return headers
  • config.get was added as an alias to config.parser.get
  • Callables can now handle more than one event by stacking decorators

4.5.1

04 Sep 23:40
Compare
Choose a tag to compare

Changes between 4.5.0 and 4.5.1

Module Changes (for users):

  • Version checking module no longer causes an error at startup
  • URL handling modules no longer repeat themselves after being reloaded
  • .isup now adds a .com TLD if none is used
  • IPython integration now works with older versions of IPython

4.5.0

31 Aug 18:39
Compare
Choose a tag to compare

Changes between 4.4.1 and 4.5.0

Module Changes (for users):

  • Willie will now alert the owner at startup, and every 24 hours, when a new version is available
  • .calc will now time out on excessively long calculations, and is less likely to error out
  • .help now works properly for command aliases
  • .help will now output multi-line help in multiple messages, rather than all at once
  • A new .uptime command tells how long the bot has been running
  • .length can now handle astronomical units
  • Absolute vote counts are no longer shown in reddit output
  • Using .setlocation without a location will no longer set your location to Italy
  • Time units for .in are now case-insensitive
  • .duck no longer gives a long, unrelated URL

Core changes (for users):

  • Scheduled tasks now work properly under Python 3
  • Willie no longer accepts partial matches for admin status

API Changes (for developers):

  • Setting attributes on the bot object now works as expected
  • The status code is now returned from web.get as _http_status in the headers
  • web.get now attempts to decode based on headers, rather than assuming utf-8
  • web.iri_to_uri is now available to decode internationalized domain names
  • A willie.formatting module is now available to simplify IRC bold, underline and color formatting

4.4.1

26 May 15:04
Compare
Choose a tag to compare

Changes between 4.4.0 and 4.4.1

Module Changes (for users):

  • RSS no longer checks for malformed XML
  • Starting RSS manually after bot restart is no longer needed
  • Youtube video search properly handles spaces
  • The .at command defaults to UTC if user's timezone is not set

Core changes (for users):

  • Ping timeout handling is working again
  • bind_host configuration option is working again

4.4.0

10 May 14:54
Compare
Choose a tag to compare
Module Changes (for users):
  • .cur behaves better when bad arguments are given
  • Fixed numerous unicode errors
  • Added a command to open an IPython console within the module context
  • Added mass units and millimeters to the units module
  • GitHub pull requests now get extended URL info
  • .weather now displays wind in m/s instead of kts
  • A security issue involving improperly named channel logs was fixed
  • Misc bugfixes
Core changes (for users):
  • Channel joins at bot startup can be rate limited with the throttle_joins option in the [core] config section to work around server limits
  • Added the ability for SASL login where the nickname and username are different
  • Improved loop protection and rate limiting
  • Fixed multiple Python 3 errors
  • Enable logging the bot in to Authserv at startup
  • Added support for Postgres as the database backend
  • SSL cert location detection now works on Debian-based systems
  • Misc bugfixes
API Changes (for developers):
  • Unicode in command decorators now works properly
  • web.get now decodes the result from UTF-8, with a dont_decode argument to disable

4.3.0

06 Apr 19:17
Compare
Choose a tag to compare
Module Changes (for users):
  • A new channel logging module is added
  • Misc bugfixes, especially when running with Python 3
Core changes (for users):
  • Fixed a regression that caused numerous errors in willie.web
  • Misc bugfixes
API Changes (for developers):
  • Nick instances now have an is_nick attribute, which is True when the value is a valid nickname (as opposed to a channel)

4.2.1

08 Mar 21:55
Compare
Choose a tag to compare
Module Changes (for users):
  • A new .cur command can convert a number of currencies, including Bitcoin
  • .c can now understand a comma used as a radix point (rather than a period)
  • .w can now look in the Wikipedia for a specified (or configurable default) language
  • Timezones are now more user-friendly, and used more consistently across modules
  • Misc bugfixes
Core Changes (for users):
  • willie.web now verifies HTTPS connections properly
  • The SQLite database file respects use of ~ in the configured filename
  • Willie can now run in Python 3
  • Willie now depends on python-backports.ssl_match_hostname (see README.rst for installation instructions)
  • Misc bugfixes
API Changes (for developers):
  • trigger.is_privmsg is added for an easy way to see if a trigger was created in a private or channel message
  • get_timezone and format_time are added to tools to make displaying time according to user/channel format easier
  • Added bot.notice and an optinal notice parameter for bot.reply for easier sending of IRC NOTICE messages

4.2.0

08 Mar 19:38
Compare
Choose a tag to compare
Module Changes (for users):
  • A new .cur command can convert a number of currencies, including Bitcoin
  • .c can now understand a comma used as a radix point (rather than a period)
  • .w can now look in the Wikipedia for a specified (or configurable default) language
  • Timezones are now more user-friendly, and used more consistently across modules
  • Misc bugfixes
Core Changes (for users):
  • willie.web now verifies HTTPS connections properly
  • The SQLite database file respects use of ~ in the configured filename
  • Willie can now run in Python 3
  • Willie now depends on python-backports.ssl_match_hostname (see README.rst for installation instructions)
  • Misc bugfixes
API Changes (for developers):
  • trigger.is_privmsg is added for an easy way to see if a trigger was created in a private or channel message
  • get_timezone and format_time are added to tools to make displaying time according to user/channel format easier
  • Added bot.notice and an optinal notice parameter for bot.reply for easier sending of IRC NOTICE messages

4.1.0

10 Nov 16:26
Compare
Choose a tag to compare
Module Changes (for users):
  • Admin-only .set command can now set non-existent config values
  • The meetbot .endmeeting command now works properly
  • Significant improvements made to RSS module
    • The database structure for storing RSS feeds has been modified. The module will attempt to migrate old data.
    • Command syntax has changed in multiple ways
    • .rss help is now available with more detailed information on usage.
    • Module is overall better-behaved and less buggy
  • Traceback can now be attached to a GitHub issue from Willie's logs
  • GitHub module no longer puts "IRC" tag on issues it creates
  • A .listactions command is added to allow actions to be listed before the end of a meeting
  • Dice now limits itself to 1000 dice, and output is cleaned up
  • Willie now joins channels when invited
  • Reddit module no longer gives an error if the submitter's account has been deleted
  • A new .comments feature allows optional comments on meetings, e.g. from those muted in the channel
  • .xkcd is more robust, and can now access the nth-latest comic
  • calc module now uses an internal calculator, rather than the discontinued iGoogle calculator
Core Changes (for users):
  • Memory lock and unlock no longer cause errors
  • Debugging target no longer needs to be a channel
  • Whitespace can now be used in the command prefix
  • Line numbers are given when modules fail to load
  • Error messages are more consistent across core and modules
  • Willie now retries joining channels if it fails initially
  • sqlite is now the default and recommended database type
    • MySQL remains supported; support may be dropped in a later version
    • MySQLdb is no longer listed as a recommended dependency
  • IRCv3 is now largely supported
    • Willie can now authenticate with SASL
API Changes (for developers):
  • Modules can now provide a shutdown() function to clean up when the bot is quitting or the module is reloading
  • web.get and web.post can be told to limit how much they read from a URL, to prevent malicious use
  • A new @unblockable decorator allows callables to be run even when triggered by otherwise blocked users
  • Willie can now connect over IPv6
  • If the channel given to bot.join contains a space, the part after the space will be used as the password
  • IRCv3 is now largely supported
    • Modules can now request capabilities from the server.
    • Message tags, if enabled, can be read from trigger.tags