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.1.tar.gz (88.6 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.1-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl (739.2 kB view details)

Uploaded PyPymusllinux: musl 1.2+ x86-64

pyaxp-0.2.1-pp310-pypy310_pp73-musllinux_1_2_armv7l.whl (834.8 kB view details)

Uploaded PyPymusllinux: musl 1.2+ ARMv7l

pyaxp-0.2.1-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl (736.5 kB view details)

Uploaded PyPymusllinux: musl 1.2+ ARM64

pyaxp-0.2.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (574.1 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

pyaxp-0.2.1-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (578.2 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARMv7l

pyaxp-0.2.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (564.1 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARM64

pyaxp-0.2.1-cp313-cp313t-musllinux_1_2_x86_64.whl (734.6 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ x86-64

pyaxp-0.2.1-cp313-cp313t-musllinux_1_2_armv7l.whl (830.4 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARMv7l

pyaxp-0.2.1-cp313-cp313t-musllinux_1_2_aarch64.whl (731.9 kB view details)

Uploaded CPython 3.13tmusllinux: musl 1.2+ ARM64

pyaxp-0.2.1-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (574.4 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ARMv7l

pyaxp-0.2.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (558.7 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ARM64

pyaxp-0.2.1-cp313-cp313-win_amd64.whl (438.1 kB view details)

Uploaded CPython 3.13Windows x86-64

pyaxp-0.2.1-cp313-cp313-musllinux_1_2_x86_64.whl (736.1 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

pyaxp-0.2.1-cp313-cp313-musllinux_1_2_armv7l.whl (832.0 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARMv7l

pyaxp-0.2.1-cp313-cp313-musllinux_1_2_aarch64.whl (733.2 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

pyaxp-0.2.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (571.2 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

pyaxp-0.2.1-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (576.0 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARMv7l

pyaxp-0.2.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (560.6 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

pyaxp-0.2.1-cp313-cp313-macosx_11_0_arm64.whl (522.4 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

pyaxp-0.2.1-cp313-cp313-macosx_10_12_x86_64.whl (534.8 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

pyaxp-0.2.1-cp312-cp312-win_amd64.whl (438.1 kB view details)

Uploaded CPython 3.12Windows x86-64

pyaxp-0.2.1-cp312-cp312-musllinux_1_2_x86_64.whl (736.1 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

pyaxp-0.2.1-cp312-cp312-musllinux_1_2_armv7l.whl (832.0 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARMv7l

pyaxp-0.2.1-cp312-cp312-musllinux_1_2_aarch64.whl (733.2 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

pyaxp-0.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (571.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

pyaxp-0.2.1-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (576.0 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARMv7l

pyaxp-0.2.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (560.7 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

pyaxp-0.2.1-cp312-cp312-macosx_11_0_arm64.whl (522.5 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

pyaxp-0.2.1-cp312-cp312-macosx_10_12_x86_64.whl (534.8 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

pyaxp-0.2.1-cp311-cp311-win_amd64.whl (438.0 kB view details)

Uploaded CPython 3.11Windows x86-64

pyaxp-0.2.1-cp311-cp311-musllinux_1_2_x86_64.whl (738.2 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

pyaxp-0.2.1-cp311-cp311-musllinux_1_2_armv7l.whl (833.1 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARMv7l

pyaxp-0.2.1-cp311-cp311-musllinux_1_2_aarch64.whl (735.7 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

pyaxp-0.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (573.0 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

pyaxp-0.2.1-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (577.2 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARMv7l

pyaxp-0.2.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (563.3 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

pyaxp-0.2.1-cp311-cp311-macosx_11_0_arm64.whl (523.3 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

pyaxp-0.2.1-cp311-cp311-macosx_10_12_x86_64.whl (534.6 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

pyaxp-0.2.1-cp310-cp310-win_amd64.whl (438.1 kB view details)

Uploaded CPython 3.10Windows x86-64

pyaxp-0.2.1-cp310-cp310-musllinux_1_2_x86_64.whl (738.6 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

pyaxp-0.2.1-cp310-cp310-musllinux_1_2_armv7l.whl (833.2 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARMv7l

pyaxp-0.2.1-cp310-cp310-musllinux_1_2_aarch64.whl (735.9 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

pyaxp-0.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (573.4 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

pyaxp-0.2.1-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (577.4 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARMv7l

pyaxp-0.2.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (563.5 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

File details

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

File metadata

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

File hashes

Hashes for pyaxp-0.2.1.tar.gz
Algorithm Hash digest
SHA256 3be0ee2dd3e0ac409f397178da4168b5158f6e1e0c61a9fee452418a8ec9a423
MD5 49960dd78f39ad8ed09cb78cd4c87846
BLAKE2b-256 8070ee75083308f620d693a03f16cec5c9ae043d0416fcd7349d2bacd1270c02

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 c9fced9798061445ac0795a2c8223fd0149fad1509b4af6602a9fc665f4e623e
MD5 490991ae0cd9a1c239ddf8a50a5f187f
BLAKE2b-256 a3409e8a60b6d95dde1022e1ce023477983d04b5a1d3f7a6c83b508297c92202

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-pp310-pypy310_pp73-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 0800010802eff19ac62c49e816a060aef91af1a23aa32cef1cbccb13d745054a
MD5 ec7d6812f83c2b3ad538c80df91091f5
BLAKE2b-256 8bc29a73a498eec557120f9c0dadb4a7b861f6b3baf4649aeffb0cd110c915ec

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 a10ad3582fa6392bb92c4d7432b5df7ff651d1597a75fa02bf5121621476fe84
MD5 b6ecf3d51d514add9c8b9f398e596b4e
BLAKE2b-256 42efb92ebc26848b200edfc3359837c0d4245be5848552c1b5b6ed01895998e6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 79e9c9fcc2e787f9a0c14baddfecbce3ad6d14abb9686c5e296c1ee21b7b5642
MD5 ca9a214b4d0a0d78aaffd06c06e5b192
BLAKE2b-256 a1c7bc903349f5b70efead5c0df089d8fbb29f4092c5a73fcd674f1f3ea2380d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 4b473a0033d9fca87de198ef717434fcbf26ccd663fea591174e892ebfe9af09
MD5 30baf46f8b6e30fa1f267f9f1a983cc8
BLAKE2b-256 d371afeb3420e351f6a982e4580b75e2c4920e1607af7d8cdacd89bc5b9a23f0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 19491e3129dabdd38cad0d54b50227af0e861056487d74d0ec51407c6d731972
MD5 32808e79eb8d1b550710936af58895ff
BLAKE2b-256 411213ef56420aa3bf98ced6858c4efc12100c9992be0be6e809b37851fc311f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp313-cp313t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 96ecd241c27d24e4a05da3de5dc551a80b3270153c25d7464430e7d1f9812e8e
MD5 cf6af54539c15109394f7292c7db3c31
BLAKE2b-256 4699a0ccff0c4406ec150cccb054ed62de3ad51ee60a65317f4ad0d4d68750be

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp313-cp313t-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 bfe1c4d39f9e27a2ff56595ed6c2c93588e984c158873a04c32ea6204a9e3f04
MD5 155710f19dcc4661bfe643048dc9cd4a
BLAKE2b-256 77dc16f4f49ca797728bcf7ea2ada26603ac6b2179e15dc5bcee884100b1a4a0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp313-cp313t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 25d47c206d1133ecd0882476209f819d05c8bdd3761fae8947e570df5a04c6fa
MD5 5aa46d70f8ef09b43333fba8b2fb9e37
BLAKE2b-256 0803b1dc6bb07aa4a8be7b3d8bbc945e44c5491cc8ec7416a5bfb3ab787bd8af

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 15091555100e20b0768c6373f71a6b366f9603576c6f31b5bc9b09d38386f76b
MD5 1913f1f5c66ec8a14c526cf9cf912922
BLAKE2b-256 56918312b090a94157b5da26d8fe47adb5a872bd096cb975622fe131b7d9becd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 8e7f03bef032f1d8b95903786993b5e97bae51eb3788fbd7971dbc0784f17c93
MD5 55647db5902fe82fa405a71878eb96e7
BLAKE2b-256 ce8c53b13698c06b37aa3e6f7aac6c8b95ca2380268f231eaf70985a7d41bf27

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pyaxp-0.2.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 438.1 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.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 9ba249e3ca9e52576f66164c00efc0fe2bec0917e53003a772306252860cfff4
MD5 a5c2f46bb7d7df2fd9d3b1a3a813c4e8
BLAKE2b-256 2fd88865a3ab686e6c52bfb5bb8dbf30e0de17c3b0d8f8eee213cf509b51d277

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 122a491a89beec921a9161aab3f2e53b7e8bbf78a0f3841ad1b1475dbddde461
MD5 4cf0a841212a11477db06b2e60e05753
BLAKE2b-256 fd5f291b5a88f4748b4e91ec6f8aa43ab2441a160a2cb575a29898ec41e2ccf5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp313-cp313-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 f04ff2ef2b2692516e0a01a2c1968418fecf8abf422d4be1ef8336c7be779432
MD5 ed5eb7d5ac82de669acb36c2e870c1c2
BLAKE2b-256 dcd338a2ca10a758c406506a271e0503ebb84c3e4b6bcedf9a1b9a989628fdd8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 79a0c865ef6be69c0cdf0a69eb81b61a2d5660736fa0243b8411263150e303f0
MD5 155752403404bcc7617fef22e1f80fce
BLAKE2b-256 f1fd2ada122ab67a81f8b05fe9045f9d10f37f8cdee2fc2179e5f6e127b34e50

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 69981dcecc35ea9eb0317734d5da81621876fd6087bf89396ad03e63a12f66c9
MD5 a10941fc33f79d46ea804e7619399b26
BLAKE2b-256 cc8705e3993c46595f61a5587b0cb194adc3fae957a0cd8bceb949b19c2c561d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 ec4b0daa78b024ae4483b0aa4a6ab3d0f0f33a29bd4f0bb41e799042e34d4d0d
MD5 a0c0d71409c45039785840f1f0eb196b
BLAKE2b-256 0f0d879343d79a10250b070b41980616011376117e4af5190b7c5dc4b3cf7aad

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d108ea9a9b13e33039680df52c340328ba001c61ecbcedf5e0f6e38bd4087b59
MD5 67419080a2f7cbd0b68d63dfe678912b
BLAKE2b-256 2744a4e541ccd91b96289802b9a10ef453a9e2be23861490bc039951a0b7f1d0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 35095c6544d7d7334f9582fbee921224421275b859e9ffad21fb87975a000398
MD5 9ec30ac6f0b7da37205a653a1b2c688e
BLAKE2b-256 713342eac0c8d77296970e90245d35aa1e8a7b429da56cd38d8d1f5fd22f8f2e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 cd3d0be1fecb309c068c88771f6ff3aeee2cd811b115d21c2f2aa4a49d53ed86
MD5 dd88d9c2e08f63fc6bf3b20e1cae31d1
BLAKE2b-256 ebee7ef49ba8824a023c3abb39b21a5e3b1ed5c5dcd2e96e2281e448603fc8c4

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pyaxp-0.2.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 438.1 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.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 ae8d329d62991aae467d947bf6c04ccc6166dee94edb7735da2dc8e69454ca62
MD5 1375eefb075c851b43c0472deb3a8ffa
BLAKE2b-256 bf01de8928c4b16b31efdc2881733ea36550876a8bbc5c691e493274abef8b60

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 76513622c4149732c5406e5720b2a4c5beea7bbd9b657c29259430422924014f
MD5 7a72c1326307fbcb21a5a4a6d68ac010
BLAKE2b-256 f49a92473ccd3cce3595f96269809b54fa83e50395a55ca5787121ae885631f3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp312-cp312-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 729cbd7cb6f47d794281638eeb6ec7087bb28ea11f58fadefa95d2d8a91754d1
MD5 d6530929c254ec994d731b354b6ddf6b
BLAKE2b-256 9fa6c23572cfed3e6e47a4452d45eb24889f02cb599d2b281223b508d94f1d4b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 669210d34c79c31c0a8c6ac9892a049fb6bf79266546444c9c9ead5e25df3461
MD5 8bb6d45a1a58d6855e6a91b2049576b1
BLAKE2b-256 61edc824c73ae5791106bae5a335df339bc9fab6f656bfda290057e1f0839d96

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3a16d195527a0932f2e40c6d3b8f00d8faeb589c735c700a80327ee7a51a421a
MD5 85fbe2eb0016fc4845ca1f1f849d3fec
BLAKE2b-256 446521b107db5c5595e05c51e421153505fbdba7d0453eacf98082199b357be1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 eb2a906c9f84f5082e19a18353cb6a4506e01b7a22d37a658f6a5304659fa47d
MD5 4e7edfda38255ba796030a6d45da6000
BLAKE2b-256 5fd47dd8ca4cfdabbd0d79967e41f80b4870af29f7e0e1d65a5023e1e75f89e7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 75b7cc5d910a19d246afd9204b2caea0813c3f94e82e5e0661d81263911d1252
MD5 0ff5ce0bdeb375b58391fe7185e232fd
BLAKE2b-256 534021f28781ef4f1ec315fa59d474f0012f2b3d7a954a9a619d562cfeb57efe

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2fb7dee5cc76f01acf90498be255a71defb1a0373b93ae22f8ff55046c623641
MD5 fe28dd0c6d2ddc585dd66d12e7b65dac
BLAKE2b-256 dd0dc2ac88d72f2cddfe12af464e94847e697941415d0673f978e58de5ebf3b5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 517809469e306567b5de5522c2571eb34afa6eced37f9bb52bce1a721903844d
MD5 bcbbd5a6a9d1c09ff363b5149d18c9b4
BLAKE2b-256 3cb7855b0861525f56943cf209bae75165c6614674824633dbd330294c4ed3db

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pyaxp-0.2.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 438.0 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.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 7539c38bdfb84e98d3e32961f13b21f473cdfacfad17d047bf64336708a5a652
MD5 96522551770840c79ce32e80f7c26ff5
BLAKE2b-256 69b4e59ce4f26dafe4482b3accc5f1d5b211ba57eba24eacb7a4b443441e5e9d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 d8cf6413550e95dfc1163303543e22af195228dc66be5ed5d2591a41810fa071
MD5 bbb71d4462fa609f2154901d7f2a74cb
BLAKE2b-256 72fe9545070d4328f58206e9f8e03722df576443cbc6daeca7bec8b809318aca

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp311-cp311-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 f9ef5679f1c541cfb83d725a05381539ac088dbafba880978fc47ca1421401c2
MD5 f46c0138e7dfcf585cd19922a4acb886
BLAKE2b-256 5ae7c49113430c08c8197c751731661b7963efbe158dfe054f9038074778788e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 d902f4ea891ed9f2d88eb0b6285688e044ddb9e63a2a50c023de5edefee4e5dd
MD5 ddcd1ad419613def0b28e39778fa9e16
BLAKE2b-256 9f6084bc8e6403af07dd383029d6a29f8bf603d6a7275699ac57b35052d63bc2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4e7ef9db95e33739de82acec0acab33bbe3ab7e8ea4e8764e71a303144aa93ed
MD5 193cd3d4db1284eff53ade18d7ab614a
BLAKE2b-256 b0cea5b7209dfb78546d3760d37927690538669aec55d87221cb618dedf506ed

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 9a1ec367ed7988f93466cf8faf0be87eae94d4ffea6099b541621edb8e96345c
MD5 478eae9f9c85a614aaaa4f5c19e06586
BLAKE2b-256 777dba68db2c1673ca04d72358b0e0c78dd32389e1ef03c263a8667b464d0bd7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d92a1a228f40877ec3311ab218bf672ab6cd3e0f90070724e66a763dda36ba09
MD5 cb6ea44b9a12c26881c73cfce19fab88
BLAKE2b-256 476979e522286f89f457c3590d55bf3318cd4307c2993ab748d1113ebc01e8b5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 70875e274ef66c453f3ec11f66386c80d61a0fd6377b2f992242aefce0b6d137
MD5 c0fdcad7247ab5d2c72fdedf9219f209
BLAKE2b-256 5786f0fead2631b0bd3d3cf6732049d3ade819290f3d325c09a0fa32890fc83e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 ab8ede81dd0e2500f9a7ad6ea9f5c674dd4b894d66eddb9bcc3b04a468b314b3
MD5 dd6e23cd0d9dd4d8d63bec2749f2afb6
BLAKE2b-256 b2ee87fdce52cf8862082f8c6640b490efaa359c795ef5935fcef3f03b19ac37

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pyaxp-0.2.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 438.1 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.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 3c5cb276fb43bfcd24c584cd6e46d61284f75e7082b4590f08554f3815977e22
MD5 2adf8b1fae096a9fa36b9e878cffe308
BLAKE2b-256 16b74f4d36b4266be68c14c0bcce01ed98a3181af43cbc9891f0848b914df22e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 3ef0c4bac792344262bd1be52425af4e378dcc97557a2cc1806dab0370a41559
MD5 63bf090aeb14ebf7bb31e6ee24a462b2
BLAKE2b-256 ae9c36dfd173dc0c625614cc5f063585d557e18f4851f4542a6ddd6b495a408d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp310-cp310-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 0fdd281af827b0ed6d52138aa41f05ea1debd7474cb5d93aa530aa70bea8ee4c
MD5 a6c3c78fca932cf7dbeadb89cb562696
BLAKE2b-256 20b49b921411fcf7661ba9d02ac7d9ace7989a8b49ccf66c9f5a7330ad808b0b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 cb7a32ec4a1a2e38818ade07ce2beddf1285fb8a5643231dbe062d7489b4bbd2
MD5 f97ed1bb15dc765e21488628e6516a1f
BLAKE2b-256 edb455ab2a594653a8eee924c6c164bd88e36c6fb8f0e1416835d27f1913dd5b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f4105e1f082222c970f41e63c8b6a5210ae7499e3eed908d3bfc2aded61fcf65
MD5 c703791a8e68c5df91e93e22013a8ed1
BLAKE2b-256 0388b749584e88ca77521bc8f221e22aad9d233453f3266353c6623292f798d2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 5548534bb512755140ff19217a00bce4043f2831320cc7d4e4f1f3dbfa702e44
MD5 6af9767ac76251ecf53f1c96c6d289ef
BLAKE2b-256 f5e9b874d2a80db1f9b4ccf56fb1dc687fb661bf24b98c042c24e97b1cefabfd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyaxp-0.2.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c5a9c90410a240ceb7437bf9dee1060c8196626e51d120648ebaa1641ec49629
MD5 ad59441498e5d05821bf8ea924bad86e
BLAKE2b-256 7fc2f307373aafbfb4024b5b1ff14e4ba789b8f124a40a6467fcabc761fa2589

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