Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-textual for openSUSE:Factory checked in at 2026-01-15 16:47:36 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-textual (Old) and /work/SRC/openSUSE:Factory/.python-textual.new.1928 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-textual" Thu Jan 15 16:47:36 2026 rev:4 rq:1327345 version:7.2.0 Changes: -------- --- /work/SRC/openSUSE:Factory/python-textual/python-textual.changes 2025-08-21 16:59:53.951397131 +0200 +++ /work/SRC/openSUSE:Factory/.python-textual.new.1928/python-textual.changes 2026-01-15 16:48:58.799034463 +0100 @@ -1,0 +2,162 @@ +Thu Jan 15 09:18:37 UTC 2026 - Markéta Machová <[email protected]> + +- Convert to multibuild to break a build cycle with python-pytest-textual-snapshot + +------------------------------------------------------------------- +Wed Jan 14 15:28:37 UTC 2026 - Matej Cepl <[email protected]> + +- Update to 7.2.0: + - The help panel will look at ancestor widgets for a HELP + attribute if there isn't one on the focused widget #6320 +- Update to 7.1.0: + - Fixed issue with missing refresh + - Added Widget.BLANK which can optimize rendering of large + widgets (typically containers that scroll) +- Update to 7.0.3: + - Fixed performance issue with large scrollable containers + #6317 +- Update to 7.0.2: + - Removed superfluous style udpates when setting display + attribute. #6316 +- Update to 7.0.1: + - Added a refresh_styles boolean to the ScreenResult message + which reduces style updates when popping screens +- Update to 7.0.0: + - Node.update_node_styles has grown a animate parameter + - Added atom-one-dark and atom-one-light themes @NSPC911 #6301 +- Update to 6.12.0: + - Fixed unnecessary style update when popping screens, which + may have caused noticable pauses changing screens (with a lot + of widgets) #6304 + - Promoted private _update_styes to update_node_styles #6304 +- Update to 6.11.0: + - Added a TextSelected event. #6290 +- Update to 6.10.0: + - Fixed broken themes #6286 + - Updated toggle button style for consistency #6286 +- Update to 6.9.0: + - Added Solarized Dark theme #6278 + - Added Rosé Pine themes #6277 + - Fixed fuzzy matcher displaying wrong matched characters with + simple substring match #6282 +- Update to 6.8.0: + - Added Content.blank #6264 + - Fixed Input cursor color display in ANSI mode + (ansi_color=True) #6234 + - Fixed alt modifier on systems without extended Key Protocol + #6267 + - Fixed an issue where alpha keys with modifiers weren't lower + cased. If you have bound to something like ctrl+A, then + change to ctrl+shift+a #6267 + - Fixed exception when setting loading attribute before mount + #6268 + - Fixed issue with dim filter not using background (may cause + snapshot failures) #6269 +- Update to 6.7.1: + - Fixed Content.fold #6256 +- Update to 6.7.0: + - Added GridLayout.max_column_width #6228 + - Added Content.fold #6238 + - Added strip_control_codes to Content constructors #6238 + - Added Screen.get_loading_widget which deferes to + App.get_loading_widget #6228 + - Fixed anchor with ScrollView widgets #6228 +- Update to 6.6.0: + - Fixed TextArea cursor display on wrapped lines #6196 + - Fixed remove_children not refreshing layout #6206 + - Fixed flicker with :hover pseudo class #6214 + - Fixed scrollbar not updating after textarea paste #6219 + - Added grid_size property to GridLayout #6210 + - Exposed NoSelection and BLANK via textual.widgets.select + #6214 + - Added Widget.FOCUS_ON_CLICK classvar amd + Widget.focus_on_click method #6216 + - Added support for the kitty keyboard protocol on Windows + #6207 + - Added Widget.mount_compose #6216 + - Change highlight style of Select to only highlight the + border, not the label #6214 +- Update to 6.5.0: + - Added DOMNode.trap_focus #6202 + - Fixed issue with focus + scroll #6203 +- Update to 6.4.0: + - Fixed type hint aliasing for App under TYPE_CHECKING #6152 + - Fixed circular dependency effecting bazel users #6163 + - Fixed for text selection with double width characters #6186 + - Simplified system commands (command palette) to a single word + #6183 +- Update to 6.3.0: + - Added scrollbar-visibility rule #6156 + - Fixed highlight not auto-detecting lexer #6167 + - Dropped support for Python3.8 #6121 + - Added support for Python3.14 #6121 +- Update to 6.2.1: + - Fix inability to copy text outside of an input/textarea when + it was focused #6148 + - Fix issue when copying text after a double click #6148 +- Update to 6.2.0: + - Eager tasks are now enabled On Python3.12 and above #6102 + - Widget._arrange is now public (as Widget.arrange) #6108 + - Reduced number of layout operations required to update the + screen #6108 + - The :hover pseudo-class no applies to the first widget under + the mouse with a hover style set #6132 + - The footer key hover background is more visible #6132 + - Made App.delay_update public #6137 + - Pilot.click will return True if the initial mouse down is on + the specified target #6139 + - Added DOMNode.displayed_and_visible_children #6102 + - Added Widget.process_layout #6105 + - Added App.viewport_size #6105 + - Added Screen.size #6105 + - Added compact to Binding.Group #6132 + - Added Screen.get_hover_widgets_at #6132 + - Added Content.wrap #6138 + - Added support to allow support for manual keys in add_columns + as well. #5923 + - Fixed issue where Segments with a style of None aren't + rendered #6109 + - Fixed visual glitches and crash when changing + DataTable.header_height #6128 + - Fixed TextArea.placeholder not handling multi-lines #6138 + - Fixed issue with RichLog when App.theme is set early #6141 + - Fixed children of collapsible not being focusable after + collapsible is expanded #6143 +- Update to 6.1.0: + - Added Button.flat boolean to enable flat button style #6094 + - Added namespaces parameter to run_action #6094 + - Added "block" border style #6094 +- Update to 6.0.0: + - Fix type hint for SelectType: only hashable types are + allowed. #6034 + - Fixed Content.expand_tabs #6038 + - Fixed return value for Pilot.double_click and + Pilot.triple_click #6035 + - Fixed sizing issue with Pretty widget #6040 #6041 + - Fixed garbled inline app output when inline_no_clear=True + #6080 + - Added BAR_RENDERABLE to ProgressBar widget #5963 + - Added OptionList.set_options #6048 + - Added TextArea.suggestion #6048 + - Added TextArea.placeholder #6048 + - Added Header.format_title and App.format_title for easier + customization of title in the Header #6051 + - Added Widget.get_line_filters and App.get_line_filters #6057 + - Added Binding.Group #6070 + - Added DOMNode.displayed_children #6070 + - Added TextArea.hide_suggestion_on_blur boolean #6070 + - Added OptionList.highlighted_option property #6090 + - Added TextArea.update_suggestion method #6090 + - Added textual.getters.app #6089 + - Breaking change: The renderable property on the Static widget + has been changed to content. #6041 + - Breaking change: HeaderTitle widget is now a static, with no + text and sub_text reactives #6051 + - Breaking change: Renamed Label constructor argument + renderable to content for consistency #6045 + - Breaking change: Optimization to line API to avoid applying + background styles to widget content. In practice this means + that you can no longer rely on blank Segments automatically + getting the background color. + +------------------------------------------------------------------- Old: ---- textual-5.3.0.tar.gz New: ---- _multibuild textual-7.2.0.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-textual.spec ++++++ --- /var/tmp/diff_new_pack.LjgYfN/_old 2026-01-15 16:48:59.295054577 +0100 +++ /var/tmp/diff_new_pack.LjgYfN/_new 2026-01-15 16:48:59.295054577 +0100 @@ -1,7 +1,7 @@ # # spec file for package python-textual # -# Copyright (c) 2025 SUSE LLC and contributors +# Copyright (c) 2026 SUSE LLC and contributors # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,9 +16,17 @@ # +%global flavor @BUILD_FLAVOR@%{nil} +%if "%{flavor}" == "test" +%define psuffix -test +%bcond_without test +%else +%define psuffix %{nil} +%bcond_with test +%endif %{?sle15_python_module_pythons} -Name: python-textual -Version: 5.3.0 +Name: python-textual%{psuffix} +Version: 7.2.0 Release: 0 Summary: TUI framework for Python License: MIT @@ -28,22 +36,19 @@ BuildRequires: %{python_module setuptools} BuildRequires: %{python_module pip} BuildRequires: %{python_module poetry-core} -# SECTION runtime requirements -BuildRequires: %{python_module markdown-it-py >= 2.1.0} +%if %{with test} +BuildRequires: %{python_module jinja2} BuildRequires: %{python_module linkify-it-py} -BuildRequires: %{python_module platformdirs >= 3.6.0 with %python-platformdirs < 5} -BuildRequires: %{python_module pygments >= 2.19.2 with %python-pygments < 2.20} -BuildRequires: %{python_module rich >= 13.3.3} -BuildRequires: %{python_module typing-extensions >= 4.4.0 with %python-typing-extensions < 5} -# /SECTION -# SECTION test requirements BuildRequires: %{python_module pytest >= 8.3.1} BuildRequires: %{python_module pytest-asyncio} +BuildRequires: %{python_module pytest-textual-snapshot >= 1.1.0} BuildRequires: %{python_module pytest-xdist >= 3.6.1} +BuildRequires: %{python_module syrupy} +BuildRequires: %{python_module textual = %{version}} BuildRequires: %{python_module tree-sitter} BuildRequires: tree-sitter BuildRequires: tree-sitter-python -# /SECTION +%endif BuildRequires: fdupes BuildRequires: python-rpm-macros # @@ -52,6 +57,7 @@ Requires: (python-platformdirs >= 3.6.0 with python-platformdirs < 5) Requires: (python-pygments >= 2.19.2 with python-pygments < 2.20) Requires: (python-typing-extensions >= 4.4.0 with python-typing-extensions < 5) +Suggests: python-jinja2 Suggests: python-tree-sitter Suggests: python-tree-sitter-languages BuildArch: noarch @@ -77,10 +83,13 @@ %pyproject_wheel %install +%if %{without test} %pyproject_install %python_expand %fdupes %{buildroot}%{$python_sitelib} +%endif %check +%if %{with test} # fixture 'snap_compare' not found rm -f tests/snapshot_tests/test_snapshots.py IGNORED_CHECKS="test_textual_env_var" @@ -110,10 +119,13 @@ IGNORED_CHECKS="${IGNORED_CHECKS} or test_setting_unknown_theme_raises_exception" IGNORED_CHECKS="${IGNORED_CHECKS} or test_registering_and_setting_theme" %pytest -k "not (${IGNORED_CHECKS})" +%endif +%if %{without test} %files %{python_files} %license LICENSE %doc README.md %{python_sitelib}/textual %{python_sitelib}/textual-%{version}*-info +%endif ++++++ _multibuild ++++++ <multibuild> <package>test</package> </multibuild> ++++++ textual-5.3.0.tar.gz -> textual-7.2.0.tar.gz ++++++ ++++ 17251 lines of diff (skipped)
