{ "info": { "author": "luk3yx", "author_email": "", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Topic :: Software Development :: Libraries" ], "description": "# miniirc_extras\n\n![Python 3.5+] [![Available on PyPI.]](https://pypi.org/project/miniirc_extras/) [![License: MIT]](https://github.com/luk3yx/miniirc_extras/blob/master/LICENSE.md)\n\n[Python 3.5+]: https://img.shields.io/badge/python-3.5+-blue.svg\n[Available on PyPI.]: https://img.shields.io/pypi/v/miniirc_extras.svg\n[License: MIT]: https://img.shields.io/pypi/l/miniirc.svg\n\nAn extension of miniirc ([GitHub](https://github.com/luk3yx/miniirc),\n[GitLab](https://gitlab.com/luk3yx/miniirc)) that adds more features.\n\nNote that miniirc_extras is still in beta and there can and will be breaking\nAPI changes before v1.0.0, and miniirc_extras may not work with older versions\nof miniirc.\n\n*Some features here may be merged into miniirc eventually.*\n\n## Loading features\n\nAfter importing miniirc_extras, features can be loaded with\n`irc.require('feature_name')`, and once loaded can be accessed with\n`irc.feature_name`.\n\n## Features\n\n - `chans`: Channel mode tracking, must be loaded while miniirc is disconnected.\n - `ensure_connection`: https://github.com/luk3yx/miniirc/issues/15\n - `mp`: *(WIP)* Multiprocessing handlers for miniirc.\n - `testfeature`: Debugging\n - `users`: User tracking, must be loaded while miniirc is disconnected.\n - `_json` *(Proof-of-concept)*: Parse JSON messages.\n\n### `irc.users`\n\n`irc.users` adds rudimentary user tracking to miniirc.\n\n#### `User` objects\n\nUser objects store the current user's information and user-defined data, and\ncan be accessed with `irc.users[Hostmask]` or `irc.users['nick']`.\n\nThe following items are available in `User` objects:\n\n| Variable | Description |\n| ------------- | -------------------------------------------------------- |\n| `nick` | The user's current nickname. |\n| `ident` | The user's current ident. |\n| `host` | The user's current hostname. |\n| `realname` | The user's `realname`. |\n| `hostmask` | A `Hostmask` object containing the user's hostmask. |\n| `raw_hostmask`| A string containing `nick!user@host`. |\n| `channels` | A set containing `Channel` objects for channels the user is currently in. |\n| `account` | A string containing the user's current NickServ account, or `None` if the user isn't logged in. |\n| `avatar_url` | The avatar URL of the user. Currently only IRCCloud avatars work. |\n\nYou can also set and get items with strings as keys and JSON-compatible objects\nas values.\n\n`User` objects have the following helper functions:\n\n| Function | Description |\n| ----------------- | ------------------------------------------------------- |\n| `msg(*text)` | Send a `PRIVMSG` to the user. |\n| `me(*text)` | Send a `CTCP ACTION` (`/me`) to the user. |\n| `notice(*text)` | Send a `NOTICE` to the user. |\n| `kick(channel, reason='')` | Kicks the user from `channel` (a string or `Channel` object). |\n\n### `irc.chans`\n\n`irc.chans` adds channel mode tracking on top of `irc.users`. You can get\nchannels with `irc.chans['#channel-name']`\n\n#### `Channel` objects\n\n`Channel` objects have the following attributes:\n\n| Variable | Description |\n| ------------- | -------------------------------------------------------- |\n| `name` | The name of the channel. |\n| `modes` | A `ModeList` object containing a list of modes. |\n| `topic` | The channel topic. |\n| `users` | A `set` containing `User` objects for members of this channel. |\n\n#### `ModeList` objects\n\nModeList objects store a list of modes, and have the following functions:\n\n| Function | Description |\n| ----------------- | ------------------------------------------------------- |\n| `getbool(mode)` | Returns `True` if `mode` (a single-character string) is set on the corresponding channel. *Use this for `+i`, `+t`, etc* |\n| `getstr(mode, default=None)` | Return the parameter `mode` was set with, otherwise `default`. *Use this for `+k`, `+l`, etc* |\n| `getset(mode)` | Return a `frozenset` containing all the entries stored in `mode`. If you plan to use this for modes such as `+b`, you may want to run `MODE #channel +b` when the bot/client joins the channel to populate the list. *Use this for `+b`, `+e`, `+o`, `+v`, etc* |\n| `hasstr(mode)` | Returns `True` if `mode` is set with a single parameter, otherwise `False`. |\n| `hasset(mode)` | Equivalent to `len(getset(mode)) > 0`. |\n\n*You can access `ModeList` objects like `dict`s, however this will require\nextra type checking code if you plan to use mypy or another type checker.*\n\n### `irc.mp`\n\nMultiprocessing handlers. You can create multiprocessing handlers with\n`irc.mp.Handler` and `irc.mp.CmdHandler`. These handlers are called with the\nlimited `RestrictedIRC` object (a subclass of `AbstractIRC`) instead of the\nnormal `IRC` object.\n\nThe following functions/variables work with `RestrictedIRC`:\n\n`active_caps`, `channels`, `connect_modes`, `ctcp`, `debug`, `ident`, `ip`,\n`ircv3_caps`, `isupport`, `me`, `msg`, `nick`, `notice`, `persist`,\n`ping_interval`, `port`, `quit_message`, `quote`, `realname`, `ssl`,\n`verify_ssl`\n\nTrying to modify these variables will result in an `AttributeError` or the set\noperation silently failing.\n\n## Misc classes\n\n### AbstractIRC\n\nThe `miniirc_extras.AbstractIRC` class provides an easy way to type check `IRC`\nobjects without stub files.\n\n### Hostmask\n\nminiirc_extras adds the abstract-ish class `miniirc_extras.Hostmask`:\n\n```py\nfrom miniirc_extras import Hostmask\n\nisinstance('test', Hostmask) # False\nisinstance(('nick', 123, 'host'), Hostmask) # False\nisinstance(('nick', 'user', 'host'), Hostmask) # True\n\nHostmask('nick', 'user', 'host') # ('nick', 'user', 'host')\nHostmask(123456, 'user', 'host') # TypeError\n```\n\n## Creating new features\n\n*This API will probably change in the future.*\n\nYou can create your own features with `miniirc_extras.Feature`:\n\n```py\n@miniirc_extras.Feature('feature_name')\nclass MyFeature:\n def test_func(self):\n print('test_func called with', self._irc)\n\n def __call__(self):\n print('MyFeature called with', self._irc)\n\n def __init__(self, irc):\n self._irc = irc\n```\n\nOnce registered, you can `require` and use it:\n\n```py\nirc.require('feature_name')\n\nirc.feature_name() # MyFeature called with \nirc.feature_name.test_func() # test_func called with \n```\n\n## Miscellaneous functions\n\nSome miscellaneous functions and classes are located in `miniirc_extras.utils`.\n\n| Function | Description |\n| ----------------- | ------------------------------------------------------- |\n| `DummyIRC(...)` | A subclass of `miniirc.IRC` that cannot connect to servers. `DummyIRC.__init__` has no required parameters. |\n| `dict_to_tags(tags)` | Converts a dict containing strings and booleans into an IRCv3 tags string. Example: `dict_to_tags({'tag1': True, 'tag2': 'tag-data'})` \u2192 `b'@tag1;tag2=tag-data '` |\n| `get_raw_socket(irc)` | Attempts to get the raw socket from an AbstractIRC object. This is not recommended, and under no circumstances should you attempt to receive data using this socket. **Only use this if there is no alternative.** Raises a miniirc_extras.error if no socket can be found. |\n| `tags_to_dict(tag_list, separator = ';')` | Converts a tags list (`tag1;tag2=tag-data`) joined by `separator` into a `dict` containing strings and booleans. |\n| `ircv3_message_parser(msg, *, colon=True)` | The same as `miniirc.ircv3_message_parser`, but also accepts `bytes` and `bytearray`s. The `colon` keyword argument works in the same way as the `colon` keyword argument on `miniirc.Handler`. |\n| `hostmask_to_str(hostmask)` | Converts a `Hostmask` object into a `nick!user@host` string. |\n| `ircv2_message_unparser(cmd, hostmask, tags, args, *, colon=True, encoding='utf-8')` | Converts miniirc-style message data into an IRCv2 message encoded with `encoding` (or `None` to return a `str`). When `colon` is `False`, `args[-1]` will have a colon prepended to it. |\n| `ircv3_message_unparser(cmd, hostmask, tags, args, *, colon=True, encoding='utf-8')` | The same as `ircv2_message_unparser`, but tags are added. |\n| `namedtuple(...)` | Alias for `collections.namedtuple` on Python 3.7+, otherwise a wrapper that adds `defaults` and `module` keyword arguments. |\n| `VersionInfo(major=0, minor=0, micro=0, releaselevel='final', serial=0)` | A `namedtuple` similar to `type(sys.version_info)`. |\n\n*Note that `dict_to_tags` and `tags_to_dict` are available in miniirc as\ninternal functions, however they can and will change.*\n\n### `miniirc_extras.utils.irc_from_url`\n\nAllows you to create `IRC` objects from URLs, for example\n`irc_from_url('irc://nick@ssl-server.example/#channel1,#channel2')` will create\nan `IRC` object with the nickname `nick`. Any keyword arguments passed to\n`irc_from_url` are sent to `IRC()`.\n\n### `miniirc_extras.utils.HandlerGroup`\n\nAllows you to create a group of handlers and apply them in bulk to `IRC`\nobjects.\n\n| Method | Description |\n| ----------------- | ------------------------------------------------------- |\n| `Handler(...)` | Adds a `Handler` to the group, uses the same syntax as `irc.Handler`. |\n| `CmdHandler(...)` | Adds a `CmdHandler` to the group, uses the same syntax as `irc.CmdHandler`. |\n| `add_to(irc_or_group)` | Adds all the handlers in this group to an IRC object or another handler group. |\n| `copy()` | Returns another handler group with the same handlers as this one. |\n\n### `miniirc_extras.utils.numerics`\n\nAn `Enum` of most of the IRC numerics in [RFC 1459], [RFC 2812], and\n[modern.ircdocs.horse](https://modern.ircdocs.horse/#numerics). See\n`miniirc_extras/_numerics.py` for a list of\nnumerics and their names.\n\nExample:\n```py\nimport miniirc\nfrom miniirc_extras.utils import numerics\n\n@miniirc.Handler(numerics.RPL_WELCOME, colon=False)\ndef handler(irc, hostmask, args):\n print('Connected to IRC!')\n```\n\nAnother example:\n```py\n>>> from miniirc_extras.utils import numerics\n>>> numerics.RPL_ISUPPORT\n\n>>> numerics['RPL_MOTD']\n\n>>> numerics(465)\n\n>>> numerics('422')\n\n>>> str(numerics.RPL_YOURHOST)\n'002'\n```\n\n### `miniirc_extras.aioirc`\n\nAn asyncio-oriented version of `miniirc.IRC`. Example:\n\n```py\nimport asyncio, time\nfrom miniirc_extras import aioirc\n\nirc = aioirc.AsyncIRC(ip, 6697, nickname, '#botwar', auto_connect=False)\n\n@irc.Handler('PRIVMSG', colon=False)\ndef handle_privmsg(irc, hostmask, args):\n if args[0] == '#botwar' and args[1] == '>thread_test':\n irc.msg(args[0], '[Thread] Waiting 1 second...')\n time.sleep(1)\n irc.msg(args[0], '[Thread] Done!')\n\n@irc.Handler('PRIVMSG', colon=False)\nasync def handle_privmsg(irc, hostmask, args):\n if args[0] == '#botwar' and args[1] == '>coro_test':\n await irc.msg(args[0], '[Coroutine] Waiting 1 second...')\n await asyncio.sleep(1)\n await irc.msg(args[0], '[Coroutine] Done!')\n\nif __name__ == '__main__':\n irc.connect()\n asyncio.get_event_loop().run_forever()\n```\n\nThis probably doesn't need to be used unless asyncio-based libraries need to be\nused.\n\n### `miniirc_extras.formatting`\n\nText formatting. Inspired by [ircmessage](https://pypi.org/project/ircmessage/).\n\n#### `colours`/`colors` enum\n\nThe `colours` (or `colors`) enum contains colours and their corresponding code.\nDo not use these to format text, instead use the below `style` and `colorize`\nfunctions.\n\n#### `Styler` objects\n\nStyler objects are callables that apply IRC formatting to strings.\n\n```py\nminiirc_extras.formatting.Styler(fg=None, bg=None, *,\n bold: bool = False, italics: bool = False, underline: bool = False,\n reverse_colour: bool = False, strikethrough: bool = False,\n spoiler: bool = False, monospace: bool = False, reset: bool = True)\n```\n\n*Note that `Styler` accepts both `reverse_colour` and `reverse_color`.*\n\n`fg` and `bg` can be strings or values from the aforementioned `Enum`.\n\nThe parameters passed to `__init__` are available as attributes on the object,\nfor example `styler.bold`.\n\nSetting `reset` to `False` is not recommended, as when enabled it only resets\nany changed formatting.\n\nFor cleaner code, you can also use\n`miniirc_extras.formatting.style(text, fg=None, ...)`.\n\n**Example:**\n\n```py\nfrom miniirc_extras import formatting\n\nstyler = formatting.Styler('red', bold=True, monospace=True)\nmsg = styler('Test message')\nprint(styler.fg) # \nprint(styler.fg) # None\nprint(styler.bold) # True\nprint(repr(msg)) # '\\x11\\x02\\x0304Test message\\x0399\\x02\\x11'\n\nmsg2 = formatting.style('Test message', 'red', bold=True, monospace=True)\nassert msg == msg2 # No error\n\nprint(repr(formatting.unstyle(msg))) # 'Test message'\n```\n\n#### \"Lightweight\" stylers\n\nThere are a number of predefined `Styler`s that are more efficient (if you are\nonly adding one style):\n\n```py\nbold = Styler(bold=True)\nitalics = Styler(italics=True)\nitalic = italics\nunderline = Styler(underline=True)\nreverse_colour = Styler(reverse_colour=True)\nreverse_color = reverse_colour\nstrikethrough = Styler(strikethrough=True)\nmonospace = Styler(monospace=True)\nspoiler = Styler(spoiler=True)\n```\n\nLightweight stylers are subclassed from `Styler` and will run slightly faster,\nprovided you are only changing one style.\n\nYou can also use `miniirc_extras.formatting.colorize(text, fg)` (or\n`miniirc_extras.formatting.colourise(text, fg)`) if you are only changing the\nforeground colour/color for a similarly small speed improvement.\n\n*Note that `formatting.style(text, 'red', bold=True)` is recommended over\n`formatting.bold(formatting.colorize(text, 'red'))`, as it is more readable\nand probably faster.*\n\n### Deprecated functions.\n\nThese functions still work for now but will probably be removed from\nminiirc_extras v1.0.0:\n\n#### `miniirc_extras.utils.remove_colon`\n\nThis is no longer required since miniirc v1.4.0, you can simply add the\n`colon` keyword argument to `Handler`s and `CmdHandler`s.\n\nA decorator to remove the `:` (if any) from `args[-1]` when running the handler.\nThis must be placed *after* `@miniirc.Handler`.\n\nExample:\n\n```py\n# Without colon=False.\n# This will change in miniirc v2.0.0 when the `colon` argument will default\n# to `False`.\n@miniirc.Handler('PRIVMSG')\ndef handle_privmsg(irc, hostmask, args):\n print(args) # ['#channel', ':Test message']\n\n# Deprecated, do not use this.\n@miniirc.Handler('PRIVMSG')\n@miniirc_extras.utils.remove_colon\ndef handle_privmsg(irc, hostmask, args):\n print(args) # ['#channel', 'Test message']\n\n# You should use this instead:\n@miniirc.Handler('PRIVMSG', colon=False)\ndef handle_privmsg(irc, hostmask, args):\n print(args) # ['#channel', 'Test message']\n```\n\n#### `miniirc_extras.DummyIRC`\n\nNow called `miniirc_extras.utils.DummyIRC`.\n\n#### `miniirc_extras.VersionInfo`\n\nNow called `miniirc_extras.utils.VersionInfo`.\n\n#### Other planned breaking changes\n\n - To coincide with miniirc v2.0.0, all functions that take a `colon` keyword\n argument here will default to `False` (instead of `True`). This may change\n in miniirc_extras v1.0.0 instead.\n - If Python 3.5 is obsolete by the time miniirc_extras v1.0.0 is released,\n support may be dropped.\n\n[RFC 1459]: https://tools.ietf.org/html/rfc1459\n[RFC 2812]: https://tools.ietf.org/html/rfc2812\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/luk3yx/miniirc_extras", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "miniirc-extras", "package_url": "https://pypi.org/project/miniirc-extras/", "platform": "", "project_url": "https://pypi.org/project/miniirc-extras/", "project_urls": { "Homepage": "https://github.com/luk3yx/miniirc_extras" }, "release_url": "https://pypi.org/project/miniirc-extras/0.3.0/", "requires_dist": [ "miniirc (>=1.4.3)", "deprecated (<2,>=1.2.5)" ], "requires_python": ">=3.5", "summary": "WIP extensions for miniirc.", "version": "0.3.0" }, "last_serial": 6002140, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "6e521e15ebd4fcd04341e4535d4e8035", "sha256": "e7958f4d0463e5b2531af32a9fd4c3884414b084c4d8a0ee613c9b3e3fc00973" }, "downloads": -1, "filename": "miniirc_extras-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "6e521e15ebd4fcd04341e4535d4e8035", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 4104, "upload_time": "2019-04-30T05:09:37", "url": "https://files.pythonhosted.org/packages/a7/95/407108fefcaf8f03e28460f0bad3c4781fd5b875cd7f06d3e8fbfb0c5e44/miniirc_extras-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6d9676b5add8270be17a486cc693ea95", "sha256": "7a0b094edd4844962704f61a4d93738192420b07c84150d87710036cfe7e7c2a" }, "downloads": -1, "filename": "miniirc_extras-0.0.1.tar.gz", "has_sig": false, "md5_digest": "6d9676b5add8270be17a486cc693ea95", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 2757, "upload_time": "2019-04-30T05:09:42", "url": "https://files.pythonhosted.org/packages/f5/47/a8c42283006a432e734b9aff0c3ee57987b3da7df2649f3e9c22b10dbd38/miniirc_extras-0.0.1.tar.gz" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "66609b613e9ff9836cb11f5fa8c61d37", "sha256": "1920662168d1de4a0ce2df344cdd6482073f7210a613cacbf17626ae25e0aa62" }, "downloads": -1, "filename": "miniirc_extras-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "66609b613e9ff9836cb11f5fa8c61d37", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 6041, "upload_time": "2019-05-09T05:06:32", "url": "https://files.pythonhosted.org/packages/0b/df/f43c09d614899c74e13f00171f723f5b6beb74c85564b746cb01475157b7/miniirc_extras-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d4e5a1327db76b62c124c5affc2c7812", "sha256": "4fc496c1a8d9467b27f4c25572c38cfb585dbefc689c285a6f4d6b2bd93f89da" }, "downloads": -1, "filename": "miniirc_extras-0.1.0.tar.gz", "has_sig": false, "md5_digest": "d4e5a1327db76b62c124c5affc2c7812", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 4603, "upload_time": "2019-05-09T05:06:34", "url": "https://files.pythonhosted.org/packages/19/c8/5f9c345745f211a4c82274c3f794f1c4d5580bf71fe87495cd528f50abc9/miniirc_extras-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "0cf26ec1ced64f1a8971bcfada6dbcf3", "sha256": "ce5057d5fbb6b3d9c89fec99e37c673e6c9573383ca15adb5e1b50998e155948" }, "downloads": -1, "filename": "miniirc_extras-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "0cf26ec1ced64f1a8971bcfada6dbcf3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 6575, "upload_time": "2019-05-09T07:48:23", "url": "https://files.pythonhosted.org/packages/f7/d5/b767e811500129dc757c2f402ea66acf40d216c852b11d0b44fa3474e37b/miniirc_extras-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9c4775ac7f83a3a007ddce6c85e0c3f9", "sha256": "46aa48756985a46b5340646a45f01e602d74e3c5d8f940298e6413828814bc65" }, "downloads": -1, "filename": "miniirc_extras-0.1.1.tar.gz", "has_sig": false, "md5_digest": "9c4775ac7f83a3a007ddce6c85e0c3f9", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 5199, "upload_time": "2019-05-09T07:48:24", "url": "https://files.pythonhosted.org/packages/a4/a2/151a744b4dbccfb628d2a728fe0d3846e1095eabc8b57373a5c401d8af00/miniirc_extras-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "94b198f4c15526aa79c96d6be3280c89", "sha256": "3f2fe4a2cdb60fbf279121e8448a3d339a1a33710643a517fedc7ed461fd818f" }, "downloads": -1, "filename": "miniirc_extras-0.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "94b198f4c15526aa79c96d6be3280c89", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 6574, "upload_time": "2019-05-09T19:54:55", "url": "https://files.pythonhosted.org/packages/89/6c/b68f7ba83c8b05c481439ccb80153aa83748b6935ba7152bde1af8d242e0/miniirc_extras-0.1.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ae7916984933c684f31def950a12f499", "sha256": "eff6f152b0ff8252c03fcdef7b9283c504301bf62d17dbdda218a64192d10fa1" }, "downloads": -1, "filename": "miniirc_extras-0.1.2.tar.gz", "has_sig": false, "md5_digest": "ae7916984933c684f31def950a12f499", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 5203, "upload_time": "2019-05-09T19:54:56", "url": "https://files.pythonhosted.org/packages/02/c6/a6d0efd8be232b662f3806aa61a3490246e4b89ba1cc7e33e407b77940c3/miniirc_extras-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "7a7dab8ba4310fd8af21cc078d775efc", "sha256": "8d03cef395ca83b8c34281902f8490c3c4b3df9d94ef26152519cd0cef4427e0" }, "downloads": -1, "filename": "miniirc_extras-0.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "7a7dab8ba4310fd8af21cc078d775efc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 15539, "upload_time": "2019-05-09T23:27:51", "url": "https://files.pythonhosted.org/packages/9a/4b/0a8a127bfe69dd9fb2b4e378c394598b73fc988d2977389af838f36add5a/miniirc_extras-0.1.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7d8ff8951233c0e157c01d3c96acbac2", "sha256": "e6eacbbbc8c9264ce60c2eec088d930f4952bd63f146f2d903455ab7dd9bd1e4" }, "downloads": -1, "filename": "miniirc_extras-0.1.3.tar.gz", "has_sig": false, "md5_digest": "7d8ff8951233c0e157c01d3c96acbac2", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 13411, "upload_time": "2019-05-09T23:27:52", "url": "https://files.pythonhosted.org/packages/1c/b7/494fc545c31c940e0ad0aec20fee12800dbf0494bec983d1e2d8270ad02c/miniirc_extras-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "c21504348cbce32892234dbd7a8f2164", "sha256": "587cbdd3e214062737f776dee854ffbb9d30d1db7d48f63a2aee048a215a5ddd" }, "downloads": -1, "filename": "miniirc_extras-0.1.4-py3-none-any.whl", "has_sig": false, "md5_digest": "c21504348cbce32892234dbd7a8f2164", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 16610, "upload_time": "2019-05-10T00:31:17", "url": "https://files.pythonhosted.org/packages/f2/99/2662e84d1b2d5cb9f95964802f0f6d5d45e70d40b45051c08c3a89098678/miniirc_extras-0.1.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ca1cc8632c30e41ee23ff1395cd30041", "sha256": "ebd53341565f2841d0ffba0527af51f998ac0b19ccce0fe5cec7e873c2b2ac9a" }, "downloads": -1, "filename": "miniirc_extras-0.1.4.tar.gz", "has_sig": false, "md5_digest": "ca1cc8632c30e41ee23ff1395cd30041", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 14474, "upload_time": "2019-05-10T00:31:19", "url": "https://files.pythonhosted.org/packages/58/76/6cf8c4fea4f9a9a38eed6b298839a52fd8b1e92b9d717ea1d82979ff4d2c/miniirc_extras-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "dda3262c620389b70a295c1f6eeb673e", "sha256": "695a883fcf29fae310df1639ac626b84c9e5191ad6db9a6da2b8af188afd0b68" }, "downloads": -1, "filename": "miniirc_extras-0.1.5-py3-none-any.whl", "has_sig": false, "md5_digest": "dda3262c620389b70a295c1f6eeb673e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 16738, "upload_time": "2019-05-20T01:15:24", "url": "https://files.pythonhosted.org/packages/fb/1a/69fd01f74c31f793278944e98446305d4a52b30cc06dc948ad3338fbce99/miniirc_extras-0.1.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0316206a79d8c7aa0973efd563a3a1a4", "sha256": "1ea808e2014a012a55f4eae5b4133e63889ee61f5621a002686e330741f6cf34" }, "downloads": -1, "filename": "miniirc_extras-0.1.5.tar.gz", "has_sig": false, "md5_digest": "0316206a79d8c7aa0973efd563a3a1a4", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 14754, "upload_time": "2019-05-20T01:15:26", "url": "https://files.pythonhosted.org/packages/8a/cb/98c63fed3a5d9da2927a62fe9e5181037223b4b719e607ca3295207cc705/miniirc_extras-0.1.5.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "51f4e7be937b077a265f0d550ee3f497", "sha256": "7a2e07c396a64c906af58e032c857053214619886d66376d14b5d1c2e9c27276" }, "downloads": -1, "filename": "miniirc_extras-0.1.6-py3-none-any.whl", "has_sig": false, "md5_digest": "51f4e7be937b077a265f0d550ee3f497", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 18297, "upload_time": "2019-05-20T02:31:01", "url": "https://files.pythonhosted.org/packages/09/32/bb672feeb08ded5c1ce8bed2f5df3493701c1de809cc9ec73361399b6bfc/miniirc_extras-0.1.6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a18650460b69059e3c168b7b3e51c0f2", "sha256": "59f0a9cda10a238967d8b4737d1d3c71830c7f795744390f82b2988f4a804a7c" }, "downloads": -1, "filename": "miniirc_extras-0.1.6.tar.gz", "has_sig": false, "md5_digest": "a18650460b69059e3c168b7b3e51c0f2", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 16358, "upload_time": "2019-05-20T02:31:03", "url": "https://files.pythonhosted.org/packages/87/3a/72c8e1ba929124835c1ae4c008841b5be8f2e566fc1d865684bd4090194c/miniirc_extras-0.1.6.tar.gz" } ], "0.1.7": [ { "comment_text": "", "digests": { "md5": "e53fa5d40a2a8432fade2cb09f95ace7", "sha256": "4d250cc398a7184a4bd3d65d6f0de8e3dbf970558d42eac3fad45a8086e7d91a" }, "downloads": -1, "filename": "miniirc_extras-0.1.7-py3-none-any.whl", "has_sig": false, "md5_digest": "e53fa5d40a2a8432fade2cb09f95ace7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 18329, "upload_time": "2019-05-20T04:08:41", "url": "https://files.pythonhosted.org/packages/9b/3f/811a05ce21bfdf4e8cea7bcdaafd888e7580475051a324be5c7781ba16c6/miniirc_extras-0.1.7-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5c5629a78d51a0b478f3d879e4ec3d0a", "sha256": "bb54b32bed626a789925c564ded4fb1fecdb545631b94c0807820571a4fac298" }, "downloads": -1, "filename": "miniirc_extras-0.1.7.tar.gz", "has_sig": false, "md5_digest": "5c5629a78d51a0b478f3d879e4ec3d0a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 16383, "upload_time": "2019-05-20T04:08:43", "url": "https://files.pythonhosted.org/packages/af/d6/63d847aa475448377f33b2541e877369e080aa1c8e0d31746c12982ee4e7/miniirc_extras-0.1.7.tar.gz" } ], "0.1.8": [ { "comment_text": "", "digests": { "md5": "01badd10bdf71c74fd1d504c65e54a48", "sha256": "ff70992c78a724008985d96144cdf13593202aca9c8686bae610819e374b6286" }, "downloads": -1, "filename": "miniirc_extras-0.1.8-py3-none-any.whl", "has_sig": false, "md5_digest": "01badd10bdf71c74fd1d504c65e54a48", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 18671, "upload_time": "2019-05-31T23:03:44", "url": "https://files.pythonhosted.org/packages/63/6d/9d2bf49872daca0645785ee140539150e10736ba7815897143c0dc657f5b/miniirc_extras-0.1.8-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cb9b25d782424bb47fbc50378a214f88", "sha256": "f3a3608aba174547d24d27a322016a2efe68691b3e0e7235707f7ed28007972b" }, "downloads": -1, "filename": "miniirc_extras-0.1.8.tar.gz", "has_sig": false, "md5_digest": "cb9b25d782424bb47fbc50378a214f88", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 16869, "upload_time": "2019-05-31T23:03:46", "url": "https://files.pythonhosted.org/packages/59/b9/0c563ee068f44ce042827220ee1fa83598c1604bfd95c3520a68addba7c1/miniirc_extras-0.1.8.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "a237f6a74d67c3d8b20fdc4e3f66205e", "sha256": "de91febb003e6b66cf7e6cb65a9d2e1d423d624579f2f26adee6eddd9922792f" }, "downloads": -1, "filename": "miniirc_extras-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "a237f6a74d67c3d8b20fdc4e3f66205e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 20410, "upload_time": "2019-06-10T01:48:58", "url": "https://files.pythonhosted.org/packages/31/08/e13af751ffa22ca6d8a9c0320ce772629cc579834794599a92cec9f2ae5a/miniirc_extras-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "90bbd70b14b9aacc12ffaa5635d0ebae", "sha256": "8a0691233fb602230f6be8f2f61cd4a254f3d03edd3ec97c83629dc09d500215" }, "downloads": -1, "filename": "miniirc_extras-0.2.0.tar.gz", "has_sig": false, "md5_digest": "90bbd70b14b9aacc12ffaa5635d0ebae", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 18803, "upload_time": "2019-06-10T01:49:00", "url": "https://files.pythonhosted.org/packages/7d/cd/ee632a0744180de81ec100fc0575c1639414f0dd78096019b6d4a22c37c3/miniirc_extras-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "6003b0b1a2224167a0f8d5e78b71d9b0", "sha256": "51d11868730d5213b7069a880d586be4d5f791f43fe7664bef954ca9a58b6a20" }, "downloads": -1, "filename": "miniirc_extras-0.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "6003b0b1a2224167a0f8d5e78b71d9b0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 21318, "upload_time": "2019-06-18T09:44:06", "url": "https://files.pythonhosted.org/packages/0c/79/edbbc083a33fdcdfc5feb1d4879a38ca09294d655cd4a962d48215dc7739/miniirc_extras-0.2.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9387d6ec5d52039c33c84127c5c8b4bb", "sha256": "8348f211c2d91a057957dc12cddb78fac0d60d75c471e5f315a24fe1afc9976d" }, "downloads": -1, "filename": "miniirc_extras-0.2.1.tar.gz", "has_sig": false, "md5_digest": "9387d6ec5d52039c33c84127c5c8b4bb", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 19379, "upload_time": "2019-06-18T09:44:08", "url": "https://files.pythonhosted.org/packages/89/b7/3e7eb38266532dc705a7cc09a7e1195d70d81c92f3c9d12eaeedf784dfec/miniirc_extras-0.2.1.tar.gz" } ], "0.2.10": [ { "comment_text": "", "digests": { "md5": "64a6d3a35ed5ec9c083cd7bf5e229417", "sha256": "55200dfe6c4c55702eaeed0016c92e950c032bc2e2f457cf645bcb6f2d118251" }, "downloads": -1, "filename": "miniirc_extras-0.2.10-py3-none-any.whl", "has_sig": false, "md5_digest": "64a6d3a35ed5ec9c083cd7bf5e229417", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 33335, "upload_time": "2019-07-27T07:15:45", "url": "https://files.pythonhosted.org/packages/50/e1/9d95ea625f4bc85657aba4e04085131cd568f29604216fb9744ffcf3f50e/miniirc_extras-0.2.10-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c32baf26c5d9c86dc25347b87767d9ba", "sha256": "133bb56a494dd823888a58b7dc86bd9b68252466714af621d9a98218ccdecbd0" }, "downloads": -1, "filename": "miniirc_extras-0.2.10.tar.gz", "has_sig": false, "md5_digest": "c32baf26c5d9c86dc25347b87767d9ba", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 31434, "upload_time": "2019-07-27T07:15:47", "url": "https://files.pythonhosted.org/packages/53/f4/fe97842f4f9936bc31e297985f153f52e2dfe06b10f984e42b52b7d5da59/miniirc_extras-0.2.10.tar.gz" } ], "0.2.11": [ { "comment_text": "", "digests": { "md5": "ca3108a627d8de3ad8af744768deef91", "sha256": "4245f532c076cf67be1c05b6c3715daa8bf162c071e3f929914482fe2ca5f2d7" }, "downloads": -1, "filename": "miniirc_extras-0.2.11-py3-none-any.whl", "has_sig": false, "md5_digest": "ca3108a627d8de3ad8af744768deef91", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 33602, "upload_time": "2019-07-27T07:34:45", "url": "https://files.pythonhosted.org/packages/0f/78/457031bb8dd1d875bba3e8d1228cd22739d5c7bdd838543585c9c5523b5b/miniirc_extras-0.2.11-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "07ad9fb0f5217ec73ae547d377482251", "sha256": "8b3859885e261ea041291e700543a0cb36c77d1be75905014d0962561d58f19e" }, "downloads": -1, "filename": "miniirc_extras-0.2.11.tar.gz", "has_sig": false, "md5_digest": "07ad9fb0f5217ec73ae547d377482251", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 31626, "upload_time": "2019-07-27T07:34:47", "url": "https://files.pythonhosted.org/packages/99/ae/863dad83d28f730b74f63508241e00a7e71bca38b5b1c8e9b25db2d857c7/miniirc_extras-0.2.11.tar.gz" } ], "0.2.12": [ { "comment_text": "", "digests": { "md5": "606a1ee159dd2480dbf67a9b3a2e80b0", "sha256": "247c28bb3b5c0976b25cc03f155a26842e2d2f971b262e4cdeb0d159162c2783" }, "downloads": -1, "filename": "miniirc_extras-0.2.12-py3-none-any.whl", "has_sig": false, "md5_digest": "606a1ee159dd2480dbf67a9b3a2e80b0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 34054, "upload_time": "2019-08-20T06:08:19", "url": "https://files.pythonhosted.org/packages/4d/08/1bd190004be84f6dfa3d08e6659576c6335126ce05b5308e572e050abec3/miniirc_extras-0.2.12-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "edf814116158ebe82a8b30c9a84c5b25", "sha256": "4e0643349172f2665abcf7fe6d3e720c6d015fd4fbbbff547cb4531f72aaed13" }, "downloads": -1, "filename": "miniirc_extras-0.2.12.tar.gz", "has_sig": false, "md5_digest": "edf814116158ebe82a8b30c9a84c5b25", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 32348, "upload_time": "2019-08-16T02:04:26", "url": "https://files.pythonhosted.org/packages/ba/50/2502a7f638331265f134fe8361be893129749be9c4b327ec2fc45e3c7458/miniirc_extras-0.2.12.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "e26f207698738857943e83c805dafd4f", "sha256": "683756eeb8a1b124b12ecb25ea3f1c3de7238f406b1c530ead30a93d15f512b3" }, "downloads": -1, "filename": "miniirc_extras-0.2.3-py3-none-any.whl", "has_sig": false, "md5_digest": "e26f207698738857943e83c805dafd4f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 26549, "upload_time": "2019-06-20T03:00:28", "url": "https://files.pythonhosted.org/packages/b1/45/fae250ba1c33f02a9213b9b41ac1299a5df44ca5e19b5ae5ad0636b14313/miniirc_extras-0.2.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f5e45a4fcb5a29237f1dbc06a29629a9", "sha256": "47c0ada4426c69c7b594a5ed64aa47a29fe3b101dd1eb4ce7bd350070b25c117" }, "downloads": -1, "filename": "miniirc_extras-0.2.3.tar.gz", "has_sig": false, "md5_digest": "f5e45a4fcb5a29237f1dbc06a29629a9", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 24270, "upload_time": "2019-06-20T03:00:31", "url": "https://files.pythonhosted.org/packages/b1/66/2dc832a925f671782bcd8f04951f99311a31b95d941f84f8a222bca9862b/miniirc_extras-0.2.3.tar.gz" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "b2107d2952206cf6ba6f7940e70cd821", "sha256": "ed53a5048246413e0d6f571089c9546fd003e916c76f0c375e735c2f5f13f81b" }, "downloads": -1, "filename": "miniirc_extras-0.2.4-py3-none-any.whl", "has_sig": false, "md5_digest": "b2107d2952206cf6ba6f7940e70cd821", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 29760, "upload_time": "2019-06-30T08:31:32", "url": "https://files.pythonhosted.org/packages/50/ad/d3f28f00b77c8045ef3567e2b54ca7893be763af1c0626cfce9ff2dd9638/miniirc_extras-0.2.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cac114ae232e98f935aa35b27368cf95", "sha256": "5a5873d4c28f57db4707bf09559dca57f63507f767fa9a5ab8dfcc4d9320e30e" }, "downloads": -1, "filename": "miniirc_extras-0.2.4.tar.gz", "has_sig": false, "md5_digest": "cac114ae232e98f935aa35b27368cf95", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 28208, "upload_time": "2019-06-30T08:31:35", "url": "https://files.pythonhosted.org/packages/1a/1a/4d478e49965abfafd83a65a1ee30e53af0646907691e2d21008ed59449ad/miniirc_extras-0.2.4.tar.gz" } ], "0.2.5": [ { "comment_text": "", "digests": { "md5": "8e9f229877a1db6be06d14c4687bc008", "sha256": "fce506af0fc0649a7545bd40a840ea96af45ccbaf116c2078f7b7a8c9d4de281" }, "downloads": -1, "filename": "miniirc_extras-0.2.5-py3-none-any.whl", "has_sig": false, "md5_digest": "8e9f229877a1db6be06d14c4687bc008", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 29761, "upload_time": "2019-06-30T19:31:08", "url": "https://files.pythonhosted.org/packages/8e/6e/4f75adb5f22b39735400bb6b4885b7f9dc4f7e3011241363b69e1939d2f5/miniirc_extras-0.2.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a6e906480219a78dda5ef42a15f16076", "sha256": "72af923f36847694c5cbf124c3142fc61e36129cdc30312f8c97beb6700efdb8" }, "downloads": -1, "filename": "miniirc_extras-0.2.5.tar.gz", "has_sig": false, "md5_digest": "a6e906480219a78dda5ef42a15f16076", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 28211, "upload_time": "2019-06-30T19:31:11", "url": "https://files.pythonhosted.org/packages/a7/68/acc18b2cc2592a733b6330c9e903aa1d679822931359e921c5c266ef0ca0/miniirc_extras-0.2.5.tar.gz" } ], "0.2.6": [ { "comment_text": "", "digests": { "md5": "defaaf66d8641bdc2170b9609aa132ab", "sha256": "3792c40e7cbd13e8e3bdd630ba62417291dd9c151e0de50d7b8c09498f632499" }, "downloads": -1, "filename": "miniirc_extras-0.2.6-py3-none-any.whl", "has_sig": false, "md5_digest": "defaaf66d8641bdc2170b9609aa132ab", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 30163, "upload_time": "2019-07-06T02:19:59", "url": "https://files.pythonhosted.org/packages/3a/e4/dfdab7ec0a85bf731e4a8ef48836a9e90a7b44fe5a1aeef6bd5fff7d893d/miniirc_extras-0.2.6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5826939588ceb10c7c214e16d792e8ec", "sha256": "4baa6d3fd3b5320bf1773114c34bac50e4ae65a0421176332a250d1c21a5032f" }, "downloads": -1, "filename": "miniirc_extras-0.2.6.tar.gz", "has_sig": false, "md5_digest": "5826939588ceb10c7c214e16d792e8ec", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 28800, "upload_time": "2019-07-06T02:20:01", "url": "https://files.pythonhosted.org/packages/a2/b6/e9893600c37cef8524373c43dcc4edd8e3849719a30d481ca0876c5d02fe/miniirc_extras-0.2.6.tar.gz" } ], "0.2.7": [ { "comment_text": "", "digests": { "md5": "bfebefe4045a8c86d6808d716088e5aa", "sha256": "5441ececbbed76ac6033f1b4da9bfad84509b3d59fe1164b47e6ef30ab87e3f7" }, "downloads": -1, "filename": "miniirc_extras-0.2.7-py3-none-any.whl", "has_sig": false, "md5_digest": "bfebefe4045a8c86d6808d716088e5aa", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 31509, "upload_time": "2019-07-16T23:53:54", "url": "https://files.pythonhosted.org/packages/66/42/9c40d425e57ce4ffe4c9648021e236510ef2cde277fdcfa93dc4a2187d2f/miniirc_extras-0.2.7-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9dead50e147f3474aeac317d52f6b4b6", "sha256": "672732e4132207386aa454759bd58c2cd1d0a14e785c125b701916a038050bde" }, "downloads": -1, "filename": "miniirc_extras-0.2.7.tar.gz", "has_sig": false, "md5_digest": "9dead50e147f3474aeac317d52f6b4b6", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 30075, "upload_time": "2019-07-16T23:53:56", "url": "https://files.pythonhosted.org/packages/f3/70/4c89ca4407421317021ead88910af9c1cde8ea6092039a7155ddffc91d11/miniirc_extras-0.2.7.tar.gz" } ], "0.2.8": [ { "comment_text": "", "digests": { "md5": "ca01d2a401088cbfe434e34123265f3f", "sha256": "5df4a6051cd3eefb5897b5ac880be37738986b91e52769e453a65f88f03e2989" }, "downloads": -1, "filename": "miniirc_extras-0.2.8-py3-none-any.whl", "has_sig": false, "md5_digest": "ca01d2a401088cbfe434e34123265f3f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 33226, "upload_time": "2019-07-17T06:29:51", "url": "https://files.pythonhosted.org/packages/b7/8c/c1524ef4891d8ab8f9580620bb43ef112c82052b9723818c3ea633e623b9/miniirc_extras-0.2.8-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "95ca19a29c93d546014c5a402005fb47", "sha256": "c462bf728391add64c12ebc3ac9654bdc8dac9f4c849098b1d836be11539a297" }, "downloads": -1, "filename": "miniirc_extras-0.2.8.tar.gz", "has_sig": false, "md5_digest": "95ca19a29c93d546014c5a402005fb47", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 31329, "upload_time": "2019-07-17T06:29:53", "url": "https://files.pythonhosted.org/packages/54/25/9f5b22de79f78fdd19d49df38d492f1ea032fd5c70e6c6f704191985cc29/miniirc_extras-0.2.8.tar.gz" } ], "0.2.9": [ { "comment_text": "", "digests": { "md5": "1e2d1b0d59b0c1e2b3c8eebb3b929913", "sha256": "32f7b44ee4341f6df37430e170b3cba7443dd92af3c7bcf73d70a85fd72e31ec" }, "downloads": -1, "filename": "miniirc_extras-0.2.9-py3-none-any.whl", "has_sig": false, "md5_digest": "1e2d1b0d59b0c1e2b3c8eebb3b929913", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 33248, "upload_time": "2019-07-26T03:18:35", "url": "https://files.pythonhosted.org/packages/6e/87/5dd4122239d2920c1a22b3d1420d00fe7174768f12444d82453c9125f127/miniirc_extras-0.2.9-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "15ccf09c11589be1350cd804fda7d649", "sha256": "849132413da147ed600941403625a0afe2b8f89c36efbb032f4899db3c978ec2" }, "downloads": -1, "filename": "miniirc_extras-0.2.9.tar.gz", "has_sig": false, "md5_digest": "15ccf09c11589be1350cd804fda7d649", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 31350, "upload_time": "2019-07-26T03:18:37", "url": "https://files.pythonhosted.org/packages/32/44/e381b456a264253c3c1f10948d9dfb0f31daa927fa09b4573152cf66ae2e/miniirc_extras-0.2.9.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "a5ca6d696e4a31d8c397cf30b75ebfe4", "sha256": "104cb07983329a657177679c8441a233483cbc58a4047dcd6215487676e201b1" }, "downloads": -1, "filename": "miniirc_extras-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "a5ca6d696e4a31d8c397cf30b75ebfe4", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 42344, "upload_time": "2019-10-20T06:51:11", "url": "https://files.pythonhosted.org/packages/3a/4f/ca4a1c47112c6d743009b1492aaa44ab2f78b158f479f356048b4f9d6155/miniirc_extras-0.3.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "21d347a71d0627a22e40c779819c0f6a", "sha256": "cc28162afe34edfe53784e6ebebb6e633bf16b7c64641810773d7268aeaa130d" }, "downloads": -1, "filename": "miniirc_extras-0.3.0.tar.gz", "has_sig": false, "md5_digest": "21d347a71d0627a22e40c779819c0f6a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 39429, "upload_time": "2019-10-20T06:51:14", "url": "https://files.pythonhosted.org/packages/90/d8/3d9a189974a8843727b03092e7e7732ed7c51059c5850a1c335aa127e483/miniirc_extras-0.3.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a5ca6d696e4a31d8c397cf30b75ebfe4", "sha256": "104cb07983329a657177679c8441a233483cbc58a4047dcd6215487676e201b1" }, "downloads": -1, "filename": "miniirc_extras-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "a5ca6d696e4a31d8c397cf30b75ebfe4", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 42344, "upload_time": "2019-10-20T06:51:11", "url": "https://files.pythonhosted.org/packages/3a/4f/ca4a1c47112c6d743009b1492aaa44ab2f78b158f479f356048b4f9d6155/miniirc_extras-0.3.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "21d347a71d0627a22e40c779819c0f6a", "sha256": "cc28162afe34edfe53784e6ebebb6e633bf16b7c64641810773d7268aeaa130d" }, "downloads": -1, "filename": "miniirc_extras-0.3.0.tar.gz", "has_sig": false, "md5_digest": "21d347a71d0627a22e40c779819c0f6a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 39429, "upload_time": "2019-10-20T06:51:14", "url": "https://files.pythonhosted.org/packages/90/d8/3d9a189974a8843727b03092e7e7732ed7c51059c5850a1c335aa127e483/miniirc_extras-0.3.0.tar.gz" } ] }