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.7.0.tar.gz (34.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.7.0-cp312-abi3-win_amd64.whl (221.1 kB view details)

Uploaded CPython 3.12+Windows x86-64

polyxml-0.7.0-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (326.7 kB view details)

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

polyxml-0.7.0-cp312-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (318.7 kB view details)

Uploaded CPython 3.12+manylinux: glibc 2.17+ ARM64

polyxml-0.7.0-cp312-abi3-macosx_11_0_arm64.whl (290.3 kB view details)

Uploaded CPython 3.12+macOS 11.0+ ARM64

polyxml-0.7.0-cp312-abi3-macosx_10_12_x86_64.whl (302.2 kB view details)

Uploaded CPython 3.12+macOS 10.12+ x86-64

File details

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

File metadata

  • Download URL: polyxml-0.7.0.tar.gz
  • Upload date:
  • Size: 34.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.7.0.tar.gz
Algorithm Hash digest
SHA256 15093e40d9bf67b2b23df02d16b0625a15c3f653701b8c4b4dec536af3dba04f
MD5 7c70ed138066a56180c3902bae23fe63
BLAKE2b-256 085e3c4b6fe990e9896bbc5a4c25e10d509f005d3ba215e68889c1b851c8f829

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: polyxml-0.7.0-cp312-abi3-win_amd64.whl
  • Upload date:
  • Size: 221.1 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.7.0-cp312-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 1e14088b8ab483006b84b95f8cee91a1d927e7e689aece8fe6241469a5e1413c
MD5 ef6d544dc138442718b2f98a0a654070
BLAKE2b-256 eafd13f10aa73ea7efbb91d4ac301a894479098faaafb758e6ee9d5874d69c3f

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for polyxml-0.7.0-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fa7f307450c8b3e8605a2e06e2972dba3ea2c30c3d2e79b3c30b625912aebe63
MD5 47149c683e84e1499167633bcbb83d42
BLAKE2b-256 6d416b0cc2c143c0282016738dc8db3093c4054db36bbd3547885fda981745cb

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for polyxml-0.7.0-cp312-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 011d83d6bdf7c8e52b28b2f05672009fa0b14e0fe92390025ec545766e0b6b28
MD5 2ca7442f0906b0404678f10ed3a18b78
BLAKE2b-256 27e2b84ce4d7a63e03c19317ad203416e8972a06407b45ed94367ca830219c06

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for polyxml-0.7.0-cp312-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1ff773fdc12a114159a214f513c71a7877485537d66d1ccf96438821870d3aba
MD5 19efc2a5a453de78192f562e52f0f109
BLAKE2b-256 d41c644d081258a15b72095b8b1bf42a49e1c7f2454a1a17444f50bde6086d43

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for polyxml-0.7.0-cp312-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 b16d922ba4eae7f28936fac992493d903a176d3db3977b5e12b2c685746ba0ef
MD5 df10b084b0c58e610bd48cddd7cd07b6
BLAKE2b-256 7043495550356d994607de51e63ba2e99d403ff82c640a3db934e9512fbdd958

See more details on using hashes here.

Provenance

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

This release

0.7.0 This release

6 files

0.6.0

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