Skip to main content

High-performance universal sign function for Python

Project description

csignum-fast

Python Version License Status Tests PyPI Version

A versatile, high-performance C++ implementation of the universal sign function for Python.

Released on January 1, 2026 ❄️ New Year Edition.

Versions 1.1.1+ corrected links and typos in documentation, and metadata for Github, after a major internal refactor in v1.1.0.

Key Features

  1. Uniform Results: Always returns only -1, 0, or 1 as an int for valid numeric comparisons.
  2. Correct Edge Case Handling:
    • sign(+0.0) and sign(-0.0) return 0.
    • sign(inf) returns 1, sign(-inf) returns -1.
    • For any NaN (float NaN, Decimal NaN, etc.), it returns math.nan (float).
  3. Comprehensive Duck Typing: Delegates comparisons to the argument's class. Works seamlessly with:
    • Built-in int (including arbitrary-precision), bool, and float.
    • fractions.Fraction and decimal.Decimal.
    • Any existing and future objects that support rich comparisons with numbers.
  4. Informative Error Handling for Easy Debugging: Provides clear, descriptive TypeError messages when passed non-numeric, non-scalar, or incomparable arguments.
  5. ⚡ High Performance: Branch-optimized C++20 core.
  6. ✅ Thoroughly Tested: Tested on 92 cases including different types, edge cases, new custom class, and inappropriate arguments. Also tested memory leaks and benchmarking against v1.0.2.
  7. ✨ Pre-processing Engine: Use the preprocess keyword argument to transform input before calculation or trigger an "Early Exit" (recursion permitted).
  8. 🛡️ Exception safety: The if_exc keyword argument allows you to define a fallback value (like None, math.nan, or -2) instead of crashing on invalid types.

Installation

pip install csignum-fast

Standard Usage

from signum import sign
from decimal import Decimal

print(sign(-10**100))       # -1
print(sign(3.14))           #  1
print(sign(Decimal("0.0"))) #  0
print(sign(float('-nan')))  # nan

Advanced Usage (New features since v1.1.0)

☢️ Attention: Contract Programming!

For productivity reasons, keyword argument values are not checked by the sign function. It is your responsibility to:

  • Pass a callable with one argument for preprocess (must return None or a tuple).
  • Pass a tuple for if_exc.

Passing incorrect types to these parameters may lead to undefined behavior or faults.

⚡ Custom Pre-processing with preprocess

You can pass a callable to transform the input. The argument of callable is the positional argument of sign. The callable should support a special return protocol:

  • Return None: Proceed with usual calculation.
  • Return (value,): Proceed with calculation using value as an argument. Why a tuple? Use (None,) to return None as a value.
  • Return (any, result): Early Exit. Immediately return result as the final answer. any is ignored.
from signum import sign

from decimal import Decimal
from fractions import Fraction
from math import nan, inf
import re

# Convert str to float; uses lambda as callable
sign('5.0', preprocess=lambda a: (float(a),)) # Returns 1 (instead of exception)

# Treat small number as zero through argument replacement only
EPS = 1e-9
sign(-.187e-17, preprocess=lambda a: (0 if abs(a) < EPS else a,)) # Returns 0 (instead of -1)

# Treat small number as zero through argument or result replacement; uses variable as callable
ppf1 = lambda x: (x, 0) if abs(x) < EPS else (x,)
sign(-.187e-17, preprocess=ppf1) # Returns 0 (instead of -1)

# Extract number from string, replace only string argument; supplies function as callable
numeric_finder = re.compile(r"[-+]?(?:\d+\.\d*|\.\d+|\d+)(?:[eE][-+]?\d+)?")

def n_extract(s):
    if isinstance(s, str):
        match = numeric_finder.search(s)
        return (float(match.group()),) if match else None
    return None

sign("☠️ 15 men on the dead man's chest☠️", preprocess=n_extract) # Returns sign(15) == 1

# Do you want sign(complex) instead of exception?
def c_prep(z):
    if z == 0 or not isinstance(z, complex): return None
    # complex z != 0
    return (0, z/abs(z))

sign(-1+1j, preprocess=c_prep) # Returns (-0.7071067811865475+0.7071067811865475j)

# numpy flavor: float result for float or Decimal argument; uses recursive call of sign
ppf2 = lambda a: (a, float(sign(a))) if isinstance(a, (float, Decimal)) else None
sign(-5.0, preprocess=ppf2) # Returns -1.0 (instead of -1)

🛡️ Exception Safety with if_exc

With this keyword, you can avoid try-except blocks. If sign() encounters an incompatible type, it will return your fallback value instead of raising a TypeError. if_exc should be a tuple that permits you to pass None as the fallback value through if_exc=(None,). (Default if_exc=None is totally different).

import math
from signum import sign

# Returns -2 instead of crashing
res = sign("not a number", if_exc=(-2,))

You can use both keyword arguments at once

With preprocess, you replace arguments (or results) in specific cases, while if_exc prevents exceptions for all that remains.

📊 Performance & Quality Assurance

Benchmark Results

Versions 1.1.0+ maintain near-zero overhead (+0.8% latency) despite adding logic for new arguments. See details in the "Benchmarking" section in README for tests.

Reliability

  • Memory Safety: Verified with long-run leak tests (0 bytes leaked over 4M iterations).
  • Test Coverage: 92 validation cases (up from 51 in v1.0.2).

License

This project is licensed under the MIT License. See the LICENSE file for details.

Author

Alexandru Colesnicov: GitHub Profile

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

csignum_fast-1.1.4.tar.gz (17.3 kB view details)

Uploaded Source

Built Distributions

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

csignum_fast-1.1.4-cp313-cp313-win_amd64.whl (11.3 kB view details)

Uploaded CPython 3.13Windows x86-64

csignum_fast-1.1.4-cp313-cp313-win32.whl (10.9 kB view details)

Uploaded CPython 3.13Windows x86

csignum_fast-1.1.4-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.7 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64manylinux: glibc 2.5+ x86-64

csignum_fast-1.1.4-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (9.8 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ i686manylinux: glibc 2.5+ i686

csignum_fast-1.1.4-cp313-cp313-macosx_11_0_arm64.whl (8.6 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

csignum_fast-1.1.4-cp312-cp312-win_amd64.whl (11.3 kB view details)

Uploaded CPython 3.12Windows x86-64

csignum_fast-1.1.4-cp312-cp312-win32.whl (10.9 kB view details)

Uploaded CPython 3.12Windows x86

csignum_fast-1.1.4-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.7 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64manylinux: glibc 2.5+ x86-64

csignum_fast-1.1.4-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (9.8 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ i686manylinux: glibc 2.5+ i686

csignum_fast-1.1.4-cp312-cp312-macosx_11_0_arm64.whl (8.6 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

csignum_fast-1.1.4-cp311-cp311-win_amd64.whl (11.2 kB view details)

Uploaded CPython 3.11Windows x86-64

csignum_fast-1.1.4-cp311-cp311-win32.whl (10.9 kB view details)

Uploaded CPython 3.11Windows x86

csignum_fast-1.1.4-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.6 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64manylinux: glibc 2.5+ x86-64

csignum_fast-1.1.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (9.8 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ i686manylinux: glibc 2.5+ i686

csignum_fast-1.1.4-cp311-cp311-macosx_11_0_arm64.whl (8.5 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

csignum_fast-1.1.4-cp310-cp310-win_amd64.whl (11.3 kB view details)

Uploaded CPython 3.10Windows x86-64

csignum_fast-1.1.4-cp310-cp310-win32.whl (10.9 kB view details)

Uploaded CPython 3.10Windows x86

csignum_fast-1.1.4-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.6 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64manylinux: glibc 2.5+ x86-64

csignum_fast-1.1.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (9.8 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ i686manylinux: glibc 2.5+ i686

csignum_fast-1.1.4-cp310-cp310-macosx_11_0_arm64.whl (8.5 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

csignum_fast-1.1.4-cp39-cp39-win_amd64.whl (11.3 kB view details)

Uploaded CPython 3.9Windows x86-64

csignum_fast-1.1.4-cp39-cp39-win32.whl (10.9 kB view details)

Uploaded CPython 3.9Windows x86

csignum_fast-1.1.4-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.6 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64manylinux: glibc 2.5+ x86-64

csignum_fast-1.1.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (9.8 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ i686manylinux: glibc 2.5+ i686

csignum_fast-1.1.4-cp39-cp39-macosx_11_0_arm64.whl (8.5 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

csignum_fast-1.1.4-cp38-cp38-win_amd64.whl (11.2 kB view details)

Uploaded CPython 3.8Windows x86-64

csignum_fast-1.1.4-cp38-cp38-win32.whl (10.9 kB view details)

Uploaded CPython 3.8Windows x86

csignum_fast-1.1.4-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.4 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64manylinux: glibc 2.5+ x86-64

csignum_fast-1.1.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (9.6 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ i686manylinux: glibc 2.5+ i686

csignum_fast-1.1.4-cp38-cp38-macosx_11_0_arm64.whl (8.3 kB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

File details

Details for the file csignum_fast-1.1.4.tar.gz.

File metadata

  • Download URL: csignum_fast-1.1.4.tar.gz
  • Upload date:
  • Size: 17.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for csignum_fast-1.1.4.tar.gz
Algorithm Hash digest
SHA256 9dbb5c91af4a2d196a11d5cdb2b95ae3db8ab211bb8d7f52acb5c1175e2146c2
MD5 6be9bcca8163d14f80ccfebc6583583c
BLAKE2b-256 31a893fc9670f2dec5f10cf8adfffb30bbc2445fbd90af9871572a187ba74165

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for csignum_fast-1.1.4-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 08d7096a20943468887f1d3050ef09883ca0583228f99fee2eb6e1d7640f07b8
MD5 60b2992ec712e325d318e950b8a7e2b6
BLAKE2b-256 b9f51264aa51bbaecdc5c36ec028676d6159e5550fcf7372841f245c9565361d

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp313-cp313-win32.whl.

File metadata

  • Download URL: csignum_fast-1.1.4-cp313-cp313-win32.whl
  • Upload date:
  • Size: 10.9 kB
  • Tags: CPython 3.13, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for csignum_fast-1.1.4-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 d8d8b41e2c1181a2e8706d0340e9cc4f5846698a11e21ae722da1490802bd0a9
MD5 6a36c45d22c86039848c01b31fb88c7d
BLAKE2b-256 7cce3782a875b9b2ed33e5a03a09cfe1568876264cacd531e6c35eadbb92d45e

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for csignum_fast-1.1.4-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 10c5fcad81cc190e703a5dd1b64852084a4f1eb002082d9e28fc405c32b9fd93
MD5 5b5e1a6e07746ab5dbf97d9f5a807914
BLAKE2b-256 a455555e2525f27b70ca21fe0fc1102650eb4be384d849b33d526bf5ebde1ab6

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for csignum_fast-1.1.4-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 48033b1bd7617ab9b67cd6ea36ee7cb9032d3dea32fbdc3af9b3948bb4b0614d
MD5 f3536b7537184aa5aa5d12c71e430ee9
BLAKE2b-256 61ef150dab039a1e122e94219f6d51835cab5d55ba8c6c66d2ff2b47dd62123c

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for csignum_fast-1.1.4-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5ef071b05fdfe67387a168dc78fc8cd71fa83501895389ecb21bec3bd8d5a233
MD5 b706020844ff322dea6bec0995dcb98f
BLAKE2b-256 9024bc7d585bec5dc1aa7e19af6e23a397429bb6ad0e61647e18f0ceff7e6eb7

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for csignum_fast-1.1.4-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 cd5f5d5209889de297a8d633e94ddf07d4d0a5335fda48a999cae4cb6b50fa0a
MD5 30fab10d568809636708b14a6523b209
BLAKE2b-256 71a0609b346f82252037e8c2d8c742a90a6cc08a0819ed8440a5e69868b1db47

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp312-cp312-win32.whl.

File metadata

  • Download URL: csignum_fast-1.1.4-cp312-cp312-win32.whl
  • Upload date:
  • Size: 10.9 kB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for csignum_fast-1.1.4-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 11f4d24cadd9a19f23fb9fc02033e677a3c3bf19c616681f95903b47fdc04ea2
MD5 a33c915e78b5c7c85c543444558ff036
BLAKE2b-256 d061166689f074b479747a430b0e1e5a2bf2f989b28ccc1ecfe37359db2368b8

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for csignum_fast-1.1.4-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bd3189951ed68340b6bcaaf6f5ff6c673f4321ced3203fcb883e9bd923e98596
MD5 73d619f0cbc088b286607460db892de2
BLAKE2b-256 0366e1c3fd1ee3025bd36a9f85fa99fe44b5e815f0b4137ddf75ede02d059e5f

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for csignum_fast-1.1.4-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 aad695ff34412781c08f975bc150776385561f6305aa19f5109ad66f38dd833b
MD5 ee62be5371001e6f54e2bf27ba36cab8
BLAKE2b-256 2e5da4e50b334f092d29f3fa05752b6bde3f01c7c48e962abf6350ec41d6ac3e

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for csignum_fast-1.1.4-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 02d8b38400acc82e1e600697e1ad9179a4e11f1820cf58675f119caa3c90b709
MD5 449d37cd4d77936509df8eb8622f8358
BLAKE2b-256 f86ab1cd95b8fd745965b0a38eaba1e197637fc86ab0d1f970660c365bbf5dcc

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for csignum_fast-1.1.4-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 03000fbc72a994b11099fd01f1509c25ee7645980108078a00690dbcf4af0d97
MD5 27520418d4842f78f272a42c35006eac
BLAKE2b-256 5b5292d68066e3491db917dd3df058becc4eb8350111e08dbd91d15b4ee08f1d

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp311-cp311-win32.whl.

File metadata

  • Download URL: csignum_fast-1.1.4-cp311-cp311-win32.whl
  • Upload date:
  • Size: 10.9 kB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for csignum_fast-1.1.4-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 88cd9e7db4b65c261c2961f52cd2797cace1c500f1e5da93f71fcb14de17077c
MD5 b79fc0be949a05ee6ed510899341bfa6
BLAKE2b-256 d10d8772d5e09ee322aaa22f32944e58a0c022cf91fe5e2eda521792d73c780b

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for csignum_fast-1.1.4-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a389ee9a44039a4da11b4dfde72583401dc9f33fbddcbe234abd7625dd5d50ce
MD5 f38620526628888ba76a319861be5982
BLAKE2b-256 e2b4b274e19593aed55adaed54c01f4495fffa66259d9698996539752f0949a1

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for csignum_fast-1.1.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 6fa3ae41109183c68abeeb7dfce7d52dc7b5ded7967101cbc89e973c2dbdf0fd
MD5 64b54af9bf34c0c7c92a67265bb5fffe
BLAKE2b-256 7f1aa0387532b6d8021a68df9516e33a1a91ed240be54df258ed80a370691e39

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for csignum_fast-1.1.4-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 655968ec464cd0e05faf0d17ed370ec941b2a2398b29bfe8e4f480934c0ad9de
MD5 7ca9406665990e264066a84eceef2e23
BLAKE2b-256 b73ece33b737f51cca9b8d7a81f5450d51206ea679a498cabf94e78251a7632e

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for csignum_fast-1.1.4-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 f5c0f06d783da64b3e7f90743a5af0349d130ccce5830c97d257d3c7c02ed026
MD5 e9ae447408ca4b5c55bb425a29e137da
BLAKE2b-256 465ac2691f4926d70a01e68add429b2c9fd8e2cbce795ed8eb78a69d254857b2

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp310-cp310-win32.whl.

File metadata

  • Download URL: csignum_fast-1.1.4-cp310-cp310-win32.whl
  • Upload date:
  • Size: 10.9 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for csignum_fast-1.1.4-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 dd7f7b8fa12c9541061583ccd92a54f5efebbaad0765f3cd881c9a724a6f38a2
MD5 7f6a347944bc177b5ca74fae705a6c86
BLAKE2b-256 3dfc45aa3d06eda52b1b02a029106db21eaf4a7aea989662b1a0f5ca792a6bc7

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for csignum_fast-1.1.4-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5dfd49bea54c5d5332764b38d8eafaaf29b176134ec17231e310e92e0eea1be7
MD5 e24bf8918e3af40adfe0c9302730d786
BLAKE2b-256 93c60a5420c001bc3df3fa0ac43b910823b6c05ffeeb8916c846856444f8b40b

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for csignum_fast-1.1.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 ec6e3141dc59b561d9e001777996a34af4a8323a104adb2f764cf21e0e8d0c27
MD5 619a301a7854a48f1dc0e91e873422b8
BLAKE2b-256 54b914a1f6f1e092579ea293f0c47c38556020603bd587094b55f13d29c69bbd

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for csignum_fast-1.1.4-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 42187339ccf3e3126267b9f9c1f40777b154be99f4e56b69022530ce90918612
MD5 93d78fd64a41e1e34591a13d1b97744f
BLAKE2b-256 74975bcca7764816db994950577deb6eb763f044a0368e80405b0b589b050c8d

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: csignum_fast-1.1.4-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 11.3 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for csignum_fast-1.1.4-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 3e76edf56fa4bb9bd6c7221ace0cfabb9e6496b6e0b6970c1e0573097b907ad8
MD5 ced4f960a3b13d4bd0aad42d2a546714
BLAKE2b-256 f2937c9e335eaff9c540e45761ea38364eb31be1d6e9c84bc121b3d874577d3a

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp39-cp39-win32.whl.

File metadata

  • Download URL: csignum_fast-1.1.4-cp39-cp39-win32.whl
  • Upload date:
  • Size: 10.9 kB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for csignum_fast-1.1.4-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 91b12b687cd63a9847caff2df321e041a15bd93857d7070ef70a8ece18f26056
MD5 b8330b21b88407a4cc16f71490256c07
BLAKE2b-256 da475e5e30a0bf7c010e5435dd689e754b96f21e441fdfaed8ddb28288df7059

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for csignum_fast-1.1.4-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a4d45312c39e0214a3dee4894ef17816a906481e7f9ba7b0bbdf29e18f9419fe
MD5 62e9ebd8581f027c94088542bbb59d14
BLAKE2b-256 60cfb5dc56ef1a54a9b40fa6fab9521166db9abf92063f379c265e514ed32be6

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for csignum_fast-1.1.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 7b8d6f4b0b5cb5dbc092920bbb860708311acd47c4e39ca9e53c7310a56b51c5
MD5 05124f8037efeee023a8b59b8023fb28
BLAKE2b-256 c1a37416c6b03b6265c6efe81838660dac15833d10aacf622b6814ac67f728dc

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for csignum_fast-1.1.4-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2a8d21de6d3b24a6705086099d8d86bb17e58e85158dd4bd992df47b96444218
MD5 0b55cb936d9ef8749475f788aa4b1f68
BLAKE2b-256 3dc598d5903d0197e0d501721f964303cd26f17c057ea6eda3a202ad75aa533b

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: csignum_fast-1.1.4-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 11.2 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for csignum_fast-1.1.4-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 1e4d3a49613962cd3cb9214d1302a46709b445426c85ec254174d25af81c7784
MD5 f8fd31a5041f36bbe255cca23fd9fe21
BLAKE2b-256 491d1ab79c97e017b8e0132f78722b892037b9a71dee99ae8eae045b61fb4e8b

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp38-cp38-win32.whl.

File metadata

  • Download URL: csignum_fast-1.1.4-cp38-cp38-win32.whl
  • Upload date:
  • Size: 10.9 kB
  • Tags: CPython 3.8, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for csignum_fast-1.1.4-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 3412c72dd425a7ccf8e75f39fe9f8ce311d141670abb38e2a293bfcf6cc3c6aa
MD5 6759ff6ad821acb1d114f743bd4df713
BLAKE2b-256 1e65759925edc0238a495360fdff3d634e09e6acd820b970fb7734df76ba5d5a

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for csignum_fast-1.1.4-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 96f2e308210b4f15b7b24e1d6577c070870ec16644e5b258956b28a35f7c6927
MD5 7cef9ccc9bb979eef33387585d22451b
BLAKE2b-256 b5b919208a1cb61fa87985e2dd7c76452784ee8f6b6c87504b05cb168ca3e328

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for csignum_fast-1.1.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 d3741e5448fff1c8abb96e42148f4e84b5c49f6452a54e9d0894696850b8b39a
MD5 a1c851cb2eb538664535b590db3efffb
BLAKE2b-256 125cf9c810902b4014424baff81f0c6c10c518222b5670ea7b40adf7f1a71ae7

See more details on using hashes here.

File details

Details for the file csignum_fast-1.1.4-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for csignum_fast-1.1.4-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 aedb6864bb24c6688b336371897ef2a53041c51b4353973f110523c5d1ad0208
MD5 9e57232f328a35db47dea40c0bee7e2c
BLAKE2b-256 1a3192dc052b1e07434d13f456e758f018c6931e5fb8139471077650e87fb92a

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