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

Uploaded CPython 3.12+Windows x86-64

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

Uploaded CPython 3.12+macOS 11.0+ ARM64

polyxml-0.8.1-cp312-abi3-macosx_10_12_x86_64.whl (302.3 kB view details)

Uploaded CPython 3.12+macOS 10.12+ x86-64

File details

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

File metadata

  • Download URL: polyxml-0.8.1.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.8.1.tar.gz
Algorithm Hash digest
SHA256 ead1b69bfce74c65cc27929b3248a4b90c8d5009f31b7579057bb97ceeac3adb
MD5 f86f22531a3efc69c613e596bd6c32f3
BLAKE2b-256 4666916e7b4481703e7b02b93e2cb4ed5b68278f399237e935be4c7f9d49d758

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: polyxml-0.8.1-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.8.1-cp312-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 ab51947a96ef5fcc2ac6f1977ae8360f83224d106fc46e4997bba761b29e1ebc
MD5 fccbe6a56188554a2d323982285e84dd
BLAKE2b-256 b2ffa55a0b56790b459ed4e77dff74c85c004c204277f6cf6d54bb5f6acb6a90

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for polyxml-0.8.1-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1bd057769bae42cd7a0975c08979a4f5cd6cc3e266d90c061c332ffc820f538f
MD5 9389e66b364d32808d1b4cd9b015b2e1
BLAKE2b-256 e4fcae913bebdbedb56b1a699d28d6cd8bfbe18c7c6d3be0a1a5bd6e94318adf

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for polyxml-0.8.1-cp312-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a862297238855b0496de7f6210d6a288e2faada423d554d2cff0bee72c76443e
MD5 09c3a0078a6b01f731587a1893708d5b
BLAKE2b-256 1057f4d7e7663ce4157d65a4e6aa34b37079022d649b03640d76ab228bb3f97b

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for polyxml-0.8.1-cp312-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5fa13551e0a5c654abdeaa93cdacb25afccebc23902880d114e6df4bbfcc9b79
MD5 1eb51f9c3f0fb873e3fd0effaa4838f3
BLAKE2b-256 fa1c50cb39cdb542d87769d4b7927c0835d74e5b5a98362d24caf5b6cd256526

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for polyxml-0.8.1-cp312-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 232df14bab9894442ba4dfaf0162d66b711bb02bd09e8312d2271015a4018346
MD5 8c5082ceda26627590a948125af29dfb
BLAKE2b-256 e63480414df1b331692471b85d067de0aece3d0283e48568f7134fcced2d7588

See more details on using hashes here.

Provenance

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

This release

0.8.1 This release

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