- update to 1.27:

* fix flit/delete MANIFEST.in for re-release,
- update to 1.26:
  * mypy check no-untyped-call and type-var
  * test length with characters where wcwidth returns -1
  * Add optional testing for Python 3.15
  * ci/docformatter/lint fixes
  * call length() less in wrap()
  * Add break_on_hyphens support (rework of #330)
  * Add Terminal.color_hex('#rgb'), Bugfix get_fgcolor()
  * Add Terminal.scroll_region() context manager
  * Add Terminal.no_line_wrap() context manager
  * Bugfix: Variation Selector-16/ZWJ and starting sequences in
    wrap()
  * New method: Terminal.detect_ambiguous_width() -> [1, 2]
  * move_up(), move_down(), Terminal.move_left(), move_right() which
    are strings that move the cursor one cell in the respective
    direction, are now also callables for moving n cells to the
  * Context Managers, fullscreen(), hidden_cursor(), and keypad()
  * deprecated: superscript, subscript, shadow, and dim are no longer
    “compoundable” with colors. Use Unicode text or 256 or 24-bit

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-blessed?expand=0&rev=37
This commit is contained in:
2026-01-22 14:36:36 +00:00
committed by Git OBS Bridge
commit ac85def918
9 changed files with 341 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

1
.gitignore vendored Normal file
View File

@@ -0,0 +1 @@
.osc

3
blessed-1.21.0.tar.gz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ece8bbc4758ab9176452f4e3a719d70088eb5739798cd5582c9e05f2a28337ec
size 6660011

3
blessed-1.22.0.tar.gz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1818efb7c10015478286f21a412fcdd31a3d8b94a18f6d926e733827da7a844b
size 6660050

3
blessed-1.24.0.tar.gz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:7822698616deb79dc8897215eef8ed56b6a3fc537dc08ffce2f2020697c6c0d4
size 6746429

3
blessed-1.25.0.tar.gz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:606aebfea69f85915c7ca6a96eb028e0031d30feccc5688e13fd5cec8277b28d
size 6746381

3
blessed-1.27.0.tar.gz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e3064559388bd532ab6460d9b6c7d6dd699c4e0cf54d28ed6e2cab12feda13bb
size 6761573

201
python-blessed.changes Normal file
View File

@@ -0,0 +1,201 @@
-------------------------------------------------------------------
Thu Jan 22 14:36:18 UTC 2026 - Dirk Müller <dmueller@suse.com>
- update to 1.27:
* fix flit/delete MANIFEST.in for re-release,
- update to 1.26:
* mypy check no-untyped-call and type-var
* test length with characters where wcwidth returns -1
* Add optional testing for Python 3.15
* ci/docformatter/lint fixes
* call length() less in wrap()
* Add break_on_hyphens support (rework of #330)
* Add Terminal.color_hex('#rgb'), Bugfix get_fgcolor()
* Add Terminal.scroll_region() context manager
* Add Terminal.no_line_wrap() context manager
* Bugfix: Variation Selector-16/ZWJ and starting sequences in
wrap()
* New method: Terminal.detect_ambiguous_width() -> [1, 2]
-------------------------------------------------------------------
Wed Nov 26 08:54:06 UTC 2025 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
- Update to 1.25
* bugfix: The fix in 1.20 got reverted in release in 1.23 by PR #306,
this release re-applies the fix, PR #326.
-------------------------------------------------------------------
Mon Nov 17 15:48:04 UTC 2025 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
- Update to 1.24
* bugfix: :meth:`blessed.Terminal`get_sixel_height_and_width` detection order
and improve documentation for window resize event handling (#320).
* bugfix: change default argument ``timeout=None`` to ``timeout=1`` in methods
requiring automatic response, preventing stalls on "dumb" terminals (#317).
- from version 1.23
* introduced: Environment values FORCE_COLOR_, CLICOLOR_FORCE_, and NO_COLOR_
overrides :class:`blessed.Terminal` argument value, ``force_styling`` (#295).
* improved: performance of :meth:`~Terminal.rgb_downconvert` for 256-color
terminals, (#298).
* deprecated: Python 2.7 through 3.6 no longer supported. (#299).
* improved: keyboard support for modifier keys, (#306).
* introduced: kitty keyboard protocol support, (#309).
* introduced: mouse support, Synchronized Output, and support for DEC Private
Modes, (#310).
* introduced: methods to determine Sixel, dimensions and color depth (#312).
* introduced: in-band resize support (DEC Private Mode 2048) (#313).
* introduced: XTVersion identification: (#314).
* bugfix: default timeout for get_bgcolor, get_fgcolor (#315).
- Update BuildRequires and Requires from pyproject.toml
-------------------------------------------------------------------
Wed Oct 22 13:11:07 UTC 2025 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
- Update to 1.22.0
* Performance improved in Terminal.Length and Sequence.padd
by @grayjk and @avylove, (#286), (#287), (#289), and (#291)
* Fixes for failing tests by @avylove in (#284)
* Use a separate job to upload coverage for older python versions
by @avylove in (#288)
* Use tool "codespell" in tox 'lint' step by @yarikoptic and
@jquast in (#293)
* Unpin docformatter by @avylove in (#292)
-------------------------------------------------------------------
Tue May 6 11:33:01 UTC 2025 - Markéta Machová <mmachova@suse.com>
- Convert to pip-based build
-------------------------------------------------------------------
Tue May 6 10:17:52 UTC 2025 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
- Update to 1.21.0
* bugfix infinite loop in method Terminal.wrap() when "Wide" characters of
width 2 (East-Asian or Emoji) are used with a wrap width of 1, and a small
performance enhancement, #273 and #274 by @grayjk, merged as #275
-------------------------------------------------------------------
Thu Dec 14 11:10:32 UTC 2023 - pgajdos@suse.com
- deleted patches
- drop-python2-support.patch (upstreamed)
-------------------------------------------------------------------
Thu Dec 14 09:16:16 UTC 2023 - Petr Gajdos <pgajdos@suse.com>
- update to 1.20.0:
* introduced `Terminal.get_fgcolor()` and
`Terminal.get_bgcolor()` to query
* the terminal for the currently set colors. #237 by
@stefanholek
* bugfix: Copy globals dict before iterating to avoid
`RuntimeError` in multithreaded
* applications, #248 by @adamnovak
-------------------------------------------------------------------
Mon Jun 26 06:59:29 UTC 2023 - Andreas Schneider <asn@cryptomilk.org>
- Use sle15_python_module_pythons
-------------------------------------------------------------------
Thu Nov 3 10:55:45 UTC 2022 - Daniel Garcia <daniel.garcia@suse.com>
- Add drop-python2-support.patch to remove python-six dependency
gh#jquast/blessed#245
- Remove python_module macro definition
- Remove skip_python2 define
- More specific python_sitelib in %files
-------------------------------------------------------------------
Wed Mar 16 12:16:20 UTC 2022 - pgajdos@suse.com
- version update to 1.19.1
1.19
* introduced truncate() to truncate a string while retaining the
sequences, #211 by fishermans-friend
* enhancement: Add small sleep in kbhit() on Windows to reduce CPU
load #209 by numerlor
* enhancement: rjust(), ljust(), and center() now accept
SupportsIndex types, #234
* enhancement: When 88 colors is detected, it is now interpreted
as 16 colors rather than raising an AssertionError, #235
* bugfix: Fix global variable declarations in type annotations, #230
by mwchase
1.18
* bugfix: split_seqs() for some sequences like term.move_left(3), #197.
* introduced: type annotations, #192 by dlax.
* bugfix: do not fail when sys.stdin is unset, #195 by Olen
* docfix: correct “Bottom of the screen” example to use end=''
and document about it in location.rst, #188 by pyfisch
- python-mock not required
-------------------------------------------------------------------
Wed Aug 26 06:48:05 UTC 2020 - Steve Kowalik <steven.kowalik@suse.com>
- Update to 1.17.10:
* bugfix: Now imports on 3.10+
* bugfix: Fix detection of shift+arrow keys when using tmux. :ghissue:`178`.
-------------------------------------------------------------------
Wed May 6 07:22:06 UTC 2020 - Tomáš Chvátal <tchvatal@suse.com>
- Update to 1.17.5:
* minor fixes
- Do not pull extra pytest deps and use even latest pytest
-------------------------------------------------------------------
Thu Mar 26 15:07:26 UTC 2020 - Daniel Wagner <daniel.wagner@suse.com>
- update to 1.17.4
* optimize length()
* add pixel_height and pixel_width, for libsixel support
* Documentation overhaul, plenty of examples and animated
screenshots.
-------------------------------------------------------------------
Wed Jan 22 15:36:56 UTC 2020 - Marketa Calabkova <mcalabkova@suse.com>
- update to 1.17.0
* 24-bit color support
* move_up(), move_down(), Terminal.move_left(), move_right() which
are strings that move the cursor one cell in the respective
direction, are now also callables for moving n cells to the
given direction, such as term.move_right(9).
* Context Managers, fullscreen(), hidden_cursor(), and keypad()
now flush the stream after writing their sequences.
* deprecated: superscript, subscript, shadow, and dim are no longer
“compoundable” with colors. Use Unicode text or 256 or 24-bit
color codes instead.
* more on https://blessed.readthedocs.io/en/latest/history.html
-------------------------------------------------------------------
Thu Sep 5 13:40:10 UTC 2019 - Todd R <toddrme2178@gmail.com>
- Set pytest maximum version.
-------------------------------------------------------------------
Wed Mar 6 13:51:18 UTC 2019 - Tomáš Chvátal <tchvatal@suse.com>
- Update to 1.15.0:
* no upstream changelog
- Make sure tests are run
-------------------------------------------------------------------
Tue Dec 4 12:46:12 UTC 2018 - Matej Cepl <mcepl@suse.com>
- Remove superfluous devel dependency for noarch package
-------------------------------------------------------------------
Tue Jul 17 13:29:00 UTC 2018 - tchvatal@suse.com
- Tox is not used when building so no need to depend on it
-------------------------------------------------------------------
Wed May 9 03:18:05 UTC 2018 - toddrme2178@gmail.com
- Add license tag
-------------------------------------------------------------------
Fri Oct 20 16:13:50 UTC 2017 - toddrme2178@gmail.com
- initial version

101
python-blessed.spec Normal file
View File

@@ -0,0 +1,101 @@
#
# spec file for package python-blessed
#
# 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
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%{?sle15_python_module_pythons}
Name: python-blessed
Version: 1.27.0
Release: 0
Summary: Wrapper around terminal styling, screen positioning, and keyboard input
License: MIT
URL: https://github.com/jquast/blessed
Source: https://files.pythonhosted.org/packages/source/b/blessed/blessed-%{version}.tar.gz
BuildRequires: %{python_module curses}
BuildRequires: %{python_module flit-core >= 3.11}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module pytest-xdist}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module wcwidth >= 0.1.4}
BuildRequires: %{python_module wheel}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-curses
Requires: python-wcwidth >= 0.1.4
BuildArch: noarch
%python_subpackages
%description
Blessed is a thin, practical wrapper around terminal capabilities in Python.
Brief Overview
--------------
*Blessed* is a more simplified wrapper around curses, providing :
* Styles, color, and maybe a little positioning without necessarily
clearing the whole screen first.
* Works great with standard Python string formatting.
* Provides up-to-the-moment terminal height and width, so you can respond to
terminal size changes.
* Avoids making a mess if the output gets piped to a non-terminal:
outputs to any file-like object such as *StringIO*, files, or pipes.
* Uses the `terminfo(5)`_ database so it works with any terminal type
and supports any terminal capability: No more C-like calls to tigetstr_
and tparm_.
* Keeps a minimum of internal state, so you can feel free to mix and match with
calls to curses or whatever other terminal libraries you like.
* Provides plenty of context managers to safely express terminal modes,
automatically restoring the terminal to a safe state on exit.
* Act intelligently when somebody redirects your output to a file, omitting
all of the terminal sequences such as styling, colors, or positioning.
* Dead-simple keyboard handling: safely decoding unicode input in your
system's preferred locale and supports application/arrow keys.
* Allows the printable length of strings containing sequences to be
determined.
Blessed **does not** provide...
* Windows command prompt support. A PDCurses_ build of python for windows
provides only partial support at this time -- there are plans to merge with
the ansi module in concert with colorama to resolve this.
%prep
%autosetup -p1 -n blessed-%{version}
# disable cons25 tests as they fail in OBS
sed -i -e 's:cons25 ::' tests/accessories.py
# do not pull extra deps that are not needed
rm tox.ini
%build
%pyproject_wheel
%install
%pyproject_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
export LANG=en_US.UTF-8
export TEST_QUICK=1
%pytest tests
%files %{python_files}
%doc README.rst
%license LICENSE
%{python_sitelib}/blessed
%{python_sitelib}/blessed-%{version}*-info
%changelog