{"info":{"author":null,"author_email":"Ross McFaland <rwmcfa1@gmail.com>","bugtrack_url":null,"classifiers":["Development Status :: 5 - Production/Stable","Intended Audience :: Developers","Intended Audience :: System Administrators","Operating System :: OS Independent","Programming Language :: Python :: 3","Programming Language :: Python :: 3.10","Programming Language :: Python :: 3.11","Programming Language :: Python :: 3.12","Programming Language :: Python :: 3.13","Programming Language :: Python :: 3.14","Topic :: Internet :: Name Service (DNS)","Topic :: System :: Systems Administration"],"description":"## PowerDNS API provider for octoDNS\n\nAn [octoDNS](https://github.com/octodns/octodns/) provider that targets [PowerDNS's API](https://doc.powerdns.com/authoritative/http-api/index.html).\n\n### Installation\n\n#### Command line\n\n```\npip install octodns-powerdns\n```\n\n#### requirements.txt/setup.py\n\nPinning specific versions or SHAs is recommended to avoid unplanned upgrades.\n\n##### Versions\n\n```\n# Start with the latest versions and don't just copy what's here\noctodns==0.9.21\noctodns-powerdns==0.0.3\nrequests==2.31.0\n```\n\n##### SHAs\n\n```\n# Start with the latest/specific versions and don't just copy what's here\n-e git+https://git@github.com/octodns/octodns.git@67ea0b0ea7961e37b028cfe21c463fa3e5090c8f#egg=octodns\n-e git+https://git@github.com/octodns/octodns-powerdns.git@e33349e5edfe4e12a1d179a32a5f70a8ec4c2aad#egg=octodns_powerdns\nrequests==2.31.0\n```\n\n### Configuration\n\n```yaml\nproviders:\n  powerdns:\n      class: octodns_powerdns.PowerDnsProvider\n      # The host on which PowerDNS api is listening (required)\n      host: fqdn\n      # The port on which PowerDNS api is listening (optional, default 8081)\n      port: 8081\n      # The api key that grants access (required, example is using an env var)\n      api_key: env/POWERDNS_API_KEY\n      # The URL scheme (optional, default http)\n      # scheme: https\n      # Check SSL certificate (optional, default True)\n      # ssl_verify: true\n      # Send DNS NOTIFY to secondary servers after change (optional, default false)\n      # notify: false\n      # The PowerDNS server id used in API URLs (optional, default localhost)\n      # server_id: localhost\n      # Force dynamic record support on/off, bypassing the runtime probe\n      # (optional, default None — probe /config to decide)\n      # enable_dynamic: true\n```\n\n### Support Information\n\n#### Records\n\nAll octoDNS record types are supported.\n\n#### Root NS Records\n\nPowerDnsProvider supports full root NS record management.\n\n#### Dynamic\n\n> [!WARNING]\n> **Upgrade Note**: Prior to this release, dynamic records were not supported by this provider and were treated as standard/static records. Upgrading will cause any existing dynamic records in your zone configurations to be created as PowerDNS `LUA` records. If your server is not fully configured for LUA and GeoIP routing, or if you want to maintain the previous behavior, you must set `enable_dynamic: false` in your provider configuration.\n\nPowerDnsProvider supports dynamic A, AAAA, and CNAME records by generating\n[PowerDNS LUA records](https://doc.powerdns.com/authoritative/lua-records/index.html)\nthat route answers via the `continent()`, `country()`, and `region()` geo\nhelpers backed by the\n[geoipbackend](https://doc.powerdns.com/authoritative/backends/geoip.html),\nand via the `netmask({...})` helper for subnet/CIDR-based routing.\nPool values are emitted as `pickwhashed({{weight, value}, ...})`; pool\nfallback chains are flattened into the selected pool's value list at encode\ntime.\n\nSubnet/CIDR-based rules are emitted using PowerDNS's `netmask({...})` helper,\nwhich matches the client IP against the listed CIDRs and does **not** require\nthe geoip backend. A rule may combine subnets and geos; the client matches if\nit falls in any listed subnet **or** matches any listed geo. As required by\noctoDNS, subnet-based rules take precedence over geo-only rules — ensured\nnaturally by the `if/elseif` chain ordering.\n\nThe full octoDNS dynamic payload (pools, rules, weights, fallback, subnets) is\nembedded in a leading Lua comment as a base64-encoded JSON blob so that\n`populate` after an `apply` round-trips cleanly — octodns-powerdns parses\nthat marker rather than trying to read back the generated Lua.\n\n##### Out of scope\n\n- Per-value pool status (`SUPPORTS_POOL_VALUE_STATUS=False`) — all values are\n  treated as `obey`.\n- Manually-authored LUA records (`PowerDnsProvider/LUA`) — still supported\n  via the existing opaque path; they are never reinterpreted as dynamic.\n\n##### Server requirements\n\nFor dynamic records to actually resolve correctly, the PowerDNS server must\nhave `enable-lua-records=yes` (or `shared`). Geo-based routing additionally\nrequires:\n\n1. The `geoipbackend` loaded via `launch=...,geoip` **and** a MaxMind database\n   configured via `geoip-database-files=...`\n\nSubnet/CIDR-based routing uses `netmask()` which is a built-in Lua function\nand works with just `enable-lua-records` — no geoip backend is needed.\n\n**Silent-failure warning:** if `enable-lua-records` is on but the geoip\nbackend is not loaded, PowerDNS will happily serve the generated Lua but\nevery `continent()`/`country()` call will return an empty string — every\nrequest falls through to the catchall pool. octodns-powerdns probes\n`GET /api/v1/servers/{server_id}/config` once per run to check both settings\nand disables dynamic support (logging a warning) if either is missing.\n\n> [!NOTE]\n> The probe currently gates **all** dynamic support (including subnet-only\n> records) on the geoip backend being configured. If you are using only\n> subnet-based routing and do not have geoip configured, set\n> `enable_dynamic: true` on the provider to force dynamic support on.\n\nIf the probe can't run (for example, the API key lacks access to `config`),\nset `enable_dynamic: true` on the provider to force dynamic support on. Set\n`enable_dynamic: false` to force it off regardless of server configuration.\n\n### Development\n\nSee the [/script/](/script/) directory for some tools to help with the development process. They generally follow the [Script to rule them all](https://github.com/github/scripts-to-rule-them-all) pattern. Most useful is `./script/bootstrap` which will create a venv and install both the runtime and development related requirements. It will also hook up a pre-commit hook that covers most of what's run by CI.\n\nThere is a [docker-compose.yml](/docker-compose.yml) file included in the repo that will set up a PowerDNS server with the API enabled for use in development. The api-key for it is `its@secret`.\n","description_content_type":"text/markdown","docs_url":null,"download_url":null,"downloads":{"last_day":-1,"last_month":-1,"last_week":-1},"dynamic":["License-File"],"home_page":null,"keywords":"dns, octodns, dns-as-code","license":null,"license_expression":"MIT","license_files":["LICENSE"],"maintainer":null,"maintainer_email":null,"name":"octodns-powerdns","package_url":"https://pypi.org/project/octodns-powerdns/","platform":null,"project_url":"https://pypi.org/project/octodns-powerdns/","project_urls":{"Homepage":"https://github.com/octodns/octodns-powerdns","Issues":"https://github.com/octodns/octodns-powerdns/issues","Source":"https://github.com/octodns/octodns-powerdns"},"provides_extra":["test","dev"],"release_url":"https://pypi.org/project/octodns-powerdns/1.2.0/","requires_dist":["octodns>=1.5.0","requests>=2.26.0","pytest; extra == \"test\"","pytest-cov; extra == \"test\"","pytest-network; extra == \"test\"","requests_mock; extra == \"test\"","pytest; extra == \"dev\"","pytest-cov; extra == \"dev\"","pytest-network; extra == \"dev\"","requests_mock; extra == \"dev\"","black<27.0.0,>=26.0.0; extra == \"dev\"","build>=0.7.0; extra == \"dev\"","changelet; extra == \"dev\"","isort>=5.11.5; extra == \"dev\"","proviso; extra == \"dev\"","pyflakes>=2.2.0; extra == \"dev\"","readme_renderer[md]>=26.0; extra == \"dev\"","twine>=3.4.2; extra == \"dev\""],"requires_python":">=3.10","summary":"PowerDNS API provider for octoDNS","version":"1.2.0","yanked":false,"yanked_reason":null},"last_serial":38870943,"ownership":{"organization":"octodns","roles":[{"role":"Owner","user":"viranch"},{"role":"Owner","user":"yzguy"}]},"releases":{"0.0.1":[{"comment_text":"","core-metadata":{"sha256":"9e8a7f3857f3fe6d9c787bee20112a1534f7806180abe71db63711d9040d85cd"},"digests":{"blake2b_256":"174998ca421b4282236b783376718461a16b1078720282fe456fe24a947e0af5","md5":"abc41e51437abd8599afa428b8a2b6b9","sha256":"7bfbb4965c4bdf962d91987aeccf8d7cce24730ca594c7d3879ab02ae02f923c"},"downloads":-1,"filename":"octodns_powerdns-0.0.1-py3-none-any.whl","has_sig":false,"md5_digest":"abc41e51437abd8599afa428b8a2b6b9","packagetype":"bdist_wheel","python_version":"py3","requires_python":">=3.6","size":6377,"upload_time":"2021-12-21T21:35:38","upload_time_iso_8601":"2021-12-21T21:35:38.925176Z","url":"https://files.pythonhosted.org/packages/17/49/98ca421b4282236b783376718461a16b1078720282fe456fe24a947e0af5/octodns_powerdns-0.0.1-py3-none-any.whl","yanked":false,"yanked_reason":null},{"comment_text":"","core-metadata":false,"digests":{"blake2b_256":"a88f833673751dc490f0b4567ccfeb0bbe5ef11adf34fe26534f97cf80cd4d4c","md5":"0c0b7d6772d198dcbdcbf8ec8e3f0745","sha256":"d78ecbcf4522fcdc7bafe7aa55609e3633d5a4a5ed043cf6f4a9e70a0adc8bec"},"downloads":-1,"filename":"octodns-powerdns-0.0.1.tar.gz","has_sig":false,"md5_digest":"0c0b7d6772d198dcbdcbf8ec8e3f0745","packagetype":"sdist","python_version":"source","requires_python":">=3.6","size":6317,"upload_time":"2021-12-21T21:35:40","upload_time_iso_8601":"2021-12-21T21:35:40.039615Z","url":"https://files.pythonhosted.org/packages/a8/8f/833673751dc490f0b4567ccfeb0bbe5ef11adf34fe26534f97cf80cd4d4c/octodns-powerdns-0.0.1.tar.gz","yanked":false,"yanked_reason":null}],"0.0.2":[{"comment_text":"","core-metadata":{"sha256":"6975f1ee94a4fb48f46e1bb3065d0b8af769cb46f4932725fdb866d3029e1f67"},"digests":{"blake2b_256":"b026223a2df22bc62c132c3f2af71cc7ba2686f09bbcaf0ff1e480ff9ddd6eba","md5":"3b9700d3d55f5bf4ade76c33c2c3a3b5","sha256":"5628a0ac440587e8ace150db929cd83f5189fdf214484bfe11d7ac082e57a66c"},"downloads":-1,"filename":"octodns_powerdns-0.0.2-py3-none-any.whl","has_sig":false,"md5_digest":"3b9700d3d55f5bf4ade76c33c2c3a3b5","packagetype":"bdist_wheel","python_version":"py3","requires_python":">=3.6","size":7704,"upload_time":"2022-11-09T17:45:04","upload_time_iso_8601":"2022-11-09T17:45:04.998247Z","url":"https://files.pythonhosted.org/packages/b0/26/223a2df22bc62c132c3f2af71cc7ba2686f09bbcaf0ff1e480ff9ddd6eba/octodns_powerdns-0.0.2-py3-none-any.whl","yanked":false,"yanked_reason":null},{"comment_text":"","core-metadata":false,"digests":{"blake2b_256":"f60f4fdee1596912d8a99d06de5156a4e2ad6fc4b4b3b0a2b4fcf1d1c4603e9d","md5":"9286014f98d71e5451d7aedda3b77e01","sha256":"10d845044cad3047a544393bdd7ff2135c4f1f5bea7e8a8c6ed00e215c965a3a"},"downloads":-1,"filename":"octodns-powerdns-0.0.2.tar.gz","has_sig":false,"md5_digest":"9286014f98d71e5451d7aedda3b77e01","packagetype":"sdist","python_version":"source","requires_python":">=3.6","size":8654,"upload_time":"2022-11-09T17:45:07","upload_time_iso_8601":"2022-11-09T17:45:07.046354Z","url":"https://files.pythonhosted.org/packages/f6/0f/4fdee1596912d8a99d06de5156a4e2ad6fc4b4b3b0a2b4fcf1d1c4603e9d/octodns-powerdns-0.0.2.tar.gz","yanked":false,"yanked_reason":null}],"0.0.3":[{"comment_text":"","core-metadata":{"sha256":"d538061d0b6fdbf89a9c5f3bd398521c5c1a32c0d45b446b841200d399558044"},"digests":{"blake2b_256":"b3ee51c5698870299b302508d939e8aa5f9a8c58d3840c2eee0607b1c0edfdc8","md5":"517f502939a2c36e8c88c752d673734c","sha256":"f7efe6b4a6241099ebd1d07fa745cbf6b28c7a81cb3f0f9f4e5a007b43498d9c"},"downloads":-1,"filename":"octodns_powerdns-0.0.3-py3-none-any.whl","has_sig":false,"md5_digest":"517f502939a2c36e8c88c752d673734c","packagetype":"bdist_wheel","python_version":"py3","requires_python":">=3.6","size":7856,"upload_time":"2022-12-23T01:53:04","upload_time_iso_8601":"2022-12-23T01:53:04.787513Z","url":"https://files.pythonhosted.org/packages/b3/ee/51c5698870299b302508d939e8aa5f9a8c58d3840c2eee0607b1c0edfdc8/octodns_powerdns-0.0.3-py3-none-any.whl","yanked":false,"yanked_reason":null},{"comment_text":"","core-metadata":false,"digests":{"blake2b_256":"4e62b025450b859152fce5bec0314f3b47e55840c02fe797989cfa280334bd09","md5":"079e34335c60f99fd3c07b909162957a","sha256":"45fea09eb783e5737306b2d3f52d4f24d1426d17992728146e8641edad2360e3"},"downloads":-1,"filename":"octodns-powerdns-0.0.3.tar.gz","has_sig":false,"md5_digest":"079e34335c60f99fd3c07b909162957a","packagetype":"sdist","python_version":"source","requires_python":">=3.6","size":8899,"upload_time":"2022-12-23T01:53:06","upload_time_iso_8601":"2022-12-23T01:53:06.215823Z","url":"https://files.pythonhosted.org/packages/4e/62/b025450b859152fce5bec0314f3b47e55840c02fe797989cfa280334bd09/octodns-powerdns-0.0.3.tar.gz","yanked":false,"yanked_reason":null}],"0.0.4":[{"comment_text":"","core-metadata":{"sha256":"aae0bb1fb5b4cea9d4520bc954ee0a28987cc3b66d888e2a1fae61f7e13de107"},"digests":{"blake2b_256":"d9c7a289a0cfbd4541c491bf2c3cbf380de531b20a6a90d8f9ca1ef311c5546c","md5":"d5ca9bda6cfe1f98c2564ec9c7567e6a","sha256":"e53107d4ffb7e72193bbbbe84b0b9528aa7cc040d3d7c52399caf8a217080cba"},"downloads":-1,"filename":"octodns_powerdns-0.0.4-py3-none-any.whl","has_sig":false,"md5_digest":"d5ca9bda6cfe1f98c2564ec9c7567e6a","packagetype":"bdist_wheel","python_version":"py3","requires_python":">=3.6","size":8300,"upload_time":"2023-08-03T13:13:18","upload_time_iso_8601":"2023-08-03T13:13:18.565791Z","url":"https://files.pythonhosted.org/packages/d9/c7/a289a0cfbd4541c491bf2c3cbf380de531b20a6a90d8f9ca1ef311c5546c/octodns_powerdns-0.0.4-py3-none-any.whl","yanked":false,"yanked_reason":null},{"comment_text":"","core-metadata":false,"digests":{"blake2b_256":"e8ea3d020abf70fb41793817c48f9d32e440445d275f81504f0a9882c711b019","md5":"7b9e17b5ce687e7eaa32d1cdbe8b61d4","sha256":"e7492f26dc9638542cdbc30a442f28c37fbab3ba3ee8292ba78f7427cd4807a2"},"downloads":-1,"filename":"octodns-powerdns-0.0.4.tar.gz","has_sig":false,"md5_digest":"7b9e17b5ce687e7eaa32d1cdbe8b61d4","packagetype":"sdist","python_version":"source","requires_python":">=3.6","size":12996,"upload_time":"2023-08-03T13:13:20","upload_time_iso_8601":"2023-08-03T13:13:20.290452Z","url":"https://files.pythonhosted.org/packages/e8/ea/3d020abf70fb41793817c48f9d32e440445d275f81504f0a9882c711b019/octodns-powerdns-0.0.4.tar.gz","yanked":false,"yanked_reason":null}],"0.0.5":[{"comment_text":"","core-metadata":{"sha256":"ecb63eb4d649c4a7157b4fbdaa9e4d24f769a18d74caa387d429c690e0b6132f"},"digests":{"blake2b_256":"20acd365409995fbbca655615bc96b7d67e60de39bce36c49edf7a6411fbf38a","md5":"7ef13c11719cf674decb8d0810cf5159","sha256":"717662a48901d3aa904315a4af8dc6c1d6bf5934cac864f589a1530a63902005"},"downloads":-1,"filename":"octodns_powerdns-0.0.5-py3-none-any.whl","has_sig":false,"md5_digest":"7ef13c11719cf674decb8d0810cf5159","packagetype":"bdist_wheel","python_version":"py3","requires_python":">=3.6","size":8407,"upload_time":"2023-09-12T17:45:44","upload_time_iso_8601":"2023-09-12T17:45:44.286391Z","url":"https://files.pythonhosted.org/packages/20/ac/d365409995fbbca655615bc96b7d67e60de39bce36c49edf7a6411fbf38a/octodns_powerdns-0.0.5-py3-none-any.whl","yanked":false,"yanked_reason":null},{"comment_text":"","core-metadata":false,"digests":{"blake2b_256":"e7be1c4b5d25587e5d8f6582ec2061a6dc1cb7dd7cc2e959dd859c3e93d144af","md5":"5f53b02068093b20996003526b2fb397","sha256":"ee1c06f15d4bc131a5c9b63b0511288bfeb6092dff39d85a270ec03f04e532d2"},"downloads":-1,"filename":"octodns-powerdns-0.0.5.tar.gz","has_sig":false,"md5_digest":"5f53b02068093b20996003526b2fb397","packagetype":"sdist","python_version":"source","requires_python":">=3.6","size":13419,"upload_time":"2023-09-12T17:45:45","upload_time_iso_8601":"2023-09-12T17:45:45.594153Z","url":"https://files.pythonhosted.org/packages/e7/be/1c4b5d25587e5d8f6582ec2061a6dc1cb7dd7cc2e959dd859c3e93d144af/octodns-powerdns-0.0.5.tar.gz","yanked":false,"yanked_reason":null}],"0.0.6":[{"comment_text":"","core-metadata":{"sha256":"ffa65bc9899ce096a7f07989f61911eecc0398061e96c5848b6a0a2ae64f4b10"},"digests":{"blake2b_256":"c0756562ec4014478c2999b5062917f4f2409dc0ca1d68882aca7cb212e3fa9d","md5":"f8d9ec63367425875cb058a8d8c8e02e","sha256":"3e564e1a0bc6237e9b9e424cdaed40947d7e33b21ee639bb8327c3e5b7c01a2c"},"downloads":-1,"filename":"octodns_powerdns-0.0.6-py3-none-any.whl","has_sig":false,"md5_digest":"f8d9ec63367425875cb058a8d8c8e02e","packagetype":"bdist_wheel","python_version":"py3","requires_python":">=3.6","size":9713,"upload_time":"2024-03-08T15:59:45","upload_time_iso_8601":"2024-03-08T15:59:45.454243Z","url":"https://files.pythonhosted.org/packages/c0/75/6562ec4014478c2999b5062917f4f2409dc0ca1d68882aca7cb212e3fa9d/octodns_powerdns-0.0.6-py3-none-any.whl","yanked":false,"yanked_reason":null},{"comment_text":"","core-metadata":false,"digests":{"blake2b_256":"13667c17aa66ee9516719431a271b0f3bd131d68a558b8b3b8667dd0985b18a9","md5":"8e61aba96352dd92fd47a0ca17d979d6","sha256":"b158a8d3a8202232df7821d1a1ea9ac9562ba7e6cd424abc30b86ad8e2a6141a"},"downloads":-1,"filename":"octodns-powerdns-0.0.6.tar.gz","has_sig":false,"md5_digest":"8e61aba96352dd92fd47a0ca17d979d6","packagetype":"sdist","python_version":"source","requires_python":">=3.6","size":15189,"upload_time":"2024-03-08T15:59:46","upload_time_iso_8601":"2024-03-08T15:59:46.670955Z","url":"https://files.pythonhosted.org/packages/13/66/7c17aa66ee9516719431a271b0f3bd131d68a558b8b3b8667dd0985b18a9/octodns-powerdns-0.0.6.tar.gz","yanked":false,"yanked_reason":null}],"0.0.7":[{"comment_text":"","core-metadata":{"sha256":"5d14d40a37b61ef009fb554a1273603fd5b063e925f04a23abd7c6566c0fcb7f"},"digests":{"blake2b_256":"5d790895f562f71bfb4d189ceedbd50c929f26e6090a83ee3734d150021fe022","md5":"a111ec0ab734d575182855eea63a9a26","sha256":"a72ab04c296d1a924e0c4c31b4277f90384c1172f5ba129f76ff87670f26a021"},"downloads":-1,"filename":"octodns_powerdns-0.0.7-py3-none-any.whl","has_sig":false,"md5_digest":"a111ec0ab734d575182855eea63a9a26","packagetype":"bdist_wheel","python_version":"py3","requires_python":">=3.6","size":10185,"upload_time":"2024-08-28T16:29:36","upload_time_iso_8601":"2024-08-28T16:29:36.142357Z","url":"https://files.pythonhosted.org/packages/5d/79/0895f562f71bfb4d189ceedbd50c929f26e6090a83ee3734d150021fe022/octodns_powerdns-0.0.7-py3-none-any.whl","yanked":false,"yanked_reason":null},{"comment_text":"","core-metadata":false,"digests":{"blake2b_256":"535de0489fc64bb63ac0824582494413d8854cbaa902607373b83f5a648b13c9","md5":"4f36da0cf01c25ee787fab20371d60e2","sha256":"6ff12c6c2fbe21be3389353e9975744aaf472606ed4b6f35bdb8d5673be1fcd0"},"downloads":-1,"filename":"octodns_powerdns-0.0.7.tar.gz","has_sig":false,"md5_digest":"4f36da0cf01c25ee787fab20371d60e2","packagetype":"sdist","python_version":"source","requires_python":">=3.6","size":15999,"upload_time":"2024-08-28T16:29:37","upload_time_iso_8601":"2024-08-28T16:29:37.147671Z","url":"https://files.pythonhosted.org/packages/53/5d/e0489fc64bb63ac0824582494413d8854cbaa902607373b83f5a648b13c9/octodns_powerdns-0.0.7.tar.gz","yanked":false,"yanked_reason":null}],"1.0.0":[{"comment_text":null,"core-metadata":{"sha256":"84271ea84db241b626f802cd6e904d971872b42818bb13303b440b1a490586f7"},"digests":{"blake2b_256":"4721c325f18bf88e44b9d0c00b4c4e08ad121e214860aff538c3fd90a5fe7d17","md5":"b32f880c04b682046db5d7b9f6149aef","sha256":"f13c2bb82e419a405e21514f62595de3fef604f01d4a5b01002b5a94e7c000f7"},"downloads":-1,"filename":"octodns_powerdns-1.0.0-py3-none-any.whl","has_sig":false,"md5_digest":"b32f880c04b682046db5d7b9f6149aef","packagetype":"bdist_wheel","python_version":"py3","requires_python":">=3.9","size":10086,"upload_time":"2025-05-04T20:45:37","upload_time_iso_8601":"2025-05-04T20:45:37.568566Z","url":"https://files.pythonhosted.org/packages/47/21/c325f18bf88e44b9d0c00b4c4e08ad121e214860aff538c3fd90a5fe7d17/octodns_powerdns-1.0.0-py3-none-any.whl","yanked":false,"yanked_reason":null},{"comment_text":null,"core-metadata":false,"digests":{"blake2b_256":"4b85b0197ec3b027523395b6a4a2610e221789e71a030e169a69392fedbe1883","md5":"b0bb4c75d917ebab051acd4b106804a7","sha256":"096625dcd2778cf26f4a1f8616fc28cb2a85cf503c2d78fe6c8438d3eef89462"},"downloads":-1,"filename":"octodns_powerdns-1.0.0.tar.gz","has_sig":false,"md5_digest":"b0bb4c75d917ebab051acd4b106804a7","packagetype":"sdist","python_version":"source","requires_python":">=3.9","size":15637,"upload_time":"2025-05-04T20:45:38","upload_time_iso_8601":"2025-05-04T20:45:38.889347Z","url":"https://files.pythonhosted.org/packages/4b/85/b0197ec3b027523395b6a4a2610e221789e71a030e169a69392fedbe1883/octodns_powerdns-1.0.0.tar.gz","yanked":false,"yanked_reason":null}],"1.1.0":[{"comment_text":null,"core-metadata":{"sha256":"ad453470d3421af4fc56558de8deb43099187a5e0e782944def69018c749d2ad"},"digests":{"blake2b_256":"c32a63daed7e65a9b1c4cc7de47be31ab4a285a57d906eed05c83a08e45495eb","md5":"15ad70952be0305841911a5c8549088a","sha256":"4ae17bc71f2584fb1f4dd2694833eafe9d9b6e48c1dc9cc3f1b80867d813cc7b"},"downloads":-1,"filename":"octodns_powerdns-1.1.0-py3-none-any.whl","has_sig":false,"md5_digest":"15ad70952be0305841911a5c8549088a","packagetype":"bdist_wheel","python_version":"py3","requires_python":">=3.9","size":10143,"upload_time":"2026-04-04T00:03:37","upload_time_iso_8601":"2026-04-04T00:03:37.979919Z","url":"https://files.pythonhosted.org/packages/c3/2a/63daed7e65a9b1c4cc7de47be31ab4a285a57d906eed05c83a08e45495eb/octodns_powerdns-1.1.0-py3-none-any.whl","yanked":false,"yanked_reason":null},{"comment_text":null,"core-metadata":false,"digests":{"blake2b_256":"29719f0a65b4e36175a0848554211f443592b9252e36f9fd59202851c06b899a","md5":"c04931f54a1494b4e5c4f37676aa53b7","sha256":"16c8980a5beed00fca52cff79ea89a5e2e4f4d13af473913d952cf53d8e39c86"},"downloads":-1,"filename":"octodns_powerdns-1.1.0.tar.gz","has_sig":false,"md5_digest":"c04931f54a1494b4e5c4f37676aa53b7","packagetype":"sdist","python_version":"source","requires_python":">=3.9","size":15845,"upload_time":"2026-04-04T00:03:39","upload_time_iso_8601":"2026-04-04T00:03:39.258141Z","url":"https://files.pythonhosted.org/packages/29/71/9f0a65b4e36175a0848554211f443592b9252e36f9fd59202851c06b899a/octodns_powerdns-1.1.0.tar.gz","yanked":false,"yanked_reason":null}],"1.2.0":[{"comment_text":null,"core-metadata":{"sha256":"c23f97cff21ca3fb5aec101eea3d2b056d9cc7fa26d1c444eba19a406fe31caa"},"digests":{"blake2b_256":"c8a1236486ff5f1a11c124f120fb290dffb48dad65f548b290630d42070aa675","md5":"81f0ac36599766654cec76df3eaf45ac","sha256":"df32bed13c5a4dee8fd79b6d24484905bd8711cb1f8d2b37e3292bc61a2029c9"},"downloads":-1,"filename":"octodns_powerdns-1.2.0-py3-none-any.whl","has_sig":false,"md5_digest":"81f0ac36599766654cec76df3eaf45ac","packagetype":"bdist_wheel","python_version":"py3","requires_python":">=3.10","size":14692,"upload_time":"2026-07-10T20:54:28","upload_time_iso_8601":"2026-07-10T20:54:28.053342Z","url":"https://files.pythonhosted.org/packages/c8/a1/236486ff5f1a11c124f120fb290dffb48dad65f548b290630d42070aa675/octodns_powerdns-1.2.0-py3-none-any.whl","yanked":false,"yanked_reason":null},{"comment_text":null,"core-metadata":false,"digests":{"blake2b_256":"2fdefc49eb015d2032bb3dca95ee1690ee77322fd227ee6826dfe108dbe438b9","md5":"da9b24311b910b2619ca906f656375fa","sha256":"5722297e93e095b6d72e989f5a729d5f16fdec120ee17dc839d3f94c008fbb9b"},"downloads":-1,"filename":"octodns_powerdns-1.2.0.tar.gz","has_sig":false,"md5_digest":"da9b24311b910b2619ca906f656375fa","packagetype":"sdist","python_version":"source","requires_python":">=3.10","size":26549,"upload_time":"2026-07-10T20:54:29","upload_time_iso_8601":"2026-07-10T20:54:29.244733Z","url":"https://files.pythonhosted.org/packages/2f/de/fc49eb015d2032bb3dca95ee1690ee77322fd227ee6826dfe108dbe438b9/octodns_powerdns-1.2.0.tar.gz","yanked":false,"yanked_reason":null}]},"urls":[{"comment_text":null,"core-metadata":{"sha256":"c23f97cff21ca3fb5aec101eea3d2b056d9cc7fa26d1c444eba19a406fe31caa"},"digests":{"blake2b_256":"c8a1236486ff5f1a11c124f120fb290dffb48dad65f548b290630d42070aa675","md5":"81f0ac36599766654cec76df3eaf45ac","sha256":"df32bed13c5a4dee8fd79b6d24484905bd8711cb1f8d2b37e3292bc61a2029c9"},"downloads":-1,"filename":"octodns_powerdns-1.2.0-py3-none-any.whl","has_sig":false,"md5_digest":"81f0ac36599766654cec76df3eaf45ac","packagetype":"bdist_wheel","python_version":"py3","requires_python":">=3.10","size":14692,"upload_time":"2026-07-10T20:54:28","upload_time_iso_8601":"2026-07-10T20:54:28.053342Z","url":"https://files.pythonhosted.org/packages/c8/a1/236486ff5f1a11c124f120fb290dffb48dad65f548b290630d42070aa675/octodns_powerdns-1.2.0-py3-none-any.whl","yanked":false,"yanked_reason":null},{"comment_text":null,"core-metadata":false,"digests":{"blake2b_256":"2fdefc49eb015d2032bb3dca95ee1690ee77322fd227ee6826dfe108dbe438b9","md5":"da9b24311b910b2619ca906f656375fa","sha256":"5722297e93e095b6d72e989f5a729d5f16fdec120ee17dc839d3f94c008fbb9b"},"downloads":-1,"filename":"octodns_powerdns-1.2.0.tar.gz","has_sig":false,"md5_digest":"da9b24311b910b2619ca906f656375fa","packagetype":"sdist","python_version":"source","requires_python":">=3.10","size":26549,"upload_time":"2026-07-10T20:54:29","upload_time_iso_8601":"2026-07-10T20:54:29.244733Z","url":"https://files.pythonhosted.org/packages/2f/de/fc49eb015d2032bb3dca95ee1690ee77322fd227ee6826dfe108dbe438b9/octodns_powerdns-1.2.0.tar.gz","yanked":false,"yanked_reason":null}],"vulnerabilities":[]}
