Skip to main content

<yaxp-cli ⚡> Yet Another XSD Parser

Project description

version downloads pipelines

<yaxp ⚡> Yet Another XSD Parser

📌 Note: This project is still under heavy development, and its APIs are subject to change.

Introduction

Using roxmltree to parse XML files.

Converts xsd schema to:

  • arrow
  • avro
  • duckdb (read_csv columns/types)
  • json
  • json representation of spark schema
  • jsonschema
  • polars
  • protobuf

User Guide

Python

  • create and activate a Python virtual environment (or use poetry, uv, etc.)
  • install pyaxp
(venv) $ uv pip install pyaxp
Using Python 3.12.3 environment at venv
Resolved 1 package in 323ms
Prepared 1 package in 140ms
Installed 1 package in 2ms
 + pyaxp==0.1.6
(venv) $ 
Python 3.12.3 (main, Apr 15 2024, 17:43:11) [Clang 17.0.6 ] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from pyspark.sql import SparkSession
... from pyaxp import parse_xsd
...
... from datetime import datetime, date
... from decimal import Decimal
...
... data = [
    ...     ("A1", "B1", "C1", "D1", datetime(2024, 2, 1, 10, 30, 0), date(2024, 2, 1), date(2024, 1, 31),
             ...      "E1", "F1", "G1", "H1", Decimal("123456789012345678.1234567"), "I1", "J1", "K1", "L1",
    ...      date(2024, 2, 1), "M1", "N1", Decimal("100"), 10),
...
...     ("A2", "B2", "C2", None, datetime(2024, 2, 1, 11, 0, 0), None, date(2024, 1, 30),
         ...      "E2", None, "G2", "H2", None, "I2", "J2", "K2", "L2",
...      date(2024, 2, 2), "M2", "N2", Decimal("200"), 20),
...
...     ("A3", "B3", "C3", "D3", datetime(2024, 2, 1, 12, 15, 0), date(2024, 2, 3), None,
         ...      "E3", "F3", None, "H3", Decimal("98765432109876543.7654321"), "I3", None, "K3", "L3",
...      date(2024, 2, 3), "M3", "N3", None, None)
... ]
...
...
... spark = SparkSession.builder.master("local").appName("Test Data").getOrCreate()
... schema = parse_xsd("example.xsd", "spark")
... df = spark.createDataFrame(data, schema=schema)
...
25/02/08 13:22:01 WARN Utils: Your hostname, Jeroens-MacBook-Air.local resolves to a loopback address: 127.0.0.1; using 192.168.69.217 instead (on interface en0)
25/02/08 13:22:01 WARN Utils: Set SPARK_LOCAL_IP if you need to bind to another address
Setting default log level to "WARN".
To adjust logging level use sc.setLogLevel(newLevel). For SparkR, use setLogLevel(newLevel).
25/02/08 13:22:01 WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
>>> type(schema)
<class 'pyspark.sql.types.StructType'>
>>> sch25/02/08 13:22:15 WARN GarbageCollectionMetrics: To enable non-built-in garbage collector(s) List(G1 Concurrent GC), users should configure it(them) to spark.eventLog.gcMetrics.youngGenerationGarbageCollectors or spark.eventLog.gcMetrics.oldGenerationGarbageCollectors
>>> schema
StructType([StructField('Field1', StringType(), False), StructField('Field2', StringType(), False), StructField('Field3', StringType(), False), StructField('Field4', StringType(), True), StructField('Field5', TimestampType(), False), StructField('Field6', DateType(), True), StructField('Field7', DateType(), True), StructField('Field8', StringType(), False), StructField('Field9', StringType(), True), StructField('Field10', StringType(), True), StructField('Field11', StringType(), True), StructField('Field12', DecimalType(25,7), True), StructField('Field13', StringType(), True), StructField('Field14', StringType(), True), StructField('Field15', StringType(), False), StructField('Field16', StringType(), True), StructField('Field17', DateType(), False), StructField('Field18', StringType(), True), StructField('Field19', StringType(), True), StructField('Field20', DecimalType(10,0), True), StructField('Field21', IntegerType(), True)])
>>> df
DataFrame[Field1: string, Field2: string, Field3: string, Field4: string, Field5: timestamp, Field6: date, Field7: date, Field8: string, Field9: string, Field10: string, Field11: string, Field12: decimal(25,7), Field13: string, Field14: string, Field15: string, Field16: string, Field17: date, Field18: string, Field19: string, Field20: decimal(10,0), Field21: int]
>>> df.show()
+------+------+------+------+-------------------+----------+----------+------+------+-------+-------+--------------------+-------+-------+-------+-------+----------+-------+-------+-------+-------+
|Field1|Field2|Field3|Field4|             Field5|    Field6|    Field7|Field8|Field9|Field10|Field11|             Field12|Field13|Field14|Field15|Field16|   Field17|Field18|Field19|Field20|Field21|
+------+------+------+------+-------------------+----------+----------+------+------+-------+-------+--------------------+-------+-------+-------+-------+----------+-------+-------+-------+-------+
|    A1|    B1|    C1|    D1|2024-02-01 10:30:00|2024-02-01|2024-01-31|    E1|    F1|     G1|     H1|12345678901234567...|     I1|     J1|     K1|     L1|2024-02-01|     M1|     N1|    100|     10|
|    A2|    B2|    C2|  NULL|2024-02-01 11:00:00|      NULL|2024-01-30|    E2|  NULL|     G2|     H2|                NULL|     I2|     J2|     K2|     L2|2024-02-02|     M2|     N2|    200|     20|
|    A3|    B3|    C3|    D3|2024-02-01 12:15:00|2024-02-03|      NULL|    E3|    F3|   NULL|     H3|98765432109876543...|     I3|   NULL|     K3|     L3|2024-02-03|     M3|     N3|   NULL|   NULL|
+------+------+------+------+-------------------+----------+----------+------+------+-------+-------+--------------------+-------+-------+-------+-------+----------+-------+-------+-------+-------+


>>> df.printSchema()
root
 |-- Field1: string (nullable = false)
 |-- Field2: string (nullable = false)
 |-- Field3: string (nullable = false)
 |-- Field4: string (nullable = true)
 |-- Field5: timestamp (nullable = false)
 |-- Field6: date (nullable = true)
 |-- Field7: date (nullable = true)
 |-- Field8: string (nullable = false)
 |-- Field9: string (nullable = true)
 |-- Field10: string (nullable = true)
 |-- Field11: string (nullable = true)
 |-- Field12: decimal(25,7) (nullable = true)
 |-- Field13: string (nullable = true)
 |-- Field14: string (nullable = true)
 |-- Field15: string (nullable = false)
 |-- Field16: string (nullable = true)
 |-- Field17: date (nullable = false)
 |-- Field18: string (nullable = true)
 |-- Field19: string (nullable = true)
 |-- Field20: decimal(10,0) (nullable = true)
 |-- Field21: integer (nullable = true)

>>> df.schema
StructType([StructField('Field1', StringType(), False), StructField('Field2', StringType(), False), StructField('Field3', StringType(), False), StructField('Field4', StringType(), True), StructField('Field5', TimestampType(), False), StructField('Field6', DateType(), True), StructField('Field7', DateType(), True), StructField('Field8', StringType(), False), StructField('Field9', StringType(), True), StructField('Field10', StringType(), True), StructField('Field11', StringType(), True), StructField('Field12', DecimalType(25,7), True), StructField('Field13', StringType(), True), StructField('Field14', StringType(), True), StructField('Field15', StringType(), False), StructField('Field16', StringType(), True), StructField('Field17', DateType(), False), StructField('Field18', StringType(), True), StructField('Field19', StringType(), True), StructField('Field20', DecimalType(10,0), True), StructField('Field21', IntegerType(), True)])
>>> df.dtypes
[('Field1', 'string'), ('Field2', 'string'), ('Field3', 'string'), ('Field4', 'string'), ('Field5', 'timestamp'), ('Field6', 'date'), ('Field7', 'date'), ('Field8', 'string'), ('Field9', 'string'), ('Field10', 'string'), ('Field11', 'string'), ('Field12', 'decimal(25,7)'), ('Field13', 'string'), ('Field14', 'string'), ('Field15', 'string'), ('Field16', 'string'), ('Field17', 'date'), ('Field18', 'string'), ('Field19', 'string'), ('Field20', 'decimal(10,0)'), ('Field21', 'int')]
>>>
>>> df.show()
+------+------+------+------+-------------------+----------+----------+------+------+-------+-------+--------------------+-------+-------+-------+-------+----------+-------+-------+-------+-------+
|Field1|Field2|Field3|Field4|             Field5|    Field6|    Field7|Field8|Field9|Field10|Field11|             Field12|Field13|Field14|Field15|Field16|   Field17|Field18|Field19|Field20|Field21|
+------+------+------+------+-------------------+----------+----------+------+------+-------+-------+--------------------+-------+-------+-------+-------+----------+-------+-------+-------+-------+
|    A1|    B1|    C1|    D1|2024-02-01 10:30:00|2024-02-01|2024-01-31|    E1|    F1|     G1|     H1|12345678901234567...|     I1|     J1|     K1|     L1|2024-02-01|     M1|     N1|    100|     10|
|    A2|    B2|    C2|  NULL|2024-02-01 11:00:00|      NULL|2024-01-30|    E2|  NULL|     G2|     H2|                NULL|     I2|     J2|     K2|     L2|2024-02-02|     M2|     N2|    200|     20|
|    A3|    B3|    C3|    D3|2024-02-01 12:15:00|2024-02-03|      NULL|    E3|    F3|   NULL|     H3|98765432109876543...|     I3|   NULL|     K3|     L3|2024-02-03|     M3|     N3|   NULL|   NULL|
+------+------+------+------+-------------------+----------+----------+------+------+-------+-------+--------------------+-------+-------+-------+-------+----------+-------+-------+-------+-------+

>>>

with duckdb

$ python
Python 3.12.3 (main, Apr 15 2024, 17:43:11) [Clang 17.0.6 ] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import duckdb
>>> from pyaxp import parse_xsd
>>>
>>> duckdb_schema = parse_xsd("example.xsd", format="duckdb")
>>> type(duckdb_schema)
<class 'dict'>
>>> res = duckdb.sql(f"select * from read_csv('example-data.csv', columns={duckdb_schema})")
>>> res
┌─────────┬─────────┬─────────┬─────────┬─────────────────────┬────────────┬────────────┬─────────┬───┬─────────┬─────────┬─────────┬─────────┬────────────┬─────────┬─────────┬───────────────┬─────────┐
 Field1   Field2   Field3   Field4         Field5           Field6      Field7    Field8     Field13  Field14  Field15  Field16   Field17    Field18  Field19     Field20     Field21 
 varchar  varchar  varchar  varchar       timestamp          date        date     varchar     varchar  varchar  varchar  varchar     date     varchar  varchar  decimal(25,7)   int32  
├─────────┼─────────┼─────────┼─────────┼─────────────────────┼────────────┼────────────┼─────────┼───┼─────────┼─────────┼─────────┼─────────┼────────────┼─────────┼─────────┼───────────────┼─────────┤
 A1       B1       C1       D1       2024-02-01 09:30:00  2024-02-01  2024-01-31  E1         I1       J1       K1       L1       2024-02-01  M1       N1         100.0000000       10 
 A2       B2       C2       NULL     2024-02-01 10:00:00  NULL        2024-01-30  E2         I2       J2       K2       L2       2024-02-02  M2       N2         200.0000000       20 
 A3       B3       C3       D3       2024-02-01 11:15:00  2024-02-03  NULL        E3         I3       NULL     K3       L3       2024-02-03  M3       N3                NULL     NULL 
├─────────┴─────────┴─────────┴─────────┴─────────────────────┴────────────┴────────────┴─────────┴───┴─────────┴─────────┴─────────┴─────────┴────────────┴─────────┴─────────┴───────────────┴─────────┤
 3 rows                                                                                                                                                                           21 columns (17 shown) 
└────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘

>>> duckdb_schema
{'Field1': 'VARCHAR(15)', 'Field2': 'VARCHAR(20)', 'Field3': 'VARCHAR(10)', 'Field4': 'VARCHAR(50)', 'Field5': 'TIMESTAMP', 'Field6': 'DATE', 'Field7': 'DATE', 'Field8': 'VARCHAR(10)', 'Field9': 'VARCHAR(3)', 'Field10': 'VARCHAR(30)', 'Field11': 'VARCHAR(10)', 'Field12': 'DECIMAL(25, 7)', 'Field13': 'VARCHAR(255)', 'Field14': 'VARCHAR(255)', 'Field15': 'VARCHAR(255)', 'Field16': 'VARCHAR(255)', 'Field17': 'DATE', 'Field18': 'VARCHAR(30)', 'Field19': 'VARCHAR(255)', 'Field20': 'DECIMAL(25, 7)', 'Field21': 'INTEGER'}
>>>

with pyarrow

>>> import pyarrow as pa
>>> from pyarrow import csv
>>> from pyaxp import parse_xsd
>>>
>>> arrow_schema = parse_xsd("example.xsd", format="arrow")
>>> type(arrow_schema)
<class 'pyarrow.lib.Schema'>
>>> convert_options = csv.ConvertOptions(column_types=arrow_schema)
>>> arrow_df = csv.read_csv("example-data.csv",
...                         parse_options=csv.ParseOptions(delimiter=";"),
...                         convert_options=convert_options)
>>>
>>> print(arrow_df)
pyarrow.Table
Field1: string
Field2: string
Field3: string
Field4: string
Field5: timestamp[ns]
Field6: date32[day]
Field7: date32[day]
Field8: string
Field9: string
Field10: string
Field11: string
Field12: decimal128(25, 7)
Field13: string
Field14: string
Field15: string
Field16: string
Field17: date32[day]
Field18: string
Field19: string
Field20: double
Field21: int32
----
Field1: [["A1","A2","A3"]]
Field2: [["B1","B2","B3"]]
Field3: [["C1","C2","C3"]]
Field4: [["D1","","D3"]]
Field5: [[2024-02-01 10:30:00.000000000,2024-02-01 11:00:00.000000000,2024-02-01 12:15:00.000000000]]
Field6: [[2024-02-01,null,2024-02-03]]
Field7: [[2024-01-31,2024-01-30,null]]
Field8: [["E1","E2","E3"]]
Field9: [["F1","","F3"]]
Field10: [["G1","G2",""]]
...
>>> print(arrow_df.to_struct_array())
[
  -- is_valid: all not null
  -- child 0 type: string
    [
      "A1",
      "A2",
      "A3"
    ]
  -- child 1 type: string
    [
      "B1",
      "B2",
      "B3"
    ]
  -- child 2 type: string
    [
      "C1",
      "C2",
      "C3"
    ]
  -- child 3 type: string
    [
      "D1",
      "",
      "D3"
    ]
  -- child 4 type: timestamp[ns]
    [
      2024-02-01 10:30:00.000000000,
      2024-02-01 11:00:00.000000000,
      2024-02-01 12:15:00.000000000
    ]
  -- child 5 type: date32[day]
    [
      2024-02-01,
      null,
      2024-02-03
    ]
  -- child 6 type: date32[day]
    [
      2024-01-31,
      2024-01-30,
      null
    ]
  -- child 7 type: string
    [
      "E1",
      "E2",
      "E3"
    ]
  -- child 8 type: string
    [
      "F1",
      "",
      "F3"
    ]
  -- child 9 type: string
    [
      "G1",
      "G2",
      ""
    ]
  -- child 10 type: string
    [
      "H1",
      "H2",
      "H3"
    ]
  -- child 11 type: decimal128(25, 7)
    [
      123456789012345678.1234567,
      null,
      98765432109876543.7654321
    ]
  -- child 12 type: string
    [
      "I1",
      "I2",
      "I3"
    ]
  -- child 13 type: string
    [
      "J1",
      "J2",
      ""
    ]
  -- child 14 type: string
    [
      "K1",
      "K2",
      "K3"
    ]
  -- child 15 type: string
    [
      "L1",
      "L2",
      "L3"
    ]
  -- child 16 type: date32[day]
    [
      2024-02-01,
      2024-02-02,
      2024-02-03
    ]
  -- child 17 type: string
    [
      "M1",
      "M2",
      "M3"
    ]
  -- child 18 type: string
    [
      "N1",
      "N2",
      "N3"
    ]
  -- child 19 type: double
    [
      100,
      200,
      null
    ]
  -- child 20 type: int32
    [
      10,
      20,
      null
    ]
]
>>>

with polars

>> import polars as pl
>>> from pyaxp import parse_xsd
>>> schema = parse_xsd("example.xsd", format="polars")
>>> type(schema)
<class 'dict'>
>>> df = pl.read_csv("example-data.csv", schema=schema, separator=";")
>>> df
shape: (3, 21)
┌────────┬────────┬────────┬────────┬───┬─────────┬─────────┬────────────────┬─────────┐
 Field1  Field2  Field3  Field4    Field18  Field19  Field20         Field21 
 ---     ---     ---     ---        ---      ---      ---             ---     
 str     str     str     str        str      str      decimal[38,10]  i64     
╞════════╪════════╪════════╪════════╪═══╪═════════╪═════════╪════════════════╪═════════╡
 A1      B1      C1      D1        M1       Y        100.0000000000  10      
 A2      B2      C2      null      M2       N        200.0000000000  20      
 A3      B3      C3      D3        M3       Y        null            null    
└────────┴────────┴────────┴────────┴───┴─────────┴─────────┴────────────────┴─────────┘
>>> df.types
Traceback (most recent call last):
File "<python-input-7>", line 1, in <module>
df.types
AttributeError: 'DataFrame' object has no attribute 'types'. Did you mean: 'dtypes'?
>>> df.dtypes
[String, String, String, String, Datetime(time_unit='ns', time_zone=None), Date, Date, String, String, String, String, Decimal(precision=25, scale=7), String, String, String, String, Date, String, String, Decimal(precision=38, scale=10), Int64]
>>> schema
{'Field1': String, 'Field2': String, 'Field3': String, 'Field4': String, 'Field5': Datetime(time_unit='ns', time_zone=None), 'Field6': Date, 'Field7': Date, 'Field8': String, 'Field9': String, 'Field10': String, 'Field11': String, 'Field12': Decimal(precision=25, scale=7), 'Field13': String, 'Field14': String, 'Field15': String, 'Field16': String, 'Field17': Date, 'Field18': String, 'Field19': String, 'Field20': Decimal(precision=38, scale=10), 'Field21': Int64}
>>>

with avro

>>> schema = parse_xsd("example.xsd", "avro")
>>> type(schema)
<class 'dict'>
>>> schema
{'type': 'record', 'name': 'Main_Element', 'doc': None, 'aliases': None, 'fields': [{'name': 'Field1', 'type': 'string', 'doc': None}, {'name': 'Field2', 'type': 'string', 'doc': None}, {'name': 'Field3', 'type': 'string', 'doc': None}, {'name': 'Field4', 'type': ['null', 'string'], 'doc': None}, {'name': 'Field5', 'type': 'string', 'doc': None}, {'name': 'Field6', 'type': ['null', {'type': 'int', 'logicalType': 'date'}], 'doc': None}, {'name': 'Field7', 'type': ['null', {'type': 'int', 'logicalType': 'date'}], 'doc': None}, {'name': 'Field8', 'type': 'string', 'doc': None}, {'name': 'Field9', 'type': ['null', 'string'], 'doc': None}, {'name': 'Field10', 'type': ['null', 'string'], 'doc': None}, {'name': 'Field11', 'type': ['null', 'string'], 'doc': None}, {'name': 'Field12', 'type': ['null', 'string'], 'doc': None}, {'name': 'Field13', 'type': ['null', {'type': 'enum', 'doc': None, 'name': 'Field13', 'symbols': ['U', 'N', 'I', 'T'], 'namespace': None}], 'doc': None}, {'name': 'Field14', 'type': ['null', {'type': 'enum', 'doc': None, 'name': 'Field14', 'symbols': ['PCT', 'R', 'D'], 'namespace': None}], 'doc': None}, {'name': 'Field15', 'type': {'type': 'enum', 'doc': None, 'name': 'Field15', 'symbols': ['PCT', 'R', 'D'], 'namespace': None}, 'doc': None}, {'name': 'Field16', 'type': ['null', 'string'], 'doc': 'explanation about the currency type'}, {'name': 'Field17', 'type': {'type': 'int', 'logicalType': 'date'}, 'doc': None}, {'name': 'Field18', 'type': ['null', 'string'], 'doc': None}, {'name': 'Field19', 'type': ['null', {'type': 'enum', 'doc': None, 'name': 'Field19', 'symbols': ['Y', 'N'], 'namespace': None}], 'doc': None}, {'name': 'Field20', 'type': ['null', 'string'], 'doc': 'percentage (ie. .08 -> 8% and .7523 -> 72.23%)'}, {'name': 'Field21', 'type': ['null', 'string'], 'doc': None}], 'namespace': None}
>>> import json
>>> print(json.dumps(schema, indent=4))
{
    "type": "record",
    "name": "Main_Element",
    "doc": null,
    "aliases": null,
    "fields": [
        {
            "name": "Field1",
            "type": "string",
            "doc": null
        },
        {
            "name": "Field2",
            "type": "string",
            "doc": null
        },
        {
            "name": "Field3",
            "type": "string",
            "doc": null
        },
        {
            "name": "Field4",
            "type": [
                "null",
                "string"
            ],
            "doc": null
        },
        {
            "name": "Field5",
            "type": "string",
            "doc": null
        },
        {
            "name": "Field6",
            "type": [
                "null",
                {
                    "type": "int",
                    "logicalType": "date"
                }
            ],
            "doc": null
        },
        {
            "name": "Field7",
            "type": [
                "null",
                {
                    "type": "int",
                    "logicalType": "date"
                }
            ],
            "doc": null
        },
        {
            "name": "Field8",
            "type": "string",
            "doc": null
        },
        {
            "name": "Field9",
            "type": [
                "null",
                "string"
            ],
            "doc": null
        },
        {
            "name": "Field10",
            "type": [
                "null",
                "string"
            ],
            "doc": null
        },
        {
            "name": "Field11",
            "type": [
                "null",
                "string"
            ],
            "doc": null
        },
        {
            "name": "Field12",
            "type": [
                "null",
                "string"
            ],
            "doc": null
        },
        {
            "name": "Field13",
            "type": [
                "null",
                {
                    "type": "enum",
                    "doc": null,
                    "name": "Field13",
                    "symbols": [
                        "U",
                        "N",
                        "I",
                        "T"
                    ],
                    "namespace": null
                }
            ],
            "doc": null
        },
        {
            "name": "Field14",
            "type": [
                "null",
                {
                    "type": "enum",
                    "doc": null,
                    "name": "Field14",
                    "symbols": [
                        "PCT",
                        "R",
                        "D"
                    ],
                    "namespace": null
                }
            ],
            "doc": null
        },
        {
            "name": "Field15",
            "type": {
                "type": "enum",
                "doc": null,
                "name": "Field15",
                "symbols": [
                    "PCT",
                    "R",
                    "D"
                ],
                "namespace": null
            },
            "doc": null
        },
        {
            "name": "Field16",
            "type": [
                "null",
                "string"
            ],
            "doc": "explanation about the currency type"
        },
        {
            "name": "Field17",
            "type": {
                "type": "int",
                "logicalType": "date"
            },
            "doc": null
        },
        {
            "name": "Field18",
            "type": [
                "null",
                "string"
            ],
            "doc": null
        },
        {
            "name": "Field19",
            "type": [
                "null",
                {
                    "type": "enum",
                    "doc": null,
                    "name": "Field19",
                    "symbols": [
                        "Y",
                        "N"
                    ],
                    "namespace": null
                }
            ],
            "doc": null
        },
        {
            "name": "Field20",
            "type": [
                "null",
                "string"
            ],
            "doc": "percentage, ie.: .08 -> 8%"
        },
        {
            "name": "Field21",
            "type": [
                "null",
                "string"
            ],
            "doc": null
        }
    ],
    "namespace": null
}
>>>

TODO

  • pyo3/maturin support
  • parameter for timezone unit/TZ (testing with polars)
  • support for different xsd file encoding: UTF-16, UTF16LE, ...
  • more tests
  • strict schema validation to spec (xsd, avro, json-schema, ...)
  • example implementation <xsd ⚡> convert
  • option to lowercase column names

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

pyaxp-0.2.3.tar.gz (89.1 kB view details)

Uploaded Source

Built Distributions

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

pyaxp-0.2.3-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl (756.3 kB view details)

Uploaded PyPymusllinux: musl 1.2+ x86-64

pyaxp-0.2.3-pp310-pypy310_pp73-musllinux_1_2_armv7l.whl (850.8 kB view details)

Uploaded PyPymusllinux: musl 1.2+ ARMv7l

pyaxp-0.2.3-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl (752.8 kB view details)

Uploaded PyPymusllinux: musl 1.2+ ARM64

pyaxp-0.2.3-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (591.5 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

pyaxp-0.2.3-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (595.0 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARMv7l

pyaxp-0.2.3-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (580.5 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARM64

pyaxp-0.2.3-cp313-cp313t-musllinux_1_2_x86_64.whl (751.2 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ x86-64

pyaxp-0.2.3-cp313-cp313t-musllinux_1_2_armv7l.whl (846.2 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARMv7l

pyaxp-0.2.3-cp313-cp313t-musllinux_1_2_aarch64.whl (745.5 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARM64

pyaxp-0.2.3-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (590.0 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ARMv7l

pyaxp-0.2.3-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (573.9 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ARM64

pyaxp-0.2.3-cp313-cp313-win_amd64.whl (453.2 kB view details)

Uploaded CPython 3.13Windows x86-64

pyaxp-0.2.3-cp313-cp313-musllinux_1_2_x86_64.whl (752.0 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

pyaxp-0.2.3-cp313-cp313-musllinux_1_2_armv7l.whl (847.7 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARMv7l

pyaxp-0.2.3-cp313-cp313-musllinux_1_2_aarch64.whl (748.1 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

pyaxp-0.2.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (587.1 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

pyaxp-0.2.3-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (591.7 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARMv7l

pyaxp-0.2.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (576.0 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

pyaxp-0.2.3-cp313-cp313-macosx_11_0_arm64.whl (536.5 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

pyaxp-0.2.3-cp313-cp313-macosx_10_12_x86_64.whl (550.9 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

pyaxp-0.2.3-cp312-cp312-win_amd64.whl (453.5 kB view details)

Uploaded CPython 3.12Windows x86-64

pyaxp-0.2.3-cp312-cp312-musllinux_1_2_x86_64.whl (753.4 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

pyaxp-0.2.3-cp312-cp312-musllinux_1_2_armv7l.whl (848.3 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARMv7l

pyaxp-0.2.3-cp312-cp312-musllinux_1_2_aarch64.whl (748.9 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

pyaxp-0.2.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (587.6 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

pyaxp-0.2.3-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (592.3 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARMv7l

pyaxp-0.2.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (576.4 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

pyaxp-0.2.3-cp312-cp312-macosx_11_0_arm64.whl (536.8 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pyaxp-0.2.3-cp312-cp312-macosx_10_12_x86_64.whl (551.3 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

pyaxp-0.2.3-cp311-cp311-win_amd64.whl (453.8 kB view details)

Uploaded CPython 3.11Windows x86-64

pyaxp-0.2.3-cp311-cp311-musllinux_1_2_x86_64.whl (755.2 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

pyaxp-0.2.3-cp311-cp311-musllinux_1_2_armv7l.whl (849.1 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARMv7l

pyaxp-0.2.3-cp311-cp311-musllinux_1_2_aarch64.whl (751.3 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

pyaxp-0.2.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (590.0 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

pyaxp-0.2.3-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (593.4 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARMv7l

pyaxp-0.2.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (579.5 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

pyaxp-0.2.3-cp311-cp311-macosx_11_0_arm64.whl (538.5 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pyaxp-0.2.3-cp311-cp311-macosx_10_12_x86_64.whl (551.8 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

pyaxp-0.2.3-cp310-cp310-win_amd64.whl (453.9 kB view details)

Uploaded CPython 3.10Windows x86-64

pyaxp-0.2.3-cp310-cp310-musllinux_1_2_x86_64.whl (755.2 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

pyaxp-0.2.3-cp310-cp310-musllinux_1_2_armv7l.whl (849.2 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARMv7l

pyaxp-0.2.3-cp310-cp310-musllinux_1_2_aarch64.whl (751.6 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

pyaxp-0.2.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (590.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

pyaxp-0.2.3-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (593.4 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARMv7l

pyaxp-0.2.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (579.7 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

File details

Details for the file pyaxp-0.2.3.tar.gz.

File metadata

  • Download URL: pyaxp-0.2.3.tar.gz
  • Upload date:
  • Size: 89.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.8.2

File hashes

Hashes for pyaxp-0.2.3.tar.gz
Algorithm Hash digest
SHA256 a72e244ebbfde167d22f4f8ec54ed85fa37e2c2ecfdc74b7e97b49e7bdbee13f
MD5 c9d45cf1b2ea7c015fe0e1db88ff4f7d
BLAKE2b-256 e1ec83f5cf1b8d75443657b7f9ba6a436735dd868995127a20c70d99f3a03ff5

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 60e7e72934828de6d06642ae3a6896f1d861564f5afbf7bddb16bc360990fa1c
MD5 27a2669e5fd1091c926cab9acae42173
BLAKE2b-256 27fe096cddfc6d67da7e63594975af9418b73757eb6aa8ae84fda2abde6cfd68

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-pp310-pypy310_pp73-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-pp310-pypy310_pp73-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 7aabe73c37f970972ca9ac2d1cae8e688909ef034db239a9873ecdaa57ced10e
MD5 0201495660573836b15d28cb013bdc3d
BLAKE2b-256 dc9cbf012bd1004a1162c5b36efc9b9aa5b637444fe7aaf532c5ce7056951269

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 6af65f5b8a39d2d87b1000e5d743d60b9c8087b01a55324915b90c0493c1b9e4
MD5 ac45d37d9cc2a25b01a6a1bcba190f77
BLAKE2b-256 6d850a9d5e8d345ab941e73e733de27e90f09aad846c54cc116c616abc71407d

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 157ff9296d3ffd6783b24793b3211d1a3cd8d70b5b3262774dff9c64258c6b34
MD5 708a103f0dfc8f0ba559860e071c335a
BLAKE2b-256 9a2c3933487399f49c512e6bf407e90c16d22d9ca9148dc57e2ef0f61092c0e6

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 8371258bae59360b2e4d8e9df58ae32bb69e3a7a4b03ee22c71fa03d2ae666bb
MD5 05751d065138a4cefa117bca507f8380
BLAKE2b-256 5e787fe2bd73fc4d2cf2b58c3a14bfe4d1ab844392f592fc8a63e73019af18b2

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 857d90d14e20cad37a22416a3a354d6c5ab2dfbb66c4797da308b3c5f9b0be1c
MD5 c8f171ed1dc6e49ff46115675be8e560
BLAKE2b-256 8440ad803a124ebf685150abc24e3f51d584e1751c96f23fc09e0981ba350f1f

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp313-cp313t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp313-cp313t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 88324e46ba9a48a2a143c51c72a033ff97f155ea25202468972f51d53b2b3dc8
MD5 c7dbed6fc9c19a102440cedfb23214b5
BLAKE2b-256 215f5be3d0d37a3a4f0b78de324a15388204c3b695125bb26e89cc4490439450

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp313-cp313t-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp313-cp313t-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 03305d4906c1a3d31fb6ea4ec5e1cea0da13185ce6985c1813adab3e080798d4
MD5 d8be6cdbac033674cf26e542e9e06615
BLAKE2b-256 dbbf180b75af6a41856f1c0f19ca8f0d25c7011e64284035a4b1f955e9b42a0b

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp313-cp313t-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp313-cp313t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 6f927a9619aa0eadfa4822181b34314e47ed9f00f8a4e9a1e5352ba3436f0ac6
MD5 76d6d4e78d73fce196e525d8533eb15e
BLAKE2b-256 63c5e03d7d750210de9b903c050cf883efb23020589ae854d0bc5a2b705bd640

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 cc26c7c1950bbf7cadf7b0946a2b84b11a790ebfda0914138805b1ca41290f93
MD5 afddef46a18df6e5de2e487a8edb312c
BLAKE2b-256 5afbc0acf4e5ec48c501d76ce8253f97a20cb64e925930713ae9b2e617b681b9

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 1b1813a78f6a9530a5f4c853c3cdca5e9e17f00cf197fb74141c9a393f9f38e9
MD5 ad9ee3f2b8078731e2afd4256fa05b69
BLAKE2b-256 4b9c454b4834d581a7bb8b1dc581c0e523682c241fb116752e02e78311375d4e

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: pyaxp-0.2.3-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 453.2 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.8.2

File hashes

Hashes for pyaxp-0.2.3-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 eca61788d7a81f9770271d70ae66f3f5abb9259e50241a4c8ebedf43dc011b5f
MD5 516074d56a1c13a46462ca5be6c33125
BLAKE2b-256 ec475676ff0b6cf5895aa3004cbd64cd15d75e1350f99d7812fed28e4b3c58dd

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 8f0662b15061c83845d6b916b367044d09378f260fcb060d1f785d6ffab4b964
MD5 73d219e0e7250a5c0e3db1ed2a35bb25
BLAKE2b-256 1f4148428f3ecab86e6c6513cf888cffa267f260b43f52598e49119d3d424c68

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp313-cp313-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp313-cp313-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 33309f18ca9294a631e7805c971224675d78a1b2d507e110762fe2623a98f9ca
MD5 90e6ca222be57203bc38e7dbf18cfc3c
BLAKE2b-256 579cd892886b366d7c5892ecfce3ac5f709eaf31addbb06a5694360fe1ea463f

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 bfa966ec742010675a37ff8b46e4cf73fe12c58ec559b094c1464d6048efda41
MD5 e26951d3c05e9ac6119d06836b14263d
BLAKE2b-256 4f324070aac5c20387577be5f4a0f7bf7f449218966d8ab2a3bfab177d09bb80

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 92c9b2a5c1095672f3261810ab8249fc5cff77b6dac7b4f35b418b15dc9ed9fe
MD5 48b64e5aa5beab6ebfe2e49792f33606
BLAKE2b-256 8ca166bf70bf2467da07f53f4a33676019d9dd94be4c3d2cf5a75f214de0d0b0

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 b55d74ddbf9df7e4c5c159e835ed489e8fb3957e38e6155679ca4dc1198efa77
MD5 f6b5badbe02f92dccbc04e79fac66daf
BLAKE2b-256 0a0f6ab1f25d6a2ed033aa7872f019f13a3b2d7206e1cfc76a84c492091c7957

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 07805407606eac4092dae35ec68e03c863fcc6a1f918811950f1dd13f18ade64
MD5 0f968efd9c549dc3fd160c60deca82a8
BLAKE2b-256 a0cd0c3adb4709558a938ea303de31d73a49369f0ccb90e01aeb035c08243f09

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d6c061a2dad2dc4985d1be05f995b295585b1e44b7fd9dc32aaa2d0e45e5ecff
MD5 c5833835eb5f9f9a7eaa88160af063c7
BLAKE2b-256 cf7f0416e20fea9ccc7ba267c34a51dd9a78086bd8ee235441ef506143fc996f

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 328d3c50856b62be3c9b94ff8232b6047e8a1cc271876196641544df72b19a0c
MD5 e547cb36cebebc952e9da36a39629e55
BLAKE2b-256 a08f359b04bb011ca368cbd3daadbbdefbec90a995879effe764bf9f2eb9c235

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: pyaxp-0.2.3-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 453.5 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.8.2

File hashes

Hashes for pyaxp-0.2.3-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 dd07412b1ae69f943d412239639fd67e4e08f7bab6885dfc54aee7c332410a2d
MD5 fae20512334d0a1793ce037172bef665
BLAKE2b-256 af9b81eadb1e8fd46e908682189baf3c11392478be039a5044ade5f471dae8f0

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 61f1025a6c570e54354c108b0c3424b858ef48a6f869e4a56f273758b4c8d477
MD5 cacb2838b40b6f7d6ca8c64d72d51bae
BLAKE2b-256 3a4c4b4eadb24242143f2032f3e638fd591090fac84b51c0cbdf7e9252ec76ff

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp312-cp312-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp312-cp312-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 fb861cb5640c35ec519b03ee64f8037deb74d35877952b22cf88096a77b3c47d
MD5 6ae15cec2e77f8254fb4c59552497ba2
BLAKE2b-256 081d73e668b11f8904f94def96b690fd03d4ef19b1e457254047f33bfcc21bf6

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 58838a063a1034674c268a7a58b1addc265f2236785f7cee8e9e34d1409e1310
MD5 6d87ada075be190a5fe36d08b349da52
BLAKE2b-256 87d0af1a1e7d50cec5fb8ead184ad2d6f0041419435b3a85df4aa5e1e99a1554

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 dacdfcef82ad32530361ced275ca8b760228f89eda161500b8c9ee6bfb3d4bd0
MD5 1a29c278a5d2537575b1e14a8c40fadd
BLAKE2b-256 55e1813cb31913d828c3ff57a577ebfb4135840beb6dd51de0c5c316c5e5b03c

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 b99a5e4f7278dc482f61ae54b2fdc0f2a20e7ec17f08ba3d6c3ec3c0d337248c
MD5 1c8af4ca368c66608fe1a7deb69abdef
BLAKE2b-256 56d7552e3894edcd680cbfd18487a1d58b609c06c63474b1513e2883d01233ae

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7e0968cc89987faba905182fb682b1380bbdcf0826501614782c2e11492cfa5b
MD5 aa600a0568fac7c39cec5c6624073303
BLAKE2b-256 c233f81db4b7f8a6e5b21379ab6fe47fad6ddb6c88ecbd8b5e8e108a6ee22523

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c0759f8a4415bc6c31b9258b543eddba6bc5f63e02bbedb494565e523d1a2b7f
MD5 8f45a3aff38e45dc78681762c21cd62c
BLAKE2b-256 a837379e6c9d54a3ee9d049d8df94acfee95199d0241376da43cc09fae3f6cd0

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 c3db207b03318eb06496744d733bef08c764687a6473e5b19d89d754506e62c4
MD5 3acfdd33ed21ecde6de17af6dce54b9f
BLAKE2b-256 842101b66f5d90fbdbf6815c4a441efb30a976e170191dfcd5066aaa85cfc9b6

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: pyaxp-0.2.3-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 453.8 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.8.2

File hashes

Hashes for pyaxp-0.2.3-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 ec563d88c4836a0ce427641a731103668fcd3402b1e8a99fe20f4a99f6c31ab9
MD5 61721adcd2fcf0966ecbfec472b1da41
BLAKE2b-256 8f8e2bff746a04c05e666206be97b7be8ac15d4fe4d9e287c040ad2bb54d5970

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 c93d9b84e96a29a83cfdc29ccd24a600593f3ea250419499314f7524d6c19b89
MD5 e7f00fdf1aabc42b2043a79e63c286a0
BLAKE2b-256 86fa0c7381ae033fee30f20a7e60f0187ffa6848320eafdfafb17cee7f0c6c3a

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp311-cp311-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp311-cp311-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 1e89a7b33f644183fd0005dd04234aa7e491b224ce204404673fbf70c1ee55c7
MD5 56add8a77c644c7332dd55149978a319
BLAKE2b-256 1d2615b34d4eb0a8f053b3ea1547650651445742dd7b6b260b04e66474dfc312

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 6b75f3922fc7d305048b1b1f38918ad59e963b70451f349e0e3527452e2a5726
MD5 164f106a86646521fab70522bbdb2f4e
BLAKE2b-256 06b7e34322d588472cb28442c9cb78376610ec4b286fd3dbd14d5cee17b6cc09

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 77ad64149cc88deddbd3a3435cadc446281d20f28a61bd4d23d65155ae354143
MD5 3564ad6db9bec42f8fb38bf6bac6c760
BLAKE2b-256 44babd060740beadf1d3327b1dc4e483121b0854a4094fbcdee706e6b5040729

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 21e83edf1d82d3efdbbf74b27bd0f5bbb8c31c2ce2c14e149748ffeaf3cd7cf2
MD5 0d42b329cf90d0397bdcf54cb55609eb
BLAKE2b-256 e4d14b99734938c809dd0f9f0e42aaccc21ef106407c93d549051fe2feac865d

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e3344cf4da92cf2971958e04f6bf07e6aa517a7bbb53f79a241a631f7f435ee9
MD5 6c33e4f2d96f3c38a5108db41cf86ca7
BLAKE2b-256 33299894a1467b89ae4823e400c584cf946bf2c1ed907c6fef342d6a7762c673

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b0ed8538f72bf5aab7598a632f0c52ddcc77e7cfd00bbefbcfee38cf526d7e68
MD5 a63b16dc337c4291edd0116fedcfab24
BLAKE2b-256 f4883a9a65016922817f16042b6253766a9525b323258b043da4fbc6339efae1

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 0f876af089fed908eab8115d10da7ed4bf698776efa6dfe227e2c0546f93c164
MD5 c8c3b63085a4fd74d044666dd44635ef
BLAKE2b-256 361d7c5a453aee29c2b2a4880217d7148827a1cc711697f6fb85e3ab3ad59e7c

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: pyaxp-0.2.3-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 453.9 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.8.2

File hashes

Hashes for pyaxp-0.2.3-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 db8d7de34551f5802029477176dbac25a732e87af5befe57d946011e9d872322
MD5 971b5ad2bd4d24d634286577f93b4846
BLAKE2b-256 1426e0f72e7b6dc413f59d555f54ea94534b0d2260a6363cebac54a3ef0daac6

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 18207b767dd6253483663d64ea864640a29b682635372fff80cc2c9232990da8
MD5 57bf5d01789d1688189c7e8ba90e3aa1
BLAKE2b-256 3d8ea2ed5a69d638364b393a390b990f32ad22c1f4bef9515d0f4fda39701346

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp310-cp310-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp310-cp310-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 82d36b5a83d5be53fb076f2aa24478bf2fa52db971b5c9503f0d5f9549c48ca7
MD5 05186e62d6322168263ad760ff836863
BLAKE2b-256 95c28320e18b9b0c3b737691692efa70bed0ada9e3a2ea4f0bdd8eb0313aa7cf

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 002e1e7fb12260fcf5382f4c8301d73604d1efd678122f2378dd124e37ce62f4
MD5 71661f87224db5ad0df237a0cb1bd8b7
BLAKE2b-256 4c6ace50cddb6012d8ebd6eb09b050a3526578a01b79bd9bf7c3b0af3b07d35d

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 91ab9158f702860a731e2ff5cc587c14e0c6f1f75b17b926f602eb33e1c5479d
MD5 307398e7e2685c2fbf3964524594548d
BLAKE2b-256 bf335fe12494ac5c962905e39090025d31410b6f3a8603cebf9ba2063bdb8396

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 3d815f2ee06fcc0d28b808f5e217a1edb5ffc4a07a6b157a6dc8cde428414a28
MD5 b65f0d0ab90a86805a55e3ce986ac490
BLAKE2b-256 b503edaf26ffef501b7f87fdd3a2ecabcfa54d4e420522f360976b94115c8efc

See more details on using hashes here.

File details

Details for the file pyaxp-0.2.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for pyaxp-0.2.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 06228a3fa7040d5ce5eede3eac4555707766e0a8fa84a4c55c3a97e60efad26b
MD5 72bf54c771a64e41b1672771193bb474
BLAKE2b-256 dd3f6a78076e502ff377f69a4dd2153a72f6111f6f520eb5c6718545662a1ff2

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