Skip to main content

High-performance Cython XML parser for Python — pugixml with a Pythonic API

Project description

pygixml — Python Giant XML

Python Versions PyPI version License: MIT Build Status Documentation Status GitHub Stars

pygixmlPython Giant XML — is a Cython framework built on two specialized C++ engines: pugixml for its in-memory DOM parser (XPath, objectify, dictify), and an inlined yxml push parser for true constant-memory streaming. Between the two, pygixml covers everything lxml and xmltodict do — dotted objectify navigation, XPath 1.0, and an xmltodict-compatible dictify — plus a streaming layer neither of them has, which is what makes pygixml the package of choice for big XML and big-data pipelines.

📚 View Full Documentation


Why pygixml?

Speed, memory, and size. pygixml brings pugixml's battle-tested C++ parser directly to Python — with numbers that speak for themselves.

Parsing Performance (5 000 elements, 50 iterations)

Library Avg Time Speedup vs ElementTree
pygixml 0.0009 s 9.2× faster
lxml 0.0041 s 2.0× faster
ElementTree 0.0083 s 1.0× (baseline)

Memory Usage (5 000 elements, peak)

Library Peak Memory vs ElementTree
pygixml 0.67 MB 7.2× less
lxml 0.67 MB 7.2× less
ElementTree 4.84 MB 1.0×

Package Size

Library Installed Size vs lxml
pygixml 0.43 MB 12.7× smaller
lxml 5.48 MB 1.0×

All numbers from benchmarks/full_benchmark.py. See the Performance page for the full comparison across 6 XML sizes.

Built for big XML

Those benchmark numbers are for documents that fit comfortably in memory. For the documents that don't — multi-gigabyte exports, logs, data dumps — pygixml's streaming layer is the part lxml and xmltodict simply don't have:

  • pygixml.iterfind / dictify.iterdict / jsonify.iterjsonl — yxml-based incremental parsing in constant memory: one element (or one dict, or one JSON line) in flight at a time, regardless of whether the source document is 10 KB or 10 GB.
  • jsonify.stream_dump(xml_path, json_path) — the headline feature: converts a giant XML file into a single, valid, giant JSON file, entirely in C++, in constant memory, with an xmltodict-compatible output shape (same @attr / #text / repeated-siblings-as-array conventions as dictify.parse). No DOM tree is ever built, no intermediate Python dict/list/str is ever allocated, and the file never has to fit in RAM — only an in-place seek-and-patch trick on the output file is used to close JSON arrays correctly as repeated siblings are discovered. As far as we know, this is the only Python package that can do this without buffering the document, the output, or both, and without crashing the process once the file gets genuinely large.
  • jsonify.stream_to_jsonl(xml_path, jsonl_path, tag) — the per-record sibling: streams straight to a .jsonl file, one matched element per line, same constant-memory, all-C++ guarantee.
from pygixml import jsonify

# A multi-GB XML file in, a multi-GB JSON file out -- peak memory stays flat.
jsonify.stream_dump("huge_export.xml", "huge_export.json")

# Or, one record per line:
jsonify.stream_to_jsonl("huge_export.xml", "huge_export.jsonl", "record")

Features

  • Blazing-fast parsing — up to 14× faster than ElementTree
  • Low memory — 7× less than ElementTree, on par with lxml
  • Tiny footprint — 0.43 MB installed (12.7× smaller than lxml)
  • Full XPath 1.0 — complete query engine with all standard functions
  • Pythonic API — intuitive properties and methods, not a direct C++ mirror
  • objectify — lxml.objectify-style dotted navigation
  • dictify — xmltodict-compatible XML → dict conversion
  • jsonify — direct XML → JSON, in memory or streamed straight to disk in constant memory (stream_dump, stream_to_jsonl)
  • Streaming (iterfind, iterdict, iterjsonl) — constant-memory, yxml-based incremental parsing for documents too big to load whole
  • Cross-platform — Windows, Linux, macOS
  • Text extraction — recursive text gathering with configurable joins
  • XML serialization — output with custom indentation
  • Node iteration — depth-first traversal of the entire document

Installation

# From PyPI
pip install pygixml

# Or from GitHub
pip install git+https://github.com/MohammadRaziei/pygixml.git

Quick Start

import pygixml

# Parse XML from string
xml = """
<library>
    <book id="1" category="fiction">
        <title>The Great Gatsby</title>
        <author>F. Scott Fitzgerald</author>
        <year>1925</year>
    </book>
    <book id="2" category="fiction">
        <title>1984</title>
        <author>George Orwell</author>
        <year>1949</year>
    </book>
</library>
"""

doc = pygixml.parse_string(xml)
root = doc.root                           # <library>

# Access children and attributes
book = root.child("book")
print(book.name)                          # book
print(book.attribute("id").value)         # 1
print(book.child("title").text())         # The Great Gatsby

# XPath queries
fiction = root.select_nodes("book[@category='fiction']")
print(f"Found {len(fiction)} fiction books")

# Create & save
doc = pygixml.XMLDocument()
root = doc.append_child("catalog")
root.append_child("item").set_value("Hello")
doc.save_file("output.xml")

Properties vs Methods

A quick reference so you don't get tripped up:

Properties (no ()) Methods (need ())
node.name, node.value, node.type node.child(name)
node.parent, node.next_sibling node.first_child()
node.xml, node.xpath node.append_child(name)
attr.name, attr.value node.set_value(v)
doc.root node.select_nodes(query)
node.first_attribute()
node.text()

objectify — dotted navigation

pygixml.objectify provides an lxml.objectify-inspired interface for navigating XML with plain Python attribute access.

from pygixml import objectify

xml = """
<database name="users_db" version="1.2">
    <user-profile id="101" verified="true">
        <first_name>Mohammad</first_name>
        <balance>450.75</balance>
    </user-profile>
    <entry>Value A</entry>
    <entry>Value B</entry>
</database>
"""

root = objectify.from_string(xml)

# Dotted navigation — underscores map to hyphens automatically
print(root.user_profile.first_name)        # ObjectifiedElement(<first_name>)
print(str(root.user_profile.first_name))   # 'Mohammad'

# Automatic type inference for attributes
print(root.version)                        # 1.2   (float)
print(root.user_profile.id)               # 101   (int)
print(root.user_profile.verified)         # True  (bool)

# Text content
print(str(root.user_profile.first_name))  # 'Mohammad'   always str
print(root.user_profile.balance())        # 450.75        type-inferred

# Repeated siblings — indexing and iteration
print(root.entry[0])                      # ObjectifiedElement
print([str(e) for e in root.entry])       # ['Value A', 'Value B']

# Safe attribute access — never raises
print(root.get('version'))                # 1.2
print(root.get('missing', 'default'))     # 'default'

# Search descendants
print(root.find('balance'))               # ObjectifiedElement(<balance>)
print(root.find('balance', recursive=False))  # None  (not a direct child)
print(root.findall('entry'))              # [ObjectifiedElement, ...]

# Write support — modify in place
root.user_profile.first_name = "Ali"      # update child element text
root.version = 2.0                        # update attribute
root.timeout = 30                         # create new child element

# Delete
del root.timeout                          # remove child element
del root.version                          # remove attribute

objectify API

Feature Behaviour
root.child_tag First <child_tag> element; falls back to <child-tag>
root.attr_name Attribute value (type-inferred) when no child matches
root.tag[n] Index into repeated siblings
for e in root.tag Iterate repeated siblings
str(elem) Raw text content, always str
elem() Type-inferred text content
elem.get(name, default) Safe attribute read, never raises
elem.find(tag) First matching descendant, or None
elem.findall(tag) All matching descendants
elem.name = value Update child text or attribute; create child if absent
del elem.name Remove child element or attribute
elem.tag XML tag name string
elem.attrib {name: typed_value} dict of all attributes
elem.xml Serialised XML of the subtree
Child beats attribute When both share a name, child wins (read and write)

dictify — XML to dict

pygixml.dictify converts XML to a nested dict, compatible with the xmltodict library.

from pygixml import dictify

xml = """
<database name="users_db" version="1.2">
    <user-profile id="101" verified="true">
        <first_name>Mohammad</first_name>
        <balance>450.75</balance>
    </user-profile>
    <entry>Value A</entry>
    <entry>Value B</entry>
</database>
"""

# Parse XML → dict
d = dictify.parse(xml)
# {
#   'database': {
#     '@name': 'users_db',
#     '@version': '1.2',
#     'user-profile': {
#       '@id': '101', '@verified': 'true',
#       'first_name': 'Mohammad', 'balance': '450.75'
#     },
#     'entry': ['Value A', 'Value B']
#   }
# }

# Repeated siblings → list automatically
print(d['database']['entry'])             # ['Value A', 'Value B']

# Attributes prefixed with '@'
print(d['database']['@name'])             # 'users_db'

# Custom options
d = dictify.parse(xml,
    attr_prefix='',       # no prefix — attrs and children in same namespace
    cdata_key='text',     # key for text content (default '#text')
    force_list={'entry'}, # always a list, even with one element
)

# Parse from file
d = dictify.parse_file('data.xml')

# Convert back to XML
xml_out = dictify.unparse(d, pretty=True, indent='\t')
print(xml_out)

dictify API

Parameter Default Description
attr_prefix "@" Prefix added to attribute keys
cdata_key "#text" Key for text content in mixed nodes
force_list None Tag names always wrapped in a list; pass True for all
Function Description
dictify.parse(xml, **opts) Parse XML string → dict
dictify.parse_file(path, **opts) Parse XML file → dict
dictify.unparse(d, pretty, indent, ...) dict → XML string

Advanced Features

Text Content Extraction

import pygixml

xml = """
<root>
    <simple>Hello World</simple>
    <nested>
        <child>Child Text</child>
        More text
    </nested>
    <mixed>Text <b>with</b> mixed <i>content</i></mixed>
</root>
"""

doc = pygixml.parse_string(xml)
root = doc.root

print(root.child("simple").text())                # Hello World
print(root.child("nested").text(join=" | "))      # Child Text | More text
print(root.child("mixed").text(recursive=False))  # Text

XML Serialization

import pygixml

doc = pygixml.XMLDocument()
root = doc.append_child("root")
root.append_child("item").set_value("content")

print(root.xml)
# <root>
#   <item>content</item>
# </root>

print(root.to_string("    "))  # 4-space indent

Document Iteration

import pygixml

doc = pygixml.parse_string("<root><a/><b/></root>")

for node in doc:
    print(f"{node.type:12s} {node.name}")
# document
# element       root
# element       a
# element       b

Modifying XML

import pygixml

doc = pygixml.parse_string("<person><name>John</name></person>")
root = doc.root

root.child("name").set_value("Jane")
root.child("name").name = "full_name"
root.append_child("age").set_value("30")

print(root.xml)
# <person>
#   <full_name>Jane</full_name>
#   <age>30</age>
# </person>

XPath Support

Full XPath 1.0 via pugixml's engine:

import pygixml

xml = """
<library>
    <book id="1" category="fiction">
        <title>The Great Gatsby</title>
        <author>F. Scott Fitzgerald</author>
        <year>1925</year>
        <price>12.99</price>
    </book>
    <book id="2" category="fiction">
        <title>1984</title>
        <author>George Orwell</author>
        <year>1949</year>
        <price>10.99</price>
    </book>
</library>
"""

doc = pygixml.parse_string(xml)
root = doc.root

# Select nodes
books = root.select_nodes("book")
print(f"Found {len(books)} books")

# Predicates
fiction = root.select_nodes("book[@category='fiction']")
print(f"Found {len(fiction)} fiction books")

# Single node
book = root.select_node("book[@id='2']")
if book:
    print(book.node.child("title").text())    # 1984

# Pre-compiled query for repeated use
query = pygixml.XPathQuery("book[year > 1930]")
recent = query.evaluate_node_set(root)
print(f"Found {len(recent)} books published after 1930")

# Scalar evaluations
avg = pygixml.XPathQuery("sum(book/price) div count(book)").evaluate_number(root)
print(f"Average price: ${avg:.2f}")           # Average price: $11.99

has_orwell = pygixml.XPathQuery("book[author='George Orwell']").evaluate_boolean(root)
print(f"Has Orwell books: {has_orwell}")       # Has Orwell books: True

Supported XPath

Category Examples
Node selection //book, /library/book, book[1]
Attributes book[@id], book[@category='fiction']
Boolean ops and, or, not()
Comparisons =, !=, <, >, <=, >=
Math +, -, *, div, mod
Functions position(), last(), count(), sum(), string(), number()
Axes child::, attribute::, descendant::, ancestor::
Wildcards *, @*, node()

Core API

Class / Module Purpose
XMLDocument Document-level operations: load, save, append-child
XMLNode Navigate, read, and modify individual nodes
XMLAttribute Attribute name and value access
XPathQuery Pre-compiled XPath queries for repeated evaluation
XPathNode Single XPath result (wraps a node or attribute)
XPathNodeSet Collection of XPath results
objectify lxml.objectify-style dotted navigation
dictify xmltodict-compatible XML → dict conversion
jsonify Direct XML → JSON: in-memory dumps*, or constant-memory stream_dump/stream_to_jsonl
iterfind / iterparse yxml-based constant-memory streaming parser, ElementTree-style

Module-level functions: parse_string(xml), parse_file(path).


Benchmarks

python benchmarks/full_benchmark.py
python benchmarks/benchmark_parsing.py

Compares pygixml against lxml and xml.etree.ElementTree. Results are printed as tables and saved to benchmarks/results/benchmark_full.json.


Documentation

📖 Full docs: https://mohammadraziei.github.io/pygixml/


License

MIT License — see LICENSE.

Enjoy pygixml? Star the repository ⭐ 👉 Star pygixml on GitHub


Acknowledgments

  • pugixml — Fast and lightweight C++ XML library
  • yxml — Tiny, dependency-free streaming XML parser, powering pygixml's constant-memory streaming layer
  • Cython — C extensions for Python
  • scikit-build — Modern Python build system

Project details


Download files

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

Source Distribution

pygixml-0.12.0.tar.gz (760.3 kB view details)

Uploaded Source

Built Distributions

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

pygixml-0.12.0-cp314-cp314t-win_amd64.whl (343.4 kB view details)

Uploaded CPython 3.14tWindows x86-64

pygixml-0.12.0-cp314-cp314t-win32.whl (297.0 kB view details)

Uploaded CPython 3.14tWindows x86

pygixml-0.12.0-cp314-cp314t-musllinux_1_2_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ x86-64

pygixml-0.12.0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (397.2 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

pygixml-0.12.0-cp314-cp314t-macosx_10_15_universal2.whl (662.1 kB view details)

Uploaded CPython 3.14tmacOS 10.15+ universal2 (ARM64, x86-64)

pygixml-0.12.0-cp314-cp314-win_amd64.whl (327.2 kB view details)

Uploaded CPython 3.14Windows x86-64

pygixml-0.12.0-cp314-cp314-win32.whl (283.7 kB view details)

Uploaded CPython 3.14Windows x86

pygixml-0.12.0-cp314-cp314-musllinux_1_2_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

pygixml-0.12.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (406.1 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

pygixml-0.12.0-cp314-cp314-macosx_10_15_universal2.whl (633.8 kB view details)

Uploaded CPython 3.14macOS 10.15+ universal2 (ARM64, x86-64)

pygixml-0.12.0-cp313-cp313-win_amd64.whl (318.9 kB view details)

Uploaded CPython 3.13Windows x86-64

pygixml-0.12.0-cp313-cp313-win32.whl (277.7 kB view details)

Uploaded CPython 3.13Windows x86

pygixml-0.12.0-cp313-cp313-musllinux_1_2_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

pygixml-0.12.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (402.4 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

pygixml-0.12.0-cp313-cp313-macosx_10_13_universal2.whl (629.7 kB view details)

Uploaded CPython 3.13macOS 10.13+ universal2 (ARM64, x86-64)

pygixml-0.12.0-cp312-cp312-win_amd64.whl (318.5 kB view details)

Uploaded CPython 3.12Windows x86-64

pygixml-0.12.0-cp312-cp312-win32.whl (278.0 kB view details)

Uploaded CPython 3.12Windows x86

pygixml-0.12.0-cp312-cp312-musllinux_1_2_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

pygixml-0.12.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (402.3 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

pygixml-0.12.0-cp312-cp312-macosx_10_13_universal2.whl (630.8 kB view details)

Uploaded CPython 3.12macOS 10.13+ universal2 (ARM64, x86-64)

pygixml-0.12.0-cp311-cp311-win_amd64.whl (320.3 kB view details)

Uploaded CPython 3.11Windows x86-64

pygixml-0.12.0-cp311-cp311-win32.whl (277.8 kB view details)

Uploaded CPython 3.11Windows x86

pygixml-0.12.0-cp311-cp311-musllinux_1_2_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

pygixml-0.12.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (413.6 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

pygixml-0.12.0-cp311-cp311-macosx_10_9_universal2.whl (625.7 kB view details)

Uploaded CPython 3.11macOS 10.9+ universal2 (ARM64, x86-64)

pygixml-0.12.0-cp310-cp310-win_amd64.whl (320.4 kB view details)

Uploaded CPython 3.10Windows x86-64

pygixml-0.12.0-cp310-cp310-win32.whl (278.9 kB view details)

Uploaded CPython 3.10Windows x86

pygixml-0.12.0-cp310-cp310-musllinux_1_2_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

pygixml-0.12.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (413.9 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

pygixml-0.12.0-cp310-cp310-macosx_10_9_universal2.whl (627.6 kB view details)

Uploaded CPython 3.10macOS 10.9+ universal2 (ARM64, x86-64)

pygixml-0.12.0-cp39-cp39-win_amd64.whl (321.1 kB view details)

Uploaded CPython 3.9Windows x86-64

pygixml-0.12.0-cp39-cp39-win32.whl (279.3 kB view details)

Uploaded CPython 3.9Windows x86

pygixml-0.12.0-cp39-cp39-musllinux_1_2_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ x86-64

pygixml-0.12.0-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (414.4 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

pygixml-0.12.0-cp39-cp39-macosx_10_9_universal2.whl (629.4 kB view details)

Uploaded CPython 3.9macOS 10.9+ universal2 (ARM64, x86-64)

pygixml-0.12.0-cp38-cp38-win_amd64.whl (305.7 kB view details)

Uploaded CPython 3.8Windows x86-64

pygixml-0.12.0-cp38-cp38-win32.whl (263.5 kB view details)

Uploaded CPython 3.8Windows x86

pygixml-0.12.0-cp38-cp38-musllinux_1_2_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.8musllinux: musl 1.2+ x86-64

pygixml-0.12.0-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (395.0 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

pygixml-0.12.0-cp38-cp38-macosx_10_9_universal2.whl (621.9 kB view details)

Uploaded CPython 3.8macOS 10.9+ universal2 (ARM64, x86-64)

File details

Details for the file pygixml-0.12.0.tar.gz.

File metadata

  • Download URL: pygixml-0.12.0.tar.gz
  • Upload date:
  • Size: 760.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.12.0.tar.gz
Algorithm Hash digest
SHA256 f6eb0c3034784514cc954442012c24cb773329e05c55553999cd15998e7d3658
MD5 198a46026ea44fdcd3c2ed1ecda0763b
BLAKE2b-256 af5804c8d83fb0d618fa4d96da629fd9b2e84395c97528f368a421cc7387f7b9

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp314-cp314t-win_amd64.whl.

File metadata

  • Download URL: pygixml-0.12.0-cp314-cp314t-win_amd64.whl
  • Upload date:
  • Size: 343.4 kB
  • Tags: CPython 3.14t, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.12.0-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 faaad67882a3333a4bef7e85cf44c3733d5eb4d830ab3de86440f58d5b07cbb9
MD5 c6a05a68acf9567be724623d8f3c9266
BLAKE2b-256 5ebba21f32f6b9de9726e17ab6cbb488ca6d1ca656d86884dc407878769ace1f

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp314-cp314t-win32.whl.

File metadata

  • Download URL: pygixml-0.12.0-cp314-cp314t-win32.whl
  • Upload date:
  • Size: 297.0 kB
  • Tags: CPython 3.14t, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.12.0-cp314-cp314t-win32.whl
Algorithm Hash digest
SHA256 2e184c4ef2331ee7d25e9cd37af81f35557b203feb71348a30a259101554cdc4
MD5 d8207806d036efef6253e3b2aa23cac3
BLAKE2b-256 dbd2234258800c7a6b87370490b81014fa6c043ccff8e04b4be72e0e8a37323f

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp314-cp314t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.12.0-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 46616b63de8fd4c72f021ee14adaf2157cef657d89a6ad3037cd880aec294213
MD5 6990ab86df43943bb9993f1b84b377ca
BLAKE2b-256 8b3609e6db0261caf71073a70fc074fd2045767c1f20055c62010fe9f1c109c8

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.12.0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 65682c2488800274c95cd6422432ebc7ef94e732962002a659b0d8e89c26adda
MD5 8f129d14537f43572227f383d7787581
BLAKE2b-256 78519e3ae1b67fbb3894250f52fd03b98aed47ec93b9a99f16ea68c80ec8c694

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp314-cp314t-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for pygixml-0.12.0-cp314-cp314t-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 44eda46e8f51ba71b8668dd0bc274966556ec6e867b9b5415e28f7f44c75ffba
MD5 6bf9c4251e686ba01fcbfc04f670d420
BLAKE2b-256 396287249a3073496a7ab37e63d122d7491300d11126769a85bed7139b262e11

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: pygixml-0.12.0-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 327.2 kB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.12.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 3ddde11880cd225f40a5c6296fb88639d9092560e782378da78a1dd2e5c736f7
MD5 35df736395cebf69b9c14eeed30e078d
BLAKE2b-256 25c5edd2b1d19d368e509d9398ed1f5c4a733780a15dd13d1e3fab873808f064

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp314-cp314-win32.whl.

File metadata

  • Download URL: pygixml-0.12.0-cp314-cp314-win32.whl
  • Upload date:
  • Size: 283.7 kB
  • Tags: CPython 3.14, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.12.0-cp314-cp314-win32.whl
Algorithm Hash digest
SHA256 cc3f0e4d2d4190f6e21c1d4acd435168e363644b210e86916edf2d01247b3faf
MD5 108f59fed13b4a5d1409c7bd81edec80
BLAKE2b-256 2247ec821ad6786cc76bc455b2d645575d0864992cce24e2d6d125623a0cb76d

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.12.0-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 58227a8f3ac264e6fc2e10d759159131ef62aead776e197bf8430628349d2ea6
MD5 cd5a1a11dc5bfa92858dcc4ea95aa7d0
BLAKE2b-256 b41a478462f4c2d3aa9d4f328b6a7777df09418100756bc4b8a3ecbf46201c1a

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.12.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f2431ca99b37eb769a7441c90fb69ddbbd8ca814127e0d2b733183e636ac55fa
MD5 54a5e99f2625def41a4b9c4d4fc1f345
BLAKE2b-256 b01e9e73a21c53e01243c6ea97d2d65ae33ddb03a67a0c00bde09f7d1c7d405c

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp314-cp314-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for pygixml-0.12.0-cp314-cp314-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 31024316e515f86ad20757f92e76c2c9403a47cc6e932ca4f2df0d2f9647827b
MD5 cfefe31211db75dfd1c43b1cd14b7fad
BLAKE2b-256 2ca945816654a7316e51978fb272700650d53fdfd3bace238c57d930319f0803

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: pygixml-0.12.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 318.9 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.12.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 2095887ba290adfa98fcbc511a54d583745efb5ffafd00395357d416b7984016
MD5 54754b4f8b12fa66b685006b3b4bb4ac
BLAKE2b-256 67cc3220233c6f10becbeaa19ebfe4bebe9031aa40d1784cf26efeb47317b77a

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp313-cp313-win32.whl.

File metadata

  • Download URL: pygixml-0.12.0-cp313-cp313-win32.whl
  • Upload date:
  • Size: 277.7 kB
  • Tags: CPython 3.13, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.12.0-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 8c81d7172afc94a6d43b9f72175a9da46dc13363352ff0a12cc71620259d4a75
MD5 9087ae58fbc0d4fe102e73a002c95406
BLAKE2b-256 c2c99b49cea0027a605acea7b2563103e4ffc9c21d90d02b20c5b34101e0cdd9

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.12.0-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 62aa9b7e6666f3f20a3873d7baa8f7a907c65ee64a001265ce271f9ea1caada2
MD5 b3bab66c5cb5d0219607c58211d366fd
BLAKE2b-256 fa9ca830c5fb2863b0e426b5e0d835f6cf2979990648a6d756a98d913722fd3c

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.12.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 844ba2eb7f0d17a983b348da15a3fa70d9e645ca6209c50a16da5b522a192b4e
MD5 c79aaf7a652a7ab3706b19a5c9535296
BLAKE2b-256 1f949c1c9c832b44bf7eb5057232d1589ae33c5ead13ed048fb68768b81c4b39

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp313-cp313-macosx_10_13_universal2.whl.

File metadata

File hashes

Hashes for pygixml-0.12.0-cp313-cp313-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 929f0d29f89ce24ae29406ae5a82bcee65bc849a8337dd023578aa09371a5324
MD5 cb2e5737209685ffab1f68c0c69bc640
BLAKE2b-256 383cf08c2d8a507cf539e7fc986cbf63649c8e6ba9f702b762f13a35da97364e

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: pygixml-0.12.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 318.5 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.12.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 9af03de235b6cfe9774f056833815b52e349c9a0cd44f822eeb22512afde5bc7
MD5 15ecf2703d897f26b10252db3ec5af6b
BLAKE2b-256 ee7e2821d40e4ae5bea6cfec94dd6119ee006e52db59a1a65c2a044f124456a1

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp312-cp312-win32.whl.

File metadata

  • Download URL: pygixml-0.12.0-cp312-cp312-win32.whl
  • Upload date:
  • Size: 278.0 kB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.12.0-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 d50061931c2e29d1ee96710d9fe02f86019f605ca8daed259489c0faec9389cf
MD5 18afffd0577ad98ea0abd46ba0430d4c
BLAKE2b-256 80239f07191597dc251dd44f21cfac2e744275b3d0a137e286213c72efa70dd7

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.12.0-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 c5da3876d896599ccc6f446ce91a7fc063c15bac803b21d11567922db5638b27
MD5 b666c1b9ff639f40646020c353024728
BLAKE2b-256 6c4490b6578642034fd2c29ddff0b4fac0948250cddd30383bdb4a441204a188

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.12.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ad899256afc7582358ed8b8a982dc56813ed9c6b54ba1e5dae38eb0e109879d0
MD5 84187c13a737e3fdc845cb62ea4ef6fd
BLAKE2b-256 2af245d1a7a40dae42228806e60558bb8aca7d01e49a45d3525b4fb9c5fee6ab

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp312-cp312-macosx_10_13_universal2.whl.

File metadata

File hashes

Hashes for pygixml-0.12.0-cp312-cp312-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 ac5ca1b08c9f54260a84d894044ef8ab9aecdd643d0470c0a9d2d4add16c89e1
MD5 0b08d44617c028e779319663e0f03c7a
BLAKE2b-256 a63f1a4dd1a177330cce6b63e397bf22f4474962c15d03f1178a656d7343854c

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: pygixml-0.12.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 320.3 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.12.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 bc2f6e922a997f0ae406b7731c91d6fd352074c9ba04dfa5d92a07dfa10df268
MD5 3a092caa6c51c37923ba6bb41cdb741d
BLAKE2b-256 ae0a12a163336856ffd2a575d5d6faf9afebca1a734bc6a4111d02ba9e9742d3

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp311-cp311-win32.whl.

File metadata

  • Download URL: pygixml-0.12.0-cp311-cp311-win32.whl
  • Upload date:
  • Size: 277.8 kB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.12.0-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 8641c3fa26b1f3c8e3ec79227414d6bc1fa48e1b4d3fda3724ef58e38af3ede1
MD5 28c6462d442f0b535036cd77462b2145
BLAKE2b-256 e117acf7cd9179f834ec857838b40476301ace61d7f903ab92798d6f2bba147a

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.12.0-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a08f2b2a81c41a13b96cb8e8dd2d43f3a630bd569307a4caab677323776a7b50
MD5 f2baffc078d8a542d627f887a7d1bf4a
BLAKE2b-256 597b9fb83cb6695c9932686d95848fd4ac9ab40d665a477947f6871c950da4af

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.12.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 13df4c4358fc855de45dfd17a5f0b61ec5aa6acfc65fbdd58992279017c22107
MD5 5f052b40c37cb3adcf05b37c4ffc8b8d
BLAKE2b-256 6dc42aaef1df616dcf4b1611e564d6762c26f8bba86ef11b257642dcd5a24555

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp311-cp311-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for pygixml-0.12.0-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 ff3198b696fd9e17db9296dc8128bbde6f2eccde2cf9adb1c96168619442fa6e
MD5 df20ba3536e12ee0fa246f614a4ee635
BLAKE2b-256 6763e4a411089e0f6e7deab3b774a62bff031e9e86fb684a8cc245c186fb6f7c

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: pygixml-0.12.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 320.4 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.12.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 24c823857aa3cf4ddf3fb78835eff84caa3fa34951020b8cd74de4b408f53fee
MD5 ca91894281d8114f15039bb6825ed477
BLAKE2b-256 90105b523537153ab7b2674514d5c68a6f3c5a146e4be49740926fd7cb1b1a25

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp310-cp310-win32.whl.

File metadata

  • Download URL: pygixml-0.12.0-cp310-cp310-win32.whl
  • Upload date:
  • Size: 278.9 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.12.0-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 7ff514a70e36584bdc8b59ae2de503d2c361e838bb2ede86465fa8413780e541
MD5 04127a09f0c5cfe7c3af20a865e86bad
BLAKE2b-256 2f8acb13ca275a705aab93bcfeb298c2cf699dc5bb6387c9444d980ee89e9001

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.12.0-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 16b19f131cb4be2a0ff70fd5651ded39f9950be7fbe5648e59a630eb44b99d61
MD5 3415116a8ff55cbfeb3f05048c2890e8
BLAKE2b-256 7c8c127047c9747260c69b62212afbc1128d6389aeb4b8d596506472dbb5e89b

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.12.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 aecbe77724d0bc5db411253c728fe962fd2627cdc2d330b57837e556124d754b
MD5 d3c26ab62655533084d7b25bf9134a88
BLAKE2b-256 b70461f86104c26d70a5776d390623edaa5af77407ccfe75d24740acff974f42

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp310-cp310-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for pygixml-0.12.0-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 0dbb10c54bcedbbec3fbf5f0a6f39897ccd65f929ba39906a51d944e63414fc3
MD5 08f7f6c33a82710aae6ad9aa28c5e810
BLAKE2b-256 c8574499a598e35b17865e4f32265e36de328c42cb2c29ca16b5d2d13b6cae9c

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: pygixml-0.12.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 321.1 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.12.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 3a53d2f0ccad63b1cc8019375c9e3642ade58363af4905a95a861da135c2a9c6
MD5 2ecd8ec72eba6d90741b85447f5f5e4e
BLAKE2b-256 8a5fcd010bf5d61fbe029a6b0baf36e20491ae865913c1c1a0576cf832c89d96

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp39-cp39-win32.whl.

File metadata

  • Download URL: pygixml-0.12.0-cp39-cp39-win32.whl
  • Upload date:
  • Size: 279.3 kB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.12.0-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 01c046ebf23ee60bfc6fd702619acfbd475e7d0d3bf60c37dc93896fc16c69df
MD5 71e412f581b601af53838c84ce0941f0
BLAKE2b-256 78da0a0a24044009e498a8c859cc279c81fba425e25e137e7ed80aca35fe7772

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp39-cp39-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.12.0-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 7e1371333f2038a7c2c9f3a5e99893de52b91995396a62306a335b894f6d462f
MD5 f94b1e4280ba2375ab12966660ffc995
BLAKE2b-256 59ead86067f24cea2da87361b7a59cb0b38841a984dbf8b46f46a84ab4c1907b

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.12.0-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 142caf2b8070e3ef19fcb330748e7bc27e7664cb4261c2870b1f411adcefe639
MD5 55eb98a51c41c7fa61c8d527de6f1d3c
BLAKE2b-256 4dad01147a7daf1bf05f5702f3cd37b34d96dd28cd0f26ca5092d201aa3d968b

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp39-cp39-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for pygixml-0.12.0-cp39-cp39-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 8b9d4ada7b87ba5d1de416de3cc12adad15968fc5ed1d44a5512dab88b5c1469
MD5 fd72e360415068f1976db8c3f33f8b88
BLAKE2b-256 72a45aa3d5dda801e43c696d5387140650c00ab506679362ec7389afb79a5bfb

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: pygixml-0.12.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 305.7 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.12.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 c6ca6dbe214a109ef5f1614f3315879881c59c845e916a2f22db961555c848ed
MD5 56eab704da13c73e7fb5f6b62030e3fd
BLAKE2b-256 59a4ed355069c380a264a31d203c317a2871df0e10ec09977989087b05863ee9

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp38-cp38-win32.whl.

File metadata

  • Download URL: pygixml-0.12.0-cp38-cp38-win32.whl
  • Upload date:
  • Size: 263.5 kB
  • Tags: CPython 3.8, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pygixml-0.12.0-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 c3bcc2f7b5c67e6b78c9943eade418f81f62bf8b8201c06e3f8f47990ed0be40
MD5 32f599e1da8e541ef1786d7ee573196c
BLAKE2b-256 d17e8fbb7b9f2aa6993938a1134a948db8384f6402b366363960739e2f168480

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp38-cp38-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.12.0-cp38-cp38-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 3469b22ff91dd24c13e362b354234b02139f989cebabd0bca79313b1d350b55c
MD5 8579b0b70018d23aab99604dfb42d451
BLAKE2b-256 80bb017e3a303aacfefbb58aea0d35b648a7dcfa98df580d39b8953ee1048357

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pygixml-0.12.0-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5f1edc4eb9be51752e3a8243b88d0073453eaad56b6882d6a3320f57439f95d9
MD5 93b038905aae5b9579e4b42f80df6b69
BLAKE2b-256 9755bdf67049aa15efc1df75395825eb9ac59734636c7f347af3c76dad01565c

See more details on using hashes here.

File details

Details for the file pygixml-0.12.0-cp38-cp38-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for pygixml-0.12.0-cp38-cp38-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 837e4a2f0199a8f4eb154ac0e25a215845cfd2fa96b5c3098b827b653f86da79
MD5 5d01ae79e639df79e432355e4efebfaf
BLAKE2b-256 b6dac42fd3ae1b5a9c0fda948517409e5d717db9ffb140ef84e6ed7b9bc6289a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page