* Sat Jul 01 2023 Georg Pfuetzenreuter - Rename python-limnoria to limnoria- Adapt upstream changes and rename scripts from supybot to limnoria * Fri Jun 30 2023 georg.pfuetzenreuterAATTsuse.com- Update to version master-2023-05-27: * botchk: move imports to top-level * ci: Bump Python 3.12 version * setup.py: Add Python 3.11 and 3.12 to classifiers. * botchk: fix syntax error * Stop testing pypy3.7 with optional dependencies * Socket: Clear buffers on reconnect * Request standard-replies capability * Fediverse: Use default headers * Remove unused import fallback on the \'mock\' library * Move the \'ignore=False\' trick from callbacks to Scheduler * callbacks: Fix interference between Scheduler.repeat, Anonymous, and nested commands * Regenerate READMEs * Services: Improve doc of plugins.Services.nicks * Skip irctest on pypy-3.9 * Add test for registry reloading * ci: Bump Python versions * Fediverse: Add support for missing host-meta document * Services: allow adjusting GHOST command * ci: Make Ubuntu versions explicit * Web: Decode using the charset advertized in response headers * Channel: Fix and re-enable disabled tests * Add tests for nicksToHostmasks * Modernize tests * Channel: Fix documentation, --exact cannot be combined * Google: Remove broken commands * IrcState: fix typo in attribute docs * URL: Lazily deserialize records from the end in AATTlast * RSS: Don\'t crash on invalid variable name * irclib: Abort authentication when server fails SCRAM challenge * irclib: Fix crashes on ecdsa/scram signature failures * Double default peekSize * Web: Allow configuring higher peekSize on Youtube * Make TimeoutQueue.iter() actually expire items * test: Revert generic \'The Limnoria Contributors\' in copyright notices * Add test for structures.TimeoutQueue.__iter__ * Sort remaining nondeterministc sets of values * registry: Default to sorting sets of values * User: Sort output of AATTcapabilities * Ensure files written with AtomicFile are read in UTF8 * String: allow multi-character inputs in \"ord\" and \"unicodename\" * utils/web: Add to the list of block elements * Math: make `AATTicalc` fail early when result is too large * Bump CI version from 3.11.0-alpha.2 to 3.11.0-rc.2 * Poll: Make answers case-insensitive * registry: Normalize values before checking they are valid * MessageParser: Ignore chathistory batches * Add alternative name \'limnoria-\' in addition to \'supybot- *\' for scripts * Use setuptools \'entry_points\' instead of distutils-style \'scripts\' * setup.py: Deduplicate script list * Sun Sep 04 2022 Georg Pfuetzenreuter - Add supybot-adduser-suse and supybot-reset-password scripts- Add warning message to upstream supybot-{wizard,adduser,reset-password} scripts- Add sudo recommendation- Enable tests- Various minor improvements * Sun Aug 28 2022 Georg Pfuetzenreuter - Repair supybot-wizard-suse directory setup- Add informative %post message- Provide limnoria * Thu Aug 25 2022 Georg Pfuetzenreuter - Revert pre-script * Tue Aug 23 2022 Georg Pfuetzenreuter - Use pre-script * Tue Aug 23 2022 Georg Pfuetzenreuter - Work around patch bug- Add Python base requirement * Mon Aug 22 2022 Georg Pfuetzenreuter - Solve python-packaging build requirement * Mon Aug 22 2022 Georg Pfuetzenreuter - Add BuildRequires for unit tests * Mon Aug 22 2022 Georg Pfuetzenreuter - Various package improvements, including: * use obs_scm service and cpio source * ship with instantiated systemd service * ship with system user/group * ship with patched supybot-wizard-suse to allow for easy creation of instantiated bots- Add README.SUSE for usage details- Build Python 3.10 exclusively due unresolved duplicate file errors * Sun Aug 21 2022 georg.pfuetzenreuterAATTsuse.com- Update to version master-2022-08-14: * RSS: Log feed URL when feedparser.parse raises exceptions * Ctcp: Fix \'RuntimeError: dictionary changed size during iteration\' * Time: Fix typo * Time: Skip new assertions on Python 3.6 so testSeconds passes * Time: Add support for omitting space in AATTseconds * Polls: Make nick matching case-insensitive * Poll: Add AATTpoll list command * Fediverse: run black * commands: Silence noisy logging of command evaluation * Add debug logging when skipping SASL mechanisms * Thu Jul 14 2022 Atri Bhattacharya - Update to version 2022-07-03: * PluginDownloader: replace automatic 2to3 step with a simple warning. * Thu Apr 21 2022 Steve Kowalik - feedparser is now available on Python 3.10, remove the skip. * Wed Mar 23 2022 pgajdosAATTsuse.com- python-mock is not required for build * Sat Mar 19 2022 Atri Bhattacharya - Update to version 2022-03-19: * irclib: Catch exception from outFilter, as with inFilter * Sat Feb 05 2022 Ben Greiner - Update to version 2022-02-03 * wizard: Fix mixup of sasl username and password * Format: allow empty substrings in \'replace\'. This allows for easy substring removal without having to use regex. * setup.py + CI: Remove support for Python 3.4 and 3.5 * Time: Fix error handling in AATTtztime. * LogToIrc: Synchronize README with config.py. Better document the format of the \'target\' config var * Expose standardSubstitute\'s var dictionary. So it can be reused by plugins if they want to use a different templating engine. * Services: Update to the latest version of the draft/account-registration spec.- Skip python310: no feedparser due to missing sgmllib3k for Python 3.10- Enable the test suite * Wed Jun 16 2021 Lars Vogdt - Update to version 2021-05-27: + Socket: Fix crash non-TLS connections when using a SOCKS proxy + Socket: Disable resolution when using a SOCKS proxy + drivers: Log SOCKS proxy on connecting + callbacks, Misc, Relay: Fix when the message prefix is just a nick + Admin: Fix python 3.4 support + ircdb: Fix \'IrcUser.nicks\' on non-lowercase network names + Add the option to disable password login. + Move official channel from Freenode to Libera.Chat + SedRegex: Fix NameError in config setup + Network: Fix IPv6 parsing + Channel: Fix Nameerror in AATTAlert. + httpserver: Fix pointless tracebacks + Relay: Don\'t relay QUIT/NICK if the sender isn\'t in the relayed channel. + RSS: Make AATTremove completely clean up feeds + RSS: Default to setting announces per channel+network, instead of just per channel + RSS: Forbid dots in feed names. + Services: Keep per-network state separate + all plugins: regenerate READMEs + httpserver, Fediverse: show an error message on 404 + Fediverse: Move Secure Fetch documentation to the \'Usage\' section + Fix computation of message overhead in multiline batches. + Log loading times for each plugin + supybot-plugin-doc: Add labels for all command and config variables + callbacks: Don\'t write nick prefixes in the middle of multiline messages * Mon Mar 22 2021 Atri Bhattacharya - Update to version 2021-03-17: * README+setup: Update supported Python versions. * Thu Dec 10 2020 Atri Bhattacharya - Update to version 2020-12-07: * Try all IP addresses of a hostname. * Wed Oct 14 2020 Atri Bhattacharya - Update to version 2020-10-13: * RSS: Fix announce removal to work with net+chan-specific config. * It only removed the value from the chan-specific value. * Fri Sep 04 2020 Atri Bhattacharya - Update to version 2020-09-03: * ChannelLogger: - Add tests for getLog. - Write tests for privmsg and notice. - Write tests for relayed privmsg. - Add tests for non-relayed messages when rewriteRelayed is True. * Sun Aug 30 2020 Atri Bhattacharya - Update to version 2020-08-30: * Herald: - Throttle default heralds. - Use time.monotonic instead of time.time. * DDG: - Fix redirect detection. - Add region and safeSearch configs. - Add region test. * callbacks: - don\'t crash when the prefix is from network services. - add comments to findCallbacksForArgs. * utils.net: - always check fingerprints if they are set, even if verifyCertificates is False. - Do not disable TLS certificate check when authorityCertificate is set. * Autocomplete: - Initial implementation. - Fix name of response tag. - Only return the end of the current word (or the next one if the current word is finished). - return only the common prefix + one word. - more readable test failures. - configure Black. * ChannelLogger: - Fix regression preventing outgoing messages from being logged. - rewrite relayed messages echoed by the server - Fix typo in variable name. - update comment * irclib: Don\'t error when 004 is missing umodes and chanmodes. * Selectable User-Agent for HTTP requests (gh#ProgVal/Limnoria#1423) * Fix typo. HttpUserAgent -> HttpUserAgents (gh#ProgVal/Limnoria#1424) * userAgents: avoid potential IndexError * Google: Set User-Agent override. (gh#ProgVal/Limnoria#1426) * Factoids: Add --author filtering to AATTsearch. * Rename IrcCallback.echo_message to IrcCallback.echoMessage.- Use limnoria-%{version}.ext naming scheme for source instead of python-limnoria-%{version}.ext * Thu Jul 09 2020 Atri Bhattacharya - Update to version 2020-07-01: * DDG: better document the transitions in the parser. * Sat May 09 2020 Atri Bhattacharya - Update to version 2020-05-01: * Fix extra arguments to irc.reply() being ignored by messages returned by \'AATTmore\' (gh#ProgVal/Limnoria#1405).- Run an extra sed during %setup to clean hashbang from a file not installed in an executable path.- Drop the _service file, use full source URL directly allowing renaming of the tarball in %{name}-%{version} format. * Fri Mar 27 2020 Atri Bhattacharya - Update to version 2020-03-19: * Update links to the documentation. * Updated translations.- Use %{name}-%{version} naming scheme for source tarball. * Mon Feb 10 2020 Lars Vogdt - Update to version 2020-01-31: + RSS: If ids are missing, use as id. + RSS: Show a meaningful error in case \'AATTrss\' is called with a non-URL/… + ChannelStats: Use the safe math evaluator. + core/Math: Move the math evaluator to src/utils/. + Math: Fix log/log10 return type. + Aka, Google, String: fix more DeprecationWarning in tests (#1328) + AutoMode, Channel, Nickometer: fix invalid escape sequence Deprecatio… + plugins: use r\'\' strings to fix DeprecationWarning in test cases (#1328) + Aka, Debug: cleanup imports + Use importlib instead of imp. + Replace failUnless/failIf with assertTrue/assertFalse. + Socket: Don\'t add instances twice in cls._instances. + Socket: use a proper lock instead of a boolean. + Add subcommand dispatching for CAP/FAIL/WARN/NOTE. + Rename doAuthenticate * functions to not conflict with callback names. + Make irc.error do nothing is no string is given as argument. + Call super().setValue() before defaultHttpHeaders. + Deduplicate setting Accept-Language HTTP header. + Web: Implement protocols.http.requestLanguage + Add supybot.protocols.http.requestLanguage + Fix getSpecific usage + Import MutableMapping and MutableSet from collections.abc. + setup.py: migrate shebang to Python 3 + setup.py: remove obsolete version_info conditionals + scripts: remove obsolete conditionals for Python 2 + scripts: migrate shebangs and version checks to Python 3 + Be less hostile to users in --allow-root help + Readd Limnoria name to default part & quit messages + SedRegex: skip testReDoSTimeout if multiprocessing is disabled + SedRegex: update plugin metadata + SedRegex: spawn a single process to handle the whole history. + SedRegex: add test for ReDoS timeout + SedRegex: abort when a search times out + SedRegex: test case normalization of channel names + SedRegex: match channel names case insensitively + SedRegex: log all errors, always display the not found mesage + SedRegex: reuse processTimeout in the sub() process too + SedRegex: README: specifically mention that /s is specific to this plugin + SedRegex: make the regexp process timeout configurable + SedRegex: remove compatibility workaround for Python 2.7.6 and lower + SedRegex: skip testBoldReplacement on Python 2 + SedRegex: remove a duplicate test + SedRegex: use self.__class__ instead of __class__ in tests (Python 2 … + SedRegex: add a bunch of test cases + SedRegex: bump copyright year to 2017 + SedRegex: fix some replacement queries not working + SedRegex: also catch errors in the regexp_wrapper() step + SedRegex: log the exact error name instead of \"SedRegex error\" + SedRegex: require ending delimiter to prevent overzealous matching of… + SedRegex: work around \"nothing to replace\" errors on < Python 2.7.6 a… + SedRegex: fix flag matching + SedRegex: add configuration / usage instructions + SedRegex: implement \'s\' regex flag to only match the caller\'s message + SedRegex: allow free form flags and return them in _unpack_sed() + SedRegex: sanitize against \ \\r\\t in output + SedRegex: only operate on messages from the current network + SedRegex: work around \"nothing to repeat\" errors on Python < 2.7.6 * Sat Jan 04 2020 Atri Bhattacharya - Update to version 2020-01-01: + Skip irctest when optional dependencies are not installed.- python2 no longer supported; use skip_python2 macro to disable it. * Mon Dec 30 2019 Lars Vogdt - Update to version 2019-12-21: + Add config supybot.reply.format.list.maximumItems to limit the size o… + Add fallback if getting supybot.language from registry cache failed. + All plugins: set Limnoria contributors as maintainer + Better formatting in supybot.Author if some fields are missing + Get locale name on startup from registry cache instead of parsing con… + Make getLocaleFromRegistryCache reload existing locales. + Math: Fix test on Pypy. + Math: Display a nicer error in case of MemoryError. + MoobotFactoids: Fix support of commands sent in private. + Nicer error message in getChannel/makeChannelFilename when channel is… + Plugin: support showing __maintainer__ field in the \'author\' command + Plugin: accept author name in \'contributors\' command + QuoteGrabs: fix SyntaxWarning (#1391) + Remove dead code from Group that belongs in Value. + Request msgid capability. + RSS: Register feed config in config.py instead of plugin.py. + Scheduler: Use assertRegexp instead of assertNotRegexp in tests. + Scheduler: Use default timeout for assertResponse. + Scheduler: Use mocking to make tests faster. + Services: Fix typo in doInvite() (#1394) + Update core fr translation. + Update supybot-plugin-doc to work with current version of the registry. + Web: Lower log level when title could not be found. + Web: Remove leading space if the prefix is empty. + Web: Add early returns on exception when snarfing titles. + src/callbacks.py: use network-specific values. + test: Don\'t overwrite the main Schedule in the driver list. + test: Mock calls to time.sleep() + test: choose a random free port for tests using the HTTP server * Sun Nov 17 2019 Lars Vogdt - Update to version 2019-11-09: + Fix log on SASL failure. + Math: Rewrite calc functions with a proper evaluator. + Log SASL mechanism on failure. Closes GH-1014. + Config: Add : prefix to network-specific values listed by \'config list\'. + Web: Catch more errors in getTitle. + Split \'CAP REQ\' commands to not exceed 512 bytes. + Reset capability set state on reconnection. + Fix conditional on CTCP in urlSnarfer + Use a real invalid email in supybot.authors.unknown + Don\'t repeat nick in supybot.Author if nick and name are the same + regexp_wrapper: return None instead of False when search times out * Wed Sep 11 2019 Atri Bhattacharya - Update to version 2019-09-08: * Interpret empty server tag values as missing tag values. As required by https://ircv3.net/specs/extensions/message-tags- Changes from version 2019-08-25: * Config: Prevent accidental leak of private values on public channels.- Changes from version 2019-07-17: * Google: Update for Google\'s new HTML layout. * Tue Mar 19 2019 Atri B - Update to version 2019-02-23: * Revert changes to the structure of sdist packages. * Fix bugs in wrapping IRC messages. * Support for (future) Python 3.8. * Fix encoding issue on Python 2. * Support [ipv6]:port format. * Mon Oct 22 2018 badshah400AATTgmail.com- Update to version 2018-09-10: * Fix Python 3.7 support. * Tue Aug 28 2018 BArendartchukAATTsuse.com- enable Python 2 binaries with update-alternatives: they are needed for running legacy plugins * Fri Aug 17 2018 tchvatalAATTsuse.com- Drop -devel from deps * Thu Aug 16 2018 badshah400AATTgmail.com- Update to version 2018-06-25-2: * test_plugin_create: skip if supybot-plugin-create is not installed.- Changes from version 2018-06-25: * Fixes and tests to supybot-plugin-create; modernize the plugin template (gh#ProgVal/Limnoria#1340) * supybot-plugin-create: compactify import statements in the template * supybot-plugin-create: prefer importlib over imp on Python >= 3.4 * test: add test cases for supybot-plugin-create * -plugin-create: fix errors when only a subset of args are given * -plugin-create: rename --real-name to --author/-a * -plugin-create: add -d as an alias to --desc for consistency * Thu May 10 2018 toddrme2178AATTgmail.com- Avoid problem with bytecode being overwritten by tests * Mon Apr 30 2018 badshah400AATTgmail.com- Update to version 2018-04-21: * Do not break UTF-8 characters in long words. Closes gh#ProgVal/Limnoria#1333. * Wed Apr 18 2018 badshah400AATTgmail.com- The gnupg python module is called python{2,3}-python-gnupg, adapt Requires accordingly. * Fri Apr 13 2018 badshah400AATTgmail.com- Switch to using PySocks instead of SocksiPy: the former is well-maintained than the latter. * Sat Mar 31 2018 jengelhAATTinai.de- Remove empty filler marketing wording from description. * Wed Feb 21 2018 badshah400AATTgmail.com- Enable python2 module [not binaries] since we have python2-SocksiPy now. * Thu Feb 15 2018 badshah400AATTgmail.com- Update to master-2018-01-28: * NickAuth: Fix NameError caused by e732931. * Mon Dec 18 2017 badshah400AATTgmail.com- Update to master-2017-10-25: * Aka: Escape the command in help strings, so they can be copy-pasted into AATTaka add.- Convert to python single-spec; disable python2 modules as python2-SocksiPy is not available.- Enable tests as part of %%check. * Fri Nov 25 2016 badshah400AATTgmail.com- Initial package.