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.9.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.9.0-cp312-abi3-win_amd64.whl (221.1 kB view details)

Uploaded CPython 3.12+Windows x86-64

polyxml-0.9.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.9.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.9.0-cp312-abi3-macosx_11_0_arm64.whl (290.3 kB view details)

Uploaded CPython 3.12+macOS 11.0+ ARM64

polyxml-0.9.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.9.0.tar.gz.

File metadata

  • Download URL: polyxml-0.9.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.9.0.tar.gz
Algorithm Hash digest
SHA256 e0b28bdc435a61730135f445e67dca0ebc84d91a2faef85bb25d25861d97a751
MD5 a917aa9e27bb428c0a90f8deeceb3aad
BLAKE2b-256 661c4c8cb19eeb07e1371a3b1a6488aa0fe24f678798c01cc4712abecfcd2f55

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: polyxml-0.9.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.9.0-cp312-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 8087fa0124e829165449c016a091936dc37c11644ab86c82a936b765fcec3327
MD5 c792e20ae5c1402c0161c72ac2baeefb
BLAKE2b-256 be1652b4358e7a8e96ed785451082321bcac38ecc84b3ac3ecef29757e1038fc

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for polyxml-0.9.0-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 152f4d5fe75ce844d0352d597549c5d3d9b62031e1ad4e12dd6613be441d141b
MD5 c338b56ef61cb4f8b38b84c8b8884d8e
BLAKE2b-256 1bb644ed89925d3b4d529eb8dddef300ea1bb73765e6b5c5c169625baecce601

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for polyxml-0.9.0-cp312-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f4f4de91f82bfd06525a731e551ff822448fddf0391c195b18a7f02471fcfbef
MD5 b632311d04b0a67794d0956bc7f29216
BLAKE2b-256 3618679265bb7ed98c7126ff16a412d12f8f023988eecb4d319900e1356dc30a

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for polyxml-0.9.0-cp312-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6855f716158b9a9b1041e6595b058a921dee8cc41b76c6feb957fb22933ef1b7
MD5 bd534475545e9c3d25ba79d7cd02ece6
BLAKE2b-256 06a0a18ff1043dbbc66fd82b39e8aff5271486a7441f2ef73408b079a8d55d11

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for polyxml-0.9.0-cp312-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 4e623509c7074616e4b5745347462d0c9665d4c3e8edef86108c295c141db54b
MD5 0a471af5c43aaed995a46a16672ab5c8
BLAKE2b-256 b8f465300eee5ddd9223a3616c34d976c496fd03ac22c6a258c3ec28d50dd4d2

See more details on using hashes here.

Provenance

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

This release

0.9.0 This release

6 files

0.8.1

6 files

0.8.0

6 files

0.7.0

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