Urwid
=====
|pypi| |docs| |gitter| |ci| |pre-commit| |coveralls|
About
=====
Urwid is a console user interface library for Python on Linux, OSX, Cygwin or other unix-like OS
and partially supports Windows OS (see below).
It includes many features useful for text console application developers including:
- Applications resize quickly and smoothly
- Automatic, programmable text alignment and wrapping
- Simple markup for setting text attributes within blocks of text
- Powerful list box with programmable content for scrolling all widget types
- Your choice of event loops: Twisted, Glib, Tornado, asyncio, trio, ZeroMQ or select-based loop
- Pre-built widgets include edit boxes, buttons, check boxes and radio buttons
- Display modules include raw, curses, and experimental LCD and web displays
- Support for UTF-8, simple 8-bit and CJK encodings
- 24-bit (true color), 256 color, and 88 color mode support
- Compatible with Python 3.7+ and PyPy
Home Page:
http://urwid.org/
Installation
============
To install using pip
.. code:: bash
pip install urwid
For advanced functionality extra requirements need to be installed.
Example for ZeroMQ event loop and LCD display:
.. code:: bash
pip install urwid[serial,zmq]
Alternatively if you are on Debian or Ubuntu
.. code:: bash
apt-get install python3-urwid
Windows support notes
=====================
* Not supported:
1. Terminal widget and all related render API (TermCanvas, TermCharset, TermModes, TermScroller)
2. Any file descriptors except sockets (Windows OS limitation)
3. ZMQEventLoop.
* Special requirements:
1. Extra libraries required for curses display support:
.. code-block:: bash
pip install urwid[curses]
* CursesDisplay incorrectly handles mouse input in case of fast actions.
* Only UTF-8 mode is supported.
Testing
=======
To run tests locally, install & run `tox`. You must have
appropriate Python versions installed to run `tox` for
each of them.
To test code in all Python versions:
.. code:: bash
tox # Test all versions specified in tox.ini:
tox -e py39 # Test Python 3.9 only
tox -e py39,py10,pypy3 # Test Python 3.9, Python 3.10 & pypy3
Supported Python versions
=========================
- 3.7
- 3.8
- 3.9
- 3.10
- 3.11
- 3.12
- 3.13
- pypy3
Authors
=======
Creator
-------
`wardi <//github.com/wardi>`_
Maintainers
-----------
`and3rson <//github.com/and3rson>`_,
`tonycpsu <//github.com/tonycpsu>`_,
`ulidtko <//github.com/ulidtko>`_,
`penguinolog <//github.com/penguinolog>`_
Contributors
------------
`1in7billion <//github.com/1in7billion>`_,
`abadger <//github.com/abadger>`_,
`agrenott <//github.com/agrenott>`_,
`akorb <//github.com/akorb>`_,
`alethiophile <//github.com/alethiophile>`_,
`aleufroy <//github.com/aleufroy>`_,
`alobbs <//github.com/alobbs>`_,
`amjltc295 <//github.com/amjltc295>`_,
`and-semakin <//github.com/and-semakin>`_,
`andrewshadura <//github.com/andrewshadura>`_,
`andy-z <//github.com/andy-z>`_,
`anttin2020 <//github.com/anttin2020>`_,
`Apteryks <//github.com/Apteryks>`_,
`Arfrever <//github.com/Arfrever>`_,
`AutoAwesome <//github.com/AutoAwesome>`_,
`belak <//github.com/belak>`_,
`berney <//github.com/berney>`_,
`bk2204 <//github.com/bk2204>`_,
`BkPHcgQL3V <//github.com/BkPHcgQL3V>`_,
`bwesterb <//github.com/bwesterb>`_,
`carlos-jenkins <//github.com/carlos-jenkins>`_,
`Certseeds <//github.com/Certseeds>`_,
`Chipsterjulien <//github.com/Chipsterjulien>`_,
`chrisspen <//github.com/chrisspen>`_,
`cltrudeau <//github.com/cltrudeau>`_,
`Codeberg-AsGithubAlternative-buhtz <//github.com/Codeberg-AsGithubAlternative-buhtz>`_,
`cortesi <//github.com/cortesi>`_,
`d0c-s4vage <//github.com/d0c-s4vage>`_,
`derdon <//github.com/derdon>`_,
`dholth <//github.com/dholth>`_,
`dimays <//github.com/dimays>`_,
`dlo <//github.com/dlo>`_,
`dnaeon <//github.com/dnaeon>`_,
`doddo <//github.com/doddo>`_,
`douglas-larocca <//github.com/douglas-larocca>`_,
`drestebon <//github.com/drestebon>`_,
`dsotr <//github.com/dsotr>`_,
`dwf <//github.com/dwf>`_,
`EdwardBetts <//github.com/EdwardBetts>`_,
`elenril <//github.com/elenril>`_,
`EnricoBilla <//github.com/EnricoBilla>`_,
`extempore <//github.com/extempore>`_,
`fabiand <//github.com/fabiand>`_,
`floppym <//github.com/floppym>`_,
`flowblok <//github.com/flowblok>`_,
`fmoreau <//github.com/fmoreau>`_,
`goncalopp <//github.com/goncalopp>`_,
`Gordin <//github.com/Gordin>`_,
`GregIngelmo <//github.com/GregIngelmo>`_,
`grzaks <//github.com/grzaks>`_,
`gurupras <//github.com/gurupras>`_,
`HarveyHunt <//github.com/HarveyHunt>`_,
`Hoolean <//github.com/Hoolean>`_,
`hukka <//github.com/hukka>`_,
`hydratim <//github.com/hydratim>`_,
`ids1024 <//github.com/ids1024>`_,
`imrek <//github.com/imrek>`_,
`isovector <//github.com/isovector>`_,
`itaisod <//github.com/itaisod>`_,
`ixxra <//github.com/ixxra>`_,
`jeblair <//github.com/jeblair>`_,
`johndeaton <//github.com/johndeaton>`_,
`jonblack <//github.com/jonblack>`_,
`jspricke <//github.com/jspricke>`_,
`kedder <//github.com/kedder>`_,
`Kelketek <//github.com/Kelketek>`_,
`KennethNielsen <//github.com/KennethNielsen>`_,
`kesipyc <//github.com/kesipyc>`_,
`kkrolczyk <//github.com/kkrolczyk>`_,
`Kwpolska <//github.com/Kwpolska>`_,
`Lahorde <//github.com/Lahorde>`_,
`laike9m <//github.com/laike9m>`_,
`larsks <//github.com/larsks>`_,
`lfam <//github.com/lfam>`_,
`lgbaldoni <//github.com/lgbaldoni>`_,
`lighth7015 <//github.com/lighth7015>`_,
`livibetter <//github.com/livibetter>`_,
`Lothiraldan <//github.com/Lothiraldan>`_,
`Mad-ness <//github.com/Mad-ness>`_,
`madebr <//github.com/madebr>`_,
`magniff <//github.com/magniff>`_,
`marlox-ouda <//github.com/marlox-ouda>`_,
`mattymo <//github.com/mattymo>`_,
`mdtrooper <//github.com/mdtrooper>`_,
`mgk <//github.com/mgk>`_,
`mimi1vx <//github.com/mimi1vx>`_,
`mobyte0 <//github.com/mobyte0>`_,
`MonAaraj <//github.com/MonAaraj>`_,
`MonthlyPython <//github.com/MonthlyPython>`_,
`mountainstorm <//github.com/mountainstorm>`_,
`mselee <//github.com/mselee>`_,
`mwhudson <//github.com/mwhudson>`_,
`naquad <//github.com/naquad>`_,
`nchavez324 <//github.com/nchavez324>`_,
`neumond <//github.com/neumond>`_,
`nolash <//github.com/nolash>`_,
`ntamas <//github.com/ntamas>`_,
`nyov <//github.com/nyov>`_,
`ocarneiro <//github.com/ocarneiro>`_,
`okayzed <//github.com/okayzed>`_,
`pquentin <//github.com/pquentin>`_,
`rbanffy <//github.com/rbanffy>`_,
`ReddyKilowatt <//github.com/ReddyKilowatt>`_,
`regebro <//github.com/regebro>`_,
`renegarcia <//github.com/renegarcia>`_,
`rianhunter <//github.com/rianhunter>`_,
`roburban <//github.com/roburban>`_,
`RRMoelker <//github.com/RRMoelker>`_,
`rwarren <//github.com/rwarren>`_,
`scopatz <//github.com/scopatz>`_,
`seanhussey <//github.com/seanhussey>`_,
`seonon <//github.com/seonon>`_,
`shadedKE <//github.com/shadedKE>`_,
`sithglan <//github.com/sithglan>`_,
`Sjc1000 <//github.com/Sjc1000>`_,
`sporkexec <//github.com/sporkexec>`_,
`squrky <//github.com/squrky>`_,
`ssbr <//github.com/ssbr>`_,
`techdragon <//github.com/techdragon>`_,
`thehunmonkgroup <//github.com/thehunmonkgroup>`_,
`thisch <//github.com/thisch>`_,
`thornycrackers <//github.com/thornycrackers>`_,
`TomasTomecek <//github.com/TomasTomecek>`_,
`tompickering <//github.com/tompickering>`_,
`tony <//github.com/tony>`_,
`ttanner <//github.com/ttanner>`_,
`tu500 <//github.com/tu500>`_,
`uSpike <//github.com/uSpike>`_,
`vega0 <//github.com/vega0>`_,
`vit1251 <//github.com/vit1251>`_,
`waveform80 <//github.com/waveform80>`_,
`Wesmania <//github.com/Wesmania>`_,
`xandfury <//github.com/xandfury>`_,
`xndcn <//github.com/xndcn>`_,
`zhongshangwu <//github.com/zhongshangwu>`_,
`zrax <//github.com/zrax>`_
.. |pypi| image:: https://img.shields.io/pypi/v/urwid
:alt: current version on PyPi
:target: https://pypi.python.org/pypi/urwid
.. |docs| image:: https://github.com/urwid/urwid/actions/workflows/documentation.yml/badge.svg?branch=master
:alt: Documentation Status
:target: https://urwid.org
.. |gitter| image:: https://img.shields.io/gitter/room/urwid/community
:alt: Gitter
:target: https://gitter.im/urwid/community
.. |ci| image:: https://github.com/urwid/urwid/actions/workflows/pythonpackage.yml/badge.svg?branch=master
:target: https://github.com/urwid/urwid/actions
:alt: CI status
.. |pre-commit| image:: https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit
:target: https://github.com/pre-commit/pre-commit
:alt: pre-commit
.. |coveralls| image:: https://coveralls.io/repos/github/urwid/urwid/badge.svg
:alt: test coverage
:target: https://coveralls.io/github/urwid/urwid
Raw data
{
"_id": null,
"home_page": "https://urwid.org/",
"name": "urwid",
"maintainer": null,
"docs_url": null,
"requires_python": ">3.7",
"maintainer_email": null,
"keywords": "curses, ui, widget, scroll, listbox, user interface, text layout, console, ncurses",
"author": null,
"author_email": "Ian Ward <ian@excess.org>",
"download_url": "https://files.pythonhosted.org/packages/98/21/ad23c9e961b2d36d57c63686a6f86768dd945d406323fb58c84f09478530/urwid-2.6.16.tar.gz",
"platform": "unix-like",
"description": "Urwid\n=====\n|pypi| |docs| |gitter| |ci| |pre-commit| |coveralls|\n\nAbout\n=====\n\nUrwid is a console user interface library for Python on Linux, OSX, Cygwin or other unix-like OS\nand partially supports Windows OS (see below).\n\nIt includes many features useful for text console application developers including:\n\n- Applications resize quickly and smoothly\n- Automatic, programmable text alignment and wrapping\n- Simple markup for setting text attributes within blocks of text\n- Powerful list box with programmable content for scrolling all widget types\n- Your choice of event loops: Twisted, Glib, Tornado, asyncio, trio, ZeroMQ or select-based loop\n- Pre-built widgets include edit boxes, buttons, check boxes and radio buttons\n- Display modules include raw, curses, and experimental LCD and web displays\n- Support for UTF-8, simple 8-bit and CJK encodings\n- 24-bit (true color), 256 color, and 88 color mode support\n- Compatible with Python 3.7+ and PyPy\n\nHome Page:\n http://urwid.org/\n\nInstallation\n============\n\nTo install using pip\n\n.. code:: bash\n\n pip install urwid\n\nFor advanced functionality extra requirements need to be installed.\nExample for ZeroMQ event loop and LCD display:\n\n.. code:: bash\n\n pip install urwid[serial,zmq]\n\nAlternatively if you are on Debian or Ubuntu\n\n.. code:: bash\n\n apt-get install python3-urwid\n\nWindows support notes\n=====================\n\n* Not supported:\n\n1. Terminal widget and all related render API (TermCanvas, TermCharset, TermModes, TermScroller)\n2. Any file descriptors except sockets (Windows OS limitation)\n3. ZMQEventLoop.\n\n* Special requirements:\n\n1. Extra libraries required for curses display support:\n\n.. code-block:: bash\n\n pip install urwid[curses]\n\n* CursesDisplay incorrectly handles mouse input in case of fast actions.\n* Only UTF-8 mode is supported.\n\n\nTesting\n=======\n\nTo run tests locally, install & run `tox`. You must have\nappropriate Python versions installed to run `tox` for\neach of them.\n\nTo test code in all Python versions:\n\n.. code:: bash\n\n tox # Test all versions specified in tox.ini:\n tox -e py39 # Test Python 3.9 only\n tox -e py39,py10,pypy3 # Test Python 3.9, Python 3.10 & pypy3\n\nSupported Python versions\n=========================\n\n- 3.7\n- 3.8\n- 3.9\n- 3.10\n- 3.11\n- 3.12\n- 3.13\n- pypy3\n\nAuthors\n=======\n\nCreator\n-------\n\n`wardi <//github.com/wardi>`_\n\nMaintainers\n-----------\n\n`and3rson <//github.com/and3rson>`_,\n`tonycpsu <//github.com/tonycpsu>`_,\n`ulidtko <//github.com/ulidtko>`_,\n`penguinolog <//github.com/penguinolog>`_\n\nContributors\n------------\n\n`1in7billion <//github.com/1in7billion>`_,\n`abadger <//github.com/abadger>`_,\n`agrenott <//github.com/agrenott>`_,\n`akorb <//github.com/akorb>`_,\n`alethiophile <//github.com/alethiophile>`_,\n`aleufroy <//github.com/aleufroy>`_,\n`alobbs <//github.com/alobbs>`_,\n`amjltc295 <//github.com/amjltc295>`_,\n`and-semakin <//github.com/and-semakin>`_,\n`andrewshadura <//github.com/andrewshadura>`_,\n`andy-z <//github.com/andy-z>`_,\n`anttin2020 <//github.com/anttin2020>`_,\n`Apteryks <//github.com/Apteryks>`_,\n`Arfrever <//github.com/Arfrever>`_,\n`AutoAwesome <//github.com/AutoAwesome>`_,\n`belak <//github.com/belak>`_,\n`berney <//github.com/berney>`_,\n`bk2204 <//github.com/bk2204>`_,\n`BkPHcgQL3V <//github.com/BkPHcgQL3V>`_,\n`bwesterb <//github.com/bwesterb>`_,\n`carlos-jenkins <//github.com/carlos-jenkins>`_,\n`Certseeds <//github.com/Certseeds>`_,\n`Chipsterjulien <//github.com/Chipsterjulien>`_,\n`chrisspen <//github.com/chrisspen>`_,\n`cltrudeau <//github.com/cltrudeau>`_,\n`Codeberg-AsGithubAlternative-buhtz <//github.com/Codeberg-AsGithubAlternative-buhtz>`_,\n`cortesi <//github.com/cortesi>`_,\n`d0c-s4vage <//github.com/d0c-s4vage>`_,\n`derdon <//github.com/derdon>`_,\n`dholth <//github.com/dholth>`_,\n`dimays <//github.com/dimays>`_,\n`dlo <//github.com/dlo>`_,\n`dnaeon <//github.com/dnaeon>`_,\n`doddo <//github.com/doddo>`_,\n`douglas-larocca <//github.com/douglas-larocca>`_,\n`drestebon <//github.com/drestebon>`_,\n`dsotr <//github.com/dsotr>`_,\n`dwf <//github.com/dwf>`_,\n`EdwardBetts <//github.com/EdwardBetts>`_,\n`elenril <//github.com/elenril>`_,\n`EnricoBilla <//github.com/EnricoBilla>`_,\n`extempore <//github.com/extempore>`_,\n`fabiand <//github.com/fabiand>`_,\n`floppym <//github.com/floppym>`_,\n`flowblok <//github.com/flowblok>`_,\n`fmoreau <//github.com/fmoreau>`_,\n`goncalopp <//github.com/goncalopp>`_,\n`Gordin <//github.com/Gordin>`_,\n`GregIngelmo <//github.com/GregIngelmo>`_,\n`grzaks <//github.com/grzaks>`_,\n`gurupras <//github.com/gurupras>`_,\n`HarveyHunt <//github.com/HarveyHunt>`_,\n`Hoolean <//github.com/Hoolean>`_,\n`hukka <//github.com/hukka>`_,\n`hydratim <//github.com/hydratim>`_,\n`ids1024 <//github.com/ids1024>`_,\n`imrek <//github.com/imrek>`_,\n`isovector <//github.com/isovector>`_,\n`itaisod <//github.com/itaisod>`_,\n`ixxra <//github.com/ixxra>`_,\n`jeblair <//github.com/jeblair>`_,\n`johndeaton <//github.com/johndeaton>`_,\n`jonblack <//github.com/jonblack>`_,\n`jspricke <//github.com/jspricke>`_,\n`kedder <//github.com/kedder>`_,\n`Kelketek <//github.com/Kelketek>`_,\n`KennethNielsen <//github.com/KennethNielsen>`_,\n`kesipyc <//github.com/kesipyc>`_,\n`kkrolczyk <//github.com/kkrolczyk>`_,\n`Kwpolska <//github.com/Kwpolska>`_,\n`Lahorde <//github.com/Lahorde>`_,\n`laike9m <//github.com/laike9m>`_,\n`larsks <//github.com/larsks>`_,\n`lfam <//github.com/lfam>`_,\n`lgbaldoni <//github.com/lgbaldoni>`_,\n`lighth7015 <//github.com/lighth7015>`_,\n`livibetter <//github.com/livibetter>`_,\n`Lothiraldan <//github.com/Lothiraldan>`_,\n`Mad-ness <//github.com/Mad-ness>`_,\n`madebr <//github.com/madebr>`_,\n`magniff <//github.com/magniff>`_,\n`marlox-ouda <//github.com/marlox-ouda>`_,\n`mattymo <//github.com/mattymo>`_,\n`mdtrooper <//github.com/mdtrooper>`_,\n`mgk <//github.com/mgk>`_,\n`mimi1vx <//github.com/mimi1vx>`_,\n`mobyte0 <//github.com/mobyte0>`_,\n`MonAaraj <//github.com/MonAaraj>`_,\n`MonthlyPython <//github.com/MonthlyPython>`_,\n`mountainstorm <//github.com/mountainstorm>`_,\n`mselee <//github.com/mselee>`_,\n`mwhudson <//github.com/mwhudson>`_,\n`naquad <//github.com/naquad>`_,\n`nchavez324 <//github.com/nchavez324>`_,\n`neumond <//github.com/neumond>`_,\n`nolash <//github.com/nolash>`_,\n`ntamas <//github.com/ntamas>`_,\n`nyov <//github.com/nyov>`_,\n`ocarneiro <//github.com/ocarneiro>`_,\n`okayzed <//github.com/okayzed>`_,\n`pquentin <//github.com/pquentin>`_,\n`rbanffy <//github.com/rbanffy>`_,\n`ReddyKilowatt <//github.com/ReddyKilowatt>`_,\n`regebro <//github.com/regebro>`_,\n`renegarcia <//github.com/renegarcia>`_,\n`rianhunter <//github.com/rianhunter>`_,\n`roburban <//github.com/roburban>`_,\n`RRMoelker <//github.com/RRMoelker>`_,\n`rwarren <//github.com/rwarren>`_,\n`scopatz <//github.com/scopatz>`_,\n`seanhussey <//github.com/seanhussey>`_,\n`seonon <//github.com/seonon>`_,\n`shadedKE <//github.com/shadedKE>`_,\n`sithglan <//github.com/sithglan>`_,\n`Sjc1000 <//github.com/Sjc1000>`_,\n`sporkexec <//github.com/sporkexec>`_,\n`squrky <//github.com/squrky>`_,\n`ssbr <//github.com/ssbr>`_,\n`techdragon <//github.com/techdragon>`_,\n`thehunmonkgroup <//github.com/thehunmonkgroup>`_,\n`thisch <//github.com/thisch>`_,\n`thornycrackers <//github.com/thornycrackers>`_,\n`TomasTomecek <//github.com/TomasTomecek>`_,\n`tompickering <//github.com/tompickering>`_,\n`tony <//github.com/tony>`_,\n`ttanner <//github.com/ttanner>`_,\n`tu500 <//github.com/tu500>`_,\n`uSpike <//github.com/uSpike>`_,\n`vega0 <//github.com/vega0>`_,\n`vit1251 <//github.com/vit1251>`_,\n`waveform80 <//github.com/waveform80>`_,\n`Wesmania <//github.com/Wesmania>`_,\n`xandfury <//github.com/xandfury>`_,\n`xndcn <//github.com/xndcn>`_,\n`zhongshangwu <//github.com/zhongshangwu>`_,\n`zrax <//github.com/zrax>`_\n\n\n.. |pypi| image:: https://img.shields.io/pypi/v/urwid\n :alt: current version on PyPi\n :target: https://pypi.python.org/pypi/urwid\n\n.. |docs| image:: https://github.com/urwid/urwid/actions/workflows/documentation.yml/badge.svg?branch=master\n :alt: Documentation Status\n :target: https://urwid.org\n\n.. |gitter| image:: https://img.shields.io/gitter/room/urwid/community\n :alt: Gitter\n :target: https://gitter.im/urwid/community\n\n.. |ci| image:: https://github.com/urwid/urwid/actions/workflows/pythonpackage.yml/badge.svg?branch=master\n :target: https://github.com/urwid/urwid/actions\n :alt: CI status\n\n.. |pre-commit| image:: https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit\n :target: https://github.com/pre-commit/pre-commit\n :alt: pre-commit\n\n.. |coveralls| image:: https://coveralls.io/repos/github/urwid/urwid/badge.svg\n :alt: test coverage\n :target: https://coveralls.io/github/urwid/urwid\n",
"bugtrack_url": null,
"license": "LGPL-2.1-only",
"summary": "A full-featured console (xterm et al.) user interface library",
"version": "2.6.16",
"project_urls": {
"Bug Tracker": "https://github.com/urwid/urwid/issues",
"Documentation": "https://urwid.org/manual/index.html",
"Homepage": "https://urwid.org/",
"Repository": "https://github.com/urwid/urwid"
},
"split_keywords": [
"curses",
" ui",
" widget",
" scroll",
" listbox",
" user interface",
" text layout",
" console",
" ncurses"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "54cb271a4f5a1bf4208dbdc96d85b9eae744cf4e5e11ac73eda76dc98c8fd2d7",
"md5": "0342de197cc9fa3804dc1dd9e4fa7c26",
"sha256": "de14896c6df9eb759ed1fd93e0384a5279e51e0dde8f621e4083f7a8368c0797"
},
"downloads": -1,
"filename": "urwid-2.6.16-py3-none-any.whl",
"has_sig": false,
"md5_digest": "0342de197cc9fa3804dc1dd9e4fa7c26",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">3.7",
"size": 297196,
"upload_time": "2024-10-15T16:07:22",
"upload_time_iso_8601": "2024-10-15T16:07:22.521123Z",
"url": "https://files.pythonhosted.org/packages/54/cb/271a4f5a1bf4208dbdc96d85b9eae744cf4e5e11ac73eda76dc98c8fd2d7/urwid-2.6.16-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "9821ad23c9e961b2d36d57c63686a6f86768dd945d406323fb58c84f09478530",
"md5": "214f9cea321ccae131cecfaef2a4aa9a",
"sha256": "93ad239939e44c385e64aa00027878b9e5c486d59e855ec8ab5b1e1adcdb32a2"
},
"downloads": -1,
"filename": "urwid-2.6.16.tar.gz",
"has_sig": false,
"md5_digest": "214f9cea321ccae131cecfaef2a4aa9a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">3.7",
"size": 848179,
"upload_time": "2024-10-15T16:07:24",
"upload_time_iso_8601": "2024-10-15T16:07:24.297912Z",
"url": "https://files.pythonhosted.org/packages/98/21/ad23c9e961b2d36d57c63686a6f86768dd945d406323fb58c84f09478530/urwid-2.6.16.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-15 16:07:24",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "urwid",
"github_project": "urwid",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "typing-extensions",
"specs": []
},
{
"name": "wcwidth",
"specs": []
}
],
"test_requirements": [
{
"name": "tornado",
"specs": [
[
">=",
"5"
]
]
},
{
"name": "twisted",
"specs": []
},
{
"name": "trio",
"specs": []
},
{
"name": "zmq",
"specs": []
},
{
"name": "exceptiongroup",
"specs": []
},
{
"name": "windows-curses",
"specs": []
},
{
"name": "pyserial",
"specs": []
},
{
"name": "coverage",
"specs": []
}
],
"tox": true,
"lcname": "urwid"
}