cached-ipaddress


Namecached-ipaddress JSON
Version 0.8.0 PyPI version JSON
download
home_pagehttps://github.com/bdraco/cached-ipaddress
SummaryCache construction of ipaddress objects
upload_time2024-10-06 01:35:01
maintainerNone
docs_urlNone
authorJ. Nick Koston
requires_python<4.0,>=3.8
licenseMIT
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # cached-ipaddress

<p align="center">
  <a href="https://github.com/bdraco/cached-ipaddress/actions/workflows/ci.yml?query=branch%3Amain">
    <img src="https://img.shields.io/github/actions/workflow/status/bdraco/cached-ipaddress/ci.yml?branch=main&label=CI&logo=github&style=flat-square" alt="CI Status" >
  </a>
  <a href="https://codecov.io/gh/bdraco/cached-ipaddress">
    <img src="https://img.shields.io/codecov/c/github/bdraco/cached-ipaddress.svg?logo=codecov&logoColor=fff&style=flat-square" alt="Test coverage percentage">
  </a>
</p>
<p align="center">
  <a href="https://python-poetry.org/">
    <img src="https://img.shields.io/badge/packaging-poetry-299bd7?style=flat-square&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAASCAYAAABrXO8xAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAJJSURBVHgBfZLPa1NBEMe/s7tNXoxW1KJQKaUHkXhQvHgW6UHQQ09CBS/6V3hKc/AP8CqCrUcpmop3Cx48eDB4yEECjVQrlZb80CRN8t6OM/teagVxYZi38+Yz853dJbzoMV3MM8cJUcLMSUKIE8AzQ2PieZzFxEJOHMOgMQQ+dUgSAckNXhapU/NMhDSWLs1B24A8sO1xrN4NECkcAC9ASkiIJc6k5TRiUDPhnyMMdhKc+Zx19l6SgyeW76BEONY9exVQMzKExGKwwPsCzza7KGSSWRWEQhyEaDXp6ZHEr416ygbiKYOd7TEWvvcQIeusHYMJGhTwF9y7sGnSwaWyFAiyoxzqW0PM/RjghPxF2pWReAowTEXnDh0xgcLs8l2YQmOrj3N7ByiqEoH0cARs4u78WgAVkoEDIDoOi3AkcLOHU60RIg5wC4ZuTC7FaHKQm8Hq1fQuSOBvX/sodmNJSB5geaF5CPIkUeecdMxieoRO5jz9bheL6/tXjrwCyX/UYBUcjCaWHljx1xiX6z9xEjkYAzbGVnB8pvLmyXm9ep+W8CmsSHQQY77Zx1zboxAV0w7ybMhQmfqdmmw3nEp1I0Z+FGO6M8LZdoyZnuzzBdjISicKRnpxzI9fPb+0oYXsNdyi+d3h9bm9MWYHFtPeIZfLwzmFDKy1ai3p+PDls1Llz4yyFpferxjnyjJDSEy9CaCx5m2cJPerq6Xm34eTrZt3PqxYO1XOwDYZrFlH1fWnpU38Y9HRze3lj0vOujZcXKuuXm3jP+s3KbZVra7y2EAAAAAASUVORK5CYII=" alt="Poetry">
  </a>
  <a href="https://github.com/ambv/black">
    <img src="https://img.shields.io/badge/code%20style-black-000000.svg?style=flat-square" alt="black">
  </a>
  <a href="https://github.com/pre-commit/pre-commit">
    <img src="https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white&style=flat-square" alt="pre-commit">
  </a>
</p>
<p align="center">
  <a href="https://pypi.org/project/cached-ipaddress/">
    <img src="https://img.shields.io/pypi/v/cached-ipaddress.svg?logo=python&logoColor=fff&style=flat-square" alt="PyPI Version">
  </a>
  <img src="https://img.shields.io/pypi/pyversions/cached-ipaddress.svg?style=flat-square&logo=python&amp;logoColor=fff" alt="Supported Python versions">
  <img src="https://img.shields.io/pypi/l/cached-ipaddress.svg?style=flat-square" alt="License">
</p>

---

**Source Code**: <a href="https://github.com/bdraco/cached-ipaddress" target="_blank">https://github.com/bdraco/cached-ipaddress </a>

---

Cache construction of ipaddress objects

## Design

This module keeps a cache of IPAddress objects and caches the properties on them.

It it useful when you frequently see the same ip addresses over and over and
do not want to pay the overhead of constructing IPAddress objects over and over
or checking their properties.

## Installation

Install this via pip (or your favourite package manager):

`pip install cached-ipaddress`

## Usage

```python
from cached_ipaddress import cached_ip_addresses

ip = cached_ip_addresses("127.0.0.1")
assert ip.is_loopback is False

invalid = cached_ip_addresses("invalid")
assert invalid is None
```

## Contributors ✨

Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):

<!-- prettier-ignore-start -->
<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
<!-- markdownlint-disable -->
<!-- markdownlint-enable -->
<!-- ALL-CONTRIBUTORS-LIST:END -->
<!-- prettier-ignore-end -->

This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!

## Credits

This package was created with
[Copier](https://copier.readthedocs.io/) and the
[browniebroke/pypackage-template](https://github.com/browniebroke/pypackage-template)
project template.


            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/bdraco/cached-ipaddress",
    "name": "cached-ipaddress",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<4.0,>=3.8",
    "maintainer_email": null,
    "keywords": null,
    "author": "J. Nick Koston",
    "author_email": "nick@koston.org",
    "download_url": "https://files.pythonhosted.org/packages/82/42/a020daf196226cbdb21428ee92fe570401cb085351a474c701625d99b08c/cached_ipaddress-0.8.0.tar.gz",
    "platform": null,
    "description": "# cached-ipaddress\n\n<p align=\"center\">\n  <a href=\"https://github.com/bdraco/cached-ipaddress/actions/workflows/ci.yml?query=branch%3Amain\">\n    <img src=\"https://img.shields.io/github/actions/workflow/status/bdraco/cached-ipaddress/ci.yml?branch=main&label=CI&logo=github&style=flat-square\" alt=\"CI Status\" >\n  </a>\n  <a href=\"https://codecov.io/gh/bdraco/cached-ipaddress\">\n    <img src=\"https://img.shields.io/codecov/c/github/bdraco/cached-ipaddress.svg?logo=codecov&logoColor=fff&style=flat-square\" alt=\"Test coverage percentage\">\n  </a>\n</p>\n<p align=\"center\">\n  <a href=\"https://python-poetry.org/\">\n    <img src=\"https://img.shields.io/badge/packaging-poetry-299bd7?style=flat-square&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAASCAYAAABrXO8xAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAJJSURBVHgBfZLPa1NBEMe/s7tNXoxW1KJQKaUHkXhQvHgW6UHQQ09CBS/6V3hKc/AP8CqCrUcpmop3Cx48eDB4yEECjVQrlZb80CRN8t6OM/teagVxYZi38+Yz853dJbzoMV3MM8cJUcLMSUKIE8AzQ2PieZzFxEJOHMOgMQQ+dUgSAckNXhapU/NMhDSWLs1B24A8sO1xrN4NECkcAC9ASkiIJc6k5TRiUDPhnyMMdhKc+Zx19l6SgyeW76BEONY9exVQMzKExGKwwPsCzza7KGSSWRWEQhyEaDXp6ZHEr416ygbiKYOd7TEWvvcQIeusHYMJGhTwF9y7sGnSwaWyFAiyoxzqW0PM/RjghPxF2pWReAowTEXnDh0xgcLs8l2YQmOrj3N7ByiqEoH0cARs4u78WgAVkoEDIDoOi3AkcLOHU60RIg5wC4ZuTC7FaHKQm8Hq1fQuSOBvX/sodmNJSB5geaF5CPIkUeecdMxieoRO5jz9bheL6/tXjrwCyX/UYBUcjCaWHljx1xiX6z9xEjkYAzbGVnB8pvLmyXm9ep+W8CmsSHQQY77Zx1zboxAV0w7ybMhQmfqdmmw3nEp1I0Z+FGO6M8LZdoyZnuzzBdjISicKRnpxzI9fPb+0oYXsNdyi+d3h9bm9MWYHFtPeIZfLwzmFDKy1ai3p+PDls1Llz4yyFpferxjnyjJDSEy9CaCx5m2cJPerq6Xm34eTrZt3PqxYO1XOwDYZrFlH1fWnpU38Y9HRze3lj0vOujZcXKuuXm3jP+s3KbZVra7y2EAAAAAASUVORK5CYII=\" alt=\"Poetry\">\n  </a>\n  <a href=\"https://github.com/ambv/black\">\n    <img src=\"https://img.shields.io/badge/code%20style-black-000000.svg?style=flat-square\" alt=\"black\">\n  </a>\n  <a href=\"https://github.com/pre-commit/pre-commit\">\n    <img src=\"https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white&style=flat-square\" alt=\"pre-commit\">\n  </a>\n</p>\n<p align=\"center\">\n  <a href=\"https://pypi.org/project/cached-ipaddress/\">\n    <img src=\"https://img.shields.io/pypi/v/cached-ipaddress.svg?logo=python&logoColor=fff&style=flat-square\" alt=\"PyPI Version\">\n  </a>\n  <img src=\"https://img.shields.io/pypi/pyversions/cached-ipaddress.svg?style=flat-square&logo=python&amp;logoColor=fff\" alt=\"Supported Python versions\">\n  <img src=\"https://img.shields.io/pypi/l/cached-ipaddress.svg?style=flat-square\" alt=\"License\">\n</p>\n\n---\n\n**Source Code**: <a href=\"https://github.com/bdraco/cached-ipaddress\" target=\"_blank\">https://github.com/bdraco/cached-ipaddress </a>\n\n---\n\nCache construction of ipaddress objects\n\n## Design\n\nThis module keeps a cache of IPAddress objects and caches the properties on them.\n\nIt it useful when you frequently see the same ip addresses over and over and\ndo not want to pay the overhead of constructing IPAddress objects over and over\nor checking their properties.\n\n## Installation\n\nInstall this via pip (or your favourite package manager):\n\n`pip install cached-ipaddress`\n\n## Usage\n\n```python\nfrom cached_ipaddress import cached_ip_addresses\n\nip = cached_ip_addresses(\"127.0.0.1\")\nassert ip.is_loopback is False\n\ninvalid = cached_ip_addresses(\"invalid\")\nassert invalid is None\n```\n\n## Contributors \u2728\n\nThanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):\n\n<!-- prettier-ignore-start -->\n<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->\n<!-- markdownlint-disable -->\n<!-- markdownlint-enable -->\n<!-- ALL-CONTRIBUTORS-LIST:END -->\n<!-- prettier-ignore-end -->\n\nThis project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!\n\n## Credits\n\nThis package was created with\n[Copier](https://copier.readthedocs.io/) and the\n[browniebroke/pypackage-template](https://github.com/browniebroke/pypackage-template)\nproject template.\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Cache construction of ipaddress objects",
    "version": "0.8.0",
    "project_urls": {
        "Bug Tracker": "https://github.com/bdraco/cached-ipaddress/issues",
        "Changelog": "https://github.com/bdraco/cached-ipaddress/blob/main/CHANGELOG.md",
        "Homepage": "https://github.com/bdraco/cached-ipaddress",
        "Repository": "https://github.com/bdraco/cached-ipaddress"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "77328b41b5116e85cfacfd88d16c375685d0abfb0a702dab35bfa3409004c957",
                "md5": "32863c81dee6538bf24328b6c5452326",
                "sha256": "186bb29ad7be66ac05d327f00feec7885ca22b9a963e6c2dcc36882c315462d6"
            },
            "downloads": -1,
            "filename": "cached_ipaddress-0.8.0-cp310-cp310-manylinux_2_31_x86_64.whl",
            "has_sig": false,
            "md5_digest": "32863c81dee6538bf24328b6c5452326",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": "<4.0,>=3.8",
            "size": 234678,
            "upload_time": "2024-10-06T01:35:00",
            "upload_time_iso_8601": "2024-10-06T01:35:00.399747Z",
            "url": "https://files.pythonhosted.org/packages/77/32/8b41b5116e85cfacfd88d16c375685d0abfb0a702dab35bfa3409004c957/cached_ipaddress-0.8.0-cp310-cp310-manylinux_2_31_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "8242a020daf196226cbdb21428ee92fe570401cb085351a474c701625d99b08c",
                "md5": "0874f47cf5df21af3173242cf1334686",
                "sha256": "65037b86959f20fd6505b8ecdbd9cb79c79fb0abc8d3a65c59125aa8d68e9c9b"
            },
            "downloads": -1,
            "filename": "cached_ipaddress-0.8.0.tar.gz",
            "has_sig": false,
            "md5_digest": "0874f47cf5df21af3173242cf1334686",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4.0,>=3.8",
            "size": 6882,
            "upload_time": "2024-10-06T01:35:01",
            "upload_time_iso_8601": "2024-10-06T01:35:01.694301Z",
            "url": "https://files.pythonhosted.org/packages/82/42/a020daf196226cbdb21428ee92fe570401cb085351a474c701625d99b08c/cached_ipaddress-0.8.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-10-06 01:35:01",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "bdraco",
    "github_project": "cached-ipaddress",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "cached-ipaddress"
}
        
Elapsed time: 0.34704s