python-frozenlist
Port variant v11
Summary Mutable lists until Freeze set (3.11)
Package version 1.4.1
Homepage https://github.com/aio-libs/frozenlist
Keywords python
Maintainer Python Automaton
License Not yet specified
Other variants v12
Ravenports Buildsheet | History
Ravensource Port Directory | History
Last modified 19 DEC 2023, 21:09:02 UTC
Port created 10 DEC 2022, 14:08:04 UTC
Subpackage Descriptions
single frozenlist ========== :alt: GitHub status for master branch :alt: codecov.io status for master branch :alt: frozenlist @ PyPI :alt: Read The Docs build status badge :alt: Matrix Room — #aio-libs:matrix.org :alt: Matrix Space — #aio-libs-space:matrix.org Introduction ------------ ``frozenlist.FrozenList`` is a list-like structure which implements ``collections.abc.MutableSequence``. The list is *mutable* until ``FrozenList.freeze`` is called, after which list modifications raise RuntimeError: >>> from frozenlist import FrozenList >>> fl = FrozenList([17, 42]) >>> fl.append('spam') >>> fl.append('Vikings') >>> fl >>> fl.freeze() >>> fl >>> fl.frozen True >>> fl.append("Monty") Traceback (most recent call last): File "", line 1, in File "frozenlist/_frozenlist.pyx", line 97, in frozenlist._frozenlist.FrozenList.append self._check_frozen() File "frozenlist/_frozenlist.pyx", line 19, in frozenlist._frozenlist.FrozenList._check_frozen raise RuntimeError("Cannot modify frozen list.") RuntimeError: Cannot modify frozen list. FrozenList is also hashable, but only when frozen. Otherwise it also throws a RuntimeError: >>> fl = FrozenList([17, 42, 'spam']) >>> hash(fl) Traceback (most recent call last): File "", line 1, in File "frozenlist/_frozenlist.pyx", line 111, in frozenlist._frozenlist.FrozenList.__hash__ raise RuntimeError("Cannot hash unfrozen list.") RuntimeError: Cannot hash unfrozen list. >>> fl.freeze() >>> hash(fl) 3713081631934410656 >>> dictionary = {fl: 'Vikings'} # frozen fl can be a dict key >>> dictionary {: 'Vikings'} Installation ------------ :: $ pip install frozenlist The library requires Python 3.8 or newer. Documentation ------------- https://frozenlist.aio-libs.org Communication channels ---------------------- We have a *Matrix Space* `#aio-libs-space:matrix.org `_ which is also accessible via Gitter. Requirements ------------ - Python >= 3.8 License ------- frozenlist is offered under the Apache 2 license. Source code ----------- The project is hosted on GitHub_ Please file an issue in the [bug tracker
Configuration Switches (platform-specific settings discarded)
PY311 ON Build using Python 3.11 PY312 OFF Build using Python 3.12
Package Dependencies by Type
Build (only) python-pip:single:v11
autoselect-python:single:standard
Build and Runtime python311:single:standard
Download groups
main mirror://PYPIWHL/83/10/466fe96dae1bff622021ee687f68e5524d6392b0a2f80d05001cd3a451ba
Distribution File Information
04ced3e6a46b4cfffe20f9ae482818e34eba9b5fb0ce4056e4cc9b6e212d09b7 11552 frozenlist-1.4.1-py3-none-any.whl
Ports that require python-frozenlist:v11
python-aiohttp:v11 Async http client/server framework (3.11)
python-aiosignal:v11 List of registered asynchronous callbacks (3.11)