# immutabledict
![PyPI](https://img.shields.io/pypi/v/immutabledict) ![Conda](https://img.shields.io/conda/vn/conda-forge/immutabledict) ![PyPI - Python Version](https://img.shields.io/pypi/pyversions/immutabledict)
![License](https://img.shields.io/pypi/l/immutabledict) ![Build](https://img.shields.io/github/actions/workflow/status/corenting/immutabledict/ci.yml?branch=master) ![Codecov](https://img.shields.io/codecov/c/github/corenting/immutabledict) ![PyPI - Downloads](https://img.shields.io/pypi/dm/immutabledict)
An immutable wrapper around dictionaries. immutabledict implements the complete mapping interface and can be used as a drop-in replacement for dictionaries where immutability is desired.
It's a fork of slezica's [frozendict](https://github.com/slezica/python-frozendict). This library is a pure Python, MIT-licensed alternative to the new LGPL-3.0 licensed [frozendict](https://github.com/Marco-Sulla/python-frozendict).
## Installation
Official release in [on pypi](https://pypi.org/project/immutabledict/) as `immutabledict`.
**Community-maintained** releases are available:
- On [conda-forge](https://anaconda.org/conda-forge/immutabledict) as `immutabledict`
- On [various package repositories](https://repology.org/project/python:immutabledict/versions)
## Example
```python
from immutabledict import immutabledict
my_item = immutabledict({"a": "value", "b": "other_value"})
print(my_item["a"]) # Print "value"
```
## Differences with the old original frozendict package
- Dropped support of EOL Python versions (older versions of the library may support older Python versions)
- Fixed `collections.Mapping` deprecation warning
- Typing
- [PEP 584 union operators](https://www.python.org/dev/peps/pep-0584/)
- Keep the same signature for `copy()` as `dict` (starting with immutabledict 3.0.0), don't accept extra keyword arguments.
- Added `set`, `delete` and `discard` methods
## Donations
If you wish to support this library, donations are possible [here](https://corenting.fr/donate).
Raw data
{
"_id": null,
"home_page": "https://github.com/corenting/immutabledict",
"name": "immutabledict",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.8,<4.0",
"maintainer_email": "",
"keywords": "immutable,dictionary",
"author": "Corentin Garcia",
"author_email": "corenting@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/55/f4/710c84db4d77767176342913ac6b25f43aaed6d0a0bdb9168a8d2936d9c7/immutabledict-4.2.0.tar.gz",
"platform": null,
"description": "# immutabledict\n\n![PyPI](https://img.shields.io/pypi/v/immutabledict) ![Conda](https://img.shields.io/conda/vn/conda-forge/immutabledict) ![PyPI - Python Version](https://img.shields.io/pypi/pyversions/immutabledict)\n\n![License](https://img.shields.io/pypi/l/immutabledict) ![Build](https://img.shields.io/github/actions/workflow/status/corenting/immutabledict/ci.yml?branch=master) ![Codecov](https://img.shields.io/codecov/c/github/corenting/immutabledict) ![PyPI - Downloads](https://img.shields.io/pypi/dm/immutabledict)\n\nAn immutable wrapper around dictionaries. immutabledict implements the complete mapping interface and can be used as a drop-in replacement for dictionaries where immutability is desired.\n\nIt's a fork of slezica's [frozendict](https://github.com/slezica/python-frozendict). This library is a pure Python, MIT-licensed alternative to the new LGPL-3.0 licensed [frozendict](https://github.com/Marco-Sulla/python-frozendict).\n\n## Installation\n\nOfficial release in [on pypi](https://pypi.org/project/immutabledict/) as `immutabledict`.\n\n**Community-maintained** releases are available:\n- On [conda-forge](https://anaconda.org/conda-forge/immutabledict) as `immutabledict`\n- On [various package repositories](https://repology.org/project/python:immutabledict/versions)\n\n## Example\n\n```python\nfrom immutabledict import immutabledict\n\nmy_item = immutabledict({\"a\": \"value\", \"b\": \"other_value\"})\nprint(my_item[\"a\"]) # Print \"value\"\n```\n\n## Differences with the old original frozendict package\n\n- Dropped support of EOL Python versions (older versions of the library may support older Python versions)\n- Fixed `collections.Mapping` deprecation warning\n- Typing\n- [PEP 584 union operators](https://www.python.org/dev/peps/pep-0584/)\n- Keep the same signature for `copy()` as `dict` (starting with immutabledict 3.0.0), don't accept extra keyword arguments.\n- Added `set`, `delete` and `discard` methods\n\n## Donations\n\nIf you wish to support this library, donations are possible [here](https://corenting.fr/donate).\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Immutable wrapper around dictionaries (a fork of frozendict)",
"version": "4.2.0",
"project_urls": {
"Bug Tracker": "https://github.com/corenting/immutabledict/issues",
"Changelog": "https://github.com/corenting/immutabledict/blob/master/CHANGELOG.md",
"Documentation": "https://immutabledict.corenting.fr",
"Donation": "https://corenting.fr/donate",
"Homepage": "https://github.com/corenting/immutabledict",
"Repository": "https://github.com/corenting/immutabledict"
},
"split_keywords": [
"immutable",
"dictionary"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "e2133cf4ac5b3403f3456e645c4533883ef67b1bb0c72e56b79c707715f57a74",
"md5": "daffb854af161c9586103f99382f1425",
"sha256": "d728b2c2410d698d95e6200237feb50a695584d20289ad3379a439aa3d90baba"
},
"downloads": -1,
"filename": "immutabledict-4.2.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "daffb854af161c9586103f99382f1425",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8,<4.0",
"size": 4702,
"upload_time": "2024-03-06T18:46:44",
"upload_time_iso_8601": "2024-03-06T18:46:44.991858Z",
"url": "https://files.pythonhosted.org/packages/e2/13/3cf4ac5b3403f3456e645c4533883ef67b1bb0c72e56b79c707715f57a74/immutabledict-4.2.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "55f4710c84db4d77767176342913ac6b25f43aaed6d0a0bdb9168a8d2936d9c7",
"md5": "6796be00860cc5cf45ae839b9ed2de52",
"sha256": "e003fd81aad2377a5a758bf7e1086cf3b70b63e9a5cc2f46bce8d0a2b4727c5f"
},
"downloads": -1,
"filename": "immutabledict-4.2.0.tar.gz",
"has_sig": false,
"md5_digest": "6796be00860cc5cf45ae839b9ed2de52",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8,<4.0",
"size": 6165,
"upload_time": "2024-03-06T18:46:46",
"upload_time_iso_8601": "2024-03-06T18:46:46.235605Z",
"url": "https://files.pythonhosted.org/packages/55/f4/710c84db4d77767176342913ac6b25f43aaed6d0a0bdb9168a8d2936d9c7/immutabledict-4.2.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-03-06 18:46:46",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "corenting",
"github_project": "immutabledict",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"tox": true,
"lcname": "immutabledict"
}