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.5.1.tar.gz (32.3 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.5.1-cp312-abi3-win_amd64.whl (219.8 kB view details)

Uploaded CPython 3.12+Windows x86-64

polyxml-0.5.1-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (325.4 kB view details)

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

polyxml-0.5.1-cp312-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (317.5 kB view details)

Uploaded CPython 3.12+manylinux: glibc 2.17+ ARM64

polyxml-0.5.1-cp312-abi3-macosx_11_0_arm64.whl (289.0 kB view details)

Uploaded CPython 3.12+macOS 11.0+ ARM64

polyxml-0.5.1-cp312-abi3-macosx_10_12_x86_64.whl (300.9 kB view details)

Uploaded CPython 3.12+macOS 10.12+ x86-64

File details

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

File metadata

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

File hashes

Hashes for polyxml-0.5.1.tar.gz
Algorithm Hash digest
SHA256 0c7ba79b0625fc38bf397f9b5b54f8a8b9a610faee67ea2e413bc8f963c12aa8
MD5 37a7e3f7f3f4e1215e7e4a9f8d071a46
BLAKE2b-256 f5002cab272a4831943dcddfdd95dfbde71f04100a21f1792f5c85b19d0ac560

See more details on using hashes here.

Provenance

The following attestation bundles were made for polyxml-0.5.1.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.5.1-cp312-abi3-win_amd64.whl.

File metadata

  • Download URL: polyxml-0.5.1-cp312-abi3-win_amd64.whl
  • Upload date:
  • Size: 219.8 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.5.1-cp312-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 05db6aca9dc92903bef66b957403ad44cf5cd91f96c8b63969743a17e855d956
MD5 a7c07d69f80c78f6646c50c7b3f39b83
BLAKE2b-256 8ab7bdbd99dbcb7fcd0a82825287f06ee795836c85a4815142e7388a6e85b993

See more details on using hashes here.

Provenance

The following attestation bundles were made for polyxml-0.5.1-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.5.1-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for polyxml-0.5.1-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 470808d9d715f977b126afea16f0a3bb5c886d15f39942e4fe0ef35b6117721e
MD5 5135e9f21359edbf9de560c38e7839bb
BLAKE2b-256 c63b668bc6d69f3d693fffd02ff334c17927934fc6924c140ed6337c0a017af1

See more details on using hashes here.

Provenance

The following attestation bundles were made for polyxml-0.5.1-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.5.1-cp312-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for polyxml-0.5.1-cp312-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 93e662538be82e5590e3eb95b0265d669546b02868e92f40380e7c09f403ac26
MD5 0ea657a0e9d6386b6d5d35dc8e8a6aa9
BLAKE2b-256 fa0240347f0fb952dd7646cff2fd3589f33139bbc866b6beda1181819ae29ae5

See more details on using hashes here.

Provenance

The following attestation bundles were made for polyxml-0.5.1-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.5.1-cp312-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for polyxml-0.5.1-cp312-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 062131e4151989b02ad23cb51aa6759b8c74342a3b2a85cd956aea50e638a21f
MD5 b84b8e55180b524da27729d6af043c43
BLAKE2b-256 6aa10602e692da9abf9cbe0003cef92a949f37832f7999e299cf3969431e6506

See more details on using hashes here.

Provenance

The following attestation bundles were made for polyxml-0.5.1-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.5.1-cp312-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for polyxml-0.5.1-cp312-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 d6c78e937435915cad635bf26d139b0f02274719185887c9e4e2204d9df3c645
MD5 a0d8de61c16bfaa7d4c7224dd1aa6233
BLAKE2b-256 0feab20f9f5cd345418c2ee529e29f4f044e2507eace89bb12b3edc28fe398da

See more details on using hashes here.

Provenance

The following attestation bundles were made for polyxml-0.5.1-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

0.6.0

6 files

This release

0.5.1 This release

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