Skip to main content

PolyXML Python Bindings

High-performance native XML data-binding engine for Python dataclasses and Pydantic models.

Powered by polyxml-core written in Rust and PyO3 (abi3-py312).

Features

  • ⚡ Blazing Fast: 16x faster deserialization and 38x faster serialization than standard Python tools.
  • 🌊 Streaming iterparse(): Parse multi-gigabyte XML files with O(1) constant memory (<5 MB RAM).
  • 📦 Zero-GIL Binary Serialization: Native dumps_binary() and loads_binary() using MessagePack (msgspec), up to 12.4x faster than pickle.
  • 🎯 Full Type Support: Dataclasses and Pydantic v2 models with zero boilerplate.

Quickstart

from dataclasses import dataclass, field
import polyxml

@dataclass
class Item:
    id: int = field(metadata={"type": "Attribute"})
    name: str = field(metadata={"type": "Element"})

# 1. XML Deserialization
item = polyxml.deserialize(b'<Item id="1"><name>Gadget</name></Item>', Item)

# 2. XML Serialization
xml = polyxml.serialize(item, indent=2)

# 3. High-Speed Binary Serialization (Key-Value databases / IPC)
blob = polyxml.dumps_binary(item)
restored = polyxml.loads_binary(blob, Item)

Download files

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

Source Distribution

polyxml-0.6.0.tar.gz (33.9 kB view details)

Uploaded Source

Built Distributions

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

polyxml-0.6.0-cp312-abi3-win_amd64.whl (220.6 kB view details)

Uploaded CPython 3.12+Windows x86-64

polyxml-0.6.0-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (326.2 kB view details)

Uploaded CPython 3.12+manylinux: glibc 2.17+ x86-64

polyxml-0.6.0-cp312-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (318.2 kB view details)

Uploaded CPython 3.12+manylinux: glibc 2.17+ ARM64

polyxml-0.6.0-cp312-abi3-macosx_11_0_arm64.whl (289.8 kB view details)

Uploaded CPython 3.12+macOS 11.0+ ARM64

polyxml-0.6.0-cp312-abi3-macosx_10_12_x86_64.whl (301.7 kB view details)

Uploaded CPython 3.12+macOS 10.12+ x86-64

File details

Details for the file polyxml-0.6.0.tar.gz.

File metadata

  • Download URL: polyxml-0.6.0.tar.gz
  • Upload date:
  • Size: 33.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for polyxml-0.6.0.tar.gz
Algorithm Hash digest
SHA256 461c79509d667621d7e1bdfc7735dd72116dd915221833d78dc5fb036839ba17
MD5 7ad87d79e24090bea4b9b4aa523d0134
BLAKE2b-256 97ab97b073ffecb9acae8a9c198a0beff8c2f9365efa841a2a8903805120d34b

See more details on using hashes here.

Provenance

The following attestation bundles were made for polyxml-0.6.0.tar.gz:

Publisher: release-pypi.yml on nth-bailey/PolyXML

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file polyxml-0.6.0-cp312-abi3-win_amd64.whl.

File metadata

  • Download URL: polyxml-0.6.0-cp312-abi3-win_amd64.whl
  • Upload date:
  • Size: 220.6 kB
  • Tags: CPython 3.12+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for polyxml-0.6.0-cp312-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 bcb97cf3e68ca9b4fa7a6f12cfbdd5c6cf4a8e8717e58808d23288f5268284e6
MD5 34c1afbb8bba505ed17c901383883367
BLAKE2b-256 e8c0b6ea23aece105a9e14fd41f57bc681070f3e2155def44c7a9cb0e55a5688

See more details on using hashes here.

Provenance

The following attestation bundles were made for polyxml-0.6.0-cp312-abi3-win_amd64.whl:

Publisher: release-pypi.yml on nth-bailey/PolyXML

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file polyxml-0.6.0-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for polyxml-0.6.0-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7f04d85f74c5e7cfd061cbd5e61eed311ef7d5fa1194c5b3fa4d10d3736e248e
MD5 90fda47dd50b12f4af18e8055b175760
BLAKE2b-256 a9bd4943273eb5fe3091572f632e6123366173240444179745c8b34587372cfd

See more details on using hashes here.

Provenance

The following attestation bundles were made for polyxml-0.6.0-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release-pypi.yml on nth-bailey/PolyXML

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file polyxml-0.6.0-cp312-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for polyxml-0.6.0-cp312-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0b94c16dca5cc0619032037022850c98cb7fa100b70fbb18314382413e530538
MD5 60e8565d9109b5f007045e83020231cb
BLAKE2b-256 22a32664c0a8bd47452bb2d1c5e5301fdcaa376bcd89028b8a1370b33f5f163d

See more details on using hashes here.

Provenance

The following attestation bundles were made for polyxml-0.6.0-cp312-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release-pypi.yml on nth-bailey/PolyXML

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file polyxml-0.6.0-cp312-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for polyxml-0.6.0-cp312-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b019c55ea8ebcae76bf0a4e0fc60b17ae47ad7ff30f85299bd350d76fb5536d1
MD5 8dd8aaef55f9ca7c3d9c884a971f9829
BLAKE2b-256 54d590c6cfaad22e5bdf7afee570d2901011b6b6e1f6dab37cbf5db2b4177be4

See more details on using hashes here.

Provenance

The following attestation bundles were made for polyxml-0.6.0-cp312-abi3-macosx_11_0_arm64.whl:

Publisher: release-pypi.yml on nth-bailey/PolyXML

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file polyxml-0.6.0-cp312-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for polyxml-0.6.0-cp312-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 169a1b183073b2ff51be167486b22c47e0a34780e89829f692a7b45b6afab6a5
MD5 4f729bdd5808a1a7d6131f5ea898203a
BLAKE2b-256 9503bf6eb4c3df8c119917a1024697764e039136328283136c632799d6ac0638

See more details on using hashes here.

Provenance

The following attestation bundles were made for polyxml-0.6.0-cp312-abi3-macosx_10_12_x86_64.whl:

Publisher: release-pypi.yml on nth-bailey/PolyXML

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.9.0

6 files

0.8.1

6 files

0.8.0

6 files

0.7.0

6 files

This release

0.6.0 This release

6 files

0.5.1

6 files

0.5.0

6 files

0.4.0

6 files

0.3.0

6 files

0.2.1

6 files

0.2.0

6 files

0.1.0

6 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page