Skip to main content

A Pronouns over DNS specification compliant Python API.

Project description

podns_py

A Pronouns over DNS specification compliant Python API.

Documentation

Fetching from domain record.

If you want to fetch someones pronouns from their domain, see the below:

Note that we support both synchronous and asynchronous lookups.

import asyncio

import podns.dns


async def main() -> None:
    domain = "abigail.sh"
    podns.dns.fetch_pronouns_from_domain_sync(domain)
    await podns.dns.fetch_pronouns_from_domain_async(domain)


if __name__ == "__main__":
    asyncio.run(main())

Parsing a raw list

If you already have fetched the users pronouns, or are just parsing a raw literal:

import podns.parser

podns.parser.parse_pronoun_records([
    "she/her",
    "they/them/theirs;preferred"
])

Optional pedantic kwarg on user APIs

For all user-level APIs (that is, podns.dns.fetch_pronouns_from_domain_* and podns.parser.parse_pronoun_records), there is an optional kwarg, pedantic, that defaults to False.

  • Setting this to True will raise errors on all specification-violating parse errors from the provided records.
  • Setting this to False will only raise errors on egregious specification violations that make parsing impossible. When set to False, podns will do its' best to infer intent when met with trivial violations, it will however never return a podns.pronouns.PronounsResponse that violates the specification.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

podns-0.2.0.tar.gz (5.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

podns-0.2.0-py3-none-any.whl (10.5 kB view details)

Uploaded Python 3

File details

Details for the file podns-0.2.0.tar.gz.

File metadata

  • Download URL: podns-0.2.0.tar.gz
  • Upload date:
  • Size: 5.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for podns-0.2.0.tar.gz
Algorithm Hash digest
SHA256 f9b22ad08f2bacbb28a226b637808aa78f91d54d65b54db04073187c228fb359
MD5 957f4b680016c19ce95d378c64859d03
BLAKE2b-256 dcddd853cdfe68894158902d1e68e550dcbe1363fa0dcae63e9944b6411a0d0c

See more details on using hashes here.

File details

Details for the file podns-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: podns-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 10.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for podns-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ca78df7bc71563b3f43955edd99cd763d869039e6db70d2110fe58f19b008b3f
MD5 42618035256aa8edfb601c442dd7cba0
BLAKE2b-256 c1e80fbb8e56bc49f976f0620e99d027c1610694d7828c0950ae14a51d445241

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page