{
"info": {
"author": "Mike Miller",
"author_email": "mixmastamyk@github.com",
"bugtrack_url": null,
"classifiers": [
"Development Status :: 4 - Beta",
"Environment :: Console",
"Intended Audience :: Developers",
"Intended Audience :: System Administrators",
"License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)",
"Operating System :: OS Independent",
"Programming Language :: Python :: 3.4",
"Programming Language :: Python :: 3.5",
"Programming Language :: Python :: 3.6",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
"Topic :: Software Development :: Libraries",
"Topic :: Terminals"
],
"description": "\n::\n\n \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n \u2502 \u250f\u2501\u2578\u250f\u2501\u2513\u250f\u2513\u257b\u250f\u2501\u2513\u250f\u2501\u2513\u257b \u250f\u2501\u2578 \u2502\n \u2502 \u2503 \u2503 \u2503\u2503\u2517\u252b\u2517\u2501\u2513\u2503 \u2503\u2503 \u2523\u2578 \u2502\n \u2502 \u2517\u2501\u2578\u2517\u2501\u251b\u2579 \u2579\u2517\u2501\u251b\u2517\u2501\u251b\u2517\u2501\u2578\u2517\u2501\u2578 \u2502\n \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n\n*Tonight we're gonna party like it's 1979\u2026*\n\n\u2570\u2500(\u02d9\ud834\udc13\u02d9)\u2500\u256e \u256d\u2500(\uff3e0\uff3e)\u2500\u256f\n\n\n\nConsole\n============\n\n.. sidebar:: **Testimonials**\n\n - *\"\ud83d\udc4d Ayyyyyy\u2026 \ud83d\udc4d\"\u2014The\u00a0Fonz*\n - *\"DYN-O-MITE!!\" \u2014J.J.\u00a0from\u00a0Good\u00a0Times*\n - *\u201cBetter\u2026 Stronger\u2026 Faster\u201d \u2014Oscar\u00a0Goldman*\n - *\"There is nothing we won't try\u2026\" \u2014Laverne\u00a0and\u00a0Shirley*\n - *\"Nothin' can stand in our way\u2026\" \u2014Olivia\u00a0Newton-John*\n - *\"Fightin' the system like a true modern-day Robin Hood\" \u2014Waylon\u00a0Jennings*\n\n|\n\nYet another package that makes it easy to generate the inline codes used to\ndisplay colors and character styles in ANSI-compatible terminals and emulators,\nas well as other functionality such clearing screens,\nmoving cursors,\nsetting title bars,\nand detecting capabilities.\n\nHow is this one different?\nWell,\nit's highly composable and more comprehensive than most.\nHow does it work?\nIt's a piece of cake.\n\n *\"Piece of cake?\n Oh, I wish somebody would tell me what that means.\" \u2014Dr. Huer*\n\n\n\u241b\\ [1;3m *Hello World* \u241b\\ [0m\n----------------------------------------------------------\n\nThere are many flexible ways to use console's styling functionality.\nMost simply, adding a little color with console might look like this.\nFirst, import the styling palettes and go to town.\nThe palette entries (aka attributes) can be used in place of strings and handle\neverything a string might:\n\n.. code-block:: python\n\n >>> from console import fg, bg, fx\n\n >>> fg.green + 'Hello World!' + fg.default\n '\\x1b[32mHello World!\\x1b[39m'\n\n >>> f'{fx.dim}Lo-key text:{fx.end}'\n '\\x1b[2mLo-key text:\\x1b[0m'\n\n >>> print(fg.red, fx.italic, '\u2665 Heart', fx.end,\n ... ' of Glass\u2026', sep='')\n\n \u2665 Heart of Glass\u2026 # \u2190 not styled due to readme limits \ud83d\ude09\n\n\n\nFYI, the string ``'\\x1b'`` represents the ASCII Escape character\n(``27`` in decimal, ``1b`` hex).\nCommand ``[32m`` turns the text green\nand ``[39m`` back to the default color.\nBut, there's no need to worry about any of that.\nThat's why you're here, right?\n\n\n.. note::\n\n *Apologies, text output can't be styled due to PyPI/github readme\n limitations.\n Try the*\n `Sphinx docs `_\n *instead.\n When you see \"\ud83d\ude09\" in a comment, that's a reminder you're not getting\n the full monty.*\n\n**Call() Form**\n\nAbove, ``fx.end`` is a convenient object to note---\\\nit ends all styles and fore/background colors at once,\nwhere as ``fg.default`` or ``bg.default`` for example,\nresets only the fore or background to its default color.\nTo avoid that responsibility\n(while increasing specificity in what styles are deactivated),\none may also use the call-form instead,\nwhere\n`it's automatic `_:\n\n.. code-block:: python\n\n >>> fg.yellow('Far Out!') # <-- ends fg color only\n '\\x1b[33mFar Out!\\x1b[39m'\n\n >>> fx.italic('Up your nose with a rubber hose!') # italic only\n '\\x1b[3mUp your nose with a rubber hose!\\x1b[23m'\n\nThis is neat because call-form will end specific colors/styles and not\ninterfere with others.\n\nThere's also a rich-text printer that handles basic HTML\n(and even\n`hyperlinks `_\nif your terminal supports it):\n\n.. code-block:: python\n\n >>> from console.viewers import hprint as print\n >>> print('Hello World! ;-)')\n\n *Hello World! ;-)* # \ud83d\ude09\n\n\nBut there's a shitload,^H^H^H^H^H, crap-ton,^H^H^H^H^H\nerr\u2026\n*lot more!*\u00a0 Kindly read on.\n\n\n.. _compose:\n\nComposability++\n~~~~~~~~~~~~~~~~\n\n | *\"East bound and down, loaded up and truckin'\u2026*\n | *We gonna do what they say can't be done\"\u2014Smokey and the Bandit*\n\nConsole's palette entry objects are meant to be highly composable and useful in\nmultiple ways.\nFor example,\nyou might like to create your own compound styles to use over and over again.\nHow to?\u00a0\nJust add 'em up:\n\n.. ~ They can also be called (remember?) as functions if desired and have \"mixin\"\n.. ~ styles added in as well.\n.. ~ The callable form also automatically resets styles to their defaults at the end\n.. ~ of each line in the string (to avoid breaking pagers),\n.. ~ so those tasks no longer need to be managed manually:\n\n.. code-block:: python\n\n >>> muy_importante = fg.white + fx.bold + bg.red\n >>> print(muy_importante('\u00a1AHORITA!', fx.underline)) # \u2190 mixin\n\n \u00a1AHORITA! # \u2190 not styled due to readme limits \ud83d\ude09\n\nOne nice feature---\\\nwhen palette objects are combined together as done above,\nthe list of codes to be rendered is kept on ice until final output as a string.\nMeaning, there won't be redundant styling (Select Graphic Rendition) sequences\nin the output,\nno matter how many you add:\n\n.. code-block:: python\n\n '\\x1b[37;1;41;4m\u00a1AHORITA!\\x1b[0m'\n # \u21e4-----------\u21e5 One compound sequence, not four \ud83d\ude0e\n\nStyles can be built on the fly as well, if need-be:\n\n.. code-block:: python\n\n >>> print(\n ... f'{fg.i208 + fx.reverse}Tangerine Dream{fx.end}', # or\n ... (fg.i208 + fx.reverse)('Tangerine Dream'),\n ... )\n Tangerine Dream # \ud83d\ude09\n\n.. rubric:: **Templating**\n\nTo build templates,\ncall a palette entry with placeholder strings,\nwith (or instead of) text:\n\n.. code-block:: python\n\n >>> sam_template = bg.i22('{}') #\u00a0dark green\n >>> print(sam_template.format(' GREEN Eggs\u2026 '))\n\n.. code-block:: python\n\n GREEN Eggs\u2026 # No, I do not like\u2026 \ud83d\ude09\n\nOther template formats are no problem either,\ntry ``%s`` or ``${}``.\n\n\n.. rubric:: **Performance**\n\n*Outta Sight!*\n\nConsole is lightweight,\nbut perhaps you'd like a pre-rendered string to be used in a tight loop for\nperformance reasons.\nSimply use ``str()`` to finalize the output then use it in the loop.\n\n.. code-block:: python\n\n >>> msg = str(muy_importante('\u00a1AHORITA!'))\n\n >>> for i in range(100000000):\n ... print(msg) # rapidinho, por favor\n\n\n.. rubric:: **Managers**\n\nPalette entries work as context-managers as well:\n\n.. code-block:: python\n\n with bg.dodgerblue:\n print('Infield: Garvey, Lopes, Russel, Cey, Yeager')\n print('Outfield: Baker, Monday, Smith')\n print('Coach: Lasorda')\n\n\n::\n\n \u26be\n \u00b8\u00b8.\u00b7\u00b4\u00af`\u00b7.\u00b8\u00b8.\u00b7\u00b4\u00af`\u00b7.\u00b8\u00b8.\u00b7\u00b4\u00af`\u00b7.\u2afd\u2afd\u00b8\u00b8.\u00b7\u00b4\u00af`\u00b7.\u00b8\u00b8\u00b8.\u00b7\u00b4\u00af`\u00b7.\u00b8\u00b8\u00b8\n \u2afb\u2afb Tok!\n\n\nColor Palettes\n~~~~~~~~~~~~~~~\n\n *\"Looo-king Gooood!\"\u2014Chico and the Man*\n\nThe color palettes entries may be further broken down into three main\ncategories of available colors.\nUnleash your inner\n`Britto `_\nbelow:\n\n - Basic, the original 8/16 ANSI\u00a0named colors\n - Extended, a set of 256 indexed colors\n - \"True\" or \"Direct\", a.k.a. 16 million colors, consisting of either:\n\n - RGB specified colors\n - X11-named colors (built-in), or\n - Webcolors-named colors\n\nAs mentioned,\nthe original palette,\nX11,\nand Webcolor palettes\nmay be accessed directly from a palette object by name.\nFor example:\n\n.. code-block:: python\n\n # Basic Comment\n fg.red # One of the original 8 colors\n fg.lightred # Another 8 brighter colors w/o bold\n\n # Truecolor variants\n fg.bisque # Webcolors or X11 color name\n fg.navyblue # Webcolors takes precedence, if installed\n\n\n.. rubric:: Advanced Color Selection\n\n*Specific* palettes/colors may be chosen via a prefix letter and number of digits\n(or name) to specify the color.\nFor example:\n\n.. code-block:: python\n\n # Extended Format Comment\n bg.i_123 iDDD # Extended/indexed 256-color palette\n bg.n_f0f nHHH # Hex to *nearest* indexed color\n\n # Truecolor\n bg.t_ff00bb tHHH # Direct/true color, 3 or 6 digits\n bg.x_navyblue x_NM # Force an X11 color name (built-in)\n bg.w_bisque w_NM # Force Webcolors, if installed\n\n(The underscores in the attribute names that are numbers are optional.\nChoose depending whether brevity or readability are more important to you.)\n\nThe assorted truecolor forms are used to specify a color explicitly without\nambiguity\u2014\\\nX11 and Webcolors\n`differ `_\non a few obscure colors.\nThough nothing beats \"\u00fee auld\" hexdigits for certainty.\n\n.. note::\n\n Be aware,\n an unrecognized color name or index will result in an ``AttributeError``.\n\n\nInstallen-Sie, Bitte\n~~~~~~~~~~~~~~~~~~~~~\n\n.. code-block:: shell\n\n \u23f5 pip3 install --user console\n\nSuggested additional support packages,\nsome of which may be installed automatically if needed:\n\n.. code-block:: shell\n\n webcolors #\u00a0Moar! color names\n future_fstrings # Needed for: Python Version < 3.6\n\n colorama # Needed for: Windows Version < 10\n win_unicode_console # Useful: for Win Python < 3.6\n jinxed # terminfo, for SSH *into* Windows\n\n\nJah!\nWhile console is cross-platform,\n`colorama `_\nwill need to be installed and .init() run beforehand to view these examples\nunder the lame (no-ANSI support) versions of Windows < 10\n\n.. note::\n\n ``console`` supports Python 3.6 and over by default.\n However! It is trying out\n `\"future-fstrings\" `_\n for experimental support under Python versions 3.5 and 3.4,\n perhaps earlier.\n Keep an eye peeled for oddities under older Pythons.\n Sorry, neither 2.X or 1.X is supported.\u00a0 ``:-P``\n\n\nDer ``console`` package has recently been tested on:\n\n- Ubuntu Linux 20.04 - Python 3.8\n\n - xterm, mate-terminal, linux console, fbterm\n - Very occasionally on kitty, guake\n\n- FreeBSD 11 - Python 3.7\n- MacOS 11.2 - Python 3.8\n- MacOS 10.13 - Python 3.6\n\n - Terminal.app, iTerm2\n\n- Windows 10 - Python 3.7 - 64bit\n\n - Conhost, WSL, Windows Terminal\n\nNot so recently:\n\n- Windows XP - Python 3.4 - 32 bit + colorama, ansicon\n- Windows 7 - Python 3.6 - 32 bit + colorama\n\n::\n\n \u00b8\u00b8.\u00b7\u00b4\u00af`\u00b7.\u00b8\u00b8.\u00b7\u00b4\u00af`\u00b7.\u00b8\u00b8.\u00b7\u00b4\u00af`\u00b7.\u00b8\u00b8.\u00b7\u00b4\u00af`\u00b7.\u00b8\u00b8\u00b8.\u00b7\u00b4\u00af`\u00b7.\u00b8\u00b8\u00b8\n\n\nPackage Overview\n~~~~~~~~~~~~~~~~~~\n\n *\"Hey, Mr. Kot-tair!\"\u2014Freddie \"Boom Boom\" Washington*\n\nAs mentioned,\nconsole handles lots more than color and styles.\n\n.. rubric:: **Utils Module**\n\n`console.utils`\nincludes a number of nifty functions:\n\n.. code-block:: python\n\n >>> from console.utils import cls, set_title\n\n >>> cls() #\u00a0whammo! a.k.a. reset terminal\n >>> set_title('Le Freak') # c'est chic\n '\\x1b]2;Le Freak\\x07'\n\nIt can also ``strip_ansi`` from strings,\nwait for keypresses,\nclear a line or the screen (with or without scrollback),\nmake hyperlinks,\nor easily ``pause`` a script like the old ``DOS``\u00a0commands of yesteryear.\n\nThere are also modules to print stylish progress bars:\n`console.progress`,\nor beep up a storm with\n`console.beep`.\n\n\n.. rubric:: **Screen Module**\n\nWith `console.screen` you can\nsave, create a new, or restore a screen.\nMove the cursor around,\nget its position,\nand enable\n`bracketed paste `_\nif any of that floats your boat.\u00a0\n`Blessings `_-\\\ncompatible context managers are available for full-screen fun.\n\n.. code-block:: python\n\n >>> from console.screen import sc\n\n >>> with sc.location(40, 20):\n ... print('Hello, Woild.')\n\n\n.. rubric:: **Detection Module**\n\nDetect the terminal environment with\n`console.detection`:\n\n - Determine palette support\n - Redirection---is this an interactive \"``tty``\" or not?\n - Check relevant user preferences through environment variables,\n such as\n `NO_COLOR `_,\n `COLORFGBG `_,\n and\n `CLICOLOR `_,\n and even\n `TERM `_.\n - Query terminal colors and themes\u2014light or dark?\n - Get titles, cursor position, and more.\n - Legacy Windows routines are in `console.windows`\n\nConsole does its best to figure out what your terminal supports on startup\nand will configure its convenience objects\n(we imported above)\nto do the right thing.\nThey will *deactivate themselves automatically* at startup when output is\nredirected into a pipe,\nfor example.\n\nDetection can be bypassed and handled manually when needed however.\nSimply use the detection functions in the module or write your own as desired,\nthen create your own objects from the classes in the\n`console.style` and\n`console.screen`\nmodules.\n(See the Environment Variables section for full deactivation.)\n\nThere's also logging done\u2014\\\nenable the debug level before loading the console package and you'll see the\nresults of the queries from the detection module.\nSee below for a ready-made CLI example.\n\n\n.. rubric:: **Constants**\n\nA number of useful constants are provided in\n`console.constants`,\nsuch as\n`CSI `_\nand\n`OSC `_\nfor building your own apps.\nYou can:\n\n.. code-block:: python\n\n from console.constants import BEL\n print(f'Ring my {BEL}\u2026 Ring my {BEL}') # ring-a-ling-a-ling\u2026\n\n\n.. rubric:: **ASCII Table, and Command-Line Interface**\n\nA four-column ASCII table in fruity flavors is provided for your convenience\nand learning opportunities.\nThis format is great for spotting Control key correspondence with letters,\ne.g.: Ctrl+M=Enter, Ctrl+H=Backspace, etc.\n\nThis might be a good time for a quick mention of the console command-line\nprogram that runs quite a few of these utility functions and methods:\n\n.. code-block:: shell\n\n \u23f5 console ascii --link\n\n 00111 7 07 BEL 39 27 ' 71 47 G 103 67 g\n ... # \ud83d\ude09\n\nRemember the detection CLI we mentioned above? Here's how to use it:\n\n.. code-block:: shell\n\n \u23f5 console detect -v\n\n\n.. rubric:: **The Rest**\n\nSee the Advanced page for more details.\n\n\nDemos and Tests\n~~~~~~~~~~~~~~~~\n\n *\"I got chills, they're multiplyin'\u2026\"\u2014Danny Zuko*\n\nA series of positively jaw-dropping demos (haha, ok maybe not) may be run at\nthe command-line with::\n\n \u23f5 python3 -m console.demos\n\nIf you have pytest installed,\ntests can be run from the install folder.\n\n.. code-block:: shell\n\n \u23f5 pytest -s\n\nThe Makefile in the repo\n`at github `_\nhas more details on such topics.\n\n\nWrapping Up\n----------------\n\n\nContributions\n~~~~~~~~~~~~~~~~\n\n *\"Use the Source, Luke!\"\u2014'Ben' Kenobi*\n\nCould use some help testing on Windows and MacOS as my daily driver is a \ud83d\udc27 Tux\nracer.\nCan you help?\n\n\nRelease Notes\n~~~~~~~~~~~~~~~~\n\n- Version 0.9907 - Apologies, the Screen class will have a few changes in the\n names of attributes to make them more consistent.\n Stick with 0.9906 until older code can be ported.\n This should be rare before 1.0 and non-existent afterwards.\n\n\nDocumentation\n~~~~~~~~~~~~~~~~\n\nAdditional docs may be found\n`here at bitbucket. `_\n\n\nLegalese\n~~~~~~~~~~~~~~~~\n\n*\"Stickin' it to the Man\"*\n\n- Copyright 2018-2021, Mike Miller\n- Released under the LGPL, version 3+.\n- Enterprise Pricing:\n\n | 6 MEEllion dollars\u2026 *Bwah-haha-ha!*\n | (only have to sell *one* copy!)\n",
"description_content_type": "",
"docs_url": null,
"download_url": "",
"downloads": {
"last_day": -1,
"last_month": -1,
"last_week": -1
},
"home_page": "https://github.com/mixmastamyk/console",
"keywords": "ansi terminal emulator console color detection escape sequence cursor style screen shell xterm",
"license": "LGPL 3",
"maintainer": "",
"maintainer_email": "",
"name": "console",
"package_url": "https://pypi.org/project/console/",
"platform": "",
"project_url": "https://pypi.org/project/console/",
"project_urls": {
"Homepage": "https://github.com/mixmastamyk/console"
},
"release_url": "https://pypi.org/project/console/0.9907/",
"requires_dist": null,
"requires_python": "",
"summary": "Comprehensive, composable utility library for ANSI terminals. Better, stronger, faster. Tch-tch-tch-tch\u2026",
"version": "0.9907",
"yanked": false,
"yanked_reason": null
},
"last_serial": 10102638,
"releases": {
"0.98": [
{
"comment_text": "",
"digests": {
"md5": "3afa5dfbc46d154b7f795d5a2c22002c",
"sha256": "ca3382eeb9d295d986a3d4890ecf4037622b6630056c24aedfcca1302e9f189c"
},
"downloads": -1,
"filename": "console-0.98-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "3afa5dfbc46d154b7f795d5a2c22002c",
"packagetype": "bdist_wheel",
"python_version": "3.7",
"requires_python": null,
"size": 61874,
"upload_time": "2019-10-26T22:11:09",
"upload_time_iso_8601": "2019-10-26T22:11:09.462785Z",
"url": "https://files.pythonhosted.org/packages/bc/87/9f400a71a884bb0fba24fedfea42a5a1675b099f186026eaa50611422980/console-0.98-py2.py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "cdcff49e23da822a3cf71086f5634752",
"sha256": "48c1d7800cfd70c915ab7f70ce54e1e019de7e63ef3f986d04adbeaec8f11c32"
},
"downloads": -1,
"filename": "console-0.98.tar.gz",
"has_sig": false,
"md5_digest": "cdcff49e23da822a3cf71086f5634752",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 59377,
"upload_time": "2019-10-26T22:11:07",
"upload_time_iso_8601": "2019-10-26T22:11:07.012705Z",
"url": "https://files.pythonhosted.org/packages/65/66/911e8890480f8613cdc4088790acdedb8b633840f80750d72cd1f5cd9bfe/console-0.98.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"0.9906": [
{
"comment_text": "",
"digests": {
"md5": "eda0c2024029165956aba1a6673ce7e0",
"sha256": "4a965120e4d19700c5fdfa9a30903d9620ef6386e50a108b4856f2f51f1804f1"
},
"downloads": -1,
"filename": "console-0.9906-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "eda0c2024029165956aba1a6673ce7e0",
"packagetype": "bdist_wheel",
"python_version": "3.8",
"requires_python": null,
"size": 93478,
"upload_time": "2021-02-23T23:28:47",
"upload_time_iso_8601": "2021-02-23T23:28:47.266794Z",
"url": "https://files.pythonhosted.org/packages/c5/29/64eda6c87ec0267f8de75d8bc88ed63a049b6b1f27a496ceeec0080aa5ce/console-0.9906-py2.py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "e1c0ebbdb56a8e4b5a574966b3b623a9",
"sha256": "b147aa3870c4609c4ab261c0e277526a9ee66f5009258c1aea970e7efd1b8db5"
},
"downloads": -1,
"filename": "console-0.9906.tar.gz",
"has_sig": false,
"md5_digest": "e1c0ebbdb56a8e4b5a574966b3b623a9",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 90024,
"upload_time": "2021-02-23T23:28:45",
"upload_time_iso_8601": "2021-02-23T23:28:45.254298Z",
"url": "https://files.pythonhosted.org/packages/a8/7c/5f96aa0df72bf25af06575a2294b185e5c89dbb0cea0456b05e65e2fd924/console-0.9906.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"0.9907": [
{
"comment_text": "",
"digests": {
"md5": "920f53f4a6f0288716a11d7e8e56b326",
"sha256": "5a96b54e93e15c04d7df2ee7e8521a674002483f6375162212b517892b834389"
},
"downloads": -1,
"filename": "console-0.9907-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "920f53f4a6f0288716a11d7e8e56b326",
"packagetype": "bdist_wheel",
"python_version": "3.8",
"requires_python": null,
"size": 95707,
"upload_time": "2021-04-19T06:24:18",
"upload_time_iso_8601": "2021-04-19T06:24:18.638030Z",
"url": "https://files.pythonhosted.org/packages/56/67/bd4f1bf7d82345e7a2a8e658f4b5419623a1c6349efc55172ebe76ec8f74/console-0.9907-py2.py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "694649250513488eb2b4c2c5d46434ce",
"sha256": "bdcab2b99c21176bcdbbfbcfd117f34d4211cc55a0c2376e236b4f82ba3533af"
},
"downloads": -1,
"filename": "console-0.9907.tar.gz",
"has_sig": false,
"md5_digest": "694649250513488eb2b4c2c5d46434ce",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 92533,
"upload_time": "2021-04-19T06:24:15",
"upload_time_iso_8601": "2021-04-19T06:24:15.895733Z",
"url": "https://files.pythonhosted.org/packages/84/df/49c40a9f45d861f3bb0390f59808482ebf0d433d56e6b6bc0c9c6f26598a/console-0.9907.tar.gz",
"yanked": false,
"yanked_reason": null
}
]
},
"urls": [
{
"comment_text": "",
"digests": {
"md5": "920f53f4a6f0288716a11d7e8e56b326",
"sha256": "5a96b54e93e15c04d7df2ee7e8521a674002483f6375162212b517892b834389"
},
"downloads": -1,
"filename": "console-0.9907-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "920f53f4a6f0288716a11d7e8e56b326",
"packagetype": "bdist_wheel",
"python_version": "3.8",
"requires_python": null,
"size": 95707,
"upload_time": "2021-04-19T06:24:18",
"upload_time_iso_8601": "2021-04-19T06:24:18.638030Z",
"url": "https://files.pythonhosted.org/packages/56/67/bd4f1bf7d82345e7a2a8e658f4b5419623a1c6349efc55172ebe76ec8f74/console-0.9907-py2.py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "694649250513488eb2b4c2c5d46434ce",
"sha256": "bdcab2b99c21176bcdbbfbcfd117f34d4211cc55a0c2376e236b4f82ba3533af"
},
"downloads": -1,
"filename": "console-0.9907.tar.gz",
"has_sig": false,
"md5_digest": "694649250513488eb2b4c2c5d46434ce",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 92533,
"upload_time": "2021-04-19T06:24:15",
"upload_time_iso_8601": "2021-04-19T06:24:15.895733Z",
"url": "https://files.pythonhosted.org/packages/84/df/49c40a9f45d861f3bb0390f59808482ebf0d433d56e6b6bc0c9c6f26598a/console-0.9907.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"vulnerabilities": []
}