Skip to main content

Rust-backed acceleration for Python array.array

Project description

arrayops

Rust-backed acceleration for Python's array.array type

PyPI Python 3.8+ Rust License: MIT Documentation Code Coverage

Fast, lightweight numeric operations for Python's array.array, numpy.ndarray (1D), and memoryview objects. Built with Rust and PyO3 for zero-copy, memory-safe performance.

โœจ Features

  • โšก High Performance: 10-100x faster than pure Python loops using Rust-accelerated operations
  • ๐Ÿ”’ Memory Safe: Zero-copy buffer access with Rust's safety guarantees
  • ๐Ÿ“ฆ Lightweight: No dependencies beyond Rust standard library (optional: parallel execution via rayon)
  • ๐Ÿ”Œ Compatible: Works directly with Python's array.array, numpy.ndarray (1D), and memoryview - no new types
  • โœ… Fully Tested: 100% code coverage (Python and Rust)
  • ๐ŸŽฏ Type Safe: Full mypy type checking support
  • ๐Ÿš€ Optional Optimizations: Parallel execution and SIMD support via feature flags

๐Ÿš€ Quick Start

Installation

# Install maturin if not already installed
pip install maturin

# Install in development mode
maturin develop

# Or install from source
pip install -e .

# With optional features (recommended for large arrays)
maturin develop --features parallel

Basic Usage

import array
import arrayops as ao

# Create an array
data = array.array('i', [1, 2, 3, 4, 5])

# Fast operations
total = ao.sum(data)           # 15
ao.scale(data, 2.0)            # In-place: [2, 4, 6, 8, 10]
doubled = ao.map(data, lambda x: x * 2)  # New array: [4, 8, 12, 16, 20]
evens = ao.filter(data, lambda x: x % 2 == 0)  # [4, 8, 12, 16, 20]
product = ao.reduce(data, lambda acc, x: acc * x, initial=1)  # 3840

๐Ÿ“š For complete documentation, examples, and API reference, see arrayops.readthedocs.io

๐Ÿ“š Supported Types

arrayops supports all numeric array.array typecodes, numpy.ndarray (1D, contiguous), and Python memoryview objects:

Type Code Description
Signed integers b, h, i, l int8, int16, int32, int64
Unsigned integers B, H, I, L uint8, uint16, uint32, uint64
Floats f, d float32, float64

๐Ÿ“– Documentation

Complete documentation is available at arrayops.readthedocs.io:

  • Getting Started - Installation and basic usage
  • API Reference - Complete function documentation
  • Examples - Practical usage patterns and cookbook
  • Performance Guide - Benchmark results and optimization tips
  • Troubleshooting - Common issues and solutions

โšก Performance

arrayops provides significant speedups over pure Python operations:

Operation Python arrayops Speedup
Sum (1M ints) ~50ms ~0.5ms 100x
Scale (1M ints) ~80ms ~1.5ms 50x
Map (1M ints) ~100ms ~5ms 20x
Filter (1M ints) ~120ms ~8ms 15x
Reduce (1M ints) ~150ms ~6ms 25x
Memory overhead N/A Zero-copy โ€”

See the Performance Guide for detailed benchmarks and optimization tips.

Performance Features

arrayops supports optional performance optimizations via feature flags:

Parallel Execution (--features parallel)

For large arrays, parallel execution can provide significant speedups on multi-core systems:

  • Enabled operations: sum, scale
  • Threshold: Arrays larger than 10,000 elements (sum) or 5,000 elements (scale) automatically use parallel processing
  • Installation: maturin develop --features parallel
  • Performance: 2-4x additional speedup on multi-core systems

SIMD Optimizations (--features simd)

SIMD (Single Instruction, Multiple Data) optimizations are in development:

  • Status: Infrastructure in place, full implementation pending std::simd API stabilization
  • Expected performance: 2-4x additional speedup on supported CPUs
  • Target operations: sum, scale (primary), element-wise operations
  • Installation: maturin develop --features simd

๐Ÿ”„ Comparison

Feature array.array arrayops NumPy
Memory efficient โœ… โœ… โŒ
Fast operations โŒ โœ… โœ…
Multi-dimensional โŒ โŒ โœ…
Zero dependencies โœ… โœ… (NumPy optional) โŒ
C-compatible โœ… โœ… โœ…
Type safety โœ… โœ… โš ๏ธ
NumPy interop โŒ โœ… (1D only) โœ…
Memoryview support โŒ โœ… โŒ
Use case Binary I/O Scripting/ETL Scientific computing

๐Ÿ—๏ธ Architecture

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚           Python Layer                  โ”‚
โ”‚  array.array โ†’ arrayops โ†’ _arrayops     โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                 โ”‚ Buffer Protocol
                 โ”‚ (Zero-copy)
                 โ–ผ
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚           Rust Layer (PyO3)             โ”‚
โ”‚  Typed operations                       โ”‚
โ”‚  SIMD / Parallel optimizations          โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

๐Ÿงช Testing

# Run all tests
pytest tests/ -v

# With coverage
pytest tests/ --cov=arrayops --cov-report=html

# Type checking
mypy arrayops tests

Coverage: 100% Python code coverage

๐Ÿ”ง Development

Prerequisites

  • Python 3.8+
  • Rust 1.75+ (for SIMD features)
  • maturin (install with pip install maturin)

Building

# Development build
maturin develop

# Release build
maturin build --release

# With features
maturin develop --features parallel,simd

Contributing

See the Contributing Guide for details on:

  • Development workflow
  • Code style guidelines
  • Testing requirements
  • Pull request process

๐Ÿ“ Error Handling

arrayops provides clear error messages:

import arrayops as ao

# Wrong type
ao.sum([1, 2, 3])  # TypeError: Expected array.array, numpy.ndarray, or memoryview

# Unsupported typecode
arr = array.array('c', b'abc')
ao.sum(arr)  # TypeError: Unsupported typecode: 'c'

๐Ÿ“„ License

MIT License - see LICENSE file for details.

๐Ÿ™ Acknowledgments

  • Built with PyO3 for Python-Rust interop
  • Built with maturin for packaging
  • Inspired by the need for fast array operations without NumPy overhead

๐Ÿ“ž Support


For detailed documentation, examples, and API reference, visit arrayops.readthedocs.io

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

arrayops-0.3.0.tar.gz (78.7 kB view details)

Uploaded Source

Built Distributions

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

arrayops-0.3.0-cp314-cp314-win_arm64.whl (130.9 kB view details)

Uploaded CPython 3.14Windows ARM64

arrayops-0.3.0-cp314-cp314-win_amd64.whl (137.2 kB view details)

Uploaded CPython 3.14Windows x86-64

arrayops-0.3.0-cp314-cp314-manylinux_2_28_x86_64.whl (236.7 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ x86-64

arrayops-0.3.0-cp314-cp314-manylinux_2_28_aarch64.whl (221.8 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ ARM64

arrayops-0.3.0-cp314-cp314-macosx_11_0_arm64.whl (206.2 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

arrayops-0.3.0-cp314-cp314-macosx_10_12_x86_64.whl (213.2 kB view details)

Uploaded CPython 3.14macOS 10.12+ x86-64

arrayops-0.3.0-cp313-cp313-win_arm64.whl (130.9 kB view details)

Uploaded CPython 3.13Windows ARM64

arrayops-0.3.0-cp313-cp313-win_amd64.whl (137.2 kB view details)

Uploaded CPython 3.13Windows x86-64

arrayops-0.3.0-cp313-cp313-manylinux_2_28_x86_64.whl (236.7 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

arrayops-0.3.0-cp313-cp313-manylinux_2_28_aarch64.whl (221.8 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

arrayops-0.3.0-cp313-cp313-macosx_11_0_arm64.whl (206.2 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

arrayops-0.3.0-cp313-cp313-macosx_10_12_x86_64.whl (213.2 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

arrayops-0.3.0-cp312-cp312-win_arm64.whl (130.5 kB view details)

Uploaded CPython 3.12Windows ARM64

arrayops-0.3.0-cp312-cp312-win_amd64.whl (136.2 kB view details)

Uploaded CPython 3.12Windows x86-64

arrayops-0.3.0-cp312-cp312-manylinux_2_28_x86_64.whl (236.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

arrayops-0.3.0-cp312-cp312-manylinux_2_28_aarch64.whl (220.8 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

arrayops-0.3.0-cp312-cp312-macosx_11_0_arm64.whl (205.6 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

arrayops-0.3.0-cp312-cp312-macosx_10_12_x86_64.whl (212.2 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

arrayops-0.3.0-cp311-cp311-win_arm64.whl (129.3 kB view details)

Uploaded CPython 3.11Windows ARM64

arrayops-0.3.0-cp311-cp311-win_amd64.whl (135.1 kB view details)

Uploaded CPython 3.11Windows x86-64

arrayops-0.3.0-cp311-cp311-manylinux_2_28_x86_64.whl (236.1 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

arrayops-0.3.0-cp311-cp311-manylinux_2_28_aarch64.whl (221.1 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

arrayops-0.3.0-cp311-cp311-macosx_11_0_arm64.whl (205.8 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

arrayops-0.3.0-cp311-cp311-macosx_10_12_x86_64.whl (212.4 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

arrayops-0.3.0-cp310-cp310-win_amd64.whl (135.1 kB view details)

Uploaded CPython 3.10Windows x86-64

arrayops-0.3.0-cp310-cp310-manylinux_2_28_x86_64.whl (236.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

arrayops-0.3.0-cp310-cp310-manylinux_2_28_aarch64.whl (221.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ ARM64

arrayops-0.3.0-cp310-cp310-macosx_11_0_arm64.whl (205.8 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

arrayops-0.3.0-cp310-cp310-macosx_10_12_x86_64.whl (212.4 kB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

arrayops-0.3.0-cp39-cp39-win_amd64.whl (135.1 kB view details)

Uploaded CPython 3.9Windows x86-64

arrayops-0.3.0-cp39-cp39-manylinux_2_28_x86_64.whl (236.1 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.28+ x86-64

arrayops-0.3.0-cp39-cp39-manylinux_2_28_aarch64.whl (221.1 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.28+ ARM64

arrayops-0.3.0-cp39-cp39-macosx_11_0_arm64.whl (205.8 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

arrayops-0.3.0-cp39-cp39-macosx_10_12_x86_64.whl (212.4 kB view details)

Uploaded CPython 3.9macOS 10.12+ x86-64

arrayops-0.3.0-cp38-cp38-win_amd64.whl (134.9 kB view details)

Uploaded CPython 3.8Windows x86-64

arrayops-0.3.0-cp38-cp38-manylinux_2_28_x86_64.whl (235.8 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.28+ x86-64

arrayops-0.3.0-cp38-cp38-manylinux_2_28_aarch64.whl (220.9 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.28+ ARM64

arrayops-0.3.0-cp38-cp38-macosx_11_0_arm64.whl (205.6 kB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

arrayops-0.3.0-cp38-cp38-macosx_10_12_x86_64.whl (212.1 kB view details)

Uploaded CPython 3.8macOS 10.12+ x86-64

File details

Details for the file arrayops-0.3.0.tar.gz.

File metadata

  • Download URL: arrayops-0.3.0.tar.gz
  • Upload date:
  • Size: 78.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for arrayops-0.3.0.tar.gz
Algorithm Hash digest
SHA256 7ed80a518ae288adc9eade309d7da36c000f070eb4e47d50590b9f4d28eedaef
MD5 4f2e003488da2f6b35ad8911c027ac7e
BLAKE2b-256 4b9a45c40a47461f3f33bd55caef4c7ea847dc6a4bb649e1e23433078dd832f2

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp314-cp314-win_arm64.whl.

File metadata

  • Download URL: arrayops-0.3.0-cp314-cp314-win_arm64.whl
  • Upload date:
  • Size: 130.9 kB
  • Tags: CPython 3.14, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for arrayops-0.3.0-cp314-cp314-win_arm64.whl
Algorithm Hash digest
SHA256 6cd3313ae11da09f7f97bbb4605fa69a0b28cfabe936add459af1a9cb3be143d
MD5 d92cc22af82aa9ebe1778bd4fd0073a1
BLAKE2b-256 6a01df833f24980365a48c16cfa1132106683045e0cac93dfa50e96d0667bbef

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: arrayops-0.3.0-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 137.2 kB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for arrayops-0.3.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 495e48d1dab095ab6c514b5816fa2426d616459d9a9f303dcafacffa567daacd
MD5 fe450a0ecd55117b39bdbb743186b6ee
BLAKE2b-256 34ac30f300ff7913bb8c759f9266ee864598535ecf91b98d6666a0a593c5970d

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp314-cp314-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for arrayops-0.3.0-cp314-cp314-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 dd8abe1dc3bf37f88a94a17e87daabe1e94685560d038776036e9b6ac63e2719
MD5 770dcf206b1c3f9cc0b3060015c57a7c
BLAKE2b-256 fd2c794ddbee7295dc757b7c14c2c9c79a2269f2d6908b7e97371c3e653fb64d

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp314-cp314-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for arrayops-0.3.0-cp314-cp314-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 5cc87e55640d8b005c660eb0d902d94c46a5dc89cf914264caa7efbeabeb1e7a
MD5 eb57e022622abeb3ebfdefb901341a03
BLAKE2b-256 9737c8c70b6e8896b270baf7e31183d3ff1e5bedac3a55b779e7533cb3aeef4f

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for arrayops-0.3.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 97ac03d89130e7f6a948128e05f4407bee18d704c8baae2a979a106fa9bfdf72
MD5 5862042dd69cec116312528793e1c753
BLAKE2b-256 0d70431227a62de047d3ce57140597acd84bd61c8807a4a5b6c44f19aab1c596

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp314-cp314-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for arrayops-0.3.0-cp314-cp314-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 3ba4e439515dec1b5030f8d40023e2e35eddcbfd83f2ed74e42a3187d92b47a5
MD5 8d2205b8e9ce24ce3e1919e3e6c9d0a8
BLAKE2b-256 844a8ac7797037864940826367ab1446128cf8c982f415f441630c38a7726e97

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp313-cp313-win_arm64.whl.

File metadata

  • Download URL: arrayops-0.3.0-cp313-cp313-win_arm64.whl
  • Upload date:
  • Size: 130.9 kB
  • Tags: CPython 3.13, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for arrayops-0.3.0-cp313-cp313-win_arm64.whl
Algorithm Hash digest
SHA256 e1052e0ef2d44d65fbaac6dd4dd567c6f6715ffcffbf545fd4efdd34065100d1
MD5 68dc6671ba576def752da7e8aa55dc1e
BLAKE2b-256 f4ecd9d1bedc21b96a638007d1939353ed4563c97c3f22d2552a95d97eb36f21

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: arrayops-0.3.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 137.2 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for arrayops-0.3.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 bff226c4e81ca91c431c7dba83cf84459544d55b9ee767b0220d38c65b0bac50
MD5 c760e9f703949aa4f9fd2b535b215757
BLAKE2b-256 bac4271aa17e386c05293a9a4369b3437aecadacb865d3dac74c489ac3821ab9

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for arrayops-0.3.0-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 549bed878fa5af1fd56811ddc68de601c311001e1ad53e13151b42a601444bea
MD5 6878efe1803300ee72bdd12ccf593a12
BLAKE2b-256 6c90a69a955c785d9d4e354900b49af2eb5f1de1ce913d40c43cbe4ce18a6750

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp313-cp313-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for arrayops-0.3.0-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 d3f5d1905b33f2f783721d9aa68b4cad01b1b0642b1f0bae8a8554de625c114c
MD5 16886b0ae25247ce7f9c18c403f8dd06
BLAKE2b-256 9c5a54e8a19c4e1fb277bfc99e853a9c35c34bc7f1048f9813a05cd8a7e8a845

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for arrayops-0.3.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4fa84c0d414f60a382283b8fe2c47d612078382c91093682a450a5b471047887
MD5 6fa3c0b51adf654e5db2c70d9116a421
BLAKE2b-256 51716b58b8897d2b590da435ecc0384f4bfbda685261c2893f8acddbc553a6e1

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for arrayops-0.3.0-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 4aa5589eb35d65a308635c9ceba2a81fc4c1445da289e7483ef51a983c15d4d5
MD5 e39eda5e15fb7043caa6a44528f4ee3c
BLAKE2b-256 6288ba941bc8acb521e36ecc4c1d0b398e389de614d446a026b6c4b616678e3f

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp312-cp312-win_arm64.whl.

File metadata

  • Download URL: arrayops-0.3.0-cp312-cp312-win_arm64.whl
  • Upload date:
  • Size: 130.5 kB
  • Tags: CPython 3.12, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for arrayops-0.3.0-cp312-cp312-win_arm64.whl
Algorithm Hash digest
SHA256 573b9a1f1b4596e633a4daa82db295be3edb3513c68b7fe3aea8ce0fc2a79cbb
MD5 70397a4419575a707dcf84e84c932910
BLAKE2b-256 85e375b99e533cad1adeac1e85141c0b38446aac4e688d8eed53664fea60f6cb

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: arrayops-0.3.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 136.2 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for arrayops-0.3.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 d37c6ea0fcd745f0500d7e9aec491b999020c1358b3dbbd582fdd7f36d173777
MD5 65eb08ee90bb19432ef1b994df598038
BLAKE2b-256 3d79067e848b8ad1182a92746af3cb9fee3353ef93b6a58cee8d172df93cc3f8

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for arrayops-0.3.0-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 bebe6d7692a00dffbbf1bc56de46626c43dd0a3bafb691b9c5c7c44b9c79f30a
MD5 1a9f0c365bb59359cae98b077e14c147
BLAKE2b-256 301038fe932721ca64b9c3eb26f0cd41be5cbcc8cf89d30b0f1ef16943caaf30

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp312-cp312-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for arrayops-0.3.0-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 e8c954467e8522c0f6b7dd058c3ae2eae1fa511c394e236200bffd1ebeec1f21
MD5 1d616281bbaa2bab6e368fd20a3a2ef1
BLAKE2b-256 f07230ad8f5e654564a7a9498f3c87325aeaba945e9bc5af6ea658644d20bc98

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for arrayops-0.3.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 af2a977b200c8f97a783ee112ebe58f01527ccd1774841df3e8969265862b52c
MD5 c751fcdcad9c36736c5006545f217162
BLAKE2b-256 99c6974ebb755efe9655d481d721a3ee4cc11b55d78a0fa2f1965f7d97cf0e9b

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for arrayops-0.3.0-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 141388b2d9b5ae1be93d0b8cd6e3351455e13eb4f84a6eac44b66923870223aa
MD5 69ba71429e5eb28fb4e204069a4bfac4
BLAKE2b-256 843937e1731c50550516ab9689922a696ee4bb8e8f453810fa21cdd0b2e96769

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp311-cp311-win_arm64.whl.

File metadata

  • Download URL: arrayops-0.3.0-cp311-cp311-win_arm64.whl
  • Upload date:
  • Size: 129.3 kB
  • Tags: CPython 3.11, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for arrayops-0.3.0-cp311-cp311-win_arm64.whl
Algorithm Hash digest
SHA256 f578768503d15db8cbd9745a1ae71406a0b73f624d9683c91211940f6c7673b1
MD5 21020efe76e45bfe11a5de7798417151
BLAKE2b-256 0c565fc38f9a64b2fb3abbccf625035c69dfa93d46cf278e2519853d0a82e9c1

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: arrayops-0.3.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 135.1 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for arrayops-0.3.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 c258470589059759ee8b14a63ff9c9c90af3af2bf09120e1e3fc6aed0e1276fe
MD5 71363fb7f40bd10d9abd34ac0654f30b
BLAKE2b-256 6ff656259b3473cbfe6c29c942612258dfa7581fa164c8393c286adf5a5f83ad

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for arrayops-0.3.0-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8a63abc2ac6eb89eb8a40b74540c7780f6b9c18c52cdfcdc18fc51c276954d5d
MD5 dd5a75d14e96ed46a18002b201a67bb2
BLAKE2b-256 1cb8e98b482efba33bdcb0a9d17f5ad792382f94d844e6e6e696a7ef41848965

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp311-cp311-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for arrayops-0.3.0-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 5915dd01bcb7cb3e313ccb198b43921b8626220bd69655abbce1c840982bda1f
MD5 b674ad4eb626a9937866294edff4ada4
BLAKE2b-256 78046d11bd493ffbd1d64c1466ef35f64f70dd6b6c3432c12d8fb63b9f362462

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for arrayops-0.3.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6dff31bbed78a58fdbd2bc26c7e64ceb87cddb520d66d0bf9b4f306a365165ff
MD5 0be139a98e56262df6d6162a13e35777
BLAKE2b-256 2bfb2c20f9a711b40de4baedd077261d7544fc5420b5e1fd9404ed643e0b7ef0

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for arrayops-0.3.0-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 1a123f2501e1c6b80abfe48a6e0ba06ecc7d52eb5acbc91c83bd050d9fc3261c
MD5 0522ab49dc5e54616b10d10ac5c95c81
BLAKE2b-256 030e60ae513fef3e76a9277e9d8084fa5226888274d33dd70becfa49b858dba4

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: arrayops-0.3.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 135.1 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for arrayops-0.3.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 dbd514eab9676f6593a20e8f252362756f3a5b53eec90983b6e214ee78c63caa
MD5 045eeed4fd9c8f962fa67665cc7cb477
BLAKE2b-256 28f36b3c086f1ebe2c69f0716ea489a63b229171c27351926d00c69c3a8a5797

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for arrayops-0.3.0-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9bc1dce01d32c3d95c25d489978cc674b780e5bd258efc47e778c0dff0dc2841
MD5 8a7030750a21927166d66886aa1049b5
BLAKE2b-256 c1232a0ff85463e41b7449d03b766dbad273e9b2fd9f03333b34c7d4fcd78977

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp310-cp310-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for arrayops-0.3.0-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 868ac589c3b668b0ecbe9a989bff850f03aa572ea31da17d286280b946ef9c2f
MD5 d0092889287738f11eeed6b1361da96a
BLAKE2b-256 d1ea9958a9906c53ec2ab887b81f04a573f5c68182a54e0a41ba8b6dcfc04360

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for arrayops-0.3.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 af4961ea9d749a037c9f3038923c77cbecf990706f914f3131690d39f7989f43
MD5 610fa5b6371dfa83f192aca7712d1b44
BLAKE2b-256 679946adb35f6098495d54d4917d57778f0e96404c0de9d16bea5689c7921c2e

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for arrayops-0.3.0-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 df73fa4825104685730b8cacbf76381a1864ec963da503653d8af9215eedc676
MD5 56c5f80554c0f9f3f4d1f05639f67a7c
BLAKE2b-256 04fe0aa00f909c37600a84793a7fc293cb452623a2f4cd4145735fe7d820debd

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: arrayops-0.3.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 135.1 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for arrayops-0.3.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 e530c4becc4def3e1d112fedd52d46ff326683e519f3cc062129898898912427
MD5 0e2a82c8ae3e10d0dea431de59f80201
BLAKE2b-256 7196b13d39921dd29a3af2439d3b8cbc0c822ce3c1f836fe835a6a1af6e896d5

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp39-cp39-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for arrayops-0.3.0-cp39-cp39-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f0268ffa33f1bd81319fd77812d28c06d119e64087238c1169ab3544ccc42165
MD5 f8c61381f042e9251bfeb7279feb69e7
BLAKE2b-256 176f95d23166018691641f2fe0880ec055d1f0d19ee5ea5b0155da686e818ef9

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp39-cp39-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for arrayops-0.3.0-cp39-cp39-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 d9b93cf5d07070711eb6ca27e64b1c71b6f185cfc189a29aa9f814f24b8097eb
MD5 be47d3193f8ae57d717c86335db155e0
BLAKE2b-256 11c497c236bae9f2370575fc2ba44db80b761da56cb7c245f5c82ee4469cd201

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for arrayops-0.3.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 306448942643f8cb1cbcd3061745e5cad3f19f13d90bd656a075940bb6833a97
MD5 c4e4123364ce86829cd7692e5b3adcb8
BLAKE2b-256 d81f000edcf5a805b245cb28634a8d1c343828e2b6162b3f92d7c8a300b1758e

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp39-cp39-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for arrayops-0.3.0-cp39-cp39-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 254fa1964fd267048ab1d51dbffef5d20ae591175a2a25e93b0a39b4fcd3aec2
MD5 f4fb094558a5f443723f87e3c7c5e732
BLAKE2b-256 eb7c0233c56020e11bd41f81ec0685a444df416acd0af6b2da6f3ea196c40ac0

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: arrayops-0.3.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 134.9 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for arrayops-0.3.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 21dad5669d9d10720f91b6a659158f976d611468991044c8faa01ed5c2321ee2
MD5 279eaadad5946f49ea1b0ac5e4328d1f
BLAKE2b-256 d37b7f738f5cda9866cc7b1d33a7833cd70871db2c2370fb27ccb09f8be47099

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp38-cp38-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for arrayops-0.3.0-cp38-cp38-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 389aea7eee43952d9d3b024e003827cc34aff14029a0c6aab4b7d9488d74a98d
MD5 515b4e2ab816a2c794f218c64e7c3c1e
BLAKE2b-256 3472f9e7aaf902e171443f4df9eb0b0e2ad299db7501dc98fa4d19161611a9c4

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp38-cp38-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for arrayops-0.3.0-cp38-cp38-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 ea724ca76d4cd949decded089373e5d0be161f68e65730ba4615dbd99e4056f4
MD5 5eb0ecb4df5e542c77c0aa59fe4f9068
BLAKE2b-256 1d6b1e5c94246332162b6e03266640272d952a73b61d1d01878348789ba2d8dd

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for arrayops-0.3.0-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 922ed7e1f391c121441c317e653a048999ab87db24f4ddae399c94d11e50d026
MD5 6973d84ebb25da2598544897ee659e22
BLAKE2b-256 3c76afaf91d562922020c847fd398037e7d0734df61a9eabdb848adff01da86d

See more details on using hashes here.

File details

Details for the file arrayops-0.3.0-cp38-cp38-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for arrayops-0.3.0-cp38-cp38-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 28b082bd83793328655bf2839376e0c3c23e2c7a8ce8bcd65be189c4d9dbb95f
MD5 7e73586ec9c4ef273d44fb85287aef17
BLAKE2b-256 d5ec7f115855acef9c7189a62676d80ffd338bf4e0931393cadd364e55d4b1d7

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