urwid 2.6.15__tar.gz → 3.0.5__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- urwid-3.0.5/.devcontainer/dev.dockerfile +15 -0
- {urwid-2.6.15 → urwid-3.0.5}/.devcontainer/devcontainer.json +6 -1
- {urwid-2.6.15 → urwid-3.0.5}/.github/workflows/documentation.yml +7 -9
- {urwid-2.6.15 → urwid-3.0.5}/.github/workflows/isolated_static_check.yml +13 -32
- {urwid-2.6.15 → urwid-3.0.5}/.github/workflows/labels.yml +1 -1
- {urwid-2.6.15 → urwid-3.0.5}/.github/workflows/pythonpackage.yml +32 -46
- {urwid-2.6.15 → urwid-3.0.5}/.github/workflows/yamllint.yml +2 -2
- {urwid-2.6.15 → urwid-3.0.5}/.pre-commit-config.yaml +8 -22
- {urwid-2.6.15 → urwid-3.0.5}/PKG-INFO +15 -15
- {urwid-2.6.15 → urwid-3.0.5}/README.rst +5 -3
- {urwid-2.6.15 → urwid-3.0.5}/classifiers.txt +3 -4
- {urwid-2.6.15 → urwid-3.0.5}/docs/changelog.rst +841 -5
- {urwid-2.6.15 → urwid-3.0.5}/docs/conf.py +0 -4
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/bigtext.py +3 -1
- urwid-3.0.5/docs/examples/edit_text.txt +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/palette_test.py +2 -2
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/real_browse.py +0 -1
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/real_edit.py +3 -2
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/wanat_multi.py +1 -1
- {urwid-2.6.15 → urwid-3.0.5}/docs/reference/deprecated.rst +2 -6
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/smenu.py +1 -1
- {urwid-2.6.15 → urwid-3.0.5}/examples/asyncio_socket_server.py +8 -9
- {urwid-2.6.15 → urwid-3.0.5}/examples/bigtext.py +3 -1
- {urwid-2.6.15 → urwid-3.0.5}/examples/browse.py +0 -1
- {urwid-2.6.15 → urwid-3.0.5}/examples/calc.py +0 -1
- {urwid-2.6.15 → urwid-3.0.5}/examples/edit.py +3 -2
- {urwid-2.6.15 → urwid-3.0.5}/examples/lcd_cf635.py +1 -1
- {urwid-2.6.15 → urwid-3.0.5}/examples/palette_test.py +2 -2
- {urwid-2.6.15 → urwid-3.0.5}/examples/twisted_serve_ssh.py +3 -3
- urwid-3.0.5/pylint-requirements.txt +1 -0
- {urwid-2.6.15 → urwid-3.0.5}/pyproject.toml +25 -14
- urwid-3.0.5/requirements.txt +1 -0
- urwid-3.0.5/ruff-requirements.txt +1 -0
- {urwid-2.6.15 → urwid-3.0.5}/tests/test_canvas.py +7 -7
- {urwid-2.6.15 → urwid-3.0.5}/tests/test_columns.py +7 -8
- {urwid-2.6.15 → urwid-3.0.5}/tests/test_escapes.py +1 -1
- {urwid-2.6.15 → urwid-3.0.5}/tests/test_event_loops.py +13 -3
- urwid-3.0.5/tests/test_grapheme_clusters.py +210 -0
- {urwid-2.6.15 → urwid-3.0.5}/tests/test_line_box.py +26 -0
- {urwid-2.6.15 → urwid-3.0.5}/tests/test_main_loop.py +17 -12
- {urwid-2.6.15 → urwid-3.0.5}/tests/test_pile.py +113 -0
- {urwid-2.6.15 → urwid-3.0.5}/tests/test_scrollable.py +20 -1
- {urwid-2.6.15 → urwid-3.0.5}/tests/test_text_layout.py +24 -12
- {urwid-2.6.15 → urwid-3.0.5}/tests/test_tree.py +1 -2
- {urwid-2.6.15 → urwid-3.0.5}/tests/test_util.py +26 -26
- {urwid-2.6.15 → urwid-3.0.5}/tox.ini +7 -21
- {urwid-2.6.15 → urwid-3.0.5}/urwid/__init__.py +30 -20
- {urwid-2.6.15 → urwid-3.0.5}/urwid/canvas.py +34 -53
- {urwid-2.6.15 → urwid-3.0.5}/urwid/command_map.py +6 -4
- {urwid-2.6.15 → urwid-3.0.5}/urwid/container.py +1 -1
- {urwid-2.6.15 → urwid-3.0.5}/urwid/decoration.py +1 -1
- {urwid-2.6.15 → urwid-3.0.5}/urwid/display/__init__.py +53 -48
- {urwid-2.6.15 → urwid-3.0.5}/urwid/display/_posix_raw_display.py +20 -8
- {urwid-2.6.15 → urwid-3.0.5}/urwid/display/_raw_display_base.py +21 -16
- {urwid-2.6.15 → urwid-3.0.5}/urwid/display/_win32_raw_display.py +16 -17
- {urwid-2.6.15 → urwid-3.0.5}/urwid/display/common.py +45 -74
- {urwid-2.6.15 → urwid-3.0.5}/urwid/display/curses.py +3 -5
- {urwid-2.6.15 → urwid-3.0.5}/urwid/display/escape.py +28 -13
- {urwid-2.6.15 → urwid-3.0.5}/urwid/display/lcd.py +8 -10
- {urwid-2.6.15 → urwid-3.0.5}/urwid/display/web.py +11 -16
- {urwid-2.6.15 → urwid-3.0.5}/urwid/event_loop/asyncio_loop.py +35 -15
- {urwid-2.6.15 → urwid-3.0.5}/urwid/event_loop/main_loop.py +18 -23
- {urwid-2.6.15 → urwid-3.0.5}/urwid/event_loop/tornado_loop.py +4 -5
- {urwid-2.6.15 → urwid-3.0.5}/urwid/event_loop/trio_loop.py +1 -1
- {urwid-2.6.15 → urwid-3.0.5}/urwid/font.py +19 -22
- {urwid-2.6.15 → urwid-3.0.5}/urwid/numedit.py +65 -65
- {urwid-2.6.15 → urwid-3.0.5}/urwid/signals.py +19 -27
- {urwid-2.6.15 → urwid-3.0.5}/urwid/split_repr.py +9 -3
- {urwid-2.6.15 → urwid-3.0.5}/urwid/str_util.py +105 -60
- {urwid-2.6.15 → urwid-3.0.5}/urwid/text_layout.py +14 -13
- {urwid-2.6.15 → urwid-3.0.5}/urwid/util.py +8 -19
- urwid-3.0.5/urwid/version.py +34 -0
- {urwid-2.6.15 → urwid-3.0.5}/urwid/vterm.py +20 -47
- {urwid-2.6.15 → urwid-3.0.5}/urwid/widget/__init__.py +0 -6
- {urwid-2.6.15 → urwid-3.0.5}/urwid/widget/attr_map.py +10 -10
- {urwid-2.6.15 → urwid-3.0.5}/urwid/widget/attr_wrap.py +11 -13
- {urwid-2.6.15 → urwid-3.0.5}/urwid/widget/bar_graph.py +3 -8
- {urwid-2.6.15 → urwid-3.0.5}/urwid/widget/big_text.py +8 -9
- {urwid-2.6.15 → urwid-3.0.5}/urwid/widget/box_adapter.py +6 -6
- {urwid-2.6.15 → urwid-3.0.5}/urwid/widget/columns.py +52 -83
- {urwid-2.6.15 → urwid-3.0.5}/urwid/widget/container.py +29 -75
- {urwid-2.6.15 → urwid-3.0.5}/urwid/widget/divider.py +6 -6
- {urwid-2.6.15 → urwid-3.0.5}/urwid/widget/edit.py +50 -50
- {urwid-2.6.15 → urwid-3.0.5}/urwid/widget/filler.py +14 -14
- {urwid-2.6.15 → urwid-3.0.5}/urwid/widget/frame.py +31 -40
- {urwid-2.6.15 → urwid-3.0.5}/urwid/widget/grid_flow.py +25 -110
- {urwid-2.6.15 → urwid-3.0.5}/urwid/widget/line_box.py +31 -18
- {urwid-2.6.15 → urwid-3.0.5}/urwid/widget/listbox.py +16 -51
- {urwid-2.6.15 → urwid-3.0.5}/urwid/widget/monitored_list.py +75 -49
- {urwid-2.6.15 → urwid-3.0.5}/urwid/widget/overlay.py +4 -37
- {urwid-2.6.15 → urwid-3.0.5}/urwid/widget/padding.py +31 -68
- {urwid-2.6.15 → urwid-3.0.5}/urwid/widget/pile.py +179 -158
- {urwid-2.6.15 → urwid-3.0.5}/urwid/widget/popup.py +2 -2
- {urwid-2.6.15 → urwid-3.0.5}/urwid/widget/progress_bar.py +17 -18
- {urwid-2.6.15 → urwid-3.0.5}/urwid/widget/scrollable.py +26 -34
- {urwid-2.6.15 → urwid-3.0.5}/urwid/widget/solid_fill.py +3 -3
- {urwid-2.6.15 → urwid-3.0.5}/urwid/widget/text.py +44 -30
- {urwid-2.6.15 → urwid-3.0.5}/urwid/widget/treetools.py +27 -48
- {urwid-2.6.15 → urwid-3.0.5}/urwid/widget/widget.py +13 -130
- {urwid-2.6.15 → urwid-3.0.5}/urwid/widget/widget_decoration.py +6 -35
- {urwid-2.6.15 → urwid-3.0.5}/urwid/widget/wimp.py +61 -61
- {urwid-2.6.15 → urwid-3.0.5}/urwid/wimp.py +1 -1
- {urwid-2.6.15 → urwid-3.0.5}/urwid.egg-info/PKG-INFO +15 -15
- {urwid-2.6.15 → urwid-3.0.5}/urwid.egg-info/SOURCES.txt +1 -3
- {urwid-2.6.15 → urwid-3.0.5}/urwid.egg-info/requires.txt +4 -3
- urwid-2.6.15/.devcontainer/dev.dockerfile +0 -8
- urwid-2.6.15/black-requirements.txt +0 -1
- urwid-2.6.15/docs/examples/edit_text.txt +0 -11
- urwid-2.6.15/isort-requirements.txt +0 -1
- urwid-2.6.15/pylint-requirements.txt +0 -1
- urwid-2.6.15/requirements.txt +0 -2
- urwid-2.6.15/ruff-requirements.txt +0 -1
- urwid-2.6.15/setup.py +0 -33
- urwid-2.6.15/urwid/version.py +0 -16
- {urwid-2.6.15 → urwid-3.0.5}/.coveralls.yml +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/.dockerignore +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/.editorconfig +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/.github/CODE_OF_CONDUCT.md +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/.github/ISSUE_TEMPLATE/docs.md +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/.github/ISSUE_TEMPLATE/question.md +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/.github/dependabot.yml +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/.github/labeler.yml +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/.github/release.yml +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/.gitignore +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/.yamllint.yml +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/COPYING +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/MANIFEST.in +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/Makefile +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/bigtext.py.xdotool +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/bigtext1.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/bigtext2.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/bigtext3.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/browse.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/browse.py.xdotool +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/browse1.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/browse2.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/edit.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/edit.py.xdotool +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/edit1.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/edit2.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/graph.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/graph.py.xdotool +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/graph1.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/graph2.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/index.rst +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/palette_test.py.xdotool +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/palette_test1.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/palette_test2.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/pop_up.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/pop_up.py.xdotool +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/pop_up1.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/pop_up2.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/subproc.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/subproc.py.xdotool +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/subproc1.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/subproc2.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/subproc2.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/tour.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/tour.py.xdotool +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/tour1.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/examples/tour2.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/index.rst +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/bright_combinations.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/bright_combinations.py.xdotool +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/bright_combinations1.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/canvascache.rst +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/displayattributes.rst +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/displaymodules.rst +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/encodings.rst +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/images/display_modules.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/images/introduction.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/images/urwid_widgets.svgz +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/images/urwid_widgets_1.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/images/urwid_widgets_1.xcf +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/images/urwid_widgets_2.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/images/urwid_widgets_2.xcf +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/images/widget_layout.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/index.rst +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/mainloop.rst +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/overview.rst +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/safe_combinations.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/safe_combinations.py.xdotool +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/safe_combinations1.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/textlayout.rst +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/userinput.rst +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/wanat.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/wcur1.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/wcur2.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/widgets.rst +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/wmod.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/manual/wsel.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/reference/attrspec.rst +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/reference/canvas.rst +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/reference/command_map.rst +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/reference/constants.rst +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/reference/display_modules.rst +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/reference/exceptions.rst +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/reference/global_settings.rst +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/reference/index.rst +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/reference/list_walkers.rst +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/reference/main_loop.rst +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/reference/meta.rst +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/reference/signals.rst +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/reference/text_layout.rst +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/reference/widget.rst +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tools/compile_pngs.sh +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tools/screenshots.sh +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tools/static/.placeholder +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tools/templates/indexcontent.html +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tools/templates/indexsidebar.html +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tools/templates/localtoc.html +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/adventure.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/adventure.py.xdotool +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/adventure1.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/adventure2.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/adventure3.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/adventure4.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/cmenu.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/cmenu.py.xdotool +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/cmenu1.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/cmenu2.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/cmenu3.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/cmenu4.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/highcolors.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/highcolors.py.xdotool +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/highcolors1.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/hmenu.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/hmenu.py.xdotool +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/hmenu1.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/hmenu2.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/hmenu3.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/hmenu4.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/index.rst +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/input.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/input.py.xdotool +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/input1.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/input2.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/input3.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/input4.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/input5.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/menu25.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/minimal.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/minimal.py.xdotool +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/minimal1.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/multiple.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/multiple.py.xdotool +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/multiple1.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/multiple2.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/multiple3.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/multiple4.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/qa.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/qa.py.xdotool +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/qa1.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/qa2.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/qa3.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/sig.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/sig.py.xdotool +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/sig1.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/sig2.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/sig3.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/sig4.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/smenu.py.xdotool +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/smenu1.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/smenu2.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/smenu3.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/urwid_attr.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/urwid_attr.py.xdotool +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/urwid_attr1.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/urwid_attr2.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/urwid_attr3.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/tutorial/urwid_attr4.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/docs/urwid-logo.png +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/examples/dialog.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/examples/fib.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/examples/graph.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/examples/input_test.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/examples/pop_up.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/examples/subproc.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/examples/subproc2.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/examples/terminal.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/examples/tour.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/examples/treesample.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/examples/twisted_serve_ssh.tac +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/setup.cfg +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/test_requirements.txt +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/tests/__init__.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/tests/test_container.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/tests/test_doctests.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/tests/test_filler.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/tests/test_floatedit.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/tests/test_font.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/tests/test_frame.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/tests/test_graphics.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/tests/test_grid_flow.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/tests/test_listbox.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/tests/test_moved_imports.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/tests/test_overlay.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/tests/test_padding.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/tests/test_raw_display.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/tests/test_signals.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/tests/test_str_util.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/tests/test_vterm.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/tests/test_widget.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/tests/util.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/urwid/display/_web.css +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/urwid/display/_web.js +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/urwid/display/_win32.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/urwid/display/html_fragment.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/urwid/display/raw.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/urwid/event_loop/__init__.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/urwid/event_loop/abstract_loop.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/urwid/event_loop/glib_loop.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/urwid/event_loop/select_loop.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/urwid/event_loop/twisted_loop.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/urwid/event_loop/zmq_loop.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/urwid/graphics.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/urwid/widget/constants.py +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/urwid.egg-info/dependency_links.txt +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/urwid.egg-info/not-zip-safe +0 -0
- {urwid-2.6.15 → urwid-3.0.5}/urwid.egg-info/top_level.txt +0 -0
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
FROM ubuntu:24.04
|
|
2
|
+
RUN apt-get update -y \
|
|
3
|
+
&& apt-get upgrade -y \
|
|
4
|
+
&& apt-get install -y \
|
|
5
|
+
python3-dev \
|
|
6
|
+
python3-pip \
|
|
7
|
+
python3-virtualenv \
|
|
8
|
+
python3-gi \
|
|
9
|
+
python3-gi-cairo \
|
|
10
|
+
gobject-introspection \
|
|
11
|
+
libgirepository-2.0-dev \
|
|
12
|
+
libcairo2-dev \
|
|
13
|
+
&& apt-get clean
|
|
14
|
+
RUN mkdir -p ~/.virtualenvs \
|
|
15
|
+
&& virtualenv --download ~/.virtualenvs/urwid
|
|
@@ -6,6 +6,11 @@
|
|
|
6
6
|
"ghcr.io/devcontainers/features/github-cli": {}
|
|
7
7
|
},
|
|
8
8
|
"customizations": {
|
|
9
|
+
"jetbrains": {
|
|
10
|
+
"settings": {
|
|
11
|
+
"com.intellij:app:Vcs-Log-App-Settings.show_changes_from_parents": true
|
|
12
|
+
}
|
|
13
|
+
},
|
|
9
14
|
// Configure properties specific to VS Code.
|
|
10
15
|
"vscode": {
|
|
11
16
|
// Set *default* container specific settings.json values on container create.
|
|
@@ -32,4 +37,4 @@
|
|
|
32
37
|
"init": true,
|
|
33
38
|
"postCreateCommand": "~/.virtualenvs/urwid/bin/pip3 install isort black ruff pylint refurb mypy",
|
|
34
39
|
"postStartCommand": "~/.virtualenvs/urwid/bin/pip3 install -r test_requirements.txt PyGObject && ~/.virtualenvs/urwid/bin/pip3 install -U -e ."
|
|
35
|
-
}
|
|
40
|
+
}
|
|
@@ -16,7 +16,6 @@ on:
|
|
|
16
16
|
- "docs/**"
|
|
17
17
|
- "README.rst"
|
|
18
18
|
- "urwid/**"
|
|
19
|
-
- "setup.py"
|
|
20
19
|
- "pyproject.toml"
|
|
21
20
|
- ".github/workflows/documentation.yml"
|
|
22
21
|
|
|
@@ -24,29 +23,28 @@ jobs:
|
|
|
24
23
|
Build:
|
|
25
24
|
runs-on: ubuntu-latest
|
|
26
25
|
steps:
|
|
27
|
-
- uses: actions/checkout@
|
|
26
|
+
- uses: actions/checkout@v6
|
|
28
27
|
with:
|
|
29
28
|
fetch-depth: 0 # need for setuptools_scm
|
|
30
29
|
- name: Set up Python
|
|
31
|
-
uses: actions/setup-python@
|
|
30
|
+
uses: actions/setup-python@v6
|
|
32
31
|
with:
|
|
33
32
|
python-version: '3.x'
|
|
34
33
|
cache: 'pip'
|
|
35
34
|
- name: Install Ubuntu dependencies
|
|
36
35
|
run: |
|
|
37
36
|
sudo apt-get -qq update
|
|
38
|
-
sudo apt-get install -y python3-
|
|
37
|
+
sudo apt-get install -y python3-dev python3-gi python3-gi-cairo
|
|
38
|
+
sudo apt-get install -y gobject-introspection libgirepository-2.0-dev libcairo2-dev
|
|
39
39
|
- name: Install python dependencies
|
|
40
40
|
run: |
|
|
41
41
|
pip install -U -r test_requirements.txt PyGObject
|
|
42
|
-
pip install -U sphinx
|
|
42
|
+
pip install -U sphinx
|
|
43
43
|
- name: Install main package
|
|
44
44
|
run: pip install -e .
|
|
45
45
|
- name: Build documentation
|
|
46
|
-
env:
|
|
47
|
-
SPHINX_GITHUB_CHANGELOG_TOKEN: ${{ secrets.URWID_SPHINX_RO_TOKEN }}
|
|
48
46
|
run: sphinx-build docs build/documentation
|
|
49
|
-
- uses: actions/upload-artifact@
|
|
47
|
+
- uses: actions/upload-artifact@v6
|
|
50
48
|
with:
|
|
51
49
|
path: build/documentation
|
|
52
|
-
name: documentation
|
|
50
|
+
name: documentation
|
|
@@ -4,57 +4,37 @@ on:
|
|
|
4
4
|
pull_request:
|
|
5
5
|
paths:
|
|
6
6
|
- "ruff-requirements.txt"
|
|
7
|
-
- "black-requirements.txt"
|
|
8
|
-
- "isort-requirements.txt"
|
|
9
7
|
|
|
10
8
|
concurrency:
|
|
11
9
|
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
|
|
12
10
|
cancel-in-progress: true
|
|
13
11
|
|
|
14
12
|
jobs:
|
|
15
|
-
|
|
16
|
-
name: Validate
|
|
13
|
+
Ruff-format:
|
|
14
|
+
name: Validate formatting
|
|
17
15
|
runs-on: ubuntu-latest
|
|
18
16
|
steps:
|
|
19
|
-
- uses: actions/checkout@
|
|
17
|
+
- uses: actions/checkout@v6
|
|
20
18
|
- name: Set up Python
|
|
21
|
-
uses: actions/setup-python@
|
|
19
|
+
uses: actions/setup-python@v6
|
|
22
20
|
with:
|
|
23
21
|
python-version: '3.x'
|
|
24
22
|
cache: 'pip'
|
|
25
23
|
- name: Install dependencies
|
|
26
24
|
run: |
|
|
27
25
|
python -m pip install --upgrade pip
|
|
28
|
-
pip install --upgrade -r
|
|
29
|
-
- name: Check
|
|
30
|
-
run: |
|
|
31
|
-
isort --check --diff .
|
|
32
|
-
|
|
33
|
-
Black:
|
|
34
|
-
name: Validate black formatting
|
|
35
|
-
runs-on: ubuntu-latest
|
|
36
|
-
steps:
|
|
37
|
-
- uses: actions/checkout@v4
|
|
38
|
-
- name: Set up Python
|
|
39
|
-
uses: actions/setup-python@v5
|
|
40
|
-
with:
|
|
41
|
-
python-version: '3.x'
|
|
42
|
-
cache: 'pip'
|
|
43
|
-
- name: Install dependencies
|
|
44
|
-
run: |
|
|
45
|
-
python -m pip install --upgrade pip
|
|
46
|
-
pip install --upgrade -r black-requirements.txt
|
|
47
|
-
- name: Check code style with black
|
|
26
|
+
pip install --upgrade -r ruff-requirements.txt
|
|
27
|
+
- name: Check code style with ruff
|
|
48
28
|
run: |
|
|
49
|
-
|
|
29
|
+
ruff format --check .
|
|
50
30
|
|
|
51
31
|
Ruff:
|
|
52
32
|
name: Check with Ruff
|
|
53
33
|
runs-on: ubuntu-latest
|
|
54
34
|
steps:
|
|
55
|
-
- uses: actions/checkout@
|
|
35
|
+
- uses: actions/checkout@v6
|
|
56
36
|
- name: Set up Python
|
|
57
|
-
uses: actions/setup-python@
|
|
37
|
+
uses: actions/setup-python@v6
|
|
58
38
|
with:
|
|
59
39
|
python-version: '3.x'
|
|
60
40
|
cache: 'pip'
|
|
@@ -70,13 +50,14 @@ jobs:
|
|
|
70
50
|
name: Check with pylint
|
|
71
51
|
runs-on: ubuntu-latest
|
|
72
52
|
steps:
|
|
73
|
-
- uses: actions/checkout@
|
|
53
|
+
- uses: actions/checkout@v6
|
|
74
54
|
- name: Install Ubuntu dependencies
|
|
75
55
|
run: |
|
|
76
56
|
sudo apt-get -qq update
|
|
77
|
-
sudo apt-get install -y python3-
|
|
57
|
+
sudo apt-get install -y python3-dev python3-gi python3-gi-cairo
|
|
58
|
+
sudo apt-get install -y gobject-introspection libgirepository-2.0-dev libcairo2-dev
|
|
78
59
|
- name: Set up Python
|
|
79
|
-
uses: actions/setup-python@
|
|
60
|
+
uses: actions/setup-python@v6
|
|
80
61
|
with:
|
|
81
62
|
python-version: '3.x'
|
|
82
63
|
cache: 'pip'
|
|
@@ -12,7 +12,6 @@ on:
|
|
|
12
12
|
paths:
|
|
13
13
|
- "urwid/**"
|
|
14
14
|
- "source/**"
|
|
15
|
-
- "setup.py"
|
|
16
15
|
- "pyproject.toml"
|
|
17
16
|
- "MANIFEST.in"
|
|
18
17
|
- "README.rst"
|
|
@@ -27,49 +26,31 @@ concurrency:
|
|
|
27
26
|
cancel-in-progress: true
|
|
28
27
|
|
|
29
28
|
jobs:
|
|
30
|
-
|
|
31
|
-
name: Validate
|
|
29
|
+
Ruff-format:
|
|
30
|
+
name: Validate formatting
|
|
32
31
|
runs-on: ubuntu-latest
|
|
33
32
|
steps:
|
|
34
|
-
- uses: actions/checkout@
|
|
33
|
+
- uses: actions/checkout@v6
|
|
35
34
|
- name: Set up Python
|
|
36
|
-
uses: actions/setup-python@
|
|
35
|
+
uses: actions/setup-python@v6
|
|
37
36
|
with:
|
|
38
37
|
python-version: '3.x'
|
|
39
38
|
cache: 'pip'
|
|
40
39
|
- name: Install dependencies
|
|
41
40
|
run: |
|
|
42
41
|
python -m pip install --upgrade pip
|
|
43
|
-
pip install --upgrade -r
|
|
44
|
-
- name: Check
|
|
45
|
-
run: |
|
|
46
|
-
isort --check --diff .
|
|
47
|
-
|
|
48
|
-
Black:
|
|
49
|
-
name: Validate black formatting
|
|
50
|
-
runs-on: ubuntu-latest
|
|
51
|
-
steps:
|
|
52
|
-
- uses: actions/checkout@v4
|
|
53
|
-
- name: Set up Python
|
|
54
|
-
uses: actions/setup-python@v5
|
|
55
|
-
with:
|
|
56
|
-
python-version: '3.x'
|
|
57
|
-
cache: 'pip'
|
|
58
|
-
- name: Install dependencies
|
|
59
|
-
run: |
|
|
60
|
-
python -m pip install --upgrade pip
|
|
61
|
-
pip install --upgrade -r black-requirements.txt
|
|
62
|
-
- name: Check code style with black
|
|
42
|
+
pip install --upgrade -r ruff-requirements.txt
|
|
43
|
+
- name: Check code style with ruff
|
|
63
44
|
run: |
|
|
64
|
-
|
|
45
|
+
ruff format --check .
|
|
65
46
|
|
|
66
47
|
Ruff:
|
|
67
48
|
name: Check with Ruff
|
|
68
49
|
runs-on: ubuntu-latest
|
|
69
50
|
steps:
|
|
70
|
-
- uses: actions/checkout@
|
|
51
|
+
- uses: actions/checkout@v6
|
|
71
52
|
- name: Set up Python
|
|
72
|
-
uses: actions/setup-python@
|
|
53
|
+
uses: actions/setup-python@v6
|
|
73
54
|
with:
|
|
74
55
|
python-version: '3.x'
|
|
75
56
|
cache: 'pip'
|
|
@@ -85,13 +66,14 @@ jobs:
|
|
|
85
66
|
name: Check with pylint
|
|
86
67
|
runs-on: ubuntu-latest
|
|
87
68
|
steps:
|
|
88
|
-
- uses: actions/checkout@
|
|
69
|
+
- uses: actions/checkout@v6
|
|
89
70
|
- name: Install Ubuntu dependencies
|
|
90
71
|
run: |
|
|
91
72
|
sudo apt-get -qq update
|
|
92
|
-
sudo apt-get install -y python3-
|
|
73
|
+
sudo apt-get install -y python3-dev python3-gi python3-gi-cairo
|
|
74
|
+
sudo apt-get install -y gobject-introspection libgirepository-2.0-dev libcairo2-dev
|
|
93
75
|
- name: Set up Python
|
|
94
|
-
uses: actions/setup-python@
|
|
76
|
+
uses: actions/setup-python@v6
|
|
95
77
|
with:
|
|
96
78
|
python-version: '3.x'
|
|
97
79
|
cache: 'pip'
|
|
@@ -106,7 +88,7 @@ jobs:
|
|
|
106
88
|
run: pylint --output-format=github urwid
|
|
107
89
|
|
|
108
90
|
Test:
|
|
109
|
-
needs: [
|
|
91
|
+
needs: [ Ruff-format, Ruff, PyLint ]
|
|
110
92
|
runs-on: ${{ matrix.os }}
|
|
111
93
|
strategy:
|
|
112
94
|
max-parallel: 6
|
|
@@ -114,14 +96,17 @@ jobs:
|
|
|
114
96
|
os: [ "ubuntu-latest", "windows-latest" ]
|
|
115
97
|
# , "macos-latest"
|
|
116
98
|
# enable macOS only if OS specific branch will be added
|
|
117
|
-
python-version: [ "3.
|
|
99
|
+
python-version: [ "3.9", "3.10", "3.11", "3.12", "3.13", "3.14" ]
|
|
100
|
+
exclude:
|
|
101
|
+
- os: "windows-latest"
|
|
102
|
+
python-version: "3.14"
|
|
118
103
|
|
|
119
104
|
steps:
|
|
120
|
-
- uses: actions/checkout@
|
|
105
|
+
- uses: actions/checkout@v6
|
|
121
106
|
with:
|
|
122
107
|
fetch-depth: 0 # need for setuptools_scm
|
|
123
108
|
- name: Set up Python ${{ matrix.python-version }}
|
|
124
|
-
uses: actions/setup-python@
|
|
109
|
+
uses: actions/setup-python@v6
|
|
125
110
|
with:
|
|
126
111
|
python-version: ${{ matrix.python-version }}
|
|
127
112
|
allow-prereleases: true
|
|
@@ -130,7 +115,8 @@ jobs:
|
|
|
130
115
|
if: runner.os == 'Linux'
|
|
131
116
|
run: |
|
|
132
117
|
sudo apt-get -qq update
|
|
133
|
-
sudo apt-get install -y python3-
|
|
118
|
+
sudo apt-get install -y python3-dev python3-gi python3-gi-cairo
|
|
119
|
+
sudo apt-get install -y gobject-introspection libgirepository-2.0-dev libcairo2-dev
|
|
134
120
|
- name: Install Mac OS X dependencies
|
|
135
121
|
if: runner.os == 'macOS'
|
|
136
122
|
run: |
|
|
@@ -169,16 +155,16 @@ jobs:
|
|
|
169
155
|
|
|
170
156
|
build:
|
|
171
157
|
name: Build distribution
|
|
172
|
-
needs: [ Test,
|
|
158
|
+
needs: [ Test, Ruff-format, Ruff, PyLint ]
|
|
173
159
|
runs-on: ubuntu-latest
|
|
174
160
|
steps:
|
|
175
|
-
- uses: actions/checkout@
|
|
161
|
+
- uses: actions/checkout@v6
|
|
176
162
|
with:
|
|
177
163
|
fetch-depth: 0 # need for setuptools_scm
|
|
178
164
|
|
|
179
|
-
- uses: actions/setup-python@
|
|
165
|
+
- uses: actions/setup-python@v6
|
|
180
166
|
with:
|
|
181
|
-
python-version: "3.
|
|
167
|
+
python-version: "3.x"
|
|
182
168
|
|
|
183
169
|
- name: Install dependencies
|
|
184
170
|
run: pip install -U build
|
|
@@ -186,13 +172,13 @@ jobs:
|
|
|
186
172
|
- name: Build dist
|
|
187
173
|
run: python -m build
|
|
188
174
|
|
|
189
|
-
- uses: actions/upload-artifact@
|
|
175
|
+
- uses: actions/upload-artifact@v6
|
|
190
176
|
with:
|
|
191
177
|
path: dist/*.tar.gz
|
|
192
178
|
name: built-sdist
|
|
193
179
|
retention-days: 3
|
|
194
180
|
|
|
195
|
-
- uses: actions/upload-artifact@
|
|
181
|
+
- uses: actions/upload-artifact@v6
|
|
196
182
|
with:
|
|
197
183
|
path: dist/*.whl
|
|
198
184
|
name: built-bdist
|
|
@@ -203,9 +189,9 @@ jobs:
|
|
|
203
189
|
runs-on: ubuntu-latest
|
|
204
190
|
needs: [ build ]
|
|
205
191
|
steps:
|
|
206
|
-
- uses: actions/checkout@
|
|
192
|
+
- uses: actions/checkout@v6
|
|
207
193
|
- name: Set up Python
|
|
208
|
-
uses: actions/setup-python@
|
|
194
|
+
uses: actions/setup-python@v6
|
|
209
195
|
with:
|
|
210
196
|
python-version: '3.x'
|
|
211
197
|
cache: 'pip'
|
|
@@ -213,7 +199,7 @@ jobs:
|
|
|
213
199
|
run: |
|
|
214
200
|
python -m pip install --upgrade pip
|
|
215
201
|
pip install --upgrade twine
|
|
216
|
-
- uses: actions/download-artifact@
|
|
202
|
+
- uses: actions/download-artifact@v7
|
|
217
203
|
with:
|
|
218
204
|
# unpacks default artifact into dist/
|
|
219
205
|
# if `name: wheels` is omitted, the action will create extra parent dir
|
|
@@ -238,7 +224,7 @@ jobs:
|
|
|
238
224
|
permissions:
|
|
239
225
|
id-token: write # IMPORTANT: this permission is mandatory for trusted publishing
|
|
240
226
|
steps:
|
|
241
|
-
- uses: actions/download-artifact@
|
|
227
|
+
- uses: actions/download-artifact@v7
|
|
242
228
|
with:
|
|
243
229
|
pattern: built-*
|
|
244
230
|
merge-multiple: true
|
|
@@ -10,9 +10,9 @@ jobs:
|
|
|
10
10
|
check:
|
|
11
11
|
runs-on: ubuntu-latest
|
|
12
12
|
steps:
|
|
13
|
-
- uses: actions/checkout@
|
|
13
|
+
- uses: actions/checkout@v6
|
|
14
14
|
- name: Set up Python
|
|
15
|
-
uses: actions/setup-python@
|
|
15
|
+
uses: actions/setup-python@v6
|
|
16
16
|
with:
|
|
17
17
|
python-version: '3.x'
|
|
18
18
|
cache: 'pip'
|
|
@@ -1,38 +1,24 @@
|
|
|
1
1
|
repos:
|
|
2
2
|
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
3
|
-
rev:
|
|
3
|
+
rev: v6.0.0
|
|
4
4
|
hooks:
|
|
5
5
|
- id: check-yaml
|
|
6
6
|
- id: end-of-file-fixer
|
|
7
7
|
- id: trailing-whitespace
|
|
8
8
|
- id: mixed-line-ending
|
|
9
9
|
|
|
10
|
-
- repo: https://github.com/pycqa/isort
|
|
11
|
-
rev: 5.13.2
|
|
12
|
-
hooks:
|
|
13
|
-
- id: isort
|
|
14
|
-
name: isort (python)
|
|
15
|
-
- id: isort
|
|
16
|
-
name: isort (cython)
|
|
17
|
-
types: [cython]
|
|
18
|
-
- id: isort
|
|
19
|
-
name: isort (pyi)
|
|
20
|
-
types: [pyi]
|
|
21
|
-
|
|
22
|
-
- repo: https://github.com/psf/black
|
|
23
|
-
rev: 24.4.2
|
|
24
|
-
hooks:
|
|
25
|
-
- id: black
|
|
26
|
-
|
|
27
10
|
- repo: https://github.com/astral-sh/ruff-pre-commit
|
|
28
11
|
# Ruff version.
|
|
29
|
-
rev: v0.5
|
|
12
|
+
rev: v0.14.5
|
|
30
13
|
hooks:
|
|
31
|
-
|
|
32
|
-
|
|
14
|
+
# Run the linter.
|
|
15
|
+
- id: ruff-check
|
|
16
|
+
args: [ --fix ]
|
|
17
|
+
# Run the formatter.
|
|
18
|
+
- id: ruff-format
|
|
33
19
|
|
|
34
20
|
- repo: https://github.com/adrienverge/yamllint.git
|
|
35
|
-
rev: v1.
|
|
21
|
+
rev: v1.37.1
|
|
36
22
|
hooks:
|
|
37
23
|
- id: yamllint
|
|
38
24
|
|
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: urwid
|
|
3
|
-
Version:
|
|
3
|
+
Version: 3.0.5
|
|
4
4
|
Summary: A full-featured console (xterm et al.) user interface library
|
|
5
|
-
Home-page: https://urwid.org/
|
|
6
5
|
Author-email: Ian Ward <ian@excess.org>
|
|
7
|
-
License: LGPL-2.1-only
|
|
6
|
+
License-Expression: LGPL-2.1-only
|
|
8
7
|
Project-URL: Homepage, https://urwid.org/
|
|
9
8
|
Project-URL: Documentation, https://urwid.org/manual/index.html
|
|
10
9
|
Project-URL: Repository, https://github.com/urwid/urwid
|
|
@@ -15,7 +14,6 @@ Classifier: Development Status :: 5 - Production/Stable
|
|
|
15
14
|
Classifier: Environment :: Console
|
|
16
15
|
Classifier: Environment :: Console :: Curses
|
|
17
16
|
Classifier: Intended Audience :: Developers
|
|
18
|
-
Classifier: License :: OSI Approved :: GNU Library or Lesser General Public License (LGPL)
|
|
19
17
|
Classifier: Operating System :: POSIX
|
|
20
18
|
Classifier: Operating System :: Unix
|
|
21
19
|
Classifier: Operating System :: MacOS :: MacOS X
|
|
@@ -23,20 +21,19 @@ Classifier: Operating System :: Microsoft :: Windows
|
|
|
23
21
|
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
24
22
|
Classifier: Topic :: Software Development :: Widget Sets
|
|
25
23
|
Classifier: Programming Language :: Python :: 3
|
|
26
|
-
Classifier: Programming Language :: Python :: 3.7
|
|
27
|
-
Classifier: Programming Language :: Python :: 3.8
|
|
28
24
|
Classifier: Programming Language :: Python :: 3.9
|
|
29
25
|
Classifier: Programming Language :: Python :: 3.10
|
|
30
26
|
Classifier: Programming Language :: Python :: 3.11
|
|
31
27
|
Classifier: Programming Language :: Python :: 3.12
|
|
28
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
29
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
32
30
|
Classifier: Programming Language :: Python :: 3 :: Only
|
|
33
31
|
Classifier: Programming Language :: Python :: Implementation :: CPython
|
|
34
32
|
Classifier: Programming Language :: Python :: Implementation :: PyPy
|
|
35
|
-
Requires-Python:
|
|
33
|
+
Requires-Python: >=3.9.0
|
|
36
34
|
Description-Content-Type: text/x-rst
|
|
37
35
|
License-File: COPYING
|
|
38
|
-
Requires-Dist:
|
|
39
|
-
Requires-Dist: wcwidth
|
|
36
|
+
Requires-Dist: wcwidth>=0.4
|
|
40
37
|
Provides-Extra: curses
|
|
41
38
|
Requires-Dist: windows-curses; sys_platform == "win32" and extra == "curses"
|
|
42
39
|
Provides-Extra: glib
|
|
@@ -44,8 +41,8 @@ Requires-Dist: PyGObject; extra == "glib"
|
|
|
44
41
|
Provides-Extra: tornado
|
|
45
42
|
Requires-Dist: tornado>=5.0; extra == "tornado"
|
|
46
43
|
Provides-Extra: trio
|
|
47
|
-
Requires-Dist: trio>=0.
|
|
48
|
-
Requires-Dist: exceptiongroup; extra == "trio"
|
|
44
|
+
Requires-Dist: trio>=0.24.0; extra == "trio"
|
|
45
|
+
Requires-Dist: exceptiongroup; python_version < "3.11" and extra == "trio"
|
|
49
46
|
Provides-Extra: twisted
|
|
50
47
|
Requires-Dist: twisted; extra == "twisted"
|
|
51
48
|
Provides-Extra: zmq
|
|
@@ -54,6 +51,7 @@ Provides-Extra: serial
|
|
|
54
51
|
Requires-Dist: pyserial; extra == "serial"
|
|
55
52
|
Provides-Extra: lcd
|
|
56
53
|
Requires-Dist: pyserial; extra == "lcd"
|
|
54
|
+
Dynamic: license-file
|
|
57
55
|
|
|
58
56
|
Urwid
|
|
59
57
|
=====
|
|
@@ -76,7 +74,7 @@ It includes many features useful for text console application developers includi
|
|
|
76
74
|
- Display modules include raw, curses, and experimental LCD and web displays
|
|
77
75
|
- Support for UTF-8, simple 8-bit and CJK encodings
|
|
78
76
|
- 24-bit (true color), 256 color, and 88 color mode support
|
|
79
|
-
- Compatible with Python 3.
|
|
77
|
+
- Compatible with Python 3.9+ and PyPy
|
|
80
78
|
|
|
81
79
|
Home Page:
|
|
82
80
|
http://urwid.org/
|
|
@@ -106,6 +104,8 @@ Alternatively if you are on Debian or Ubuntu
|
|
|
106
104
|
Windows support notes
|
|
107
105
|
=====================
|
|
108
106
|
|
|
107
|
+
Windows support is limited to the Windows 10+ due to ANSI support requirement.
|
|
108
|
+
|
|
109
109
|
* Not supported:
|
|
110
110
|
|
|
111
111
|
1. Terminal widget and all related render API (TermCanvas, TermCharset, TermModes, TermScroller)
|
|
@@ -142,12 +142,12 @@ To test code in all Python versions:
|
|
|
142
142
|
Supported Python versions
|
|
143
143
|
=========================
|
|
144
144
|
|
|
145
|
-
- 3.7
|
|
146
|
-
- 3.8
|
|
147
145
|
- 3.9
|
|
148
146
|
- 3.10
|
|
149
147
|
- 3.11
|
|
150
148
|
- 3.12
|
|
149
|
+
- 3.13
|
|
150
|
+
- 3.14
|
|
151
151
|
- pypy3
|
|
152
152
|
|
|
153
153
|
Authors
|
|
@@ -19,7 +19,7 @@ It includes many features useful for text console application developers includi
|
|
|
19
19
|
- Display modules include raw, curses, and experimental LCD and web displays
|
|
20
20
|
- Support for UTF-8, simple 8-bit and CJK encodings
|
|
21
21
|
- 24-bit (true color), 256 color, and 88 color mode support
|
|
22
|
-
- Compatible with Python 3.
|
|
22
|
+
- Compatible with Python 3.9+ and PyPy
|
|
23
23
|
|
|
24
24
|
Home Page:
|
|
25
25
|
http://urwid.org/
|
|
@@ -49,6 +49,8 @@ Alternatively if you are on Debian or Ubuntu
|
|
|
49
49
|
Windows support notes
|
|
50
50
|
=====================
|
|
51
51
|
|
|
52
|
+
Windows support is limited to the Windows 10+ due to ANSI support requirement.
|
|
53
|
+
|
|
52
54
|
* Not supported:
|
|
53
55
|
|
|
54
56
|
1. Terminal widget and all related render API (TermCanvas, TermCharset, TermModes, TermScroller)
|
|
@@ -85,12 +87,12 @@ To test code in all Python versions:
|
|
|
85
87
|
Supported Python versions
|
|
86
88
|
=========================
|
|
87
89
|
|
|
88
|
-
- 3.7
|
|
89
|
-
- 3.8
|
|
90
90
|
- 3.9
|
|
91
91
|
- 3.10
|
|
92
92
|
- 3.11
|
|
93
93
|
- 3.12
|
|
94
|
+
- 3.13
|
|
95
|
+
- 3.14
|
|
94
96
|
- pypy3
|
|
95
97
|
|
|
96
98
|
Authors
|
|
@@ -2,7 +2,6 @@ Development Status :: 5 - Production/Stable
|
|
|
2
2
|
Environment :: Console
|
|
3
3
|
Environment :: Console :: Curses
|
|
4
4
|
Intended Audience :: Developers
|
|
5
|
-
License :: OSI Approved :: GNU Library or Lesser General Public License (LGPL)
|
|
6
5
|
Operating System :: POSIX
|
|
7
6
|
Operating System :: Unix
|
|
8
7
|
Operating System :: MacOS :: MacOS X
|
|
@@ -10,12 +9,12 @@ Operating System :: Microsoft :: Windows
|
|
|
10
9
|
Topic :: Software Development :: Libraries :: Python Modules
|
|
11
10
|
Topic :: Software Development :: Widget Sets
|
|
12
11
|
Programming Language :: Python :: 3
|
|
13
|
-
Programming Language :: Python :: 3.7
|
|
14
|
-
Programming Language :: Python :: 3.8
|
|
15
12
|
Programming Language :: Python :: 3.9
|
|
16
13
|
Programming Language :: Python :: 3.10
|
|
17
14
|
Programming Language :: Python :: 3.11
|
|
18
15
|
Programming Language :: Python :: 3.12
|
|
16
|
+
Programming Language :: Python :: 3.13
|
|
17
|
+
Programming Language :: Python :: 3.14
|
|
19
18
|
Programming Language :: Python :: 3 :: Only
|
|
20
19
|
Programming Language :: Python :: Implementation :: CPython
|
|
21
|
-
Programming Language :: Python :: Implementation :: PyPy
|
|
20
|
+
Programming Language :: Python :: Implementation :: PyPy
|