14
0
forked from pool/python-rich

11 Commits

Author SHA256 Message Date
c66d22066a Accepting request 1281448 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/1281448
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-rich?expand=0&rev=34
2025-06-02 19:58:53 +00:00
3b151aeb71 - Update to 14.0.0
* Added
    - Added env var TTY_COMPATIBLE to override auto-detection of TTY
      support (See console.rst for details). #3675
  * Changed
    - An empty NO_COLOR env var is now considered disabled. #3675
    - An empty FORCE_COLOR env var is now considered disabled. #3675
    - Rich tracebacks will now render notes on Python 3.11 onwards
      (added with Exception.add_note) #3676
    - Indentation in exceptions won't be underlined #3678
    - Rich tracebacks will now render Exception Groups #3677

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-rich?expand=0&rev=70
2025-05-30 14:45:46 +00:00
394cf521ec Accepting request 1271914 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/1271914
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-rich?expand=0&rev=33
2025-04-23 13:18:21 +00:00
5d771d1178 - Add test dependency on attrs
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-rich?expand=0&rev=68
2025-04-22 15:01:45 +00:00
388fea0a90 Accepting request 1238863 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/1238863
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-rich?expand=0&rev=32
2025-01-23 16:57:02 +00:00
1622e9f7e6 - Add pygments.patch to fix tests with Pygments 2.19
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-rich?expand=0&rev=66
2025-01-20 01:14:21 +00:00
9c50e63ae8 Accepting request 1228407 from devel:languages:python
- Switch to GitHub tarball so we can run the testsuite.
- Correct version guard for typing_extensions Requires.
- Drop Python 3.7 sections.

OBS-URL: https://build.opensuse.org/request/show/1228407
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-rich?expand=0&rev=31
2024-12-06 13:25:02 +00:00
32a323bb0b - Switch to GitHub tarball so we can run the testsuite.
- Correct version guard for typing_extensions Requires.
- Drop Python 3.7 sections.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-rich?expand=0&rev=64
2024-12-05 01:45:59 +00:00
6e83911066 Accepting request 1225564 from devel:languages:python
- update to 13.9.4:
  * Optimizations to cell_len which may speed up Rich / Textual
    output https://github.com/Textualize/rich/pull/3546
- update to 13.9.3:
  * Fix a broken regex that resulted in the slow path being
    chosen for some operations. This fix should result in notable
    speedups for some operations, such as wrapping text.
  * Fixed broken regex that may have resulted in poor
    performance. https://github.com/Textualize/rich/pull/3535
- update to 13.9.2:
  * A hotfix for highlighting in the table, and a fix for
    `Segment.split_cells`
  * Fixed `Table` columns not highlighting when added by
    `add_row` https://github.com/Textualize/rich/issues/3517
  * Fixed an issue with Segment.split_cells reported in Textual
    https://github.com/Textualize/textual/issues/5090
- update to 13.9.1:
  * Fixed typing_extensions dependency
- update to 13.9.0:
  * Dropped support for Python3.7
  * Rich will display tracebacks with finely grained error
    locations on python 3.11+
  * Fixed issue with Segment._split_cells
  * Fix auto detection of terminal size on Windows
  * `Text.style` now respected in Panel title/subtitle
- update to 13.8.1:
  * Added support for Python 3.13
  * Fixed infinite loop when appending Text to same instance
- update to 13.8.0:
  * Fixed `Table` rendering of box elements so "footer" elements

OBS-URL: https://build.opensuse.org/request/show/1225564
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-rich?expand=0&rev=30
2024-11-21 14:13:37 +00:00
90afceeaec sequences
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-rich?expand=0&rev=62
2024-11-21 10:15:54 +00:00
f88d50cc21 - update to 13.9.4:
* Optimizations to cell_len which may speed up Rich / Textual
    output https://github.com/Textualize/rich/pull/3546
- update to 13.9.3:
  * Fix a broken regex that resulted in the slow path being
    chosen for some operations. This fix should result in notable
    speedups for some operations, such as wrapping text.
  * Fixed broken regex that may have resulted in poor
    performance. https://github.com/Textualize/rich/pull/3535
- update to 13.9.2:
  * A hotfix for highlighting in the table, and a fix for
    `Segment.split_cells`
  * Fixed `Table` columns not highlighting when added by
    `add_row` https://github.com/Textualize/rich/issues/3517
  * Fixed an issue with Segment.split_cells reported in Textual
    https://github.com/Textualize/textual/issues/5090
- update to 13.9.1:
  * Fixed typing_extensions dependency
- update to 13.9.0:
  * Dropped support for Python3.7
  * Rich will display tracebacks with finely grained error
    locations on python 3.11+
  * Fixed issue with Segment._split_cells
  * Fix auto detection of terminal size on Windows
  * `Text.style` now respected in Panel title/subtitle
- update to 13.8.1:
  * Added support for Python 3.13
  * Fixed infinite loop when appending Text to same instance
- update to 13.8.0:
  * Fixed `Table` rendering of box elements so "footer" elements

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-rich?expand=0&rev=61
2024-11-20 17:46:42 +00:00
5 changed files with 158 additions and 17 deletions

44
pygments.patch Normal file
View File

@@ -0,0 +1,44 @@
From 08be21dadfd2ce9e96e41e366ab38bd8d7cd0e39 Mon Sep 17 00:00:00 2001
From: Dan Lazin <dlazin@users.noreply.github.com>
Date: Tue, 7 Jan 2025 16:04:56 -0500
Subject: [PATCH] Fix test that changed with Pygments 2.19.
---
tests/test_markdown.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: rich-13.9.4/tests/test_markdown.py
===================================================================
--- rich-13.9.4.orig/tests/test_markdown.py
+++ rich-13.9.4/tests/test_markdown.py
@@ -110,7 +110,7 @@ def test_inline_code():
inline_code_theme="emacs",
)
result = render(markdown)
- expected = "inline \x1b[1;38;2;170;34;255;48;2;248;248;248mimport\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m \x1b[0m\x1b[1;38;2;0;0;255;48;2;248;248;248mthis\x1b[0m code \n"
+ expected = "inline \x1b[1;38;2;170;34;255;48;2;248;248;248mimport\x1b[0m\x1b[38;2;187;187;187;48;2;248;248;248m \x1b[0m\x1b[1;38;2;0;0;255;48;2;248;248;248mthis\x1b[0m code \n"
print(result)
print(repr(result))
assert result == expected
Index: rich-13.9.4/tests/test_syntax.py
===================================================================
--- rich-13.9.4.orig/tests/test_syntax.py
+++ rich-13.9.4/tests/test_syntax.py
@@ -53,7 +53,7 @@ def test_blank_lines():
print(repr(result))
assert (
result
- == "\x1b[1;38;2;24;24;24;48;2;248;248;248m \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m1 \x1b[0m\x1b[48;2;248;248;248m \x1b[0m\n\x1b[1;38;2;24;24;24;48;2;248;248;248m \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m2 \x1b[0m\x1b[48;2;248;248;248m \x1b[0m\n\x1b[1;38;2;24;24;24;48;2;248;248;248m \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m3 \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mimport\x1b[0m\x1b[38;2;0;0;0;48;2;248;248;248m \x1b[0m\x1b[1;38;2;0;0;255;48;2;248;248;248mthis\x1b[0m\x1b[48;2;248;248;248m \x1b[0m\n\x1b[1;38;2;24;24;24;48;2;248;248;248m \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m4 \x1b[0m\x1b[48;2;248;248;248m \x1b[0m\n\x1b[1;38;2;24;24;24;48;2;248;248;248m \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m5 \x1b[0m\x1b[48;2;248;248;248m \x1b[0m\n"
+ == "\x1b[1;38;2;24;24;24;48;2;248;248;248m \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m1 \x1b[0m\x1b[48;2;248;248;248m \x1b[0m\n\x1b[1;38;2;24;24;24;48;2;248;248;248m \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m2 \x1b[0m\x1b[48;2;248;248;248m \x1b[0m\n\x1b[1;38;2;24;24;24;48;2;248;248;248m \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m3 \x1b[0m\x1b[1;38;2;0;128;0;48;2;248;248;248mimport\x1b[0m\x1b[38;2;187;187;187;48;2;248;248;248m \x1b[0m\x1b[1;38;2;0;0;255;48;2;248;248;248mthis\x1b[0m\x1b[48;2;248;248;248m \x1b[0m\n\x1b[1;38;2;24;24;24;48;2;248;248;248m \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m4 \x1b[0m\x1b[48;2;248;248;248m \x1b[0m\n\x1b[1;38;2;24;24;24;48;2;248;248;248m \x1b[0m\x1b[38;2;173;173;173;48;2;248;248;248m5 \x1b[0m\x1b[48;2;248;248;248m \x1b[0m\n"
)
@@ -119,7 +119,7 @@ def test_python_render_simple_indent_gui
)
rendered_syntax = render(syntax)
print(repr(rendered_syntax))
- expected = '\x1b[34mdef\x1b[0m \x1b[32mloop_first_last\x1b[0m(values: Iterable[T]) -> Iterable[Tuple[\x1b[36mb\x1b[0m\n\x1b[2;37m│ \x1b[0m\x1b[33m"""Iterate and generate a tuple with a flag for first an\x1b[0m\n\x1b[2m│ \x1b[0miter_values = \x1b[36miter\x1b[0m(values)\n\x1b[2m│ \x1b[0m\x1b[34mtry\x1b[0m:\n\x1b[2m│ │ \x1b[0mprevious_value = \x1b[36mnext\x1b[0m(iter_values)\n\x1b[2m│ \x1b[0m\x1b[34mexcept\x1b[0m \x1b[36mStopIteration\x1b[0m:\n\x1b[2m│ │ \x1b[0m\x1b[34mreturn\x1b[0m\n\x1b[2m│ \x1b[0mfirst = \x1b[34mTrue\x1b[0m\n\x1b[2m│ \x1b[0m\x1b[34mfor\x1b[0m value \x1b[35min\x1b[0m iter_values:\n\x1b[2m│ │ \x1b[0m\x1b[34myield\x1b[0m first, \x1b[34mFalse\x1b[0m, previous_value\n\x1b[2m│ │ \x1b[0mfirst = \x1b[34mFalse\x1b[0m\n\x1b[2m│ │ \x1b[0mprevious_value = value\n\x1b[2m│ \x1b[0m\x1b[34myield\x1b[0m first, \x1b[34mTrue\x1b[0m, previous_value\n'
+ expected = '\x1b[34mdef\x1b[0m\x1b[37m \x1b[0m\x1b[32mloop_first_last\x1b[0m(values: Iterable[T]) -> Iterable[Tuple[\x1b[36mb\x1b[0m\n\x1b[2;37m│ \x1b[0m\x1b[33m"""Iterate and generate a tuple with a flag for first an\x1b[0m\n\x1b[2m│ \x1b[0miter_values = \x1b[36miter\x1b[0m(values)\n\x1b[2m│ \x1b[0m\x1b[34mtry\x1b[0m:\n\x1b[2m│ │ \x1b[0mprevious_value = \x1b[36mnext\x1b[0m(iter_values)\n\x1b[2m│ \x1b[0m\x1b[34mexcept\x1b[0m \x1b[36mStopIteration\x1b[0m:\n\x1b[2m│ │ \x1b[0m\x1b[34mreturn\x1b[0m\n\x1b[2m│ \x1b[0mfirst = \x1b[34mTrue\x1b[0m\n\x1b[2m│ \x1b[0m\x1b[34mfor\x1b[0m value \x1b[35min\x1b[0m iter_values:\n\x1b[2m│ │ \x1b[0m\x1b[34myield\x1b[0m first, \x1b[34mFalse\x1b[0m, previous_value\n\x1b[2m│ │ \x1b[0mfirst = \x1b[34mFalse\x1b[0m\n\x1b[2m│ │ \x1b[0mprevious_value = value\n\x1b[2m│ \x1b[0m\x1b[34myield\x1b[0m first, \x1b[34mTrue\x1b[0m, previous_value\n'
assert rendered_syntax == expected

View File

@@ -1,3 +1,101 @@
-------------------------------------------------------------------
Fri May 30 13:35:48 UTC 2025 - Nico Krapp <nico.krapp@suse.com>
- Update to 14.0.0
* Added
- Added env var TTY_COMPATIBLE to override auto-detection of TTY
support (See console.rst for details). #3675
* Changed
- An empty NO_COLOR env var is now considered disabled. #3675
- An empty FORCE_COLOR env var is now considered disabled. #3675
- Rich tracebacks will now render notes on Python 3.11 onwards
(added with Exception.add_note) #3676
- Indentation in exceptions won't be underlined #3678
- Rich tracebacks will now render Exception Groups #3677
-------------------------------------------------------------------
Tue Apr 22 14:51:30 UTC 2025 - Markéta Machová <mmachova@suse.com>
- Add test dependency on attrs
-------------------------------------------------------------------
Fri Jan 17 14:55:32 UTC 2025 - Markéta Machová <mmachova@suse.com>
- Add pygments.patch to fix tests with Pygments 2.19
-------------------------------------------------------------------
Thu Dec 5 01:45:25 UTC 2024 - Steve Kowalik <steven.kowalik@suse.com>
- Switch to GitHub tarball so we can run the testsuite.
- Correct version guard for typing_extensions Requires.
- Drop Python 3.7 sections.
-------------------------------------------------------------------
Wed Nov 20 17:44:21 UTC 2024 - Dirk Müller <dmueller@suse.com>
- update to 13.9.4:
* Optimizations to cell_len which may speed up Rich / Textual
output https://github.com/Textualize/rich/pull/3546
- update to 13.9.3:
* Fix a broken regex that resulted in the slow path being
chosen for some operations. This fix should result in notable
speedups for some operations, such as wrapping text.
* Fixed broken regex that may have resulted in poor
performance. https://github.com/Textualize/rich/pull/3535
- update to 13.9.2:
* A hotfix for highlighting in the table, and a fix for
`Segment.split_cells`
* Fixed `Table` columns not highlighting when added by
`add_row` https://github.com/Textualize/rich/issues/3517
* Fixed an issue with Segment.split_cells reported in Textual
https://github.com/Textualize/textual/issues/5090
- update to 13.9.1:
* Fixed typing_extensions dependency
- update to 13.9.0:
* Dropped support for Python3.7
* Rich will display tracebacks with finely grained error
locations on python 3.11+
* Fixed issue with Segment._split_cells
* Fix auto detection of terminal size on Windows
* `Text.style` now respected in Panel title/subtitle
- update to 13.8.1:
* Added support for Python 3.13
* Fixed infinite loop when appending Text to same instance
- update to 13.8.0:
* Fixed `Table` rendering of box elements so "footer" elements
truly appear at bottom of table, "mid" elements in main table
body.
* Fixed styles in Panel when Text objects are used for title
* Fix pretty repr for `collections.deque`
* Thread used in progress.track will exit if an exception
occurs in a generator
* Progress track thread is now a daemon thread
* Fixed cached hash preservation upon clearing meta and links
* Fixed overriding the `background_color` of `Syntax` not
including padding
* Fixed pretty printing of dataclasses with a default repr in
Python 3.13
* Fixed selective enabling of highlighting when disabled in the
`Console`
* Fixed BrokenPipeError writing an error message
* Fixed superfluous space above Markdown tables
* Fixed issue with record and capture interaction
* Fixed control codes breaking in `append_tokens`
* Fixed exception pretty printing a dataclass with missing
* `RichHandler` errors and warnings will now use different
colors (red and yellow)
* Removed the empty line printed in jupyter while using
`Progress`
* Running tests in environment with `FORCE_COLOR` or `NO_COLOR`
environment variables
* ansi decoder will now strip problematic private escape
sequences
* Tree's ASCII_GUIDES and TREE_GUIDES constants promoted to
class attributes
* Adds a `case_sensitive` parameter to `prompt.Prompt`. This
determines if the response is treated as case-sensitive.
* Added `Console.on_broken_pipe`
-------------------------------------------------------------------
Sat Mar 16 09:47:51 UTC 2024 - Dirk Müller <dmueller@suse.com>

View File

@@ -1,7 +1,7 @@
#
# spec file for package python-rich
#
# Copyright (c) 2024 SUSE LLC
# Copyright (c) 2025 SUSE LLC
# Copyright (c) 2020-2021, Martin Hauke <mardnh@gmx.de>
#
# All modifications and additions to the file contributed by third parties
@@ -19,19 +19,20 @@
%{?sle15_python_module_pythons}
Name: python-rich
Version: 13.7.1
Version: 14.0.0
Release: 0
Summary: A Python library for rich text and beautiful formatting in the terminal
License: MIT
Group: Development/Languages/Python
URL: https://github.com/Textualize/rich
Source: https://files.pythonhosted.org/packages/source/r/rich/rich-%{version}.tar.gz
BuildRequires: %{python_module dataclasses >= 0.7 if %python-base < 3.7}
Source: https://github.com/Textualize/rich/archive/refs/tags/v%{version}.tar.gz#/rich-%{version}.tar.gz
# PATCH-FIX-UPSTREAM https://github.com/Textualize/rich/pull/3604 Fix test that changed with Pygments 2.19.
# and https://github.com/Textualize/rich/pull/3608 fix remaining tests with Pygments 2.19 #3604 did not fix
Patch: pygments.patch
BuildRequires: %{python_module base >= 3.8}
BuildRequires: %{python_module markdown-it-py >= 2.2.0}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module poetry-core}
BuildRequires: %{python_module pygments >= 2.13.0}
BuildRequires: %{python_module typing_extensions >= 4.0.0 if %python-base < 3.9}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-markdown-it-py >= 2.2.0
@@ -40,13 +41,8 @@ Suggests: python-ipywidgets >= 7.5.1
BuildArch: noarch
# SECTION test requirements
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module attrs}
# /SECTION
%if 0%{?python_version_nodots} < 39
Requires: python-typing_extensions >= 4.0.0
%endif
%if 0%{?python_version_nodots} < 37
Requires: python-dataclasses >= 0.7
%endif
%python_subpackages
%description
@@ -54,7 +50,7 @@ Render rich text, tables, progress bars, syntax highlighting,
markdown and more to the terminal.
%prep
%setup -q -n rich-%{version}
%autosetup -p1 -n rich-%{version}
%build
%pyproject_wheel
@@ -63,10 +59,13 @@ markdown and more to the terminal.
%pyproject_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
%pytest
%files %{python_files}
%license LICENSE
%doc README.md
%{python_sitelib}/rich
%{python_sitelib}/rich-%{version}*-info
%{python_sitelib}/rich-%{version}.dist-info
%changelog

BIN
rich-13.7.1.tar.gz (Stored with Git LFS)

Binary file not shown.

BIN
rich-14.0.0.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.