Up to [cvs.NetBSD.org] / pkgsrc / net / py-irclib
Request diff between arbitrary revisions
Keyword substitution: kv
Default branch: MAIN
py-irclib: updated to 20.5.0 v20.5.0 Features - Refactored commands processing so now every command has a numeric and a name. Programs reliant on numeric values not yet defined can do so without breaking once they are defined.
py-irclib: update to 20.4.0. v20.4.0 ======= Features -------- - Replace deprecated ssl.wrap_socket with SSLContext.wrap_socket and update examples in connection.py docs. (#216) v20.3.1 ======= No significant changes. v20.3.0 ======= Features -------- - Added support for SASL login. (#195) Bugfixes -------- - Better handling of escape sequences in message tags. (#205) v20.2.0 ======= Features -------- - Require Python 3.8 or later. v20.1.1 ======= * #213: Pinned against jaraco.text 3.10 due to change in interface. v20.1.0 ======= * #196: In irc.bot, avoid hanging idle when the first connection attempt fails. v20.0.0 ======= * ``SingleServerIRCBot`` no longer accepts ``reconnection_interval`` as a parameter. * Added server support for NOTICE commands. * Require Python 3.7 or later. v19.0.1 ======= * #176: Fix issues with version number reporting. Restored version version number reporting in bot and client. v19.0.0 ======= * ``irc.client`` no longer exposes a ``VERSION`` or ``VERSION_STRING``. To get the version, call ``importlib.metadata.version('irc')`` directly. v18.0.0 ======= * Require Python 3.6 or later. 17.1 ==== * Rely on `importlib_metadata <https://pypi.org/project/importlib_metadata/>`_ for loading version from metadata. Removes implicit dependency on setuptools and pkg_resources. * #158: The AsyncIO server now accepts a connection factory to enable features like SSL and IPv6 support. * #155: ``SimpleIRCClient`` now has a ``dcc`` method for initiating and associating a DCCConnection object with the client. ``DCCConnection.listen`` now accepts a ``address`` parameter. Deprecated ``SimpleIRCClient.dcc_listen`` and ``SimpleIRCClient.dcc_connect`` in favor of the better separation of concerns. Clients should replace:: client.dcc_connect(addr, port, type) client.dcc_listen(type) with:: client.dcc(type).connect(addr, port) client.dcc(type).listen() 17.0 ==== * Removed ``irc.buffer`` module, deprecated in 14.2. * #153: Drop support for Python 3.3 and 2.7. 16.4 ==== * Long Term Service release for Python 2.7. * #149: ``AioConnection.connect`` moved to coroutine, added disconnect handling for AsyncIO. 16.3 ==== * #140: Methods now use 'connection' and 'event' for parameter names. * #135 via #144: Added AsyncIO implementation. 16.2.1 ====== * Package refresh and cleanup. 16.2 ==== * #133: In ``irc.server``, add support for ISON. 16.1 ==== * #131: Add ``Connection.encode`` and ``Connection.transmit_encoding`` to enable encodings other than UTF-8 to be used when transmitting text. 16.0 ==== * Removed deprecated ``execute_*`` methods on ``Connection`` and ``Reactor`` as introduced in 15.0. * Fixed link in README. 15.1.1 ====== * New ``send_items`` method takes star args for simplicity in the syntax and usage. 15.1 ==== * Introduce ``ServerConnection.send_items``, consolidating common behavior across many methods previously calling ``send_raw``. 15.0.6 ====== * Now publish `documentation <https://python-irc.readthedocs.io/>`_ to Read The Docs. 15.0.5 ====== * #119: Handle broken pipe exception in IRCClient _send() (server.py). 15.0.4 ====== * #116: Correct invocation of execute_every. 15.0.3 ====== * #115: Fix AttributeError in ``execute_at`` in scheduling support. 15.0.2 ====== * #113: Use preferred scheduler in the bot implementation. 15.0.1 ====== * Deprecated calls to Connection.execute_* and Reactor.execute_*. Instead, call the equivalently-named methods on the reactor's scheduler. 15.0 ==== * The event scheduling functionality has been decoupled from the client.Reactor object. Now the reactor will construct a Scheduler from the scheduler_class property, which must be an instance of irc.schedule.IScheduler. The ``_on_schedule`` parameter is no longer accepted to the Reactor class. Implementations requiring a signal during scheduling should hook into the ``add`` method of the relevant scheduler class. * Moved the underlying scheduler implementation to `tempora <https://pypi.org/project/tempora>`_, allowing it to be re-used for other purposes. 14.2.2 ====== * Issue #98: Add an ugly hack to force ``build_sphinx`` command to have the requisite libraries to build module documentation. 14.2.1 ====== * Issue #97: Restore ``irc.buffer`` module for compatibility. * Issue #95: Update docs to remove missing or deprecated modules. * Issue #96: Declare Gitter support as a badge in the docs. 14.2 ==== * Moved buffer module to `jaraco.stream <https://pypi.python.org/pypi/jaraco.stream>`_ for use in other packages. 14.1 ==== * ``SingleServerIRCBot`` now accepts a ``recon`` parameter implementing a ReconnectStrategy. The new default strategy is ExponentialBackoff, implementing an exponential backoff with jitter. The ``reconnection_interval`` parameter is now deprecated but retained for compatibility. To customize the minimum time before reconnect, create a custom ExponentialBackoff instance or create another ReconnectStrategy object and pass that as the ``recon`` parameter. The ``reconnection_interval`` parameter will be removed in future versions. * Issue #82: The ``ExponentialBackoff`` implementation now protects from multiple scheduled reconnects, avoiding the issue where reconnect attempts accumulate exponentially when the bot is immediately disconnected by the server. 14.0 ==== * Dropped deprecated constructor ``connection.Factory.from_legacy_params``. Use the natural constructor instead. * Issue #83: ``connection.Factory`` no longer attempts to bind before connect unless a bind address is specified. 13.3.1 ====== * Now remove mode for owners, halfops, and admins when the user is removed from a channel. * Refactored the Channel class implementation for cleaner, less repetitive code. * Expanded tests coverage for Channel class. 13.3 ==== * Issue #75: In ``irc.bot``, add support for tracking admin status (mode 'a') in channels. Use ``channel.is_admin`` or ``channel.admins`` to identify admin users for a channel. * Removed deprecated irc.logging module. 13.2 ==== * Moved hosting to github. 13.1.1 ====== * Issue #67: Fix infinite recursion for ``irc.strings.IRCFoldedCase`` and ``irc.strings.lower``. 13.1 ==== * Issue #64: ISUPPORT PREFIX now retains the order of permissions for each prefix. 13.0 ==== * Updated ``schedule`` module to properly support timezone aware times and use them by default. Clients that rely on the timezone naïve datetimes may restore the old behavior by overriding the ``schedule.now`` and ``schedule.from_timestamp`` functions like so: schedule.from_timestamp = datetime.datetime.fromtimestamp schedule.now = datetime.datetime.now Clients that were previously patching ``schedule.DelayedCommand.now`` will need to instead patch the aforementioned module-global methods. The classmethod technique was a poor interface for effectively controlling timezone awareness, so was likely unused. Please file a ticket with the project for support with your client as needed. 12.4.2 ====== * Bump to jaraco.functools 1.5 to throttler failures in Python 2. 12.4 ==== * Moved ``Throttler`` class to `jaraco.functools <https://bitbucket.org/jaraco/jaraco.functools>`_ 1.4. 12.3 ==== * Pull Request #33: Fix apparent escaping issue with IRCv3 tags. 12.2 ==== * Pull Request #32: Add numeric for WHOX reply. * Issue #62 and Pull Request #34: Add support for tags in message processing and ``Event`` class. 12.1.2 ====== * Issue #59: Fixed broken references to irc.client members. * Issue #60: Fix broken initialization of ``irc.server.IRCClient`` on Python 2. 12.1.1 ====== * Issue #57: Better handling of Python 3 in testbot.py script. 12.1 ==== * Remove changelog from package metadata. 12.0 ==== * Remove dependency on jaraco.util. Instead depend on surgical packages. * Deprecated ``irc.logging`` in favor of ``jaraco.logging``. * Dropped support for Python 3.2.
net: Replace RMD160 checksums with BLAKE2s checksums All checksums have been double-checked against existing RMD160 and SHA512 hashes Not committed (merge conflicts...): net/radsecproxy/distinfo The following distfiles could not be fetched (fetched conditionally?): ./net/citrix_ica/distinfo citrix_ica-10.6.115659/en.linuxx86.tar.gz ./net/djbdns/distinfo dnscache-1.05-multiple-ip.patch ./net/djbdns/distinfo djbdns-1.05-test28.diff.xz ./net/djbdns/distinfo djbdns-1.05-ignoreip2.patch ./net/djbdns/distinfo djbdns-1.05-multiip.diff ./net/djbdns/distinfo djbdns-cachestats.patch
net: Remove SHA1 hashes for distfiles
Add SHA512 digests for distfiles for net category Problems found with existing digests: Package haproxy distfile haproxy-1.5.14.tar.gz 159f5beb8fdc6b8059ae51b53dc935d91c0fb51f [recorded] da39a3ee5e6b4b0d3255bfef95601890afd80709 [calculated] Problems found locating distfiles: Package bsddip: missing distfile bsddip-1.02.tar.Z Package citrix_ica: missing distfile citrix_ica-10.6.115659/en.linuxx86.tar.gz Package djbdns: missing distfile djbdns-1.05-test25.diff.bz2 Package djbdns: missing distfile djbdns-cachestats.patch Package djbdns: missing distfile 0002-dnscache-cache-soa-records.patch Package gated: missing distfile gated-3-5-11.tar.gz Package owncloudclient: missing distfile owncloudclient-2.0.2.tar.xz Package poink: missing distfile poink-1.6.tar.gz Package ra-rtsp-proxy: missing distfile rtspd-src-1.0.0.0.tar.gz Package ucspi-ssl: missing distfile ucspi-ssl-0.70-ucspitls-0.1.patch Package waste: missing distfile waste-source.tar.gz Otherwise, existing SHA1 digests verified and found to be the same on the machine holding the existing distfiles (morden). All existing SHA1 digests retained for now as an audit trail.
Don't try to fetch a dependency that is only needed for testing.
Downgraded to version 11.1.1, dependency removal on jaraco.util introduced 20 dependencies that are not documented, plus a bug on egg info file generation. These chances are reverted back: 12.0 Remove dependency on jaraco.util. Instead depend on surgical packages. Deprecated irc.logging in favor of jaraco.logging. Dropped support for Python 3.2.
Updated to py-irclib 12.0 12.0 Remove dependency on jaraco.util. Instead depend on surgical packages. Deprecated irc.logging in favor of jaraco.logging. Dropped support for Python 3.2. 11.1.1 Issue #55: Correct import error on Python 2.7. 11.1 Decoding errors now log a warning giving a reference to the Decoding Input section of the readme. 11.0 Renamed irc.client.Manifold to irc.client.Reactor. Reactor better reflects the implementation as a reactor pattern <. This name makes it’s function much more clear and inline with standard terminology. Removed deprecated manifold and irclibobj properties from Connection. Use reactor instead. Removed deprecated ircobj from SimpleIRCClient. Use reactor instead. 10.1 Added ServerConnection.as_nick, a context manager to set a nick for the duration of the context. 10.0 Dropped support for Python 2.6. Dropped irc.client.LineBuffer and irc.client.DecodingBuffer (available in irc.client.buffer). Renamed irc.client.IRC to irc.client.Manifold to provide a clearer name for that object. Clients supporting 8.6 and later can use the Manifold name. Latest clients must use the Manifold name. Renamed irc.client.Connection.irclibobj property to manifold. The property is still exposed as irclibobj for compatibility but will be removed in a future version. Removed unused irc.client.mask_matches function. Removed unused irc.client.nick_characters. Added extra numerics for ‘whoisaccount’ and ‘cannotknock’. 9.0 Issue #46: The whois command now accepts a single string or iterable for the target. NickMask now returns None when user, host, or userhost are not present. Previously, an IndexError was raised. See Pull Request #26 for details.
Updated to version 8.9 8.9 Documentation is now published at https://pythonhosted.org/irc. 8.8 Issue #35: Removed the mutex during process_once. Issue #37: Deprecated buffer.LineBuffer for Python 3. 8.7 Issue #34: Introduced buffer.LenientDecodingLineBuffer for handling input in a more lenient way, preferring UTF-8 but falling back to latin-1 if the content cannot be decoded as UTF-8. 8.6 Introduced 'Manifold' as an alias for irc.client.IRC. This better name will replace the IRC name in a future version. Introduced the 'manifold' property of SimpleIRCClient as an alias for ircobj. Added 'manifold_class' property to the client.SimpleIRCClient to allow consumers to provide a customized Manifold.
Updated irclib to version 8.5.4 8.5.4 Issue #32: Add logging around large DCC messages to facilitate troubleshooting. Issue #31: Fix error in connection wrapper for SSL example. 8.5.3 Issue #28: Fix TypeError in version calculation in irc.bot CTCP version. 8.5.2 Updated DCC send and receive scripts (Issue #27). 8.5.1 Fix timestamp support in schedule.DelayedCommand construction. 8.5 irc.client.NickMask is now a Unicode object on Python 2. Fixes issue reported in pull request #19. Issue #24: Added DCCConnection.send_bytes for transmitting binary data. privmsg remains to support transmitting text. 8.4 Code base now runs natively on Python 2 and Python 3, but requires six to be installed. Issue #25: Rate-limiting has been updated to be finer grained (preventing bursts exceeding the limit following idle periods). 8.3.2 Issue #22: Catch error in bot.py on NAMREPLY when nick is not in any visible channel. 8.3.1 Fixed encoding errors in server on Python 3. 8.3 Added a set_keepalive method to the ServerConnection. Sends a periodic PING message every indicated interval. 8.2 Added support for throttling send_raw messages via the ServerConnection object. For example, on any connection object: connection.set_rate_limit(30) That would set the rate limit to 30 Hz (30 per second). Thanks to Jason Kendall for the suggestion and bug fixes. 8.1.2 Fix typo in client.NickMask. 8.1.1 Fix typo in bot.py. 8.1 Issue #15: Added client support for ISUPPORT directives on server connections. Now, each ServerConnection has a features attribute which reflects the features supported by the server. See the docs for irc.features for details about the implementation. 8.0.1 Issue #14: Fix errors when handlers of the same priority are added under Python 3. This also fixes the unintended behavior of allowing handlers of the same priority to compare as unequal. 8.0 This release brings several backward-incompatible changes to the scheduled commands. Refactored implementation of schedule classes. No longer do they override the datetime constructor, but now only provide suitable classmethods for construction in various forms. Removed backward-compatible references from irc.client. Remove 'arguments' parameter from scheduled commands. Clients that reference the schedule classes from irc.client or that construct them from the basic constructor will need to update to use the new class methods: - DelayedCommand -> DelayedCommand.after - PeriodicCommand -> PeriodicCommand.after Arguments may no longer be passed to the 'function' callback, but one is encouraged instead to use functools.partial to attach parameters to the callback. For example: DelayedCommand.after(3, func, ('a', 10)) becomes: func = functools.partial(func, 'a', 10) DelayedCommand.after(3, func) This mode puts less constraints on the both the handler and the caller. For example, a caller can now pass keyword arguments instead: func = functools.partial(func, name='a', quantity=10) DelayedCommand.after(3, func) Readability, maintainability, and usability go up. 7.1.2 Issue #13: TypeError on Python 3 when constructing PeriodicCommand (and thus execute_every). 7.1.1 Fixed regression created in 7.0 where PeriodicCommandFixedDelay would only cause the first command to be scheduled, but not subsequent ones. 7.1 Moved scheduled command classes to irc.schedule module. Kept references for backwards-compatibility. 7.0 PeriodicCommand now raises a ValueError if it's created with a negative or zero delay (meaning all subsequent commands are immediately due). This fixes #12. Renamed the parameters to the IRC object. If you use a custom event loop and your code constructs the IRC object with keyword parameters, you will need to update your code to use the new names, so: IRC(fn_to_add_socket=adder, fn_to_remove_socket=remover, fn_to_add_timeout=timeout) becomes: IRC(on_connect=adder, on_disconnect=remover, on_schedule=timeout) If you don't use a custom event loop or you pass the parameters positionally, no change is necessary. 6.0.1 Fixed some unhandled exceptions in server client connections when the client would disconnect in response to messages sent after select was called. 6.0 Moved LineBuffer and DecodingLineBuffer from client to buffer module. Backward-compatible references have been kept for now. Removed daemon mode and log-to-file options for server. Miscellaneous bugfixes in server. 5.1.1 Fix error in 2to3 conversion on irc/server.py (issue #11). 5.1 The IRC library is now licensed under the MIT license. Added irc/server.py, based on hircd by Ferry Boender. Added support for CAP command (pull request #10), thanks to Danneh Oaks. 5.0 Another backward-incompatible change. In irc 5.0, many of the unnecessary getter functions have been removed and replaced with simple attributes. This change addresses issue #2. In particular: Connection._get_socket() -> Connection.socket (including subclasses) Event.eventtype() -> Event.type Event.source() -> Event.source Event.target() -> Event.target Event.arguments() -> Event.arguments The nm_to_* functions were removed. Instead, use the NickMask class attributes. These deprecated function aliases were removed from irc.client: - parse_nick_modes -> modes.parse_nick_modes - parse_channel_modes -> modes.parse_channel_modes - generated_events -> events.generated - protocol_events -> events.protocol - numeric_events -> events.numeric - all_events -> events.all - irc_lower -> strings.lower Also, the parameter name when constructing an event was renamed from eventtype to simply type. 4.0 Removed deprecated arguments to ServerConnection.connect. See notes on the 3.3 release on how to use the connect_factory parameter if your application requires ssl, ipv6, or other connection customization. 3.6.1 Filter out disconnected sockets when processing input. 3.6 Created two new exceptions in irc.client: MessageTooLong and InvalidCharacters. Use explicit exceptions instead of ValueError when sending data. 3.5 SingleServerIRCBot now accepts keyword arguments which are passed through to the ServerConnection.connect method. One can use this to use SSL for connections: factory = irc.connection.Factory(wrapper=ssl.wrap_socket) bot = irc.bot.SingleServerIRCBot(..., connect_factory = factory)
Fixed install for python 2.7, setup.py seems buggy and does not create requires.txt when version is > 2.6. There's room for improvement, that's a quick fix.
Initial import of py-irclib, version 3.4.2, into the NetBSD Packages Collection. This library is intended to encapsulate the IRC protocol at a quite low level. It provides an event-driven IRC client framework. It has a fairly thorough support for the basic IRC protocol, CTCP and DCC connections.