Skip to content

API Extension: make CommandMap MutableMapping#969

Merged
penguinolog merged 1 commit into
urwid:masterfrom
penguinolog:command_map_api_extend
Jan 2, 2025
Merged

API Extension: make CommandMap MutableMapping#969
penguinolog merged 1 commit into
urwid:masterfrom
penguinolog:command_map_api_extend

Conversation

@penguinolog

Copy link
Copy Markdown
Collaborator

Support all standard MutableMapping methods instead of only __getitem__/__setitem__/__delitem__

Checklist
  • I've ensured that similar functionality has not already been implemented
  • I've ensured that similar functionality has not earlier been proposed and declined
  • I've branched off the master branch
  • I've merged fresh upstream into my branch recently
  • I've ran tox successfully in local environment
  • I've included docstrings and/or documentation and/or examples for my code (if this is a new feature)

Support all standard `MutableMapping` methods instead of only `__getitem__`/`__setitem__`/`__delitem__`
@penguinolog penguinolog requested a review from wardi January 1, 2025 13:05
@coveralls

Copy link
Copy Markdown

Pull Request Test Coverage Report for Build 12570929051

Details

  • 2 of 2 (100.0%) changed or added relevant lines in 1 file are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage remained the same at 74.303%

Totals Coverage Status
Change from base Build 12570739711: 0.0%
Covered Lines: 9298
Relevant Lines: 12566

💛 - Coveralls

@penguinolog penguinolog added the Feature Feature request/implementation label Jan 1, 2025
@penguinolog penguinolog merged commit ed0e471 into urwid:master Jan 2, 2025
@penguinolog penguinolog deleted the command_map_api_extend branch January 2, 2025 07:23
netbsd-srcmastr pushed a commit to NetBSD/pkgsrc that referenced this pull request May 11, 2025
Urwid 3.0.2
===========

2025-05-07

Bug fixes 🕷
++++++++++++
* Bugfix: Corner case: Scrollbar render for only 1 row height by @penguinolog in urwid/urwid#1021

Urwid 3.0.1
===========

2025-05-07

Bug fixes 🕷
++++++++++++
* Packaging: drop setup.py and adjust requirements by @penguinolog in urwid/urwid#1018
  Not updated `setup.py` lead to wrong metadata and mark of release 3.0.0 as Python 3.7 compatible.
  Since urwid is distribluted in the pre-packaged format (wheel),
  missing `setup.py` will not affect old toolchain users except special cases (manually enforced sdist usage).
* Python 3.14 compatibility: adjust `AsyncioEventLoop` by @penguinolog in urwid/urwid#1019

Urwid 3.0.0
===========

2025-05-06

Breaking Changes ⚠
++++++++++++++++++
* Drop deprecated `__super` property by @penguinolog in urwid/urwid#956
* Drop deprecated `FlowWidget`, `BoxWidget` and `FixedWidget` widgets by @penguinolog in urwid/urwid#955
* Remove deprecated protected getter methods from the `Canvas` and `AttrSpec` by @penguinolog in urwid/urwid#958
* Remove support for the `bytes` based fonts by @penguinolog in urwid/urwid#961
* Remove deprecated `TermScroller` by @penguinolog in urwid/urwid#960
* Remove deprecated protected getter methods from the decoration widgets by @penguinolog in urwid/urwid#959
* Remove deprecated protected getter methods from the container widgets by @penguinolog in urwid/urwid#957
* Remove deprecated protected setters in the decoration widgets by @penguinolog in urwid/urwid#968
* Remove deprecated protected methods from the container widgets by @penguinolog in urwid/urwid#970
* Remove deprecated protected method `_set_done` from the `ProgressBar` by @penguinolog in urwid/urwid#971

New features 🗹
+++++++++++++++
* API Extension: make `CommandMap` `MutableMapping` by @penguinolog in urwid/urwid#969
* Make sizing computation much faster for nested containers by @ogayot in urwid/urwid#991
* `MetaSignals` subclass `ABCMeta` by @penguinolog in urwid/urwid#962

Deprecations ⚡
+++++++++++++++
* `MetaSuper` should be the last base for classes by @penguinolog in urwid/urwid#972
* Announce deprecated API removal versions by @penguinolog in urwid/urwid#999

Bug fixes 🕷
++++++++++++
* Fix handling of WEIGHT selectable items in the `Pile` by @penguinolog in urwid/urwid#1006

Refactoring 🛠
++++++++++++++
* Refactoring: micro optimizations of iterable items reconstruction by @penguinolog in urwid/urwid#1009

New Contributors
++++++++++++++++
* @ogayot made their first contribution in urwid/urwid#991
msk pushed a commit to msk/pkgsrc that referenced this pull request May 11, 2026
Urwid 3.0.2
===========

2025-05-07

Bug fixes 🕷
++++++++++++
* Bugfix: Corner case: Scrollbar render for only 1 row height by @penguinolog in urwid/urwid#1021

Urwid 3.0.1
===========

2025-05-07

Bug fixes 🕷
++++++++++++
* Packaging: drop setup.py and adjust requirements by @penguinolog in urwid/urwid#1018
  Not updated `setup.py` lead to wrong metadata and mark of release 3.0.0 as Python 3.7 compatible.
  Since urwid is distribluted in the pre-packaged format (wheel),
  missing `setup.py` will not affect old toolchain users except special cases (manually enforced sdist usage).
* Python 3.14 compatibility: adjust `AsyncioEventLoop` by @penguinolog in urwid/urwid#1019

Urwid 3.0.0
===========

2025-05-06

Breaking Changes ⚠
++++++++++++++++++
* Drop deprecated `__super` property by @penguinolog in urwid/urwid#956
* Drop deprecated `FlowWidget`, `BoxWidget` and `FixedWidget` widgets by @penguinolog in urwid/urwid#955
* Remove deprecated protected getter methods from the `Canvas` and `AttrSpec` by @penguinolog in urwid/urwid#958
* Remove support for the `bytes` based fonts by @penguinolog in urwid/urwid#961
* Remove deprecated `TermScroller` by @penguinolog in urwid/urwid#960
* Remove deprecated protected getter methods from the decoration widgets by @penguinolog in urwid/urwid#959
* Remove deprecated protected getter methods from the container widgets by @penguinolog in urwid/urwid#957
* Remove deprecated protected setters in the decoration widgets by @penguinolog in urwid/urwid#968
* Remove deprecated protected methods from the container widgets by @penguinolog in urwid/urwid#970
* Remove deprecated protected method `_set_done` from the `ProgressBar` by @penguinolog in urwid/urwid#971

New features 🗹
+++++++++++++++
* API Extension: make `CommandMap` `MutableMapping` by @penguinolog in urwid/urwid#969
* Make sizing computation much faster for nested containers by @ogayot in urwid/urwid#991
* `MetaSignals` subclass `ABCMeta` by @penguinolog in urwid/urwid#962

Deprecations ⚡
+++++++++++++++
* `MetaSuper` should be the last base for classes by @penguinolog in urwid/urwid#972
* Announce deprecated API removal versions by @penguinolog in urwid/urwid#999

Bug fixes 🕷
++++++++++++
* Fix handling of WEIGHT selectable items in the `Pile` by @penguinolog in urwid/urwid#1006

Refactoring 🛠
++++++++++++++
* Refactoring: micro optimizations of iterable items reconstruction by @penguinolog in urwid/urwid#1009

New Contributors
++++++++++++++++
* @ogayot made their first contribution in urwid/urwid#991
jperkin pushed a commit to TritonDataCenter/pkgsrc that referenced this pull request May 14, 2026
Urwid 3.0.2
===========

2025-05-07

Bug fixes 🕷
++++++++++++
* Bugfix: Corner case: Scrollbar render for only 1 row height by @penguinolog in urwid/urwid#1021

Urwid 3.0.1
===========

2025-05-07

Bug fixes 🕷
++++++++++++
* Packaging: drop setup.py and adjust requirements by @penguinolog in urwid/urwid#1018
  Not updated `setup.py` lead to wrong metadata and mark of release 3.0.0 as Python 3.7 compatible.
  Since urwid is distribluted in the pre-packaged format (wheel),
  missing `setup.py` will not affect old toolchain users except special cases (manually enforced sdist usage).
* Python 3.14 compatibility: adjust `AsyncioEventLoop` by @penguinolog in urwid/urwid#1019

Urwid 3.0.0
===========

2025-05-06

Breaking Changes ⚠
++++++++++++++++++
* Drop deprecated `__super` property by @penguinolog in urwid/urwid#956
* Drop deprecated `FlowWidget`, `BoxWidget` and `FixedWidget` widgets by @penguinolog in urwid/urwid#955
* Remove deprecated protected getter methods from the `Canvas` and `AttrSpec` by @penguinolog in urwid/urwid#958
* Remove support for the `bytes` based fonts by @penguinolog in urwid/urwid#961
* Remove deprecated `TermScroller` by @penguinolog in urwid/urwid#960
* Remove deprecated protected getter methods from the decoration widgets by @penguinolog in urwid/urwid#959
* Remove deprecated protected getter methods from the container widgets by @penguinolog in urwid/urwid#957
* Remove deprecated protected setters in the decoration widgets by @penguinolog in urwid/urwid#968
* Remove deprecated protected methods from the container widgets by @penguinolog in urwid/urwid#970
* Remove deprecated protected method `_set_done` from the `ProgressBar` by @penguinolog in urwid/urwid#971

New features 🗹
+++++++++++++++
* API Extension: make `CommandMap` `MutableMapping` by @penguinolog in urwid/urwid#969
* Make sizing computation much faster for nested containers by @ogayot in urwid/urwid#991
* `MetaSignals` subclass `ABCMeta` by @penguinolog in urwid/urwid#962

Deprecations ⚡
+++++++++++++++
* `MetaSuper` should be the last base for classes by @penguinolog in urwid/urwid#972
* Announce deprecated API removal versions by @penguinolog in urwid/urwid#999

Bug fixes 🕷
++++++++++++
* Fix handling of WEIGHT selectable items in the `Pile` by @penguinolog in urwid/urwid#1006

Refactoring 🛠
++++++++++++++
* Refactoring: micro optimizations of iterable items reconstruction by @penguinolog in urwid/urwid#1009

New Contributors
++++++++++++++++
* @ogayot made their first contribution in urwid/urwid#991
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Feature Feature request/implementation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants